Autor Thema: Mit Agenten auf ein NotesForm.Readers Element einer Anderen DB zugreifen  (Gelesen 1094 mal)

Offline Grmpf

  • Frischling
  • *
  • Beiträge: 34
Hallo,

folgendes:

In mehreren Masken einer DB erstelle/befülle ich $Readers Felder über das NotesForm Element im QuerySave(Beispiel s.Code).

Code
'variablen
Dim readerslist(0 To 1) As String
Dim actuser As New NotesName(comsession.UserName)
Dim form As NotesForm
Dim session As New NotesSession
Dim db As NotesDatabase
Set db = session.CurrentDatabase

'hole maske	
Set form = db.GetForm("(Maske1)")

'befülle string-Array
readerslist(0) = Cstr(actuser.Canonical)
readerslist(1) = "[ReadAll]"

'Setze $Readers Feld	
form.Readers = readerslist

... das funktioniert soweit wunderbar--> $Readers Feld wird korrekt erstellt.

----------------------------

Ein Problem tritt auf sobald ich versuche von einer anderen Datenbank per Agent das ReadersFeld in der ersten Datenbank nach der gleichen Methode zu erstellen.

- Den Datenbankpfad habe ich entsprechend geändert
- keine Fehler werden ausgegeben

Das gewünschte $Readers Feld wird aber nicht erstellt.



..hoffe ich konnte mich verständlich ausdrücken.

Ich würde mich über jeden Hinweis sehr freuen!

grüße
Mathias

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Hier bräuchte es mehr Code, da diese Property nicht con der DB abhängt, die verwendet wird (ausser den Rechten lt. ACL).

A-Bär: Warum machst Du denn einen solchen Stunt, in einer Maske (!) via QuerySave dauernd das $Readers-Item zu setzen? Bist Du Dir sicher, dass diese Methode dem entspricht, was Du eigentlich erreichen willst?

Bernhard

Offline Grmpf

  • Frischling
  • *
  • Beiträge: 34
Hallo,

Die Möglichkeit von Notes das Feld erstellen zu lassen gefiel mir besser als das manuelle hinzufügen von Leser - Feldern zu der entsprechenden Maske.

Bei den Notes-(Client) seitig Erstellten Dokumenten dachte ich das QuerySave wäre die einzigste Lösung ? --> und hier funktioniert das ja alles auch ($Readers Feld erstellen Über "NotesForm.Readers = Leserliste").

---------------

Zu dem Problem hier noch ein bischen Code des betroffenen Agenten(Datenbank 1)


Code

...
.
Dim readerslist(0 To 1) As String
Dim form As NotesForm
		
'Hier die Maske der Db(Datenbank 2) holen, in welcher die Dokumente mit Readers Feldern gespeichert werden sollen
Set form = db.GetForm("(Maske2)")
		
readerslist(0) = Cstr("test")
readerslist(1) = "[ReadAll]"

'Zugriff auf die Form / Setzen des $Readers Feldes -- Hier Passiert nichts.
form.Readers = readerslist

'Test - Zugriff auf das form funktioniert! 
Msgbox(Cstr(form.Fields(1)))
.
...


Fehler gibt es keine, das Readers-Feld wird aber nicht erstellt.

Hinweis:
Der Zugriff auf die Maske der Datenbank2 funktioniert. Ich kann mir im Agenten z.B. per "form.Fields" Felder des Dokuments ausgeben lassen in dem ich das Readers Feld setzten will. Datenbankpfade sind also richtig.

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz