G
Guest
Здраствуйте, у меня проблемка. Я написал скриптик загрузки номенклатуры в торговлю+склад 1с 7.7, но он все наименования добовляет в корень, не хочет строить иерархический список, не подскажите в чем проблема?
Код:
Процедура Сформировать()
спр=СоздатьОбъект("Справочник.ТМЦ");
имя="";
путь="";
ФС.ВыбратьФайл(0,имя,путь,,"(*.xls)|*.xls",,);
Пут=путь+имя;
если ПустоеЗначение(Пут)=1 тогда возврат; Конецесли;
Excel = СоздатьОбъект("Excel.Application");
Excel.Application.Workbooks.Open(СокрЛП(Строка(Пут)));
флаг=0;Сч=1; группа="";
Пока флаг=0 Цикл
Если ПустоеЗначение(Excel.ActiveWorkbook.activesheet.cells(Сч,1).value)=0 Тогда
спр.НоваяГруппа();
спр.Наименование=СокрЛП(строка(Excel.ActiveWorkbook.activesheet.cells(Сч,1).value));
спр.Записать();
группа=СокрЛП(строка(Excel.ActiveWorkbook.activesheet.cells(Сч,1).value));
Иначе
Если ПустоеЗначение(Excel.ActiveWorkbook.activesheet.cells(Сч,2).value)=0 Тогда
спр.ИспользоватьРодителя(группа);
спр.НоваяГруппа();
спр.Наименование=СокрЛП(строка(Excel.ActiveWorkbook.activesheet.cells(Сч,2).value));
спр.Записать();
группа=СокрЛП(строка(Excel.ActiveWorkbook.activesheet.cells(Сч,2).value));
Иначе
Если ПустоеЗначение(Excel.ActiveWorkbook.activesheet.cells(Сч,3).value)=0 Тогда
спр.ИспользоватьРодителя(группа);
спр.НоваяГруппа();
спр.Наименование=СокрЛП(строка(Excel.ActiveWorkbook.activesheet.cells(Сч,3).value));
спр.Записать();
группа=СокрЛП(строка(Excel.ActiveWorkbook.activesheet.cells(Сч,3).value));
Иначе
Если ПустоеЗначение(Excel.ActiveWorkbook.activesheet.cells(Сч,4).value)=0 Тогда
спр.ИспользоватьРодителя(группа);
спр.Новый();
спр.Наименование=СокрЛП(строка(Excel.ActiveWorkbook.activesheet.cells(Сч,5).value));
спр.Артикул=СокрЛП(строка(Excel.ActiveWorkbook.activesheet.cells(Сч,4).value));
спр.Записать();
иначе
флаг=1;
Конецесли;
Конецесли;
Конецесли;
Конецесли;
Сч=Сч+1;
КонецЦикла;
Excel.ActiveWorkbook.Close();
Excel.Quit();
КонецПроцедуры