Domino 9 und frühere Versionen > Administration & Userprobleme

Evaluate

(1/2) > >>

stitze:
Morgen zusammen, hab ein kleines Problem mit folgender Code Zeile

strUser=strUser+ aclentry.Name+"~~~"+ Evaluate("Implode(aclentry.Roles,",")", doc)

strUser ist eine String Variable, erklärt sich glaub ich von selber ;)
doc ist eine Lotus NotesDocument Variable.

Leider bekomm ich einen Type Missmatch Fehler  ???

Kann mir da jemand weiterhelfen.

Driri:
1. Die Formel, die per Evaluate ausgeführt werden soll, ist fehlerhaft.

- @ fehlt
- Optionen werden in Formelsprache per ; getrennt, nicht per ,
- Evaluate führt das angegebene Macro aus. aclentry.roles steht als String mit im Macro. Du mußt das Macro anders aufbauen :

Evaluate({@Implode(} + aclentry.Roles + {;",")}, doc)

2. Aus Gründen der Übersichtlichkeit, würde ich das lieber entzerren und in mehrere Zeilen schreiben. Das ist allerdings Geschmackssache, hilft aber deutlich der Lesbarkeit des Codes.

rar:
Außerdem gibt Evaluate IMHO ein Array zurück...
Probiers mal mit
Evaluate({@Implode(} + aclentry.Roles + {;",")}, doc)(0)

HTH

stitze:
Ja danke so funktioniert es  :D, vielen Dänk

Könnt ihr mir nur noch erklären warum ihr die {} benutzt habt, ich denke mal das hat was mit dem Methodenaufruf von ACLEntry zu tun?

Driri:
Nein, {} bzw. | ermöglichen das "Einklammern" von Text, da Du ansonsten Probleme mit den Anführungszeichen "" bekommst.

Da gabs gerade noch nen passenden Thread zu : Link

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln