Eine tolle Möglichkeit von Rukovoditel ist, dass man relativ einfach zusammengesetzte Scripte erzeugen lassen kann, in dem man Variablen und Werte in Tabellen eingibt und sich dann mit Hilfe eines selbst geschriebenen PHP-Scriptes die Ruko-Daten mittels einer API-Schnittstelle mit den passenden GDL-Script-Schnipseln zusammenbaut.

Bei einem VALUES{2} - Befehl gibt man folgende Variablen in einer Tabelle in Rukovoditel ein:

  • Parameter-Name
  • Parameter-Beschreibung
  • Array-Prefix
  • Optionale IF ... THEN Abfrage
  • Array-Werte Text
  • Array-Werte Bild

In obigen Beispiel sind die Bildnamen bzw. Indizes leer gelassen, da noch nicht feststehend.

Nach der Eingabe klickt man auf den Ausgabelink und erhält folgende Scripte jeweils einen Abschnitt für Master-Script, Parameter-Script und User-Interface-Script.
Hinweis: Es werden immer alle Routinen für sämtliche VALUES{2}-Befehle eines Objektes ausgegeben, welche in Rukovoditel angelegt wurden.

GDL
VALUES{2}-Befehle für ACO-Koerper

! MASTER-SCRIPT

DIM _nennweite_text[], _nennweite_pic[], _nennweite_value[] 
i = 1 
_nennweite_text[i] = "nicht zugewiesen" : _nennweite_pic[i] = "" : _nennweite_value[i] = i : i = i + 1 
_nennweite_text[i] = "75" : _nennweite_pic[i] = "" : _nennweite_value[i] = i : i = i + 1 
_nennweite_text[i] = "100" : _nennweite_pic[i] = "" : _nennweite_value[i] = i : i = i + 1 
_nennweite_text[i] = "125" : _nennweite_pic[i] = "" : _nennweite_value[i] = i : i = i + 1 
_nennweite_text[i] = "150" : _nennweite_pic[i] = "" : _nennweite_value[i] = i : i = i + 1 
_nennweite_text[i] = "175" : _nennweite_pic[i] = "" : _nennweite_value[i] = i : i = i + 1 
_nennweite_text[i] = "200" : _nennweite_pic[i] = "" : _nennweite_value[i] = i : i = i + 1 
_nennweite_text[i] = "275" : _nennweite_pic[i] = "" : _nennweite_value[i] = i : i = i + 1 
_nennweite_text[i] = "300" : _nennweite_pic[i] = "" : _nennweite_value[i] = i : i = i + 1 
_nennweite_text[i] = "400" : _nennweite_pic[i] = "" : _nennweite_value[i] = i : i = i + 1 
_nennweite_text[i] = "500" : _nennweite_pic[i] = "" : _nennweite_value[i] = i : i = i + 1


DIM _belastung_text[], _belastung_pic[], _belastung_value[] 
i = 1 
IF int_lage = 2 OR int_lage = 4 OR int_lage = 6 OR int_lage = 7 OR int_lage = 8 OR int_lage = 9 THEN : _belastung_text[i] = "nicht zugewiesen" : _belastung_pic[i] = "" : _belastung_value[i] = i : i = i + 1 : ENDIF 
IF int_lage = 2 OR int_lage = 3 OR int_lage = 6 OR int_lage = 7 or int_lage = 9 THEN : _belastung_text[i] = "A: (Fußgänger; Radfahrer; Grünflächen)" : _belastung_pic[i] = "" : _belastung_value[i] = i : i = i + 1 : ENDIF 
IF int_lage = 2 OR int_lage = 3 OR int_lage = 5 OR int_lage = 6 OR int_lage = 7 or int_lage = 9 THEN : _belastung_text[i] = "B: (PKW)" : _belastung_pic[i] = "" : _belastung_value[i] = i : i = i + 1 : ENDIF 
IF int_lage = 2 OR int_lage = 3 OR int_lage = 5 OR int_lage = 6 OR int_lage = 7 or int_lage = 9 THEN : _belastung_text[i] = "C: (LKW gelegentlich)" : _belastung_pic[i] = "" : _belastung_value[i] = i : i = i + 1 : ENDIF 
IF int_lage = 2 OR int_lage = 3 OR int_lage = 5 OR int_lage = 6 OR int_lage = 7 OR int_lage = 9 THEN : _belastung_text[i] = "D: (LKW häufig)" : _belastung_pic[i] = "" : _belastung_value[i] = i : i = i + 1 : ENDIF 
IF int_lage = 5 OR int_lage = 9 THEN : _belastung_text[i] = "E: (LKW Müll; Feuerwehr)" : _belastung_pic[i] = "" : _belastung_value[i] = i : i = i + 1 : ENDIF _belastung_text[i] = "F: (Flugzeuge)" : _belastung_pic[i] = "" : _belastung_value[i] = i : i = i + 1
! ---------------------------------------------------------------------- !

DIM _lage_text[], _lage_pic[], _lage_value[] 
i = 1 
_lage_text[i] = "nicht zugewiesen" : _lage_pic[i] = "" : _lage_value[i] = i : i = i + 1 
_lage_text[i] = "Plätze" : _lage_pic[i] = "" : _lage_value[i] = i : i = i + 1 
_lage_text[i] = "Parkdeck" : _lage_pic[i] = "" : _lage_value[i] = i : i = i + 1 
_lage_text[i] = "WHG-Fläche" : _lage_pic[i] = "" : _lage_value[i] = i : i = i + 1 
_lage_text[i] = "Extrembelastung" : _lage_pic[i] = "" : _lage_value[i] = i : i = i + 1 
_lage_text[i] = "Rampe" : _lage_pic[i] = "" : _lage_value[i] = i : i = i + 1 
_lage_text[i] = "Fassade" : _lage_pic[i] = "" : _lage_value[i] = i : i = i + 1 
_lage_text[i] = "innenliegend" : _lage_pic[i] = "" : _lage_value[i] = i : i = i + 1 
_lage_text[i] = "Sonstiges" : _lage_pic[i] = "" : _lage_value[i] = i : i = i + 1

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

DIM _material_zarge_text[], _material_zarge_pic[], _material_zarge_value[] 
	i = 1 
	_material_zarge_text[i] = "nicht zugewiesen" : _material_zarge_pic[i] = "" : _material_zarge_value[i] = i : i = i + 1 _material_zarge_text[i] = "Edelstahl" : _material_zarge_pic[i] = "" : _material_zarge_value[i] = i : i = i + 1 _material_zarge_text[i] = "Gusseisen" : _material_zarge_pic[i] = "" : _material_zarge_value[i] = i : i = i + 1 _material_zarge_text[i] = "Kunststoff" : _material_zarge_pic[i] = "" : _material_zarge_value[i] = i : i = i + 1 _material_zarge_text[i] = "Stahl verzinkt" : _material_zarge_pic[i] = "" : _material_zarge_value[i] = i : i = i + 1

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

DIM _material_rinne_text[], _material_rinne_pic[], _material_rinne_value[] 
	i = 1 
	_material_rinne_text[i] = "nicht zugewiesen" : _material_rinne_pic[i] = "" : _material_rinne_value[i] = i : i = i + 1 _material_rinne_text[i] = "Polymerbeton" : _material_rinne_pic[i] = "" : _material_rinne_value[i] = i : i = i + 1 _material_rinne_text[i] = "Kunststoff" : _material_rinne_pic[i] = "" : _material_rinne_value[i] = i : i = i + 1

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

! PARAMETER-SCRIPT

VALUES{2} "int_nennweite", _nennweite_value, _nennweite_text

VALUES{2} "int_belastungsklasse", _belastung_value, _belastung_text

VALUES{2} "int_lage", _lage_value, _lage_text

VALUES{2} "int_material_zarge", _material_zarge_value, _material_zarge_text

VALUES{2} "int_material_rinne", _material_rinne_value, _material_rinne_text

! INTERFACE-SCRIPT

UI_OUTFIELD "Nennweite", dx, dy + dyO, outL, outH, 1 UI_INFIELD{3} "int_nennweite", dx2, dy, inL, inH, 8, "", 0, 0, 0, 0, 0, 0, _nennweite_pic, _nennweite_text, _nennweite_value dy = dy + led

! ......................... !

UI_OUTFIELD "Belastungsklasse", dx, dy + dyO, outL, outH, 1 UI_INFIELD{3} "int_belastungsklasse", dx2, dy, inL, inH, 8, "", 0, 0, 0, 0, 0, 0, _belastung_pic, _belastung_text, _belastung_value dy = dy + led

! ......................... !
UI_OUTFIELD "Einbaubereich", dx, dy + dyO, outL, outH, 1 
UI_INFIELD{3} "int_lage", dx2, dy, inL, inH, 
8, "", 0, 0, 0, 0, 0, 0,
 _lage_pic, 
 _lage_text,
  _lage_value 
  dy = dy + led
  
! ......................... !

UI_OUTFIELD "Material Zarge", dx, dy + dyO, outL, outH, 1 
UI_INFIELD{3} "int_material_zarge", dx2, dy, inL, inH,
 8, "", 0, 0, 0, 0, 0, 0, 
 _material_zarge_pic, 
 _material_zarge_text, 
 _material_zarge_value 
 dy = dy + led
 
! ......................... !

UI_OUTFIELD "Material Rinne", dx, dy + dyO, outL, outH, 1 
UI_INFIELD{3} "int_material_rinne", dx2, dy, inL, inH, 
8, "", 0, 0, 0, 0, 0, 0, 
_material_rinne_pic, 
_material_rinne_text, 
_material_rinne_value 
dy = dy + led

! ......................... ! 

Selbstverständlich lassen sich nachträglich in Ruko die Werte noch ändern oder weitere VALUES hinzufügen.