Перенос данных между конфигурациями 1С:Управление торговлей 11 (УТ 11) и 1С:Комплексная автоматизация 2 (КА 2) является достаточно частой задачей. Упрощает процесс тот факт, что обе программы построены на единой архитектуре (ERP-платформа), поэтому структуры регистров и справочников во многом идентичны. Однако перенос остатков — это всегда ответственный этап, требующий понимания того, откуда брать данные и как их правильно «приземлить» в новой базе. В этой статье мы разберем несколько эффективных способов решения этой задачи.
Прежде чем приступать к написанию собственных правил обмена или обработок, проанализируем самый надежный штатный механизм. В составе дистрибутива конфигурации 1С:КА 2 обычно поставляется внешняя обработка для выгрузки данных из УТ 11. Этот метод часто называют «техническим переходом».
Разберем алгоритм действий по шагам:
.../1cv8/tmpls/1c/ka/...) файл обработки для перехода с УТ 11.ВводНачальныхОстатков и заполнит их данными.Важное преимущество: этот способ учитывает сложные связи между регистрами, такие как партии товаров, номера ГТД и серии, что крайне сложно реализовать вручную в «самописных» правилах.
Если вам требуется перенести только определенные разрезы учета и вы хотите сделать это максимально быстро, не погружаясь в программирование в Конвертации данных, рассмотрим вариант с использованием Excel. Современные версии КА 2 предоставляют отличный инструмент для импорта данных прямо в документах ввода остатков.
Проанализируем этот путь:
ВедомостьПоТоварамНаСкладах для остатков номенклатуры или ЗадолженностьКлиентовПоСрокам для взаиморасчетов.ВводНачальныхОстатков с соответствующим типом операции (например, «Собственные товары»).Этот метод идеально подходит «дилетантам» (как назвал себя автор вопроса), так как исключает риск ошибок в программном коде. Главное условие — справочники номенклатуры и контрагентов в обеих базах уже должны быть идентичны (синхронизированы по наименованию, артикулу или коду).
Если справочники уже перенесены и синхронизированы по уникальным идентификаторам (GUID), мы можем написать небольшую обработку, которая через COMConnector подключится к базе УТ 11, прочитает остатки из регистров и создаст документы в КА 2. Этот метод требует навыков программирования, но он очень гибкий.
Рассмотрим пример логики получения данных по остаткам товаров:
// Пример упрощенного алгоритма получения данных через COM
Соединение = Новый COMОбъект("V83.COMConnector");
БазаУТ = Соединение.Connect("Srvr='ServerName';Ref='UT_Base';Usr='Admin';Pwd='123'");
Запрос = БазаУТ.NewObject("Запрос");
Запрос.Текст =
"ВЫБРАТЬ
| ТоварыНаСкладахОстатки.Номенклатура КАК Номенклатура,
| ТоварыНаСкладахОстатки.Склад КАК Склад,
| ТоварыНаСкладахОстатки.ВНаличииОстаток КАК Количество
|ИЗ
| РегистрНакопления.ТоварыНаСкладах.Остатки(&ДатаОстатков) КАК ТоварыНаСкладахОстатки";
Запрос.УстановитьПараметр("ДатаОстатков", ДатаПереноса);
Результат = Запрос.Выполнить().Выбрать();
Пока Результат.Следующий() Цикл
// Здесь мы ищем ссылку в текущей базе по GUID из УТ
СсылкаНоменклатура = Справочники.Номенклатура.ПолучитьСсылку(Новый УникальныйИдентификатор(БазаУТ.String(Результат.Номенклатура.UUID())));
// Далее заполняем табличную часть документа ВводНачальныхОстатков
КонецЦикла;
Использование UUID() критически важно: если вы просто будете искать по наименованию, велика вероятность появления дублей в справочниках.
Выясним, из каких именно объектов УТ 11 нужно забирать данные для корректного формирования остатков. В ERP-системах (к которым относятся УТ 11 и КА 2) данные хранятся не в документах, а в регистрах накопления. Посмотрим на список основных регистров:
ТоварыНаСкладах (для количественного учета) и ТоварыОрганизаций (для понимания принадлежности товара конкретному юрлицу и его себестоимости).РасчетыСКлиентами и РасчетыСПоставщиками. Обратите внимание, что в КА 2 расчеты ведутся в разрезе объектов расчетов (заказов или накладных).Денежные средства (наличные) и Денежные средства (безналичные).Проанализируем типичные ошибки, которые могут возникнуть при переносе остатков из УТ в КА.
1. Себестоимость и партии. В УТ 11 расчет себестоимости может быть не выполнен или выполнен с ошибками. Если вы просто перенесете количество и «какую-то» цену, то при первой же продаже в КА 2 система может выдать ошибку или некорректно рассчитать финансовый результат. Рекомендуется перед переносом выполнить закрытие месяца в УТ 11.
2. Единицы измерения. Убедитесь, что в обеих базах для одной и той же номенклатуры выбраны одинаковые базовые единицы измерения (штуки, кг и т.д.). Различия в единицах приведут к тому, что остатки «поедут» сразу после загрузки.
3. Склады и организации. Документы ВводНачальныхОстатков в КА 2 жестко привязаны к организации. Если в УТ у вас ведется учет по нескольким фирмам, на каждую организацию в КА 2 должен быть создан свой пакет документов ввода остатков.
4. Партионный учет. Если в КА 2 вы планируете использовать метод оценки ФИФО, то в документах ввода остатков желательно указать документы партии (первичные документы). Если оригинальных документов поступления в новой базе нет, система предложит создать технический документ ПервичныйДокумент, который станет точкой отсчета для партионного учета.
Подводя итог, можно сказать: если вы не уверены в своих силах в КД 2.0, самым безопасным и быстрым способом для вас будет использование типовой загрузки из табличного документа. Это позволит визуально контролировать каждую строку и избежать программных ошибок при переносе сложных объектов учета.