Name
VARTYPE

Syntax
VARTYPE (variable)

Aufklappen Wertebereiche
variable Variable beliebigen Typs

Aufklappen Erläuterung
Gibt als Ergebnis den Typ der variable zurück:
1: Numerisch (es erfolgt keine weitere Unterscheidung)
2: Text (string)

Nützlich beim Einlesen externer Daten oder wenn Texte durch die SPLIT-Funktion zerlegt wurden. Befehle unter Verwendung falscher Varablentypen erzeugen Fehlermeldungen, die mit dieser Funktion abgefangen werden können.

Aufklappen Beispiel
n = SPLIT ("15.25 kg", "%n %s", zahl, einheit)

IF VARTYPE(einheit)=2 THEN
  PRINT "Verwendete Einheit: "+einheit
  ELSE
  PRINT "»einheit« ist kein Text, sondern eine Zahl:",einheit
  ENDIF

IF VARTYPE(zahl)=1 THEN
  PRINT "Menge in Gramm: ",zahl*1000
  ELSE
  PRINT "»zahl« ist keine Zahl, sondern eine Text:",zahl
  ENDIF


Errechnet die Werte korrekt. Tauscht man die Typen in der ersten Zeile (%n und %s) oder die Zuordnung:
n = SPLIT ("15.25 kg", "%n %s", einheit, zahl)
wird dies bemerkt und entsprechend reagiert.

Aufklappen Besonderheiten
Die Funktion kann einen zur Verzweiflung treiben, denn häufig tauchen dennoch Fehlermeldungen auf. Was wir beobachtet haben:

Die Variable, die auf ihren Typ hin geprüft werden soll, darf im Skript nicht explizit definiert werden. Wenn man im obigen Beispiel die erste Zeile ersetzt durch einheit=5 erfolgt eine Fehlermeldung beim Skriptdurchlauf.

Aufklappen ArchiCAD
ab 6.5