Имя: Пароль:
1C
1С v8
УТ Создание длкумента Установка цен номенклатуры
,
0 geniusbsd
 
25.06.15
23:10
Сделал процедуру импорта цен номенклатуры из Excel
Но записывается в документ только последние значение

Процедура УстЦенНомНажатие(Элемент)
Попытка    
    xl = ПолучитьCOMОбъект(,"Excel.Application");
Исключение
    Сообщить("Файл для импорта не открыт" );
    Возврат
КонецПопытки;
    ВсегоСтрок = xl.Cells.CurrentRegion.Rows.Count;
    ВсегоКолонок = xl.Cells.CurrentRegion.Columns.Count;    
    Документ = Документы.УстановкаЦенНоменклатуры;
    Прогресс = ЭлементыФормы.Индикатор;
    Прогресс.МинимальноеЗначение=0;
    Прогресс.МаксимальноеЗначение = ВсегоСтрок;
        СпрНоменклатура=Справочники.Номенклатура;
    СпрТипЦен=Справочники.ТипыЦенНоменклатуры;
    ЦЗ=СпрТипЦен.НайтиПоНаименованию("Закупочная");
    ЦО=СпрТипЦен.НайтиПоНаименованию("Оптовая");
        ЦР=СпрТипЦен.НайтиПоНаименованию("Розничная");
        НовДок = Документ.СоздатьДокумент();
    НовДок.Дата=ТекущаяДата();
    НовДок.ТипыЦен.Добавить().ТипЦен=ЦЗ;
    НовДок.ТипыЦен.Добавить().ТипЦен=ЦО;
    НовДок.ТипыЦен.Добавить().ТипЦен=ЦР;
        СпрЕд=Справочники.ЕдиницыИзмерения;
    шт=СпрЕд.НайтиПоНаименованию("шт");
    СпрВалюты = Справочники.Валюты;
    usd=СпрВалюты.НайтиПоНаименованию("usd");
        НовДок.УстановитьНовыйНомер();      
Для row = 1 По ВсегоСтрок Цикл
Товар=СпрНоменклатура.НайтиПоНаименованию((xl.Cells(row,3).Value));
ЦенаЗак = (xl.Cells(row,7).Value);
ЦенаОпт =  (xl.Cells(row,8).Value);
ЦенаРозн =  (xl.Cells(row,9).Value);
НоваяСтрока= НовДок.Товары.Добавить();
НоваяСтрока.Номенклатура=Товар.Ссылка;
НоваяСтрока.Цена=ЦенаЗак;
НоваяСтрока.ТипЦен=ЦЗ.Ссылка;
НоваяСтрока.Валюта=usd;
НоваяСтрока.ЕдиницаИзмерения=шт;
НоваяСтрока.Цена=ЦенаОпт;
НоваяСтрока.ТипЦен=ЦО.Ссылка;
НоваяСтрока.Цена=ЦенаРозн;
НоваяСтрока.ТипЦен=ЦР.Ссылка;    
Прогресс.Значение = Прогресс.Значение + 1;
КонецЦикла;
НовДок.Записать();    
КонецПроцедуры
1 Cyberhawk
 
25.06.15
23:16
На каждый вид цены - отдельную строку делай
2 geniusbsd
 
25.06.15
23:29
Спасибо
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой