0
vsg-work
05.06.25
✎
02:20
|
📌 Описание ситуации:
Выполняю обмен между 1С:Бухгалтерия 2.0 и 1С:Бухгалтерия 3.0 для Узбекистана через обработку “Универсальный обмен данными в формате XML” (по сути — через механизм Конвертации данных 2.1).
Из БП 2.0 выгружается документ “Регламентная операция” с видом операции “Переоценка валютных средств”.
В БП 3.0 этот документ загружается как “Операция (бух)”. Загрузка в целом работает, все проводки создаются правильно, но не заполняется реквизит Контрагент.
⸻
🔍 Детали:
• В проводке по счёту 4315 присутствует субконто СубконтоДт с ключом “Договоры”, а в значении — ссылка на элемент справочника “ДоговорыКонтрагентов”.
• Внутри значения (<Ссылка>) договор содержит вложенный реквизит Владелец, который ссылается на элемент справочника “Контрагенты”.
• Тип СправочникСсылка.Контрагенты в структуре <ИнформацияОТипах> отсутствует, т.к. контрагент нигде не используется напрямую — только как вложенный элемент в договор.
• В модуле загрузки (УстановитьСвойстваЗаписи) тип Контрагент не определяется, соответственно, Объект.Контрагент остаётся пустым.
• При этом, если выгружаю документы “Реализация товаров и услуг” или “Поступление товаров и услуг”, Контрагент заполняется корректно.
⸻
🧪 Пробовал:
1. Добавлять вручную Контрагента в структуру <ИнформацияОТипах> — работает.
2. В ПослеЗагрузки добавлял код, который вытаскивает Владелец из Договора и пишет его в Контрагента — работает.
3. Проверил: СубконтоДт с типом Контрагент в XML нет, контрагенты идут только внутри Владелец у договора.
⸻
❓ Вопросы:
1. Почему механизм загрузки не определяет тип Контрагент, если он явно указан в типе реквизита Владелец внутри договора?
2. Есть ли способ сделать это без ручной правки XML или костылей в ПослеЗагрузки?
3. Как правильнее поступить:
• вставлять фиктивную строку СубконтоДт с типом Контрагент,
• или автоматически вытаскивать Контрагент = Договор.Владелец в ПослеЗагрузки?
4. Может ли это быть особенностью конвертации из УПП/БП 2.0 в БП 3.0, и нужно ли адаптировать правила?
|
|