Как программно создать View полностью?

GROMILA

Well-known member
08.04.2004
297
0
#1
Привет, дорогие мои коллеги !
Бился, бился, но опять надо спрашивать.

Ситуация:
Нужно динамически создать вид на базе уже созданного
(версия Lotus6)

Вид создаю следующим образом в агенте


Код:
Sub Initialize
Dim s As New NotesSession
Dim viewAll As NotesView
Dim viewTopics As NotesView
Dim col1 As NotesViewColumn

Dim i As Integer
Dim strSELECT As String

'Получаем наш базовый вид
Set viewAll = s.CurrentDatabase.GetView("Сотрудники")

'Создать новый вид пока с той же формулой!
strSELECT=viewAll.SelectionFormula
Messagebox "viewAll.SelectionFormula",, strSELECT

'//... Тут можно изменить формулу выборки!!!!!
'//
Set viewTopics = s.CurrentDatabase.CreateView("По подразделению", strSELECT )

'Скопировать из него все столбцы
i=1
While i<viewAll.ColumnCount 
Set col1 = viewTopics.CopyColumn(viewAll.Columns(i))
i=i+1
Wend

End Sub
Вопрос:
1. Вид создается, но как в него перетянуть ActionBar из моего базового вида????
2. Как сделать так, чтобы я сразу мог пользоваться созданным видом без переоткрытия БД?
 
G

Guest_Mihail

#2
Привет, Вопрос в тему:
получалось у кого-нибудь создать программно представление и вывести в ListBox?
 
V

Vagor.ini

#4
Я в принципе этим сейчас и занимаюсь, все вариации кода, когда заработает, обязательно опубликую...
 
G

Guest_Mihail

#5
<!--QuoteBegin-Vagor.ini+20:04:2004, 21:17 -->
<span class="vbquote">(Vagor.ini @ 20:04:2004, 21:17 )</span><!--QuoteEBegin-->Я в принципе этим сейчас и занимаюсь, все вариации кода, когда заработает, обязательно опубликую...[/quote]
Предыстория для вопроса:
вывести в listbox список документов отобранных из
другой базы по значению поля. Если есть такой способ -
напишите ПЛЗ. У меня работает через раз (в зависимости открыта
удаленная база на клиенте или нет)
 
N
#6
Guest_Mihail, а тебе embedded view не подойдет? можешь скриптом помещать (копировать) выбранные документы в папку, которая отображается в embedded view.
 

GROMILA

Well-known member
08.04.2004
297
0
#7
Ура!!!! Получилось! Ну я и растяпа! Не прочитал HELP
Вот ответ на мой Вопрос #1:

Код:
'Создать новый вид
Set viewTopics = s.CurrentDatabase.CreateView("По подразделению",,,viewAll,True )
Но вот Вопрос#2 отсается открытым!!!!

Как заставить сессию "видеть" новый вид?
 
G

Guest_Mihail

#10
<!--QuoteBegin-nor+21:04:2004, 12:28 -->
<span class="vbquote">(nor @ 21:04:2004, 12:28 )</span><!--QuoteEBegin-->Guest_Mihail, а тебе embedded view не подойдет? можешь скриптом помещать (копировать) выбранные документы в папку, которая отображается в embedded view.[/quote]
привет Nor. Использовать embedded view не интрересно - потому как
невозможно работать с выбранным документом не открыв его в workspace. А listbox отдает идентификатор документа , что и требуется. Заставить работать listbox так и не удалось (может только мне? ;) ) - проще выводить dialogbox и затем обрабатывать выбранную строковую константу .