Das Notes Forum
Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: Alois am 14.05.03 - 08:04:04
-
Arbeite gerade an ein Workflow Datenbank und vergebe Leser und Autoren Rechten über Leserfeld bzw Autorenfeld nur mit Rollen.
In der Maske sind 2 "bearbeitbare" Felder von Typ Leser bzw. Autor mit "Mehrfachwert zulassen" "Werte trennen bei Eingabe von neue Zeile". Diese Felder werden initialisiert mit ein Vorgabewert "[DefaultLeser]" und "[DefaultAutor]".
Beim speichern eine Dokument (mit der Maske) möchte ich in Leserfeld "[Leser1]" und "[Leser2]" und in Autorenfeld "[Autor1]" und "[Autor2]".
Ich habe mittleweil alles probiert.
...Anfanglich mit FieldGetText und FieldSetText, später mit FieldAppendText... Immer bekomme ich "[Rolle1] [Rolle2]" ind mein Leserfeld und keiner kann diese Dokument mehr lesen.
...dann bin ich auf die Idee gekommen dass es vielleicht ein Item sein könnte... Ich habe mein Skript geändert so dass ich die Werte der Felder erst anschauen kann:
Forall i in doc.items
Messagebox(i.Name)
End Forall
Ich bekomme jetzt die Meldung:
"Instance Member Item does not exist!"
Jetz weiß ich gar nichts mehr: Kein Textfeld!!! Kein Item!!!
oder mache ich ein Denkfehler.
Bitte wieder um Hilfe
-
Hi,
ich bin nicht der Script-Experte, daher ein Tip, von dem ich nicht weiss, ob er dir wirklich hilft:
Evt. musst du mit einem NotesName Objekt arbeiten. Schau mal in die Designer-Hilfe, da sind auch ein paar Beispiele.
-
Hi,
hier ein Auszug auf einem QuerySave-Event einer Maske:
...
'Setzen der Leserfeldes für Zugriffskontrolle
tmp = doc.Regionalgruppe(0)
If Left$(tmp, 2) = "FA" Then
If tmp = "FA - Wasserwirtschaft" Then doc.xRead = "[FAWasser]"
If tmp = "FA - Abfallwirtschaft" Then doc.xRead = "[FAAbfall]"
Else
doc.xRead = "[" & Left$(tmp, Instr(tmp, " - ") - 1) & "]"
End If 'If Left$(tmp, 2) = "FA" Then
...
Wenn du Mehrfachwerte hast, musst du die Werte in ein Array einfügen un dann dem Feld zuweisen.
So ungefähr:
...
Dim leser(1) As String
leser(0) = "[Leser1]"
leser(1) = "[Leser2]"
doc.xRead = leser
...
Axel
-
mit den Methoden der NotesUIDocument Klasse kannst Du nebst der Backend Methode von Axel ebenso ein Multivalue Field beschreiben. Der Trenner ist da übrigens ein ":"..
also setfield(...."ABC":"123":"456":"345":"RTE"...)
-
Hi Harvey, Axel, Rob!
ich kann mich nur bei euch bedanken!
Ich habe gestern den ganzen Tag damit verbracht mein Code zu ändern und nichts hat geklappt.
Super seid ihr!! Danke