Вход | Регистрация

1С:Предприятие ::

Метки: 

Запись свойств номенклатуры.

Я
   MAPATNK2
 
10.04.18 - 08:22
добрый день, для выгрузки некоторых свойств на сайт 1С-Битрикс, понадобилось программно заполнить данные свойства в 1с из XML файла. Парсинг написан (копипастом), осталось понять, как заполнить свойства номенклатуры. Создал (вручную) несколько свойств объектов для справочника номенклатуры, начал заполнять регистр:
ВидСвойства = ПланыВидовХарактеристик.СвойстваОбъектов.НайтиПоНаименованию("Детальная картинка"); 
Запись = РегистрыСведений.ЗначенияСвойствОбъектов.СоздатьМенеджерЗаписи(); 
Запись.Прочитать(); 
Запись.Объект = Номенклатурнаяпозиция.Ссылка; 
Запись.Свойство = ВидСвойства; 
Запись.Значение = стр.ДетальнаяКартинка; 
Запись.Записать();
В регистр записалось, отображается на форме элемента номенклатуры, но при нажатии, двойным кликом, свойство пустое. Что я не доделал, и как доделать, подскажите пожалуйста? В итоге получается, что свойства только отображаются, как заполненные, но значения пустые и на сайт ничего не загружается.
 
  Рекламное место пустует
   MAPATNK2
 
1 - 10.04.18 - 08:34
Нашел пример заполнения справочника "Значение свойств объектов", немного не понимаю, где устанавливать привязку к номенклатуре?

 ЗначениеРазмер  = Справочники.ЗначенияСвойствОбъектов.НайтиПоНаименованию(СокрЛП(ФайлОбмена.RAZM),Истина,,Размер);
    Если ЗначениеРазмер.Пустая() Тогда 
        НовоеЗначение = Справочники.ЗначенияСвойствОбъектов.СоздатьЭлемент();
        НовоеЗначение.Владелец     = Размер.Ссылка;
        НовоеЗначение.Наименование = ФайлОбмена.RAZM;
        НовоеЗначение.Записать();
        ЗначениеРазмер = НовоеЗначение.Ссылка;
    КонецЕсли;
   Strogg
 
2 - 10.04.18 - 08:38
(0), (1), все намешал. У РС Значения свойств Объектов есть Объект (номенклатура, в нашем случае), Свойство(ПВХ свойства объектов с наименованием "Детальная картинка" в нашем случае) и значение, которое ты задавал при создании элемента ПВХ. Если ты сопоставил свою детальную картинку со справочником номенклатуры и задал ей тип Справочник.Значения свойств объектов, тогда у тебя все должно получиться. Итак, все ли ты сделал так, как было описано выше?
   MAPATNK2
 
3 - 10.04.18 - 08:44
(2) Как видно из 1 записи, я заполнил регистр сведений. Но я не понял "Если ты сопоставил свою детальную картинку со справочником номенклатуры и задал ей тип Справочник.Значения свойств объектов, тогда у тебя все должно получиться." этого. Как сопоставить? Есть какая-нибудь инструкция по программному добавлению. В интернете не могу ничего полезного найти. Везде все намешано, вот и запутался. Я записал регистр, в объект добавил номенклатуру в свойство нужно ПВХ, в значение - ссылку на картинку. Когда захожу на форму элемента номенклатуры в свойствах отображаются ссылки, но при двойном нажатии на свойство, оно становится пустым и возможности выбрать ссылку, которая там только что отображалась - нет. Как быть?
   MAPATNK2
 
4 - 10.04.18 - 08:46
2-ая запись то вообще нужна?
   Strogg
 
5 - 10.04.18 - 08:48
(3) у тебя тип значения характеристики какой??? Строка? Справочник.ЗначенияСвойствОбъектов? Если строка - то достаточно в "значение" записать строку с адресом картинки. Если элемент справочника - то сначала нужно его создать, а потом в значение пихать ссылку на созданный тобою элемент.
Че непонятного-то?:)
   MAPATNK2
 
6 - 10.04.18 - 08:53
(5) Мне не понятно, как программно заполнить свойства для номенклатуры. И почему, при добавлении в регистр, они отображаются на форме, но значения свойств остаются пустыми. Фигня какая-то. Может есть у кого инструкция? Вообще ничего не понятно. В регистр добавил, там все есть, в справочник то как добавить, если там привязки к номенклатуре нет.
   Strogg
 
7 - 10.04.18 - 09:02
(6) ёшкин кот.
1)операции - ПланВидовХарактеристик.СвойстваОбъектов. Открой свое свойство и в качестве реквизита "назначение" выбери справочник номенклатуры.
2) там же, выбери тип свойства, строка или справочник.ЗначенияСвойствОбъектов
3) необходимо записать элемент!
4) см (5)
5) ???
6) PROFIT!
   d4rkmesa
 
8 - 10.04.18 - 09:04
(6) Скорее всего собака порылась в значении, которое вы пытаетесь присвоить "Запись.Значение = стр.ДетальнаяКартинка; ". Скорее всего его нет в типе значений характеристик ПВХ.
   MAPATNK2
 
9 - 10.04.18 - 09:14
(7) Проблема была в типе значения. Выставил строку, все получилось. Куча примеров, все говорят о разном, поэтому и запутался. Спасибо.


Список тем форума
  Рекламное место пустует
Компьютер — устройство разработанное для ускорения и автоматизации человеческих ошибок.
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует