|
v7: Отчет "Свод проводок" | ☑ | ||
---|---|---|---|---|
0
BPT85
25.12.12
✎
10:16
|
Назрела более глобальная проблема.
С вводом регрессивной системы неврные данные начал выдавать данный свод. Перерыл все и вся, но по причине весьма плохонького уровня знаний предметной области и языка программирования... Не втыкаю.... Выход был один.. Долго лупиться в отладчик и не по одному разу прогонять код. Все считается верно кроме части ПРФ страх. Сумму, более 512т.р. обрабатывает неверно... В глобальнике нашел процедуру: Процедура ЗаполнитьДанныеДляПроводок2010. В которой, похоже, все это и делается. Чую, что решается где-то пустяковой допиской, хотя могу ошибаться. Наверняка поможет тот, кто сталкивался. Буду признателен. Просьба не пинать. А просто помочь, если сталкивались. Вот код: ИсчисленоПФРНак,ИсчисленоПФРСтрах,ИсчисленоПФРНакЕНВД,ИсчисленоПФРСтрахЕНВД,ИсчисленоФСС,ИсчисленоТФОМС,ИсчисленоФФОМС,ИсчисленоДопТариф, БазаДопТариф,ОблагаемаяБазаПФР,ОблагаемаяБазаФСС,ОблагаемаяБазаФОМС,ОблагаемаяБазаПФРЕНВД,КоэфПФР_ПоПределу,КоэфФОМС_ПоПределу,КоэфФСС_ПоПределу) СтрокаИтоговойТаблицы=""; ДоходыВычетыНалогиСотрудников.НайтиЗначение(глПолучитьУникальныйКодСотрудника(Сотрудник.ОсновнойЭлемент)+глДополнитьСтроку(Месяц,2),СтрокаИтоговойТаблицы,1); Если СтрокаИтоговойТаблицы > 0 Тогда //Русаков глНапечататьТЗ(ДоходыВычетыНалогиСотрудников,"ОблагаемаяБазаПФР"); //Русаков глНапечататьТЗ(ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы,"ОграниченнаяБаза"),"ячейка"); // используем базы, не ограниченные пределом доходов ОграниченнаяБаза //заремарил. русаков ОблагаемаяБазаПФР = ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы,"ОграниченнаяБаза").Итог("БазаПФР"); ОблагаемаяБазаФСС = ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы,"ОграниченнаяБаза").Итог("БазаФСС"); ОблагаемаяБазаФОМС = ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы,"ОграниченнаяБаза").Итог("БазаФОМС"); ОблагаемаяБазаПФРЕНВД = ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы,"ОграниченнаяБазаПФРЕНВД"); // ПФР БазаПФР = ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы,"БазаПФР"); // по основному тарифу БазаПФРЕНВД = ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы,"БазаПФРЕНВД"); // ФОМС БазаФОМС = ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы,"БазаФОМС"); // по основному тарифу БазаФОМСЕНВД = ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы,"БазаФОМСЕНВД"); // ФСС БазаФСС = ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы,"БазаФСС"); // по основному тарифу БазаФССЕНВД = ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы,"БазаФССЕНВД"); // ДопТариф БазаДопТариф = ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы,"БазаДопТариф"); // исчисленные взносы ИсчисленоПФРНак = ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы,"ИсчисленоПФРНак"); ИсчисленоПФРНакЕНВД = ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы,"ИсчисленоПФРНакЕНВД"); ИсчисленоПФРСтрах = ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы,"ИсчисленоПФРСтрах"); ИсчисленоПФРСтрахЕНВД = ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы,"ИсчисленоПФРСтрахЕНВД"); ИсчисленоФСС = ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы,"ИсчисленоФСС"); ИсчисленоФССЕНВД = ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы,"ИсчисленоФССЕНВД"); ИсчисленоТФОМС = ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы,"ИсчисленоТФОМС"); ИсчисленоТФОМСЕНВД = ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы,"ИсчисленоТФОМСЕНВД"); ИсчисленоФФОМС = ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы,"ИсчисленоФФОМС"); ИсчисленоФФОМСЕНВД = ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы,"ИсчисленоФФОМСЕНВД"); ИсчисленоДопТариф = ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы,"ИсчисленоДопТариф"); СкидкаМатпомощь = ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы,11) + ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы,11+26); Если Месяц > 1 Тогда ОблагаемаяБазаПФР = ОблагаемаяБазаПФР - ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1,"ОграниченнаяБаза").Итог("БазаПФР"); ОблагаемаяБазаФСС = ОблагаемаяБазаФСС - ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1,"ОграниченнаяБаза").Итог("БазаФСС"); ОблагаемаяБазаФОМС = ОблагаемаяБазаФОМС - ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1,"ОграниченнаяБаза").Итог("БазаФОМС"); ОблагаемаяБазаПФРЕНВД = ОблагаемаяБазаПФРЕНВД - ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1,"ОграниченнаяБазаПФРЕНВД"); БазаПФР = БазаПФР - ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1,"БазаПФР"); БазаПФРЕНВД = БазаПФРЕНВД - ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1,"БазаПФРЕНВД"); БазаФОМС = БазаФОМС - ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1,"БазаФОМС"); БазаФОМСЕНВД = БазаФОМСЕНВД - ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1,"БазаФОМСЕНВД"); БазаФСС = БазаФСС - ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1,"БазаФСС"); БазаФССЕНВД = БазаФССЕНВД - ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1,"БазаФССЕНВД"); БазаДопТариф = БазаДопТариф - ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1,"БазаДопТариф"); ИсчисленоПФРНак = ИсчисленоПФРНак - ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1,"ИсчисленоПФРНак"); ИсчисленоПФРНакЕНВД = ИсчисленоПФРНакЕНВД - ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1,"ИсчисленоПФРНакЕНВД"); ИсчисленоПФРСтрах = ИсчисленоПФРСтрах - ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1,"ИсчисленоПФРСтрах"); ИсчисленоПФРСтрахЕНВД = ИсчисленоПФРСтрахЕНВД - ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1,"ИсчисленоПФРСтрахЕНВД"); ИсчисленоФСС = ИсчисленоФСС - ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1,"ИсчисленоФСС"); ИсчисленоФССЕНВД = ИсчисленоФССЕНВД - ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1,"ИсчисленоФССЕНВД"); ИсчисленоТФОМС = ИсчисленоТФОМС - ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1,"ИсчисленоТФОМС"); ИсчисленоТФОМСЕНВД = ИсчисленоТФОМСЕНВД - ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1,"ИсчисленоТФОМСЕНВД"); ИсчисленоФФОМС = ИсчисленоФФОМС - ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1,"ИсчисленоФФОМС"); ИсчисленоФФОМСЕНВД = ИсчисленоФФОМСЕНВД - ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1,"ИсчисленоФФОМСЕНВД"); ИсчисленоДопТариф = ИсчисленоДопТариф - ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1,"ИсчисленоДопТариф"); СкидкаМатпомощь = СкидкаМатпомощь - ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1,11) - ДоходыВычетыНалогиСотрудников.ПолучитьЗначение(СтрокаИтоговойТаблицы-1,11+26); КонецЕсли; ///Русаков. добавил из 2012г(аналогичная процедура) //Если глРассчитыватьВзносыСБазыПревышения(ВидТарифа) = 1 Тогда // ОблагаемаяБазаПФРСтрах = БазаПФР; //Иначе // ОблагаемаяБазаПФРСтрах = ОблагаемаяБазаПФР; //КонецЕсли; // проверим сотрудника на наличие нулевой базы КоэфПФРСтрах_ПоПределу = ?(БазаПФР=0,0,1); КоэфПФР_ПоПределу = ?(БазаПФР=0,0,ОблагаемаяБазаПФР/БазаПФР); КоэфФОМС_ПоПределу = ?(БазаФОМС=0,0,ОблагаемаяБазаФОМС/БазаФОМС); КоэфФСС_ПоПределу = ?(БазаФСС=0,0,ОблагаемаяБазаФСС/БазаФСС); // проверим сотрудника на наличие нулевой базы КоэфПФР_ПоПределу = ?((БазаПФР+БазаПФРЕНВД)=0,0,(ОблагаемаяБазаПФР+ОблагаемаяБазаПФРЕНВД)/(БазаПФР+БазаПФРЕНВД)); КоэфФОМС_ПоПределу = ?(БазаФОМС=0,0,ОблагаемаяБазаФОМС/БазаФОМС); КоэфФСС_ПоПределу = ?(БазаФСС=0,0,ОблагаемаяБазаФСС/БазаФСС); Если ОблагаемаяБазаПФР = 0 Тогда КоэффициентСотрудника.ДобавитьЗначение(0,"ПФРНак"); КоэффициентСотрудника.ДобавитьЗначение(0,"ПФРСтрах"); Иначе КоэффициентСотрудника.ДобавитьЗначение(ИсчисленоПФРНак / ОблагаемаяБазаПФР,"ПФРНак"); КоэффициентСотрудника.ДобавитьЗначение(ИсчисленоПФРСтрах / ОблагаемаяБазаПФР,"ПФРСтрах"); КонецЕсли; Если ОблагаемаяБазаПФРЕНВД = 0 Тогда КоэффициентСотрудника.ДобавитьЗначение(0,"ПФРНакЕНВД"); КоэффициентСотрудника.ДобавитьЗначение(0,"ПФРСтрахЕНВД"); Иначе КоэффициентСотрудника.ДобавитьЗначение(ИсчисленоПФРНакЕНВД / ОблагаемаяБазаПФРЕНВД,"ПФРНакЕНВД"); КоэффициентСотрудника.ДобавитьЗначение(ИсчисленоПФРСтрахЕНВД / ОблагаемаяБазаПФРЕНВД,"ПФРСтрахЕНВД"); КонецЕсли; Если ОблагаемаяБазаФОМС = 0 Тогда КоэффициентСотрудника.ДобавитьЗначение(0,"ФФОМС"); КоэффициентСотрудника.ДобавитьЗначение(0,"ТФОМС"); Иначе КоэффициентСотрудника.ДобавитьЗначение(ИсчисленоФФОМС / ОблагаемаяБазаФОМС,"ФФОМС"); КоэффициентСотрудника.ДобавитьЗначение(ИсчисленоТФОМС / ОблагаемаяБазаФОМС,"ТФОМС"); КонецЕсли; Если ОблагаемаяБазаФСС = 0 Тогда КоэффициентСотрудника.ДобавитьЗначение(0,"ФСС"); Иначе КоэффициентСотрудника.ДобавитьЗначение(ИсчисленоФСС / ОблагаемаяБазаФСС,"ФСС"); КонецЕсли; Если БазаДопТариф = 0 Тогда КоэффициентСотрудника.ДобавитьЗначение(0,"ДопТариф"); Иначе КоэффициентСотрудника.ДобавитьЗначение(ИсчисленоДопТариф / БазаДопТариф,"ДопТариф"); КонецЕсли; Иначе КоэффициентСотрудника.ДобавитьЗначение(0,"ПФРНак"); КоэффициентСотрудника.ДобавитьЗначение(0,"ПФРСтрах"); КоэффициентСотрудника.ДобавитьЗначение(0,"ПФРНакЕНВД"); КоэффициентСотрудника.ДобавитьЗначение(0,"ПФРСтрахЕНВД"); КоэффициентСотрудника.ДобавитьЗначение(0,"ФФОМС"); КоэффициентСотрудника.ДобавитьЗначение(0,"ТФОМС"); КоэффициентСотрудника.ДобавитьЗначение(0,"ФСС"); КоэффициентСотрудника.ДобавитьЗначение(0,"ДопТариф"); КонецЕсли; КонецПроцедуры // ЗаполнитьДанныеДляПроводок2010 |
|||
1
BPT85
25.12.12
✎
10:24
|
Просьба удалить. Создано по ошибке.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |