Name
VALUES

Syntax
VALUES name [,] [FILLTYPES_MASK schraffurtypen,] [wert1] [, wert2, ... wertn] [,RANGE begrenzer_links von_wert, bis_wert begrenzer_rechts [STEP schrittweite_start, schrittweite]] [,CUSTOM]

Aufklappen Wertebereiche
name, Gültiger Parametername, Typ Text
schraffurtypen, j1 + j2 + j3 (*)
wert1-n, Typ abhängig von Parametertyp
begrenzer_links, ( bedeutet > oder [ bedeutet ≥
begrenzer_rechts, ) bedeutet < oder ] bedeutet ≤
von_wert, Numerisch, abhängig von Parametertyp
bis_wertvon_wert, Numerisch, abhängig von Parametertyp
schrittweite_start, Numerisch, abhängig von Parametertyp
schrittweite ,Numerisch, abhängig von Parametertyp

(*) nur für Schraffurparameter:
 j1= 1: Bauteilschraffur
 j2= 2: Deckschraffur
 j3= 4 Zeichnungsschraffur

Aufklappen Erläuterung
Gibt für Parameter der Parameterliste des Objektes Wertebereiche vor. Diese können einzelne Werte (numerisch, Text) oder für numerische Parameter Wertebereiche sein. Es können auch mehrere Wertebereiche festgelegt werden.
Siehe auch Hintergrund PARAMETERS-Befehl

Aufklappen Beispiel
VALUES "C" SIN(30),4,RANGE(5, 10],12,RANGE(,20] STEP 14.5, 0.5, CUSTOM

Der Parameter C kann folgende Werte annehmen:

0.5, 4, 5 bis 10 (ohne 5), 12, 14.5, 15, 15.5, 16, 16.5, 17, 17.5, 18, 18.5, 19, 19.5, 20

Die möglichen Werte im Bereich 5-10 hängen vom numerischen Typ des Parameters ab. Bei Ganzzahl wären 6, 7, 8, 9 und 10, beim Typ Länge und Winkel ein beliebiger Fließkommawert erlaubt.

VALUES "Auswahl" "oben", "unten", "oben+unten"
Der Parameter Auswahl kann ausschließlich einen der 3 Werte annehmen.

Aufklappen Besonderheiten
Die Syntaxelemente RANGE, STEP und CUSTOM sind erst ab Archicad 6.5 optional möglich. In Version 6.0 verursachen sie eine Fehlermeldung. Analog ist die Option FILLTYPES_MASK erst ab Version 9 erlaubt.

Wird in der Parameterliste (egal ob beim Editieren des Objektes oder später im Einstellungsdialog) ein Wert außerhalb des Definitionsbereiches eingegeben, wird der nächstgelegene erlaubte Wert angenommen.
Beim graphischen editieren des Parameters im Grundriss oder 3D-Fenster rastet der Cursor auf den jeweils zur Position nächsten erlaubten Wert ein.

ArchiCAD® 6.5 bricht die Skriptbearbeitung ohne Fehlermeldung ab, wenn im VALUES-Befehl Parameternamen verwendet werden, die in der Parameterliste nicht aufgeführt sind.

In/bis Archicad 10 führt ein bug/feature dazu, dass bewegliche Fangpunkte trotz des Schlüsselwortes CUSTOM nur auf die Werteliste "einrasten", wenn nicht zusätzlich RANGE mit angegeben wird.

Ist der in einem Objekt eingestellte Wert eines Parameters zum Zeitpunkt des Aufrufes des Einstellungsdialoges nicht zulässig nach der Wertetabelle oder dem Definitionsbereich, wird automatisch der erste Wert der Liste eingesetzt. Dies funktioniert aber nur bei Abarbeitung des Parameterskripts. Ein bug in Archicad 9 bewirkt, dass der Wert zwar korrigiert wird, aber nicht als Änderung in den Plan mit übernommen wird. In Archicad 7 funktioniert dies erwartungsgemäß. Siehe Link zu Thread im ArchiTalk.

Bei der Darstellung mit dem webplugin (mind. mit Version 10) existiert die Begrenzung mit RANGE für bewegliche Fangpunkte nicht. Die Überschreitung der Grenzen müssen separat abgefragt und mit PARAMETERS eingeschränkt werden. Dies ist sehr ärgerlich für bewegliche Parameter, die in Arrays gespeichert sind, da das für diese nahezu unmöglich ist.

Das optionale Komma (,) vor FILLTYPES_MASK wurde mit Archicad 10 eingeführt, um mit der Befehlserweiterung eine neue Programmzeile beginnen zu können, und war zuvor nicht erlaubt. Diese Quellcodelayout-unterstützende Option sollte ab Archicad10 verwendet werden.

Das Schlüsselwort CUSTOM kann auch Bestandteil des UI_INFIELD{3} und UI_INFIELD{4}-Befehls sein.

VALUES funktioniert nicht mit dem in Archicad 23 eingeführten Dictionary-Parameter.

Aufklappen Tipps und Tricks
Beginnt eine numerische Werteliste mit einem negativen Wert wird ein Fehler ausgegeben.
Workaround: Null voranstellen, also z.B: VALUES 0-1, 0, 1, 2

Eine einfache Möglichkeit, bestimmte Wertelisten mehrfach zu verwenden, bieten Arrays oder Array-Parameter; z.B. man definiert folgendes Array im Master-Script:

DIM val[3] : val[1]="leer" : val[2]="voll" : val[3]="halbvoll"

Dann ergibt der Aufruf:
VALUES "bottle" val
im Parameter "bottle" eine Auswahlliste mit den Werten "voll", "leer" und "halbvoll".

Der VALUES-Befehl kann auch in Master-GDL-Objekten verwendet werden. Damit kann global für einen in verschiedenen Objekten vorkommenden Parameter eine Werteliste vorgegeben werden. Z.B. kann zentral mit einem Parameter "selfgdl_ZEICHENSATZ" eine Liste der im Büro zu verwendenden und verfügbaren Schriftarten definiert werden. Natürlich müssen dann auch alle Objekte diesen Parameternamen für Schriftarten verwenden. Die zentral eingestellte Liste kann danach dennoch lokal im Skript jedes Objektes "überschrieben" werden.

Ab Archicad 9 gibt es eine Neuerung in der Zulässigkeit der Parameter. Sind bis Archicad 8.x nur die Parameter der Parameterliste und der 3 Abmessungsparameter (A,B und ZZYZX) zulässig, ist dies nun für Raumstempel um einige erweitert worden. Folgendes Skript ist nun erlaubt:

VALUES "ROOM_NAME" "Wohnen", "Essen", "Küche", custom
VALUES "ROOM_NUMBER" "1","2","3",custom
VALUES "ROOM_HEIGHT" 2.5,2.625,2.75,custom
VALUES "ROOM_BASELEV" 0,0.1,0.2,custom
VALUES "ROOM_FL_THICK" 0,0.1,0.2,custom


Eingesetzt in ein Master-GDL bietet sich so sogar die Möglichkeit Wertelisten für alle geladenen Raumstempel nachzurüsten ohne deren GDL-Code zu ändern. Unabhängig aus welcher Archicad-Version sie stammen.


Aufklappen Kontext
Parameter Skript, Master-GDL-Objekte

Aufklappen ArchiCAD
ab 6.0