Back Forward Activity form
Completing the Steps tab

About Activity rules

Complete the  Steps  tab to define processing.

TipYou can create activities with more than thirty steps, but a best practice to promote modularity is to limit each activity to thirty or fewer steps. If your planned activity requires more than this limit, consider how to break it up into modular parts for clarity and maintainability.

If this activity is to support a Declare Trigger or Declare OnChange rule, select an Activity Type on the Security  tab before entering steps.

TipThis form is wide. Click the collapse arrow (Collapse) to hide the navigation panel and reveal more of this form. When done, click the expand arrow (Expand) to restore the navigation panel.

For more detail on parts of this tab, see:

    Steps tab — Entering preconditions
    Steps tab — Iteration

    Steps tab — Entering a method and parameters
    Steps tab — Entering transitions
    Steps tab — Using the Show Calls button
    Methods by function
    Methods by name

This tab defines a numbered list of method calls, known as steps. Activities may contain one or dozens of steps. Steps execute in sequence except as described. Each row contains:

Many choices and values for each row are initially hidden. Click any field in the row to make additional controls and fields visible. Use the standard add row (Append Row), append row (image/img00020.gif), and delete row (zzz) buttons with this array.

You can reorder rows using drag-and-drop. Click the numeral at the left of a row and drag. Also, when you have two activity rules open (each with the  Steps tab displayed) you can drag a step from one activity and drop it onto the steps array of the other. Or, right-click the numeral to access a context menu with Cut, Copy, and Paste options.

Element

Description

zzz

Click to insert a new blank row above the current row.

zzz

A number identifying this step. As the activity runs, the system executes steps in numeric order, with exceptions as described below. You can reorder steps easily. Click and drag to move any step to a different position in the array of rows.

zzz

Click to expand the form to display all elements of this row — Iteration, precondition, method parameters, and transition. Clickzzzto collapse the form, hiding these elements. (Or clickzzz to expand all rows, and then zzz to collapse all rows.)

Label

Optional. Enter a one- or two-character unique step label name if you intend to reference this step as a destination in an (earlier-numbered) precondition or transition. To make a step become a comment, enter two slash marks (//) in the Label box. When the activity executes, the system ignores and skips over steps that are commented out.

When you mark a parent step of a multistep iteration as a comment, all the child steps of that iteration are also treated as comments.

In system-generated Java, label names are referred to as block names.

image/img00023.gif
Iteration

The image/img00023.gifcolumn identifies iterations, optional fields that can define an enumeration of or loop condition for this step. If a row is not selected, a checkmarkzzzindicates that this step is iterated.

When the row is selected, click the zzz button to add an iteration or zzz to access the details of the existing iteration. See Completing the Steps tab — Iteration.

Description

Optional. Enter a brief description of what this step does, as internal documentation.

image/img00029.gif
Precondition

The image/img00029.gif column identifies preconditions, optional fields that can cause this step to be skipped. When a row is not selected, a checkmarkzzzindicates that this step has a precondition defined. When the row is activated, clickzzzto add a precondition or the zzz to access the details of the existing precondition. See Completing the Steps tab — Preconditions for details.

Step Page

Optional. Identify the page on which this step is to act. If you leave this field blank, this step acts on the primary page of the activity. Start the page name with a letter and use only letters, digits, and the underscore character in the page name. See Understanding page names and reserved pages.

You can enter a period followed by a property name to identify an embedded property of mode Page. Enter a period and the name of a Page List or Page Group property with parentheses and a subscript (index) value to identify a single element of the list or group.

Omit the parentheses if this step involves an iteration over the elements of a Page List or Page Group property.

All page names must also appear on the Pages & Classes tab.

For most methods and the Java instruction, the step page must already exist. However, the following methods create a page from the Step Page information when it does not exist:

  • Property-Set-*
  • Connect-*
  • Obj-Open
  • Obj-Open-By-Handle
  • Obj-Refresh-And-Lock
  • Page-Change-Class
  • Page-Merge-Into
  • Page-New
  • RDB-Open

If the step is to contain a Call or Branch to another activity, identify the page that is to become the primary page of the called activity (unless it is the same as the current activity's primary page). The class of that page must match the Applies To key part of the activity.

If this step is within a multistep iteration of type For Each Embedded Page, For Each Element in Value List, or For Each Element in Value Group, the SmartPrompt list includes only the properties of appropriate mode. For example, if the iteration is of type For Each Element in Value List, only Value List properties (on the class of the primary page) appear. To iterate using a Value List on a different page, enter the full property reference (pagename.propertyname).

TipAs a best practice to avoid potential confusion, don't start a page name that your activity creates or updates with the prefix Declare_. Although this prefix is not reserved, the names of all declarative pages — read-only pages created and maintained by declarative pages rules (Rule-Declare-Pages rule type) — start with this prefix.

CautionPage names are unique within the clipboard. When creating a page, if another page with the name is already present at the same point in the clipboard structure, the system deletes it and replaces it with an empty page.

image/img00030.gif
Method parameters

ClickGears to expand the Method area. In the expanded area you can define or review parameters for the method, or other aspects of the method or instruction, such as Java source code. See Completing the Steps tab — Method parameters.

Method

SmartPromptOptional. Identify the method or instruction that this step executes.

A few methods are used only in Parse Structured rules, and cannot appear in activities. Certain methods cannot be used in activities with an Activity Type of OnChange or Trigger; other methods cannot be used in an iteration step. The SmartPrompt list shows those you can use here.

You can leave the Method field blank; any preconditions and transitions in the step are evaluated normally.

image/img00031.gif
Pencil

After you've entered a method, you can click this button to review the types (not the values) of that method's parameters. If you entered a Call, Branch, Collect or Rule instruction, you can click this icon to display the target activity in a new window. If you entered the Java instruction, click to display the Java source code.

image/img00033.gif

Transition

Theimage/img00033.gifcolumn identifies transitions, optional fields that can cause control to jump to a later labeled step. When a row is not selected, a zzz indicates that this step has a transition defined.

When the row is activated, the clickzzzto add a transition orzzz to access the details of the transition. For details, see Completing the Steps tab — Transitions.

image/img00034.gif

Click the trash can button to delete a step.

These appear at the bottom of the Steps tab:

Element

Description

zzz

Click to expand all step rows.

zzz

Click to collapse all step rows.

 Show Calls

Click to display a calling hierarchy display. See Activity form — Using the Show Calls button.

API Version

Accept the default value of 03-02 for this field.

OldA value of 02 in this field indicates the rare situation that this activity depends on the Process Commander Version 02 API. You cannot create new activities that use this older API version.

zzz About Activity rules