Frageparameter
  • 13 May 2024
  • 1 Minute to read
  • Dark
    Light
  • PDF

Frageparameter

  • Dark
    Light
  • PDF

The content is currently unavailable in English. You are viewing the default German version.
Article summary

Je nach Konfiguration möchte man Frageparameter nicht angezeigt bekommen oder vielleicht nur ausgegraut, sprich nicht veränderbar angezeigt bekommen. Ist bei Frageparametern durch vorherige Konfiguration nur ein einziger Wert zulässig, so kann man diesen direkt setzen (ist keine Vorbelegung) und zusätzlich auch noch auf “Anzeige“ stellen.

Jeder Frageparameter hat 4 visuelle Zustände die durch das USEOF-Attribut gesetzt werden können:

USEOF

Beschreibung des USEOF - Attributes

1

Eingabe - sichtbar, Wert kann verändert werden

2

Anzeige - sichtbar, Wert kann nicht verändert werden

3

Verborgen - unsichtbar, verknüpfte Makros springen nicht an

4

Hintergrund - unsichtbar, verknüpfte Makros springen an (Hilfsparameter)

Ein- und ausblenden von Frageparametern (USEOF)

Frageparameter werden entweder im Initialisierungsmakro (Startmakro der Maske) oder im Validierungsmakro durch das Verändern des USEOF-Attributes manipuliert. Der zu manipulierende Frageparameter muss in der Tabulatorreihenfolge hinter dem Frageparameter stehen, welche ihn manipuliert.

Bsp.: Auszug aus einer Fensterkonfiguration

Im Bild zuvor hatte man keine Festverglasung gewählt und daher konnte man einen Beschlag auswählen und auch ein Flügelzubehör konnte erfasst werden. Wählt man jedoch eine Festverglasung so verschwindet das Beschlagsfeld und das Flügelzubehör kann nicht ausgewählt werden und wird auch ausgehakt. Zusätzlich erfolgt eine Flächenberechnung im Frageparameter FpFlaeche:

Die zugehörigen Makros sehen folgendermaßen aus:

PROCEDURE InmFmUeb03_04 !Init-Makro der Maske FmUeb03_04

RUNTIMECHANGE = TRUE

ADJUSTGAPATRUNTIME = TRUE

RUN mcrAllgemein.SetHeader (TxProgrammVrs, txtVrs, txtPrmVrs)

!Der Frageparameter FpFlaeche wird immer berechnet, d.h. nur ein Anzeigefeld

FpFlaeche.USEOF = 2

END

PROCEDURE VdmFpEinbaufeld !Validierungsmakro von FpEinbaufeld

RUN EinbaufeldSteuerung

END

PROCEDURE EinbaufeldSteuerung

!Festverglasung hat keinen Beschlag und das Flügelzubehör ist auch nicht relevant

IF FpEinbauFeld = "FIX" THEN

FpBeschlag.USEOF = 3

FpFluegelZub.USEOF = 2

FpFluegelzub.DISPLAYVALUE = 0

ELSE

FpBeschlag.USEOF = 1

FpFluegelZub.USEOF = 1

ENDIF

END

PROCEDURE VdmFpHoehe

FpFlaeche = FpBreite * FpHoehe / 1000 / 1000

FpFlaeche.DISPLAYVALUE = FpFlaeche

END

Anzeigewert für nachfolgende Parameter setzen (DISPLAYVALUE)

Frageparameter.DISPLAYVALUE = Wert

Das Setzen dieses Attributes eines Frageparameters erfolgt im Validierungsmakro. Wichtig ist nur das der Frageparameter dessen Wert gesetzt wird in der Tabulatorreihenfolge nach dem Frageparameter steht, der die eigentliche Berechnung durchführt:

Verlässt man den Frageparameter FpHoehe so wird die Fläche berechnet. Der Frageparameter FpFlaeche hat als Tabulatorindex den Wert 5 und ist somit größer als der Tabulatorindex von FpHoehe.


Was this article helpful?

What's Next