Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / [игнор отключен] [закрыт для гостей] / Как в отчет с вертикальными секциями добавить итоги / 6 сообщений из 6, страница 1 из 1
10.05.2012, 11:15
    #37787443
Shart_Sonia
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в отчет с вертикальными секциями добавить итоги
Добрый день. 1с7.7 нужно подкорректировать уже написанный кем-то когда-то отчет, а именно, чтобы он выводил еще строку и итогами нижнюю самую. Хотела завести переменные и в них накапливать итоги, но проблема в том, что отчет не из простых - есть движение по горизонтальным и вертикальным секциям. По каждой вертикальной секции нужны свои итоги. Переменные не подойдут - заранее не понятно сколько вертикальных секций будет и какие. На первый взгляд нужно вообще менять порядок группировки и обработки запроса и малым редактированием не отделаться. Или можно как-то решить проблему?
Вот таблица запроса, его модуль и отдельно результат работы самого запроса на данных.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
  Процедура СформироватьОк()
	Перем Запрос, ТекстЗапроса, Таб;
	//Создание объекта типа Запрос   
	
	Если ВыбНачПериода>ВыбКонПериода Тогда
		 ВыбНачПериода=ВыбКонПериода;
    КонецЕсли;

    Если ВыбконПериода>ПолучитьДатуТА() Тогда
		 ВыбконПериода=ПолучитьДатуТА();
	КонецЕсли;	 
	
    Тип=" (оказанные услуги)";
	Запрос = СоздатьОбъект("Запрос");
	ТекстЗапроса = 
	"//{{ЗАПРОС(Сформировать)
	|Период с ВыбНачПериода по ВыбКонПериода;
	|Услуга = Регистр.Услуги.Специалист.Родитель;
	|Категория = Регистр.Услуги.Категория;   
	|Док=Регистр.Услуги.ТекущийДокумент;   
	|ДатаОказания = Регистр.Услуги.ДатаОказания;
	|КолВо = Регистр.Услуги.КолВо;
	|Стоимость = Регистр.Услуги.Стоимость;
	|Функция ВсегоКолВо = Сумма(КолВо);
	|Функция ВсегоСумма = Сумма(Стоимость);          
	|Группировка Услуга без групп все вошедшиевзапрос;       	
	|Группировка Категория все вошедшиевзапрос;   
	|Группировка Док;
	|Условие (ДатаОказания>'01.01.80');
	|"//}}ЗАПРОС
	;
	// Если ошибка в запросе, то выход из процедуры
	Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
		Возврат;
	КонецЕсли;  
                            
	// Заполнение полей "Заголовок"
	Таб = СоздатьОбъект("Таблица");
	Таб.ИсходнаяТаблица("Сформировать");
	Таб.ВывестиСекцию("Основа|Заголовок");
	Таб.Опции(0, 0, Таб.ВысотаТаблицы(), 0);     
	
	Запрос.Группировка(1);
	Пока Запрос.Группировка(2)=1 Цикл     
		Таб.ПрисоединитьСекцию("Категория|Заголовок");
	КонецЦикла;	
	 
	Запрос.ВначалоВыборки();

	Пока Запрос.Группировка(1)=1 Цикл
		Таб.ВывестиСекцию("Основа|Подразделение");
	    Пока Запрос.Группировка(2)=1 Цикл     
			//Если Запрос.Услуга.ЭтоГруппа()=1 Тогда
			//	 Таб.ПрисоединитьСекцию("Категория|ПодразделениеГр");
			//Иначе	        
			    //Запрос.ВсегоКолВо;        


			   ВсегоСумма=Запрос.ВсегоСумма;
			
			   СД=СоздатьОбъект("СписокЗначений");	
			   ВсегоКолВо=0;
			   //Если ВсегоСумма>0 Тогда
				   Пока Запрос.Группировка(3)=1 Цикл       
				   	    Если Запрос.Док.Категория=Запрос.Категория Тогда
				   	      СД.ДобавитьЗначение(Запрос.Док);
				   		  ВсегоКолВо=ВсегоКолВо+1;
				   		КонецЕсли;  
				   КонецЦикла;	
			   //КонецЕсли;	 
			   //Кол=Запрос.ВсегоКолво;
		       Таб.ПрисоединитьСекцию("Категория|Подразделение");  
			   СД.УдалитьВсе();
			//КонецЕсли;	 
		КонецЦикла;	
	КонецЦикла;	
	Таб.ВывестиСекцию("Итого");
	Таб.ТолькоПросмотр(1);
	Таб.Показать("Анализ работы по внебюджету", "");
КонецПроцедуры   
...
Рейтинг: 0 / 0
10.05.2012, 11:18
    #37787450
Shart_Sonia
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в отчет с вертикальными секциями добавить итоги
...
Рейтинг: 0 / 0
10.05.2012, 11:20
    #37787456
Shart_Sonia
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в отчет с вертикальными секциями добавить итоги
...
Рейтинг: 0 / 0
10.05.2012, 11:22
    #37787459
Shart_Sonia
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в отчет с вертикальными секциями добавить итоги
Та строка Итого, которая есть в таблице считает только общий итог без разбивки по категориям документа. Нужно соответственно добавить еще итого по каждой категории документа.
...
Рейтинг: 0 / 0
10.05.2012, 11:32
    #37787480
Shart_Sonia
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в отчет с вертикальными секциями добавить итоги
Так выглядит результат работы отчета на реальных данных.
...
Рейтинг: 0 / 0
11.05.2012, 10:53
    #37788922
Shart_Sonia
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в отчет с вертикальными секциями добавить итоги
Решила проблему добавлением данных в таблицу значений и ее последующей сверткой по виду документа.
Тема Закрыта.
...
Рейтинг: 0 / 0
Форумы / [игнор отключен] [закрыт для гостей] / Как в отчет с вертикальными секциями добавить итоги / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]