Почему в 1С:Бухгалтерия 3.0 дата документа меняется при вводе даты входящего документа и можно ли это изменить?

Программист 1С v8.3 (Управляемые формы) 1C:Бухгалтерия Бухгалтерский учет Промышленность, строительство и АПК
← На главную

При работе в 1С:Бухгалтерия 3.0 многие пользователи сталкиваются с особенностью работы стандартного алгоритма: когда вы создаете документ Поступление (акты, накладные, УПД) и вводите дату входящего первичного документа, программа автоматически переносит её в поле Дата самого документа в системе. Часто это вызывает недоумение, так как бизнес-логика пользователя требует, чтобы дата регистрации документа в системе оставалась текущей (датой оформления), а дата входящего документа лишь фиксировала факт отгрузки от поставщика.

Давайте разберем, почему так происходит, какие риски это несет и как можно настроить систему под ваши нужды.

Почему 1С делает это автоматически?

Прежде всего, важно понимать, что разработчики 1С заложили это поведение не как ошибку, а как защиту от ошибок учета. Рассмотрим основные причины:

  1. Контроль НДС (АСК НДС-2): Налоговые органы проводят автоматические сверки между книгами покупок и продаж контрагентов. Расхождения в датах счетов-фактур и документов-оснований часто становятся триггером для запроса пояснений от ФНС.
  2. Удобство для большинства: В бухгалтерском учете дата документа в программе — это дата совершения хозяйственной операции. Если вы получили товар 8-го числа, именно эта дата должна фигурировать в учете для корректного отражения расчетов и признания права собственности.
  3. Стандартная логика: Программа настроена таким образом, чтобы минимизировать вероятность того, что бухгалтер забудет указать корректную дату документа, соответствующую первичке.

Методологические способы решения без изменения кода

Если вы столкнулись с необходимостью сохранять текущую дату в поле документа, но при этом указывать реальную дату от поставщика, рассмотрим безопасные варианты действий:

Способ 1: Перевыбор даты после заполнения.

Самый простой и безопасный способ, не требующий вмешательства в конфигурацию:

  1. Создайте новый документ Поступление.
  2. Заполните поле Дата входящего документа. Программа автоматически изменит Дату документа на дату входящего.
  3. После этого вручную измените Дату документа обратно на текущую или нужную вам.
  4. Проведите документ.

Этот метод позволяет избежать конфликтов при обновлении типовой конфигурации, однако требует дисциплины от пользователя, чтобы не допустить ошибок.

Техническое решение: модификация поведения через расширения

Если специфика вашего производства требует жесткого разделения дат, и вы готовы нести ответственность за возможные нестыковки в налоговой отчетности, вы можете изменить алгоритм системы. Использование Расширений — единственный корректный способ сделать это без снятия конфигурации с поддержки.

Разберем, как это реализовать программисту:

Логика изменения даты прописана в обработчике события ПриИзменении поля Дата входящего документа. Чтобы отменить эту «автоматику», нам нужно создать Расширение, в котором перехватить управление этим событием.

Примените аннотацию &Вместо для процедуры обработчика события изменения входящего документа. Ваша задача — оставить тело процедуры пустым или реализовать логику, которая не затрагивает основной реквизит Дата документа.

Пример логики для реализации в модуле объекта расширения:


&Вместо("ДатаВходящегоДокументаПриИзменении")
Процедура Расш_ДатаВходящегоДокументаПриИзменении(Элемент)
    // Оставляя процедуру пустой, мы блокируем стандартный код 1С,
    // который принудительно меняет дату документа.
    // Теперь дата документа останется неизменной.
КонецПроцедуры

Использование Расширения с методом &Вместо позволяет полностью отключить стандартную проверку. Это дает вам полную свободу действий: дата документа остается той, которую вы установили изначально, а дата входящего документа будет служить только для целей бухгалтерского учета и отчетности.

Важные рекомендации при изменении учета

Прежде чем приступать к доработкам, проанализируйте следующие моменты:

Подводя итог: если вам мешает автоматическая смена дат, используйте Расширение для точечной модификации кода. Это позволит избежать лишних кликов и ошибок пользователей, обеспечив при этом комфортную работу в программе 1С:Бухгалтерия.

← На главную