gifts2017

Ошибка ПКО Контрагенты в правилах переноса из ЗиК 7 в ЗУП 2.5.41.4

Опубликовал Альберт АЙТАТ (al2ko) в раздел Программирование - Практика программирования

При выгрузке контрагентов из ЗиК в ЗУП фактический адрес контрагента не выгружается.

После переноса данных из ЗиК в ЗУП с помощью стандартных правил переноса обнаружилось, что у всех контрагентов, указанных в Исполнительных листах, не выгрузилась контактная информация.

Посмотрев правила переноса, обнаружил, что в них не предусмотрена выгрузка контактной информации контрагентов.

Для исправления данной ошибки придется править стандартные правила переноса из ЗиК в ЗУП в конфигурации "Конвертация данных"

1. ПКО "Справочники ->Контрагенты", в обработчик события "После выгрузки в файл" добавляем:

Стр = СокрЛП(Источник.ЮридическийАдрес);

Если ПустаяСтрока(Стр) = 0 Тогда
     СпРазбора = глРазложить(Стр);

     Представление = "";
     Если СпРазбора.РазмерСписка() = 10 Тогда
          Для Индекс = 2 По СпРазбора.РазмерСписка() Цикл
               Если ПустоеЗначение(СпРазбора.ПолучитьЗначение(Индекс)) = 0 Тогда

                   Представление = Представление + ?(ПустоеЗначение(Представление) = 1, "", ", ")
                   +?(Индекс = 8, "дом № ",
                   ?(Индекс = 9, "корпус ",
                   ?(Индекс = 10,"кв.", "")))
                   + СпРазбора.ПолучитьЗначение(Индекс);

               КонецЕсли;
           КонецЦикла;

     Иначе
           Представление = Стр;
     КонецЕсли;

     КонтактнаяИнформация = СоздатьОбъект("СписокЗначений");
     КонтактнаяИнформация.Установить("Объект", Источник);
     КонтактнаяИнформация.Установить("Тип", "Адрес");
     КонтактнаяИнформация.Установить("Вид", "ФактАдресКонтрагента");
     Если СпРазбора.РазмерСписка() = 10 Тогда
          КонтактнаяИнформация.Установить("Поле1", СпРазбора.ПолучитьЗначение(2));
          КонтактнаяИнформация.Установить("Поле2", СпРазбора.ПолучитьЗначение(3));
          КонтактнаяИнформация.Установить("Поле3", СпРазбора.ПолучитьЗначение(4));
          КонтактнаяИнформация.Установить("Поле4", СпРазбора.ПолучитьЗначение(5));
          КонтактнаяИнформация.Установить("Поле5", СпРазбора.ПолучитьЗначение(6));
          КонтактнаяИнформация.Установить("Поле6", СпРазбора.ПолучитьЗначение(7));
          КонтактнаяИнформация.Установить("Поле7", СпРазбора.ПолучитьЗначение(8));
          КонтактнаяИнформация.Установить("Поле8", СпРазбора.ПолучитьЗначение(9));
          КонтактнаяИнформация.Установить("Поле9", СпРазбора.ПолучитьЗначение(10));
     КонецЕсли;
     КонтактнаяИнформация.Установить("Представление", Представление);
     КонтактнаяИнформация.Установить("ТипОбъекта", "Контрагент");

     ВыгрузитьПоПравилу(КонтактнаяИнформация, , , , "КонтактнаяИнформация");
КонецЕсли;

2.  ПКО "Справочники ->ВидыКонтактнойИнформации", на вкладке "Конвертация значений" добавить значение  "ФактАдресКонтрагента"  для Источника и Приемника.

P.S. 

Если хотите выгрузить только  контрагентов с контактной информацией, придеться создать пустое ПВД для справочника "Контрагенты"

См. также

Подписаться Добавить вознаграждение
В этой теме еще нет сообщений.
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа