Залишки відпусток під час переходу на ЗУП 3

Замовник вирішив переходити на ЗУП 3.0 (раніше облік вівся над 1С). Основна умова - повне перенесення кадрової історії по співробітникам (працюючим на поточний момент) для відображення в Т-2 (в частині поточної задачі, що стосується, це відпустки).

А як це реалізувати?

Ввести залишки відпусток під час переходу або перенесення даних можна двома способами:

  1. документ"Введення початкових залишків відпусток"
  2. документ"Дані на початок експлуатації"

Т.к. ми за завданням переносимо кадрову історію, що включає дані щодо наданих раніше відпусток, то наш єдиний вибір"Введення початкових залишків відпусток". Але тут виявилася проблема: якщо в програмі введені дані щодо фактичних відпусток раніше дати введення залишків (а у нас саме такий випадок), то ввести залишки не вийде! [це завдання №1 ]

Залишок за видом відпустки на певну дату в загальному випадку є різницею даних регістру відомостей"Зароблені права на відпустки" та регістру накопичення"Фактичні відпустки", але для правильного розрахунку залишків у нашому випадку необхідно відкинути дані фактичних відпусток раніше "глобальної" дати початку ведення обліку в програмі (зароблені відпустки автоматично скоригуються документом"Введення початкових залишків відпусток" на дату введення). [це завдання №2 ]

Ну і наостанок необхідно правильно відображати звіти по відпустках: друкована форма"Довідка по відпустках співробітника" і звіт"Залишки відпусток". [це завдання №3 ]

Це коригування потрібно лише на момент введення документів"Введення початкових залишків відпусток".

Крім цього, були внесені зміни до функціїВихідніДаніДляРозрахункуЗалишків (Корегування запиту):

Виявилося, що друкована форма самостійно розраховує дані щодо залишків відпусток, тоді як звіт цілком будується на даних раніше озвучених регістрів за описаною схемою. У реалізації на допомогу прийшов механізм БСП :-)

Друкована форма"Довідка з відпусток співробітника" запрацює після внесення вищеописаних змін, але в нашому випадку Замовник побажав бачити цю довідку в "старому" форматі (що спочатку перекочував із ЗУП 2.5, але згодом зміненому в ЗУП 3.0). Також додали можливість формування довідки на робочу дату (зручно для звіряння даних на певний момент у минулому чи майбутньому періодах).

Основні доробки торкнулися звіту"Залишки відпусток" : за аналогією з кодом запиту до функцій із загального модуля"Залишки відпусток" (раніше за текстом) був доданий фільтр на фактичні відпустки раніше дати початку обліку.

Ці друковану форму та звіт докладу для тих, у кого можуть виникнути труднощі у самостійній реалізації.

Післямова

Я не став описувати механізм завантаження залишків у документ"Введення початкових залишків відпусток" (у нас він був реалізований у вигляді зовнішньої обробки, що читає дані із заздалегідь підготовлених файлів Excel за певним алгоритмом) - реалізацію кожен вигадає сам. Уточню лише, що може бути кілька документів уведення залишків на різні дати та різні види відпусток (адже буває ситуація, коли є залишки за різні періоди, але я б порекомендував по можливості звести все на один конкретний період).

Описаний механізм цілком може бути використаний для "швидкого" коригування (без розглядів у причинах) залишків відпусток по всіх співробітниках (т.к. використовує "глобальну" дату).

Також регулярно раджудивитися в типовий звіт"Залишкивідпусток" і актуалізувати модифікований (вже були виправлення помилок від 1С в даному звіті).

Даний механізм успішно був застосований і поки працює (але не виключаю, що одного разу 1С щось змінять і все зламається).