LotusScript ist strongly typed.
print actbedoc.StartSN
ist ein Array. Du kannst das machen: print actbedoc.StartSN(0). Durch diese "Kurzschreibweise" wird der Inhalt des ersten Elements des Arrays des Feldes automatisch in String konvertiert. print benötigt als Argument String.
Double() heisst: Ein Array von Doubles. Das ist was anderes als ein Double.
Um den Typen des Feldes zu behalten und gleichzeitig den ersten Eintrag des Feldes zu bekommen, geht so was:
Dim startSN as Double
startSN = actbedoc.getItemValue("StartSN")(0)
In realen Anwendungen würde ich aber da noch ein bischen Type-checking zwischenschieben. Zumindest hast du schon mal erkannt, dass es sowas wie TypeName überhaupt gibt. Letztlich kannst du dir bezüglich des Datentyps eines Feldes in einem Notesdokument nicht sicher sein.
Um double als Integer zu nutzen, musst du es afaik in integer um-casten.
Hallo Axel!
Arghl! Diese (unvermuteteten) Arrays machen mich noch wahnsinnig!
Aber es is auch nicht weiter verwunderlich - ich wurschtele grade als Quereinsteiger munter drauf los mit einem eher allgemein gehaltenen Buch und der Notes Designer-Hilfe. (Aber immerhin mit Vorkenntnissen aus anderen Programmiersprachen). Weil ich das ganze im Moment eher freiwillig als mit "offiziellem Chef-Auftrag" mache. Wenn mein erster Entwurf für gut befunden wird und da mehr draus wird, hole ich mir auch noch ein bißchen bessere Doku - bis dahin nerve ich nochmal hier und da im Forum, wenn ich auf Anhieb nix Passendes finde... :-)
Jedenfalls danke für die Erleuchtung!
Ich finde es ein wenig doof, daß ich mit der (FrontEnd-)Definition eines Feldes so wenig bestimmen kann, was nachher für ein Datentyp bei rauskommt. Wenn ich im Designer sage, es sollen keine Mehrfachwerte erlaubt werden, sollte doch klar sein, daß das kein Array ist, oder?
Aber das ist wohl der Preis für die Flexibilität...
Was deinen letzten Hinweis betrifft:
Das müßte dann heißen, oder wandelt Cint auch das ganze Array um, sodaß ich dann wieder mit int_StartSN = Cint(StartSN)
int_StartSN(0)
an den Wert komme?
Werd ich gleich mal probieren...
Ciao
Sascha