Как посчитать сумму в колонках ТЧ отчета в расчетно платежной ведомости?
Народ, помогите пожалуйста, нужно чтобы сумма считалась в каждой колонке документа. А она считается только по колонке ИтогоКВыплате.
Заранее спасибо.
Заранее спасибо.
// Подвал документа.
ОбластьМакетаПодвал.Параметры.Заполнить(СтрокаОтчета);
ВедомостьИтого = 0;
ТабДокумент.Вывести(ОбластьМакетаШапкаДокумента);
ТабДокумент.Вывести(ОбластьМакетаШапкаТаблицы);
НомерПП = 1;
ВсегоСтрокДокумента = СтрокаОтчета.Строки.Количество();
ИтогоПоСтранице = 0;
Для каждого СтрокаФизЛица из СтрокаОтчета.Строки Цикл
ОбластьМакетаСтрока.Параметры.Заполнить(СтрокаФизЛица);
ОбластьМакетаСтрока.Параметры.НомерПП = НомерПП;
Основные = 0;
Больничный = 0;
ДниБолезни = 0;
Пособия = 0;
Колонка5 = 0;
Колонка6 = 0;
Колонка7 = 0;
Колонка8 = 0;
ВсегоНачислено = 0;
ЗаработнаяПлата = 0;
Колонка16 = 0;
Колонка17 = 0;
НДФЛ = 0;
СтраховойВзнос = 0;
ВсегоУдержано = 0;
Для каждого СтрокаНачисление из СтрокаФизЛица.Строки Цикл
Если ОсновныеНачисления[СтрокаНачисление.ВидРасчета] <> Неопределено тогда
Основные = Основные + СтрокаНачисление.Результат;
ИначеЕсли ПособияПоУходу.НайтиПоЗначению(СтрокаНачисление.ВидПособияСоциальногоСтрахования) <> Неопределено Тогда
Пособия = Пособия + СтрокаНачисление.Результат;
ИначеЕсли Больничные.НайтиПоЗначению(СтрокаНачисление.ВидРасчета) <> Неопределено Тогда
Больничный = Больничный + СтрокаНачисление.Результат;
ДниБолезни = ДниБолезни + СтрокаНачисление.ДниБолезни;
ИначеЕсли СписокНачисленийКолонка1[СтрокаНачисление.ВидРасчета] <> Неопределено тогда
Колонка5 = Колонка5 + СтрокаНачисление.Результат;
ИначеЕсли СписокНачисленийКолонка2[СтрокаНачисление.ВидРасчета] <> Неопределено тогда
Колонка6 = Колонка6 + СтрокаНачисление.Результат;
ИначеЕсли СписокНачисленийКолонка3[СтрокаНачисление.ВидРасчета] <> Неопределено тогда
Колонка7 = Колонка7 + СтрокаНачисление.Результат;
ИначеЕсли СписокНачисленийКолонка4[СтрокаНачисление.ВидРасчета] <> Неопределено тогда
Колонка8 = Колонка8 + СтрокаНачисление.Результат;
ИначеЕсли СписокУдержанийКолонка1[СтрокаНачисление.ВидРасчета] <> Неопределено тогда
Колонка16 = Колонка16 + СтрокаНачисление.Результат;
ИначеЕсли СписокУдержанийКолонка2[СтрокаНачисление.ВидРасчета] <> Неопределено тогда
Колонка17 = Колонка17 + СтрокаНачисление.Результат;
ИначеЕсли СтрокаНачисление.ВидРасчета = "НДФЛ" тогда
НДФЛ = НДФЛ + СтрокаНачисление.Результат;
ИначеЕсли СтрокаНачисление.ВидРасчета = "СтраховойВзнос" тогда
СтраховойВзнос = СтраховойВзнос + СтрокаНачисление.Результат;
ИначеЕсли СтрокаНачисление.ВидРасчета = "ЗаработнаяПлата" тогда
ЗаработнаяПлата = ЗаработнаяПлата + СтрокаНачисление.Результат;
КонецЕсли;
ВсегоНачислено = Основные + Колонка5 + Колонка6 + Колонка7 + Колонка8 + Больничный + Пособия;
ВсегоУдержано = ЗаработнаяПлата + Колонка16 + Колонка17 + НДФЛ + СтраховойВзнос;
КонецЦикла;
ОбластьМакетаСтрока.Параметры.Основные = Основные;
ОбластьМакетаСтрока.Параметры.Больничный = Больничный;
Если ЗаполнятьКБК Тогда
ОбластьМакетаСтрока.Параметры.ДниБолезни = ДниБолезни;
КонецЕсли;
ОбластьМакетаСтрока.Параметры.Пособия = Пособия;
ОбластьМакетаСтрока.Параметры.Колонка5 = Колонка5;
ОбластьМакетаСтрока.Параметры.Колонка6 = Колонка6;
ОбластьМакетаСтрока.Параметры.Колонка7 = Колонка7;
ОбластьМакетаСтрока.Параметры.Колонка8 = Колонка8;
ОбластьМакетаСтрока.Параметры.ВсегоНачислено = ВсегоНачислено;
ОбластьМакетаСтрока.Параметры.Аванс = ЗаработнаяПлата;
ОбластьМакетаСтрока.Параметры.НДФЛ = НДФЛ;
ОбластьМакетаСтрока.Параметры.СтраховойВзнос = СтраховойВзнос;
ОбластьМакетаСтрока.Параметры.Колонка16 = Колонка16;
ОбластьМакетаСтрока.Параметры.Колонка17 = Колонка17;
ОбластьМакетаСтрока.Параметры.ВсегоУдержано = ВсегоУдержано;
ОбластьМакетаСтрока.Параметры.СуммаПоВедомости = ?(ЗначениеЗаполнено(СтрокаФизЛица.СуммаПоВедомости), СтрокаФизЛица.СуммаПоВедомости, 0);
Если НЕ ИспользуетсяПолеВедомость тогда
ОбластьМакетаСтрока.Параметры.ЗаписьОДепонировании = "";
КонецЕсли;
ВедомостьИтого = ВедомостьИтого + ?(ЗначениеЗаполнено(СтрокаФизЛица.СуммаПоВедомости), СтрокаФизЛица.СуммаПоВедомости, 0);
ВывестиПодвалЛиста = Не ФормированиеПечатныхФорм.ПроверитьВыводТабличногоДокумента(ТабДокумент, ВыводимыеОбласти);
Если Не ВывестиПодвалЛиста и НомерПП = ВсегоСтрокДокумента Тогда
//все строки отчета перебрали, они все еще умещаются на странице
ВывестиПодвалЛиста = Не ФормированиеПечатныхФорм.ПроверитьВыводТабличногоДокумента(ТабДокумент, ВыводимыеОбластиСПодвалом);
КонецЕсли;
Если ВывестиПодвалЛиста тогда
ОбластьПодвалСтр.Параметры.Основные = ИтогоПоСтранице;
ОбластьПодвалСтр.Параметры.ИтогоКВыплате = ИтогоПоСтранице;
ТабДокумент.Вывести(ОбластьПодвалСтр);
ТабДокумент.ВывестиГоризонтальныйРазделительСтраниц();
ТабДокумент.Вывести(ОбластьМакетаШапкаТаблицы);
ИтогоПоСтранице = 0;
КонецЕсли;
ИтогоПоСтранице = ИтогоПоСтранице + ?(ЗначениеЗаполнено(СтрокаФизЛица.СуммаПоВедомости), СтрокаФизЛица.СуммаПоВедомости, 0);
ТабДокумент.Вывести(ОбластьМакетаСтрока);
НомерПП = НомерПП + 1;
КонецЦикла;
Если ИспользуетсяПолеВедомость тогда
ОбластьМакетаПодвал.Параметры.ИтогоКВыплате = ОбластьМакетаПодвал.Параметры.ИтогоКВыплате;
ОбластьМакетаПодвал.Параметры.СуммаПоВедомости = ?(СтрокаОтчета.Ведомость <> Null И СтрокаОтчета.Ведомость.Проведен, ОбластьМакетаПодвал.Параметры.СуммаПоВедомости, 0);
Иначе
ОбластьМакетаПодвал.Параметры.ИтогоКВыплате = ВедомостьИтого;
ОбластьМакетаПодвал.Параметры.СуммаПоВедомости = 0;
ОбластьМакетаПодвал.Параметры.НеВыдано = 0;
ОбластьМакетаПодвал.Параметры.Задепонировано = 0;
КонецЕсли;
Для Сч = 1 По ОбластьМакетаСтрока.Параметры.Количество() Цикл
ОбластьМакетаСтрока.Параметры.Установить(Сч - 1,"");
КонецЦикла;
ОбластьМакетаСтрока.Параметры.Физлицо = " " + Символы.ПС + " ";
Пока ФормированиеПечатныхФорм.ПроверитьВыводТабличногоДокумента(ТабДокумент, ВыводимыеОбластиДляПроверки, Ложь) Цикл
ТабДокумент.Вывести(ОбластьМакетаСтрока);
КонецЦикла;
ТабДокумент.Вывести(ОбластьМакетаПодвал);
КонецЦикла;
ПоказатьПрикрепленные файлы:
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот