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