Синхронизация кодов справочников




Обработка для синхронизации кодов справочников.

Обработка не является готовым решением и создавалась для эксперимента. Не применяйте на рабочей базе без проверки результатов.

Обработка делает "снимок" справочника следующего типа: Код — Элемент. В дальнейшем созданная таблица соответствий может быть просмотрена в обработке и синхронизирована с существующим справочником.

Обработка была создана при настроенных планах обмена, когда данные между конф. синхронизируются, а коды остаются разными. Данное дополнение решает эту проблему.

Существуют два условия при ее применении:

— Структура синхронизируемых справочников должна полностью совпадать

— Должны быть удалены дубли элементов справочников.

Разумеется, необходимы соответствующие права при запуске.

 

Данная обработка применялась в следующей ситуации:

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

Также ее можно применять для восстановления кодов элементов любого справочника при каком-нибудь сбое: неправильная работа какой-либо обработки и прочее. Главное сделать "снимок" справочника заранее.

9 Comments

  1. dsidentr4

    Кто-нибудь пробовал?

    Reply
  2. evgefremov

    обработка достаточно специфичная. сложно придумать когда она может понадобиться. автору не помешало бы дать более наглядный пример.

    Reply
  3. Borisych

    Моя твоя не понимать однака

    Reply
  4. kostyanyk

    я вот переношу из УТ 10 в БП 2. БП2 чистая. Мне такое на будущее возможно надо

    Reply
  5. agent100

    Мы используем для синхронизации УТ и БУ)

    Reply
  6. Rasty_

    бесполезная обработка.

    Объясню почему счел её бесполезной.

    во первых:

    Синхронизацию может производиться между справочниками с одинаковой структурой.Т.е. номенклатуру не синхронизируешь между УТ и БУ.

    Во вторых:

    Нету поиска.

    // Начало обработки
    ЭтотОбъект.Статус = «Синхронизация кодов номенклатуры…»;
    ИД = 0;
    Для Каждого Стр Из ТЗНом Цикл
    ОбъектН = Стр.Ссылка.ПолучитьОбъект();
    А = ТЗДата.Получить(ИД).Код;
    ОбъектН.Код = А;
    ОбъектН.Записать();
    ИД = ИД + 1;
    ХодРаботы = ХодРаботы + 1;
    КонецЦикла;
    
    ЭтотОбъект.Статус = «Ожидание команды пользователя»;
    

    Показать

    Мне кажется она бесполезна и не выполняет заявленного.

    Reply
  7. ekean

    ЭтотОбъект.Статус = «Синхронизация кодов номенклатуры…»;

    ИД = 0;

    Для Каждого Стр Из ТЗНом Цикл

    ОбъектН = Стр.Ссылка.ПолучитьОбъект();

    Попытка

    Найденный = ТЗДата.Найти(СОКРЛП(ОбъектН.Наименование), «Наименование»);

    А = Найденный[«Код»];

    ОбъектН.Код = А;

    ОбъектН.Записать();

    ИД = ИД + 1;

    Исключение

    КонецПопытки;

    ХодРаботы = ХодРаботы + 1;

    КонецЦикла;

    можно так…

    Reply
  8. andreyshim

    Не хочет открываться в торговле 10.3 платформа 8.1 как сконвертировать для нее эту обработку?

    Reply
  9. YPermitin

    (7) ekean, может возникнуть проблемка, если в базе дубли есть (из-за поиска по наименованию), а так для синхронных баз надежней метод.

    (8) andreyshim, для 8.1 никак, легче будет переписать

    (6) Rasty_, она не синхронизирует номенклатуру, она синхронизирует ее коды =) про номенклатуру не было заявлено.

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *