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

deeeman

Well-known member
04.12.2007
383
0
#1
Привет!

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

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


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

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

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

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

Вложения

  • 42.5 КБ Просмотры: 165

Kizarek86

Lotus team
20.07.2007
864
4
#4
Категория применяется ко всем документам, вы четко указываете в форуме столбца что если документ не по форме1, то название будет пустая строка.

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

deeeman

Well-known member
04.12.2007
383
0
#5
а можно ли как то повесить событие на открытие категории в виде?
что типа если открывают определенную категорию то ничего не делать и тд
 

Kizarek86

Lotus team
20.07.2007
864
4
#6
Можно, но "костылями", не нужно так делать)
Как у Вас документы сейчас связаны? Какими то общими данными?
 

deeeman

Well-known member
04.12.2007
383
0
#7
>Как у Вас документы сейчас связаны? Какими то общими данными?
да, общими данными, по ним настраивается респонз.


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

Kizarek86

Lotus team
20.07.2007
864
4
#8
да, общими данными, по ним настраивается респонз.
Ну вот и выводите общие данные в категории.
Если нужны другие данные в категории, то их нужно добавлять в "ваши респонсы"


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

TIA

:-)
Lotus team
15.05.2009
790
3
#9
>Вопрос, как скрыть категорию "Вне категорий" (см рис)
Отфильтровать эти документы в формуле отбора представления.

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

deeeman

Well-known member
04.12.2007
383
0
#10
Потому что нормального механизма нету, и костыль будет медленный глючный.
а все таки поделитесь как можно повесить событие на открытие категории?


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

Kizarek86

Lotus team
20.07.2007
864
4
#11
а все таки поделитесь как можно повесить событие на открытие категории?
Поймать что фокус стоит на категории можно так
Код:
Sub Onselect(Source As Notesuiview)
If Len(Source.CaretNoteID)=8 Then
'Тут чета делаем
End If
End Sub
А вот как на LS скрыть категорию я не нашел (на собаках есть ViewExpand,ViewCollapse)
Видимо можно как то через API.

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

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

oshmianski

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

deeeman

Well-known member
04.12.2007
383
0
#13
Ребят, я уже понял что категорию мне не скрыть.
взялся за другое дело:


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

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

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

Omh

Lotus team
04.07.2007
2 210
1
#14
deeeman
Куда-то ты в неправильную сторону ты пошёл.
Проще сказать юзерам, что бы они не лазили куда не следует.
С CaretCategory + Evaluate + прочие костыли ничего хорошего не выйдет.
Я кагбэ гарантирую это ;)
 

deeeman

Well-known member
04.12.2007
383
0
#15
ну мне просто ради спортивного интереса
как можно заменить код на формулах LS?

Код:
@Command([ViewCollapse])
 

TIA

:-)
Lotus team
15.05.2009
790
3
#17
>если отфильтровать лишние документы то они не будут респонзами для других, т е полностью исключаются из вида.
>а они нужны.

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

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