На одном из предприятий, где я веду ЗиУП стандартная схема начисления аванса не подошла, и пришлось кое что выкручивать…
Когда готовится начисление аванса, для некоторых работников, у которых были отклонения от графика, заполняется документ «Табель учета рабочего времени», естественно, только на первую половину месяца. Когда приходит время начисления ЗП по этим сотрудникам нужно заполнять этот документ и на вторую половину месяца, даже если отклонений за этот период уже не было. Можно конечно создать новый документ, где просто заполнить автоматом и все, но кадровики просили что-то придумать, чтобы документы не рвать. Проблема заключалась в том, что уже заполненный документ с ручными изменениями перезаполнить нельзя — данные внесенные вручную исчезнут. Вот и написал такую обработку… вносим ее в список доп. обработок табл. частей. (рис. 2)
Действия выполняются в такой последовательности:
- 16 числа создаем новый документ и заполняем по одному(для пробы, вообще нет ограничения) сотруднику за первые 15 дней.
- вносим изменения, например, в какой то день он отработал только 4 часа.
- 1 числа следующего месяца открываем документ, меняем период, с 16 по конец месяца, и нажимаем «Заполнить» -> «Дозаполнить» (рис. 1)
- ставим период — «Месяц» и видим что внесенные в первую половину месяца данные без изменений дополнены данными за вторую половину месяца.





Для меня очень полезная обработка, большое спасибо!
Полезная обработка, особенно для организаций с большим количеством работников. Вообще-то, разработчики 1С могли бы сделать и сами кнопки Дозаполнить(с учетом ручных изменений) и Перезаполнить (без учета ручных изменений)
Рад что вам понравилось. Именно для больших организаций это и делалось — у меня все как на подбор, именно такие. Сейчас готовлю к пабликации еще одну обработку по автоматизации расчета ЗП (манипуляции с документами) которая очень облегчает жизнь мне и расчетчикам…
(3) а для зуп 8,2 — 2,5,45,3 подходит ? А то пишет ошибку — {Справочник.ВнешниеОбработки.Форма.ФормаЭлемента.Форма(178)}: Ошибка при вызове метода контекста (Создать): {ВнешняяОбработка.ДозаполнениеТабеля.МодульОбъекта(818)}: Поле объекта не обнаружено (Ночные): {ВнешняяОбработка.ДозаполнениеТабеля.МодульОбъекта(818)}: Поле объекта не обнаружено (Ночные)
Писалась обработка для ЗУП Украина, так что, возможно, придется для России кое-что поправить. Судя по строке и тексту ошибки, в Вашей конф. предопределенные элементы справочника имеют другие идентификаторы. Принцип работы там очень простой:
1) запоминаем во временную таб. то, что уже было в документе;
2) заполняем как обычно за новый промежуток времени;
3) запросом собираем все в кучу, и возвращаем обратно в таб. часть докумена.
только эти два интервала не должны пересекаться, иначе на пересечении будет каша. Можно конечно потюнить, и сделать информацию из первого или второго заполнения более приоритетной, но я эту часть решил пока организационным методом (сказал что кто будет делать с пересечением — у того все данные удалятся за весь месяц 🙂 )