Domino 9 und frühere Versionen > Entwicklung
Dokument über die ID kopieren
Selin:
Hallo,
ich habe eine Dialogmaske, in der ich Werte, die meinem Suchstring entsprechend ausgebe.
Ein Feld "Aktuelles" gibt mein ausgewähltes Dokument aus dem Adressbuch zurück.
bzw. nur Firstname, Lastname und CompanyName
Ein Listfeld "Ergebnisliste" zeigt die übereinstimmenden Dokumente aus meinem anderen Adressbuch an.
Auch hier werden nur die o.g. Felder aufgeführt.
Über einen Knopf versuche ich jetzt auf das"wahre" Dokument zuzugreifen, und den Aktuellen Wert (auch hier das "wahre" Dokument) durch den gefundenen Wert, den ich im Listfeld markiere, zu überschreiben.
Habe auf der Dialogmaske ein Feld Unids angelegt und über einige Test
@Prompt([OK];"";Ergebnisliste);
tmp0 := @Text(Ergebnisliste);
tmp:=@Member(tmp0;Liste1);
@Prompt([OK];"";@Text(tmp));
UNID := @Subset(@Subset(Unids;tmp);-1);
@Prompt([OK];"";@Text(UNID))
die ID und das markierte Element ausgelesen.
Wie kann ich jetzt über die ID auf die Dokumente zugreifen?
Danke
Selin
mibo11:
@GetDocField( DokumentUNID ; Feldname ) liefert dir das Ergebnis eines Feldes.
Gruß Sascha
Axel:
Hi,
@GetDocField/@SetDocField funktionieren nur wenn sich das Dokument in der gleichen DB befindet.
Wenn ich das richtig verstehe, geht's hier aber um verschiedene Datenbanken. Dann bleibt nur der Weg über Script.
Ganz vereinfacht geht's so:
...
Dim db As NotesDatabase
Dim doc As NotesDocument
Set db = New NotesDatabase( "Name des Servers", "Name der Datenbank")
Set doc = db.GetDocumentByUNID( "Document ID")
...
Axel
Selin:
Hallo,
bin grad' etwas verwirrt
Habe in meiner lokalen names.nsf diese Dialogmaske
Dort habe ich dem Knopf hinterleigt:
Sub Click(Source As Button)
Dim ws As New notesUIWorkspace
Dim doc As NotesDocument
Dim targetdb As New NotesDatabase( "Server", "Datenbanken/abc.nsf" )
Dim dc As NotesDocumentCollection
Set doc = ws.CurrentDocument.document
Set dc = targetdb.Search( |"|+doc.Ergebnisliste(0)+|"| ,Nothing,0 )
Set doc = dc.GetFirstDocument
Msgbox doc.UniversalID
End Sub
brauche ich dann noch die andere DB hier im Script?
Weil, ich muss ja auf beide DB's zugreifen??
danke
Axel:
Hi,
im Moment bin ich grad etwas verwirrt.
--- Zitat von: Selin am 04.11.04 - 14:00:24 ---...
Dim targetdb As New NotesDatabase( "Server", "Datenbanken/abc.nsf" )
...
Set dc = targetdb.Search( |"|+doc.Ergebnisliste(0)+|"| ,Nothing,0 )
...
--- Ende Zitat ---
Mit diesen Zeilen greifst du doch schon auf die andere DB zu.
--- Zitat von: Selin am 04.11.04 - 14:00:24 ---...
Set doc = dc.GetFirstDocument
...
--- Ende Zitat ---
Und sofern die Suche ein Dokument findet hast du hiermit Zugriff auf das Dokument in der anderen Datenbank. Wo ist denn nun das Problem?
Was wird denn bei doc.Ergebnisliste(0) zurückgeliefert?
Axel
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln