В отчете для расчета сумм страховых взносов используется запрос по бухгалтерским итогам в таком виде:
БухИт = СоздатьОбъект("БухгалтерскиеИтоги");
БухИт.ВыполнитьЗапрос(НачДатаОплаты, КонДатаОплаты, "69.21, 69.22, 69.25, 69.31, 69.41, 69.42, 69.11",,,, "Месяц",);
БухИт.ВыбратьПериоды();
Пока БухИт.ПолучитьПериод() = 1 Цикл
БухИт.ВыбратьСчета(,,,);
Пока БухИт.ПолучитьСчет(,) = 1 Цикл
ВзносыПФ = ВзносыПФ + БухИт.СНД() + БухИт.ДО() - БухИт.СКД(); //сумма начисленных и уплаченных взносов в ПФР
Если ДатаГод(БухИт.КонДата) <> ДатаГод(НачДатаОплаты) Тогда
ДобавитьСтрокуРасшифровки( "П000211014303", "Строка 143 ""Сумма уплачиваемых за налоговый период страховых взносов""", "+", "Сальдо начальное по дебету счета " +БухИт.Счет+ " " + БухИт.Счет.Наименование, БухИт.СНД(), "", "" );
ДобавитьСтрокуРасшифровки( "П000211014303", "", "+", "Оборот по дебету счета " +БухИт.Счет+ " " + БухИт.Счет.Наименование, БухИт.ДО(), "", "" );
ДобавитьСтрокуРасшифровки( "П000211014303", "", "-", "Сальдо конечное по дебету счета " +БухИт.Счет+ " " + БухИт.Счет.Наименование, -БухИт.СКД(), "", "" );
ИначеЕсли ДатаМесяц(БухИт.КонДата)-1 <= 3 Тогда
ДобавитьСтрокуРасшифровки( "П000211014003", "Строка 140 ""Сумма уплачиваемых за первый квартал страховых взносов""", "+", "Сальдо начальное по дебету счета " +БухИт.Счет+ " " + БухИт.Счет.Наименование, БухИт.СНД(), "", "" );
ДобавитьСтрокуРасшифровки( "П000211014003", "", "+", "Оборот по дебету счета " +БухИт.Счет+ " " + БухИт.Счет.Наименование, БухИт.ДО(), "", "" );
ДобавитьСтрокуРасшифровки( "П000211014003", "", "-", "Сальдо конечное по дебету счета " +БухИт.Счет+ " " + БухИт.Счет.Наименование, -БухИт.СКД(), "", "" );
ИначеЕсли ДатаМесяц(БухИт.КонДата)-1 <= 6 Тогда
ДобавитьСтрокуРасшифровки( "П000211014103", "Строка 141 ""Сумма уплачиваемых за полугодие страховых взносов""", "+", "Сальдо начальное по дебету счета " +БухИт.Счет+ " " + БухИт.Счет.Наименование, БухИт.СНД(), "", "" );
ДобавитьСтрокуРасшифровки( "П000211014103", "", "+", "Оборот по дебету счета " +БухИт.Счет+ " " + БухИт.Счет.Наименование, БухИт.ДО(), "", "" );
ДобавитьСтрокуРасшифровки( "П000211014103", "", "-", "Сальдо конечное по дебету счета " +БухИт.Счет+ " " + БухИт.Счет.Наименование, -БухИт.СКД(), "", "" );
ИначеЕсли ДатаМесяц(БухИт.КонДата)-1 <= 9 Тогда
ДобавитьСтрокуРасшифровки( "П000211014203", "Строка 142 ""Сумма уплачиваемых за 9 месяцев страховых взносов""", "+", "Сальдо начальное по дебету счета " +БухИт.Счет+ " " + БухИт.Счет.Наименование, БухИт.СНД(), "", "" );
ДобавитьСтрокуРасшифровки( "П000211014203", "", "+", "Оборот по дебету счета " +БухИт.Счет+ " " + БухИт.Счет.Наименование, БухИт.ДО(), "", "" );
ДобавитьСтрокуРасшифровки( "П000211014203", "", "-", "Сальдо конечное по дебету счета " +БухИт.Счет+ " " + БухИт.Счет.Наименование, -БухИт.СКД(), "", "" );
Иначе
ДобавитьСтрокуРасшифровки( "П000211014303", "Строка 143 ""Сумма уплачиваемых за налоговый период страховых взносов""", "+", "Сальдо начальное по дебету счета " +БухИт.Счет+ " " + БухИт.Счет.Наименование, БухИт.СНД(), "", "" );
ДобавитьСтрокуРасшифровки( "П000211014303", "", "+", "Оборот по дебету счета " +БухИт.Счет+ " " + БухИт.Счет.Наименование, БухИт.ДО(), "", "" );
ДобавитьСтрокуРасшифровки( "П000211014303", "", "-", "Сальдо конечное по дебету счета " +БухИт.Счет+ " " + БухИт.Счет.Наименование, -БухИт.СКД(), "", "" );
КонецЕсли;
КонецЦикла;
Если ДатаГод(БухИт.КонДата) <> ДатаГод(НачДатаОплаты) Тогда
П000211014303 = ВзносыПФ;
ИначеЕсли ДатаМесяц(БухИт.КонДата)-1 <= 3 Тогда
П000211014003 = ВзносыПФ;
ИначеЕсли ДатаМесяц(БухИт.КонДата)-1 <= 6 Тогда
П000211014103 = ВзносыПФ;
ИначеЕсли ДатаМесяц(БухИт.КонДата)-1 <= 9 Тогда
П000211014203 = ВзносыПФ;
Иначе
П000211014303 = ВзносыПФ;
КонецЕсли;
КонецЦикла;
Но в этом случае месяцы с марта по август не рассматриваются, а в отчет должны идти суммы нарастающим итогом. Для исправления ситуации необходимо использовать исправленный фрагмент ( исправленные строки выделены красным цветом):
БухИт = СоздатьОбъект("БухгалтерскиеИтоги");
БухИт.ВыполнитьЗапрос(НачДатаОплаты, КонДатаОплаты, "69.21, 69.22, 69.25, 69.31, 69.41, 69.42, 69.11",,,, "Месяц",);
БухИт.ВыбратьПериоды(1); // 1 - включить в выборку все счета, которые имели итоги в данном запросе;
Пока БухИт.ПолучитьПериод() = 1 Цикл
БухИт.ВыбратьСчета(,,,);
Пока БухИт.ПолучитьСчет(,) = 1 Цикл
ВзносыПФ = ВзносыПФ + БухИт.СНД() + БухИт.ДО() - БухИт.СКД(); //сумма начисленных и уплаченных взносов в ПФР
Если ДатаГод(БухИт.КонДата) <> ДатаГод(НачДатаОплаты) Тогда
ДобавитьСтрокуРасшифровки( "П000211014303", "Строка 143 ""Сумма уплачиваемых за налоговый период страховых взносов""", "+", "Сальдо начальное по дебету счета " +БухИт.Счет+ " " + БухИт.Счет.Наименование, БухИт.СНД(), "", "" );
ДобавитьСтрокуРасшифровки( "П000211014303", "", "+", "Оборот по дебету счета " +БухИт.Счет+ " " + БухИт.Счет.Наименование, БухИт.ДО(), "", "" );
ДобавитьСтрокуРасшифровки( "П000211014303", "", "-", "Сальдо конечное по дебету счета " +БухИт.Счет+ " " + БухИт.Счет.Наименование, -БухИт.СКД(), "", "" );
ИначеЕсли ДатаМесяц(БухИт.КонДата) <= 3 Тогда // не нужно сдвигать на месяц
ДобавитьСтрокуРасшифровки( "П000211014003", "Строка 140 ""Сумма уплачиваемых за первый квартал страховых взносов""", "+", "Сальдо начальное по дебету счета " +БухИт.Счет+ " " + БухИт.Счет.Наименование, БухИт.СНД(), "", "" );
ДобавитьСтрокуРасшифровки( "П000211014003", "", "+", "Оборот по дебету счета " +БухИт.Счет+ " " + БухИт.Счет.Наименование, БухИт.ДО(), "", "" );
ДобавитьСтрокуРасшифровки( "П000211014003", "", "-", "Сальдо конечное по дебету счета " +БухИт.Счет+ " " + БухИт.Счет.Наименование, -БухИт.СКД(), "", "" );
ИначеЕсли ДатаМесяц(БухИт.КонДата) <= 6 Тогда // не нужно сдвигать на месяц
ДобавитьСтрокуРасшифровки( "П000211014103", "Строка 141 ""Сумма уплачиваемых за полугодие страховых взносов""", "+", "Сальдо начальное по дебету счета " +БухИт.Счет+ " " + БухИт.Счет.Наименование, БухИт.СНД(), "", "" );
ДобавитьСтрокуРасшифровки( "П000211014103", "", "+", "Оборот по дебету счета " +БухИт.Счет+ " " + БухИт.Счет.Наименование, БухИт.ДО(), "", "" );
ДобавитьСтрокуРасшифровки( "П000211014103", "", "-", "Сальдо конечное по дебету счета " +БухИт.Счет+ " " + БухИт.Счет.Наименование, -БухИт.СКД(), "", "" );
ИначеЕсли ДатаМесяц(БухИт.КонДата) <= 9 Тогда // не нужно сдвигать на месяц
ДобавитьСтрокуРасшифровки( "П000211014203", "Строка 142 ""Сумма уплачиваемых за 9 месяцев страховых взносов""", "+", "Сальдо начальное по дебету счета " +БухИт.Счет+ " " + БухИт.Счет.Наименование, БухИт.СНД(), "", "" );
ДобавитьСтрокуРасшифровки( "П000211014203", "", "+", "Оборот по дебету счета " +БухИт.Счет+ " " + БухИт.Счет.Наименование, БухИт.ДО(), "", "" );
ДобавитьСтрокуРасшифровки( "П000211014203", "", "-", "Сальдо конечное по дебету счета " +БухИт.Счет+ " " + БухИт.Счет.Наименование, -БухИт.СКД(), "", "" );
Иначе
ДобавитьСтрокуРасшифровки( "П000211014303", "Строка 143 ""Сумма уплачиваемых за налоговый период страховых взносов""", "+", "Сальдо начальное по дебету счета " +БухИт.Счет+ " " + БухИт.Счет.Наименование, БухИт.СНД(), "", "" );
ДобавитьСтрокуРасшифровки( "П000211014303", "", "+", "Оборот по дебету счета " +БухИт.Счет+ " " + БухИт.Счет.Наименование, БухИт.ДО(), "", "" );
ДобавитьСтрокуРасшифровки( "П000211014303", "", "-", "Сальдо конечное по дебету счета " +БухИт.Счет+ " " + БухИт.Счет.Наименование, -БухИт.СКД(), "", "" );
КонецЕсли;
КонецЦикла;
Если ДатаГод(БухИт.КонДата) <> ДатаГод(НачДатаОплаты) Тогда
П000211014303 = ВзносыПФ;
ИначеЕсли ДатаМесяц(БухИт.КонДата) <= 3 Тогда // не нужно сдвигать на месяц
П000211014003 = ВзносыПФ;
ИначеЕсли ДатаМесяц(БухИт.КонДата) <= 6 Тогда // не нужно сдвигать на месяц
П000211014103 = ВзносыПФ;
ИначеЕсли ДатаМесяц(БухИт.КонДата) <= 9 Тогда // не нужно сдвигать на месяц
П000211014203 = ВзносыПФ;
Иначе
П000211014303 = ВзносыПФ;
КонецЕсли;
КонецЦикла;
У меня остается вопрос: зачем края запроса сдвинуты на 15 дней:
НачДатаОплаты = НачГода(Дата1) + 15;
КонДатаОплаты = КонМесяца(Дата2) + 15;
КонДатаЗапроса = КонМесяца(Дата2+1);