Обмен УТ11 -> БП выгрузка контрагентов с адресами

17.04.12

Интеграция - Перенос данных 1C

Речь пойдет о ручной выгрузке данных из Управления Торговлей 11 в Бухгалтерию 2.0.
Здесь достаточно приводится рабочих правил выгрузки, но там не работает при выгрузке контрагента выгрузка "Адресов" (Юридические и Фактические), попробуем исправить.

Речь пойдет о ручной выгрузке данных из Управления Торговлей 11 в Бухгалтерию 2.0.
Здесь достаточно приводится рабочих правил выгрузки, посмотрите тут или тут
но там не работает, при выгрузке контрагента, выгрузка "Адресов" (Юридические и Фактические). Повозившись, изменил Алгоритм.ВыгрузкаКонтактнойИнформации, который есть в этих правилах, но отключен, закомментирована его работа.

Так вот, заменяем код этого алгоритма в правилах на мой, и должно работать, предварительно раскомментировав строку

 

//Выполнить(Алгоритмы.ВыгрузкаКонтактнойИнформации);

в Правилах выгрузки(событие "после выгрузки"), Контрагентов



также в правилах конвертации "КотактнойИнформации" необходимо изменить существующие строки события "после загрузки" 
 

вставить следующий код

ОбъектМодифицирован = Ложь;
   
ЗаписьРегистра = Объект;//[НомерЗаписи - 1];
   
Если ЗаписьРегистра.Тип = Перечисления.ТипыКонтактнойИнформации.Адрес И НЕ ЗначениеЗаполнено(ЗаписьРегистра.Представление) Тогда
       
// Заполняем представление по умолчанию, если в УТ адрес был не произвольный
       
ПредставлениеАдреса = УправлениеКонтактнойИнформацией.ПолучитьПредставлениеАдреса(ЗаписьРегистра);
        Если
ЗначениеЗаполнено(ПредставлениеАдреса) Тогда
           
ОбъектМодифицирован = Истина;
           
ЗаписьРегистра.Представление = ПредставлениеАдреса;
        КонецЕсли;
    КонецЕсли;

 

и должно работать, выгружается вся контактная информация по контрагенту, но в бухгателрию попадает только нужная Юр. адрес, Факт. адрес и телефоны.

 

код Алгоритма.ВыгрузкаКонтактнойИнформации

Строки = Новый ТаблицаЗначений;
Строки.Колонки.Добавить("Ссылка");
Строки.Колонки.Добавить("Объект");
Строки.Колонки.Добавить("Вид");
Строки.Колонки.Добавить("Тип");
Строки.Колонки.Добавить("Поле1");
Строки.Колонки.Добавить("Поле2");
Строки.Колонки.Добавить("Поле3");
Строки.Колонки.Добавить("Поле4");
Строки.Колонки.Добавить("Поле5");
Строки.Колонки.Добавить("Поле6");
Строки.Колонки.Добавить("Поле7");
Строки.Колонки.Добавить("Поле8");
Строки.Колонки.Добавить("Поле9");
Строки.Колонки.Добавить("ТипДома");
Строки.Колонки.Добавить("ТипКвартиры");
Строки.Колонки.Добавить("ТипКорпуса");
Строки.Колонки.Добавить("Представление");
Строки.Колонки.Добавить("Комментарий");
Строки.Колонки.Добавить("ЭтоПроизвольнаяСтрока", Новый ОписаниеТипов("Булево"));

// Типы дома, корпуса и квартиры, которые поддерживаются в БП
ТипыДомов = Новый Массив;
ТипыДомов.Добавить("дом");
ТипыДомов.Добавить("владение");

ТипыКорпусов = Новый Массив;
ТипыКорпусов.Добавить("корпус");
ТипыКорпусов.Добавить("строение");

ТипыКвартир = Новый Массив;
ТипыКвартир.Добавить("кв.");
ТипыКвартир.Добавить("оф.");
// Заполнение набора
Для Каждого СтрокаКИ Из Объект.КонтактнаяИнформация Цикл
   
// Получаем структуру значений полей
   
СтруктураПолей      = Новый Структура;
   
ПоследнийЭлементИмя = Неопределено;
   
СтрокаПолей         = СтрокаКИ.ЗначенияПолей;

    Для
Сч = 1 По СтрЧислоСтрок(СтрокаПолей) Цикл
       
Стр = СтрПолучитьСтроку(СтрокаПолей, Сч);
        Если
Лев(Стр, 1) = Символы.Таб Тогда
            Если
ПоследнийЭлементИмя <> Неопределено Тогда
               
СтруктураПолей[ПоследнийЭлементИмя] = СтруктураПолей[ПоследнийЭлементИмя] + Символы.ПС + Сред(Стр, 2);
            КонецЕсли;
        Иначе
           
Поз = Найти(Стр, "=");
            Если
Поз <> 0 Тогда
               
ПоследнийЭлементИмя = Лев(Стр, Поз-1);
               
СтруктураПолей.Вставить(ПоследнийЭлементИмя, Сред(Стр, Поз+1));
            КонецЕсли;
        КонецЕсли;
    КонецЦикла;

   
СтрокаНабора = Строки.Добавить();
   
СтрокаНабора.Объект                 = Объект.Ссылка;
   
СтрокаНабора.Вид                    = СтрокаКИ.Вид;
   
СтрокаНабора.Тип                    = СтрокаКИ.Тип;
   
СтрокаНабора.Представление          = СтрокаКИ.Представление;

    Если
СтрокаКИ.Тип = Перечисления.ТипыКонтактнойИнформации.Факс
        ИЛИ СтрокаКИ.Тип = Перечисления.ТипыКонтактнойИнформации.Телефон Тогда
       
СтруктураПолей.Свойство("КодСтраны", СтрокаНабора.Поле1);
       
СтруктураПолей.Свойство("КодГорода", СтрокаНабора.Поле2);
       
СтруктураПолей.Свойство("НомерТелефона", СтрокаНабора.Поле3);
       
СтруктураПолей.Свойство("Добавочный", СтрокаНабора.Поле4);
    ИначеЕсли
СтрокаКИ.Тип = Перечисления.ТипыКонтактнойИнформации.Адрес Тогда

       
СтруктураПолей.Свойство("Индекс", СтрокаНабора.Поле1);
       
СтруктураПолей.Свойство("Регион", СтрокаНабора.Поле2);
       
СтруктураПолей.Свойство("Район", СтрокаНабора.Поле3);
       
СтруктураПолей.Свойство("Город", СтрокаНабора.Поле4);
       
СтруктураПолей.Свойство("НаселенныйПункт", СтрокаНабора.Поле5);
       
СтруктураПолей.Свойство("Улица", СтрокаНабора.Поле6);
       
СтруктураПолей.Свойство("Дом", СтрокаНабора.Поле7);
       
СтруктураПолей.Свойство("Корпус", СтрокаНабора.Поле8);
       
СтруктураПолей.Свойство("Квартира", СтрокаНабора.Поле9);

       
СтруктураПолей.Свойство("ТипДома", СтрокаНабора.ТипДома);
       
СтруктураПолей.Свойство("ТипКорпуса", СтрокаНабора.ТипКорпуса);
       
СтруктураПолей.Свойство("ТипКвартиры", СтрокаНабора.ТипКвартиры);

       
// Проверяем значения типа дома, корпуса и квартиры
       
СтрокаНабора.ТипДома     = ?(ТипыДомов.Найти(НРег(СтрокаНабора.ТипДома)) = Неопределено, Неопределено, СтрокаНабора.ТипДома);
       
СтрокаНабора.ТипКорпуса  = ?(ТипыКорпусов.Найти(НРег(СтрокаНабора.ТипКорпуса)) = Неопределено, Неопределено, СтрокаНабора.ТипКорпуса);
       
СтрокаНабора.ТипКвартиры = ?(ТипыКвартир.Найти(НРег(СтрокаНабора.ТипКвартиры)) = Неопределено, Неопределено, СтрокаНабора.ТипКвартиры);

       
// Получаем представление, какое оно должно быть
       
КодСтраны = "";
       
НаименованиеСтраны = СтрокаКИ.Страна;
       
СтранаРоссия = Справочники.СтраныМира.Россия;

       
СтруктураПолей.Свойство("КодСтраны", КодСтраны);
       
Страна = ?(ЗначениеЗаполнено(КодСтраны), Справочники.СтраныМира.НайтиПоКоду(КодСтраны), Неопределено);
       
Страна = ?(ЗначениеЗаполнено(Страна), Справочники.СтраныМира.НайтиПоНаименованию(НаименованиеСтраны, Истина), СтранаРоссия);
       
Страна = ?(ЗначениеЗаполнено(Страна), Страна, СтранаРоссия);

       
Представление = "";
        Если
Страна <> СтранаРоссия Тогда
           
Представление = Представление + ?(ЗначениеЗаполнено(Строка(Страна)), ", " + Строка(Страна), "");
        КонецЕсли;
       
Представление = Представление + ?(ЗначениеЗаполнено(СокрЛП(СтрокаНабора.Поле1)), ", " + СокрЛП(СтрокаНабора.Поле1), "");
       
Представление = Представление + ?(ЗначениеЗаполнено(СокрЛП(СтрокаНабора.Поле2)), ", " + СокрЛП(СтрокаНабора.Поле2), "");
       
Представление = Представление + ?(ЗначениеЗаполнено(СокрЛП(СтрокаНабора.Поле3)), ", " + СокрЛП(СтрокаНабора.Поле3), "");
       
Представление = Представление + ?(ЗначениеЗаполнено(СокрЛП(СтрокаНабора.Поле4)), ", " + СокрЛП(СтрокаНабора.Поле4), "");
       
Представление = Представление + ?(ЗначениеЗаполнено(СокрЛП(СтрокаНабора.Поле5)), ", " + СокрЛП(СтрокаНабора.Поле5), "");
       
Представление = Представление + ?(ЗначениеЗаполнено(СокрЛП(СтрокаНабора.Поле6)), ", " + СокрЛП(СтрокаНабора.Поле6), "");
       
Представление = Представление + ?(ЗначениеЗаполнено(СокрЛП(СтрокаНабора.Поле7)), ", " + СтрокаНабора.ТипДома    + " № " + СокрЛП(СтрокаНабора.Поле7), "");
       
Представление = Представление + ?(ЗначениеЗаполнено(СокрЛП(СтрокаНабора.Поле8)), ", " + СтрокаНабора.ТипКорпуса + " " + СокрЛП(СтрокаНабора.Поле8), "");
       
Представление = Представление + ?(ЗначениеЗаполнено(СокрЛП(СтрокаНабора.Поле9)), ", " + СтрокаНабора.ТипКвартиры + " " + СокрЛП(СтрокаНабора.Поле9), "");

        Если
СтрДлина(Представление) > 2 Тогда
           
Представление = Сред(Представление, 3);
        КонецЕсли;

       
// Проверяем представление на наличие произвольного значения
       
Если Представление <> СтрокаНабора.Представление Тогда
           
СтрокаНабора.ЭтоПроизвольнаяСтрока = Истина;
           
СтрокаНабора.Поле1 = Строка(Страна);
        КонецЕсли;

       
СтрокаНабора.ТипКвартиры = ?(СтрокаНабора.ТипКвартиры = "кв.", "Квартира", "Офис");

    КонецЕсли;

   
СтруктураПолей.Свойство("Комментарий", СтрокаНабора.Комментарий);
КонецЦикла;




Для Каждого
текСтрокаКотакт из Строки Цикл

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

См. также

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Россия Платные (руб)

Правила в универсальном формате обмена для ERP 2.5, КА 2.5, УТ 11.5, БП 3.0, Розница, УНФ, для последних версий конфигураций. Ссылки на другие конфигурации в описании публикации. Правила совместимы со всеми другими версиями конфигураций новыми и старыми, поддерживающими обмен и синхронизацию в формате EnterpriseData. Не требуется синхронного обновления правил после обновления другой конфигурации, участвующей в обмене. Типовой обмен через планы обмена кнопкой Синхронизация вручную или автоматически по расписанию, или вручную обработкой.

27660 руб.

12.06.2017    145110    844    297    

436

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 Оперативный учет 1С:Управление торговлей 10 Россия Управленческий учет Платные (руб)

Перенос данных из 1С:Управление торговлей 10.3 в 1С:Управление торговлей 11.5 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УТ 10.3 (10.3.88.x) и УТ 11.5 (11.5.20.x), также подходят для релиза 11.5 (11.5.19.x).

35000 руб.

23.07.2020    55333    253    73    

207

SALE! 10%

Перенос данных 1C Программист Платформа 1С v8.3 1С:Управление производственным предприятием 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

Перенос документов, начальных остатков и справочной информации из УПП 1.3 в ERP 2 | из УПП 1.3 в УТ 11 | из УПП в КА 2 | Правила конвертации (КД 2) | Более 360 предприятий выполнили переход с использованием этого продукта! | Сэкономьте время - используйте готовое решение для перехода! | Позволяет перенести из УПП 1.3 в ERP / УТ 11 / КА 2 всю возможную информацию | В переносе есть фильтр по организации и множество других опциональных параметров выгрузки | Есть несколько алгоритмов выгрузки остатков на выбор

55778 50200 руб.

04.08.2015    170087    354    281    

390

SALE! 10%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

Перенос данных из ERP в БП 3 | из КА 2 в БП 3 | из УТ 11 в БП 3 | из ЕРП в БП 3 | Сэкономьте время - используйте готовое решение для перехода! | Перенос разработан в формате КД 2 (правила конвертации данных) | Переносятся все возможные виды документов, начальных остатков и нормативно-справочная информация| Можно опционально выгружать каждую пару "номенклатура+характеристика" как отдельную номенклатуру | Есть выгрузка настроек счетов учета и зарплатных данных из ERP / КА 2 | Можно проверить на вашем сервере перед покупкой

55778 50200 руб.

15.04.2019    73846    196    154    

134

SALE! 10%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет Управленческий учет Платные (руб)

Перенос данных из ERP в ЗУП 3 | из КА 2 в ЗУП | Готовые правила конвертации данных (КД 2) для переноса остатков, документов с движениями и справочной информации 3 | Есть перенос начальной задолженности по зарплате и начальной штатной расстановки на выбранную дату | Обороты за прошлые годы (данные для расчета среднего) переносятся свернуто в документ "Перенос данных" | Есть фильтр по организациям | Документы за текущий период переносятся сразу с движениями, поэтому не потребуется делать перерасчеты | Перенос можно проверить перед покупкой, обращайтесь!

53111 47800 руб.

03.12.2020    38007    106    69    

100

SALE! 10%

Перенос данных 1C Системный администратор Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

Правила переноса данных из БП 3.0 в УТ 11 | из БП 3.0 в КА 2 | из БП 3.0 в ERP | Сэкономьте свое время - используйте готовое решение для перехода! | Постоянно работаем над развитием переноса данных | Обновляем на новые релизы 1С | Есть фильтр выгрузки по организациям | Переносятся начальные остатки на выбранную дату, документы за период времени и вся возможная справочная информация | Перенос сделан на технологии КД 2 (правила конвертации данных) Воспользовались более 122 предприятий! |

55778 50200 руб.

31.10.2014    238358    105    338    

308

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 1С:Управление производственным предприятием 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Управленческий учет Платные (руб)

Перенос данных из 1С:Управление производственным предприятием 1.3 в 1С:Бухгалтерия предприятия 3.0 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УПП 1.3 (1.3.240.x) и БП 3.0 (3.0.169.x). Правила подходят для версии ПРОФ и КОРП.

35000 руб.

15.12.2021    25764    183    55    

139

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 Платформа 1C v8.2 1С:Комплексная автоматизация 1.х 1С:Управление торговлей 10 1С:Управление производственным предприятием Россия Платные (руб)

Регулярный обмен, выгрузка, перенос из КА 1.1, УПП 1.3, УТ 10.3 для обмена с любыми конфигурациями, поддерживающими обмен в формате EnterpriseData (КД3) - БП 3.0, ERP, КА 2, УТ 11, Розница 2, УНФ 1.6 и другими. Правила для старых и доработанных конфигураций не требуют синхронного обновления и совместимы с новыми и будущими конфигурациями. Обмен по расписанию, через папку, FTP, почту.

16260 руб.

18.02.2016    188764    612    534    

534
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. iov 407 18.04.12 19:33 Сейчас в теме
2. AlexeyK1 14 18.04.12 21:26 Сейчас в теме
(1) Извините, дублировать не стал, чтобы не тратить ваши $m и не обвинили в плагиате, дал ссылку на те правила которые сам брал отсюда, и внес маленькие корректировки, о которых подробно расписал... просто мои правила которые я переделал они сугубо индивидуальны, но могу конечно задублировать с поправками на те, что ссылался.
вожно взять вот эти правила http://infostart.ru/public/120056/ и сделать изменения самому...
удачи
3. iov 407 18.04.12 22:03 Сейчас в теме
(2) Та я не за себя радею... У мну есть все что надо ...
4. orehova123 20.04.12 15:22 Сейчас в теме
хм... спасибо, добавлю себе в закладки, чувствую, что скоро пригодится
5. elena_vash 03.09.13 04:31 Сейчас в теме
Спасибо, пригодилось.
Прикрепленные файлы:
6. FallenMad 12 05.02.14 19:29 Сейчас в теме
Спасибо, очень пригодилось
7. timothy 24.02.14 17:34 Сейчас в теме
Мне пригодилось спасибо
8. mchammer4 25 27.02.14 20:44 Сейчас в теме
Спасибо! сохранил кому то SM
9. Anyu-n 28 02.12.15 15:15 Сейчас в теме
Доброго времени суток! Вылезает ошбка
Ошибка в обработчике события ПослеВыгрузкиДанных (конвертация)
Обработчик = ПослеВыгрузкиДанных (конвертация)
ОписаниеОшибки = Ошибка компиляции при вычислении выражения или выполнении фрагмента кода: {(35,25)}: Переменная не определена (Объект)
ПозицияМодуля = (14)
КСообщенияОбОшибках = 63
10. Anyu-n 28 03.12.15 11:34 Сейчас в теме
Вроде все делала как сказали .... помогите пожалуйста....
Прикрепленные файлы:
11. Отала 21.02.16 13:42 Сейчас в теме
Аналогичная ошибка ,ОписаниеОшибки = Ошибка компиляции при вычислении выражения или выполнении фрагмента кода: {(35,25)}: Переменная не определена (Объект)
Оставьте свое сообщение