Пример формирования строки номенклатуры для выгрузки в АСП.Шлюз

В зависимости версии 1С и метода ведения учета существуют различные способы заполнения количества (веса) и количества упаковок в табличной части документа.

В примере используются следующие функции:СформироватьНоменклатуру; СформироватьФильтр; СформироватьВетДокумент

Функция СформироватьСтрокуНоменклатуры(СтрокаТЧ, Документ,Фабрика)
	СтрокаНоменклатуры = Фабрика.Создать(Фабрика.Тип( ПространствоИмен(),"СтрокаНоменклатуры"));
	
	СтрокаНоменклатуры.Номенклатура = СформироватьНоменклатуру(СтрокаТЧ.Номенклатура,Фабрика);
	//УТ 11 
	//СтрокаНоменклатуры.Количество = СтрокаТЧ.Номенклатура.ВесЧислитель/СтрокаТЧ.Номенклатура.ВесЗнаменатель * СтрокаТЧ.Количество; 
	//УПП (УФ)
	//СтрокаНоменклатуры.Количество = СтрокаТЧ.ЕдиницаИзмерения.Вес * СтрокаТЧ.Количество; //чаще просто количество
	//УПП (ОФ)
	//СтрокаНоменклатуры.Количество = СтрокаТЧ.Номенклатура.ЕдиницаХраненияОстатков.Вес * СтрокаТЧ.Количество;  ??
	//УНФ
	//СтрокаНоменклатуры.Количество = СтрокаТЧ.Номенклатура.Вес*СтрокаТЧ.Количество;
	//УТ 10.3
	//СтрокаНоменклатуры.Количество = СтрокаТЧ.Номенклатура.ЕдиницаХраненияОстатков.Вес * СтрокаТЧ.Количество; ???
	//БП 3.0
	//СтрокаНоменклатуры.Количество = СтрокаТЧ.Номенклатура.ВесЧислитель * СтрокаТЧ.Количество; 
	//БП 2.0
	СтрокаНоменклатуры.Количество = СтрокаТЧ.Номенклатура.ЕдиницаХраненияОстатков.Вес * СтрокаТЧ.Количество; 
	//ERP
	//СтрокаНоменклатуры.Количество = СтрокаТЧ.Номенклатура.ВесЧислитель * СтрокаТЧ.Количество; 
	//КА (УФ)
	//СтрокаНоменклатуры.Количество = СтрокаТЧ.Номенклатура.ВесЧислитель/СтрокаТЧ.Номенклатура.ВесЗнаменатель * СтрокаТЧ.Количество; 
	//КА (ОФ)
	//СтрокаНоменклатуры.Количество = СтрокаТЧ.Номенклатура.ЕдиницаХраненияОстатков.Вес * СтрокаТЧ.Количество; //нужно вычислять вес
	
	СтрокаНоменклатуры.КоличествоУпаковок 	= ?(СтрокаТЧ.Количество<0.5,Окр(СтрокаТЧ.Количество+0.5,0,РежимОкругления.Окр15как20),Окр(СтрокаТЧ.Количество,0,РежимОкругления.Окр15как20)); //нужно вычислять количество упаковок
	//СтрокаНоменклатуры.КоличествоУпаковок = СтрокаТЧ.КоличествоМест;

// следующие поля не обязательны для заполнения и предназначены для выгрузки дополнительных сведений из учетной системы
	//СтрокаНоменклатуры.ВетДокумент = СформироватьВетДокумент(???,Фабрика);
	//СтрокаНоменклатуры.ГУИДСкладскойЗаписи = ???;
	//СтрокаНоменклатуры.КодПартии = ???;
	//СтрокаНоменклатуры.GTIN = ???;
	//СтрокаНоменклатуры.Артикул = ???;
	//СтрокаНоменклатуры.Маркировки = ???;
	//СтрокаНоменклатуры.Фильтр = СформироватьФильтр(Документ,Фабрика);
	
	Возврат СтрокаНоменклатуры;
КонецФункции