Имя: Пароль:
1C
1C 7.7
v7: Верхний уровень иерархии в справочнике Номенклатура
0 abbas
 
30.10.12
13:41
Доброе время суток.
Есть справочник, есть папки с названием
1. Готовая продукция
2. Чай
3. Хоз. товары
В этих папках тоже есть папки и т.д......
как выбрать самый верхний уровень папки?
1 Wobland
 
30.10.12
13:43
перебирать родителя, пока не окажется сиротой?
2 Ёпрст
 
30.10.12
13:44
ВерхнийРодитель=ЗначениеИзСтрокиВнутр(Шаблон("[ЗначениеВСтрокуВнутр(Спр"+СтрЗаменить(Формат("","С"+(Спр.Уровень()-1))," ",".Родитель")+")]"));

©РупорАбсурда
3 Wobland
 
30.10.12
13:45
(2) прикольно
4 povar
 
30.10.12
13:45
Пока Номенклатура.Уровень()>1 Цикл
ТекНом=Номенклатура.Родитель.ТекущийЭлемент();
КонецЦикла;
5 pofigos
 
30.10.12
13:47
(0) как вариант:

НомВхожд = Найти(СпрТоваров.ПолноеНаименование(),"/")-1;                
                   ТаблЗнач.ПервыйРодитель = Лев(СпрТоваров.ПолноеНаименование(),НомВхожд);
6 povar
 
30.10.12
13:48
+(4) поправка
Номенклатура=Номенклатура.Родитель.ТекущийЭлемент();
7 Wobland
 
30.10.12
13:49
(4) и вот так типа каждый раз сдвигается "указатель" в таблице номенклатура? уродская, непонятная семёрка
8 Wobland
 
30.10.12
13:49
(6) а я уж было подумал...
9 povar
 
30.10.12
13:49
(7) а че, нормально
10 abbas
 
30.10.12
13:51
(2) Работает....Спасибо
(5) тоже спасибо =)
11 Надсмотрщик
 
30.10.12
14:06
(0)

Спр = СоздатьОбъект("Справочник.Контрагенты");
   Спр.ВключатьПодчиненные(0);
   Спр.ВыбратьЭлементы();
   Пока Спр.ПолучитьЭлемент() = 1 Цикл
       Если Спр.ЭтоГруппа() = 1 Тогда
           
           КонецЕсли;
       КонецЕсли;
   КонецЦикла;