Расчет остатков отпуска (включая дополнительные) при увольнении, Зарплата и управление персоналом КОРП 2.5

23.08.19

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

Обработка заполнения табличной части остатками Основного отпуска + Дополнительными (из карточки должности сотрудника на момент увольнения). Исправление в модуле, либо внешняя обработка заполнения табличной части документа. Код открыт (в описании).

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Расчет остатков отпуска (включая дополнительные) при увольнении, Зарплата и управление персоналом КОРП 2.5:
.epf 6,60Kb
1
1 Скачать (1 SM) Купить за 1 850 руб.

     Типовая редакция конфигурации "Зарплата и управление персоналом КОРП 2.5" не выполняет расчет остатков дополнительных отпусков при увольнении (в т.ч. например обязательно положенные северные отпуска). Согласно модуля расчета отпусков основным ежегодным отпуском для расчета является отпуск используемый в основном виде расчета "Оплата отпуска по календарным дням" (реквизит ежегодные отпуска).

Для скачивания предлагаю обработку подключения к табличной части "Сотрудники организации" документа "Увольнение из организации".

Для тех кто открывал конфигурацию для изменения, предлагаю свое решение, можно внести исправление в модуль документа.

Исправил 1 процедуру, добавил 1 функцию.

Все изменения в модуле документа "Увольнения из организации".

 

1) Процедура "РассчитатьКоличествоДнейОтпуска" (свой блок в рамках //&&&)

// Процедура рассчитывает количество дней отпуска, которые необходимо компенсировать или удержать
//
Процедура РассчитатьКоличествоДнейОтпуска(СтрокаТЧ, СведенияОСотрудниках = Неопределено) Экспорт
	
	Если Не ЗначениеЗаполнено(СтрокаТЧ.Сотрудник) ИЛИ Не ЗначениеЗаполнено(СтрокаТЧ.ДатаУвольнения) ИЛИ СтрокаТЧ.ПорядокРасчетаОтпуска.Пустая() Тогда
		Возврат;
	КонецЕсли;
	
	Результат = ОстаткиОтпусков.ОстатокОтпускаСотрудникаНаДату(СтрокаТЧ.Сотрудник, СтрокаТЧ.ДатаУвольнения, Истина, СтрокаТЧ.ПорядокРасчетаОтпуска);
	
	СтрокаТЧ.РабочийГодС							= Результат.РабочийГодС;
	СтрокаТЧ.РабочийГодПо							= Результат.РабочийГодПо;
	СтрокаТЧ.ДнейЧасовКомпенсацииУдержанияОтпуска	= Результат.ОстатокНаДату * ?(Результат.ОстатокНаДату >= 0, 1, -1);
	СтрокаТЧ.ПризнакКомпенсацииОтпуска				= Результат.ОстатокНаДату >= 0;
//&&& Начало изменения
	КоличествоДополнительногоОтпуска = 0;
	ДополнительныеОтпускаПоСотруднику = СтрокаТЧ.Сотрудник.ТекущаяДолжностьОрганизации.ЕжегодныеОтпуска;
	Для Каждого СтрокаДО ИЗ ДополнительныеОтпускаПоСотруднику Цикл
		Если СтрокаДО.КоличествоДнейОтпускаВГод = 0 Тогда
			Продолжить;
		КонецЕсли;
		РезультатДО = ОстаткиОтпуска_ОстатокОтпускаСотрудникаНаДату(СтрокаТЧ.Сотрудник, СтрокаТЧ.ДатаУвольнения, Истина, СтрокаТЧ.ПорядокРасчетаОтпуска, СтрокаДО.ВидЕжегодногоОтпуска, СтрокаДО.КоличествоДнейОтпускаВГод);
		КоличествоДополнительногоОтпуска = КоличествоДополнительногоОтпуска + РезультатДО.ОстатокНаДату;
	КонецЦикла;	
	ДнейОстатка = Результат.ОстатокНаДату + КоличествоДополнительногоОтпуска * ?(Результат.ОстатокНаДату + КоличествоДополнительногоОтпуска >= 0, 1, -1);
	СтрокаТЧ.ДнейЧасовКомпенсацииУдержанияОтпуска	= ДнейОстатка;
	СтрокаТЧ.ПризнакКомпенсацииОтпуска				= ДнейОстатка >= 0;
//&&& Конец изменения
	УвольнениеИзОрганизацийПереопределяемый.ДополнительноУточнитьДниКомпенсации(СтрокаТЧ, ПолучитьСведенияОСотрудниках(СведенияОСотрудниках, СтрокаТЧ.Сотрудник));
	
КонецПроцедуры

2) Добавил функцию, куда передаю свое значение отпуска (дополнительного из должности):

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

В модуль документа не стал добавлять комментарии при расчете, во внешней обработке заполнения табличной части, они есть:

Результат расчета по сотруднику: ******* *************** ************************
    Остаток основного отпуска: 4,670
    Остаток дополнительного отпуска (Доп.отпуск за работу в местностях с особыми климатическими условиями, дн/год:16,000): 2,670
Всего остаток отпуска: 7,340

 

Тестировалось на конфигурации: Зарплата и управление персоналом КОРП, редакция 2.5 (2.5.143.1).

Остатки отпуска Увольнение дополнительный отпуск

См. также

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

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

120000 руб.

19.08.2020    26266    25    1    

28

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

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

84000 руб.

24.04.2017    52521    104    165    

91

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

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

5940 руб.

27.05.2021    40042    291    106    

223

Корректировка данных Зарплата Бухгалтер Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры бюджетного учреждения 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет НДФЛ Платные (руб)

Обработка исправляет технические ошибки по НДФЛ, взаиморасчетам с сотрудниками в 1С:ЗУП (1С:ЗКГУ) на начало года. Фактически все ошибки, которые проявляются в ведомостях на выплату, расчетных листках, при заполнении ведомостей на выплату и отчетах 6-НДФЛ и т.д. нужно начинать исправлять с начала расчетного года. Это позволит быть уверенными, что после завершения расчетов предыдущего года, начали работать с «чистого листа» без ошибочных остатков.

60000 руб.

06.10.2023    4964    38    20    

46

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

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

12000 руб.

28.07.2016    61831    163    141    

135

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

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

16800 руб.

01.11.2012    95979    116    1    

123

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

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

120000 руб.

07.06.2021    13667    2    3    

3
Оставьте свое сообщение