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