gifts2017

Ошибки формата файла 2-НДФЛ в ЗиК релиз 306

Опубликовал Семен (1st) в раздел Программирование - Практика программирования

Ошибки 2НДФЛ в релизе: файл формируется как для ЮЛ, даже если работодатель ИП,  опечатка "Отчетсвто", и указание имени файла с расширением.
Нужно подправить отчет "СправкиПоНДФЛ".

1. Файл справки 2НДФЛ формируется как для юр.лица, не зависимо от того кем является работодатель, ИП или организация.
Результат в СheckXML:

Элемент: Файл/СвРекв/@КПП
Значение: '' 
Ошибка: Недопустимое значение элемента
Элемент: Файл/СвРекв/СвЮЛ/@ИННЮЛ
Значение: '000000000000' 
Ошибка: Неверный ИНН
Элемент: Файл/СвРекв/СвЮЛ/@КПП
Значение: '' 
Ошибка: Код отсутствует в справочнике

При проверке будет выводится ошибка ИНН для каждого сотрудника.
Для исправления необходимо в конфигураторе исправить строку в отчете "СправкиПоНДФЛ":
Строка: 458
Исходная:

СписокДанныхНалоговогоАгента.ДобавитьЗначение(СОКРЛП(ОтправительЮрЛицо),"ОтправительЮрЛицо");

Исправленная:

СписокДанныхНалоговогоАгента.ДобавитьЗначение(ОтправительЮрЛицо,"ОтправительЮрЛицо");


2. Совсем банальная ошибка, которую тоже проверка не пропустит:
Результат в СheckXML:

Элемент: СвНА/СвНАФЛ/@Отчетсвто
Значение: '' 
Ошибка: Неизвестный реквизит: Отчетсвто

Исправление:
Строка: 1926
Исходная:

Атрибут(хмлФИОФЛ, "Отчетсвто", ОтчествоПредпринимателя);

Исправленная:

Атрибут(хмлФИОФЛ, "Отчество", ОтчествоПредпринимателя);


3. Ошибка, уже описанная Comandante: в самом файле так же указывается имя этого файла - оно должно указываться без расширения
Результат в СheckXML:

Ошибка: 'Значение элемента не равно имени файла'  

Исправление:
Строка: 2167
Исходная:

Атрибут(хмлКорень, "ИдФайл", ИмяВыходногоФайла);

Исправленная:

Атрибут(хмлКорень, "ИдФайл", Лев(ИмяВыходногоФайла,СтрДлина(ИмяВыходногоФайла)-4)); 

4. Особенность: при смене года нужно самостоятельно очищать список справок, иначе будут выведены справки из этого списка, т.е. сформированные за ранее выбранный год.
Можно предупредить такую ситуацию добавив в процедуру ПриВыбореГода() код:

Если ТаблицаСправок.КоличествоСтрок()>0 Тогда
     Если Вопрос("Список справок уже заполнен за "+Год+". При печати/выгрузке будет использоваться"+РазделительСтрок
           +"текущий список, не зависимо от выбранного года. Очистить список справок?",4,180)=6 Тогда
           ТаблицаСправок.УдалитьСтроки();
     КонецЕсли;
КонецЕсли;

перед строкой 2657:

Год = СпЛет.ПолучитьЗначение(СпЛет.ТекущаяСтрока());

 

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Maxim Kolkin (the1) 04.02.11 15:39
гг, а еще там пустую таблицу надо удалить =))
2. stalker-vn (stalker-vn) 15.02.11 13:00
В начале процедуры Печать() нужно удалить строки ТаблицаСправок.УдалитьСтроки(), т.к. если формировать справку сначала за 2010 г., а потом за 2011, то данные таблицы не обнуляются.
3. Настя (moreta) 18.02.11 13:38
Кто проверяет с помощью контур-экстерн лайт необходимо установить обновление 1.9.1, иначе так и будет выдавать ошибку формата
4. Anthon Sahrahninn (Anthon) 21.02.11 09:48
(1), (2) а нельзя ли подробнее? спасибо.
5. Семен (1st) 26.02.11 15:15
stalker-vn пишет:
В начале процедуры Печать() нужно удалить строки ТаблицаСправок.УдалитьСтроки(), т.к. если формировать справку сначала за 2010 г., а потом за 2011, то данные таблицы не обнуляются.

Просто там так неудачно задумано - сначала заполняете список справок (вкладка "Список справок 2НДФЛ"), затем печатаете, либо выгружаете в файл. Если список пустой, то при печати/выгрузке он автоматически будет заполнен. Если список заполнен, то он и используется, независимо от выбранного года (т.е. никакого суммирования нет). Поэтому, если сначала напечатали за 2010, а потом хотите и за 2011, то сначала откройте вкладку "Список справок 2НДФЛ" и нажмите кнопку [Очистить], а потом только [Печать].
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа