Autor Thema: Agent- welche DB? (unprocessedDocuments vs SetTargetFrame)  (Gelesen 1161 mal)

Offline Greenthumb

  • Frischling
  • *
  • Beiträge: 17
  • Ich liebe dieses Forum!
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!

Offline Lossa

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.404
  • Geschlecht: Männlich
    • alphaTrain
Re:Agent- welche DB? (unprocessedDocuments vs SetTargetFrame)
« Antwort #1 am: 11.11.03 - 19:29:16 »
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.


Viele Grüße

Ulrich Lossa
Aktiv als Notes Admin und Entwickler seit Version 1.
Freier Trainer und Berater.
Zertifiziert für alle Versionen SA und DB.
HCL Certified Administrator
IBM Certified Advanced Application Developer (PCLP AD)
IBM Certified Advanced System Administrator (PCLP SA)
IBM Certified Instructor for System Administration and Application Development ( CLI)
IBM Certified Instructor for Websphere Software
IBM Certified Instructor for DB2
http://www.alphatrain.de
Lossa@alphatrain.de

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz