gifts2017

Отключение упрощенного учета НДФЛ для корректного заполнения формы 6-НДФЛ

Опубликовал Фархад Ильязов (FarhadIlyazov) в раздел Обработки - Обработка документов

В соответствии с методологией учета НДФЛ удержанного рекомендуется отключать упрощенный учет НДФЛ. Просто снять галочку нельзя, нужно потом перепроводить документы начисления и выплат.

Вот тут и начнутся танцы с бубном, т.к. программа ругается на нарушение хронологии учета НДФЛ.

Обработка позволяет автоматизировать процесс перехода с упрощенного учета НДФЛ.

Что делает:

  • Этап 1. Удаляет все записи НДФЛ удержанного.
  • Этап 2. Снимает галочку упрощенного учет НДФЛ.
  • Этап 3. Проводит в хронологическом порядке документы ведомость в банк и кассу.

Можно использовать, если решили просто провести документы ведомость в кассу и банк, к примеру, после того, как выставили правильные даты выплаты дохода в документах начисления отпуска.

Рекомендации к использованию перед запуском обработки:

  1. Задать верные даты завершения выплат в документах ведомость в банк и кассу
  2. Если не хотите, чтобы в текущем году регистрировался НДФЛ удержанный за прошлые годы, то воспользуйтесь обработкой ОбнулениеНДФЛУдержанного.epf.

Удачи!!!

Скачать файлы

Наименование Файл Версия Размер Кол. Скачив.
ПереносНДФЛУдержанногоВВыплаты.epf
.epf 7,86Kb
20.04.16
68
.epf 7,86Kb 68 Скачать
ОбнулениеНДФЛУдержанного.epf
.epf 7,36Kb
17.04.16
51
.epf 7,36Kb 51 Скачать

См. также

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

Комментарии

1. Дмитрий Чекунов (cdb) 17.04.16 15:57
Зарплата и Управление Персоналом, редакция 2.5 (2.5.101.2)
При запуске обработки выдается ошибка.
{Форма.Форма.Форма(25)}: Ошибка при вызове метода контекста (Выполнить)
РезультатЗапроса = Запрос.Выполнить();
по причине:
{(4, 44)}: Поле не найдено "НДФЛРасчетыСБюджетом.Регистратор.ИныеДоходы"
ЕСТЬNULL(НДФЛРасчетыСБюджетом.Регистратор.<<?>>ИныеДоходы, ЛОЖЬ) КАК ИныеДоходы

Зачем в запросе выбор каких то "Иных доходов" если в дальнейшем в обработке это нигде не используется

На третьем этапе работы процедуры выдается ошибка
{Форма.Форма.Форма(106)}: Ошибка при вызове метода контекста (Выполнить)
РезультатЗапроса = Запрос.Выполнить();
по причине:
{(6, 2)}: Таблица не найдена "Документ.ВедомостьВБанк"
<<?>>Документ.ВедомостьВБанк КАК ВедомостьВБанк

В конфигурации Зарплата и Управление Персоналом, редакция 2.5 (2.5.101.2) документа "ВедомостьВБанк" не существует.
Для какой конфигурации разработана обработка?
FarhadIlyazov; +1 Ответить 1
2. jsunny _ (jsunny) 17.04.16 17:18
Скоро выйдет обновление 2.5.102 там добавлен похожий помощник.
3. Фархад Ильязов (FarhadIlyazov) 17.04.16 17:22
(2) jsunny, (1) cdb, спасибо за замечание, файл ПереносНДФЛУдержанногоВВыплаты.epf исправлен!
4. Maxim Kolkin (the1) 19.04.16 14:31
У меня 4 ведомости отказались перепроводиться, пришлось немного допилить Этап 3

Процедура Этап3()
	
	Запрос = Новый Запрос;
	Запрос.УстановитьПараметр("ДатаНачала", Дата(2016,01,01,0,0,0));
	Запрос.УстановитьПараметр("ДатаОкончания", Дата(2016,12,31,23,59,59));
	Запрос.Текст = 
	"ВЫБРАТЬ
	|	ВедомостьВБанк.Ссылка КАК Документ,
	|	ВедомостьВБанк.Дата КАК Дата
	|ПОМЕСТИТЬ ВТДокументыОплаты
	|ИЗ
	|	Документ.ВедомостьВБанк КАК ВедомостьВБанк
	|ГДЕ
	|	ВедомостьВБанк.ДокументОснование.ПериодРегистрации МЕЖДУ &ДатаНачала И &ДатаОкончания
	|	И ВедомостьВБанк.Проведен
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ВедомостьВКассу.Ссылка,
	|	ВедомостьВКассу.Дата
	|ИЗ
	|	Документ.ВедомостьВКассу КАК ВедомостьВКассу
	|ГДЕ
	|	ВедомостьВКассу.ДокументОснование.ПериодРегистрации МЕЖДУ &ДатаНачала И &ДатаОкончания
	|	И ВедомостьВКассу.Проведен
	|;
	|
	|////////////////////////////////////////////////////////////­////////////////////
	|ВЫБРАТЬ
	|	ВТДокументыОплаты.Документ
	|ИЗ
	|	ВТДокументыОплаты КАК ВТДокументыОплаты
	|
	|УПОРЯДОЧИТЬ ПО
	|	ВТДокументыОплаты.Дата";
	
	РезультатЗапроса = Запрос.Выполнить();
	
	Если РезультатЗапроса.Пустой() Тогда
		Возврат;
	КонецЕсли;
	
	ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
	
	Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
		
		ДокументОбъект = ВыборкаДетальныеЗаписи.Документ.ПолучитьОбъект();
		Попытка
			ДокументОбъект.Записать(РежимЗаписиДокумента.ОтменаПроведения);
		Исключение
			Сообщить(Строка(ДокументОбъект.Ссылка) + ": "+ Строка(ИнформацияОбОшибке().Описание));
		КонецПопытки;
		
	КонецЦикла;
	
	ВыборкаДетальныеЗаписи.Сбросить();
	
	Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
		
		ДокументОбъект = ВыборкаДетальныеЗаписи.Документ.ПолучитьОбъект();	//: ОбъектДок = Документы.ВедомостьВБанк.СоздатьДокумент();
		МассивДокументовКПерепроведению = ПроверитьХронологиюУчетаУдержанногоНДФЛ(ДокументОбъект.Организация, ДокументОбъект.Зарплата.ВыгрузитьКолонку("Физлицо"), ?(ЗначениеЗаполнено(ДокументОбъект.ДатаВыплаты), ДокументОбъект.ДатаВыплаты, ДокументОбъект.Дата));
		ОбработатьЗависимыеДокументы(МассивДокументовКПерепроведению, РежимЗаписиДокумента.ОтменаПроведения);
		
		Попытка
			ДокументОбъект.Записать(РежимЗаписиДокумента.Проведение);
			ОбработатьЗависимыеДокументы(МассивДокументовКПерепроведению, РежимЗаписиДокумента.Проведение);
		Исключение
			Сообщить(Строка(ДокументОбъект) + ": "+ Строка(ИнформацияОбОшибке().Описание));
		КонецПопытки;
		
	КонецЦикла;
	
КонецПроцедуры	

Функция ПроверитьХронологиюУчетаУдержанногоНДФЛ(Организация, Сотрудники, ДатаРегистрации) Экспорт
	
	МассивДокументовКПерепроведению = Новый Массив;
	
	УпрощенныйУчетНДФЛ = ПроцедурыУправленияПерсоналом.ЗначениеУчетнойПолитикиПоПерсоналуОрганизации(глЗначениеПеременной("глУчетнаяПолитикаПоПерсоналуОрганизации"), Организация, "УпрощенныйУчетНДФЛ");
	Если УпрощенныйУчетНДФЛ Тогда
		Возврат МассивДокументовКПерепроведению
	КонецЕсли;
	
	Запрос = Новый Запрос;
	Запрос.УстановитьПараметр("ДатаРегистрации",              КонецДня(ДатаРегистрации));
	Запрос.УстановитьПараметр("Сотрудники",                   Сотрудники);
	Запрос.УстановитьПараметр("ОбособленноеПодразделение",    Организация);
	Запрос.УстановитьПараметр("Организация",                  ОбщегоНазначенияЗК.ГоловнаяОрганизация(Организация));
	Запрос.Текст = 
	"ВЫБРАТЬ РАЗЛИЧНЫЕ
	|	НДФЛРасчетыСБюджетом.Регистратор
	|ИЗ
	|	РегистрНакопления.НДФЛРасчетыСБюджетом КАК НДФЛРасчетыСБюджетом
	|ГДЕ
	|	НДФЛРасчетыСБюджетом.ФизЛицо В(&Сотрудники)
	|	И НДФЛРасчетыСБюджетом.Организация = &Организация
	|	И НДФЛРасчетыСБюджетом.ОбособленноеПодразделение = &ОбособленноеПодразделение
	|	И НДФЛРасчетыСБюджетом.Период > &ДатаРегистрации
	|	И НДФЛРасчетыСБюджетом.ВидСтроки = ЗНАЧЕНИЕ(Перечисление.НДФЛРасчетыСБюджетомВидСтроки.Удержание)
	|	И НДФЛРасчетыСБюджетом.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)";
	
	Результат = Запрос.Выполнить();
	
	Если Не Результат.Пустой() Тогда
		Выборка = Результат.Выбрать();
		Пока Выборка.Следующий() Цикл
			МассивДокументовКПерепроведению.Добавить(Выборка.Регистратор);
		КонецЦикла;
	КонецЕсли;
	
	Возврат МассивДокументовКПерепроведению;

КонецФункции

Функция ОбработатьЗависимыеДокументы(МассивДокументовКПерепроведению, РежимПроведения)
	
	Для Каждого Документ Из МассивДокументовКПерепроведению Цикл
		ДокументОбъект = Документ.ПолучитьОбъект();
		Попытка
			ДокументОбъект.Записать(РежимПроведения);
		Исключение
			Сообщить(Строка(ДокументОбъект) + ": "+ Строка(ИнформацияОбОшибке().Описание));
		КонецПопытки;
	КонецЦикла;
	
КонецФункции

...Показать Скрыть
FarhadIlyazov; +1 Ответить
5. Елена (milana5) 19.04.16 18:25
У меня обработка зациклилась на третьем этапе.
Нет, не зациклилась все-таки, а перепроводила документ с большим количеством строк несколько раз ))
6. Фархад Ильязов (FarhadIlyazov) 20.04.16 11:20
(5) milana5, спасибо- исправил!
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа