Kann es sein, daß du die eingebettete Ansicht nur anzeigen willst, wenn es auch etwas zu sehen gibt (sprich: es existiert mehr als nur das Hauptdokument). Dann kann so etwas weiterhelfen:
Setz in die Maske ÜBER die eingebettete Ansicht ein Feld (ich habe es d_embeddedanzeigen genannt), das BERECHNET ZUM ANZEIGEN ist und seinen eigenen Wert als Berechnungsformel hat.
Im QUERYOPEN der Maske setzst du dieses Feld mit
Sub Queryopen(Source As Notesuidocument, Mode As Integer, Isnewdoc As Variant, Continue As Variant)
If IsNewdoc Then Exit Sub
If source.document.HasItem("$Ref") Then
source.document.d_embeddedAnzeigen="1"
Else
Set xdc=Source.document.Responses
If xdc.count=0 Then
source.document.d_embeddedAnzeigen="0"
Else
source.document.d_embeddedAnzeigen="1"
End If
End If
End Sub
Und dann setzst du auf die eingebettete Ansicht eine HIDE-WHEN-Formel.
Du kannst die eingebettete Ansicht auch in eine Teilmaske setzen und diese Teilmaske nur dann per Formel einbinden, wenn Bedingungen gelten, z.B.
@If(d_embbeddedview="0" | @IsNewDoc | d_PrevPane="1" | (@Subset(@DbName;1)="" & @GetProfileField("98SU";"SetupU_EmbViewLocalCTRL";@UserName)!="1");"";"KundenviewEingebettet")
Der Vorteil dieser Methode ist, daß du die eingebettete Ansicht gar nicht erst aufrufst, wenn die Bedingungen gelten, während du sie im ersten Fall sehr wohl aufrufst, aber nicht anzeigst.
Da kann es schon einmal passieren, daß der Notebookler ein paar Minuten dasitzt und wartet, bis die Ansicht aufgebaut und geöffnet ist, um sie dann ggf. gar nicht zu sehen zu bekommen. Das passiert dir mit der Teilmaske nicht.