Запрос3 = СоздатьОбъект("Запрос");
ТекстЗапроса =
"//{{ЗАПРОС3(Сформировать)
|Период с ВыбНачПериода по ВыбКонПериода;
|ДатаДок = Документ.НачисленияУдержанияСписком.ДатаДок;
|Расчет = Документ.НачисленияУдержанияСписком.Расчет;
|НомерДок = Документ.НачисленияУдержанияСписком.НомерДок;
|Величина = Документ.НачисленияУдержанияСписком.Величина;
|СкидкаКДоходамДляСтраховыхВзносов = Документ.НачисленияУдержанияСписком.СкидкаКДоходамДляСтраховыхВзносов;
|Функция СкидкаКДоходамДляСтраховыхВзносовСумма = Сумма(СкидкаКДоходамДляСтраховыхВзносов-СкидкаКДоходамДляСтраховыхВзносов+Число(Величина));
|Группировка ДатаДок без упорядочивания;
|Группировка Расчет;
|Группировка НомерДок;
|Условие(Расчет = ВыбРасчет);
|"//}}ЗАПРОС
;
// Если ошибка в запросе, то выход из процедуры Если Запрос3.Выполнить(ТекстЗапроса) = 0ТогдаВозврат;
КонецЕсли;
ТабОбщ = СоздатьОбъект("ТаблицаЗначений");
Запрос3.Выгрузить(ТабОбщ,0,1); //0 - значения групп и функций;//1 - итоги по группировкам выводить сверху
Запрос1 = СоздатьОбъект("Запрос");
ТекстЗапроса =
"//{{ЗАПРОС1(Сформировать)
|Период с ВыбНачПериода по ВыбКонПериода;
|ДатаДок1 = Документ.НачисленияУдержанияСписком.ДатаДок;
|Расчет1 = Документ.НачисленияУдержанияСписком.Расчет;
|НомерДок1 = Документ.НачисленияУдержанияСписком.НомерДок;
|Величина1 = Документ.НачисленияУдержанияСписком.Величина;
|СкидкаКДоходамДляСтраховыхВзносов1 = Документ.НачисленияУдержанияСписком.СкидкаКДоходамДляСтраховыхВзносов;
|Функция СкидкаКДоходамДляСтраховыхВзносовСумма1 = Сумма(СкидкаКДоходамДляСтраховыхВзносов1-СкидкаКДоходамДляСтраховыхВзносов1+Число(Величина1));
|Группировка ДатаДок1 без упорядочивания;
|Группировка Расчет1;
|Группировка НомерДок1;
|Условие(Расчет1 = ВыбРасчет1);
|"//}}ЗАПРОС
;
// Если ошибка в запросе, то выход из процедурыЕсли Запрос1.Выполнить(ТекстЗапроса) = 0ТогдаВозврат;
КонецЕсли;
ТабОбщ.НоваяКолонка("Расчет1");//
ТабОбщ.НоваяКолонка("СкидкаКДоходамДляСтраховыхВзносов1","Число");
Пока Запрос1.Группировка(1) = 1Цикл
ДатаДок1 = Запрос1.ДатаДок1;
ТабОбщ.НоваяСтрока();
ТабОбщ.ДатаДок = ДатаДок1;
ТабОбщ.СкидкаКДоходамДляСтраховыхВзносов1 = Запрос1.СкидкаКДоходамДляСтраховыхВзносов1;
Пока Запрос1.Группировка(2) = 1Цикл
Расчет1 = Запрос1.Расчет1;
ТабОбщ.НоваяСтрока();
ТабОбщ.ДатаДок = ДатаДок1;
ТабОбщ.Расчет1 = Расчет1;
ТабОбщ.СкидкаКДоходамДляСтраховыхВзносов1 = Запрос1.СкидкаКДоходамДляСтраховыхВзносов1;
Пока Запрос1.Группировка(3) = 1Цикл
ТабОбщ.НоваяСтрока();
ТабОбщ.ДатаДок = ДатаДок1;
ТабОбщ.НомерДок = Запрос1.НомерДок1;
ТабОбщ.Расчет1 = Расчет1;
ТабОбщ.СкидкаКДоходамДляСтраховыхВзносов1 = Запрос1.СкидкаКДоходамДляСтраховыхВзносов1;
КонецЦикла;
КонецЦикла;
КонецЦикла;
ТабОбщ.Свернуть("ДатаДок,НомерДок,Расчет,Расчет1","СкидкаКДоходамДляСтраховыхВзносов,СкидкаКДоходамДляСтраховыхВзносов1");
ТабОбщ.Сортировать("ДатаДок,НомерДок");
Таб = СоздатьОбъект("Таблица");
Таб.ИсходнаяТаблица("Сформировать");
Таб.ВывестиСекцию("Заголовок");
ТабОбщ.ВыбратьСтроки();
Пока ТабОбщ.ПолучитьСтроку() Цикл
Таб.ВывестиСекцию("Строка");
КонецЦикла;
Таб.Показать("Сформировать", "");
а строка таблицы <ТабОбщ.ДатаДок>|<ТабОбщ.НомерДок>|<ТабОбщ.Расчет>|<ТабОбщ.СкидкаКДоходамДляСтраховыхВзносов>| |<ТабОбщ.ДатаДок>|<ТабОбщ.НомерДок>|<ТабОбщ.Расчет1>|<ТабОбщ.СкидкаКДоходамДляСтраховыхВзносов1>|
Сообщение отредактировал nysysimara - 09.11.17, 15:08
и в таблице заменить ТабОбщ.СкидкаКДоходамДляСтраховыхВзносов на ТабОбщ.СкидкаКДоходамДляСтраховыхВзносовСумма ТабОбщ.СкидкаКДоходамДляСтраховыхВзносов1 на ТабОбщ.СкидкаКДоходамДляСтраховыхВзносовСумма1
salton @ Сегодня, 9:07 , Это для итого по всему документу?
Для "итого по всему документу" (если Вы имеете ввиду Документ.НачисленияУдержанияСписком) есть в запросе
Функция СкидкаКДоходамДляСтраховыхВзносовСумма
, а метод ТабОбщ.Итог("СкидкаКДоходамДляСтраховыхВзносовСумма") вернет вам итог по колонке ТабОбщ.СкидкаКДоходамДляСтраховыхВзносовСумма, который Вы потом сможете поместить в конце табличного документа. К примеру
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!