Файл следующего вида
Наименование Номер
ГРУППА
Абонент 012
Абонент 013
ЕЩЕ ОДНА ГРУППА
Еще один абонент 015
еще один абонент 117
Как сделать загрузку из этого файла чтобы каждый абонент относился к своей группе
Что пока у меня получается
Процедура Сформировать2() //Загрузка файла с номерами и отделами
ОкноЕхсеl = СоздатьОбъект("Excel.Application");
ОкноЕхсеl.AskToUpdateLinks = 0; //если будем открывать книгу со связями, то обновлять их не надо
НовыеРабочиеКниги = ОкноЕхсеl.Workbooks;
РабочаяКнига = НовыеРабочиеКниги.Open(ИмяФ);
КолСтрок=ОкноЕхсеl.ActiveSheet.UsedRange.Rows.Count;
Сообщить("Количество строк - "+Строка(КолСтрок));
СпрНом=СоздатьОбъект("Справочник.ИсхНомера");
СпрОтд=СоздатьОбъект("Справочник.ИсхНомера");
Для Стр=1 По КолСтрок Цикл
Номер=СокрЛП(ОкноЕхсеl.Cells(Стр,3).Value);
Если ПустоеЗначение(Номер)=1 Тогда
СпрОтд.НоваяГруппа();
СпрОтд.Наименование=СокрЛП(ОкноЕхсеl.Cells(Стр,2).Value);
СпрОтд.Записать();
КодГруппы=СпрОтд.Код;
Иначе
СпрНом.Новый();
СпрНом.Номер=Номер;
СпрНом.Наименование=СокрЛП(ОкноЕхсеl.Cells(Стр,2).Value);
СпрНом.Родитель=СпрОТД.НайтиПоКоду(КодГруппы);
СпрНом.Записать();
КонецЕсли;
КонецЦикла;
ОкноЕхсеl.ActiveWorkbook.Close();
КонецПроцедуры
в итоге в справочнике группы отдельно абоненты отдельно
НайтиПоКоду(<?>,);
Синтаксис:
НайтиПоКоду(<Код>,<ФлагПоиска>)
Назначение:
Найти элемент справочника по коду.
Возвращает: 1 - если действие выполнено;
0 - если действие не выполнено (элемент не найден).
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой