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




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

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

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

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

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

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

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

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

 

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

"Между УТ 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 не будет опубликован. Обязательные поля помечены *