Обмен УТ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 = Строка(Страна);
        КонецЕсли;

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

    КонецЕсли;

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




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

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

См. также

SALE! 10%

Перенос данных 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 24894 руб.

12.06.2017    148490    864    302    

455

Перенос данных 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.21.x).

35000 руб.

23.07.2020    58797    284    75    

224

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

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

35000 руб.

15.12.2021    27861    198    58    

153

SALE! 10%

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

Перенос данных из 1С:Управление производственным предприятием 1.3 в 1С:Бухгалтерия предприятия 3.0 с помощью правил обмена | Можно выполнить переход с УПП на БП 3 или запускать выгрузку данных за выбранный период времени | Переносятся документы, начальные остатки и вся справочная информация | Есть фильтр по организации и множество других параметров выгрузки | Поддерживается несколько сценариев работы: как первичный полный перенос, так и перенос только новых документов | Перенос данных возможен в "1С: Бухгалтерия 3.0" версии ПРОФ, КОРП или базовую | Переход с "1С: УПП1.3" / "1С:КА 1.1" на "1С:БП3.0" с помощью правил конвертации будет максимально комфортным! | Можно бесплатно проверить перенос на вашем сервере!

48278 43450 руб.

25.02.2015    175165    319    267    

388

Перенос данных 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    191412    626    536    

545

SALE! 10%

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

Перенос данных из КА 1.1 в КА 2 | из КА 1.1 в УТ 11 | Воспользовались более 367 компаний! | Переносятся все возможные виды документов, начальных остатков и вся справочная информация из "1С:КА 1.1" в "1С:КА 2.х" / "1С:УТ 11" | Разработан в формате КД 2 (правила конвертации данных) | Фильтр по организациям при выгрузке | Выбор разных алгоритмов выгрузки начальных остатков | Можно проверить перенос до покупки!

55778 50200 руб.

04.12.2015    194274    254    351    

409

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    39738    112    73    

106

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

Продукт "Интеграция с 1С:Документооборот" позволяет использовать функции программы "1С:Документооборот 8" напрямую из учетной системы (1С:УПП; 1С:КА, 1С:УТ 10.3, 1С:БГУ 1.0, 1С:ЗБУ 1.0, 1С:УПП для Казахстана и отраслевых решений, разработанных на их основе) на платформе "1С:Предприятие 8": выполнять и ставить задачи, просматривать документы, скан-копии и прочие файлы, штрих-кодировать документы отправлять письма, вести учет рабочего времени - не входя в "1С:Документооборот 8", работая в одной программе, что значительно сокращает время и делает работу более комфортной и эффективной. Продукт прошел сертификацию 1С-Совместимо

110400 руб.

11.06.2015    59198    38    20    

47
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. iov 407 18.04.12 19:33 Сейчас в теме
2. AlexeyK1 15 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)}: Переменная не определена (Объект)
Оставьте свое сообщение