Picture local variables


Local variables are variables, that are valid within a picture instance. It means that the same picture, opened on several consoles (processes D2000 HI) at the same time, uses its copies of local variables. Local variable are visible within the picture script, in the system level are not available. They can be connected to graphic object and Windows controls.
There are four categories of picture local variables:



Configuration of local variables



Clicking the button from the Main toolbar opens the dialog box allowing to configure local variables.

Definition of a local variable consists of the following attributes:


First columnThe column is used to select given local variable in the list. Double-click on the column corresponds to clicking the button OK in the dialog window. After inserting graphic objects from clipboard into picture, the column shows symbols for added local variable or name or definition conflict.
Variable nameLocal variable name. The name can be used either for connection to picture graphic object or in the picture script. The name must begins with the character '_' (underline).
Value typeLocal variable value type. Possible types:
  • BOOL - binary, logical variable
  • INT - integer variable
  • REAL - real variable
  • TIME - variable of Absolute time type
  • TEXT - text variable
  • STRUCT - structured variable
ValueThe attribute is valid only for reference variable and defines its value for use in the picture script.
CategoryCategory of the local variable. According to selected category, local variables in the list are shown in corresponding colors:
  • LOCAL - basic local variable
  • INOUT - input-output local variable used for passing parameters between pictures
  • REFID - reference local variable used for object identification in picture script
  • INDEX - indexed local variable that specifies a row of structured variable
StructureThe attribute is valid only for the value type STRUCT and defines the object of Structure definition type, that determines the type of structured local variable.
The attribute is also valid for index local variable that handles a filter (detailed description in index local variables below).
Filter typeFilter type of index local variable (detailed description in index local variables below).
Status textObject of Status text type, that will be used for displaying the value of the local variable when it is connected to graphic object.


Use of local variables



Basic variablesThey are used for connect to graphic objects / Windows controls. Connection is being performed in the palette Connect object - the tab Connect. Using such a connected local variable allows to read or modify the object contents.
Input-output variablesThey are used for parameter passing among pictures. Among pictures they are paired by name - when a picture is being opened from mother picture, the contents of mother picture variables is copied into input-output variables with the same names in the opened picture. Before closing the new picture, new contents of the input-output variables is copied to corresponding mother picture variables.
Reference variables

They are used to name (identification) objects. There are three cases, you need to identify an object:

  • when you need to call an object function
  • when you define an object event handler
  • when you detect the event source in generic event handler

 

- e.g. %HI_SetText(_N1, "Text")
- e.g. ENTRY N1_OnClick

- e.g. ENTRY OnClick(IN INT _RefID)
              IF _RefID = _N1 THEN
Indexed variablesThey are used to handle current displayed row of structured variable connected to graphic object to view. Handling the value of indexed variable from the picture script you can change current connected structure row. The change of value in the picture ensures the change of value of variable but not the connected row of structure.

Index variables can handle so-called filter. Filter allows optimization of the communication between the processes D2000 Server and D2000 HI by distribution of the values of the row defined by the indexed variable and not the values of whole structured variable. In the case, the indexed variable must be bound with an structured variable using the attribute Structure. Filter type is defined in the attribute Filter type:

  • No filter - filtering is disabled - there are distributed value changes of all rows.
  • Passive - filtering is enabled. Initial value of the indexed variable is not defined - it must be initialized in the picture script. While no value of the indexed variable is defined no change of filtered structured variable is not distributed.
  • Active - filtering is enabled. Initial value of the indexed variable is automatically set according the picture instance. After opening the picture, the distributed value of the filtered structure row is according the picture instance number.

When the filtering is enabled, value distribution can be also handled by the functions %HI_OpenRow, %HI_CloseRow, %HI_ChangeRow.


Note:
List of local variables is sorted first by category (the column Category) and then by name (the column Variable name). Dialog box of local variables keeps the last sorting when it is reopened.
When a conflict is occurred (see the chapter Inserting graphic objects from clipboard into picture), the list is sorted only by name.
Clicking on header of some column classifies the list downwardly, next clicking classifies it upwardly.
When the local variable is editing from the Connect object palette, tab Script, the appropriate row in the dialog window of local variables is color highlighted (gray color).

Napíšte komentár