bin mal wieder mittelschwer begeistert, und ich weiß nicht, ob ich mich direkt darüber schon mal aufgeregt habe, oder nur über ähnliche Dinge beim Rechnen mit Datum etc.
Man muss so etwas von höllisch aufpassen, bzw. lieber HPCL gar nichts selbst typUmwandeln lassen
Code: Alles auswählen
//strMessage ist eine Variable vom Typ Zeichen
strMessage:="test_string: 1+1="+1+1+" ???"
Richtig, HPCL leidet unter Dyskalkulie: test_string: 1+1=11 ???
Weiter gehts, ich will HPCL helfen und schreibe
Code: Alles auswählen
//strMessage ist eine Variable vom Typ Zeichen
strMessage:="test_string: 1+1="+(1+1)+" ???"
Ich weiß es nicht, das Makro bricht an dieser Stelle anscheinend ab, und es gibt keinerlei Fehlermeldung, weder beim Compilieren, noch beim Ausführen.
Wenn einem so etwas in einem Wenn-Dann Block passiert, springt HPCL wohl zum nächsten Befehl nach dem Wenn-Dann-Block, was evtl. zu nicht nachvollziehbaren Ergebnissen führt (So bei mir passiert).
Und probiert auch nicht, so zu subtrahieren, egal ob mit oder ohne Klammern, auch da endet spontan die Ausführung des Makros.
Man kann aber an manchen Stellen auch Rechnen ohne unbedingt eine Zwischenvariable zu nutzen:
Code: Alles auswählen
//strTemp, strMessage ist eine Variable vom Typ Zeichen
//lngZahl1, lngZahl2 sind Zahlen mit Startwert 0
strTemp:="1234"
lngZahl1:=1
lngZahl2:=1
strMessage:="test_string: Rechnen im Funktionsargument: "+textteil(strTemp,2,lngZahl1+lngZahl2)
Das ganze ist so tückisch, das ich heute kurz davor war, meiner CCU das Fliegen beizubringen...
Das einzige, was VIELLEICHT noch eine Ursache sein könnte, ist das ich das nur mit einer Beta? der ExecEngine (2.46, 130409) getestet habe, die ich von Herrn Krapoth am 12.April bekommen habe, die aber sonst zu meiner Zufriedenheit Dienst tut (Uptime meines Projekts zuletzt über 17 Tage am Stück).
Der Familienvater