Try OpenEdge Now
skip to main content
Developing BPM Applications with Developer Studio
Working with Graphical Event Logic tool : Other GEL tool operations : Customizing GEL Actions : Action script tags
 
Action script tags
You can use the following tags and attributes in the .PALETTE (out-of-the-box and custom) action files:
*<palette version=1.0>
This is the root tag of each .PALETTE file. You must ensure that the version attribute value is the same in your custom file.
*<category label="" path="" icon=""/>
Defines the category label (for example, "data operations") and category path (for example, "expressions/data_operations").
*<item label="" path="" icon="">
Defines the label of the action item (for example, "Set widget value") and the path of the category under which this item is listed (for example, "expressions/data_operations").
*<grid>
The grid container tag with the <widgets> tag, which contains the list of nested widgets.
*<template>
Located in the body of the widget and specifies the script generated by the widget. Uses ${widgetID} to refer to the value of the widget. For list widget values, this tag can include the prefix and suffix using the prefix ${list} suffix format, where ${list} refers to the list of multiple list widget statements, separated by a new line delimiter.
*<choiceWidget type="" filter="">
This is a combo box widget, which allows you to select a form control, adaplet, or a constant value. The type attribute is used to set the type of values (WIDGET, ADAPLET, or CONSTANT). In the case of the type="WIDGET" attribute value, you can add the filter attribute to specify a comma-separated list of widget types to be displayed. The available widget types are BUTTON, CHECK_BOX, COMBO_BOX, CUSTOM, DATETIME, IMAGE, LINK, LIST, NONE, OBJECT, RADIO_BUTTON, TEXT_AREA, TEXT_FIELD, XML, and DIVIDER. Alternatively, you can use the predefined widget type lists namely, *ALL (for all widgets), *INTEGER_WIDGETS (for widgets with integer values), or *CHARACTER_WIDGETS (for widgets with string values). You can use the following tags within the <choiceWidget> block:
*<choice type="" presentation="">value</choice>
You can add multiple <choice> tags to list the choices in the combo box widget. The type attribute value must match the value of the type attribute in the <choiceWidget> tag. The presentation attribute is used only for type="CONSTANT" attribute value and value is displayed in place of the value specified.
*<selection type="" presentation="">value</selection>
Used to specify the default selection among the list of choices in the combo box widget. The type attribute value must match the value of the type attribute in the <choiceWidget> tag. The presentation attribute is used only for type="CONSTANT" attribute value and value is displayed in place of the value specified.
*<string id="" value="">
You can use this tag to predefine a list of widgets that can replace the comma-separated value of the filter attribute in choiceWidget tag. This is useful when the list of widgets in the filter attribute is long and also when you can reuse this string ID at multiple locations. The id attribute is used to set a unique name (for example, "CHARACTER_WIDGETS") and the value attribute is the comma-separated list of widgets.
*To define the <string> tag for use in a single .PALETTE file, you must add the <string> tag definition once before the <choiceWidget> tags in which you want to use it. For example, refer the <string id="MY_WIDGETS" value="CHECK_BOX,COMBO_BOX,LIST,TEXT_AREA,TEXT_FIELD"/> in any <choiceWidget> tag as <choiceWidget type="WIDGET" filter="*MY_WIDGETS"> by using the *ID syntax.
*Alternatively, to define the <string> tag for use in all .PALETTE files, you must add your <string> tag definition in the main.palette file. The main.palette file contains predefined <string> tags, namely, ALL, INTEGER_WIDGETS, and CHARACTER_WIDGETS. You can refer the predefined and custom <string> tags in the <choiceWidget> tags by using the *ID syntax.
*<entryWidget presentation="" validation="">
This is a text box (or text area) widget. The presentation attribute is used to specify if the widget is a text box (value, "FIELD") or a text area (value, "AREA"). The validation attribute is optional and is used to limit the type of values that you can enter. The available values are FLOAT, INTEGER, or NONE. You can use the following tag within the <entryWidget> block:
*<reference type="" dataType="" encoding="">value</reference>
Used to specify how to manage the value entered in the widget. The type attribute is used to set the type of value (WIDGET, ADAPLET, DATASLOT, or CONSTANT) that you can enter in the widget. You must enter any widget ID (in your form) for type="WIDGET" attribute value, or adaplet (in your form) name for type="ADAPLET" attribute value, or any constant value for type="CONSTANT" attribute value. For Dataslot type, the dataType attribute is used to specify the type of data to be stored in the dataslot. Supported values are LOGICAL, BUSINESSOBJECT, DATE, INTEGER, INT64, OBJECT, and CHARACTER. The encoding attribute (generally used only for constant values) is used to encode the entered string during script generation. Supported values are NONE (no encoding is performed), JAVA_STRING (to encode the entered value as a Java string), HTML (to replace characters (for example, ">") with its HTML code (in this case, "&gt;")), HTML_JAVA_STRING (to combine HTML and JAVA_STRING encodings), and Business Process_STRING_CONSTANT (used in constant expression boxes to exclude the "@" and "$" characters).
*<list label="" prompt="" allowedContent="" max="" delimiter=""/>
This is a list container widget used in IF-THEN and IF-THEN-ELSE constructs. The label attribute is optional and used to specify the label (for example, "If," "then," or "else"). The prompt attribute (optional) is displayed in the list body when it is empty (for example, "drop an expression here."). The allowedContent attribute is used to specify the type of GEL actions that can be dragged on this list. Supported values are EXPRESSION (to drag expression actions) and LOGICAL (to drag conditions that return true or false values). The max attribute value is used to specify the maximum number of action files that can be dropped on the list. The delimiter attribute (optional) is used to specify the string value used to separate the code generated by each widget in the list.
*<operationJoin allowedContent="" label="" prompt=""/>
This is similar to the list container widget and is used for complex nested conditions joined with an operator. All attributes used in this tag are used for the same purpose as the <list> tag attributes. You must use the following tag within the <operationJoin> block:
*<operation>
Used to define the widget to select the type of join operation ("all" or "any") of the list.
*<datetime presentation="">
Available only for Web applications. This widget is used for entering date and time (or date only) values. The presentation attribute is used to specify if the widget is a date-only box (value, "DATE_ONLY") or a date and time box (value, "DATE_TIME"). You can use the <reference> tag within the <datetime> block to specify the default value (in milliseconds), which is the elapsed time (in milliseconds) from the Unix epoch time (January 1, 1970). You can specify a negative value to specify a default value prior to the Unix epoch time. If you do not specify any value in the <reference> tag, the current date (and time) is displayed in the widget at runtime.
*<interval>
Available only for Web applications. This widget is used for entering the time interval values in days, hours, minutes, and seconds. You can use the <reference> tag within the <interval> block to specify the number of seconds in the selected time interval.
*<info>
This attribute stores information of each configured event block added in the Logic tab. You can directly add the information by clicking the View/Change info ( ) icon for the block in the Logic tab.
*<label>
This is the label widget used to specify text.
You can use the following attributes in all widgets and the <grid> tag.
*id=""
The widget ID value, which is referred using the ${widgetID} syntax from the <template> tag.
*content=""
Used to specify the type of content returned by the widget. Supported values are EXPRESSION (to return a script expression (such as, alert('Hello');) and LOGICAL (to return a logical value (true or false)).
*row="" col="" rowspan="" colspan="" fill="true|false"
The row and col attributes are used to specify the position of the widget in the grid. For example, row="0" col="0" places the widget in row 1 and column 1 of the grid. The rowspan and colspan attributes are optional and are used for widgets, which span more than cell in the grid. The fill attribute is optional and used to control the layout of the widget in the grid. If set to true (default), the widget displays as expanded and fills the allocated space. If set to false, the widget does not expand in the allocated space.
*collapsible="true|false" collapsed="true|false"
The collapsible attribute is used to specify if the widget can be collapsed (true) or not (false). For collapsible widgets, the collapsed attribute is used to specify the default state of the widget. The widget displays the toggle expand button (for collapsed="true") and collapse button (for collapsed=false).
*description=""
Provides the description text for a widget block. This is useful when the complete widget block is not displayed (for example, when the block is collapsed).
*searchable="true|false"
If set to true (default), the content of the widget is indexed and included when you search in the Graphical Event Logic (GEL) Editor. If set to false, the contents of this widget cannot be searched.