Outline и Framesets

  • Автор темы alik86
  • Дата начала
A

alik86

Ситуация следующая:
Приложение разбито на три части (три Frameset`а) «Раз», «Два» и «Три». Для навигации по частям делаю Outline |Раз|Два|Три|, с формулами типа:
На |Раз|:
@PostedCommand([CloseWindow]);
@PostedCommand([OpenFrameset]; "Раз")… и т.п.
Имею желание сделать Hide для Outline Entry в зависимости от того, какой Frameset в данный момент открыт, т.е. если открыт Frameset «Раз», то в Outline вижу |Два|Три| и т.д.
На собаках, как я понимаю, нет стандартной формулы, возвращающей название текущего Frameset`а.
Методом проб и ошибок, опираясь на свой «крохотный» опыт и прочее, я представил себе следующие решения и даже попробовал их реализовать, и даже реализовал:
1. Сделать три разных Outline: |Раз|Два|, |Раз|Три| и |Два|Три|, которые и отображать в соответствующих Frame`ах соответствующих Frameset`ов.
Но, как мне кажется, это будет засер приложения (тем более что 3 части – это условно).
2. Использовать Profile с ключом @UserName, т.е. повесить на Outline формулы типа:
На |Раз|:
@SetProfileField( «profilename» ; «fieldname» ; «Раз» ; @UserName );
@PostedCommand([CloseWindow]);
@PostedCommand([OpenFrameset]; «Раз»)… и т.д.
И в формулах скрытия для Outline Entry указать что-то типа:
На |Раз|:
@GetProfileField(«profilename»; «fieldname»; @UserName) = «Раз»… и т.д.
Попробовал этот вариант – вроде как работает.
Но потом обратил внимание на Usage в хелпе, где пишут про @GetProfileField что она "does not work in hide-when…" и прям-таки растерялся, как же так, у меня же работает… :)

Так вот, господа Лотусисты, не будете ли вы столь любезны оценить (прокомментировать) мои решения ну и, может быть, предложить еще что-то более элегантное, ибо вдруг я пытаюсь изобрести велосипед...
 
A

alik86

Ну неужели никто не поможет добрым словом молодому да зеленому лотусисту?..
:whoareyou?:
 
N

nvyush

КМК, первый вариант — это как раз то, что реализовано в стандартном почтовом шаблоне. Выводы делайте сами.
 

VladSh

начинающий
Lotus Team
11.12.2009
1 797
158
BIT
232
Когда-то на интертрастовском форуме проскакивало, что все эти вещи сохраняют не в профайле, а notes.ini, т.е. попробовать @SetEnvironment и @Environment.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!