Имя: Пароль:
1C
1С v8
КД: Передать значение реквизита из источника в приемник
0 geek
 
12.11.13
22:18
Добрый вечер, Коллеги!

Впервые сталкиваюсь с КД, и никак не могу разобраться с тем, как получить данные в приемнике.

Обмен между 8.1 в 8.2 УТ 11.
В справочнике 8.1 есть реквизит Цвет, который нужно передать в табличную часть доп. свойств в УТ 11. Не могу понять как получить значение реквизита Цвет, скажем, в обработчике "После загрузки объекта". Через параметры пробовал, но у меня не получается. Даже заполненная текстовая строчка в приемнике отображается как пустая строка.

Пока написал следующий код в обработчике "После загрузки объекта":

ТаблицаСвойствИЗначений = Новый ТаблицаЗначений;
ТаблицаСвойствИЗначений.Колонки.Добавить("Свойство");
ТаблицаСвойствИЗначений.Колонки.Добавить("Значение");

Если Объект <> Неопределено Тогда
    Объект.Записать();
    СтрТабСвойств = ТаблицаСвойствИЗначений.Добавить();    
    СтрТабСвойств.Свойство = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию(Параметры.Цвет.Владелец.Наименование);
    СтрТабСвойств.Значение = Параметры.Цвет.Наименование;
    
    УправлениеСвойствами.ЗаписатьСвойстваУОбъекта(Объект, ТаблицаСвойствИЗначений);
КонецЕсли;
1 GenV
 
12.11.13
22:41
(0) Если перадаешь через параметры объекта, то должно быть:
СтрТабСвойств.Значение = ПараметрыОбъекта.Цвет.Наименование;

Параметры - это глобальные параметры.
ЗЫ Это есть в описание обработчика в справке в КД
2 geek
 
12.11.13
23:11
(1) Что сегодня только не читал, с тем что вы описали не сталкивался. А свойства в конвертации передавать как параметр или как реквизит?
3 GenV
 
12.11.13
23:26
(2) Вообще, это я для твоего описания написал. Ч учетом того, что ты передаешь "Цвет" как свойство-параметр и указываешь для него соотв. ПКО.
4 geek
 
12.11.13
23:38
Что есть "соотв. ПКО"? У меня свойство без приемника. Я его хочу разобрать уже после выгрузок. Т.к. Мне нужна ссылка на созданный/найденный элемент. В данном случае владелец.
5 GenV
 
12.11.13
23:45
(4) соотв. - соответствующее. ПКО - правило конвертации объекта.
Ты указал !свойство-параметр! "Цвет" для ПКО Номенклатуры (или для чего ты свойство передаешь). Указал для него правило. Если правило не указал и КД его не найдет по значению, то и значение цвета не сконвертируется. Если все сделал правильно, в то в "ПослеЗагрузки" КПО (допустим номенклдатуры) будет доступен заполненный ПараметрыОбъекта.Цвет.
Если ты используешь глобальный обработчик "После загрузки объекта", то там еще и тип объекта нужно проверять, т.к. он для всех ПКО.
6 geek
 
13.11.13
14:09
(5) Нихрена не выходит. Указал для ПКС правило где задал:

Значение = Источник.Цвет.Наименование;


У ПКС поставил - Выгрузить в параметр. Ни в обработчиках ПКО ни в обработчиках Конвертации - нигде нельзя получить параметры. Мне бы пример, что-то делаю не так. Уже 1.5 дня бьюсь, но не пойму...
7 geek
 
13.11.13
14:10
Господи, распространенная задача, перенести значения реквизитов в дополнительные свойства, и ни одного примера не могу найти в интернете.