Перечисление НДФЛ в бюджет: Зачет излишне перечисленных взносов по методу ФИФО

16.09.13

Учетные задачи - Зарплата

Доработка конфигурации ЗУП для зачета излишне перечисленного в бюджет НДФЛ

Как известно, типовое заполнение документа "Перечисление НДФЛ в бюджет" никак не учитывает суммы излишне перечисленные. Однако некоторые организации (особенно крупные) перечисляют в бюджет суммы немного превышающие сумму исчисленного НДФЛ. Для таких предприятий будет полезна следующая доработка: Излишне уплаченная сумма "падает"  на пустое физлицо. При заполнении в следующих документах сначала списывается эта лишняя сумма с пустого физлица, а потом распределяется новая перечисленная сумма. Таким образом получается некое подобие ФИФО.

Для реализации необходимо:

1) Добавить возможность сохранять незаполненное значение в регистре     РасчетыНалоговыхАгентовСБюджетомПоНДФЛ 

2) Модуль формы документа Перечисление НДФЛ в бюджет: заменить типовую процедуру

Процедура КоманднаяПанельСотрудникиОрганизацииДействиеЗаполнить(Кнопка)
	//ВСТАВКА
	Если ДокументОбъект.Проведен Тогда
		ТекстВопроса = "Заполнить документ можно только после отмены проведения. Отменить проведение?";
		Если РаботаСДиалогами.ЗадатьВопрос(ТекстВопроса, РежимДиалогаВопрос.ДаНет) = КодВозвратаДиалога.Да Тогда
			ДокументОбъект.Записать(РежимЗаписиДокумента.ОтменаПроведения);
		Иначе  			
			Возврат;
		КонецЕсли;
	КонецЕсли;
    //ВСТАВКА КОНЕЦ

	Если СотрудникиОрганизации.Количество() > 0 Тогда
		ТекстВопроса = "Существующий список сотрудников будет очищен. Продолжить?";
		Если РаботаСДиалогами.ЗадатьВопрос(ТекстВопроса, РежимДиалогаВопрос.ДаНет) <> КодВозвратаДиалога.Да Тогда
			Возврат;
		КонецЕсли;
	КонецЕсли;
		
	СотрудникиОрганизации.Очистить();
	
	//ЗАМЕНА
	//Автозаполнение();
	нов_Автозаполнение();
	//КОНЕЦ
	
	Если СотрудникиОрганизации.Количество() = 0 Тогда
		Сообщить("Не обнаружены данные для записи в документ.", СтатусСообщения.Важное )
	Иначе
		ЭлементыФормы.СотрудникиОрганизации.ТекущаяСтрока = СотрудникиОрганизации[0]
	КонецЕсли;
	
КонецПроцедуры

 3. Модуль документа перечисление НДФЛ в бюджет

Процедура нов_Автозаполнение(ФизическиеЛица = Неопределено) Экспорт

	Если Сумма = 0 Тогда
		Возврат 
	КонецЕсли;
	
	Запрос = Новый Запрос;
	Запрос.Текст = 
	"ВЫБРАТЬ
	|	РасчетыНалоговыхАгентовСБюджетомПоНДФЛОстатки.ФизЛицо,
	|	РасчетыНалоговыхАгентовСБюджетомПоНДФЛОстатки.СуммаОстаток КАК Сумма
	|ПОМЕСТИТЬ ВТОстатки
	|ИЗ
	|	РегистрНакопления.РасчетыНалоговыхАгентовСБюджетомПоНДФЛ.Остатки(
	|			&ДатаОперации,
	|			Организация = &Организация
	|				И Ставка = &Ставка
	|				И (ФизЛицо В (&ФизическиеЛица)
	|					ИЛИ &НеОтбирать)
	|				И МесяцНалоговогоПериода = &МесяцНалоговогоПериода
	|				И ОКАТО_КПП = &ОКАТО_КПП) КАК РасчетыНалоговыхАгентовСБюджетомПоНДФЛОстатки
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	РасчетыНалоговыхАгентовСБюджетомПоНДФЛ.ФизЛицо,
	|	РасчетыНалоговыхАгентовСБюджетомПоНДФЛ.Сумма
	|ИЗ
	|	РегистрНакопления.РасчетыНалоговыхАгентовСБюджетомПоНДФЛ КАК РасчетыНалоговыхАгентовСБюджетомПоНДФЛ
	|ГДЕ
	|	&УчитыватьДвиженияРегистратора
	|	И РасчетыНалоговыхАгентовСБюджетомПоНДФЛ.Регистратор = &Регистратор
	|	И (РасчетыНалоговыхАгентовСБюджетомПоНДФЛ.ФизЛицо В (&ФизическиеЛица)
	|			ИЛИ &НеОтбирать)
	|	И РасчетыНалоговыхАгентовСБюджетомПоНДФЛ.Организация = &Организация
	|	И РасчетыНалоговыхАгентовСБюджетомПоНДФЛ.Ставка = &Ставка
	|	И РасчетыНалоговыхАгентовСБюджетомПоНДФЛ.МесяцНалоговогоПериода = &МесяцНалоговогоПериода
	|	И РасчетыНалоговыхАгентовСБюджетомПоНДФЛ.ОКАТО_КПП = &ОКАТО_КПП
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	РасчетыНалоговыхАгентовСБюджетомПоНДФЛОстатки.СуммаОстаток КАК НераспределенныйОстаток
	|ИЗ
	|	РегистрНакопления.РасчетыНалоговыхАгентовСБюджетомПоНДФЛ.Остатки(
	|			&ДатаОперации,
	|			ФизЛицо = ЗНАЧЕНИЕ(Справочник.ФизическиеЛица.ПустаяСсылка)
	|				И Организация = &Организация
	|				И Ставка = &Ставка 
	|				И ОКАТО_КПП = &ОКАТО_КПП) КАК РасчетыНалоговыхАгентовСБюджетомПоНДФЛОстатки
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	Остатки.ФизЛицо,
	|	СУММА(Остатки.Сумма) КАК Сумма
	|ИЗ
	|	ВТОстатки КАК Остатки
	|
	|СГРУППИРОВАТЬ ПО
	|	Остатки.ФизЛицо
	|
	|ИМЕЮЩИЕ
	|	СУММА(Остатки.Сумма) > 0";
	Запрос.УстановитьПараметр("Регистратор", Ссылка);
	Запрос.УстановитьПараметр("Организация", Организация);
	Запрос.УстановитьПараметр("ДатаОперации", КонецМесяца(МесяцНалоговогоПериода)+1);
	Запрос.УстановитьПараметр("МесяцНалоговогоПериода", МесяцНалоговогоПериода);
	Запрос.УстановитьПараметр("Ставка", Ставка);
	Запрос.УстановитьПараметр("ОКАТО_КПП", ОКАТО_КПП);
	Запрос.УстановитьПараметр("НеОтбирать", Не ЗначениеЗаполнено(ФизическиеЛица));
	Запрос.УстановитьПараметр("ФизическиеЛица", ФизическиеЛица);
	Запрос.УстановитьПараметр("УчитыватьДвиженияРегистратора", Проведен И Модифицированность() И ДатаПлатежа > ОбщегоНазначенияЗК.ПолучитьЗначениеРеквизита(Ссылка,"ДатаПлатежа"));
	Результаты = Запрос.ВыполнитьПакет();
	Результат = Результаты[Результаты.Количество()-1].Выгрузить();
	//проверим остаток на пустом ФЛ, чтобы распределить его
	Выборка = Результаты[Результаты.Количество()-2].Выбрать();
	НераспределенныйОстаток = 0;
	Если Выборка.Следующий() Тогда
		НераспределенныйОстаток = ?(Выборка.НераспределенныйОстаток<0, -Выборка.НераспределенныйОстаток, 0);
	КонецЕсли;
	Сообщить("Нераспределенная сумма с предыдущих платежей: "+НераспределенныйОстаток);
	ВсегоНужноПеречислить = Результат.Итог("Сумма");
	СуммаКРаспределению = Сумма+НераспределенныйОстаток;
	Если СуммаКРаспределению>ВсегоНужноПеречислить Тогда //разницу отнесем на пустое ФЛ
		НовыйОстаток = СуммаКРаспределению-ВсегоНужноПеречислить;
		СуммаКРаспределению = ВсегоНужноПеречислить;
		Сообщить("Остаток нераспределенной суммы: "+НовыйОстаток);
	Иначе 
		НовыйОстаток = 0;
	КонецЕсли;


			
	КоэффициентыРаспределения = ПроведениеРасчетов.ВыделитьКоэффициентыРаспределенияИзКоллекцииСтрок(Результат,"Сумма");
	РезультатРаспределения = ОбщегоНазначенияЗК.РаспределитьПропорционально(СуммаКРаспределению, КоэффициентыРаспределения, 0);
	Если РезультатРаспределения = Неопределено Тогда
		Для каждого СтрокаТЧ Из СотрудникиОрганизации Цикл
			СтрокаТЧ.Сумма = 0
		КонецЦикла;
		Возврат 
	Иначе
		Если ЗначениеЗаполнено(ФизическиеЛица) Тогда
			Для каждого СтрокаТЧ Из СотрудникиОрганизации Цикл
				СтрокаТЧ.Сумма = 0
			КонецЦикла;
			Индекс = 0;
			Для каждого СтрокаТЗ Из Результат Цикл
				НоваяСтрока = СотрудникиОрганизации.Найти(СтрокаТЗ.ФизЛицо,"ФизЛицо");
				Если НоваяСтрока <> Неопределено Тогда
					НоваяСтрока.Сумма = РезультатРаспределения[Индекс];
				КонецЕсли;
				Индекс = Индекс + 1;
			КонецЦикла;
		Иначе
			Индекс = 0;
			Для каждого СтрокаТЗ Из Результат Цикл
				НоваяСтрока = СотрудникиОрганизации.Добавить();
				НоваяСтрока.ФизЛицо = СтрокаТЗ.ФизЛицо;
				НоваяСтрока.Сумма = РезультатРаспределения[Индекс];
				Индекс = Индекс + 1;
			КонецЦикла;
		КонецЕсли;
	КонецЕсли;
	
	ОстатокИтог = НовыйОстаток - НераспределенныйОстаток; 
	Если ОстатокИтог<>0 Тогда 
		НоваяСтрока = СотрудникиОрганизации.Добавить();
		НоваяСтрока.Сумма = ОстатокИтог;
	КонецЕсли;
	
КонецПроцедуры
 

 4. Модуль документа перечисление НДФЛ в бюджет, уберем проверку пустого физлица

//ЗАКОММЕНТИРОВАНО								
		//Если Не ЗначениеЗаполнено(СтрокаТЧ.ФизЛицо) Тогда
		//	ОбщегоНазначенияЗК.ВывестиИнформациюОбОшибке(НачалоСообщения + "не указано физическое лицо!", Отказ, Заголовок);
		//КонецЕсли;

 5. Недостатком такой доработки может явиться то, что в отчетах о налогах и взносах может появиться строка с пустым физлицом. Там где это будет мешать легко исправить соответствующим условием

Вступайте в нашу телеграмм-группу Инфостарт

переплата НДФЛ в бюджет

См. также

Зарплата Роли и права Системный администратор Бухгалтер 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Комплексная автоматизация 2.х Молдова Россия Казахстан Бухгалтерский учет Платные (руб)

Расширение позволяет максимально полно ограничить доступ пользователей к данным по заработной плате, а именно закрывает доступ к документам начисления и выплаты заработной платы, не позволяет просматривать бухгалтерские отчеты по счету учета зарплаты а также убирает зарплатные проводки из журнала проводок. Расширение запрещает просматривать платежные документы на выплату зарплаты, так же не доступны регламентные отчеты в ПФР и ИФНС. Расширение предлагает готовые настроенные профили "Бухгалтер без зарплаты", "Только просмотр без зарплаты".

9675 руб.

27.05.2021    54529    460    127    

327

Зарплата Внешние источники данных Бюджетный учет Перенос данных 1C Системный администратор Программист 1С:Предприятие 8 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактическим удержаниям, НДФЛ, вычетам, страховым взносам из базы Парус 8 учреждений (далее Парус) в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (далее 1С) и начать с ней работать с любого месяца года.

122000 руб.

19.08.2020    29165    27    3    

28

Зарплата Производство готовой продукции (работ, услуг) Учет рабочего времени Рабочее место Бизнес-аналитик Пользователь Руководитель проекта 1С:Предприятие 8 1С:Управление торговлей 10 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Торговля и склад 7.7 Бытовые услуги, сервис Оптовая торговля, дистрибуция, логистика Электротехника и микроэлектроника Управленческий учет Платные (руб)

Модуль или расширение «Сервисный центр для 1С» позволяет принимать в ремонт оборудование (компьютеры, бытовая техника и т.п.), оформлять заявки инженеров на посещение клиентов и вести начисление заработной платы для сотрудников. Позволяет наладить автоматизированный учет в сервисном центре на уже существующей базе.

18800 руб.

01.11.2012    105932    131    1    

140

SALE! 50%

Зарплата Регламентированный учет и отчетность Бухгалтер 1С:Предприятие 8 1С:Зарплата и кадры государственного учреждения 3 Здравоохранение, медицина, стоматология Россия Платные (руб)

Подсистема (расширение) конфигурации Зарплата и кадры государственного учреждения, редакция 3.1 для формирования формы №30 федерального статистического наблюдения "Сведения о медицинской организации" в редакции Приказов Росстата I) от 30.12.2020 №863, II) от 27.12.2022 N 985, III) от 25.12.2023 N 681 и IV) от 29.11.2025 №594.

21960 руб.

26.10.2021    20464    29    13    

23

Зарплата Консолидация данных 1С:Зарплата и Управление Персоналом 3.x Россия Управленческий учет Платные (руб)

Расширение для создания и настройки обмена с консолидированной базой ЗУП. Код разработки под определенные требования проекта.

85400 руб.

11.07.2025    5316    3    1    

3

Перенос данных 1C Зарплата Бюджетный учет Программист Бухгалтер 1С:Предприятие 8 1С:Зарплата и кадры государственного учреждения 3 1С:Зарплата и Управление Персоналом 3.x Государственные, бюджетные структуры Россия Бюджетный учет Платные (руб)

Обработки для быстрого перехода с конфигураций «КАМИН:Расчет зарплаты для бюджетных учреждений 3.5» и «КАМИН:Зарплата для бюджетных учреждений 5.5» на конфигурацию «Зарплата и кадры государственного учреждения».

12200 руб.

28.07.2016    69587    190    158    

156
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. den_valley 235 16.09.13 10:30 Сейчас в теме
В качестве замечаний.

1. Предлагаю относить не на пустое физ лицо, а использовать служебный элемент справочника "Физические лица".

2. Необходимо проверить, как данная операция отразится в справке 2-НДФЛ.
2. den_valley 235 16.09.13 10:38 Сейчас в теме
И поправьте ошибку в коде. Несолидно как то.

Если Выборка.Следующий() Тогда
НераспределенныйОстаток = ?(Выборка.НераспределенныйОстатокВсегоНужноПеречислить Тогда //разницу отнесем на пустое ФЛ
3. Aleksandr 282 18.09.13 10:07 Сейчас в теме
den_valley, ошибка исправлена, спасибо.

Желающие могут сделать на служебное физлицо. В справке 2-НДФЛ перечисленный налог будет равен исчисленному.
4. doctorov_s 42 31.01.16 13:10 Сейчас в теме
А в связи с изменившемся законодательством, никто не пробовал изменять обработку??
5. doctorov_s 42 31.01.16 13:10 Сейчас в теме
Соответственно и изменились записи в регистре!
Для отправки сообщения требуется регистрация/авторизация