HCL Notes / Domino / Diverses > Entwicklung
Notes 11.0.1 - Mail-In Datenbank erstellen mit LotusScript
Andreas1977:
Kurzes Feedback von mir. mit den beiden zusätzlichen Eigenschaften klappt das jetzt, ich kann erfolgreich eine Mail an den Postkorb schicken und dort abholen.
Hier der Code (Zeile 12 angepasst, Zeile 20 dazu)
--- Code: ---Private Sub MailinCreateDocument(mailinId As String, internetaddress As String)
Dim notesServer as NotesName
Set notesServer = New NotesName("myServer/myOrg/DE")
Dim db As New NotesDatabase( "", "" )
Dim doc As NotesDocument
Call db.Open( notesServer.Common, "names.nsf" )
Set doc = db.CreateDocument
doc.Form = "Database"
doc.Type = "Database"
doc.FullName = mailInNotesName.Canonical
doc.Description = "Postkorb " + mailinId
doc.MailFile = "mailin\" + mailinId + ".nsf"
doc.MailServer = notesServer.abbreviated
doc.MailDomain = "myOrg"
doc.internetaddress = internetaddress
doc.owner="PK_" + mailinId
doc.LocalAdmin="Administrators"
doc.MessageStorage = 1
Call doc.Save( True, True )
End Sub
--- Ende Code ---
Andreas1977:
--- Zitat von: eknori am 21.06.23 - 16:53:27 ---Die Rollenzuordnung im Item DocumentAccess ist in der Tat wichtig. Aber nicht für das Funktionieren der Konfiguration, sondern nur dazu, wer das Dokument sehen/bearbeiten darf.
--- Ende Zitat ---
In dem manuell erzeugten MailIn Dokument enthält DocumentAccess den Wert [NetModifier]
Daraus werde ich nicht schlau. Wie kann ich den Wert vorher/nachher sehen/editieren manuell/per lotusscript?
Ich kann den bisher nur hinterher per Dokumenteneigenschaften sehen, aber was bedeutet denn NetModifier?
eknori (retired):
NetModifier ist eine ROLLE. Rollen findest Du in der ACL (Zugriffskontrollliste der Datenbank) Rollen werden verwendet, um Personen, Gruppen, oder anderen Objekten Zugriff auf Dokumente ( und auch andere Objekte ) in einer Datenbank zu gewähren, ohne den Personen individuell die Berechtigung geben zu müssen.
Verhält sich wie die Berechtigungen einer Abteilung. Du wechselst z.B vom Einkauf in die IT. Der Admin löscht deine Rolle EINKAUF und gibt Dir die Rolle IT, Damit bekommst du ohne grossen Aufwand alle Berechtigungen, die Du für die Arbeit in der IT benötigst. Gleichzeitig werden die Die Berechtigungen des Einkaufs genommen.
In der names.nsf gibt es zahlreiche Rollen, die die Zugriffe steuern. Gucke mal in die ACL.
In der Maske für die MailInDatenbank gibt es ein Item (Feld) "DocumentAccess". Das ist vom Typ AUTHOR und Computed when composed. Der Vorgabewert wird in einer umfangreichen Formel ermittelt. Dabei wird der Wert anhand der Maske ermittelt,
Was die Namen bestimmter Werte angeht, hast Du das ja schon gut beschrieben. Historisch gewachsen halt.
Ein berechnetes Feld wird automatisch anhand der Vorgaben dem Dokument hinzugefügt, wenn es gespeichert wird.
Und da kommt jetzt bezogen auf Deinen Code die Methode ComputeWithForm der Klasse NotesDocument ins Spiel. (https://help.hcltechsw.com/dom_designer/9.0.1/appdev/H_COMPUTEWITHFORM_METHOD.html)
Wenn Du die vor dem Call doc.save ausführst, dann werden automatisch alle Felder entsprechend ihren Vorgaben gesetzt, auch wenn Du sie nicht explizit über Deinen Code hinzufügst.
Andreas1977:
--- Zitat von: eknori am 23.06.23 - 06:44:18 ---Und da kommt jetzt bezogen auf Deinen Code die Methode ComputeWithForm der Klasse NotesDocument ins Spiel. (https://help.hcltechsw.com/dom_designer/9.0.1/appdev/H_COMPUTEWITHFORM_METHOD.html)
Wenn Du die vor dem Call doc.save ausführst, dann werden automatisch alle Felder entsprechend ihren Vorgaben gesetzt, auch wenn Du sie nicht explizit über Deinen Code hinzufügst.
--- Ende Zitat ---
Danke nochmal für den Hinweis!
CarstenH hatte das ja auch schon angemerkt.
Ich hatte mir die Dokumentation auch angeschaut, dachte aber das wäre nur zum Validieren.
Dass da auch Werte ergänzt werden, hatte ich überlesen.
Perfekt, dann ist die Funktion jetzt komplett.
Vielen Dank an eure tatkräftige Unterstützung, und ein schönes baldiges Wochenende an alle.
Navigation
[0] Themen-Index
[*] Vorherige Sete
Zur normalen Ansicht wechseln