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