Hallo,
ich habe leider nicht viel Erfahrung im Umgang mit Lotus Notes, habe aber das Problem das ich aus einer selbst erstellten Datenbank einen Kontakt im persönlichen Adressbuch erstellen muss. Vielleicht kann mir da jemand einen Tip geben?!?
Kontakt aus fremder DB erstellen
- Freddy1
- Erledigt
-
-
Das kommt dann stark darauf an wie die Kontaktdaten in der selbsterstellten Datenbank abgelegt sind.
Im günstigsten Fall reicht es einfach das Dokument ins Adressbuch zu kopieren, wenn die Feldnamen identisch sind.
Ansonsten müssen die Felder gemappt werden, am besten über einen Agenten in LotusScript. -
Danke für die schnelle Antwort. Hier noch einige Infos:
In der fremden DB liegen nur Telefonnummern ab. Wenn ich solch eine Nummer markiert habe möchte ich einen Button drücken der dann die Funktion neuen Kontakt erstellen aufruft und die Telefonnummer an das Feld OfficePhoneNumber übergibt und auf weitere Eingaben wie Name usw. wartet. Ich habe schon nach der Funktion neuen Kontakt erstellen gesucht aber leider nichts gefunden. -
Wenn ich das richtig verstehe soll das folgendermassen ablaufen:
Du hast einen Knopf in einer Maske oder Ansicht. Wenn dieser betätigt wird, dann öffnet sich im persönlichen Adressbuch ein neues Dokument und das Feld OfficePhoneNumber ist schon vorbelegt.
Das kannst du über einen Script Agenten lösen.
Dieser muss folgendermassen aufgebaut sein:Über das Objekt NotesUIWorkspace kannst du ein neues Dokument im persönlichen Adressbuch erstellen.
Da erhältst du ein NotesUIDocument. Dort kannst du per FieldSetText die Felder ausfüllen die du gerne hättest. -
Hallo, habe das ganze jetzt stundenlang ausprobiert, aber mangels Erfahrung wenig Erfolg gehabt. Vielleicht könntest Du mir mit etwas Beispielcode für den Button weiterhelfen.
Ich konnte einen neuen Eintrag erzeugen jedoch nur in der Datenbank selbst. Mit welchem Code kann ich das im persönlichen Adressbuch ausführen? -
Über die Methode ComposeDocument kannst du eine neues Dokument erstellen, dabei kannst du ja den Server und den Pfad und Dateinamen der Datenbank angeben.
-
Das folgende Script funktioniert hinter einer Ansichts-Schaltfläche wenn du den Feldnamen nachträgst (s.u.), ein Dokument markiert hast und dein lokales Adressbuch "names.nsf" heißt.
Sub Click(Source As Button)
Const Feldname = "Status" ' hier den Feldnamen angeben der im Quelldokument die Tel.Nummer enthält
Dim Ws As New NotesUIWorkspace
Dim Session As New NotesSession
Dim DB As NotesDatabase
Dim AdrDB As NotesDatabase
Dim Doc As NotesDocument
Dim NewDoc As NotesDocument
Set DB = Session.CurrentDatabase
Set AdrDB = Session.GetDatabase("", "names.nsf") '
Set Doc = Session.DocumentContext
Set NewDoc = AdrDB.CreateDocument
NewDoc.Form = "Person"
NewDoc.OfficePhoneNumber = Doc.GetItemValue(Feldname)
Call ws.EditDocument(True, NewDoc,,,)
End Sub