Das Notes Forum
Domino 9 und frühere Versionen => ND7: Administration & Userprobleme => Thema gestartet von: Torf am 29.01.07 - 15:19:57
-
Hi Leutz,
ich hab da mal wieder ein kleines Problem mit Lotus Notes. Ich versuche mich im moment mit LotusScript und komme da einfach nicht weiter. (Sitze da jetzt schon seit ca 2 std dran)
Und zwar versuche ich den DBLookup befehel aus der Formelsprache in LotusScript "umzuwandeln".
Ich hab aber einfach zu wenig erfahrung in LotusScript um dies zu schaffen. Und die Hilfe hat mir auch nicht viel gebracht.
Ich schaffe es schon aus dem gesuchten Feld zu lesen und hab schon so eine schleife geschrieben, wodurch er mir die darin enhaltenen Namen nacheinander anzeigt.
Ich komm einfach nicht darauf wie ich mit den gefundenen namen die passende Adressen aus einer anderen Tabelle holen kann.
Mit DBlookup ist das ja kein Problem, aber mit LotusScript schaffe ich es einfach nicht.
Die Tabelle mit den Namen ist so aufgebaut: 1 Spalte der Name, 2 Spalte Emailadresse.
Wie kann ich jetzt die Namen vergleichen, und wenn ich den richtigen gefunden habe, die passende emailadresse dazu zu holen?
Wäre super wenn mir jemand einen tipp geben könnte, wie ich an die passenden Emailadressen aus einer anderen Tabelle komme.
MFG
Torf
-
NotesView.GetDocumentByKey ist das, was Du suchst.
Bernhard
-
Vielen thx.
MFG
Torf
-
Hi, ich bins nochmal.
Ich habe jetzt mal was getestet, aber es will nicht so ganz.
Sub Initialize
Dim ToWho As String
Dim session As New NotesSession
Dim db As Notesdatabase
Set db = session.CurrentDatabase
Dim view As NotesView
Dim view1 As NotesView
Dim doc As NotesDocument
Dim doc1 As NotesDocument
Set view = db.GetView("Alles")
Set view1 = db.GetView("Empfänger")
Set doc = view.GetFirstDocument
Forall x In doc.AuswahlEmpfänger
Set doc1 = view1.GetDocumentByKey(x)
Messagebox(x)
Messagebox(doc1.GetItemValue (x)(0))
End Forall
End Sub
Jetzt lacht mich bitte nicht aus, das ist mein erster LotusScript Code.
Die MEssageBox(x) gibt mir die gewünschte namen aus.
Nur bekomm ich die dazu passende Emailadresse nicht ausgeliefert, obwohl ich die namen dann als schlüssel an die GetDocumentByKey übergebe.
Übergibt er mir ein falsches format an die GetDocumentByKey? Denn ich bekomme eine leere MEssagebox ausgegeben. Oder woran könnte dies liegen?
Wäre super wenn mir jemand erklären könnte was ich alles falsch gemacht habe. Und lacht bitte nicht so viel über den Code, ist mein erstes mal.
MFG
Torf
-
Hi,
Messagebox(doc1.GetItemValue (x)(0))
Das kann so nicht funktionieren. Du versuchst damit, den Inhalt des Items auszulesen, dessen Name in x enthalten ist. Also würde er nach einem Item "Hans Meier" oder so suchen.
Du mußt an der Stelle den Itemnamen angeben, in dem die Mailadresse gespeichert ist.
Also z.B. Messagebox(doc1.GetItemValue (MailAdresse)(0))
P.S. : Ich würde dir empfehlen, auf jeden Fall eine Schulung zu besuchen oder wenigstens ein Buch zu dem Thema zu lesen, wenn Du dich damit weiter beschäftigen willst.
-
Ich bin so dumm, so dumm.
(selbsterkenntnis ist der erste schritt zu besserung)
ich wollte gerade posten das ich den fehler gefunden habe, nur warst du schneller^^. Du hast vollkommen recht.
Ich hab vor lauter rumexperimenteiren die felder verwechselt.
vielen dank aber für deine hilfe.
MFG
Torf
-
Gerne. Aber das hat nichts mit dumm zu tun. ;)