|
Записать массив в доп реквизит | ☑ | ||
---|---|---|---|---|
0
vondbond73
11.10.24
✎
15:14
|
Пытаюсь передать массив артикулов в доп реквизит типа строка. При попытке выгрузки появляется ошибка "НедостаточноФактическихПараметров". Кто может подсказать, что не так?
Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | НоменклатураРекомендуемыеТовары.Наименование.Артикул КАК Артикул |ИЗ | Справочник.Номенклатура.РекомендуемыеТовары КАК НоменклатураРекомендуемыеТовары |ГДЕ | НоменклатураРекомендуемыеТовары.Ссылка = &Ссылка"; Запрос.УстановитьПараметр("Ссылка", Объект.Ссылка); МассивАртикулы = Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Артикул"); ДопСвойство = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("Рекомендуемый_Товар", Истина); УправлениеСвойствами.ЗаписатьСвойстваУОбъекта(СтрСоединить(МассивАртикулы, ";")); |
|||
1
Волшебник
11.10.24
✎
15:14
|
В описании ошибки указан номер строки. Ищите там.
|
|||
2
AAA
11.10.24
✎
15:19
|
Вы даже требуемое Свойство не передали в метод записи свойства
|
|||
3
vondbond73
11.10.24
✎
15:25
|
Пытаюсь найти другой способ заполнения доп реквизита, так как используя эту процедуру приходится много чего дописывать сверху
|
|||
4
Волшебник
11.10.24
✎
15:31
|
Используйте менеджер регистра сведений и пишите данные в РС ЗначенияСвойствОбъектов
|
|||
5
Волшебник
11.10.24
✎
15:32
|
Кстати, колонку "Наименование" лучше переименовать в "Товар" или "Номенклатура", а то "Наименование.Артикул" смотрится дико.
|
|||
6
Мультук
гуру
11.10.24
✎
15:33
|
(0)
Возможно, вам нужно проверить зрение // Параметры: // ВладелецСвойств - ЛюбаяСсылка - например, СправочникСсылка.Номенклатура, ДокументСсылка.ЗаказПокупателя и т.д. // ТаблицаСвойствИЗначений - ТаблицаЗначений: // * Свойство - ПланВидовХарактеристикСсылка.ДополнительныеРеквизитыИСведения - свойство владельца. // * Значение - Произвольный - любое значение, допустимое для свойства (указано в элементе свойства). Процедура ЗаписатьСвойстваУОбъекта(ВладелецСвойств, ТаблицаСвойствИЗначений) |
|||
7
Мультук
гуру
11.10.24
✎
15:44
|
(3)
Новая функция 10-15 строк 1) ПолучитьОбъект() 2) Найти/добавить строку 3) В строке из пункта 2 поменять значение 4) ЗаписатьОбъект Блокировки, Попытка/Исключение и вообще пункты 1-4 скопировать из УправлениеСвойствами.ЗаписатьСвойстваУОбъекта(..) -- там уже это всё написано |
|||
8
craxx
11.10.24
✎
15:47
|
(0) За "НайтиПоНаименованию" нужно бить долго и больно.
|
|||
9
Волшебник
11.10.24
✎
15:59
|
(8) А массив артикулов в строковом свойстве через ";" Вас не смущает?
|
|||
10
Мультук
гуру
11.10.24
✎
16:01
|
(8)
Рука устанет :-) P.S. Я знаю два решения (еще константы, но это по сути пункт 1) 1) ПВХ = Справочники.мистаССылкиНаВсякое.ДопРеквизит_Рекомендуемый_Товар.Значение; 2) ПВХ = XMLЗначение(Тип("ПланВидовХарактеристикСсылка.ДополнительныеРеквизитыИСведения"), "5f308d7c-ca09-11eb-96ed-3cecef453c5d");//Рекомендуемый_Товар Хард-ссылка. Железобетонно, но чисто для "своих дописок" Ну и завернуть это в функцию |
|||
11
Мультук
гуру
11.10.24
✎
16:01
|
(9)
Я думаю, задача автора сунуть это свойство вместе с номеклатурой, куда-нибудь на сайт (Битрикс и т.п.). Вот он и выкручивается, как может |
|||
12
Волшебник
11.10.24
✎
16:01
|
(10) можно просто в ПВХ сделать этот элемент предопределённым, тогда так:
СвойствоРекомендуемыйТовар = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.РекомендуемыйТовар; |
|||
13
программистище
11.10.24
✎
16:13
|
ну если это УТ, то там есть идентификатор у ДопРеквизита для разработчика
а так я делал справочник предопределенныезначения (когда в расширениях нельзя было предопределенные создавать) И общий модуль получения его и все в режиме предприятия в таком случае работает для любых ссылок вплоть до создания шаблонов заполнения документов |
|||
14
vondbond73
22.10.24
✎
13:51
|
(11) Да. Именно для этого. Разрабы сайта попросили передавать в доп реквизите артикулы через ; для того чтобы рекомендации правильно составлять.
Временно забыли про данную задачу, но пришло время вернуться... |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |