Имя: Пароль:
1C
1С v8
Создать упаковки для всех номенклатур УТ11
0 Casper211
 
01.03.17
18:55
Как программно создать упаковки для всех номенклатур? "Шт"

&НаСервере
Процедура СоздатьУпаковкиНаСервере()
    
    
    Запрос = Новый Запрос;
    Запрос.Текст =
        "ВЫБРАТЬ
        |    Номенклатура.Ссылка,
        |    Номенклатура.ЕдиницаИзмерения
        |ИЗ
        |    Справочник.Номенклатура КАК Номенклатура
        |ГДЕ
        |    Номенклатура.Ссылка = &Номенклатура";
                        
    Запрос.УстановитьПараметр("Номенклатура", Номенклатура);

    РезультатЗапроса = Запрос.Выполнить();
    
    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
    
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
        Если  НЕ ВыборкаДетальныеЗаписи.Ссылка.ЭтоГруппа  Тогда
            Если Справочники.УпаковкиНоменклатуры.НайтиПоНаименованию(Строка(ВыборкаДетальныеЗаписи.ЕдиницаИзмерения),,,ВыборкаДетальныеЗаписи.Ссылка)= Справочники.УпаковкиНоменклатуры.ПустаяСсылка() Тогда
            // Создать упаковку
            Попытка
                НоваУпаковкаНоменклатур = Справочники.УпаковкиНоменклатуры.СоздатьЭлемент();
                НоваУпаковкаНоменклатур.Владелец = ВыборкаДетальныеЗаписи.Ссылка;
                НоваУпаковкаНоменклатур.Владелец.НаборУпаковок=Справочники.НаборыУпаковок.ИндивидуальныйДляНоменклатуры;
                НоваУпаковкаНоменклатур.СкладскаяГруппа = Справочники.СкладскиеГруппыУпаковок.НайтиПоНаименованию("ШТ",Истина);
                НоваУпаковкаНоменклатур.ЕдиницаИзмерения=ВыборкаДетальныеЗаписи.ЕдиницаИзмерения;
                НоваУпаковкаНоменклатур.Наименование =Строка(ВыборкаДетальныеЗаписи.ЕдиницаИзмерения);
                НоваУпаковкаНоменклатур.Коэффициент = 1 ;
                НоваУпаковкаНоменклатур.Записать();
            Исключение
                Сообщить(ОписаниеОшибки());
            КонецПопытки;
        // конец
    КонецЕсли;
        КонецЕсли;
    КонецЦикла;
КонецПроцедуры
1 Adilgeriy
 
01.03.17
19:22
и в чем вопрос то?
2 Adilgeriy
 
01.03.17
19:25
может
ЕдиницаИзмерения = Справочники.СкладскиеГруппыУпаковок.НайтиПоНаименованию("ШТ",Истина);
НоваУпаковкаНоменклатур.СкладскаяГруппа = ЕдиницаИзмерения;
3 Casper211
 
02.03.17
00:35
(2) Спасибо!