Domino 9 und frühere Versionen > ND8: Entwicklung
evaluate liefert kein Ergebnis
wittmann_franz:
Hallo zusammen,
stehe hier mächtig auf dem Schlauch und komme nicht weiter mit einem Script insbesondere evaluate
Const NotesMacro$ = {@DbLookup("" : "NoCache" ; "" : "" ; "(LookupArchivverwalternachArchivverwalter)"; _wert ; 2)}
Dim vEval As Variant
scode = doc.Abteilungscode(0)
searchFormula = {(Form = "Akte") & (Abteilungscode = "} & scode & {")}
Set coll = db.Search(searchFormula, Nothing, 0)
Set dcdoc = coll.GetFirstDocument ()
While Not (dcdoc Is Nothing)
vEval = Evaluate (NotesMacro$ , dcdoc)
dcdoc.abtRegistratur = vEval
Call dcdoc.Save(True,False)
Set dcdoc = coll.GetNextDocument(dcdoc)
Wend
Die Collection liefert Dokumente zurück, kann ich im Debugger nachvollziehen.
Es ist im Übrigen egal welche Fromel in der Constanten steht es wird kein Ergebnis auf die Variable vEval zurückgegeben.
Die Formel dblookup in einem berechneten Feld funktioniert ansonsten.
Es erscheint auch keinerlei Fehler bei Ausführung des Scriptes.
Vielen Dank für Eure Hilfe.
Server 8.5.2
Client 8.5.2
pram:
Evtl der auszulesende Feldname falsch angegeben?
Const NotesMacro$ = {@DbLookup("" : "NoCache" ; "" : "" ; "(LookupArchivverwalternachArchivverwalter)"; "_wert" ; 2)}
Gruß
Roland
wittmann_franz:
Hallo Roland,
vielen Dank, genau das wars. _wert ist natürlich eine Variable und nicht der Feldname.
Die Hilfe sagt, dass NotesMacros einen array zurückgeben und dieser nur 1 element enthält.
Bei mir sollte eigentlich auch mehrere Werte zurückgegeben werden, ist aber wie in der Hilfe beschrieben nicht so.
Es wird nur der erste Wert zurückgegeben.
Wie kann ich das ändern?
koehlerbv:
--- Zitat von: wittmann_franz am 23.05.12 - 12:14:39 ---Die Hilfe sagt, dass NotesMacros einen array zurückgeben und dieser nur 1 element enthält.
--- Ende Zitat ---
Wo liest Du das? Evaluate liefert ein Variant zurück, das durchaus ein Array mit n Elementen enthalten kann.
Bernhard
pram:
http://www-10.lotus.com/ldd/ddwiki.nsf/dx/dblookup-troubleshooting.htm
Ggf. ist es eine der folgenden Ursachen:
- When returning multiple values (as will occur if there are multiple documents matching your key), formula language returns them as a list. But a list can have only one datatype
- If the column is multivalued, but the column option to display multiple values in separate rows is not selected, you can only match the first value in a lookup.
(Außerdem gibt es noch einen Bug in Verbindung mit RETURNDOCUMENTUNIQUEID + Mehrfachwerten http://www-10.lotus.com/ldd/nd8forum.nsf/0/8f7fd6d8c8b308c085257603002956ca?OpenDocument)
Gruß
Roland
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln