Задача 102.132166

Задача :102.132166

Краткое описание :
Переходящие рабочие смены в табеле
Описание :
Формирование табеля
Что измененно :

Необходимо реализовать функционал рабочих смен, переходящих на следующие сутки, в табеле учета рабочего времени. Предусмотреть следующие варианты использования:
- хранение данных о переходящих рабочих сменах "по факту", с возможностью корректировки на вкладке "Корректировка" в табеле
- обработка изменений режимов работ в течение месяца, с учетом переходящих смен
- предоставление табельным функционалом информации о переходящих рабочих сменах, для паскаля и для випа
Как измененно :

Реализовано формирование табеля с учетом переходящих рабочих смен из графиков работ, отображение "Дней смены" в окне редактирования табеля, и возможность ручного изменения "дня смены" в сформированном табеле, не влияющее на "день смены" в графике.

На вкладке "Корректировка" добавлены две новые колонки.

В первой колонке отображаются "дни смены" из плановых графиков режимов работ, с учетом возможных изменений режима работы в течение месяца переходами в межпериод. На интервалах с неизменным режимом работы дни смены переносятся как есть из графиков. Переходящие смены, соединяющие дни с разными режимами работ, разрываются принудительно (так как некорректно менять режим работы сотрудника прямо во время рабочей смены). Значения в данной колонке являются нередактируемыми, и служат в качестве основы для формирования в табеле фактических переходящих рабочих смен.

Во второй колонке, расположенной справа от первой, отображаются фактические "дни смены". Изначально, при отсутсвии неявок и отклонений, эти дни равны плановым. В случае, если результат не устраивает, предусмотрена возможность редактирования фактических "дней смен". Редактирование реализовано по аналогии с редактированием часов в соседних столбцах табличного редактора. Введенные вручную значения подсвечиваются полужирным шрифтом (отсутсвие переходящих смен обозначается пустой строкой, что невозможно выделить шрифтом, поэтому такие корректировки отображаются знаком "-"), и имеют приоритет над плановыми значениями из графиков при переформировании табеля. Однако, корректировки в том виде, в котором их вводит пользователь, действуют до тех пор, пока информация о переходящих рабочих сменах не противоречит информации об отработанных часах. Если в результате переформирования графика или добавления/изменения отклонения возникает противоречие, оно устраняется в пользу отработанных часов, а корректировки переходящих смен сбрасываются в ближайшее допустимое в данной ситуации значение (как при изменении часов в графиках).
Отличие от графиков состоит в том, что в табеле рабочими сменами могут связываться не только рабочие по плану дни, но и рабочие по факту дни, а также дни, содержащие часы отклонений с признаком "Явка" в условном обозначении.
Редактирование переходящих смен специфично тем, что при изменении значения в одной строке оно меняется и в другой. Однако, приоритетной ручной корректировкой (подсвечиваемой полужирным шрифтом) считается только то значение, которое пользователь фактически ввел, а не то, которое появилось вследствие редактирования в соседней ячейке. Так сделано для того, чтобы корректировки не были излишне приоритетными по умолчанию (чтобы в соседние дни могла хотя бы частично попасть информация из измененных графиков).
При редактировании смен, переходящих на следующий или предыдущий месяц, изменения, как и в графиках, отражаются в табеле соседнего месяца, если он сформирован.

При редактировании переходящих рабочих смен в табеле учитывается защита табелей, в соответствии с настройками "Защитить проверенные табели от модификации", "Защитить проверенные табели от обновления", "Окончание диапазона защиты табелей от обновления". Если корректировка "дня смены", либо изменения соседних дней, вызванные данной корректировкой, относятся к защищенному периоду, то вносить такую корректировку запрещается.

Название продукта Название компонента Тип Последняя версия Дата выхода
G_WORKTABLEG_WORKTABLEDLL9.1.028.0
G_WORKTABLEG_WORKTABLEDLL9.1.28.0
Z_WTZ_WTRES9.1.028.0
Z_WTZ_WTRES9.1.28.0