Почему при переходе из КА 1.1 в КА 2.4 не переносятся остатки товаров и как настроить обмен через EnterpriseData

Программист 1С v8.3 (Обычные формы) 1С:Комплексная автоматизация Управленческий учет IT и автоматизация бизнеса
← На главную

Переход с редакции 1.1 на 2.4 конфигурации «Комплексная автоматизация» является полноценным внедрением новой системы, а не простым обновлением. Часто технические специалисты сталкиваются с тем, что при использовании типового механизма переноса данных остатки по товарам на складах остаются нулевыми, хотя в бухгалтерском учете (на 41 счете) данные присутствуют. Разберем детально причины этой проблемы и проанализируем современные методы миграции данных.

Анализ источников данных для остатков: Партии против РАУЗ

Проанализируем работу типовых правил выгрузки. В конфигурации «Комплексная автоматизация 1.1» учет может вестись либо по классическому партионному учету, либо с использованием расширенного аналитического учета затрат (РАУЗ). Типовой запрос в правилах выгрузки ориентирован на конкретные регистры накопления:

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

Важный совет: Перед переносом обязательно проверьте, каким отчетом заказчик видит «правильные» остатки. Если это ОСВ по 41 счету, а в «Ведомости по партиям товаров» данных нет — проблема в состоянии регистров накопления источника.

Использование универсального формата EnterpriseData (ED)

Начиная с поздних релизов КА 1.1 (например, 1.1.110.1), появилась возможность использовать обмен через формат EnterpriseData. Это позволяет реализовать так называемый «плавный переход», когда переносятся не только остатки на дату, но и документы за текущий период. Рассмотрим преимущества этого подхода:

Для активации этого механизма в КА 1.1 необходимо перейти в раздел Сервис — Обмен данными с продуктами на платформе 8.2 (8.3) и настроить синхронизацию через универсальный формат.

Модификация правил обмена через Конвертацию данных 3.0

Если типовой функционал не переносит специфические реквизиты или требует корректировки алгоритмов, нам придется работать с конфигурацией «Конвертация данных 3.0» (КД 3). Проанализируем процесс загрузки и изменения правил обмена:

Для начала нам нужно получить модуль менеджера обмена из конфигурации. В КД 3 правила не хранятся в виде XML-файла, как в КД 2.0, а генерируются в виде текста модуля МенеджерОбменаЧерезУниверсальныйФормат.

Рассмотрим по шагам процесс выгрузки и загрузки правил в КД 3:

  1. Выгрузите структуру метаданных конфигураций КА 1.1 и КА 2.4 с помощью обработки MD83Exp.epf. Обратите внимание: для корректной выгрузки регистров сведений может потребоваться небольшая доработка формы обработки (включение видимости настроек).
  2. Загрузите структуру в базу КД 3.
  3. Используйте обработку ВыгрузкаПравилСинхронизацииЧерезУниверсальныйФормат.epf, чтобы получить текущие правила из КА 1.1 в виде XML-файлов (ПОД, ПКО, ПВД).
  4. Загрузите эти файлы в КД 3 через помощник «Загрузка правил синхронизации из файлов».

Решение проблемы с буфером обмена при сохранении модуля

При работе в КД 3.0 программисты часто сталкиваются с тем, что кнопка «Сохранить модуль менеджера обмена» выдает сообщение об успешном копировании, но буфер обмена остается пустым. Это связано с особенностями работы COM-объекта htmlfile в некоторых окружениях Windows. Проанализируем ситуацию и применим программное исправление. Вы можете модифицировать процедуру ВывестиТекстДляИспользования в КД 3:


Процедура ВывестиТекстДляИспользования(ТХ) Экспорт
    Если ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент() Тогда
        Попытка
            КОбъект = Новый COMОбъект("htmlfile");
            Текст = ТХ.ПолучитьТекст();
            КОбъект.ParentWindow.ClipboardData.Setdata("Text", Текст);
            ОбщегоНазначенияКлиентСервер.СообщитьПользователю("Модуль успешно скопирован в буфер.");
        Исключение
            // Если COM-объект не сработал, выводим текст просто в окно
            ТХ.Показать("Сформированный модуль менеджера");
        КонецПопытки;
    Иначе
        ТХ.Показать();
    КонецЕсли;
КонецПроцедуры

После того как текст модуля получен, его необходимо вставить в общий модуль МенеджерОбменаЧерезУниверсальныйФормат вашей конфигурации-источника или приемника.

Особенности архитектуры КА 2.4, которые нужно учесть

Разберем, почему «просто перенести данные» недостаточно. Система КА 2.4 требует предварительной настройки перед приемом данных:

  1. Виды номенклатуры: В КА 2.4 настройки учета (использовать ли характеристики, серии, склады) зависят от Вида номенклатуры. Если в правилах конвертации не настроено правильное сопоставление или создание видов номенклатуры, данные о товарах могут загрузиться «битыми».
  2. Учетная политика: Настройте метод оценки стоимости (ФИФО или Средняя) в базе-приемнике ДО начала загрузки остатков.
  3. Платформа: Убедитесь, что используемая версия платформы соответствует требованиям релиза. Например, для последних версий КА 2.4 рекомендуется использовать платформу не ниже 8.3.12 (или даже 8.3.21 в зависимости от конкретной сборки), чтобы избежать ошибок в работе интерфейса и механизмов поиска.

Проанализировав ситуацию, можно сделать вывод: типовой переход через КД 2.0 (старые правила) подходит для простого учета по партиям. Если же база КА 1.1 имеет сложную историю, используется РАУЗ или требуются доработки — переходите на формат EnterpriseData и используйте КД 3.0 для тонкой настройки алгоритмов выгрузки остатков из регистра УчетЗатрат.

← На главную