Имя: Пароль:
1C
 
Конвертация данных выгрузитьпоправилу
0 kolts23381
 
01.10.16
19:58
В базе источнике есть штрихкоды информационных карт хранятся в регистре сведений. Есть измерение владелец. Тип данных СправочникСсылка.Номенклатура,СправочникСсылка.ФизическиеЛица и СправочникСсылка.СерийныеНомера.
В приемнике дисконтные карты хранятся в табличной части справочника клиенты.
Делаю так:
В правилах выгрузки данных для регистра сведений штрихкоды в обработчик перед выгрузкой помещаю код:

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

ФизЛицоВКлиентаЗаполнениеКарт - ПКО для Справочника клиенты только для заполнения табличной части.
Добавляю ПКС для табличной части карты. Ставлю галочку получить из входящих данных.
Записывает только в том случае если в обработчик перед загрузкой для ПКС реквизита табличной части добавить
значение = ОбъектКоллекции.<ИмяРеквизита>;
Что из себя представляют входящие данные, вроде для табличной части массив структур и тогда все само подхватится?
Как сделать чтоб происходил поиск по идентификатору и не создавались новые объекты а только модифицировались существующие? Если ставить галочку не создавать новый объект в примнике, то не переносится ничего, а если убрать то создаются новые элменты справочника.
1 kolts23381
 
01.10.16
20:35
Все разобрался. Уже не первый раз несколько часов не получается, когда напишу на форум нахожу решение сам в течении пяти минут. Все я делал правильно но ошибся по невнимательности. Надо так  ВыгрузитьПоПравилу(Объект.Владелец.ВладелецКарты,,ВходящиеДанные,,"ФизЛицоВКлиентаЗаполнениеКарт")