Многие бухгалтеры сталкиваются с ситуацией, когда сотрудник увольняется, а спустя какое-то время возвращается в компанию. При повторном приеме на работу ему присваивается новый табельный номер. Однако, когда этот работник сдает авансовый отчет, в печатной форме АО-1 чудесным образом всплывает его старый, уже неактуальный табельный номер. Давайте подробно рассмотрим, почему так происходит, и разберем по шагам, как исправить эту ошибку в 1С:Бухгалтерия.
Для начала выясним причину такого поведения системы. В современных программах 1С жестко разделены два понятия:
ФизическиеЛица — здесь хранится информация о самом человеке (его ФИО, ИНН, СНИЛС, паспортные данные). Для одного человека в базе всегда должна быть только одна карточка физического лица.Сотрудники — здесь хранится история работы человека по конкретному трудовому договору.Прием ранее уволенного работника путем создания нового элемента в справочнике Сотрудники и его привязки к старому элементу из справочника ФизическиеЛица — это абсолютно верный и методологически правильный подход. В результате в программе получается одно физическое лицо, но два сотрудника с разными табельными номерами (один уволенный, другой действующий).
Проблема кроется в самом документе АвансовыйОтчет. В качестве подотчетного лица в нем выбирается элемент из справочника ФизическиеЛица. Чтобы сформировать печатную форму (вывести должность и табельный номер), программа делает запрос к кадровым регистрам сведений, например, к регистру РаботникиОрганизации (или аналогичным кадровым регистрам актуальных версий) на дату авансового отчета. Если в алгоритме конфигурации нет жесткого отбора, отсекающего уволенных по дате, система просто берет первую попавшуюся связанную запись, которая чаще всего оказывается старой.
Рассмотрим подробнее основной метод решения, предложенный специалистами на форуме. Нам необходимо проверить и при необходимости поправить движения в регистрах.
КадровыйСтоимость, РаботникиОрганизации или текущие актуальные регистры версии Бухгалтерии 3.0).Разберем по шагам еще один важный момент. Обязательно убедитесь, что документ, оформляющий увольнение по старому сотруднику, проведен корректно в той базе, где вы формируете авансовый отчет.
Если вы ведете учет заработной платы в отдельной программе (например, в 1С:ЗУП) и переносите данные с помощью синхронизации, вполне вероятно, что кадровое событие увольнения просто не перенеслось или загрузилось с ошибкой. Из-за этого база 1С:Бухгалтерии все еще "видит" старого сотрудника как действующего и подтягивает его данные в печатные формы. Проверьте статус старого сотрудника и наличие проведенного документа увольнения.
В некоторых релизах и конфигурациях 1С разработчики предусмотрели механизм выбора главного договора для человека.
ФизическиеЛица.Посмотрим на пример, когда исправить проблему нужно "здесь и сейчас", а времени на разбор регистров или привлечение программиста нет. В таких случаях спасает ручная корректировка.
АвансовыйОтчет и выведите его на печать (форма АО-1).Наконец, проанализируем ситуацию с точки зрения кода. Ошибка, при которой подтягиваются данные уволенных сотрудников — это часто недоработка конкретного релиза 1С. Разработчики регулярно выпускают патчи и обновления, исправляющие логику заполнения печатных форм.
Если обновление базы до последней версии не помогло, а проблема носит массовый характер, вы можете заказать у программиста создание небольшого Расширения конфигурации. Программист добавит в алгоритм формирования печатной формы фильтр, который будет жестко отсекать уволенных сотрудников при поиске табельного номера. Это раз и навсегда автоматизирует процесс и избавит бухгалтера от рутины.