Name
VALUES{2}

Syntax
VALUES{2} "parametername" [,] wert1, beschreibung1 [, wert2, beschreibung2 ... wertn, beschreibungn]
oder
VALUES{2} "parametername" [,] array_wert1, array_beschreibung1 [, array_wert2, array_beschreibung2 ... array_wertn, array_beschreibungn]

Aufklappen Erläuterung
Befehl im Parameter-Script, der es ermöglicht, einer Zahl Texterläuterungen zuzuweisen, so dass in der Parameterliste der Textstring als Auswahlfeld vorhanden ist, im Script jedoch mit dem Zahlenwert gerechnet wird.
Besonders gut geeignet, um mehrsprachige Auswahllisten zu erstellen.
Arbeitet zusammen mit PARVALUE_DESCRIPTION: dieser gibt im Script die Texterläuterung des VALUES{2}-Befehls aus.

Aufklappen Beispiel
Der Parameter "elemente" ist vom Typ Ganzzahl.
VALUES{2} "elemente", 1, "Wasser", 2, "Erde", 3, "Feuer", 4, "Luft"

Auch möglich ist die Verwendung eines gesamten Arrays. Diese werden automatisch zur Laufzeit erweitert:

dim array_zahlen[]
dim array_texte[]
array_zahlen[1] = 1 : array_zahlen[2] = 2
array_texte[1] = "Nr. Eins" : array_texte[2] = "Nr. Zwei"
VALUES{2} "etwas", array_zahlen, array_texte


Möchte man z.B. für eine Listenauswertung den Parameter im Klartext haben, kann man diesen auch zurückschreiben. Der Parameter "klartext" ist vom Typ Ganzzahl.
PARAMETERS klartext = PARVALUE_DESCRIPTION ("zahl")

Im 2D-Script zur Anzeige der Beschreibungswerte:
TEXT2 0,0,PARVALUE_DESCRIPTION ("zahl")

Aufklappen Besonderheiten
Die Zahlen dürfen den kompletten Zahlenraum abdecken, können also negativ und Null sein. Es gibt auch keine Beschränkung, dass die gewählten Zahlen aufeinanderfolgend sein müssten. Tatsächlich müssen sie nicht einmal numerisch sortiert im Befehl auftauchen. Allerdings dürfen sich weder die Zahlen, noch die Texterläuterungen doppeln – eine entsprechende Fehlermeldung erscheint sonst. Diese Prüfung erfolgt für Konstanten und Parameter – numerische Variablen statt Zahlen sind möglich – nicht aber für Dictionaries.

Aufklappen Tipps und Tricks
Ebenso wie beim einfache VALUES-Befehl, kann man bei der erweiterten Version auch mit Arrays als Ganzem arbeiten, siehe folgendes Beispiel:

! MASTER-SCRIPT
DIM _material_rinne_text[], _material_rinne_value[]
i = 1
_material_rinne_text[i] = "nicht zugewiesen" : _material_rinne_value[i] = i : i = i + 1
_material_rinne_text[i] = "Polymerbeton" : _material_rinne_value[i] = i : i = i + 1
_material_rinne_text[i] = "Kunststoff" : _material_rinne_value[i] = i : i = i + 1

! ---------------------------------------------------------------------- !

! PARAMETER-SCRIPT

VALUES{2} "int_material_rinne", _material_rinne_value, _material_rinne_text


Aufklappen Kontext
Parameter-Script

Aufklappen ArchiCAD
18.0