Документооборот-Бухгалтерия правила обмена Контрагенты(контактная информация)

1. timrusanov 28.10.13 15:00 Сейчас в теме
Добрый день, коллеги.
Столкнулся с необходимостью выгрузки контрагентов между Документооборот и Бухгалтерией 2.0.
Вся проблема в том что контактная информация в документообороте хранится в табличной части "Контактная информация", а в бухгалтерии это регистр сведений.
Кто сталкивался с подобными задачами или имеет примеры правил, на данный момент удалось перенести контактную информацию в качестве предстваления, без разбивки по полям, а хочется чтобы разбивка по полям была.
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Gray-SV-02 28.10.13 15:38 Сейчас в теме
в папке с шаблонами в ДО есть правила обмена между Бух 20 и ДО
3. Borisych 500 29.10.13 03:47 Сейчас в теме
релизы конфигураций и направления - ДО - БП и/или БП - ДО?
7. timrusanov 29.10.13 10:46 Сейчас в теме
(3) Borisych, Добрый день. Направление ДО (источник, ред. 1.2 6.1 корп)->Бух (приемник 2.0) справочник корреспонденты-контрагенты в части контактной информации.
4. Gray-SV-02 29.10.13 07:05 Сейчас в теме
5. Gray-SV-02 29.10.13 07:06 Сейчас в теме
ну в любом случае так переписать проще, когда есть пример и уже готовый алгоритм преобразования контактной информации
6. timrusanov 29.10.13 10:38 Сейчас в теме
Да, данная информация помогла, единственная трудность с которой столкнулся это соотнести поля у разных типов контактной информации,но по прежнему загружается только представление разбивки по полеям нет.Не могу понять, что не так.

Получился следующий кусок кода, размещение ПКО Контрагенты после выгрузки:

Если НЕ Источник.ЭтоГруппа Тогда

Запрос = Новый Запрос("ВЫБРАТЬ
| КорреспондентыКонтактнаяИнформация.Ссылка КАК Объект,
| КорреспондентыКонтактнаяИнформация.Тип,
| КорреспондентыКонтактнаяИнформация.Вид,
| КорреспондентыКонтактнаяИнформация.Представление,
| КорреспондентыКонтактнаяИнформация.ЗначенияПолей,
| КорреспондентыКонтактнаяИнформация.Страна,
| КорреспондентыКонтактнаяИнформация.Регион,
| КорреспондентыКонтактнаяИнформация.Город,
| ИСТИНА КАК Активность
|ИЗ
| Справочник.Корреспонденты.КонтактнаяИнформация КАК КорреспондентыКонтактнаяИнформация
|ГДЕ
| КорреспондентыКонтактнаяИнформация.Ссылка = &Ссылка");

Запрос.УстановитьПараметр("Ссылка", Источник.Ссылка);

Выборка = Запрос.Выполнить().Выбрать();


Пока Выборка.Следующий() Цикл

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

Если Выборка.Тип = Перечисления.ТипыКонтактнойИнформации.Адрес Тогда

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

ДанныеДляЗаполненияКИ.ТипДома = УправлениеКонтактнойИнформацией.ПолучитьЗначениеКонтактнойИнформации(Выборка.ЗначенияПолей,"ТипДома"); ;
ДанныеДляЗаполненияКИ.ТипКорпуса = УправлениеКонтактнойИнформацией.ПолучитьЗначениеКонтактнойИнформации(Выборка.ЗначенияПолей,"ТипКорпуса"); ;
ДанныеДляЗаполненияКИ.ТипКвартиры = УправлениеКонтактнойИнформацией.ПолучитьЗначениеКонтактнойИнформации(Выборка.ЗначенияПолей,"ТипКвартиры");;


ИначеЕсли Выборка.Тип = Перечисления.ТипыКонтактнойИнформации.Телефон Тогда

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

ИначеЕсли Выборка.Тип = Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты Тогда

ДанныеДляЗаполненияКИ.Представление = УправлениеКонтактнойИнформацией.ПолучитьЗначениеКонтактнойИнформации(Выборка.ЗначенияПолей,"АдресЭП");

КонецЕсли;

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

КонецЦикла;

КонецЕсли;
19. Gray-SV-02 30.10.13 07:44 Сейчас в теме
(6) timrusanov, мне больше нравится исходный вариант
в коде например
Если Выборка.Тип = Перечисления.ТипыКонтактнойИнформации.Адрес Тогда 

ДанныеДляЗаполненияКИ.Поле1 = УправлениеКонтактнойИнформацией.ПолучитьЗначениеКонтактнойИнформации(Выборка.ЗначенияПолей,"Индекс"); 

во-первых, если это вызывается процедура из источника (т.е. ДО), то там в качестве 2-ого параметра должна выступать не строка, а ссылка на справочник ВидыКонтактнойИнформации
timrusanov; +1 Ответить
20. timrusanov 30.10.13 09:55 Сейчас в теме
(19) Gray-SV-02,Спасибо, скорее всего по этому мне и не заполняет по полям.
Вчера все получилось, загрузить, использовал другую процедуру (УправлениеКонтактнойИнформацией.ПреобразоватьСтрокуВСписокПолей(Выборка.ЗначенияПолей)), которая вызывается тоже из ДО, выгружу окончательный вариант, может кому еще пригодится.
21. fishfreddy 07.11.13 18:00 Сейчас в теме
(20) timrusanov,можно ли увидеть выгрузочку?)уж очень интересно)
8. Gray-SV-02 29.10.13 11:50 Сейчас в теме
ну сначала нужно проверить все ли выгрузилось, я так понимаю что после выгрузки для каждого элемента спр. Корреспонденты данные о КИ хранятся в структуре ДанныеДляЗаполненияКИ.
А после загрузки или во время там какой код?
9. timrusanov 29.10.13 12:00 Сейчас в теме
(8) Gray-SV-02, Я использую выгрузку по правилу,а регистр сведений по данному объекту заполняю из внешних данных(структура).
Данные переносятся проблема в том, что почему то не разбиваются по полям, а переносятся в качестве представления.
10. Gray-SV-02 29.10.13 12:11 Сейчас в теме
может не у всех ПКС стоит флаг Получить из входящих данных?
11. timrusanov 29.10.13 12:45 Сейчас в теме
У всех, проверил, нашел правила из УТ11 в Бух 2.0, принцип выгрузки КИ должен быть идентичен, это как вариант.
12. timrusanov 29.10.13 13:20 Сейчас в теме
Блин и в правилах УТ11-БП 2.0 ошибка, не найдена процедура ВыгрузитьРегистр, на ней теперь все спотыкается.
13. Gray-SV-02 29.10.13 13:35 Сейчас в теме
это процедура какой то из этих конфигураций? или в правилах обмена
timrusanov; +1 Ответить
14. timrusanov 29.10.13 14:11 Сейчас в теме
Эта процедура встроеная в КД (КД-Обработки-ВыгрузкиОбработчиков-Макеты-ОбщиеПроцедурыиФункции-ВыгрузитьРегистр), она обращается к ОбщиеПроцедурыФункции.ВыгрузитьРегистр(НаборЗаписейДляВыгрузки, Правило, ВходящиеДанные, НеВыгружатьОбъектыПоСсылкам, ИмяПКО, ПравилоВыгрузкиДанных);
Т.е. по сути передает управление и обращается к конфигурвации из которой выгружается.
Проблема в том что данная процедура есть в ДО, но в обработках "КонвертацияОбъектовИнформационныхБаз"-ВыгрузитьРегистр.
15. timrusanov 29.10.13 14:34 Сейчас в теме
Сохранил эту обработку как внешнюю, загрузил ее в свои правила обмена как подключаемые обработки, но не могу обратиться теперь к ней.(((
16. Gray-SV-02 29.10.13 15:38 Сейчас в теме
можно посмотреть сами правила?
17. timrusanov 29.10.13 15:57 Сейчас в теме
(16) Gray-SV-02,Вот правила обмена.
18. timrusanov 29.10.13 17:51 Сейчас в теме
а вот первый вариант, выгружает только в представление.
22. timrusanov 11.11.13 17:54 Сейчас в теме
вариант того, что получилось.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот