1. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

    Скрыть объявление

View: как подружить сортировку и категории?

Тема в разделе "Lotus - Программирование", создана пользователем nvyush, 10 фев 2011.

  1. nvyush

    nvyush Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    Здравствуйте, уважаемые знатоки! Внимание, вопрос:
    Есть документы с полем категории вида:

    Управление\приказы
    Управление\распоряжения
    Управление\архив\приказы
    Управление\архив\распоряжения
    Отдел кадров\приказы
    Отдел кадров\архив
    ...
    Начальство требует, чтобы в представлении это выглядело так:
    > Управление
    . . > приказы
    . . > распоряжения
    . . > архив
    . . . . . > приказы
    . . . . . > распоряжения
    > Отдел кадров
    . . > приказы
    . . > архив

    Однако Lotus сортирует категории в алфавитном порядке. Добавление цифр перед названиями подкатегорий начальству тоже не нравится. А если перед категоризованным столбцом добавить столбец сортировки, категории начинают размножаться, например:
    > Управление
    . . > приказы
    > Управление
    . . > распоряжения
    > Управление
    . . > архив

    Это можно как-нибудь победить?
     
  2. morpheus

    morpheus скриптописец

    Репутация:
    0
    Регистрация:
    7 авг 2006
    Сообщения:
    3.915
    Симпатии:
    1
    может просто зделать 2е кат. колонки?
     
  3. Kizarek86

    Kizarek86 Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    20 июл 2007
    Сообщения:
    860
    Симпатии:
    6
    Скрытая колонка перед колонкой категории где будет нужная сортировка должна решить проблему.
    Например можно сделать числовую колонку, где будет установлено соответствие вашим категориям цифр (в порядке нужной сортировки)
     
  4. Darker

    Darker Гость

    Репутация:
    0
    Как вариант (кустарный)

    Организация_\Управление_\приказы
    Организация_\Управление__\распоряжения
    Организация_\Управление___\архив_\приказы
    Организация_\Управление___\архив__\распоряжения
    Организация__\Отдел кадров_\приказы
    Организация__\Отдел кадров__\архив

    Ставка делается на кол-во пробелов, все равно их не видно в конце категории
     
  5. nvyush

    nvyush Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    Так и пытался сделать, но категории размножаются.
    Документы вида:
    1 | Управление\приказы
    2 | Управление\распоряжения
    3 | Управление\архив

    выводятся:
    1 | > Управление
    1 | . . > приказы
    2 | > Управление
    2 | . . > распоряжения
    3 | > Управление
    3 | . . > архив

    Очень неудобно упорядочивать. На самом деле категорий с подкатегориями порядка тысячи и вложенность (пока?) до четырёх.
    Это как?
     
  6. lmike

    lmike нет, пердело совершенство
    Lotus team

    Репутация:
    1
    Регистрация:
    27 авг 2008
    Сообщения:
    6.361
    Симпатии:
    336
    а почемубы не юзать колонку сортировки (скрытую), с разделиетем точка, т.е. каждый уровень вложения - точка
    ведь сплит и происходит из-за сквозной нумерации
    не - вру
     
  7. nvyush

    nvyush Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    Пробовал разбивать уровни сортировки и слэшем и точкой, и мультивалью, и плоскую категоризацию. В общем, кроме как добавлением циферок непосредственно к названиям категорий/подкатегорий, решить задачку пока не удаётся.
     
  8. lmike

    lmike нет, пердело совершенство
    Lotus team

    Репутация:
    1
    Регистрация:
    27 авг 2008
    Сообщения:
    6.361
    Симпатии:
    336
    ну вощем...
    если не динамическое создание категорий (макс. уровень известен)
    то фиксируем во вью
    сортировка по полю, кот. отображает категорию как:
    поле num= 1.1
    поле categ=Управление\приказы
    и далее:
    1.2
    Управление\распоряжения
    1.3
    Управление\архив

    вьюшку "рвём" колонками:
    @TextToNumber(@Left(num;".")) - сортировка
    @Left(categ;"\\") - категория
    @TextToNumber(@Right(num;".")) - сортировка
    @Right(categ;"\\") - категория
     
  9. nvyush

    nvyush Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    Увы, уровень вложенности динамический.
     
  10. lmike

    lmike нет, пердело совершенство
    Lotus team

    Репутация:
    1
    Регистрация:
    27 авг 2008
    Сообщения:
    6.361
    Симпатии:
    336
    ну тогда надо думать - как за хэпагах замутить виртуальное дерево, с собственной сортировкой
     
  11. rinsk

    rinsk Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    12 ноя 2009
    Сообщения:
    893
    Симпатии:
    84
    В стандартном Лотус - никак, ибо нет компонента Tree. Можно заюзать внедренный IE и нарисовать там через JS Tree (привет lmike:)) иначе Java или икспейдж.

    ЗЫ. вспомнил телеф. справочник -чтоб должности были по иерархии :)
     
  12. K-Fire

    K-Fire Гость

    Репутация:
    0
    Если минимальная вложенность значений в поле категория 2, то ИМХО задачу можно решить частично.
    Например значение "Управление\архив\приказы"
    считаем "Управление" - 1я часть, "архив" - 2я часть, "приказы" - 3я

    И делаем что-нить вроде такого набора столбцов:
    1) Сортировка для 1й части. скрытый некатегоризованный
    2) 1я часть, категоризованный
    3) Сортировка для остальных частей
    4) 2я\3я\и т.д. части, категоризованный



    А если согласятся на подобный вид:

    > Управление
    . . > приказы
    . . . . . > приказы
    . . > распоряжения
    . . . . . > распоряжения
    . . > архив
    . . . . . > приказы
    . . . . . > распоряжения
    > Отдел кадров
    . . > приказы
    . . . . . > приказы
    . . > архив
    . . . . . > архив

    Т.е. дублирование 2й и 3й категорий для тех документов где только 2 категории, то можно сделать и 3мя столбцами
     
  13. Gandliar

    Gandliar Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    16 фев 2004
    Сообщения:
    321
    Симпатии:
    4
    Если для документа выбирается одна категория, например Управление\архив\распоряжения

    то наверняка есть справочник этих категорий

    По хорошему он должен быть сделан в виде дерева (родитель-потомки) а все документы могут быть обозначены как потомки к конкретной категории.

    Соответственно в виде отображается и справочник категорий и документы как респонсы

    Справочник сортируется скрытой колонкой как надо, документы тоже.

    Выглядеть будет так как хочется.

    Проблемы - надо будет пересчитывать справочник категорий, чтобы не отображать пустые категории, если для красоты

    ===================================================

    А если подходить по другому, то раз это документооборот, можно просто сделать иерархический оутлайн и не париться

    и положить приказы в приказы, распоряжения в распоряжения и все это разбить на действующее и архивное
     
  14. nvyush

    nvyush Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    Справочник такой есть. Прошерстил агентом документы, чтобы сделать их респонсами к документам категорий, построил иерархическое представление. Но есть одно но. Для документа выводится только одна колонка, т.е. все реквизиты нужно собирать "в кучу", либо выводить их перед названием (до колонки show responses only). Принял пока как рабочую гипотезу для показа начальству.
    Копаем и в этом направлении...
    Рациональное число папок в приложении
     
  15. Gandliar

    Gandliar Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    16 фев 2004
    Сообщения:
    321
    Симпатии:
    4
    Ну вобщем, если не вникать в исходную странную задачу,

    Строишь навигацию в виде справочника категорий
    при заходе в последнюю (или в нужную) категорию (внутрь дока) отображаешь внедренный вид с содержимым (растянутый на весь экран к примеру) путем подмены формы для вида навигации.

    а при большой вложенности сортировка либо по алфавиту логична либо по вынесенным цифрам в названия подкатегорий.

    Если там что то вроде как написано

    типа управление, отдел кадров, распоряжения

    то пихать все в одну категорию неправильно, так как структурные подразделения - должны сидеть в справочнике структурных подразделений
    типы документов - в типах документов
    состояние дока - в состояниях (архив, актуальный, на подписи....)

    и сразу выделются четкие категории в 3-4х столбцах с нужной сортирвкой

    а так смешались в кучу кони, люди...
     
  16. nvyush

    nvyush Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    Во, так и собирался попробовать. Ещё как вариант - динамически cтроить аутлайн по cправочнику.
    Не я решаю...
     
  17. Gandliar

    Gandliar Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    16 фев 2004
    Сообщения:
    321
    Симпатии:
    4
    Должно быть тз в письменном виде.
    Тот кто пишет тз, должен обозначить в нем что он хочет получить в итоге.
    Если в тз написано что в один иерархический справочник в различном порядке пихаются разные сущности...
     
Загрузка...

Поделиться этой страницей