|
Характеристика номенклатуры | ☑ | ||
---|---|---|---|---|
0
clevers
04.08.14
✎
20:58
|
Использую вот такой код (тут нашел). Сама характеристика создается, а вот значения свойств не записываются. Где ошибка? (конфа КОмплексная автоматизация)
Характеристика = Справочники.ХарактеристикиНоменклатуры.СоздатьЭлемент(); Характеристика.Владелец = Товар.Ссылка; Размер = ПланыВидовХарактеристик.СвойстваОбъектов.НайтиПоНаименованию("Размер"); Рост = ПланыВидовХарактеристик.СвойстваОбъектов.НайтиПоНаименованию("Рост"); Цвет = ПланыВидовХарактеристик.СвойстваОбъектов.НайтиПоНаименованию("Цвет",истина); ЗначениеРазмер = Справочники.ЗначенияСвойствОбъектов.НайтиПоНаименованию(СокрЛП(ФайлОбмена.RAZM),Истина,,Размер); Если ЗначениеРазмер.Пустая() Тогда НовоеЗначение = Справочники.ЗначенияСвойствОбъектов.СоздатьЭлемент(); НовоеЗначение.Владелец = Размер.Ссылка; НовоеЗначение.Наименование = ФайлОбмена.RAZM; НовоеЗначение.Записать(); ЗначениеРазмер = НовоеЗначение.Ссылка; КонецЕсли; ЗначениеРост = Справочники.ЗначенияСвойствОбъектов.НайтиПоНаименованию(СокрЛП(ФайлОбмена.ROST),Истина,,Рост); Если ЗначениеРост.Пустая() Тогда НовоеЗначение = Справочники.ЗначенияСвойствОбъектов.СоздатьЭлемент(); НовоеЗначение.Владелец = Рост.Ссылка; НовоеЗначение.Наименование = ФайлОбмена.ROST; НовоеЗначение.Записать(); ЗначениеРост = НовоеЗначение.Ссылка; КонецЕсли; ЗначениеЦвет = Справочники.ЗначенияСвойствОбъектов.НайтиПоНаименованию(СокрЛП(ФайлОбмена.COL),Истина,,Цвет); Если ЗначениеЦвет.Пустая() Тогда НовоеЗначение = Справочники.ЗначенияСвойствОбъектов.СоздатьЭлемент(); НовоеЗначение.Владелец = Цвет.Ссылка; НовоеЗначение.Наименование = ФайлОбмена.COL; НовоеЗначение.Записать(); ЗначениеРазмер = НовоеЗначение.Ссылка; КонецЕсли; КоллекцияЗначений = Новый СписокЗначений(); КоллекцияЗначений.Добавить(ЗначениеРазмер); КоллекцияЗначений.Добавить(ЗначениеРост); КоллекцияЗначений.Добавить(ЗначениеЦвет); Наим = Характеристика.СформироватьНаименование(КоллекцияЗначений); Характеристика.Наименование = Наим; Характеристика.Записать(); ТаблицаДляЗаписиВРегистр = Новый ТаблицаЗначений; ТаблицаДляЗаписиВРегистр.Колонки.Добавить("Свойство"); ТаблицаДляЗаписиВРегистр.Колонки.Добавить("Значение"); НоваяСтрока = ТаблицаДляЗаписиВРегистр.Добавить(); НоваяСтрока.Свойство = Размер; НоваяСтрока.Значение = ЗначениеРазмер; НоваяСтрока = ТаблицаДляЗаписиВРегистр.Добавить(); НоваяСтрока.Свойство = Рост; НоваяСтрока.Значение = ЗначениеРост; НоваяСтрока = ТаблицаДляЗаписиВРегистр.Добавить(); НоваяСтрока.Свойство = Цвет; НоваяСтрока.Значение = ЗначениеЦвет; ЗаписьЗначенияВРегистр=РегистрыСведений.ЗначенияСвойствОбъектов.СоздатьМенеджерЗаписи(); НаборЗаписейЗначенияСвойств = РегистрыСведений.ЗначенияСвойствОбъектов.СоздатьНаборЗаписей(); Для каждого Строка Из ТаблицаДляЗаписиВРегистр Цикл Если НЕ ЗначениеНеЗаполнено(Строка.Значение) Тогда Запись = НаборЗаписейЗначенияСвойств.Добавить(); Запись.Объект = Характеристика.Ссылка; Запись.Свойство = Строка.Свойство; Запись.Значение = Строка.Значение; КонецЕсли; КонецЦикла; НаборЗаписейЗначенияСвойств.Записать(); |
|||
1
Pashkaa
04.08.14
✎
21:28
|
// Функция записывает значения свойств в информационную базу.
// // Параметры: // Нет. // // Возвращаемое значение: // Истина - если значения свойств были записаны, или их не требуется записывать // Ложь - если значения свойств не удалось записать. // Функция ЗаписатьЗначенияСвойств() Экспорт НаборЗаписейЗначенияСвойств = РегистрыСведений.ЗначенияСвойствОбъектов.СоздатьНаборЗаписей(); Для каждого Строка Из СвойстваИЗначения Цикл Если ЗначениеЗаполнено(Строка.Значение) Тогда Запись = НаборЗаписейЗначенияСвойств.Добавить(); Запись.Объект = ОбъектОтбораЗначений; Запись.Свойство = Строка.Свойство; Запись.Значение = Строка.Значение; КонецЕсли; КонецЦикла; НаборЗаписейЗначенияСвойств.Отбор.Объект.Установить(ОбъектОтбораЗначений); Попытка НаборЗаписейЗначенияСвойств.Записать(); Исключение #Если Клиент Тогда Предупреждение("Не удалось записать значения свойств:" + Символы.ПС + ОписаниеОшибки()); #КонецЕсли Возврат Ложь; КонецПопытки; Возврат Истина; КонецФункции //////////////////////////////////////////////////////////////////////////////// // ПРОЦЕДУРЫ И |
|||
2
Pashkaa
04.08.14
✎
21:29
|
Ключевой момент который пропущен у тебя
НаборЗаписейЗначенияСвойств.Отбор.Объект.Установить(ОбъектОтбораЗначений); |
|||
3
clevers
04.08.14
✎
21:52
|
у меня в конфе у НаборЗаписейЗначенияСвойств.Отбор нету Объект.Установить...
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |