Закрытый период и дата запрета редактирования
Директивный
Правило
Заголовок раздела «Правило»Любой код, который создаёт, проводит или изменяет документы и движения программно (загрузка, обработка, автосоздание, перепроведение), обязан считаться с датой запрета редактирования:
- Запись в закрытый период не проходит молча. Платформа отклонит запись — код должен это поймать и сообщить понятно (какой документ, какая дата, какой период закрыт), а не проглотить исключение и «потерять» документ.
- Дата операции определяется правильно. Перенос данных прошлого периода идёт в дату фактической регистрации/текущую открытую дату, если так требует учёт, — а не механически в исходную дату, попадающую под запрет.
- Временное снятие запрета — обратимо и узко. Если процесс обязан писать в закрытый период (регламентная дозагрузка, исправление), запрет снимается минимально (по организации/пользователю), под контролем и возвращается сразу после операции. «Сняли на всех и забыли» — прямой путь к правке сданной отчётности задним числом.
- Массовая обработка сообщает границу. Групповое перепроведение/запись показывает, сколько объектов пропущено из-за закрытого периода, а не останавливается на первом или тихо пропускает всё.
Дата запрета редактирования — предохранитель учёта: она защищает сданную отчётность от изменения задним числом. Код, который её игнорирует, ломается двумя способами. Первый — падает или молча теряет данные при загрузке/обработке («провёл 900 из 1000, про остальные никто не узнал»). Второй, опаснее — обходит запрет ради удобства и оставляет его снятым, и тогда предохранитель не работает уже для всех. Тема всплывает постоянно: перенос документов между периодами, работа с самозанятыми после закрытия, проведение маршрутных листов текущей датой поверх закрытых заказов.
Пример из практики
Заголовок раздела «Пример из практики»Проведение маршрутного листа текущей датой подставляло водителя в связанные заказы, а они уже в закрытом периоде — проведение падало. Временное решение на период доработки было оформлено правильно по этому стандарту: дату запрета редактирования сузили (сняли только для пользователей, проводящих маршрутные листы), а не открыли всем; а сама доработка убрала причину — водитель теперь пишется в расходную накладную в момент её создания, не задевая закрытые заказы, после чего дату запрета вернули для всех без исключений. Это ровно «временное снятие — обратимо и узко», а не «сняли на всех и забыли».
Когда не применять
Заголовок раздела «Когда не применять»- Код не пишет в учёт (только читает — отчёты, выгрузки, сверка на чтение) — дата запрета не касается.
- Дата запрета в базе не используется (сознательно, по регламенту) — тогда правило про обработку отказа неактуально, но осознанный выбор даты операции остаётся.