Hi zusammen
Habe mal etwas mit undokumentierten Befehl @UpdateViewDesign experimentiert. Rausgekommen ist ein Agent der Design von einer Ansicht in andere Ansichten übernimmt. Selektionformel speichere ich mir aber vorher und setze diese danach wieder. Vielleicht kann ja jemand etwas damit anfangen.
Gruss
Remo
Sub Initialize
Dim ws As New NotesUIWorkspace
Dim session As New NotesSession
Dim db As NotesDatabase
Dim view As NotesView
Dim strAllViewNames As String
Dim aryViewNames() As String
Dim aryViewSelectionFormulas() As String
Dim strDesignView As String
Dim strFormula As String
Dim RetValue As Variant
Dim i As Long
Set db=session.CurrentDatabase
Forall vw In db.Views
Set view=vw
If strAllViewNames="" Then
strAllViewNames=view.Name
Else
strAllViewNames=strAllViewNames & ";" & view.Name
End If
End Forall
RetValue=ws.Prompt(4,"Titel","Prompt","",Split(strAllViewNames,";"))
strDesignView=RetValue
If Not strDesignView="" Then
RetValue=ws.Prompt(7,"Titel","Prompt","",Split(strAllViewNames,";"))
If Isarray(RetValue) Then
Redim aryViewNames(Ubound(RetValue))
Redim aryViewSelectionFormulas(Ubound(RetValue))
For i=Lbound(aryViewNames) To Ubound(aryViewNames)
aryViewNames(i)=RetValue(i)
Set view=db.GetView(aryViewNames(i))
aryViewSelectionFormulas(i)=view.SelectionFormula
Next
strFormula={@UpdateViewDesign("} & Join(aryViewNames,{":"}) & {";"} & strDesignView & {")}
Evaluate strFormula
End If
For i=Lbound(aryViewSelectionFormulas) To Ubound(aryViewSelectionFormulas)
Set view=db.GetView(aryViewNames(i))
view.SelectionFormula=aryViewSelectionFormulas(i)
Next
End If
End Sub