1. 1C / Говнокод #12547

    −104

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    Запрос = Новый Запрос;
    Запрос.Текст = "
    	|ВЫБРАТЬ
    	|	ВЫБОР Когда Ном.Ссылка.ЭтоГруппа=Истина Тогда 1 Иначе 0 Конец как этоГруппа,
    	|      1 как Уровень,
    	|	ВЫБОР Когда Ном.Ссылка.Родитель.Код=""00002"" Тогда """" Иначе Ном.Ссылка.Родитель.Код Конец как кодРодителя,
    	|	Ном.Ссылка.Код как Код,
    	|	Ном.Ссылка.Наименование как Наименование,
    	|	Ном.Ссылка как Элемент
    	|ИЗ справочник.Номенклатура как Ном";
    	РЗ = Запрос.Выполнить();
    	ТЗ = РЗ.Выгрузить();
    	
    	Сообщить("1. Подготовка таблицы ...");
    	КК=0;
    	КМАКС=ТЗ.Количество();
    	Индикатор1 = ЭлементыФормы.Индикатор;
    	Индикатор1.МаксимальноеЗначение = ТЗ.Количество();
    	Индикатор1.Значение = 0;
    	Для Каждого ТекСтрока ИЗ ТЗ Цикл
    		Индикатор1.Значение = Индикатор1.Значение + 1;
    		ОбработкаПрерыванияПользователя();
    		КК = КК + 1;
    		Состояние(Формат(КК/КМАКС*100, "ЧЦ=8; ЧДЦ=2"),Цел(КК/КМАКС*100));
    		ТекСтрока.Уровень = ТекСтрока.Элемент.Уровень()-1;
    	КонецЦикла;	
    	
    	ТЗ.Сортировать("этоГруппа убыв,Уровень возр,Наименование возр");

    Вот такой вот способ получения номенклатуры вместе с иерархией

    Запостил: glavdir, 06 Февраля 2013

    Комментарии (4) RSS

    • Почему ж мне все чаще и чаще хочется пройтись с автоматом по конторам одинэсных франчей?
      Ответить
      • Потому что владельцам этих контор плевать на обучение своих сотрудников-студентов. А кроме студентов там мало кто работает.
        Ответить
    • > Ном

      ОМ НОМ НОМ НОМ

      > как этоГруппа

      "Как? Это группа?!"
      Ответить
    • Этому коду не хватает только вызова в цикле.
      Ответить

    Добавить комментарий