Сформировать строку номенклатуры: различия между версиями

Материал из База знаний АО АСП
Перейти к навигации Перейти к поиску
Нет описания правки
Нет описания правки
Строка 2: Строка 2:
В зависимости версии 1С и метода ведения учета существуют различные способы заполнения количества (веса) и количества упаковок в табличной части документа.
В зависимости версии 1С и метода ведения учета существуют различные способы заполнения количества (веса) и количества упаковок в табличной части документа.
|
|
В примере используются следующие функции:[[шлюз_выгрузка/сформировать_номенклатуру|СформироватьНоменклатуру]];  [[шлюз_выгрузка/сформировать_фильтр|СформироватьФильтр]]; [[шлюз_выгрузка/сформировать_вет_документ|СформироватьВетДокумент]]
В примере используются следующие функции:[[шлюз_выгрузка:сформировать_номенклатуру|СформироватьНоменклатуру]];  [[шлюз_выгрузка:сформировать_фильтр|СформироватьФильтр]]; [[шлюз_выгрузка:сформировать_вет_документ|СформироватьВетДокумент]]
<1c>
<1c>
Функция СформироватьСтрокуНоменклатуры(СтрокаТЧ, Документ,Фабрика)
Функция СформироватьСтрокуНоменклатуры(СтрокаТЧ, Документ,Фабрика)

Версия от 23:18, 24 февраля 2025

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

В зависимости версии 1С и метода ведения учета существуют различные способы заполнения количества (веса) и количества упаковок в табличной части документа. | В примере используются следующие функции:СформироватьНоменклатуру; СформироватьФильтр; СформироватьВетДокумент <1c> Функция СформироватьСтрокуНоменклатуры(СтрокаТЧ, Документ,Фабрика) СтрокаНоменклатуры = Фабрика.Создать(Фабрика.Тип( ПространствоИмен(),"СтрокаНоменклатуры"));

СтрокаНоменклатуры.Номенклатура = СформироватьНоменклатуру(СтрокаТЧ.Номенклатура,Фабрика); //УТ 11 //СтрокаНоменклатуры.Количество = СтрокаТЧ.Номенклатура.ВесЧислитель/СтрокаТЧ.Номенклатура.ВесЗнаменатель * СтрокаТЧ.Количество; //УПП (УФ)

СтрокаНоменклатуры.Количество = СтрокаТЧ.ЕдиницаИзмерения.Вес * СтрокаТЧ.Количество;

чаще просто количество

//УПП (ОФ) //СтрокаНоменклатуры.Количество = СтрокаТЧ.Номенклатура.ЕдиницаХраненияОстатков.Вес * СтрокаТЧ.Количество;  ?? //УНФ //СтрокаНоменклатуры.Количество = СтрокаТЧ.Номенклатура.Вес*СтрокаТЧ.Количество; //УТ 10.3 //СтрокаНоменклатуры.Количество = СтрокаТЧ.Номенклатура.ЕдиницаХраненияОстатков.Вес * СтрокаТЧ.Количество; ??? //БП 3.0 //СтрокаНоменклатуры.Количество = СтрокаТЧ.Номенклатура.ВесЧислитель * СтрокаТЧ.Количество; //БП 2.0 СтрокаНоменклатуры.Количество = СтрокаТЧ.Номенклатура.ЕдиницаХраненияОстатков.Вес * СтрокаТЧ.Количество; //ERP //СтрокаНоменклатуры.Количество = СтрокаТЧ.Номенклатура.ВесЧислитель * СтрокаТЧ.Количество; //КА (УФ) //СтрокаНоменклатуры.Количество = СтрокаТЧ.Номенклатура.ВесЧислитель/СтрокаТЧ.Номенклатура.ВесЗнаменатель * СтрокаТЧ.Количество; //КА (ОФ)

СтрокаНоменклатуры.Количество = СтрокаТЧ.Номенклатура.ЕдиницаХраненияОстатков.Вес * СтрокаТЧ.Количество;

нужно вычислять вес

СтрокаНоменклатуры.КоличествоУпаковок = ?(СтрокаТЧ.Количество<0.5,Окр(СтрокаТЧ.Количество+0.5,0,РежимОкругления.Окр15как20),Окр(СтрокаТЧ.Количество,0,РежимОкругления.Окр15как20)); //нужно вычислять количество упаковок //СтрокаНоменклатуры.КоличествоУпаковок = СтрокаТЧ.КоличествоМест;

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

Возврат СтрокаНоменклатуры; КонецФункции </1c>