IDENTIFIER Math Variable
The IDENTIFIER math variable is typically used to generate confirmation numbers for spawned activities using alphabetic and/or numeric parts. The numeric parts may be incremented in order to provide a unique ID constructed with the same elements.
IDENTIFIER Option in Palette Window
Prerequisites
When setting up a new Identifier, you must insert the first record into the AsSequence table, then add the database component that allows it to work correctly. The scripts required for each type of database are provided below.
ALL (ORACLE, DB2, SQL):
Insert into ASSEQUENCE (SEQUENCENAME, SEQUENCEINTEGER, SEQUENCEDESCRIPTION, DATABASESEQUENCENAME)
Values ('ConfirmationNumber', 1, 'ConfirmationNumber', 'ConfirmationNumber')
Insert into ASSEQUENCE (SEQUENCENAME, SEQUENCEINTEGER, SEQUENCEDESCRIPTION, DATABASESEQUENCENAME)
Values ('ConfirmationNumberMV', 1, 'ConfirmationNumberMV', 'ConfirmationNumberMV')
ORACLE and DB2 Only:
Create sequence ConfirmationNumber start with 1 increment by 1 maxvalue 999999999 cache 200
Create sequence ConfirmationNumberMV start with 1 increment by 1 maxvalue 999999999 cache 20
Configuration Considerations
Keep in mind the following points when configuring IDENTIFIER math variables.
-
An IDENTIFIER math variable should be used to confirmation numbers for spawned activities.
-
An Identifier field should be used to generate the originating (parent) activity’s confirmation number.
-
An IDENTIFIER math variable can be used in ScreenMath.
-
The Identifier field configuration can include the <ClearOnRecycle> element that will clear a field when an activity is manually recycled, allowing for the generation of a new confirmation number in such cases. When an activity is recycled due to a system-generated undo/redo, the original confirmation number is retained.
-
Each Part is added to the Parts node in the math variable window of the Rules Palette Math pane. Each type translates to a <Part> element in the XML.
-
Identifier MathVariable configuration includes LOG=”Yes” attribute, in case an activity is re-done due to system-generated undo/redo. The original Identifier MathVariable value can be accessed in the database via configuration.
Define IDENTIFIER Math Variable and Parts
Drag and drop the IDENTIFIER math variable from the Palette window onto the configuration area of the Math Pane. Enter the math variable information such as the math variable name and Log value (Yes or No). The data type and variable type are preset. (For additional information on adding math variables, see Math Pane.)
Click on the Parts node and begin to configure the individual components that will make up the unique identifier. An explanation of each type is given in the section below. Click the Add button after each individual part is added until all parts are complete.
If the fields under the Parts node are not visible, drag the bottom scroll bar all the way to the right. Then, use the vertical scroll bar to scroll down to reveal the fields.
IDENTIFIER Math Variable in Math Pane
IDENTIFIER Parts
The following list explains the various IDENTIFIER Parts options. Each type is listed, along with the configuration options that accompany the type. Each type translates to a <Part> element in the XML.
-
When Type=Value is selected:
The value of the <Part> element is the literal text, entered in the Value field, that is concatenated to the IDENTIFIER math variable.
-
When Type=SystemDate is selected:
-
Format: Portions of the system date or all of the system date may be concatenated to the IDENTIFIER math variable. The required attribute FORMAT defines the portions that will make up the resulting value to concatenate. The following is a list of the attribute values and what they accomplish.
-
YY and YYYY results in 2 and 4 digit years, respectively.
-
MM results in a 2 digit month.
-
DD results in a 2 digit day.
-
YYMM and YYYYMM results in a 2 digit year, 2 digit month value or a 4 digit year, 2 digit month value, respectively. Both create a value in year-month order.
-
YYYYMMDD results is a full date value with a 4 digit year in year-month-day order.
-
YYMMDD results is a full date value with a 2 digit year in year-month-day order.
-
When Type=Sequence is selected:
A sequence number is generated from a sequence set identified by the sequence name referenced in the <Part> element’s value. Once a sequence number becomes part of the value of an IDENTIFIER math variable, it cannot be duplicated by any subsequent IDENTIFIER math variable using the same sequence set. Concurrent accesses to the same sequence will yield different sequence values.
A required FORMAT attribute specifies the padding characters and length of the output that is concatenated to the IDENTIFIER math variable. The padding character may be any visible character or mix of characters that define the padding character(s). The length of the output is defined by the number of characters in the FORMAT attribute's value. For example, if FORMAT=”000”, the complete length of the <Part> value is 3. If the sequence number is 1, then the output is 001. If the sequence number is 100, then the output is 100.
The optional Sequence Date Prefix text box allows entry of a context prefix (Activity, Policy, Plan, or screen math ID). This is a freeform text entry field.
The optional Sequence Date text box filters the sequence records for a specific sequence set. It may be used to restart the sequence numbering as of a specific date. The value of the attribute indicates the data source for the date. One data source for the attribute’s value is a field name. The field must be defined prior to the IDENTIFIER math variable and must be a date data type. Other data sources for the attribute's value may be the system date and an activity's effective date.
The following table shows data that resides in the sequence data store for a specific sequence set.
Sequence Data Store for a Sequence Set
-
For any date value provided to SEQUENCEDATE that falls between 1/1/2008 and 12/31/2008, inclusively, record #1 is used to supply sequence numbers. The next number is 501.
-
For any date value provided to SEQUENCEDATE that falls between 1/1/2009 to 12/31/2009, inclusively, record #2 is used to supply sequence numbers. The next number is 25.
-
For any date value provided to SEQUENCEDATE that is equal to or greater than 1/1/2010, record #3 is used. The next number is 1.
-
Any positive integer value may be used as a starting value. Maximum value for a sequence number is about 2.1 billion.
The Value text box allows entry of sequence names from AsSequence, such as PolicyNumber, SuspenseNumber, etc.
-
When Type=Field is selected:
-
Left & Parse Value: specifies the number of characters extracted from the start of the field’s value. Ex: If the Field value is12345, then LEFT with Parse Value=2 would mean that 12 is extracted and concatenated to the identifier's value.
-
Right & Parse Value: specifies the number of characters extracted from the end of the field’s value. Ex: If the Field value is 12345, then RIGHT with Parse Value=2 would mean that 45 is concatenated to the identifier's value.
-
Mid & Parse Value: specifies the starting and ending location in the field’s value from which to extract the value. Ex: If the Field value is 12345, then MID with Parse Value 2 and 5 would mean that 2345 is concatenated to the identifier's value.
- FieldA contains the value of Mon.
- FieldB is an identifier data type field with a Part type of Field defined with a FORMAT=ddddd.
- The resulting value is ddMon, which is then concatenated to the IDENTIFIER math variable’s value.
- The padding character is d and the resulting value’s length is 5 because d was repeated 5 times in the FORMAT attribute's value.
Parse: select Left, Right, Mid and enter a Parse Value. These indicators are used to tell the system what part of the value to concatenate to the identifier's field value. A sample of each option is given below:
Format: indicates the padding character and the length of the resulting value. Any character or mixture of characters define the padding character(s). The length of the output is defined by the number of characters in the FORMAT attribute's value. Padding will always occur to the left of the parsed value to create a result that is the length of FORMAT attribute. For example:
Value: The name of the field whose value may be parsed and padded, then concatenated to the IDENTIFIER math variable's value.
Copyright © 2009, 2014, Oracle and/or its affiliates. All rights reserved. Legal Notices