скрыть пустую категорию

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

  1. deeeman

    deeeman Well-Known Member

    Регистрация:
    4 дек 2007
    Сообщения:
    382
    Симпатии:
    0
    Привет!

    В виде, отображаются документы трех форм: "Форма1" "Форма2" "Форма3"

    Первая колонка-категория строить по полю, которое содержится только в документах по форме "Форма1".
    Соответственно, остальные документы попадают в пустую категорию которая отображается "Вне категорий".


    Но, документы с формами "Форма2" и "Форма3" тоже нужны в виде, т к они делаются искусственно респонзами, к документам с формой "Форма1" с помощью формулы отбора (DEFAULT $REF:=...)

    Вопрос, как скрыть категорию "Вне категорий" (см рис)

    галка "dont show empty categoryes" в настройках вида стоит
    код в первой колонке-категории:

    Код (Text):
    @If(Form="Форма1";NameField;@Return(""));
     

    Вложения:

    • 1.jpg
      1.jpg
      Размер файла:
      42,5 КБ
      Просмотров:
      159
  2. oshmianski

    oshmianski Гость

    Show response documents in a hierarchy?
     
  3. deeeman

    deeeman Well-Known Member

    Регистрация:
    4 дек 2007
    Сообщения:
    382
    Симпатии:
    0
    да, галка включена
    с ней и без нее одно и тоже...
     
  4. Kizarek86

    Kizarek86 Lotus team
    Lotus team

    Регистрация:
    20 июл 2007
    Сообщения:
    857
    Симпатии:
    5
    Категория применяется ко всем документам, вы четко указываете в форуме столбца что если документ не по форме1, то название будет пустая строка.

    Поэтому:
    Либо используйте систему нормальных респонсов
    Либо выводите для форма2 и 3 такие названия категории в которою они должны попадать
     
  5. deeeman

    deeeman Well-Known Member

    Регистрация:
    4 дек 2007
    Сообщения:
    382
    Симпатии:
    0
    а можно ли как то повесить событие на открытие категории в виде?
    что типа если открывают определенную категорию то ничего не делать и тд
     
  6. Kizarek86

    Kizarek86 Lotus team
    Lotus team

    Регистрация:
    20 июл 2007
    Сообщения:
    857
    Симпатии:
    5
    Можно, но "костылями", не нужно так делать)
    Как у Вас документы сейчас связаны? Какими то общими данными?
     
  7. deeeman

    deeeman Well-Known Member

    Регистрация:
    4 дек 2007
    Сообщения:
    382
    Симпатии:
    0
    >Как у Вас документы сейчас связаны? Какими то общими данными?
    да, общими данными, по ним настраивается респонз.


    >Можно, но "костылями", не нужно так делать)
    почему не нужно так делать?
     
  8. Kizarek86

    Kizarek86 Lotus team
    Lotus team

    Регистрация:
    20 июл 2007
    Сообщения:
    857
    Симпатии:
    5
    Ну вот и выводите общие данные в категории.
    Если нужны другие данные в категории, то их нужно добавлять в "ваши респонсы"


    Потому что нормального механизма нету, и костыль будет медленный глючный.
     
  9. TIA

    TIA :-)
    Lotus team

    Регистрация:
    15 май 2009
    Сообщения:
    790
    Симпатии:
    0
    >Вопрос, как скрыть категорию "Вне категорий" (см рис)
    Отфильтровать эти документы в формуле отбора представления.

    >галка "dont show empty categoryes" в настройках вида стоит
    Очень вредная галка. Сильно влияет на производительность сервера. Не используйте её.
     
  10. deeeman

    deeeman Well-Known Member

    Регистрация:
    4 дек 2007
    Сообщения:
    382
    Симпатии:
    0
    а все таки поделитесь как можно повесить событие на открытие категории?


    если отфильтровать лишние документы то они не будут респонзами для других, т е полностью исключаются из вида.
    а они нужны.
     
  11. Kizarek86

    Kizarek86 Lotus team
    Lotus team

    Регистрация:
    20 июл 2007
    Сообщения:
    857
    Симпатии:
    5
    Поймать что фокус стоит на категории можно так
    Код (Text):
    Sub Onselect(Source As Notesuiview)
    If Len(Source.CaretNoteID)=8 Then
    'Тут чета делаем
    End If
    End Sub
    А вот как на LS скрыть категорию я не нашел (на собаках есть ViewExpand,ViewCollapse)
    Видимо можно как то через API.

    Но это не важно в общем.
    У Вас в данной реализации документы по Форма2 и Форма3 все равно не будут попадать в категорию Форма1, т.к. там в них нету значения категории.

    Покажите как сейчас выглядит представление.
     
  12. oshmianski

    oshmianski Гость

    какой тип поля в респонзах, которое используете для связи?
    должно быть: Data Type: Response.
     
  13. deeeman

    deeeman Well-Known Member

    Регистрация:
    4 дек 2007
    Сообщения:
    382
    Симпатии:
    0
    Ребят, я уже понял что категорию мне не скрыть.
    взялся за другое дело:


    Повесил на событие Onselect код:

    Код (Text):
    If Source.CaretCategory = "Имя нужной категории которую не надо открывать" Then
    Execute({Evaluate(@Command( [ViewCollapse] ) )})  'не хочет никак работать
    End If

    как заставить сворачиваться или отдельно взятой категории или всех сразу на LS?
     
  14. Omh

    Omh Lotus team
    Lotus team

    Регистрация:
    4 июл 2007
    Сообщения:
    2.210
    Симпатии:
    0
    deeeman
    Куда-то ты в неправильную сторону ты пошёл.
    Проще сказать юзерам, что бы они не лазили куда не следует.
    С CaretCategory + Evaluate + прочие костыли ничего хорошего не выйдет.
    Я кагбэ гарантирую это ;)
     
  15. deeeman

    deeeman Well-Known Member

    Регистрация:
    4 дек 2007
    Сообщения:
    382
    Симпатии:
    0
    ну мне просто ради спортивного интереса
    как можно заменить код на формулах LS?

    Код (Text):
    @Command([ViewCollapse])
     
  16. Omh

    Omh Lotus team
    Lotus team

    Регистрация:
    4 июл 2007
    Сообщения:
    2.210
    Симпатии:
    0
    Прямого скриптового аналога нет, кмк.
     
  17. TIA

    TIA :-)
    Lotus team

    Регистрация:
    15 май 2009
    Сообщения:
    790
    Симпатии:
    0
    >если отфильтровать лишние документы то они не будут респонзами для других, т е полностью исключаются из вида.
    >а они нужны.

    Ситуация так и не выяснена. Как Вы говорите, документы по форме "Форма1" попадают в категорию, так?
    Документы по форме "Форма2" и "Форма3" являются респонсами (не важно искусственными или нет) к документам по форме "Форма1", так?

    Если документы являются респонсами и они отображены как респонсы, тогда они не отображаются как независимые документы. Т.е. их не должно быть внутри категории "Вне категорий".
     
Загрузка...

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