Программно записать значение свойства справочника номенклатура
По теме из базы знаний
- Загрузка номенклатуры c картинками (несколько потоков одновременно) и сопутствующими данными в базу и любые документы из yml, xls, xlsx, xlsm, ods, ots, csv для УТ 10.3, УТ 11 (все), БП 3, КА 2, ERP 2, УНФ 1.6/3.0, Розница 2
- Пример переноса справочников, документов и движений через Эксель и "Конвертацию данных 2" из оптовой учетной системы 1С 7.7 Комплексной 4.2 и розничной учетной системы Рарус Торговый комплекс -> в 1С 8.3 ЕРП 2.4 (расширение и дополнительные реквизиты)
- Программное создание характеристик с дополнительными реквизитами в УНФ 1.6
- Программный интерфейс для доработки форм
- Программное создание элементов в форме при использовании расширения
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Например:
Эл=Справочники.Номенклатура.НайтиПоКоду("НомерКода").ПолучитьОбъект();
Эл.Свойство=ВашеЗначение;
Эл.Записать();
Эл=Справочники.Номенклатура.НайтиПоКоду("НомерКода").ПолучитьОбъект();
Эл.Свойство=ВашеЗначение;
Эл.Записать();
СтруктураСвойства = Новый Структура;
СтруктураСвойства.Вставить("Свойство",ИмяСвойства);
СтруктураСвойства.Вставить("Значение",ЗначениеСвойства);
ЗаписатьЗначенияСвойствА(Элем,СтруктураСвойства);
Функция ЗаписатьЗначенияСвойствА(Объект,СтруктураСвойства)
НаборЗаписейЗначенияСвойств = РегистрыСведений.ЗначенияСвойствОбъектов.СоздатьНаборЗаписей();
Если ЗначениеЗаполнено(СтруктураСвойства.Значение) Тогда
Запись = НаборЗаписейЗначенияСвойств.Добавить();
Запись.Объект = Объект.Ссылка;
Свойство=ПланыВидовХарактеристик.СвойстваОбъектов.НайтиПоНаименованию(СтруктураСвойства.Свойство);
Запись.Свойство = Свойство.Ссылка;
Запись.Значение = СтруктураСвойства.Значение;
КонецЕсли;
НаборЗаписейЗначенияСвойств.Отбор.Объект.Установить(Объект.Ссылка);
НаборЗаписейЗначенияСвойств.Отбор.Свойство.Установить(Свойство); //.Ссылка
Попытка
НаборЗаписейЗначенияСвойств.Записать();
Исключение
Предупреждение("Не удалось записать значения свойств:" + Символы.ПС + ОписаниеОшибки());
Возврат Ложь;
КонецПопытки;
Возврат Истина;
КонецФункции
Показать Запись.Свойство = Свойство.Ссылка;
А это для на зачем? НайтиПоНаименованию() и без того возвращает ссылочный тип.
все сделала)
ВидСвойства = ПланыВидовХарактеристик.СвойстваОбъектов.НайтиПоНаименованию(ИмяСвойства);
Запись = РегистрыСведений.ЗначенияСвойствОбъектов.СоздатьМенеджерЗаписи();
Запись.Прочитать();
Запись.Объект = Номенклатура;
Запись.Свойство = ВидСвойства;
Запись.Значение = ExcelЛист.Cells(Row, сч).Value;
Запись.Записать();
ВидСвойства = ПланыВидовХарактеристик.СвойстваОбъектов.НайтиПоНаименованию(ИмяСвойства);
Запись = РегистрыСведений.ЗначенияСвойствОбъектов.СоздатьМенеджерЗаписи();
Запись.Прочитать();
Запись.Объект = Номенклатура;
Запись.Свойство = ВидСвойства;
Запись.Значение = ExcelЛист.Cells(Row, сч).Value;
Запись.Записать();
Здравствуйте!
Имеется внешняя обработка, которая программно записывает Назначение в свойства Тип значений: Строка и само свойство номенклатуры.
Скрин 01
А нужно чтоб обработка записывала Значение в свойство Тип значений: Значения свойств объектов и само свойства номенклатуры.
Скрин 02
Прошу подсказать как исправить код или сам код
С уважением
Сам код
(7)
(7)
Имеется внешняя обработка, которая программно записывает Назначение в свойства Тип значений: Строка и само свойство номенклатуры.
Скрин 01
А нужно чтоб обработка записывала Значение в свойство Тип значений: Значения свойств объектов и само свойства номенклатуры.
Скрин 02
Прошу подсказать как исправить код или сам код
С уважением
Сам код
Процедура ПутьКФайлуНачалоВыбора(Элемент, СтандартнаяОбработка)
ДВФ = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);
ДВФ.Фильтр = "*.xls";
Если ДВФ.Выбрать() Тогда
ПутьКФайлу = ДВФ.ПолноеИмяФайла;
КонецЕсли;
КонецПроцедуры
Функция НайтиСоздатьСвойство(Наименование)
Запрос = Новый Запрос();
Запрос.УстановитьПараметр("Наименование", Лев(Наименование, 50));
Запрос.УстановитьПараметр("НазначениеСвойства", ПланыВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Справочник_Номенклатура);
Запрос.Текст =
"ВЫБРАТЬ
| СвойстваОбъектов.Ссылка
|ИЗ
| ПланВидовХарактеристик.СвойстваОбъектов КАК СвойстваОбъектов
|ГДЕ
| СвойстваОбъектов.НазначениеСвойства = &НазначениеСвойства
| И СвойстваОбъектов.Наименование = &Наименование";
Выборка = Запрос.Выполнить().Выбрать();
Если Выборка.Следующий() Тогда
обЭлемент = Выборка.Ссылка.ПолучитьОбъект();
обЭлемент.ТипЗначения = Новый ОписаниеТипов("Строка",, Новый КвалификаторыСтроки(50));
обЭлемент.Записать();
Возврат обЭлемент.Ссылка;
Иначе
обЭлемент = ПланыВидовХарактеристик.СвойстваОбъектов.СоздатьЭлемент();
обЭлемент.Наименование = Наименование;
обЭлемент.НазначениеСвойства = ПланыВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Справочник_Номенклатура;
обЭлемент.ТипЗначения = Новый ОписаниеТипов("Строка",, Новый КвалификаторыСтроки(50));
обЭлемент.Записать();
Возврат обЭлемент.Ссылка;
КонецЕсли;
КонецФункции
Функция НайтиСоздатьНоменклатуру333(Наименование, Артикул)
Показать(7)
(7)
Прикрепленные файлы:
Внимание! Тема сдана в архив
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот