Das Notes Forum
Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: Greenthumb am 05.11.03 - 10:33:55
-
Hallo,
ich habe eine DB1, in der ich eine Ansicht aus DB2 zeige. In der DB1 habe ich einen Frame, in dem ich eine Tabelle mit Informationen für die in der Ansicht markiertes Dokument zeige. Diese Tabelle befindet sich in DB1. Dazu habe ich in der Ansicht eine Schaltfläche mit einem Agentem gebaut. Der Agent war erstmal in der DB 2 gespeichert und sah so aus:
Sub Initialize
Dim session As New NotesSession
Dim db As NotesDatabase
Dim ws As New NotesUIWorkspace
Set db = session.CurrentDatabase
Dim collection As NotesDocumentCollection
Set collection = db.UnprocessedDocuments
Dim coldoc As NotesDocument
Set coldoc = collection.GetFirstDocument
' Daten lesen
coldocid = coldoc.UniversalID
firma = coldoc.GetItemValue("Name2")(0)
' Document anzeigen
Call ws.SetTargetFrame( "summarize" )
Set notpesUIDocument = ws.ComposeDocument( "", "", "Karteikarte-allgemein")
Call notpesUIDocument.fieldsettext("officedocid", coldocid)
Call notpesUIDocument.fieldsettext("firma", firma)
Call notpesUIDocument.fieldsettext("SaveOptions", "0")
End Sub
Problem: Agent hat keinen Frame gefunden, weil klar => andere DB und Methode SetTargetFrame ist nur von Klasse UIWorkspace.
Dann habe ich folgende Lösung entwickelt:
Der Agent befindet sich in DB1. Aus der Ansicht aus DB2 wird auf ihn zugegriffen (getAgent-Method und Call Agent.Run). Der Agent holt sich die Datenbank DB2 und das markierte Dokument.
Problem: UnprocessedDocuments bezieht sich nur auf currentDB und bekomme ich Fehlermeldung: "... Agent verwendet einen nicht unterstützten Auslöser oder Suchtyp"
Könnt ihr mir weiter helfen? Welchen Lösungsweg soll ich weiter verfolgen den ersten oder zwieten? Eigentlich muss ich doch nicht auf die DB2 im Lösungsweg zugreifen, die Ansicht ist geöffnet, aber in der DB1, oder?
Vielen Dank!
-
Hi,
habe ich das richtig verstanden, dass du in einem Frame die Ansicht aus DB2 anzeigst, dort wird ein Dokument selektiert, und dann werde bestimmte Dokumentinformationen angezeigt?
Wenn Ja, dann:
Es gibt da mehrere möglichkeiten:
1. Die hast eine Ansicht, dort erstellst du eine Ansichtenformel die das Dokument mit einer Maske aufruft, die nur das Anzeigt was du brauchst. Dann wird dieses Maske in einem Frame angezeigt.
2. Du bindest eine Maske (Eingebetter Editor) mit den gewünschten Informationen in eine neue Maske ein und dort auch die Ansicht und definierst die Eingebettete Maske als Ziel für das Dokument, das selektiert wurde (iFrame).
Wenn Nein, dann:
Erkläre mal genauer was du machen willst.