10-7 Working With Business Rules in My Webmethods
10-7 Working With Business Rules in My Webmethods
Version 10.7
October 2020
This document applies to webMethods Business Rules 10.7 and to all subsequent releases.
Specifications contained herein are subject to change and these changes will be reported in subsequent release notes or new editions.
Copyright © 2010-2020 Software AG, Darmstadt, Germany and/or Software AG USA, Inc., Reston, VA, USA, and/or its subsidiaries
and/or its affiliates and/or their licensors.
The name Software AG and all Software AG product names are either trademarks or registered trademarks of Software AG and/or
Software AG USA Inc. and/or its subsidiaries and/or its affiliates and/or their licensors. Other company and product names mentioned
herein may be trademarks of their respective owners.
Detailed information on trademarks and patents owned by Software AG and/or its subsidiaries is located at
http://softwareag.com/licenses/.
Use of this software is subject to adherence to Software AG's licensing conditions and terms. These terms are part of the product
documentation, located at http://softwareag.com/licenses/ and/or in the root installation directory of the licensed product(s).
This software may include portions of third-party products. For third-party copyright notices, license terms, additional rights or
restrictions, please refer to "License Texts, Copyright Notices and Disclaimers of Third Party Products". For certain specific third-party
license restrictions, please refer to section E of the Legal Notices available under "License Terms and Conditions for Use of Software
AG Products / Copyright and Trademark Notices of Software AG Products". These documents are part of the product documentation,
located at http://softwareag.com/licenses/ and/or in the root installation directory of the licensed product(s).
Document ID: RULES-WW-MWS-107-20201015
Table of Contents
1 Getting Started.........................................................................................................................................9
Installation and Configuration Information for My webMethods System Administrators...10
Business Rules are created with the Rules Development feature in Software AG Designer. For
more information, see webMethods BPM Rules Development Help.
Working with Business Rules in My webMethods contains supporting documentation on the following
main topics:
“Hot Deploying and Merging Rule Projects with webMethods Deployer” on page 87.
With respect to processing of personal data according to the EU General Data Protection Regulation
(GDPR), appropriate steps are documented in webMethods BPM Rules Development Help, Processing
Personal Data.
Document Conventions
Convention Description
Narrowfont Identifies service names and locations in the format folder.subfolder.service, APIs,
Java classes, methods, properties.
Italic Identifies:
Variables for which you must supply values specific to your own situation or
environment.
New terms the first time they occur in the text.
{} Indicates a set of choices from which you must choose one. Type only the
information inside the curly braces. Do not type the { } symbols.
| Separates two mutually exclusive choices in a syntax line. Type one of these
choices. Do not type the | symbol.
[] Indicates one or more options. Type only the information inside the square
brackets. Do not type the [ ] symbols.
... Indicates that you can type multiple options of the same type. Type only the
information. Do not type the ellipsis (...).
Once you have an account, you can open Support Incidents online via the eService section of
Empower at https://empower.softwareag.com/.
You can find product information on the Software AG Empower Product Support website at
https://empower.softwareag.com.
To submit feature/enhancement requests, get information about product availability, and download
products, go to Products.
To get information about fixes and to read early warnings, technical papers, and knowledge base
articles, go to the Knowledge Center.
If you have any questions, you can find a local or toll-free number for your country in our Global
Support Contact Directory at https://empower.softwareag.com/public_directory.aspx and give us
a call.
Working with Business Rules in My webMethods 10.7 7
Software AG TECHcommunity
You can find documentation and other technical information on the Software AG TECHcommunity
website at http://techcommunity.softwareag.com. You can:
Access product documentation, if you have TECHcommunity credentials. If you do not, you
will need to register and specify "Documentation" as an area of interest.
Use the online discussion forums, moderated by Software AG professionals, to ask questions,
discuss best practices, and learn how other customers are using Software AG technology.
Link to external websites that discuss open standards and web technology.
Data Protection
Software AG products provide functionality with respect to processing of personal data according
to the EU General Data Protection Regulation (GDPR). Where applicable, appropriate steps are
documented in the respective administration documentation.
Before you can get started, you must have a My webMethods user account, with full permissions
(read and write) for the application page you want to modify.
My webMethods provides an extremely flexible framework for granting or restricting user access
to virtually every aspect of the My webMethods interface. Administrators assign permissions
known as access privileges and functional privileges. Access privileges define the application
pages you can display. Functional privileges define the actions you can perform in My webMethods.
If this guide lists pages or menu items that you cannot access, it is likely because you do not have
the access privileges to view the page. If this guide lists user interface controls (e.g. buttons) that
are greyed out, it is likely because you do not have the functional privileges to perform the actions
associated with the user interface controls. If you have any questions about your access privileges,
consult with your My webMethods administrator.
For information about permissions management and customizing the tools, see Administering My
webMethods Server.
To exchange rule projects with the Rules Development feature of Software AG Designer:
The Business Rules User Interface must be installed on My webMethods Server. This creates
the folder in which the rule projects are stored (My webMethods Applications\webMethods
Application Data\Rule Projects).
There must exist at least one My webMethods Server user (other than “sysadmin”) with full
write access to this folder. The permissions for the folder can be set by the “sysadmin” user
using the tools in the folder view.
The My webMethods Server administrator must create a role for Business Rules users and
assign ALL access rights to this role for the Rule Projects folder.
The My webMethods Server administrator must add the My webMethods Server user who
will be accessing the rule projects to this role. For more information about creating and
managing user accounts and roles, see Administering My webMethods Server.
The Business Rules user will not see the newly exported rule project until an administrator
gives him permission to do so (see Administering My webMethods Server). This has to be done
once for each rule project.
Term Explanation
Condition A condition is the left hand side part of a rule: IF Condition THEN
Result.
Data Model Rules must be able to interact with application data from other
systems. This external application data is mapped to a data
model, which is then stored in your workspace as part of the rule
project.
Data Model Element A data model element is an entity of a data model. For example,
a customer data model can contain the data model elements name
and age.
Decision Entity A decision entity is a way to display one or more rules. Decision
tables, decision trees, and event rules are different decision
entities, even though they can contain the very same rule. Some
decision entities are more suited for displaying certain kinds of
rules than others.
Term Explanation
Decision Table A decision table is a decision entity. In the decision table, the
conditions and corresponding results are sorted into rows and
columns. A column can either represent a condition (the IF part)
or a result (the THEN part) of a rule. Each row in a decision table
represents one individual rule.
Event Model Event rules can operate on the basis of predefined event types.
This event type is mapped to an event model, which is then stored
in your workspace as part of the rule project.
Event Rule An event rule is a decision entity that specifies the reaction to an
event. There are two types of events:
Internal Events.
External Events.
New Data Action A new data action is an action that was mapped from a data
model. It creates a new instance of this data model in the Rules
Engine. In this way, a new output parameter that was mapped
from this data model is introduced to the Rules Engine. It can
then trigger other decision entities within one rule set that use
this output parameter as an input.
Term Explanation
Process Action A process action is an action that was mapped from an existing
process and can be used in a decision entity to:
Result A result is the right hand side part of a rule: IF Condition THEN
Result. There are two types of results:
Result Value A result value determines a result. There are two types:
Active.
Inactive.
Rule Project A rule project is used as a container for different rule sets and
other elements, such as data models, event models, decision
Term Explanation
Service Action A service action is an action that was mapped from an existing
Integration Server service (IS service). Then you can execute this
service from a decision entity or use an output value from the
service in a decision entity.
The overall layout of My webMethods is described in detail in Working with My webMethods. This
section contains the following main topics:
The rule projects that were exported from the Rules Development feature in Software AG Designer
can be accessed on the Navigate tab under Applications > Administration > Business >
webMethods Business Rules.
Note:
You can only see the application pages you have permission for, see “Getting Started” on page 9.
The menu item of the application page that is currently displayed in the workspace area is
highlighted.
A Business Rules page contains the windows listed in the following table:
Decision Entity List window See “The Decision Entity List Window” on page 18.
Decision Entity Editor window See “The Decision Entity Editor Window” on page 22.
Rule Project Verification See “The Rule Project Verification Window” on page 24.
window
Selected Application Page Decision Entities in the Decision Entity List Window
Rule set List of all decision entities used in the rule set.
Master rule set List of all decision entities used in a rule project (except decision
trees and external event rules).
Note:
The decision entities of a rule set are sorted by the types Decision Tables, Decision Trees, and
Event Rules. The order of the decision entities within a type corresponds to the order that was
determined by the rule developer when creating the rule set in Software AG Designer.
Overview of Functions
The following table explains the different functions of the Decision Entity Editor window:
Function Explanation
Rule project name The name of the rule project that the selected decision entities or
rule set belong to, followed by the type of decision entity or the
rule set name.
Function Explanation
Filter The input field of the text filter. To automatically filter the list of
decision entities, type your filter text in the input field. To delete
the filter text, click .
Show/Hide Description The button to suppress or restore the descriptions entered by the
rule developer. To hide the descriptions, click Hide Description.
To restore them, click Show Description. To modify a description,
see “Modifying the Description of a Decision Entity” on page 71.
Decision entity category (only The category that the decision entities are sorted by in a rule set:
applicable for rule sets) Decision Tables, Decision Trees, or Event Rules.
Decision entity icon The icon that specifies the type of decision entity: (decision
table icon), (decision tree icon), or (event rule icon).
Decision entity name The name of the decision entity. Clicking a decision entity name
opens the decision entity in the Decision Entity Editor window
where it can be modified as described in “Modifying a Decision
Table” on page 32, “Modifying a Decision Tree” on page 48, and
“Modifying an Event Result” on page 62.
Processing mode (only The processing mode specified by the rule developer: Inferential
applicable for decision tables, (order of decision entities does not correspond to order of
decision trees, and rule sets) execution), Sequential All (order of decision entities corresponds
to order of execution; rules are executed from top to bottom), or
Sequential First (order of decision entities corresponds to order
of execution; rules are executed from top to bottom; execution
stops when first rule fires).
For rule sets, the processing mode is shown in the table header,
above the list of decision entities. For decision tables and decision
trees, the processing mode of each decision table or decision tree
is shown in the same row along with the name and description.
Page browser The buttons and input field of the page browser. Use the
backward and forward arrows to browse through the list of
decision entities. To jump to a page, type the page number in the
Go to page input field, and click OK.
Overview
The Decision Entity Editor window shows the decision entity that you selected from the Decision
Entity List window. You can modify this decision entity as described in “Modifying a Decision
Table” on page 32, “Modifying a Decision Tree” on page 48, and “Modifying an Event Result” on
page 62.
Button Description
Filter (decision tables only) Filters the displayed rules of a decision table, see “Filtering
Rules” on page 39.
(decision tables only) Drop-down menu to show all hidden condition or result columns,
or to open show/hide user preference dialog, see “Setting Viewing
Preferences for Conditions or Results” on page 38.
(decision tables Inserts a new rule after the last rule in a decision table, see
only) “Adding a Rule” on page 36.
(decision tables only) Deletes the selected row(s) of a decision table, see “Deleting a
Rule” on page 36.
(decision tables Moves the selected row(s) of a decision table up, see “Reordering
only) Rules” on page 37.
(decision tables Moves the selected row(s) of a decision table down, see
only) “Reordering Rules” on page 37.
Button Description
(decision tables Specifies the in effect date of a decision table, see “Setting an In
only) Effect Date at Decision Table Level” on page 39.
(decision tables and Locks the decision entity, see “Locking a Decision Entity” on
event rules only) page 70.
(decision tables and Unlocks a locked decision entity, see “Locking a Decision
event rules only) Entity” on page 70.
Hot deploys the rule project the displayed decision entity is part
of, see “Hot Deploying a Rule Project” on page 85.
(decision tables and Saves the changes to the decision entity, see “Saving Changes to
event rules only) a Decision Entity” on page 71.
Page browser (decision tables The buttons and input field of the page browser (only for decision
only) tables with more than 100 lines). Use the backward and forward
arrows to browse through the lines of the decision table. To jump
to a page, type the page number in the Go to page input field,
and click OK.
Clicking the button opens the description field that shows the description entered by the rule
developer. To modify a description, see “Modifying the Description of a Decision Entity” on
page 71.
The upper part of the Rule Project Verification window contains the filters and the Verify button.
The following table explains the existing filters:
Text filter Type a filter text in the input field to filter the entries in the
problems table. To delete the filter text, click .
Error/Warning filter Select All Errors/Warnings to see all errors and warnings in the
problems table, or select All Errors to see only errors in the
problems table, or select All Warnings to see only warnings in
the problems table.
Decision entity filter After you verified a rule set, select a decision entity to see only
the errors and warnings that are associated with this decision
entity in the problems table.
The middle part of the Rule Project Verification window contains the problems table. The table
lists all errors and warnings sorted by verification categories. For more information about
verification categories, see “About Verification Categories” on page 78.
If you click a link in the Resource column of the problems table, the respective decision entity
opens in the Decision Entity Editor window, and it is highlighted in the Decision Entity List
window.
On the left side of the lower part, there are the numbers of errors, warnings and hidden warnings.
Hidden warnings are warnings that were suppressed by the filters. On the right side of the lower
part, you can click Show all suppressed warnings to display warnings that were suppressed
when creating the decision entities in Software AG Designer. To hide the warnings, click Hide all
suppressed warnings after the page has been reloaded. For more information, see “Showing or
Hiding Suppressed Warnings” on page 78.
A decision table is a decision entity. It is a compact way to depict a complex set of rules in an IF
Condition THEN Result syntax.
Condition
A condition is specified by a parameter element.
Condition Value
A condition value can consist of:
An operator and an action that delivers an output value (marked by a dotted line and () behind
the name).
Result
The following table explains the result types.
Result Description
Result Description
An operator and an action that delivers an output value (marked by a dotted line and () behind
the name).
(action is enabled).
(action is disabled).
The following table shows two sample rules can be modeled in a decision table:
Rule 1: IF a customer has a good credit history, and the annual order value is equal to
or larger than $ 5,000, THEN this customer is a VIP customer.
Rule 2: IF a customer is a VIP customer, THEN he/she will receive a bonus at the end of
a year and will be notified of this by email.
The corresponding decision table uses two conditions, two assignment results, and one action
result:
Reordering rules.
Filtering rules.
Important:
You must lock the decision table before you can modify it. For more information, see “Locking a
Decision Entity” on page 70.
1. Open the decision table as described in “Opening a Decision Entity” on page 70.
2. Lock the decision table as described in “Locking a Decision Entity” on page 70.
Important:
Adding only an operator without entering a literal value results in a semantically invalid cell.
5. Enter a literal value in the input field as explained in the following table:
Note:
The literal value must match the data type as specified in “About Data Type Assignment” on
page 43.
Date a. Click .
Note:
The format and time zone of displayed date and time
values can be configured in the My Profile settings.
Business Rules only supports hours, minutes, and
seconds.
6. Press ENTER, or click anywhere in the Decision Entity Editor window to remove the focus
from the cell.
To modify an operator:
1. Open the decision table as described in “Opening a Decision Entity” on page 70.
2. Lock the decision table as described in “Locking a Decision Entity” on page 70.
1. Open the decision table as described in “Opening a Decision Entity” on page 70.
2. Lock the decision table as described in “Locking a Decision Entity” on page 70.
a. Type a new literal value as described in “Adding an Operator and a Literal Value in Direct
Edit Mode” on page 32, Step 4.
5. Press ENTER.
1. Open the decision table as described in “Opening a Decision Entity” on page 70.
2. Lock the decision table as described in “Locking a Decision Entity” on page 70.
5. In the [Value Type] Modification dialog box, modify the value as explained in the following
table:
Note:
If you select a range operator, the dialog box splits so that
you can specify a literal value or parameter element for each
side of the range.
Select an option > Literal Enter a literal value in the Enter value field as described in
“Adding an Operator and a Literal Value in Direct Edit
Mode” on page 32, Step 5.
Note:
The literal value must match the data type as specified in
“About Data Type Assignment” on page 43.
Select an option > Constants From the Select constant drop-down, select a constant. For
more information on constants, see “About Constants” on
page 72.
Note:
The constant must match the data type as specified in “About
Data Type Assignment” on page 43.
Select an option > Parameters Expand the parameter, and select a parameter element from
the list. The parameter element is then displayed above the
parameter element list. To filter the list of parameter elements,
enter a filter text in the search field above the parameter
element list.
Note:
The data type of the parameter element must match the data
type as specified in “About Data Type Assignment” on
page 43.
6. Click .
1. Open the decision table as described in “Opening a Decision Entity” on page 70.
2. Lock the decision table as described in “Locking a Decision Entity” on page 70.
5. Modify the condition or result value as described in “Adding a Condition or Result Value with
the Editor” on page 34.
1. Open the decision table as described in “Opening a Decision Entity” on page 70.
2. Lock the decision table as described in “Locking a Decision Entity” on page 70.
Adding a Rule
You can add a new rule to a decision table.
To add a rule:
1. Open the decision table as described in “Opening a Decision Entity” on page 70.
2. Lock the decision table as described in “Locking a Decision Entity” on page 70.
a. Select one or multiple contiguous rules by clicking the row number, and click
in the upper left corner of the Decision Entity Editor window. The new rule is inserted
after the last rule you selected.
b. Click in the upper left corner of the Decision Entity Editor window. The new
rule is inserted after the last rule of the decision table.
Deleting a Rule
You can delete a rule from a decision table.
To delete a rule:
1. Open the decision table as described in “Opening a Decision Entity” on page 70.
2. Lock the decision table as described in “Locking a Decision Entity” on page 70.
3. Select the rules you want to delete by clicking the row number. To deselect a rule, click the
row number again.
4. Click in the upper left corner of the Decision Entity Editor window.
Note:
If you delete the only rule of a decision table, an empty rule is automatically inserted.
Reordering Rules
You can determine a specific order for rules. In inferential processing, this does not affect the order
of execution. In sequential processing, the order of rules corresponds to the order of execution.
For more information about processing modes, see webMethods BPM Rules Development Help.
To reorder rules:
1. Open the decision table as described in “Opening a Decision Entity” on page 70.
2. Lock the decision table as described in “Locking a Decision Entity” on page 70.
3. Select one or more contiguous rules by clicking the row number. To deselect a rule, click the
row number again.
4. Click or in the upper left corner of the Decision Entity Editor window.
You can configure if users, groups, or roles are available to the user for selection in the Select
Principals window. For more information, see “Configuring Principal Types” on page 38.
1. Open the decision table as described in “Opening a Decision Entity” on page 70.
2. Lock the decision table as described in “Locking a Decision Entity” on page 70.
3. Click the condition value cell or result value cell you want to modify.
5. In the Select Principals window, select one or more principals, and click . For more
information on the Select Principals window, see Working with My webMethods.
1. Navigate to Applications > Administration > My webMethods > System Settings >
webMethods Business Rules Settings.
2. Under PRINCIPAL TYPES, select Users, Groups, or Roles. You can select multiple or no choices.
3. Click Save.
1. Open the decision table as described in “Opening a Decision Entity” on page 70.
3. In the Show/Hide Decision Table Columns dialog, select the conditions or results to be displayed
from the Available list on the left side.
4. Click to move the selection to the Selected list on the right side.
5. To hide conditions or results, select the conditions or results to be hidden from the Selected
list on the right side, and click .
6. Click .
Only the conditions or results in the Selected list are displayed. A dotted line between conditions
or results indicates hidden columns. To restore all hidden conditions or results, click > Show
all hidden columns.
Important:
Restoring all hidden columns discards the viewing preferences for a decision table.
Filtering Rules
You can specify which rules of a decision table should be displayed.
Note:
Any selected rules are deselected when you modify the filter.
1. Open the decision table as described in “Opening a Decision Entity” on page 70.
2. Lock the decision table as described in “Locking a Decision Entity” on page 70.
Important:
When filtering rules with the text filter, the data in hidden columns is ignored. If any
hidden column contains filtered data, a warning message is displayed.
b. In the toolbar, click in the filter, and select a user, a group, or a role from the drop-down
list.
1. Open the decision table as described in “Opening a Decision Entity” on page 70.
2. Lock the decision table as described in “Locking a Decision Entity” on page 70.
4. In the Edit in effect dates dialog box, select Always in effect (default), Never in effect, or Date
and time frame in effect. If you click Date and time frame in effect, select an operator as
described in “About In Effect Operators” on page 43, and specify a date and time (optional).
Click .
The decision table is now marked with a clock icon in the upper left corner. If you move the pointer
over the clock icon, a tooltip indicates the specified in effect date.
1. Open the decision table as described in “Opening a Decision Entity” on page 70.
2. Lock the decision table as described in “Locking a Decision Entity” on page 70.
b. Click . In the Edit in effect dates dialog box, select Always in effect (default), Never in
effect, or Date and time frame in effect. If you click Date and time frame in effect,
select an operator as described in “About In Effect Operators” on page 43, and specify a
date and time (optional). Click .
For more information about the required structure of this REST service, see webMethods Business
Rules Reference. For more information about how to assign the REST service to a condition column
or a result column of a decision table, see webMethods BPM Rules Development Help.
When you modify the corresponding decision table cells in the Rules Management Console, you
are only allowed to select an item from a drop-down list that offers the predefined values and
their descriptions. Before you can use the data provider service, you must configure the connection
to the server the REST service is running on. For more information, see “Configuring a Server
Connection for a Preconfigured Data Provider Service” on page 41.
1. Navigate to Applications > Administration > My webMethods > System Settings >
webMethods Business Rules Settings.
2. Under DATA PROVIDER, select Enabled, and define Protocol, Host, Port, and Base Path.
3. (Optional) Specify an authentication method, and enter a User Name and User Password if
required.
4. Click Save.
Character
Double
Float
Integer
Long
Short)
Data type of the Literal value must be Constant must be Data type of assigned
parameter element for parameter element
the condition or result must be
is
Numeric (Byte, Same data type or NULL Any numeric data type.
Character, Double, numeric data type with Numeric data types
Float, Integer, Long, a smaller value. with a greater value are
Short) truncated.
A decision tree is a decision entity. It uses a tree-like structure to depict a complex set of rules in
an IF Condition THEN Result syntax.
The following table explains the decision tree elements and their graphical representation:
Root Node The root node is the root of the decision tree. All
decision branches start from here.
Literal value.
Value range.
Expression.
Literal value.
List.
Expression.
(action is enabled).
(action is disabled).
Example
The following table shows two rules that can be modeled in a decision tree:
Rule 1: IF a customer has customer status silver, THEN this customer gets a discount of
10%.
Rule 2: IF a customer has customer status gold, THEN this customer gets a discount of
20%.
The decision tree uses one condition node with two condition values and two assignment result
nodes:
The following image shows the decision table that corresponds to this decision tree:
Setting a label for condition nodes, condition links, and assignment result nodes.
Important:
You must lock the decision tree before you can modify it. For more information, see “Locking a
Decision Entity” on page 70.
1. Open the decision tree as described in “Opening a Decision Entity” on page 70.
2. Lock the decision tree as described in “Locking a Decision Entity” on page 70.
3. Click the condition link or assignment result node you want to modify.
4. In the inline editor, select an operator as specified in “About Condition Operators” on page 54
or “About Result Operators” on page 56.
Important:
Adding only an operator without entering a literal value results in a semantically invalid
condition link or assignment result node.
5. Enter a literal value in the input field as explained in the following table:
Note:
The literal value must match the data type as specified in “About Data Type Assignment” on
page 57.
Date a. Click .
Note:
6. Click to save the changes, to discard the changes, or to clear the values. To open
the built-in editor, click (condition link) or (assignment result node), and modify the
condition link or assignment result node as described in “Modifying Condition Links or
Assignment Result Nodes with the Editor” on page 50.
To modify condition links and assignment result nodes with the editor:
1. Open the decision tree as described in “Opening a Decision Entity” on page 70.
2. Lock the decision tree as described in “Locking a Decision Entity” on page 70.
4. In the Link Modification dialog or the Result Node Modification dialog, modify the value
info as explained in the following table:
Note:
Select an option > Literal Enter a literal value in the Enter value field as described in
“Modifying Condition Links or Assignment Result Nodes
in Direct Edit Mode” on page 49, Step 5.
Note:
The literal value must match the data type as specified in
“About Data Type Assignment” on page 57.
Select an option > Constants From the Select constant drop-down, select a constant. For
more information on constants, see “About Constants” on
page 72.
Note:
The constant must match the data type as specified in “About
Data Type Assignment” on page 57.
Select an option > Parameters Expand the parameter, and select a parameter element from
the list. The parameter element is then displayed above the
parameter element list. To filter the list of parameter elements,
enter a filter text in the search field above the parameter
element list.
Note:
The data type of the parameter element must match the data
type as specified in “About Data Type Assignment” on
page 57.
5. Click .
1. Open the decision tree as described in “Opening a Decision Entity” on page 70.
2. Lock the decision tree as described in “Locking a Decision Entity” on page 70.
4. In the Condition Node Configuration dialog, the Link Modification dialog, or the Result
Node Modification dialog, enter a value in the Label field.
5. Click .
Null resolves to false. (Default.) The decision tree is executed. When a condition is checked,
it evaluates to false if the referenced parameter element is missing. The execution then continues.
Null value. Referenced parameter elements for conditions are checked before execution. If a
referenced parameter element is missing, the decision tree is not executed.
Default value. You can specify a default value that is evaluated substitutionally if a referenced
parameter element for a condition is missing.
1. Open the decision tree as described in “Opening a Decision Entity” on page 70.
2. Lock the decision tree as described in “Locking a Decision Entity” on page 70.
3. Click in the condition node for which you want to specify a default value.
4. In the Condition Node Configuration dialog, enter a value in the Default Value field.
Note:
Note that you can only enter literal values. The data type of the literal value must correspond
to the data type of the parameter element that was assigned to the condition node.
5. Click .
that is represented by this branch. If you set an in effect date at decision tree level, it applies to all
rules of this decision tree.
1. Open the decision tree as described in “Opening a Decision Entity” on page 70.
2. Lock the decision tree as described in “Locking a Decision Entity” on page 70.
4. In the Edit in effect dates dialog box, select Always in effect (default), Never in effect, or Date
and time frame in effect. If you click Date and time frame in effect, select an operator as
described in “About In Effect Operators” on page 56, and specify a date and time (optional).
Click .
1. Open the decision tree as described in “Opening a Decision Entity” on page 70.
2. Lock the decision tree as described in “Locking a Decision Entity” on page 70.
4. Click . In the Edit in effect dates dialog box, select Always in effect (default), Never in effect,
or Date and time frame in effect. If you click Date and time frame in effect, select an
operator as described in “About In Effect Operators” on page 56, and specify a date and time
(optional). Click .
1. Open the decision tree as described in “Opening a Decision Entity” on page 70.
2. Lock the decision tree as described in “Locking a Decision Entity” on page 70.
3. Click in the upper right corner to show the decision tree properties, or click
to hide them.
4. To modify the description, click in the properties field. Click to save the changes, or
click to discard the changes.
1. Open the decision tree as described in “Opening a Decision Entity” on page 70.
To zoom in or out:
1. Open the decision tree as described in “Opening a Decision Entity” on page 70.
2. Select (zoom in) or (zoom out) from the left side of the Decision Entity Editor window.
Data type of the Literal value must Data type of Data type of Constant must be
parameter element be assigned action output
for the condition parameter element must be
link or result node must be
is
Numeric Same data type or Any numeric data Any numeric data NULL
(Byte, Double, numeric data type type. Numeric type. Numeric
Float, with a smaller data types with a data types with a
Integer, Long, value. greater value are greater value are
Short) truncated. truncated.
Data type of the Literal value must Data type of Data type of Constant must be
parameter element be assigned action output
for the condition parameter element must be
link or result node must be
is
Numeric list n/a Any numeric list. Any numeric list. NULL
(Byte array, Byte Numeric data Numeric data
list, Double list, types with a types with a
Float list, greater value are greater value are
Integer list, Long truncated. truncated.
list,
Short list) (results
only)
Important:
Integer values are converted to Java doubles before being assigned to parameter elements. The
conversion might introduce imprecision due to truncation or rounding. As the conversion to a
Java double only handles up to 15 significant digits, it is highly recommended not to use integers
with more than 15 digits in conjunction with decimal point parameter elements.
An event rule is a decision entity that specifies the results triggered by an event. There are two
types of events:
Internal Events.
External Events.
Internal events are triggered by other event rules and decision tables during rule execution. External
events are predefined event types that were created with the webMethods Event Type Editor, see
webMethods Event Processing Help.
Important:
To work properly, internal and external event rules must be part of a rule set.
Event
The event consists of an event source that is specified by a parameter element and a type. The
following table explains the supported types:
Internal Event changed This type triggers one or more results whenever
the event source changes. The change must be
triggered by other event rules or decision tables.
Changed type event rules have the following
syntax:
External Event occurred This type triggers one or more results whenever
the external event has occurred. Occurred type
event rules have the following syntax:
Results
There are two types of results which are explained in the following table:
Result Description
An operator and an action that delivers an output value (marked by a dotted line and () behind
the action name).
(action is enabled).
(action is disabled).
The following table shows a rule that can be modeled in an event rule using an action result:
Rule WHENEVER a permitted payment method changes for a customer, THEN this
customer is notified of this by email.
Important:
You must lock the event rule before you can modify it. For more information, see “Locking a
Decision Entity” on page 70.
1. Open the event rule as described in “Opening a Decision Entity” on page 70.
2. Lock the event rule as described in “Locking a Decision Entity” on page 70.
Important:
Adding only an operator without entering a literal value results in a semantically invalid cell.
5. Enter a literal value in the input field as explained in the following table:
Note:
The literal value must match the data type as specified in “About Data Type Assignment” on
page 67.
Date a. Click .
Note:
The format and time zone of displayed date and time
values can be configured in the My Profile settings.
Business Rules only supports hours, minutes, and
seconds.
6. Press ENTER, or click anywhere in the Decision Entity Editor window to remove the focus
from the cell.
To modify an operator:
1. Open the event rule as described in “Opening a Decision Entity” on page 70.
2. Lock the event rule as described in “Locking a Decision Entity” on page 70.
1. Open the event rule as described in “Opening a Decision Entity” on page 70.
2. Lock the event rule as described in “Locking a Decision Entity” on page 70.
a. Type a new literal value as described in “Adding an Operator and a Literal Value in Direct
Edit Mode” on page 62, Step 4.
5. Press ENTER.
1. Open the event rule as described in “Opening a Decision Entity” on page 70.
2. Lock the event rule as described in “Locking a Decision Entity” on page 70.
4. Click .
5. In the Result Value Modification dialog box, modify the value info as explained in the following
table:
Select an option > Literal Enter a literal value in the Enter value field as described in
“Adding an Operator and a Literal Value in Direct Edit
Mode” on page 62, Step 5.
Note:
The literal value must match the data type as specified in
“About Data Type Assignment” on page 67.
Select an option > Constants From the Select constant drop-down, select a constant. For
more information on constants, see “About Constants” on
page 72.
Note:
The constant must match the data type as specified in “About
Data Type Assignment” on page 67.
Select an option > Parameters Expand the parameter, and select a parameter element from
the list. The parameter element is then displayed above the
parameter element list. To filter the list of parameter elements,
enter a filter text in the search field above the parameter
element list.
Note:
The data type of the parameter element must match the data
type as specified in “About Data Type Assignment” on
page 67.
6. Click .
1. Open the event rule as described in “Opening a Decision Entity” on page 70.
2. Lock the event rule as described in “Locking a Decision Entity” on page 70.
4. Click .
5. Modify the result value as described in “Adding a Result Value with the Editor” on page 64,
Step 4.
1. Open the event rule as described in “Opening a Decision Entity” on page 70.
2. Lock the event rule as described in “Locking a Decision Entity” on page 70.
Data type of the Literal value must be Constant must be Data type of assigned
parameter element for parameter element
the result is must be
Numeric (Byte, Same data type or NULL Any numeric data type.
Character, Double, numeric data type with Numeric data types
Float, Integer, Long, a smaller value. with a greater value are
Short) truncated.
The Business Rules User Interface in My webMethods supports the following functions that apply
to all decision entities:
Creating and modifying lists with the inline editor (decision table results and event rule results
only).
Important:
You must lock the decision entity before you can modify it. For more information, see “Locking
a Decision Entity” on page 70.
d. Click [RuleProjectName] > Rule Sets >[RuleSetName] (for all decision entities of a rule
set).
2. In the Decision Entity List window, click the decision entity name.
The decision entity opens in the Decision Entity Editor window. The order of rules corresponds
to the order specified by the rule developer in Software AG Designer.
1. Open the decision entity as described in “Opening a Decision Entity” on page 70.
2. Click in the upper right corner of the Decision Entity Editor window.
4. To make the decision entity available to others for modification, click in the upper
right corner of the Decision Entity Editor window.
1. Open the decision entity as described in “Opening a Decision Entity” on page 70.
2. Lock the decision entity as described in “Locking a Decision Entity” on page 70.
4. For decision tables and event rules, click in the upper right corner of the Decision
Entity Editor window. For decision trees, changes are saved automatically after modification,
and the save status is displayed in the upper left corner of the Decision Entity Editor window.
Note:
You cannot save a decision entity that contains errors.
1. Open the decision entity as described in “Opening a Decision Entity” on page 70.
2. Lock the decision entity as described in “Locking a Decision Entity” on page 70.
5. Click .
Note:
You can only create a list if the result cell is empty or contains a createList function.
1. Open the decision entity as described in “Opening a Decision Entity” on page 70.
2. Lock the decision entity as described in “Locking a Decision Entity” on page 70.
3. Click the result cell, and select = from the operator list.
c. For date list entries: Select a date from the calendar that opens if you click the entry field.
6. To use the cell editor, click . Add the result value as described in “Adding a Condition or
Result Value with the Editor” on page 34 (for decision tables) or “Adding a Result Value with
the Editor” on page 64 (for event rules).
Note:
You cannot add a literal value.
9. Click .
The list is created. To see the entries, mouse over the respective result cell in the decision entity.
About Constants
There are two types of predefined constants:
EMPTY_STRING.
NULL.
They can be used in decision table condition values, decision table assignment result values,
decision tree condition values, decision tree assignment result values and event rule assignment
result values.
The parameter element exists and contains null as a value in a parameter instance at runtime.
Example
You work with a customer parameter that contains the parameter elements name, age and address,
and the parameter element address contains the subordinated parameter elements street,
street_number, zip and city. You assign the constant NULL to the parameter element
customer.address.zip in a decision table condition value.
The parameter element zip is missing in a specific instance of the customer parameter at
runtime.
The parameter element zip exists but contains null as a value in a specific instance of the
customer parameter at runtime.
The superordinated parameter element address is missing in a specific instance of the customer
parameter at runtime.
The Business Rules User Interface in My webMethods supports three kinds of verification:
Automatic Verification is performed on decision entities when they are opened or saved after
modification. It can reflect both errors and warnings. For more information, see “About
Automatic Verification” on page 76.
Preconfigured Verification Services. You can verify decision tables on the basis of
preconfigured REST services. For more information, see “Working with a Preconfigured
Verification Service” on page 77.
For more information about verification categories, see “About Verification Categories” on page 78.
Decision tables with errors or warnings are marked by or . Event rules with errors or warnings
are marked by or .
If you click a link in the Resource column of the problems table, the respective decision entity
opens in the Decision Entity Editor window, and it is highlighted in the Decision Entity List
window.
If you verify a rule set, all of its decision entities are combined and tested as a single entity.
Only conditions with more than one value are considered, and each condition value is processed
independently.
Event rules are not considered as they do not have condition values.
1. Click in the upper right corner of the Rule Project Verification window.
The warnings appear in the problems table of the Rule Project Verification window and are sorted
by verification categories. For more information about verification categories, see “About
Verification Categories” on page 78. If the warning can be associated with a decision entity, the
respective decision entity is marked by (decision table) or (event rule) in the Decision Entity
List window.
To enable verification on the basis of a preconfigured verification service, the following is necessary:
You need a preconfigured REST service. For more information about the required structure
of this REST service, see webMethods Business Rules Reference.
The REST service must run on a server, and you must configure the server connection. For
more information, see “Configuring a Server Connection for a Preconfigured Verification
Service” on page 78.
You must assign the REST service to a condition column or result column of a decision table
in the Rules Development feature of Software AG Designer. For more information, see
webMethods BPM Rules Development Help.
You can then verify the rules manually in My webMethods as described in “Verifying Rules
Manually” on page 76. Rules are automatically verified when a rule project is hot deployed. The
verification results of a preconfigured verification service can be seen in the Rule Project Verification
window in the category Business Verification.
1. Navigate to Applications > Administration > My webMethods > System Settings >
webMethods Business Rules Settings.
2. Under BUSINESS VERIFICATION, select Enabled, and define Protocol, Host, Port, and Base
Path.
3. (Optional) Specify an authentication method, and enter a User Name and User Password if
required.
4. Click Save.
1. Click Show all suppressed warnings in the lower right corner of the Rule Project Verification
window.
2. To hide the warnings again, click Hide all suppressed warnings in the lower right corner of
the Rule Project Verification window after the page has been reloaded.
The warnings are shown or hidden in the Rule Verification window, in the Decision Entity List
window, and in the Decision Entity window.
Gaps
The following table describes a gap warning.
Explanation A gap warning is reported if a value or a range of values for one condition is not
explicitly tested in a decision entity or a rule set.
Example
A gap warning is reported, because the value = 5,000 is not tested for the condition
Order value.
Action If the gap is not intended, specify the missing value or range of values for the
condition.
Overlaps
The following table describes an overlap warning.
Explanation An overlap warning is reported if the same value or range of values for one
condition is tested multiple times in a decision entity or a rule set.
Example
An overlap warning is reported, because the value = 5,000 is tested multiple times
for the condition Order value.
Action If the overlap is not intended, modify the rules so that the condition value is only
tested once.
Syntax
The following table describes a syntax warning.
Explanation A syntax warning is for instance reported if data is lost due to truncation.
Example
A syntax warning is reported, because a result value of the data type long is
assigned to a result of the data type byte and is therefore truncated.
Action If the data loss is not tolerable, assign a value of the correct data type.
Empty cells
The following table describes an empty cell warning.
Explanation An empty cell warning is reported if a condition value or a result value is not
specified.
Example
An empty cell warning is reported, because the condition value for the first rule
is not specified.
Action If the empty cell is not intended, specify the missing value.
Processing Modes
The following table describes a processing mode warning.
Explanation A processing mode warning is reported if the processing mode of a decision table
within a rule set differs from the processing mode of this rule set, because the
processing mode of the rule set overwrites that of the decision table.
Example Differences in processing modes can occur if you add an inferential decision table
to a sequential rule set or vice versa; or if you modify the processing mode of a
rule set or of a decision table within this rule set.
Action If the different processing mode is not intended, set the same processing mode
for the decision table and rule set.
Redundancies
The following table describes a redundancy warning.
Explanation A redundancy warning is reported if parts of one rule, or rules of one decision
table, or rules of several decision tables within one rule set are dispensable.
Example
Action If the redundancy is not intended, delete the dispensable rules or parts of rules.
Missing Rules
The following table describes a missing rule warning.
Example
Action If the missing rule is not intended, specify the missing combination(s) of
conditions.
Business Verification
The following table describes preconfigured verification services.
Explanation Verification results for preconfigured verification services, see “Working with a
Preconfigured Verification Service” on page 77.
Other
The following table describes other verification categories.
Explanation All warnings and errors that do not fit into the other categories.
webMethods Rules Engine executes the rules that were created with the Rules Development feature
in Software AG Designer. Rules Engine exists on Integration Server as part of the WmBusinessRules
package.
You can deploy your modified rules to Integration Server, which is used as a target runtime
environment. There these rules can be accessed and used by multiple business processes. For more
information, see webMethods BPM Process Development Help.
The Business Rules User Interface in My webMethods supports the deployment of rule projects
to a single or multiple Integration Server(s) using the hot deploy command as described in “Hot
Deploying a Rule Project” on page 85.
Before you can hot deploy a rule project, you must be connected to Integration Server(s). To
configure an Integration Server connection, follow the instructions as described in “Configuring
an Integration Server Connection” on page 84.
Note:
You can also use Command Central to configure an Integration Server connection.
If you use a cluster or a non-clustered group of Integration Servers (Integration Servers that share
the same database components), you only need to configure the connection to one Integration
Server of the group.
1. On the Navigate tab, click Administration > My webMethods > System Settings >
webMethods Business Rules Settings.
Use SSL Select the check box if you want to use SSL for the Integration
Server connection.
Note:
To use SSL, all target Integration Servers must be configured
to use SSL as their primary port. For more information on
primary ports, see webMethods Integration Server
Administrator’s Guide.
4. Click Save.
1. Open any decision entity that is part of the rule project as described in “Opening a Decision
Entity” on page 70.
2. Click in the upper right corner of the Decision Entity Editor window.
Note:
You cannot hot deploy a decision entity that contains unsaved changes or errors. In this case,
the Hot Deploy button is disabled.
3. In the Hot Deployment Confirmation dialog box, the Verify rule project check box is selected
by default, and all decision entities of the rule project are verified in all verification categories
before the rule project is deployed. If the rule project contains any errors, an error dialog box
informs you in which rule sets the errors occur. You must eliminate all errors before you can
hot deploy the rule project. To skip the long-running verification of gaps, overlaps, missing
rules, and redundancies, deselect the Verify rule project check box. This accelerates hot
deployment.
4. Click to deploy the decision entity and all other components of the rule project to the
Integration Server runtime.
The Hot Deployment Results dialog box lists the results of the operation. To see a detailed list of
successfully and unsuccessfully deployed rule projects, click See Details.
You can deploy rule projects to a My webMethods Server repository with webMethods Deployer.
For detailed information about working with webMethods Deployer, see webMethods Deployer
User’s Guide.
To enable usage of webMethods Deployer, you must configure My webMethods Server as described
in “Configuring My webMethods Server” on page 88.
When deploying, you can merge the structure of a new rule project contained in the deployment
set with the data of an equally named rule project that already exists in the My webMethods Server
repository. Only decision tables can be merged. The merged rule project only contains the data of
the rule project that already exists in the My webMethods Server repository. Any data in the newly
deployed rule project is deleted.
Example
The following decision table exists in the My webMethods Server repository:
A new version of the decision table is deployed to the My webMethods Server repository:
The merged decision table consists of the new structure filled with the existing data:
3. Save file.
An expression may contain function calls, literals, parameter references, mathematical operators
(+, -, *, /), groups of parentheses, or combinations of all of these. You can assign an expression to
a decision table condition, a decision table assignment result, a decision tree condition, a decision
tree assignment result, or an event rule assignment result. Any referenced data element in a
condition must exist and have a non-null value in order for the condition to be evaluated. To assign
the expression, you can use the operators = or != for conditions in decision tables and decision
trees and = for assignment results in decision tables, decision trees, and event rules. For expressions
returning numeric values, you can also use range operators.
Note:
If you use a boolean function in a condition that is not of data type boolean, the return value of
the function is not compared to the condition, but it is compared against the value True. You
cannot use a boolean function in a result that is not of data type boolean, as the return value of a
function that is used in a result must match the data type that was specified for the result.
The most powerful component of expressions are function calls. The Business Rules User Interface
in My webMethods provides a set of predefined functions that you can use within expressions to
perform simple or even complex functionality with a minimal amount of effort. A function call
can require arguments. These arguments can be manually entered literal values, they can be
mapped to existing parameter elements, they can be the return values of other function calls, or
they can be mathematical expressions involving parameter references and/or other function calls.
Date Functions.
Conversion Functions.
Math Functions.
String Functions.
Important:
Note that all functions are truncated in the Decision Entity Editor window. To view functions in
full length, on the Navigate tab, click Administration > My webMethods > System Settings >
webMethods Business Rules Settings. In DISPLAY OPTIONS, deselect Truncate functions.
For more information about the individual functions, see webMethods Business Rules Reference.
For detailed information about how to add expressions and specify their components, see “Adding
an Expression” on page 94.
startsWith("New")
trim().endsWith("York")
Contains(%”Order,city”%.toUpper())
%"Shapes_1.Rect_Height"% * %"Shapes_1.Rect_Width"%
Syntax Overview
To make a reference to a parameter element, use %”fullyqualifiedparametername”%, for example
startsWith(%”customer.name”%).
To specify a date, use single quotes '2015/02/12 12:00 AM', for example diffInDays('2015/02/12
12:00 AM').
To specify a string array, use single curly braces {}, for example inList({"gold","silver"}).
To specify a string table, use double curly braces {{}}, for example
inRange({{"a","c"},{"f","h"}},null).
To specify a date array, use single curly braces {} and a single quote, for example
inRange('2015/02/02 12:00 AM','2015/02/12 12:00 AM',{'2015/02/04 12:00 AM','2015/02/05
12:00 AM'}).
To specify a date table, use double curly braces {{}}, and use single quotes for values, for example
inRange({{'2015/02/03 12:00 AM','2015/02/06 12:00 AM'},{'2015/02/16 12:00 AM','2015/02/20
12:00 AM'}},null).
To specify a double table and double array, use single curly braces {} and double curly braces
{{}}, for example inRange({{10.0,40.0},{50.0,70.0}},{60.0,65.0}).
Adding an Expression
You can assign an expression to a decision table condition, a decision table assignment result, a
decision tree condition, a decision tree assignment result, or an event rule assignment result.
Expressions are automatically verified as they are added. Problems appear in the Rule Project
Verification window in the Syntax category.
Note:
Escaping is supported. A typed in value such as \n is interpreted as a single new line character.
To add a function:
1. For decision tables, execute steps 1 to 4 as described in “Adding a Condition or Result Value
with the Editor” on page 34. For decision trees, execute steps 1 to 3 as described in “Modifying
Condition Links or Assignment Result Nodes with the Editor” on page 50. For event rules,
execute steps 1 to 4 as described in “Adding a Result Value with the Editor” on page 64.
2. In the [Value Type] Modification dialog box, select an operator as specified in “About Condition
Operators” on page 41 (for decision table conditions), “About Result Operators” on page 42
(for decision table assignment results), “About Condition Operators” on page 54 (for decision
tree conditions), “About Result Operators” on page 56 (for decision tree assignment results),
or “About Result Operators” on page 66 (for event rule assignment results).
3. Select the Expression tab. There are two sub-tabs for entering functions and parameters. To
filter the functions by the data type of their return values and source elements, select a data
type from the drop-down list in the Type select field. To filter the functions by filter text, enter
the filter text in the input field below the Type select field.
4. A function always operates on the parameter element that was specified for the condition or
result (default). You may specify a different source element for the function by selecting a
parameter element that is used within the decision entity or by selecting a function that returns
a value of a compatible data type. To specify a different parameter element as source element
for the function, click the Parameters tab, expand a parameter in the list, and select a parameter
element. Move the parameter element to the right by double-clicking it. Insert the period
character as separator after the parameter element name. To select a function to be provided
as a source element to another function, see Step 7.
a. Double-click a function. If the function has input parameters, the Function Argument dialog
pops up. Specify the input parameters as described in Step 6, and click OK.
b. Enter the function manually in the Enter/edit expression field. Press CTRL+SPACE for
auto-complete.
6. To specify the input parameters of the function, do one of the following in the Function
Argument dialog:
b. Select a parameter element from the list in the pop-up window that opens after you click
. The list contains input and/or input/output parameter references whose types are
compatible with the input parameter selected for the function. After you close the dialog
by clicking OK, the input parameter is inserted in the Enter/edit expression field, where
you can modify it. To add a parameter element, select the input parameter you want to
replace with the parameter element in the Enter/edit expression field, click the Parameters
tab, expand a parameter in the list, and double-click a parameter element. The list contains
all parameters and their elements that are used in the decision table or event rule regardless
of their data type. If the data type of the selected parameter element is not compatible with
the data type of the input parameter, an error is displayed.
c. Enter the input parameters manually in the Enter/edit expression field inside %” “%. Use
the syntax as described in “Working with Expressions” on page 91, Syntax Overview.
Note:
To specify an empty string as input parameter, enter "" in the Enter/edit expression field,
or select EMPTY STRING CONSTANT from the parameter picker in the Function Argument
dialog.
a. Enter the period character after a function, press CTRL+SPACE. In the pop-up dialog,
double-click a second function.
b. Enter the period character, select the Functions tab, and double-click a function in the list.
In the Function Argument dialog, enter the input parameters and click OK. For more
information about nesting functions, see “Working with Expressions” on page 91.
8. To nest functions, enter a function instead of an input parameter in the Enter/edit expression
field. The return value of the inner function then serves as input parameter of the outer function.
For more information about nesting functions, see “Working with Expressions” on page 91.
10. To nest sub-expressions in parentheses, place the cursor where you want the open parenthesis
to be inserted, and type it in. Do the same for the closed parenthesis. For more information
about nesting sub-expressions, see “Working with Expressions” on page 91.
You can prepare a CSV file with the rules you want to add to a decision table and then import this
CSV file to the Business Rules User Interface in My webMethods to fill an existing decision table.
The content in the CSV file does not override the content of the existing decision table but the
input from the CSV file is appended after the last rule of the decision table.
For instructions on how to import a CSV file, see “Importing a CSV File” on page 102.
Scope
The following limitations apply to the import of CSV files:
Operators for condition columns (including range operators): =, !=, >=, <=, <, >, <...<=, <=...<,
<...<, <=...<=
Literals
Principal definitions
Expressions
Constants, parameter elements, actions, and in effect dates must not be contained.
Condition columns
Requirements
For a successful import, keep the following points in mind:
The CSV file must have the same number of columns as the decision table in My webMethods,
with exception of the In Effect column. The in effect date cannot be specified in the CSV file
but is set to Always as a default.
The column names in the header line of the CSV file do not have to match the column names
of the decision table in My webMethods. The columns of the CSV file are assigned from left
to right.
Very large CSV files may result in an import error if they exceed the allowed HTTP request
size. By default, this is 20 MB on My webMethods Server. Should your CSV file be very large,
you can split up the data into two or more CSV files and import them one after the other.
The values in the CSV file must be formatted as described in “CSV Formatting” on page 99.
CSV Formatting
The following describes how data in the CSV file must be formatted.
For instructions on how to import a CSV file, see “Importing a CSV File” on page 102.
Separator
Use ; (semicolon) as separator.
Header Line
The first line of the CSV file must be a header line. The number of values in the header line must
match the number of columns in the target decision table, with exception of the In effect column.
Example: targetGroup;isVIP;team;score;assignee
Note:
Excel does this automatically when saving as CSV.
Example:
= North
East
must be written as
"= North
East".
Whitespace
Whitespace before or after a CSV value will be trimmed during import.
Ranges
Write ranges with upper and lower bounds as follows:
<...<=
<=...<
<...<
<=...<=
Example: 10 <...<= 20 specifies a range where the value is greater than 10 and less than or equal
to 20.
Decimal Separator
Use . (dot) as decimal separator.
UTF-8 Characters
Values containing UTF-8 characters can be imported without any special considerations.
Example: = @
Date Columns
If the target decision table contains a column of data type Date, the corresponding value in the
header line must contain the date pattern and timezone information. For more information about
time formats, see the Java documentation for SimpleDateFormat.
Example:
targetGroup;isVIP;team;incidentSubmission[dd/MM/yyyy
HH:mm:ss|Europe/Berlin];score;assignee
Expressions
If you import an expression into a decision table, the expression must be wrapped in FUNC[].
If an expression contains
a double quote, the whole value must be wrapped in double quotes "", and a double quote "
must be prepended to each double quote in the value.
a line break, the whole value must be wrapped in double quotes "".
Note:
Excel does this automatically when saving as CSV.
must be written as
Principals
If the target decision table contains a column which was annotated as principal, you can specify
any combination of users, groups, and roles. The CSV value must be formatted as follows:
If more than one user, group, or role is specified, they must be separated by a comma:
Principals from a directory service such as LDAP must follow their backend-specific notation (e.g.,
cn=James,ou=marketing,o=ABC). For more information, see Administering My webMethods Server,
Managing External Directory Services.
Example: = USERS[cn=James\,ou=marketing\,o=ABC],
= USERS[userId1,cn=James\,ou=marketing\,o=ABC]
If a user ID itself contains a semicolon or double quote, the whole value must be wrapped in double
quotes "", and a double quote " must be prepended to each double quote in the value.
targetGroup;isVIP;team;score;assignee
= North;= no;=SupportTeamVIP;> 0.50;=GROUPS[082358North]
= East;= no;=SupportTeamVIP;> 0.50;=GROUPS[082379East]
= East;= yes;=SupportTeamVIP;> 0.70;=USERS[Supervisor]
For more information on scope and requirements, see “Using CSV Import” on page 97.
For more information on formatting and examples, see “CSV Formatting” on page 99.
1. Open the decision table as described in “Opening a Decision Entity” on page 70.
2. Lock the decision table as described in “Locking a Decision Entity” on page 70.
The file is imported and validated. If an error occurs, an error message is shown. Click Show
details to see the error details. Click Copy to clipboard to save the error details to your
clipboard.
5. Click in the upper right corner of the Decision Entity Editor window to save your
changes to the decision table.