Имя: Пароль:
1C
1С v8
КД - а как выгрузить адреса только выгружных контрагентов?
,
0 RomaH
 
naïve
21.05.12
13:46
Т.е. контргаентов выгружаю стандартной выборкой в ПВД

а вот адреса надо выгрузить только выгруженых контрагентов
т.е. они как бы не должны фигурировать в ПВД

откуда чего вызывать?
1 vicof
 
21.05.12
13:47
При выгрузке данных еще выгружать адреса: ВыгрузитьПоПравилу()
2 Абыр
 
21.05.12
13:50
(1) Логичнее в "После выгрузки"
3 vicof
 
21.05.12
13:50
+(1) при выгрузке данных по контрагентам
4 vicof
 
21.05.12
13:50
(2) согласен
5 RomaH
 
naïve
21.05.12
13:54
хм, спасибо
усложняю задачу
адреса в источнике - РС "Контактная информация"
а в приемнике уже табличная часть справочника

тут как быть?
6 Абыр
 
21.05.12
13:57
Табличная часть справочника "Контрагенты" в приемнике?
7 RomaH
 
naïve
21.05.12
13:58
(6) да - по православному - как сейчас принято в БСП
8 RomaH
 
naïve
21.05.12
13:59
ну не контрагенты, а Корреспонденты в документообороте
9 Defender aka LINN
 
21.05.12
13:59
(5) Это задачу упрощает.
10 RomaH
 
naïve
21.05.12
14:02
в ПКО добавляется правило на ТЧ - источник не заполняется
а что и как передать в источник?
11 Абыр
 
21.05.12
14:03
В обработчике "Перед обработкой" ПКГС для ТЧ заполняете КоллекцияОбъектов
12 Абыр
 
21.05.12
14:05
можно просто запросом выдернуть по контрагенту записи из РС и выгрузить в ТЗ, если там никакой особой обработки не требуется для реквизитов. только не забудьте, что имена колонок ТЗ должны совпадать с именами реквизитов ТЧ в приемнике.
13 RomaH
 
naïve
21.05.12
14:07
ок, спаисбо
14 RomaH
 
naïve
21.05.12
14:12
может есть у кого готовые правила с конвертацией из РС контактная со структурой Поле1...10
в ТЧ со структурой "ЗначенияПолей"
15 RomaH
 
naïve
21.05.12
14:17
так правильно будет?

в ПКГС получаю ТЗ запросом по РС контактная с исходной структурой тип Поле1-Поле10

а уже в ПКС "ЗначенияПолей" рисую перед выгрузкойти типа такого:

Результат = "";

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

   Если Не ПустаяСтрока(ЗначениеПоля) Тогда
       Результат = Результат + ?(Результат = "", "", Символы.ПС) + "Индекс" + "=" + СтрЗаменить(ЗначениеПоля, Символы.ПС, Символы.ПС + Символы.Таб);
   КонецЕсли;

   ЗначениеПоля = Источник.Поле2;

   Если Не ПустаяСтрока(ЗначениеПоля) Тогда
       Результат = Результат + ?(Результат = "", "", Символы.ПС) + "Регион" + "=" + СтрЗаменить(ЗначениеПоля, Символы.ПС, Символы.ПС + Символы.Таб);
   КонецЕсли;

   ЗначениеПоля = Источник.Поле3;

   Если Не ПустаяСтрока(ЗначениеПоля) Тогда
       Результат = Результат + ?(Результат = "", "", Символы.ПС) + "Район" + "=" + СтрЗаменить(ЗначениеПоля, Символы.ПС, Символы.ПС + Символы.Таб);
   КонецЕсли;

   ЗначениеПоля = Источник.Поле4;

   Если Не ПустаяСтрока(ЗначениеПоля) Тогда
       Результат = Результат + ?(Результат = "", "", Символы.ПС) + "Город" + "=" + СтрЗаменить(ЗначениеПоля, Символы.ПС, Символы.ПС + Символы.Таб);
   КонецЕсли;

   ЗначениеПоля = Источник.Поле5;

   Если Не ПустаяСтрока(ЗначениеПоля) Тогда
       Результат = Результат + ?(Результат = "", "", Символы.ПС) + "НаселенныйПункт" + "=" + СтрЗаменить(ЗначениеПоля, Символы.ПС, Символы.ПС + Символы.Таб);
   КонецЕсли;

   ЗначениеПоля = Источник.Поле6;

   Если Не ПустаяСтрока(ЗначениеПоля) Тогда
       Результат = Результат + ?(Результат = "", "", Символы.ПС) + "Улица" + "=" + СтрЗаменить(ЗначениеПоля, Символы.ПС, Символы.ПС + Символы.Таб);
   КонецЕсли;

   ЗначениеПоля = Источник.Поле7;

   Если Не ПустаяСтрока(ЗначениеПоля) Тогда
       Результат = Результат + ?(Результат = "", "", Символы.ПС) + "Дом" + "=" + СтрЗаменить(ЗначениеПоля, Символы.ПС, Символы.ПС + Символы.Таб);
   КонецЕсли;
   
   ЗначениеПоля = Источник.Поле8;

   Если Не ПустаяСтрока(ЗначениеПоля) Тогда
       Результат = Результат + ?(Результат = "", "", Символы.ПС) + "Корпус" + "=" + СтрЗаменить(ЗначениеПоля, Символы.ПС, Символы.ПС + Символы.Таб);
   КонецЕсли;

   ЗначениеПоля = Источник.Поле9;

   Если Не ПустаяСтрока(ЗначениеПоля) Тогда
       Результат = Результат + ?(Результат = "", "", Символы.ПС) + "Квартира" + "=" + СтрЗаменить(ЗначениеПоля, Символы.ПС, Символы.ПС + Символы.Таб);
   КонецЕсли;
   
   ЗначениеПоля = Источник.Поле7;

   Если Не ПустаяСтрока(ЗначениеПоля) Тогда
       ЗначениеПоля = "дом";
       Результат = Результат + ?(Результат = "", "", Символы.ПС) + "ТипДома" + "=" + СтрЗаменить(ЗначениеПоля, Символы.ПС, Символы.ПС + Символы.Таб);
   КонецЕсли;
   
   ЗначениеПоля = Источник.Поле8;

   Если Не ПустаяСтрока(ЗначениеПоля) Тогда
       ЗначениеПоля = "корпус";
       Результат = Результат + ?(Результат = "", "", Символы.ПС) + "ТипКорпуса" + "=" + СтрЗаменить(ЗначениеПоля, Символы.ПС, Символы.ПС + Символы.Таб);
   КонецЕсли;
   
   ЗначениеПоля = Источник.Поле9;

   Если Не ПустаяСтрока(ЗначениеПоля) Тогда
       ЗначениеПоля = "кв.";
       Результат = Результат + ?(Результат = "", "", Символы.ПС) + "ТипКвартиры" + "=" + СтрЗаменить(ЗначениеПоля, Символы.ПС, Символы.ПС + Символы.Таб);
   КонецЕсли;
   
ИначеЕсли Источник.Тип = Перечисления.ТипыКонтактнойИнформации.Телефон Тогда
   
   ЗначениеПоля = Источник.Поле3;

   Если Не ПустаяСтрока(ЗначениеПоля) Тогда
       Результат = Результат + ?(Результат = "", "", Символы.ПС) + "НомерТелефона" + "=" + СтрЗаменить(ЗначениеПоля, Символы.ПС, Символы.ПС + Символы.Таб);
   КонецЕсли;

КонецЕсли;

Значение = Результат;