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
 

Customizing GEL Actions

Progress Developer Studio for OpenEdge stores all out-of-the-box GEL actions (listed in the Palette pane of the GEL tool) as XML files in the following subfolders of the Workspace_Home\.com.savvion.studio\scripting folder:
*bpserver folder, which contains GEL action files for BPM processes.
*bpmwebflow folder, which contains GEL action files for Web applications.
The following table lists the GEL action files available in each of the above folders:
Table 60. List of GEL action files
For
GEL Action files
Description
Business Processes
main.palette
The initial file to be loaded and which contains the list of other GEL action files used along with the overall structure including the categories and the labels.
data_operations.palette
Includes the GEL actions in the Data Operations pane, as described in Adding data operations.
value_expressions.palette
Includes the GEL actions in the Value Expressions pane, as described in Adding value expressions.
other.palette, control_structures.palette, custom.palette
For the Other pane, which includes the GEL actions in the sub-categories, namely Control Structures and Custom, as described in Adding control structures and custom script.
conditions.palette, conditions_comparison.palette, conditions_other.palette
For the Conditions pane, which includes the GEL actions in the sub-categories, namely Comparisons and Other, as described in Adding Conditions.
jst.palette, jst_get.palette, jst_set.palette, jst_utility.palette (located in the jst folder)
For the JSTools API pane, which includes the GEL actions in the sub-categories, namely Getters, Setters, and Utility, as described in Using JSTools API.
Web applications
The list and description of GEL action files are same as that for Business Processes, with the following differences:
*Does not include the JST palette files.
*Includes the value_expressions_complex.palette and value_expressions_datetime.palette files, which include the GEL actions in the sub-categories, namely Complex Expressions and Date/Time, as described in Value expressions in web applications.
You can use the main.palette file to define the categories and the list of GEL action files. Each <category> tag defines the category label and the path of this category in the tree. For the path of subcategories, you must prefix it with the category name. The order of the subcategories in this file is important, as this same order is displayed in the tree. Each of the action files includes the list of action items.
Note: To define a localized value, you must use the $property.key syntax to refer to a value in your property file. Custom property files must be stored in the same folder location as the *.palette files. Progress Developer Studio for OpenEdge provides two property files namely, scripting.properties and scripting_ja.properties, to be used for localization.
You can create your own categories and custom GEL action files. You must include the same in the main.palette file so that the GEL tool (when launched later) displays your custom categories and actions.
Each <item> tag of an action includes the following attributes:
*label of the action item that is displayed in the tree.
*path, which defines the location in the tree where the action item appears.
*icon, which defines the image file to be used for the action item.
The grid item within the <item> tag is used to organize the widgets in a grid format. For example, the grid item for the "Set widget value" action item includes the following attributes:
*label to add the label, "Set the value of."
*choiceWidget to add a combo box. The id="widget" attribute is used in code generation to refer to the widget's selected value. The type="WIDGET" attribute is used to list all available (or those specified in the filter tag) widgets on your form.
*label to add the "to" label.
*entryWidget to add a text box or text area. The id attribute is used in code generation to refer to this widget. The presentation attribute is used to specify either a text box or a text area.
The <template> tag contains the script to be executed using the values entered (or selected) in the listed fields. The ${<widgetID>} syntax is used to refer the widget ID (for example, ${widget} or ${character}) and is replaced (at runtime) with value entered in the widget with this ID.
Note: For detailed information on all tags and attributes that can be used in the .PALETTE files, see Action script tags.
* Action script tags