Query.FolderLevel

From SunFlurry wiki
Jump to: navigation, search
  FolderLevel (Текущий уровень группировки папок)
Объект:Запрос базы данных
Статус разработки: Реализована
Тип:Функция
Обращение к БД:Нет
Исключения:Не выполненный запрос, линейный запрос
Визуальность:Нет

Функция возвращает индекс уровня папок, текущей строки таблицы запроса для текущей группировки. Если текущая строка не указывает на папку, функция возвращает ноль, иначе возвращает 1 для самого высокого уровня вложения (корневых папок), 2 для папок, вложенных в корневые папки и т.д. Функция может выполняться только не для линейных запросов. Функцию можно применять, к примеру, для увеличения отступа для вложенных папок или применения цветового выделения в зависимости от уровня вложенности папки.

Синтаксис

Query.FolderLevel():<Текущий уровень папок (INT)>

Возвращаемое значение

Возвращает числовое значение, уровень группировки папок запроса на текущем уровне группировки запроса.

Примеры

//Группировка 2 запроса данного фрагмента была создана с постфиксом "With Folders"

While З.Next(1) Do
  ...

  While З.Next(2) Do
    зЭл:=З.Get(З.Groups(2));
    If _And(not IsEmpty(зЭл),зЭл.IsFolder()) Then
      Message("Папка "+зЭл+" имеет уровень группировки папок: "+З.FolderLevel());

      ...

    Else

      ...

    EndIf;
  EndDo;
EndDo;