Как перенести остатки серий номенклатуры из 1С:Управление торговлей 10.3 в 1С:Управление торговлей 11.4?

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

Переход с одной версии конфигурации 1С на другую, особенно с УТ 10.3 на УТ 11.4, является стандартной, но часто непростой задачей. Одной из наиболее частых проблем, с которой мы сталкиваемся при таком переносе, является некорректный перенос информации о сериях номенклатуры. В этой статье мы подробно разберем, почему возникают сложности с переносом серий, проанализируем предлагаемые решения и рассмотрим внутреннюю логику системы.

В типовом механизме переноса данных из УТ 10.3 в УТ 11.4 остатки номенклатуры могут переноситься без указания серий, либо с использованием "неизвестных серий". Это происходит даже при наличии в УТ 10.3 полных сведений о сериях. Мы выясним, какие настройки необходимо учесть, и какие действия предпринять для успешного переноса.

Особенности типового переноса данных и серий номенклатуры

Типовой перенос данных из УТ 10.3 в УТ 11.4 осуществляется с помощью специальной обработки, которая обычно находится в установочном пакете 11-й редакции в папке AddFiles\Переходы с других конфигураций\УТ103 и называется "Выгрузка данных". Эта обработка работает в связке с "Помощником перехода с УТ 10.3" в УТ 11.4. При работе с этим механизмом важно понимать, как он обрабатывает серии.

При переносе данных нам предлагается выбрать одно из правил переноса серий:

  1. Не переносить информацию о сериях. В этом случае система игнорирует все данные о сериях.
  2. Переносить информацию об остатках серий. Предполагается, что при выборе этой опции серии и их остатки должны быть выгружены. В УТ 11.4 при этом создается политика учета серий с типом "Управление остатками серий", а движения в разрезе серий формируются по регистрам количественного учета остатков, например, по регистру "Товары на складах".

Для корректной выгрузки информации по сериям номенклатуры необходимо установить параметр «ВыгружатьСерии» в значение «Да» в обработке переноса данных. При этом серии будут переноситься для остатков и оборотов с типом политики «Учет себестоимости по сериям». Если в УТ 10.3 учет по сериям велся и соответствующий параметр включен, серии будут выгружены в остатках и документах, а в видах номенклатуры в УТ 11.4 будет выбрана политика учета серий "Справочное указание серий".

Проблемы и особенности переноса серий

Несмотря на наличие типовых настроек, на практике мы часто сталкиваемся с тем, что остатки переносятся без серий или с "неизвестной серией". Это может быть вызвано несколькими причинами:

  1. Различия в структуре учета: Между УТ 10.3 и УТ 11.4 существуют существенные различия в структуре данных и логике учета. УТ 11.4 имеет более сложную и гибкую систему управления складскими операциями и сериями, что может приводить к несоответствиям при прямом переносе.
  2. Ограничения типового механизма: Типовой механизм не всегда способен перенести всю накопленную информацию, особенно если в УТ 10.3 использовались нестандартные доработки или специфический учет. Например, остатки могут переноситься без учета серий и качества товаров, а свободные остатки могут быть равны остаткам товаров на складах без детальной разбивки.
  3. Особенности ГТД: Элементы номеров ГТД (грузовая таможенная декларация) в УТ 11.4 создаются из номеров ГТД, указанных у серий номенклатуры в УТ 10.3. Если этот механизм работает некорректно, это также может вызывать проблемы.

Анализ внутренней логики переноса серий: параметр ПодходящийРежимСерий

Для более глубокого понимания ситуации, давайте рассмотрим фрагмент кода, который затрагивает логику определения режима учета серий и алкогольной продукции при создании вида номенклатуры в УТ 11.4. Этот фрагмент кода может дать нам представление о том, как система пытается сопоставить данные УТ 10.3 с новой структурой УТ 11.4.

В одном из сообщений форума был приведен следующий код:


ПодходящийРежимСерий = 1;
Если ИмяТЧ = Неопределено Или ИмяТЧ = "Товары" Тогда
    ПодходящийРежимСерий = 2;
КонецЕсли;

Если Параметры.РежимВыгрузкиСерий = ПодходящийРежимСерий Тогда
    Номенклатура = ОбъектКоллекции.Номенклатура;
    // ... дальнейшая логика по алкогольной продукции и ГТД ...
    СоздатьВидНоменклатуры_ИспользоватьСерии = Истина;
    // ...
    Выполнить(Алгоритмы.СоздатьВидНоменклатуры);
    ИсходящиеДанные = Новый Структура("ВидНоменклатуры", Значение);
    Значение = ОбъектКоллекции.Серия;
    Если НЕ ЗначениеЗаполнено(ОбъектКоллекции.Серия) Тогда
        Значение = "1";
        ИмяПКО = "НеизвестнаяСерия";
    КонецЕсли;
Иначе
    Отказ = Истина;
КонецЕсли;

Давайте разберем этот код пошагово:

  1. ПодходящийРежимСерий = 1; Мы видим инициализацию переменной ПодходящийРежимСерий значением 1. Это может быть дефолтное значение, соответствующее определенной политике учета серий, например, "Не переносить информацию о сериях" или "Справочное указание серий".
  2. Если ИмяТЧ = Неопределено Или ИмяТЧ = "Товары" Тогда ПодходящийРежимСерий = 2; КонецЕсли; Здесь происходит изменение значения ПодходящийРежимСерий на 2, если имя табличной части (ИмяТЧ) не определено или равно "Товары". Это условие, вероятно, указывает на то, что если данные обрабатываются в контексте товарных позиций, то предполагается более детализированный учет серий, например, "Переносить информацию об остатках серий" или "Учет себестоимости по сериям".
  3. Если Параметры.РежимВыгрузкиСерий = ПодходящийРежимСерий Тогда Это ключевое условие. Оно проверяет, соответствует ли установленный в параметрах выгрузки режим серий (Параметры.РежимВыгрузкиСерий) тому "подходящему" режиму, который был определен логикой. Если режимы не совпадают, то блок Иначе будет выполнен, и перенос может быть отклонен (Отказ = Истина). Это означает, что для успешного переноса нам нужно убедиться, что параметр выгрузки серий в обработке соответствует ожиданиям целевой системы.
  4. Логика алкогольной продукции и ГТД: Далее код определяет, является ли номенклатура алкогольной продукцией и требуется ли учет по ГТД. Это критически важно, так как эти факторы напрямую влияют на создание вида номенклатуры и, возможно, на политики учета серий. Если у номенклатуры есть серии с указанным номером ГТД, то устанавливается флаг ВестиУчетПоГТД.
  5. СоздатьВидНоменклатуры_ИспользоватьСерии = Истина; Здесь явно указывается, что для создаваемого вида номенклатуры будет установлен флаг использования серий. Это говорит о том, что система пытается сохранить информацию о сериях на уровне вида номенклатуры.
  6. Обработка пустой серии: Если значение серии из объекта-коллекции (ОбъектКоллекции.Серия) не заполнено, система присваивает ему строковое значение "1" и указывает ИмяПКО = "НеизвестнаяСерия". Это прямо указывает на механизм, который создает "неизвестные серии" в УТ 11.4, когда исходные данные по сериям отсутствуют или некорректны.

Таким образом, мы видим, что система ожидает определенный режим выгрузки серий, который должен соответствовать внутренней логике УТ 11.4. Несоответствие может привести к отклонению переноса или созданию "неизвестных серий". Этот анализ подсказывает нам, что для успешного переноса необходимо тщательно проверять и, при необходимости, дорабатывать правила обмена, чтобы обеспечить правильное сопоставление режимов учета серий.

Рекомендации и обходные пути для переноса серий

Если типовой перенос не дает желаемого результата, мы можем рассмотреть несколько подходов:

1. Тщательная подготовка исходной базы УТ 10.3

Прежде чем приступать к переносу, критически важно подготовить базу УТ 10.3. Этот этап часто недооценивается, но именно он помогает избежать множества проблем:

  1. Резервное копирование: Обязательно сделайте резервную копию обеих баз (УТ 10.3 и УТ 11.4) перед началом любых операций.
  2. Обновление релиза: Обновите УТ 10.3 до самого последнего актуального релиза. Это гарантирует, что все известные ошибки в механизмах учета и выгрузки будут исправлены.
  3. Очистка данных: Удалите все объекты, помеченные на удаление, в УТ 10.3. Это снизит объем переносимых данных и исключит перенос "мусорных" объектов.
  4. Регламентные операции: Выполните все регламентные операции в УТ 10.3:
    • Закройте кассовые смены.
    • Оформите отчеты комиссионера/комитенту.
    • Завершите оформление межфирменных продаж.
    • Завершите проведение по регистрам НДС.
    • Проведите документы по партиям и восстановите последовательность документов.
  5. Аудит учета: Проведите тщательный аудит учета в УТ 10.3 на наличие ошибок. Особое внимание уделите отрицательным остаткам товаров или расхождениям в регистрах "Товары на складах" и "Партии товаров на складах". Эти ошибки могут привести к некорректной загрузке данных в УТ 11.4 и дальнейшим проблемам с остатками.

2. Доработка правил обмена данными

В большинстве случаев, когда типовой механизм не справляется с переносом серий, наиболее надежным решением является доработка правил обмена. Мы можем использовать обработку "Универсальный обмен данными в формате XML" и изменить правила конвертации. Эти правила обычно находятся внутри отдельной обработки по переносу остатков из УТ 10.3 в УТ 11.4, в макетах. Доработка правил позволяет нам:

  1. Точно сопоставить данные: Мы можем явно указать, как данные о сериях из УТ 10.3 должны быть преобразованы и записаны в УТ 11.4, учитывая различия в структуре регистров и справочников.
  2. Обработать нестандартные ситуации: Если в УТ 10.3 были доработанные справочники или новые реквизиты, только доработка правил обмена позволит перенести эти данные. Мы можем создать новые алгоритмы для переноса серий, которые будут учитывать специфику нашего учета.
  3. Управлять политиками учета серий: Мы можем явно задать, какая политика учета серий должна быть установлена для видов номенклатуры в УТ 11.4 в зависимости от наличия и типа серий в УТ 10.3.

Для доработки правил обмена нам потребуются навыки программирования в 1С. Мы будем работать с объектами ПравилаОбмена, КонвертацияОбъектовИнформационныхБаз и детально прописывать логику переноса каждого реквизита, связанного с сериями.

3. Альтернативный ручной перенос остатков через табличные документы (с ограничениями)

Некоторые пользователи прибегают к частичному ручному переносу остатков. Этот метод может быть полезен для переноса обычных остатков, но имеет существенные ограничения для серий.

  1. Формирование отчета в УТ 10.3: В УТ 10.3 мы можем сформировать отчет, например, "Ведомость по товарам на складах", с нужными колонками, включая номенклатуру, количество, склад и, по возможности, серию. Затем мы сохраняем этот отчет в табличный документ (например, в формат Excel).
  2. Загрузка в документ "Ввод остатков" УТ 11.4: В УТ 11.4 в документе "Ввод начальных остатков" присутствует типовая кнопка для загрузки данных из табличного документа. Мы можем использовать ее для загрузки подготовленных данных.

Однако, как показала практика на форуме, этот метод не всегда работает для серий. В сообщении 9 пользователь указывает: "открылась таблица, но серии там нет". И в сообщении 10 уточняется, что "обидно, значит тут только характеристики сработают а серии только через кнопку сработают". Это означает, что типовой механизм загрузки из табличного документа в документе ввода остатков в УТ 11.4 предназначен скорее для характеристик номенклатуры, чем для серий. Серии требуют более глубокого понимания логики учета и создания соответствующих объектов в системе.

Действия после переноса

После успешной загрузки данных в УТ 11.4 мы должны выполнить следующие шаги:

  1. Проверка документов ввода начальных остатков: Тщательно проверьте сформированные документы ввода начальных остатков. Убедитесь, что все данные, особенно по сериям, перенесены корректно.
  2. Сверка остатков: Сравните данные остатков между УТ 10.3 и УТ 11.4. Для этого мы можем использовать стандартные отчеты, такие как "Ведомость по товарам на складах" в обеих конфигурациях. Расхождения необходимо проанализировать и устранить.
  3. Перепроведение документов: В УТ 11.4 необходимо перепровести документы ввода остатков. Это обеспечит правильное формирование движений по регистрам.
  4. Закрытие месяца: Выполните процедуру закрытия месяца через "Регламентные операции по закрытию месяца" в УТ 11.4. Это поможет выявить и исправить возможные ошибки в учете.

Заключение

Перенос данных о сериях из УТ 10.3 в УТ 11.4 является сложной задачей, которая редко решается без дополнительных усилий. Мы убедились, что типовой механизм имеет свои ограничения, а альтернативные ручные методы не всегда эффективны для серий. Наиболее надежным подходом остается доработка правил обмена, которая позволяет учесть все нюансы учета серий в исходной и целевой конфигурациях. Тщательная подготовка базы и последующий контроль данных являются обязательными этапами для успешной миграции.

← На главную