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