Программное заполнение справочника УпаковкиЕдиницыИзмерения

1. Max0n57 29.09.23 09:28 Сейчас в теме
Здравствуйте. Помогите, пожалуйста. Нужно перенести значение коэффициента из объема в единицы измерения и упаковки индивидуальные упаковки. Как мне программно заполнить реквизит единица по классификатору. Прикрепляю скрины и код обработки для переноса значения из реквизита объем.


&НаКлиенте
Процедура ПереносХраненияКоэффициента(Команда)
	ПереносХраненияКоэффициентаНаСервере();
КонецПроцедуры

&НаСервере
Процедура ПереносХраненияКоэффициентаНаСервере()
	Запрос = Новый Запрос;
	Запрос.Текст = 
	"ВЫБРАТЬ ПЕРВЫЕ 2
	|	Номенклатура.Ссылка КАК Ссылка
	|ИЗ
	|	Справочник.Номенклатура КАК Номенклатура
	|ГДЕ
	|	НЕ Номенклатура.ПометкаУдаления
	|	И НЕ Номенклатура.ЭтоГруппа
	|	И НЕ Номенклатура.ОбъемЧислитель = 0
	|	И НЕ(Номенклатура.Родитель.Родитель.Родитель.Родитель.Наименование ПОДОБНО ""%Материалы%""
	|				ИЛИ Номенклатура.Родитель.Родитель.Родитель.Наименование ПОДОБНО ""%Материалы%""
	|				ИЛИ Номенклатура.Родитель.Родитель.Наименование ПОДОБНО ""%Материалы%""
	|				ИЛИ Номенклатура.Родитель.Наименование ПОДОБНО ""%Материалы%"")";
	
	РезультатЗапроса = Запрос.Выполнить();
	
	Выборка = РезультатЗапроса.Выбрать();
	
	Пока Выборка.Следующий() Цикл
		ОбъектНоменклатура = Выборка.Ссылка.ПолучитьОбъект();
		
		ОбъектНоменклатура.ИспользоватьУпаковки = Истина;
		ОбъектНоменклатура.НаборУпаковок = ПредопределенноеЗначение("Справочник.НаборыУпаковок.ИндивидуальныйДляНоменклатуры");
		Попытка
			ОбъектНоменклатура.Записать();
		Исключение
			Сообщить("Ошибка записи объекта """ + ОбъектНоменклатура + """!
			|" + ОписаниеОшибки());
		КонецПопытки;
		
		//ЕдиницаИзмерения = Справочники.УпаковкиЕдиницыИзмерения.СоздатьЭлемент(); 
		//ЕдиницаИзмерения.Наименование = "Упаковка(По объему)";
		//ЕдиницаИзмерения.ТипИзмеряемойВеличины = Перечисления.ТипыИзмеряемыхВеличин.Объем;
		//ЕдиницаИзмерения.Знаменатель = ОбъектНоменклатура.ОбъемЗнаменатель;		
		//ЕдиницаИзмерения.Числитель = 1/ОбъектНоменклатура.ОбъемЧислитель;
		//НоваяУпаковка = Справочники.УпаковкиЕдиницыИзмерения.СоздатьЭлемент(); 
		//НоваяУпаковка.Владелец = ОбъектНоменклатура.Ссылка;
		//НоваяУпаковка.ЕдиницаИзмерения = ЕдиницаИзмерения.Наименование; 
		//НоваяУпаковка.ТипУпаковки = ПредопределенноеЗначение("Перечисление.ТипыУпаковокНоменклатуры.Разупаковка");	
		//НоваяУпаковка.Записать();
		
		НоваяУпаковка = Справочники.УпаковкиЕдиницыИзмерения.СоздатьЭлемент();
		//НоваяУпаковка.
		НоваяУпаковка.Владелец = ОбъектНоменклатура.Ссылка;
		//НоваяУпаковка.ЕдиницаИзмерения = Справочники.УпаковкиЕдиницыИзмерения.СформироватьНаименование(ТипУпаковки, ЕдиницаИзмерения, Числитель, Знаменатель, ЕдиницаИзмеренияВладельца);
		НоваяУпаковка.ТипУпаковки = ПредопределенноеЗначение("Перечисление.ТипыУпаковокНоменклатуры.Разупаковка");	
		НоваяУпаковка.Числитель = 1/ОбъектНоменклатура.ОбъемЧислитель;
		НоваяУпаковка.Записать();
		
	КонецЦикла;
	
КонецПроцедуры
Показать
Прикрепленные файлы:
По теме из базы знаний
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот