Скрыть Столбец Во Встроенном Представлении

  • Автор темы sereja2009
  • Дата начала
S

sereja2009

#1
Есть встроенное представление в документ, нужно по нажатию кнопки скрыть/показать столбец.
Сделал так, но понимаю что нужно как-то обновить view. ПОМОГИТЕ!!

Sub Click(Source As Button)
Dim session As New NotesSession
Dim bd As NotesDatabase
Dim view As NotesView
Dim column As NotesViewColumn

Dim uiws As New NotesUIWorkspace

Set bd = session.CurrentDatabase
Set view = bd.GetView("v_project_sostav")
Set column = view.Columns(5)
column.IsHidden = False
End Sub
 

afest

Well-known member
16.06.2009
78
0
#2
Call notesView.Refresh

это должно помочь (поставь после column.IsHidden = False)
 

savl

Lotus team
28.10.2011
2 136
105
#4
Думаю надо не обновлять, а перестраивать вьюху или переоткрыть ее... А это долго.
И еще кажись, но не уверен, надо права Editor иметь, чтобы править свойства колонки.
Можно попробовать переоткрывать документ.
А как будут после этого видеть другие пользователи данное представление? с колонкой или без?

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

Косяк будет, когда захотят скрывать колонки "как угодно" или по каждой кнопке свою колонку,а их там 10-15.
Не 15 же вьюх рисовать...
Тогда надо будет делать по другому, кто-то на форуме использовал такую схему:
сделать профайл на каждого пользователя, в профайле хранить флаги скрытия колонок.
В формуле скрытия колонки прописать формулу проверки флага, но все равно проблему с переоткрытием не решит.
Так как формулы скрытия будут вычисляться при показе представления, надо будет его переоткрыть.