Каталог решений - ЗУП: выравниваем регистры оценочных обязательств, испорченные новым резервом по оплате труда

ЗУП: выравниваем регистры оценочных обязательств, испорченные новым резервом по оплате труда

ЗУП: выравниваем регистры оценочных обязательств, испорченные новым резервом по оплате труда

В наличии

Начиная с 2024 года резервы не формируются привычным документом «Резервы отпусков», теперь используется новый вид документа «Резервы по оплате труда». Но, если по какой-нибудь причине, два регистра накопления по Оценочным обязательствам стали не одинаковыми по сумме, то с каждым новым документом «Резервы по оплате труда» эта разница будет только увеличиваться, и в результате появятся отрицательные суммы по некоторым сотрудникам, что доведет главного бухгалтера до нервного срыва…..Исправим это, спасем нервы главбуха)
*Тестировалось на версии ЗУП 3.1.32.66.

Категория:

Описание

Согласно ПБУ 8/2010, организации (кроме субъектов малого предпринимательства) обязаны формировать оценочные обязательства, в том числе резервы на оплату труда. В программе "1С:ЗУП 8", ред. 3 начиная с версии 3.1.23.165 появилась новая возможность учета резервов по отпускам и по годовым премиям/вознаграждениям…

Согласно ст. 324.1 НК, организация может формировать резерв по оплате труда и в налоговом учете, указав способ резервирования, предел отчислений и процент ежемесячных отчислений в учетной политике……

……зачем нам все это…..

     Начинаем. Открываем мою обработку "Выровнять резервы по оплате труда", на первой вкладке, при открытии обработки, появляются актуальные статьи финансирования, но, возможно, у вас были еще другие статьи, по которым просто остались зависшие остатки…Чтобы проверить это — создаем новый чистый документ "Перенос данных", в котором выбираем ДВА регистра накопления:Оценочные обязательства и Оценочные обязательства по сотрудникам, сохраняем этот документ и выбираем его в обработке. Жмем на первой вкладке обработки кнопку "Показать остатки регистров Оценочных обязательств на дату документа Перенос данных":

 

 

Да, есть зависшие остатки по не актуальным статьям финансирования. Жмем кнопку "Заполнить сторно по некорректным статьям финансирования в оценочных обязательствах"-> откроется указанный нами выше документ "Перенос данных" с заполненными данными, провести/закрыть его. Вновь жмем кнопку "Показать остатки регистров Оценочных обязательств на дату документа":

 

 

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

     Идем на вторую вкладку обработки. Здесь мы будем ровнять регистр накопления "Оценочные обязательства" с регистром накопления "Оценочные обязательства по сотрудникам". Дело в том, что в текущем механизме распределения сумм резервов в документе "Резервы по оплате труда" есть принеприятная штука: если оба регистра разнятся между собой, то эта разница начинает распределяться на всех сотрудников…через полгода-год из-за этого по сотрудникам в документе "Резервы по оплате труда" появляются красные (отрицательные) значения, которые в ручную непросто выровнять, да и как потом с этим в бухгалтерии резервы закрывать?…

     Итак, на второй вкладке: так же создаем новый документ "Перенос данных", здесь в нем указываем только один регистр накопления "Оценочные обязательства", так как именно его и будем ровнять, отталкиваясь от итоговых сумм по регистру "Оценочные обязательства по сотрудникам". Жмем кнопку "Показать разницу между двумя регистрами оценочных обязательств":

 

 

Да, есть разница. Выровняем ее, нажав на кнопку на второй вкладке "Выполнить выравнивание остатков в регистре Оценочные обязательства". После этого повторно нажмем кнопку "Показать разницу между двумя регистрами оценочных обязательств":

 

 

Ок, все выровняли, теперь можно создавать документы "Резервы по оплате труда" и не переживать за "неизвестную красноту".

     На этом этапе можно было бы остановиться, так как выловили сильную разницу между обоими регистрами Оценочных обязательств, например, в августе  2024года, поэтому в ЗУП пометили все документы "Резервы по оплате труда" до августа 24г на удаление, в конеце августа — провели все необходимые процедуры выравнивания регистров с помощью моей обработки, далее: заново создали, заполнили документы "Резервы по оплате труда" по текущий день, и все хорошо! Но…..бухгалтера так не могут просто жить((… Они Свод сдали инвесторам, баланс годовой (причем только тут баланс к ЗУПу…) у них закрыт…и вообще: ничего нельзя делать задним числом!!!…….

     Итак, если у вас именно подобный случай, то создаем резервную копию ЗУП, в ней хоть августом прошлого года, хоть иным месяцем проводим с помощью моей обработки все указанные выше процедуры, от месяца корректировки: создаем и проводим новые документы "Резервы по оплате труда" по текущий месяц. Далее в копии ЗУПа открываем третью вкладку моей обработки: на текущий месяц создаем две штуки новых чистых документа "Перенос данных", в одном из них указываем один регистр накопления "Оценочные обязательства", в другом указываем один регистр накопления "Оценочные обязательства по Сотрудникам", подтягиваем эти документы на третью вкладку моей обработки.

     Сначала жмем кнопку "Выгрузить оценочные обязательства в эксель в черновике ЗУПа", далее здесь же в черновике жмем ниже кнопку "Выгрузить оценочные обязательства по сотрудникам в эксель в черновике ЗУПа". Потом переходим в реальную базу данных ЗУП, открываем там мою обработку "Выровнять резервы по оплате труда", проходим операции первых двух вкладок в текущем месяце, открываем третью вкладку, создав так же новые пустые две штуки документов "Перенос данных" и подтянув их на третью вкладку обработки. Далее указываем в поле каталога сначала файл эксель, в который выгрузили из черновика ЗУПа остатки по регистру "Оценочные обязательства", жмем кнопку "Загрузить из экселя оценочные обязательства", потом жмем кнопку "Показать разницу оценочных обязательств в обеих базах":

 

 

ага, отличаются, жмем кнопку "Выполнить выравнивание оценочных обязательств в реальной базе", повторно жмем кнопку "Показать разницу", видим, что все выровнялось в реальной базе как в экселе:

 

 

Далее в поле каталога выбираем файл экселя, куда сохранили остатки "Оценочных обязательств по сотрудникам", и проводим те же операции с кнопочками в нижнем окне. Здесь предупреждаю, если сотрудников около тысячи, то загрузка из экселя файла по сотрудникам может занять около 45 минут…

     Все готово, по итоговым суммам документов "Перенос данных" — главный бухгалтер в своей 1с.Бухгалтерии отсторнирует 96 счет по резервам.

п.с. все цифры в примерах вымышленные.

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////

     Советую также в ЗУП создать расширение, в него отправить общий модуль "УчетСтраховыхВзносов" и внести следующие доработки:

 

&Вместо("СоздатьВТЭффективныеСтавкиВзносовДляОценочныхОбязательств")
Процедура Расш_СоздатьВТЭффективныеСтавкиВзносовДляОценочныхОбязательств(МенеджерВременныхТаблиц, Организация, ПериодРегистрации) Экспорт 
    //23.04.25_упрощено заполнение параметров ставки Страховых и ФСС (в зависимости от класса вредности)
	НачалоПериода = НачалоГода(ПериодРегистрации);
	ОкончаниеПериода = КонецМесяца(ПериодРегистрации);
	
	СформироватьВТРасширенныхСведенийОДоходах(НачалоПериода, ОкончаниеПериода, ОкончаниеПериода, МенеджерВременныхТаблиц, Ложь);
	
	Запрос = Новый Запрос;
	Запрос.МенеджерВременныхТаблиц = МенеджерВременныхТаблиц;
	Запрос.УстановитьПараметр("Организация", Организация);
	Запрос.УстановитьПараметр("НачалоПериода", НачалоПериода);
	Запрос.УстановитьПараметр("ОкончаниеПериода", ОкончаниеПериода);
	Запрос.Текст =
	"ВЫБРАТЬ
	|	СтраховыеВзносы.ФизическоеЛицо КАК ФизическоеЛицо,
	|	СУММА(СтраховыеВзносы.ПФРСтраховая + СтраховыеВзносы.ПФРНакопительная + СтраховыеВзносы.ПФРДоПредельнойВеличины + СтраховыеВзносы.ПФРСПревышения + СтраховыеВзносы.ПФРПоСуммарномуТарифу + СтраховыеВзносы.ОССпоМеждународнымДоговорамСПревышения + СтраховыеВзносы.ОССпоМеждународнымДоговорам + СтраховыеВзносы.ОПСпоМеждународнымДоговорам + СтраховыеВзносы.ОПСпоМеждународнымДоговорамСПревышения + СтраховыеВзносы.ОМСпоМеждународнымДоговорам + СтраховыеВзносы.ОМСпоМеждународнымДоговорамСПревышения) КАК ПФР,
	|	СУММА(СтраховыеВзносы.ПФРНаДоплатуЛетчикам) КАК ПФРНаДоплатуЛетчикам,
	|	СУММА(СтраховыеВзносы.ПФРНаДоплатуШахтерам) КАК ПФРНаДоплатуШахтерам,
	|	СУММА(СтраховыеВзносы.ПФРЗаЗанятыхНаПодземныхИВредныхРаботах + СтраховыеВзносы.ПФРЗаЗанятыхНаПодземныхИВредныхРаботахБезСпецОценки) КАК ПФРЗаЗанятыхНаПодземныхИВредныхРаботахБезСпецОценки,
	|	СУММА(СтраховыеВзносы.ПФРЗаЗанятыхНаПодземныхИВредныхРаботахСпецОценка) КАК ПФРЗаЗанятыхНаПодземныхИВредныхРаботахСпецОценка,
	|	СУММА(СтраховыеВзносы.ПФРЗаЗанятыхНаТяжелыхИПрочихРаботах + СтраховыеВзносы.ПФРЗаЗанятыхНаТяжелыхИПрочихРаботахБезСпецОценки) КАК ПФРЗаЗанятыхНаТяжелыхИПрочихРаботахБезСпецОценки,
	|	СУММА(СтраховыеВзносы.ПФРЗаЗанятыхНаТяжелыхИПрочихРаботахСпецОценка) КАК ПФРЗаЗанятыхНаТяжелыхИПрочихРаботахСпецОценка,
	|	СУММА(СтраховыеВзносы.ФСС) КАК ФСС,
	|	СУММА(СтраховыеВзносы.ФССНесчастныеСлучаи) КАК ФССНесчастныеСлучаи,
	|	СУММА(СтраховыеВзносы.ФФОМС) КАК ФФОМС,
	|	СУММА(СтраховыеВзносы.ТФОМС) КАК ТФОМС
	|ПОМЕСТИТЬ ВТВзносыФизическихЛиц
	|ИЗ
	|	РегистрНакопления.СтраховыеВзносыПоФизическимЛицам КАК СтраховыеВзносы
	|ГДЕ
	|	СтраховыеВзносы.ФизическоеЛицо В
	|			(ВЫБРАТЬ
	|				ФизическиеЛица.ФизическоеЛицо
	|			ИЗ
	|				ВТФизЛицаОрганизаций КАК ФизическиеЛица)
	|	И СтраховыеВзносы.Организация = &Организация
	|	И СтраховыеВзносы.Период МЕЖДУ &НачалоПериода И &ОкончаниеПериода
	|
	|СГРУППИРОВАТЬ ПО
	|	СтраховыеВзносы.ФизическоеЛицо
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	СведенияОДоходах.ФизическоеЛицо КАК ФизическоеЛицо,
	|	СУММА(СведенияОДоходах.БазаПФР) КАК БазаПФР,
	|	СУММА(СведенияОДоходах.БазаФОМС) КАК БазаФОМС,
	|	СУММА(СведенияОДоходах.БазаФСС) КАК БазаФСС,
	|	СУММА(СведенияОДоходах.БазаФСС_НС) КАК БазаФСС_НС,
	|	СУММА(ВЫБОР
	|			КОГДА СведенияОДоходах.ОблагаетсяВзносамиНаДоплатуШахтерам
	|				ТОГДА СведенияОДоходах.БазаПФР
	|			ИНАЧЕ 0
	|		КОНЕЦ) КАК БазаДоплатаШахтерам,
	|	СУММА(ВЫБОР
	|			КОГДА СведенияОДоходах.ОблагаетсяВзносамиНаДоплатуЛетчикам
	|				ТОГДА СведенияОДоходах.БазаПФР
	|			ИНАЧЕ 0
	|		КОНЕЦ) КАК БазаДоплатаЛетчикам,
	|	СУММА(СведенияОДоходах.БазаПодземныеИВредныеРаботы) КАК БазаПодземныеИВредныеРаботыБезСпецОценки,
	|	СУММА(СведенияОДоходах.БазаПодземныеИВредныеРаботыОпасный + СведенияОДоходах.БазаПодземныеИВредныеРаботыВредный1 + СведенияОДоходах.БазаПодземныеИВредныеРаботыВредный2 + СведенияОДоходах.БазаПодземныеИВредныеРаботыВредный3 + СведенияОДоходах.БазаПодземныеИВредныеРаботыВредный4) КАК БазаПодземныеИВредныеРаботыСпецОценка,
	|	СУММА(СведенияОДоходах.БазаТяжелыеИПрочиеРаботы) КАК БазаТяжелыеИПрочиеРаботыБезСпецОценки,
	|	СУММА(СведенияОДоходах.БазаТяжелыеИПрочиеРаботыОпасный + СведенияОДоходах.БазаТяжелыеИПрочиеРаботыВредный1 + СведенияОДоходах.БазаТяжелыеИПрочиеРаботыВредный2 + СведенияОДоходах.БазаТяжелыеИПрочиеРаботыВредный3 + СведенияОДоходах.БазаТяжелыеИПрочиеРаботыВредный4) КАК БазаТяжелыеИПрочиеРаботыСпецОценка
	|ПОМЕСТИТЬ ВТДоходыФизическихЛиц
	|ИЗ
	|	ВТСведенияОДоходах КАК СведенияОДоходах
	|ГДЕ
	|	СведенияОДоходах.Организация = &Организация
	|
	|СГРУППИРОВАТЬ ПО
	|	СведенияОДоходах.ФизическоеЛицо
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	Взносы.ФизическоеЛицо КАК ФизическоеЛицо,
	|	ВЫБОР
	|		КОГДА Взносы.ФССНесчастныеСлучаи > 0
	|				И Доходы.БазаФСС_НС > 0
	|			ТОГДА ВЫРАЗИТЬ(100 * Взносы.ФССНесчастныеСлучаи / Доходы.БазаФСС_НС КАК ЧИСЛО(7, 4))
	|		ИНАЧЕ 0
	|	КОНЕЦ КАК СтавкаФСС_НС,
	|	ВЫБОР
	|		КОГДА Взносы.ПФР > 0
	|				И Доходы.БазаПФР > 0
	|			ТОГДА ВЫРАЗИТЬ(100 * Взносы.ПФР / Доходы.БазаПФР КАК ЧИСЛО(7, 4))
	|		ИНАЧЕ 0
	|	КОНЕЦ + ВЫБОР
	|		КОГДА Взносы.ФСС > 0
	|				И Доходы.БазаФСС > 0
	|			ТОГДА ВЫРАЗИТЬ(100 * Взносы.ФСС / Доходы.БазаФСС КАК ЧИСЛО(7, 4))
	|		ИНАЧЕ 0
	|	КОНЕЦ + ВЫБОР
	|		КОГДА Взносы.ФФОМС > 0
	|				И Доходы.БазаФОМС > 0
	|			ТОГДА ВЫРАЗИТЬ(100 * Взносы.ФФОМС / Доходы.БазаФОМС КАК ЧИСЛО(7, 4))
	|		ИНАЧЕ 0
	|	КОНЕЦ + ВЫБОР
	|		КОГДА Взносы.ПФРНаДоплатуЛетчикам > 0
	|				И Доходы.БазаДоплатаЛетчикам > 0
	|			ТОГДА ВЫРАЗИТЬ(100 * Взносы.ПФРНаДоплатуЛетчикам / Доходы.БазаДоплатаЛетчикам КАК ЧИСЛО(7, 4))
	|		ИНАЧЕ 0
	|	КОНЕЦ + ВЫБОР
	|		КОГДА Взносы.ПФРНаДоплатуШахтерам > 0
	|				И Доходы.БазаДоплатаШахтерам > 0
	|			ТОГДА ВЫРАЗИТЬ(100 * Взносы.ПФРНаДоплатуШахтерам / Доходы.БазаДоплатаШахтерам КАК ЧИСЛО(7, 4))
	|		ИНАЧЕ 0
	|	КОНЕЦ + ВЫБОР
	|		КОГДА Взносы.ПФРЗаЗанятыхНаПодземныхИВредныхРаботахБезСпецОценки > 0
	|				И Доходы.БазаПодземныеИВредныеРаботыБезСпецОценки > 0
	|			ТОГДА ВЫРАЗИТЬ(100 * Взносы.ПФРЗаЗанятыхНаПодземныхИВредныхРаботахБезСпецОценки / Доходы.БазаПодземныеИВредныеРаботыБезСпецОценки КАК ЧИСЛО(7, 4))
	|		ИНАЧЕ 0
	|	КОНЕЦ + ВЫБОР
	|		КОГДА Взносы.ПФРЗаЗанятыхНаТяжелыхИПрочихРаботахБезСпецОценки > 0
	|				И Доходы.БазаТяжелыеИПрочиеРаботыБезСпецОценки > 0
	|			ТОГДА ВЫРАЗИТЬ(100 * Взносы.ПФРЗаЗанятыхНаТяжелыхИПрочихРаботахБезСпецОценки / Доходы.БазаТяжелыеИПрочиеРаботыБезСпецОценки КАК ЧИСЛО(7, 4))
	|		ИНАЧЕ 0
	|	КОНЕЦ + ВЫБОР
	|		КОГДА Взносы.ПФРЗаЗанятыхНаПодземныхИВредныхРаботахСпецОценка > 0
	|				И Доходы.БазаПодземныеИВредныеРаботыСпецОценка > 0
	|			ТОГДА ВЫРАЗИТЬ(100 * Взносы.ПФРЗаЗанятыхНаПодземныхИВредныхРаботахСпецОценка / Доходы.БазаПодземныеИВредныеРаботыСпецОценка КАК ЧИСЛО(7, 4))
	|		ИНАЧЕ 0
	|	КОНЕЦ + ВЫБОР
	|		КОГДА Взносы.ПФРЗаЗанятыхНаТяжелыхИПрочихРаботахСпецОценка > 0
	|				И Доходы.БазаТяжелыеИПрочиеРаботыСпецОценка > 0
	|			ТОГДА ВЫРАЗИТЬ(100 * Взносы.ПФРЗаЗанятыхНаТяжелыхИПрочихРаботахСпецОценка / Доходы.БазаТяжелыеИПрочиеРаботыСпецОценка КАК ЧИСЛО(7, 4))
	|		ИНАЧЕ 0
	|	КОНЕЦ КАК СтавкаСтраховыхВзносов
	|ПОМЕСТИТЬ ВТЭффективныеСтавкиВзносовДляОценочныхОбязательств_предварит
	|ИЗ
	|	ВТВзносыФизическихЛиц КАК Взносы
	|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТДоходыФизическихЛиц КАК Доходы
	|		ПО Взносы.ФизическоеЛицо = Доходы.ФизическоеЛицо
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	ВТЭффективныеСтавкиВзносовДляОценочныхОбязательств_предварит.ФизическоеЛицо КАК ФизическоеЛицо,
	|	ВЫБОР
	|		КОГДА ВТЭффективныеСтавкиВзносовДляОценочныхОбязательств_предварит.СтавкаФСС_НС = 0 Тогда 0
	|        КОГДА ВТЭффективныеСтавкиВзносовДляОценочныхОбязательств_предварит.СтавкаФСС_НС <> 0 Тогда 0.2
	|	КОНЕЦ КАК СтавкаФСС_НС,
	|	ВЫБОР
	|		КОГДА ВТЭффективныеСтавкиВзносовДляОценочныхОбязательств_предварит.СтавкаСтраховыхВзносов = 0
	|			ТОГДА 0 
	|		КОГДА ВТЭффективныеСтавкиВзносовДляОценочныхОбязательств_предварит.СтавкаСтраховыхВзносов <= 30
	|			ТОГДА 30 
	|		КОГДА ВТЭффективныеСтавкиВзносовДляОценочныхОбязательств_предварит.СтавкаСтраховыхВзносов > 30 и ВТЭффективныеСтавкиВзносовДляОценочныхОбязательств_предварит.СтавкаСтраховыхВзносов <= 32
	|			ТОГДА 32 
	|		КОГДА ВТЭффективныеСтавкиВзносовДляОценочныхОбязательств_предварит.СтавкаСтраховыхВзносов >= 34 и ВТЭффективныеСтавкиВзносовДляОценочныхОбязательств_предварит.СтавкаСтраховыхВзносов < 36
	|			ТОГДА 34 
	|		КОГДА ВТЭффективныеСтавкиВзносовДляОценочныхОбязательств_предварит.СтавкаСтраховыхВзносов >= 36 и ВТЭффективныеСтавкиВзносовДляОценочныхОбязательств_предварит.СтавкаСтраховыхВзносов < 38
	|			ТОГДА 36
	|		КОГДА ВТЭффективныеСтавкиВзносовДляОценочныхОбязательств_предварит.СтавкаСтраховыхВзносов >= 38 
	|			ТОГДА 38
	|	КОНЕЦ КАК СтавкаСтраховыхВзносов
	|ПОМЕСТИТЬ ВТЭффективныеСтавкиВзносовДляОценочныхОбязательств
	|ИЗ
	|	ВТЭффективныеСтавкиВзносовДляОценочныхОбязательств_предварит КАК ВТЭффективныеСтавкиВзносовДляОценочныхОбязательств_предварит";
	Запрос.Выполнить();

КонецПроцедуры

Так как когда пользователи авто заполняют документ "Резервы по оплате труда", то на вкладке Взносы: очень часто бьются суммы процентов взносов и ФСС, т.е. вместо 30% или 32% или 34% — может быть любая сумма….у декретчиц так и будет, потому что у них нету текущего дохода и по ним расчетчики правят в резервах в ручную, а вот у других если начинают биться суммы взносов — то это первый признак, что что-то не так и сотрудника нужно крыжить…Например, если сотрудник врач, и по приему на работу ему по спец.оценке труда дали 3,2 класс вредности, по этому классу ему полагается надбавка к зарплате 8%, но так же полагается и дополнительный страховой взнос +4%, а изменение в штатном расписании по этой должности с учетом класса вредности, например, вовремя забыли сделать, поэтому во вкладке Взносы документа "Резервы по оплате труда" у такого сотрудника будет что-то наподобие 32,22%….Потому что там простая формула расчета ставки взноса: берутся начисленные сотруднику взносы, делится на начисленный в этом месяце доход, умножается на 100%, а так как в этом случае — не было изменения Штатки, то дополнительное начисление 8% ему было, а вот взносов дополнительных не начислялось…..Позже сделаю отчет по таким сомнительным взносам, чтобы можно было проверить что не так с конкретными сотрудниками. А предлагаемый выше код — просто при заполнении документа "Резервы по оплате труда" будет выводить ровные ставки взносов (кроме декретчиц).

п.с.Обработку можно откыть через Файл-Открыть, или прикрепить как внешнюю: Администрирование-ПечатныеФормы и обработки-добавить

Особая благодарность Александру Субботину, за его идею в Заполнение документа Перенос данных остатками по регистру ЗУП 3.1 как можно сразу несколько регистров заполнять в документе Перенос данных.

has been added to your cart:
Оформление заказа