Domino 9 und frühere Versionen > Entwicklung
Backend Lesefeld setzen
TMC:
Hi,
ich setze wie folgt in einem Script ein Backend-Feld:
doc.pReaders = "[Admin],[All]" 'Leserfeld
Das Feld ist ein Leserfeld.
Allerdings zeigt mir die View die Doks nicht mehr an, egal welche Rolle ich habe.
Wenn ich statt dem Komma ein Doppelpunkt mache geht es auch nicht.
Per Formelsprache würde ich es so machen:
@Trim(@Unique("[Admin]" : "[All]")
(hab ich mir aus einem Beispiel von mir gezogen wo es klappt)
Wie kann ich per Script die beiden Rollen übergeben?
TMC
Semeaphoros:
Jo, det geht so nicht, das setzt nur einen String, statt zwei Werte. Gibt mehrere Varianten, das zu tun, zum Beispiel:
Dim it as NotesItem
Set it=Doc.ReplaceItemValue("pReaders","[Admin])
it.isreaders=True
it.AppendToTextList("[All"])
TMC:
danke, so gehts.
Gruß,
TMC
Semeaphoros:
Schön, vielleicht bis später, mache zwischendurch was für die Kondition .....
koehlerbv:
Während Semeaphoros beim Leute-verkloppen ist (naja, Judo ;-), hab' ich mal weiter gedacht ;-))
So geht es vielleicht eleganter:
doc.DEINMULTIVALUEFELD = Evaluate ({"[ReadersAll]" : "[Administrators]" : "[DBManagers]"})
Danach natürlich noch NotesItem.IsReaders = true, wie schon von Jens beschrieben.
So richtig bequem ist es, wenn man eine Function hat, die beliebig Arrays zusammenfügt - das ist auch eine richtig nette Programmierübung für einen Begabten wie Dich (deswegen sende ich Dir auch nicht mein AddArray - ätsch-bätsch).
MeinVariant = AddArray (MeinVariant, Neue(r) Wert(e))
Dabei sollte es dann egal sein, ob MeinVariant noch leer ist oder NeuerWert vielleicht nur ein String ...
Wie gesagt - 'ne coole Übung ;-)
Ciao - und sag' an, wenn ich / wir helfen kann / können,
Bernhard
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln