Рассмотрим распространенную ситуацию, возникающую при интеграции различных конфигураций 1С. Предположим, вы настроили обмен между 1С:Комплексная автоматизация (КА2) и 1С:Бухгалтерия предприятия (БП 3.0). В базе-источнике создается документ поступления безналичных денежных средств с видом операции «Поступление по платежным картам». После обмена в БП 3.0 документ успешно загружается и корректно заполняется, устанавливается счет учета 57.03.
Однако, если позднее в базе-источнике изменить вид операции на «Инкассация» и произвести повторный обмен, мы увидим проблему: в базе-приемнике вид операции поменяется, но счет учета останется прежним (57.03), хотя для инкассации должен применяться счет 57.01 (или 57.1). Проанализируем причины такого поведения системы и разберем по шагам доступные способы решения.
Выясним причину, по которой типовой механизм не перезаполняет счета. Проблема кроется в нескольких архитектурных особенностях обмена и логике самой программы-приемника:
57.03.Прежде чем приступать к глубоким доработкам, проанализируем базовые вещи, на которые указывают специалисты:
Рассмотрим подробнее варианты решения, если базовые проверки не помогли. Вы можете выбрать наиболее подходящий метод в зависимости от ваших компетенций и прав доступа.
Способ 1. Очистка счетов и перепроведение в БП 3.0
Если проблема носит массовый характер, но вы не хотите менять код, воспользуйтесь типовой обработкой. С помощью стандартной обработки «Групповое изменение реквизитов» выберите проблемные документы в БП 3.0. Принудительно очистите в них поля счетов учета и запустите перепроведение. Если счет не указан в документе, программа при проведении автоматически определит и подставит правильный счет согласно текущему виду операции «Инкассация».
Способ 2. Удаление документа в базе-приемнике
Это самый надежный путь обхода проблемы без доработок. Необходимо полностью удалить (а не просто пометить на удаление) сбойный документ в БП 3.0. После этого зарегистрируйте его к обмену в КА2 повторно. Документ загрузится «с нуля» как новый, и алгоритмы первоначального заполнения счетов отработают абсолютно корректно.
Способ 3. Программная доработка (расширение)
Для программистов лучшим решением станет доработка через расширение конфигурации на стороне БП 3.0. Можно подписаться на события загрузки и переопределить поведение модуля менеджера обмена. Логика должна проверять: если у существующего документа меняется вид операции, система должна принудительно вызывать типовой экспортный метод ЗаполнитьСчетаУчета(). Таким образом, счета будут актуализироваться автоматически.
Посмотрим на дополнительные настройки, которые могут предотвратить появление таких ситуаций в будущем:
57.01. При строгой настройке КА2 сможет передавать этот счет в XML-пакете обмена в явном виде.Используя предложенные методы, вы сможете настроить корректное отражение операций и избежать путаницы со счетами бухгалтерского учета при постоянном обмене данными между системами.