Map Designer Express provides two ways to generate Java
code:
- Using the Activity Editor
- Defining transformation rules using standard
transformations
Using the Activity Editor, you can specify the flow of
activities for a specific transformation rule graphically, without
knowing programming or Java code. For each transformation rule in
Map Designer Express, you can display one activity and its
subactivities. You can view the associated attribute's
transformation code graphically, modify it, and have the tool
generate the corresponding Java code.
You launch the Activity
Editor directly from Map Designer Express (see "Starting the Activity Editor"). At
startup, the Activity Editor communicates with System Manager to
discover the set of activities allowed. After you have finished
designing the activity for a particular transformation rule, you
save the changes in the Activity Editor, and they are communicated
to Map Designer Express.
This section contains the following topics on the Activity
Editor:
You launch the Activity Editor through the transformation rule
column of the Table or Diagram tabs of Map Designer Express. There
are two ways to access information in this transformation rule
column:
- Double-click the attribute's corresponding cell of the
transformation rule column.
- Click the bitmap icon in the corresponding cell of the
transformation rule column.
Transformation code is generated from one of the standard
transformations that Map
Designer Express provides on the combo box of the transformation
rule column. When you double-click the attribute's transformation
rule cell or click the mapping rule icon, the type of
transformation determines what Map Designer Express displays:
- For the Custom transformation, Map Designer Express
brings up the Activity Editor on the transformation code.
- For all other standard transformations ( Set Value,
Join,
Split, Submap, and
Cross-Reference), Map Designer
Express displays the transformation's dialog. Click the View
Code... button on this dialog to bring up the Activity Editor.
The Activity Editor appears with the attribute name in the title
bar. You can open multiple instances of the Activity Editor at the
same time.
The Activity
Editor has two main views: Graphical view and Java view. Depending
on the nature of the activity, at any given time, only one view is
visible. Thus, if Map Designer Express invokes the Activity Editor
to display a graphical activity, the Activity Editor will startup
with the Graphical view. If you choose to translate this graphical
activity into Java code, the Java view will display in place of the
Graphical view.
Figure 44 and Figure 68 show the layout of the
Graphical and Java views, respectively, of the Activity Editor.
Both views have common Window elements, as described in Table 22..
Table
22. Common Window elements
Window
element |
Description |
Title Bar
|
Contains the
name of the application (Activity Editor), application icon, and
the main activity's name. |
Menu |
Contains the
primary menus. |
Toolbar |
Contains
dockable toolbars with shortcuts to various functions and
tools. |
Document Display Area
|
Displays the
representation of the activity definition. It is organized with a
workbook look. |
Status
Bar |
Displays
status information and some handy shortcuts. |
You can access the Activity Editor's functionality using any of
the following:
- The pull-down menus at the top of the window
- The Context menu
- Keyboard shortcuts
- The icons in the toolbars
The Activity Editor provides the following pull-down menus:
- File menu
- Edit menu
- View menu
- Tools menu
- Help menu
The following sections describe the options of each of these
menus and their associated keyboard shortcuts.
Functions of the File menu: The File pull-down menu of the Activity Editor
provides the following options:
- Save [Ctrl+S]--Saves the
activity to Map Designer Express.
- Print Setup...
[Ctrl+Shift+P]--Brings up the Print Setup dialog box for changing
the printer and printing options.
- Print Preview--Switches the
editor to print preview mode.
- Print... [Ctrl+P]--Brings
up the Print dialog box for printing the current activity.
- Close --Closes the Activity
Editor.
Functions of the Edit menu: The Edit pull-down menu of the Activity Editor
provides the following options:
- Cut [Ctrl+X]--Deletes the
selected item and copies it to the clipboard.
- Copy [Ctrl+C]--Copies the
selected item to the clipboard.
- Paste [Ctrl+P]--Pastes the
object in the clipboard to the cursor position if they are
compatible.
- Delete [Del]--Deletes the
selected item.
- Select All
[Ctrl+A]--Selects all items.
- Find... [Crtl+F]--Finds the
specific text in the editing area.
- Goto Line... [Ctrl+G]--Goes
to a specific line.
Functions of the View menu: The View pull-down menu of the Activity Editor
provides the following options:
- Design mode--Toggles
between Design mode and Quick view mode. (Only one mode is enabled
at a single time.)
- Quick view mode--Toggles
between Quick view mode and Design mode. (Only one mode is enabled
at a single time.)
- Go To--A submenu that
provides the following options:
- Back [Alt+Left Arrow]--Goes backward in the navigation history
in Graphical view.
- Forward [Alt+Right Arrow]--Goes forward in the navigation
history in Graphical view.
- Up One Level--Shows the diagram at one level up.
- Home [Alt+Home]--Goes to the top-level diagram in Graphical
view.
- Zoom In [Ctrl++]--Magnifies
content in the editor.
- Zoom Out [Ctrl+-]--Shrinks
content in the editor.
- Zoom To...
[Crtl+M]--Displays the Zoom dialog box for a zoom factor.
- Library window--Toggles the
Library window on and off.
- Content window--Toggles the
Content window on and off.
- Properties window--Toggles
the Properties window on and off.
- Toolbars--A submenu that
provides toolbars (Standard, Graphics, and Java) that toggle on and
off.
- Status Bar--Toggles the
status bar on and off.
- Preferences...
{Ctrl+U]--Opens the Preferences dialog box for changing the default
behavior of the editor.
Functions of the Tools menu: The Tools pull-down menu of the Activity Editor
provides the following option:
- Translate
[Ctrl+T]--Translates the current activity to Java code and brings
up the Java view.
Functions of the Help menu: The Help
pull-down menu of the Activity Editor provides the following
options:
- Help Topics [F1]--Opens the context-sensitive Help topics
- Documentation--Opens the IBM WebSphere InterChange Server
Express documentation.
Context menu: The
Context menu provides options for performing many tasks on the
editing canvas. To access the Context menu, right-click the editing
canvas. The Context menu provides the following options:
- New
Constant--Creates a new Constant container on the canvas.
- Add Label--Creates a new label component on the
canvas.
- Add Description--Creates a new description component
on the canvas.
- Add Comment--Creates a new comment component on the
canvas.
- Add To do--Creates a new component for entering some
reminder in the activity.
- Add To My Collection--Creates a new group in the
Library window for reuse.
The toolbars provide direct
access to various features and functions of the Activity Editor.
The functions of the toolbar buttons are the same as their
corresponding menu items.
The Activity Editor supports two toolbars:
- Standard toolbar
- Graphics toolbar
Tip: To identify the function of each toolbar button,
roll over each button with your mouse cursor.
Standard toolbar: Figure
41 shows the Standard toolbar.

Figure
41. Activity Editor Standard toolbar
Table 23 provides the function
of each Standard toolbar button (left to right) and the
corresponding menu command.
Table
23.
Functions of Standard toolbar
buttons
Function |
Corresponding
menu command |
Save Activity
|
File-->Save |
Print Activity
|
File-->Print... |
Cut
|
Edit-->Cut |
Copy
|
Edit-->Copy |
Paste
|
Edit-->Paste |
Delete
|
Edit-->Delete |
Help
|
Help-->Help Topics |
Graphics toolbar: Figure
42 shows the Graphics toolbar.

Figure
42. Activity Editor Graphics toolbar
Table 24 provides the function
of each Graphics toolbar button (left to right) and the
corresponding menu command.
Table
24. Functions of Graphics toolbar buttons
Function |
Corresponding
menu command |
Back
|
View-->Go
To-->Back |
Forward
|
View-->Go
To-->Forward |
Up One Level
|
View-->Go
To-->Up One Level |
Home
|
View-->Go
To-->Home |
Zoom In
|
View-->Zoom In |
Zoom Out
|
View-->Zoom Out |
Status bar elements: The Activity Editor also provides a Status
bar, as shown in Figure 43.

Figure
43. Activity Editor Status bar
Table 25 describes the
functionality of each Status bar element, left to right.
Table
25. Functions of Status bar elements
Element |
Function |
Zoom:
100% |
Edit box for
specifying a zooming percentage |
Ready |
Status
message |
10.9 |
Navigation
pane showing the current position of the I-bar in the Java
editor |
>>
(Shown in Quick view mode)
<< (Shown in Design mode)
|
Toggle
between Design mode and quick view mode |
If Map Designer Express opens the Activity Editor with an
activity definition that has a graphical nature, the Activity
Editor will display the activity definition in Graphical view in
one of two available display modes: Design mode or Quick view
mode.
- Design mode:
In Design mode, the Activity Editor resembles a
regular application--in addition to the editing area, it contains a
menu bar, toolbars, and other control bars that support your
editing needs during the design stage of the activity definition.
Figure 44 shows the Graphical
view in Design mode.

Figure
44. Graphical view in Design mode
This view contains a main activity editing area (the activity
workbook window) and three supporting windows, as follows:
- Library
window---A dockable control bar containing a tree view of the
available function blocks, and optionally, the named groups. The
function blocks are arranged in folders according to their purpose,
and you can expand them to show the actual function blocks. You can
view the function blocks in the Library window under their
corresponding folder, or as icons in the Content window.
Additionally, the Library window contains folders for adding
system elements to the graphical canvas (System folder), for
customizing the library (Library folder), for grouping components
(My Collection folder), and for listing global variables accessible
to the current activity--typically, the source and destination
business object, and the global variable cwExecCtx
(Variables folder).
- Content window--A dockable control bar containing a
large icon list of the available function blocks under the
currently selected folder in the Library window. You can select a
function block to view its description and properties in the
Properties window, or drag-and-drop a function block onto the
editing canvas to create part of the activity flow.
- Properties window--A dockable control bar containing
the properties of the selected component in a gridlike layout.
Different components may have different properties. Your
interaction with the grid depends on the nature of the individual
property. Some properties may be editable; some may be read-only,
while some properties may present a drop-down combo-box for your
selection. In each case, the Properties window presents the
property with appropriate actions.
- Quick view
mode: In Quick view mode, the Activity Editor resembles a
control bar--with only the editing area displayed; all other
supporting windows, the menu bar, and the toolbars are hidden.
Figure 45 shows the Graphical
view in Quick view mode.

Figure
45. Graphical view in Quick view mode
Initially, when an activity definition that has a graphical
nature opens, the Activity Editor displays the top-level view of
the definition in a tabbed window. Inside the tab window is the
editing canvas, which is also known as the activity
canvas or graphical canvas.
Working with activity definitions: You define and modify
activity definitions on the editing canvas using the canvas
components. The following list identifies the canvas components and
briefly describes how to use them to define and modify activity
definitions. For detailed steps for defining and modifying activity
definitions, see "Example 1 of using
the Activity Editor", "Example 2
of using the Activity Editor", and "Example 3 of using the Activity
Editor".
- Function blocks--define the behavior of an
activity. You drag and drop them from the Library window or Content
window onto the editing canvas. Each function block has a set of
predefined inputs and outputs.
Result: The Activity
Editor displays a little icon for each of the input and output
going into or coming out of the block. These ports serve as
connecting points for linking between the function block and other
components. Outgoing ports can connect to multiple connection
links, but incoming ports can only connect to one connection link.
The name of the input and output displays beside the connection
ports. You can choose to show or hide these port names using the
option in the Preference dialog.
Tip: When you drag-and-drop to connect function blocks
together, the Activity Editor uses the option set in the Validation
tab of the Preference dialog to determine if it needs to validate
and check whether the "from" parameter type is the same as the "to"
parameter type.
- By default, this preference is set to "Warning," meaning that
when you create a link between two parameters that are of different
types, the Activity Editor will show a message warning you that
this may lead to a compile error.
- Setting the option to "Ignore" tells the Activity Editor not to
do any validation.
- Setting the option to "Error" tells the Activity Editor not to
allow you to create links between different types.
For a description of supported function blocks in the Map
Designer and Relationship Designer contexts, see"Identifying supported function
blocks".
- Note:
- In addition to the standard function blocks that the Activity
Editor provides, you can import your own Java library for use as
function blocks in the Activity Editor. Importing custom Jar
libraries into activity settings will enable any public methods in
the Jar library to be used as function blocks in the Activity
Editor. For more information, see Importing Java packages to
InterChange Server Express.
- Connection
links--define the flow of activity between various components
in the canvas.
Example: To specify that the output of function block A
should go to the input of function block B, click and hold down the
left mouse button on the outgoing port of function block A, and
while continuing to hold down the left mouse button, move the
cursor onto the incoming port of function block B, and release the
left mouse button. This will create a connection link from function
block A's out-port to function block B's in-port. If function block
B's in-port is already connected with another connection link, the
newer connection link will replace the existing connection link.
Graphically, the connection link will appear as a right-angled line
between components.
- Label, Description, Comment, and To Do tags--identify each activity or
subactivity or serve as some reminder in the activity:
- To start editing them, single click around the center.
Result: The cursor will change to an I-beam.
Type the text. All the editing components will wrap the line if
the line is longer than the display area. If you want to start a
new line, press Enter.
- To resize the text input field, hold down the left mouse button
in the lower right-hand corner of the tag.
Result: The cursor will change to the resize cursor.
Move the cursor to resize the editing pad.
Restriction: Each of these editing components has a
minimize size, so the components cannot be resized to be smaller
than a certain size.
Figure 46 shows resizing a label tag and
entering multiple lines of text.

Figure
46. Resizing a label and entering multiple lines of
text
- To move the tag around the canvas, click the edge of the
component to drag-and-drop it.
- New Constant icon--defines a constant value
that you set and use as input to function blocks or ports. When you
drag-and-drop the New Constant icon from the Library window or
Content window onto the editing canvas, the Activity Editor
displays a Constant icon as the container for the constant value. A
text edit box displays on top of the icon for you to enter the
value of the Constant. To revise this value, double-click the
Constant icon and enter the new value. Constants contain one
outgoing port.
- Note:
- The Constant is the only editing component that accepts only a
single line. This is because the constant will be translated to a
Java code string, and the system does not know how to translate
multi-line constant input to a Java code string. If multi-line
input is required, use the "\n" value to separate between lines in
the Constant.
Example: The value "line1\nline2" will tell the system to
output the text in two lines.
Once you have
dragged-and-dropped components onto the canvas to define the
desired activity flow, you can select and save the whole or part of
this activity flow as a named group. Then later on, you can reuse
this named group in another activity definition just like a regular
function block. The following procedure describes the steps to
take.
Before you begin: You need to enable "Show child
functions in Library window" in the Preference dialog to display
the added group.
Perform the following steps:
- Select one or more graphical components in the canvas.
- Right-click the canvas to open the Context menu and select Add
to My Collection.
- In the dialog that pops up, enter a name, a description, and
select an icon to represent this group.
Result: The added group will appear in the Library window
under My Collection.
The supported function blocks, in the Map Designer
context, are organized into the following categories:
- General/APIs/Business Object Array
- General/APIs/Business Object/Array
- General/APIs/Business Object/Constants
- General/APIs/Business Object
- General/APIs/Database Connection
- General/APIs/Identity Relationship
- General/APIs/Maps/Constants
- General/APIs/Maps/Exception
- General/APIs/Maps
- General/APIs/Participant/Array
- General/APIs/Participant/Constants
- General/APIs/Participant
- General/APIs/Relationship
- General/Date
- General/Date/Formats
- General/Logging and Tracing
- General/Logging and Tracing/Log Error
- General/Logging and Tracing/Log Information
- General/Logging and Tracing/Log Warning
- General/Logging and Tracing/Trace
- General/Mapping
- General/Math
- General/Properties
- General/Relationship
- General/String
- General/Utilities
- General/Utilities/Vector
The following tables describe the function blocks in each
category, including the acceptable values for their inputs and
outputs.
- Note:
- In IBM WebSphere Business Integration Express Plus for Item
Sync, the Activity Editor is also used with Process Designer
Express. For information on using the function blocks, including
the collaboration function blocks, with Process Designer Express,
see the Collaboration Development Guide.
Table 26.
General/APIs/Business Object Array
Name |
Description |
Inputs and
outputs with acceptable values |
Add Element
|
Adds a
business object to this business object
API: BusObjArray.addElement()
|
Inputs:
- business object array--BusObjArray
- element--BusObj
|
Duplicate
|
Creates a
business object array exactly like the original one.
API: BusObjArray.duplicate()
|
Inputs:
original--BusObjArray
Outputs: duplicate--BusObjArray
|
Equals
|
Compares
business object array 1's and business object array 2's values, to
determine whether they are equal.
API: BusObjArray.equals()
|
Inputs:
- array 1--BusObjArray
- array 2--BusObjArray
Outputs: equal?-- boolean
|
Get Element At
|
Retrieves a
single business object by specifying its position in the business
object array.
API: BusObjArray.elementAt()
|
Inputs:
- business object array--BusObjArray
- index--int
Outputs: element--BusObj
|
Get Elements
|
Retrieves the
contents of this business object array.
API: BusObjArray.getElements()
|
Inputs:
business object array--BusObjArray
Outputs: element--BusObj[]
|
Get Last Index
|
Retrieves the
last available index from a business object array.
API: BusObjArray.getLast Index()
|
Inputs:
business object array--BusObjArray
Outputs: last index--int
|
Is Business Object Array
|
Tests whether
value is a business object array (BusObjArray). |
Inputs:
value--Object
Outputs: result--boolean
|
Max attribute value
|
Retrieves the
maximum values for the specified attribute among all elements in
this business object array.
API: BusObjArray.max()
|
Inputs:
- business object array--BusObjArray
- attribute--String
Outputs: max--String
|
Min attribute value
|
Retrieves the
minimum value for the specified attribute among all elements in
this business object array.
API: BusObjArray.min()
|
Inputs:
- business object array--BusObjArray
- attribute--String
Outputs: min--String
|
Remove All Elements
|
Removes all
elements from the business object array.
API: BusObjArray.removeAllElements()
|
Inputs:
business object array--BusObjArray |
Remove Element
|
Removes a
business object element from a business object array.
API: BusObjArray.removeElement()
|
Inputs:
- business object array--BusObjArray
- element--BusObj
|
Remove Element At
|
Removes an
element at a particular position in this business object array.
API: BusObjArray.removeElementAt()
|
Inputs:
- business object array--BusObjArray
- index--int
|
Set Element At
|
Sets the
value of a business object in the business object array.
API: BusObjArray.setElementAt()
|
Inputs:
- business object array--BusObjArray
- index--int
- element--BusObj
|
Size
|
Gets the
number of elements in this business object array.
API: BusObjArray.size()
|
Inputs:
business object array--BusObjArray
Outputs: size--int
|
Sum
|
Adds the
values of the specified attribute for all business objects in this
business object array.
API: BusObjArray.sum()
|
Inputs:
- business object array--BusObjArray
- attribute--String
Outputs: sum--double
|
Swap
|
Reverses the
positions of two business objects in this business object array.
API: BusObjArray.swap()
|
Inputs:
- business object array--BusObjArray
- index 1--int
- index 2--int
|
To String
|
Retrieves the
values in this business object array as a single string.
API: BusObjArray.to String()
|
Inputs:
business object array--BusObjArray
Outputs: string--String
|
Table 27.
General/APIs/Business Object/Array
Name |
Description |
Inputs and
outputs with acceptable values |
Get BusObj At
|
Retrieves the
element at the specified index in the business object array. |
Inputs:
- array--BusObj[]
- index--int
Outputs: business object--BusObj
|
New Business Object Array
|
Creates a new
business object array. |
Inputs:
size--int
Outputs: array--BusObj[]
|
Set BusObj At
|
Sets the
element at the specified index in the business object array. |
Inputs:
- array--BusObj[]
- index--int
- business object--BusObj
|
Size
|
Retrieves the
size of the business object array |
Inputs:
array--BusObj[]
Outputs: size--int
|
Table 28.
General/APIs/Business Object/Constants
Name |
Description |
Inputs and
outputs with acceptable values |
Verb: Create
|
Business
object verb "Create". |
Outputs:
Create--String |
Verb: Delete
|
Business
object verb "Delete". |
Outputs:
Delete--String |
Verb: Retrieve
|
Business
object verb "Retrieve". |
Outputs:
Retrieve--String |
Verb: Update
|
Business
object verb "Update". |
Outputs:
Update--String |
Table 29.
General/APIs/Business Object
Name |
Description |
Inputs and
outputs with acceptable values |
Copy
|
Copies all
attribute values from the input business object.
API: BusObj.copy()
|
Inputs:
- copy to--BusObj
- copy from--BusObj
|
Duplicate
|
Creates a
business object exactly like the original one.
API: BusObj.duplicate()
|
Inputs:original--BusObj
Outputs: duplicate--BusObj
|
Equal Keys
|
Compares
business object 1's and business object 2's values, to determine
whether they are equal.
API: BusObj.equalKeys()
|
Inputs:
- business object 1--BusObj
- business object 2--BusObj
Outputs: key values equal?-- boolean
|
Equals
|
Compares
business object 1's and business object 2's values, including child
business objects, to determine whether they are equal.
API: BusObj.equals()
|
Inputs:
- business object 1--BusObj
- business object 2--BusObj
Outputs: equal?-- boolean
|
Exists
|
Checks for
the existence of a business object attribute with a specified name.
API: BusObj.exists()
|
Inputs:
- business object--BusObj
- attribute--String
Outputs: exists?-- boolean
|
Get Boolean
|
Retrieves the
value of a single attribute, as a boolean, from a business object.
API: BusObj.getBoolean()
|
Inputs:
- business object--BusObj
- attribute--String
Outputs: value-- boolean
|
Get Business Object
|
Retrieves the
value of a single attribute, as a BusObj, from a business object.
API: BusObj.getBusObj()
|
Inputs:
- business object--BusObj
- attribute--String
Outputs: value--BusObj
|
Get Business Object Array
|
Retrieves the
value of a single attribute, as a BusObj Array, from a business
object.
API: BusObj.getBusObjArray()
|
Inputs:
- business object--BusObj
- attribute--String
Outputs: value--BusObjArray
|
Get Business Object Type
|
Retrieves the
name of the business object definition on which this business
object was based.
API: BusObj.getType()
|
Inputs:
business object--BusObj
Outputs: type--String
|
Get Double
|
Retrieves the
value of a single attribute, as a double, from a business object.
API: BusObj.getDouble()
|
Inputs:
- business object--BusObj
- attribute--String
Outputs: value--double
|
Get Float
|
Retrieves the
value of a single attribute, as a float, from a business object.
API: BusObj.getFloat()
|
Inputs:
- business object--BusObj
- attribute--String
Outputs: value--float
|
Get Int
|
Retrieves the
value of a single attribute, as an integer, from a business object.
API: BusObj.getInt()
|
Inputs:
- business object--BusObj
- attribute--String
Outputs: value--int
|
Get Long
|
Retrieves the
value of a single attribute, as a long, from a business object.
API: BusObj.getLong()
|
Inputs:
- business object--BusObj
- attribute--String
Outputs: value--long
|
Get Long Text
|
Retrieves the
value of a single attribute, as a long text, from a business
object.
API: BusObj.getLongText()
|
Inputs:
- business object--BusObj
- attribute--String
Outputs: value--String
|
Get Object
|
Retrieves the
value of a single attribute, as an object, from a business object.
API: BusObj.get()
|
Inputs:
- business object--BusObj
- attribute--String
Outputs: value--Object
|
Get String
|
Retrieves the
value of a single attribute, as a string, from a business object.
API: BusObj.getString()
|
Inputs:
- business object--BusObj
- attribute--String
Outputs: value--String
|
Get Verb
|
Retrieves
this business object's verb.
API: BusObj.getVerb()
|
Inputs:
business object--BusObj
Outputs: verb--String
|
Is Blank
|
Finds out
whether the value of an attribute is set to a zero-length string.
API: BusObj.isBlank()
|
Inputs:
- business object--BusObj
- attribute--String
Outputs: blank?--boolean
|
Is Business Object
|
Tests whether
the value is a business object (BusObj). |
Inputs:
value--Object
Outputs: result--boolean
|
Is Key
|
Finds out
whether a business object's attribute is defined as a key
attribute.
API: BusObj.isKey()
|
Inputs:
- business object--BusObj
- attribute--String
Outputs: key?--boolean
|
Is Null
|
Finds out
whether the value of a business object's attribute is null.
API: BusObj.isNull()
|
Inputs:
- business object--BusObj
- attribute--String
Outputs: null?--boolean
|
Is Required
|
Finds out
whether a business object's attribute is defined as a required
attribute.
API: BusObj.isRequired()
|
Inputs:
- business object--BusObj
- attribute--String
Outputs: required?--boolean
|
Iterate Children
|
Iterates
through the child business object array. |
Inputs:
- business object--BusObj
- attribute--String
- current index--int
- current element--BusObj
|
Key to String
|
Retrieves the
values of a business object's primary key attributes as a string.
API: BusObj.keysToString()
|
Inputs:business object--BusObj
Outputs: key string--String
|
New Business Object
|
Creates a new
business object instance (BusObj) of the specified type.
API: Collaboration.BusObj()
|
Inputs:
type--String
Outputs: business object--BusObj
|
Set Content
|
Sets the
contents of this business object to another business object. The
two business objects will own the content together. Changes made to
one business object will be reflected in the other business object.
API: BusObj.setContent()
|
Inputs:
- business object--BusObj
- content--BusObj
|
Set Default Attribute Values
|
Sets all
attributes to their default values.
API: BusObj.setDefaultAttrValues()
|
Inputs:business object--BusObj |
Set Keys
|
Sets the
values of the "to" business object's key attributes to the values
of the key attributes in "from" business object.
API: BusObj.setKeys()
|
Inputs:
- from business object--BusObj
- to business object--BusObj
|
Set Value with Create
|
Sets the
business object's attribute to a specified value of a particular
data type, creating an object for the value if one does not already
exist.
API: BusObj.setWithCreate()
|
Inputs:
- business object--BusObj
- attribute--String
- value--BusObj, BusObjArray, Object
|
Set Verb
|
Sets the verb
of a business object.
API: BusObj.setVerb()
|
Inputs:
- business object--BusObj
- verb--String
|
Set Verb with Create
|
Sets the verb
of a child business object, creating the child business object if
one does not already exist.
API: BusObj.setVerbWithCreate()
|
Inputs:
- business object--BusObj
- attribute--String
- verb--String
|
Set Value
|
Sets a
business object's attribute to a specified value of a particular
data type.
API: BusObj.set()
|
Inputs:
- business object--BusObj
- attribute--String
- value--boolean, double, float, int, long, Object, String,
BusObj
|
Shallow Equals
|
Compares
business object 1 and business object 2's values, excluding child
business objects, to determine whether they are equal.
API: BusObj.equalsShallow()
|
Inputs:
- business object 1--BusObj
- business object 2--BusObj
Outputs: equal?--boolean
|
To String
|
Gets the
values of all attributes in a business object as string.
API: BusObj.toString()
|
Inputs:
business object--BusObj
Outputs: string--String
|
Valid Data
|
Checks
whether the specified value is a valid type for a specified
attribute.
API: BusObj.validData()
|
Inputs:
- business object--BusObj
- attribute--String
- value--Object, BusObj, BusObjArray, String, long, int, double,
float, boolean
Outputs: valid?--boolean
|
Table 30.
General/APIs/Database Connection
Name |
Description |
Inputs and
outputs with acceptable values |
Begin Transaction
|
Begins an
explicit transaction for the current connection.
API: CwDBConnection.beginTransaction()
|
Inputs:
database connection--CwDBConnection |
Commit
|
Commits the
active transaction associated with the current connection.
API: CwDBConnection.commit()
|
Inputs:
database connection--CwDBConnection |
Execute Prepared SQL
|
Executes a
prepared SQL Query by specifying its syntax.
API: CwDBConnection.executePreparedSQL()
|
Inputs:
- database connection--CwDBConnection
- query--String
Outputs: equal?-- boolean
|
Execute Prepared SQL with
Parameter
|
Executes a
prepared SQL query by specifying its syntax with the specified
parameters.
API:CwDBConnection.executePreparedSQL()
|
Inputs:
- database connection--CwDBConnection
- query--String
- parameters--java.util.Vector
|
Execute SQL
|
Executes a
static SQL query by specifying its syntax.
API: CwDBConnection.executeSQL()
|
Inputs:
- database connection--CwDBConnection
- query--String
|
Execute SQL with Parameter
|
Executes a
static SQL query by specifying its syntax with the specified
parameters.
API: CwDBConnection.executeSQL()
|
Inputs:
- database connection--CwDBConnection
- query--String
- parameters--java.util.Vector
|
Execute Stored Procedure
|
Executes an
SQL stored procedure by specifying its name and parameter array.
API: CwDBConnection.executeStored Procedure()
|
Inputs:
- database connection--CwDBConnection
- query--String
- parameters--java.util.Vector
|
Get Database Connection
|
Establishes a
connection to a database and returns a CwDBConnection() object.
API: BaseDLM.getDBConnection() or
BaseCollaboration.getDBConnection()
|
Inputs:
connection pool name--String
Outputs: database connection--CwDBConnection
|
Get Database Connection with
Transaction
|
Establishes a
connection to a database and returns a CwDBConnection() object.
API: BaseDLM.getDBConnection() or
BaseCollaboration.getDBConnection()
|
Inputs:
- connection pool name--String
- implicit transaction--boolean
Outputs:database connection--CwDBConnection
|
Get Next Row
|
Gets the next
row from the query result.
API: CwDBConnection.nextRow()
|
Inputs:
database connection--CwDBConnection
Outputs: row--java.util.Vector
|
Get Update Count
|
Gets the
number of rows affected by the last write operation to the
database.
API: CwDBConnection.getUpdateCount()
|
Inputs:
database connection--CwDBConnection
Outputs: count--int
|
Has More Rows
|
Determines
whether the query result has more rows to process.
API: CwDBConnection.hasMoreRows()
|
Inputs:
database connection--CwDBConnection
Outputs: more rows?--boolean
|
In Transaction
|
Determines
whether a transaction is in progress in the current connection.
API: CwDBConnection.inTransaction()
|
Inputs:
database connection--CwDBConnection
Outputs: in transaction?--boolean
|
Is Active
|
Determines
whether the current connection is active.
API: CwDBConnection.isActive()
|
Inputs:
database connection--CwDBConnection
Outputs: is active?--boolean
|
Release
|
Releases use
of the current connection, returning it to its connection pool.
API: CwDBConnection.release()
|
Inputs:
database connection--CwDBConnection |
Roll Back
|
Rolls back
the active transaction associated with the current connection.
API: CwDBConnection.rollback()
|
Inputs:
database connection--CwDBConnection |
Table 31.
General/APIs/Identity Relationship
Name |
Description |
Inputs and
outputs with acceptable values |
Add My Children
|
Adds the
specified child instances to a parent/child relationship for an
identity relationship.
API: IdentityRelationship.addMyChildren()
|
Inputs:
- map--BaseDLM
- parentChildRelDefName--String
- parentParticipantDefName--String
- parentBusObj--BusObj
- childParticipantDefName--String
- childBusObjList--BusObj,BusObjArray
|
Delete All My Children
|
Removes all
child instances from a parent/child relationship for an identity
relationship belonging to the specified parent.
API: IdentityRelationship.deleteMyChildren()
|
Inputs:
- map--BaseDLM
- parentChildRelDefName--String
- parentParticipantDefName--String
- parentBusObj--BusObj
- childParticipantDefName--String
|
Delete My Children
|
Removes the
specified child instances from a parent/child relationship for an
identity relationship belonging to the specified parent.
API: IdentityRelationship.deleteMyChildren()
|
Inputs:
- map--BaseDLM
- parentChildRelDefName--String
- parentParticipantDefName--String
- parentBusObj--BusObj
- childParticipantDefName--String
- childBusObjList--BusObj,BusObjArray
|
Foreign Key Cross-Reference
|
Performs a
lookup in the relationship table in the relationship database based
on the foreign key of the source business object, adding a new
relationship instance in the foreign relationship table if the
foreign key does not exist.
API: IdentityRelationship.foreignKeyXref()
|
Inputs:
- map--BaseDLM
- RelDefName--String
- appParticipantDefName--String
- genParticipantDefName--String
- appSpecificBusObj--BusObj
- appForeignAttr--String
- genericBusObj--BusObj
- genForeignAttr--String
|
Foreign Key Lookup
|
Performs a
lookup in a foreign relationship table based on the foreign key of
the source business object, failing to find a relationship instance
if the foreign key does not exist in the foreign relationship
table.
API: IdentityRelationship.foreignKeyLookup()
|
Inputs:
- map--BaseDLM
- relDefName--String
- appParticipantDefName--String
- appSpecificBusObj--BusObj
- appForeignAttr--String
- genericBusObj--BusObj
- genForeignAttr--String
|
Maintain Child Verb
|
Sets the
child business object verb based on the map execution context and
the verb of the parent business object.
API: IdentityRelationship.maintainChildVerb()
|
Inputs:
- map--BaseDLM
- relDefName--String
- appSpecificParticipantName--String
- genericParticipantName--String
- appSpecificObj--BusObj
- appSpecificChildObj--String
- genericObj--BusObj
- genericChildObj--String
- to_Retrieve--boolean
- Is_Composite--boolean
|
Maintain Composite
Relationship
|
Maintains a
composite identity relationship from within the parent map.
API: IdentityRelationship.maintain
CompositeRelationship()
|
Inputs:
- map--BaseDLM
- relDefName--String
- participantDefName--String
- appSpecificBusObj--BusObj
- genericBusObjList--BusObj, BusObjArray
|
Maintain Simple Identity
Relationship
|
Maintains a
simple identity relationship from within either a parent or child
map.
API: IdentityRelationship.maintain
Simple Identity Relationship()
|
Inputs:
- map--BaseDLM
- relDefName--String
- participantDefName--String
- appSpecificBusObj--BusObj
- genericBusObj--BusObj
|
Update My Children
|
Adds and
deletes child instances in a specified parent/child relationship of
an identity relationship, as necessary.
API: IdentityRelationship.updateMyChildren()
|
Inputs:
- map--BaseDLM
- parentChildRelDefName--String
- parentParticipantDef--String
- parentBusObj--BusObj
- childParticipantDef--String
- childAttrName--String
- childIdentityRelDefName--String
- childIdentityParticipantDefName--String
|
Table 32.
General/APIs/Maps/Constants
Name |
Description |
Inputs and
outputs with acceptable values |
Calling Context: ACCESS
_REQUEST
|
An access
client has sent an access request from an external application to
InterChange Server Express.
API: MapExeContext.ACCESS_REQUEST
|
Outputs: ACCESS_REQUEST--String
|
Calling Context: ACCESS
_RESPONSE
|
The source
business object is sent back to the source access client in
response to a subscription delivery request.
API: MapExeContext.ACCESS_RESPONSE
|
Outputs: ACCESS_RESPONSE--String
|
Calling Context: EVENT
_DELIVERY
|
A connector
has sent an event from the application to InterChange Server
Express (event-triggered flow).
API: MapExeContext.EVENT_DELIVERY
|
Outputs: EVENT_DELIVERY--String
|
Calling Context: SERVICE_CALL
_FAILURE
|
A
collaboration's service call request has failed. As such,
corrective action might need to be performed.
API: MapExeContext.SERVICE_CALL_FAILURE
|
Outputs: SERVICE_CALL_FAILURE
--String
|
Calling Context: SERVICE_CALL
_REQUEST
|
A
collaboration is sending a business object down to the application
through a service call request.
API: MapExeContext.SERVICE_CALL_REQUEST
|
Outputs: SERVICE_CALL_REQUEST
--String
|
Calling Context: SERVICE_CALL
_RESPONSE
|
A business
object was received from the application as a result of a
successful response to a collaboration service call request.
API: MapExeContext.SERVICE_CALL
_RESPONSE
|
Outputs: SERVICE_CALL_RESPONSE
--String
|
Table 33.
General/APIs/Maps/Exception
Name |
Description |
Inputs and
outputs with acceptable values |
Raise Map Exception
|
Raises a map
run-time exception.
API: raiseException()
|
Inputs:
- map--BaseDLM
- exception type--String
- message--String
|
Raise Map Exception 1
|
Raises a map
run-time exception.
API: raiseException()
|
Inputs:
- map--BaseDLM
- exception type--String
- message--String
- parameter 1--String
|
Raise Map Exception 2
|
Raises a map
run-time exception.
API: raiseException()
|
Inputs:
- map--BaseDLM
- exception type--String
- message--String
- parameter 1--String
- parameter 2--String
|
Raise Map Exception 3
|
Raises a map
run-time exception.
API: raiseException()
|
Inputs:
- map--BaseDLM
- exception type--String
- message--String
- parameter 1--String
- parameter 2--String
- parameter 3--String
|
Raise Map Exception 4
|
Raises a map
run-time exception.
API: raiseException()
|
Inputs:
- map--BaseDLM
- exception type--String
- message--String
- parameter 1--String
- parameter 2--String
- parameter 3--String
- parameter 4--String
|
Raise Map Exception 5
|
Raises a map
run-time exception.
API: raiseException()
|
Inputs:
- map--BaseDLM
- exception type--String
- message--String
- parameter 1--String
- parameter 2--String
- parameter 3--String
- parameter 4--String
- parameter 5--String
|
Raise Map RunTimeEntity
Exception
|
Raises a map
run-time exception.
API: raiseException()
|
Inputs:
- map--BaseDLM
- exception--RunTimeEntityException
|
Table 34.
General/APIs/Maps
Name |
Description |
Inputs and
outputs with acceptable values |
Get Adapter Name
|
Retrieves the
adapter name associated with the current map instance.
API: MapExeContext.getConnName()
|
Inputs:
map--BaseDLM
Outputs: adapter name--String
|
Get Calling Context
|
Retrieves the
calling context associated with the current map instance.
API: MapExeContext.getInitiator()
|
Inputs:
map--BaseDLM
Outputs: calling context--String
|
Get Original Request Business
Object
|
Retrieves the
original-request business object associated with the current map
instance.
API: MapExeContext.getOriginalRequestBO()
|
Inputs:
map--BaseDLM
Outputs: original business object--BusObj
|
Table 35.
General/APIs/Participant/Array
Name |
Description |
Inputs and
outputs with acceptable values |
Get Participant At
|
Retrieves the
element at the specified index in the participant array. |
Inputs:
- array--Server.RelationshipServices.Participant[]
- index--int
Outputs:
participant--Server.RelationshipServices.Participant
|
New Participant Array
|
Creates a new
participant array with the specified size. |
Inputs:
size--int
Outputs: array--Server.RelationshipServices.Participant[]
|
Set Participant At
|
Sets the
element at the specified index in the participant array. |
Inputs:
- array--Server.RelationshipServices.Participant[]
- index--int
- participant--Server.RelationshipServices.Participant
|
Size
|
Retrieves the
size of the participant array. |
Inputs:
array--Server.RelationshipServices.Participant[]
Outputs: size--int
|
Table 36.
General/APIs/Participant/Constants
Name |
Description |
Inputs and
outputs with acceptable values |
Participant:
INVALID
_INSTANCE_ID
|
Participant
constant indicating the participant ID is invalid.
API: Participant.INVALID_INSTANCE_ID
|
Outputs: INVALID_INSTANCE_ID--int
|
Table 37.
General/APIs/Participant
Name |
Description |
Inputs and
outputs with acceptable values |
Get Boolean Data
|
Retrieves the
data associated with the Participant object.
API: Participant.getBoolean()
|
Inputs:
participant--Server.RelationshipServices.Participant
Outputs: data--boolean
|
Get Business Object Data
|
Retrieves the
data associated with the Participant object.
API: Participant.getBusObj()
|
Inputs:
participant--Server.RelationshipServices.Participant
Outputs: data--BusObj
|
Get Double Data
|
Retrieves the
data associated with the Participant object.
API: Participant.getDouble()
|
Inputs:
participant--Server.RelationshipServices.Participant
Outputs: data--double
|
Get Float Data
|
Retrieves the
data associated with the Participant object.
API: Participant.getFloat()
|
Inputs:
participant--Server.RelationshipServices.Participant
Outputs: data--float
|
Get Instance ID
|
Retrieves the
relationship instance ID of the relationship in which the
participant instance is participating.
API: Participant.getInstanceId()
|
Inputs:
participant--Server.RelationshipServices.Participant
Outputs: instance ID--int
|
Get Int Data
|
Retrieves the
data associated with the Participant object.
API: Participant.getInt()
|
Inputs:
participant--Server.RelationshipServices.Participant
Outputs: data--int
|
Get Long Data
|
Retrieves the
data associated with the Participant object.
API: Participant.getLong()
|
Inputs:
participant--Server.RelationshipServices.Participant
Outputs: data--long
|
Get Participant Name
|
Retrieves the
participant definition name from which the participant instance is
created.
API: Participant.getParticipantDefinition()
|
Inputs:
participant--Server.RelationshipServices.Participant
Outputs: name--String
|
Get Relationship Name
|
Retrieves the
name of the relationship definition in which the participant
instance is participating.
API: Participant.getRelationshipDefinition()
|
Inputs:
participant--Server.RelationshipServices.Participant
Outputs: name--String
|
Get String Data
|
Retrieves the
data associated with the Participant object.
API: Participant.getString()
|
Inputs:
participant--Server.RelationshipServices.Participant
Outputs: data--String
|
New Participant
|
Creates a new
participant instance with no relationship instance.
API: Participant()
|
Inputs:
- relDefName--String
- partDefName--String
- partData--BusObj, String, long, int, double, float,
boolean
Output: participant--Server.RelationshipServices.Participant
|
New Participant in
Relationship
|
Creates a new
participant instance for adding to an existing participant in a
relationship instance.
API: RelationshipServices.Participant()
|
Inputs:
- relDefName--String
- partDefName--String
- instanceId--int
- partData--BusObj, String, long, int, double, float,
boolean
Output: participant--Server.RelationshipServices.Participant
|
Set Data
|
Sets the data
associated with the participant instance.
API: Participant.set()
|
Inputs:
- participant--Server.RelationshipServices.Participant
- partData--BusObj, String, long, int, double, float,
boolean
|
Set Instance ID
|
Sets the
instance ID of the relationship in which the participant instance
is participating.
API: Participant.setInstanceId()
|
Inputs:
- participant--Server.RelationshipServices.Participant
- id--int
|
Set Participant Definition
|
Sets the
participant definition name from which the participant instance is
created.
API: Participant.setParticipantDefinition()
|
Inputs:
- participant--Server.RelationshipServices.Participant
- partDefName--String
|
Set Relationship Definition
|
Sets the
relationship definition in which the participant instance is
participating.
API: Participant.setRelationshipDefinition()
|
Inputs:
- participant--Server.RelationshipServices.Participant
- relDefName--String
|
Table 38.
General/APIs/Relationship
Name |
Description |
Inputs and
outputs with acceptable values |
Add Participant
|
Adds an
existing participant object to a relationship instance.
API: Relationship.addParticipant()
|
Inputs:
participant--Server.RelationshipServices.Participant
Outputs: result instance ID--int
|
Add Participant Data
|
Adds a new
participant to an existing relationship instance.
API: Relationship.addParticipant()
|
Inputs:
- relDefName--String
- partDefName--String
- instanceId--int
- partData--BusObj, String, long, int, double, float,
boolean
Outputs: result instance ID--int
|
Add Participant Data to New
Relationship
|
Adds a
participant to a new relationship instance.
API: Relationship.addParticipant()
|
Inputs:
- relDefName--String
- partDefName--String
- partData--BusObj, String, long, int, double, float,
boolean
Outputs: result instance ID--int
|
Create Relationship
|
Creates a new
relationship instance.
API: Relationship.create()
|
Inputs:
- relDefName--String
- partDefName--String
- partData--BusObj, String, long, int, double, float,
boolean
Outputs: instance ID--int
|
Create Relationship with
Participant
|
Creates a new
relationship instance.
API: Relationship.create()
|
Inputs:
participant--Server.RelationshipServices.Participant
Outputs: instance ID--int
|
Deactivate Participant
|
Deactivates a
participant from one or more relationship instances.
API: Relationship.deactivate Participant()
|
Inputs:
participant--Server.RelationshipServices.Participant |
Deactivate Participant By
Data
|
Deactivates a
participant from one or more relationship instances.
API: Relationship.deactivate Participant()
|
Inputs:
- relDefName--String
- partDefName--String
- partData--BusObj, String, long, int, double, float,
boolean
|
Deactivate Participant By
Instance
|
Deactivates a
participant from a specific relationship instance.
API: Relationship.deactivate ParticipantByInstance()
|
Inputs:
- relDefName--String
- partDefName--String
- instanceId--int
|
Deactivate Participant By Instance
Data
|
Deactivates a
participant from a specific relationship instance with the data
associated with the participant.
API: Relationship.deactivate ParticipantByInstance()
|
Inputs:
- relDefName--String
- partDefName--String
- instanceId--int
- partData--BusObj, String, long, int, double, float,
boolean
|
Delete Participant
|
Removes a
participant instance from one or more relationship instances.
API: Relationship.deleteParticipant()
|
Inputs:
participant--Server.RelationshipServices.Participant |
Delete Participant By
Instance
|
Removes a
participant from a specific relationship instance.
API: Relationship.deleteParticipanByInstancet()
|
Inputs:
- relDefName--String
- partDefName--String
- instanceId--int
|
Delete Participant By Instance
Data
|
Removes a
participant from a specific relationship instance with the data
associated with the participant.
API: Relationship.deleteParticipanByInstancet()
|
Inputs:
- relDefName--String
- partDefName--String
- instanceId--int
- partData--BusObj, String, long, int, double, float,
boolean
|
Delete Participant with Data
|
Removes a
participant instance from one or more relationship instances.
API: Relationship.deleteParticipant()
|
Inputs:
- relDefName--String
- partDefName--String
- partData--BusObj, String, long, int, double, float,
boolean
|
Get Next Instance ID
|
Returns the
next available relationship instance ID for a relationship, based
on the relationship definition name.
API: Relationship.getNewID()
|
Inputs:
relDefName--String
Outputs: ID--int
|
Retrieve Instances
|
Retrieves
zero or more IDs of relationship instances which contain the given
participant(s).
API: Relationship.retrieveInstances()
|
Inputs:
- relDefName--String
- partDefName--String,String[]
- partData--BusObj, String, long, int, double, float,
boolean
Outputs: instance IDs--int
|
Retrieve Instances for
Participant
|
Retrieves
zero or more IDs of relationship instances which contain a given
participant.
API: Relationship.retrieveInstances()
|
Inputs:
- relDefName--String
- partData--BusObj, String, long, int, double, float,
boolean
Outputs: instance IDs--int
|
Retrieve Participants
|
Retrieves
zero or more participants from a relationship instance.
API: Relationship.retrieveParticipants()
|
Inputs:
- relDefName--String
- partDefName--String, String[]
- instanceId--int
Outputs: participant
instances--Server.RelationshipServices.Participant[]
|
Retrieve Participants with
ID
|
Retrieves
zero or more participants from a relationship instance.
API: Relationship.retrieveParticipants()
|
Inputs:
- relDefName--String
- instanceId--int
Outputs: participant
instances--Server.RelationshipServices.Participant[]
|
Update Participant
|
Updates a
participant in one or more relationship instances.
API: Relationship.updateParticipant()
|
Inputs:
- relDefName--String
- partDefName--String
- partData--BusObj
|
Update Participant By
Instance
|
Updates a
participant in a specific relationship instance.
API: Relationship.updateParticipantByInstance()
|
Inputs:
- relDefName--String
- partDefName--String, String[]
- instanceId--int
|
Update Participant By Instance
Data
|
Updates a
participant in a specific relationship instance with the data
associated with the participant.
API: Relationship.updateParticipantByInstance()
|
Inputs:
- relDefName--String
- partDefName--String
- instanceId--int
- partData--BusObj, String
|
Table 39.
General/Date
Name |
Description |
Inputs and
outputs with acceptable values |
Add Day
|
Adds
additional days to the from date. |
Inputs:
- from date--String
- date format--String
- day to add--int
Outputs: to date-- String
|
Add Month
|
Adds
additional months to the from date. |
Inputs:
- from date--String
- date format--String
- month to add--int
Outputs: to date-- String
|
Add Year
|
Adds
additional years to the from date. |
Inputs:
- from date--String
- date format--String
- year to add--int
Outputs: to date-- String
|
Date After
|
Compares two
dates and determines whether Date 1 is after Date 2. |
Inputs:
- Date 1--String
- Date 1 format--String
- Date 2--String
- Date 2 format--String
Outputs: Is Date 1 after Date 2?-- boolean
|
Date Before
|
Compares two
dates and determines whether Date 1 is before Date 2. |
Inputs:
- Date 1--String
- Date 1 format--String
- Date 2--String
- Date 2 format--String
Outputs: Is Date 1 before Date 2?-- boolean
|
Date Equals
|
Compares two
dates and determines whether they are equal. |
Inputs:
- Date 1--String
- Date 1 format--String
- Date 2--String
- Date 2 format--String
Outputs: Are they equal?-- boolean
|
Format Change
|
Changes a
date format. |
Inputs:
- date--String
- input format--String
- output format--String
Outputs: formatted date--String
|
Get Day
|
Returns the
numeric day of month based on date expression. |
Inputs:
- Date--String
- Format--String
Outputs: Day--int
|
Get Month
|
Returns the
numeric month of year based on date expression. |
Inputs:
- Date--String
- Format--String
Outputs: Month--int
|
Get Year
|
Returns the
numeric year based on date expression. |
Inputs:
- Date--String
- Format--String
Outputs: Year--int
|
Get Year Month Day
|
Given an
input date, extracts the Year/Month/Day parts from the input date
respectively. |
Inputs:
- Date--String
- Format--String
Outputs:
- Year--int
- Month--int
- Day--int
|
Now
|
Gets today's
date. |
Inputs:
format--String
Outputs: now--String
|
Table 40.
General/Date/Formats
Name |
Description |
Inputs and
outputs with acceptable values |
yyyy-MM-dd
|
Date format
of yyyy-MM-dd
Example: 2003-02-25
|
Outputs:
format--String |
yyyyMMdd
|
Date format
of yyyyMMdd
Example: 20030225
|
Outputs:
format--String |
yyyyMMdd HH:mm:ss
|
Date format
of yyyyMMdd HH:mm:ss
Example: 20030225 12:36:40
|
Outputs:
format--String |
Table 41.
General/Logging and Tracing
Name |
Description |
Inputs and
outputs with acceptable values |
Log error
|
Sends the
specified error message to the ICS log file. |
Inputs:
message--String, byte, short, int, long, float, double |
Log error ID
|
Sends the
error message associated with the specified ID to the ICS log
file. |
Inputs:
ID--String, byte, short, int, long, float, double |
Log information
|
Sends the
specified information message to the ICS log file. |
Inputs:
message--String, byte, short, int, long, float, double |
Log information ID
|
Sends the
information message associated with the specified ID to the ICS log
file. |
Inputs:
ID--String, byte, short, int, long, float, double |
Log warning
|
Sends the
specified warning message to the ICS log file |
Inputs:
message--String, byte, short, int, long, float, double |
Log warning ID
|
Sends the
warning message associated with the specified ID to the ICS log
file. |
Inputs:
ID--String, byte, short, int, long, float, double |
Trace
|
Sends the
specified trace message to the ICS log file. |
Inputs:
message--String, byte, short, int, long, float, double |
Table 42.
General/Logging and Tracing/Log Error
Name |
Description |
Inputs and
outputs with acceptable values |
Log error ID 1
|
Formats the
error message associated with the specified ID with the parameter
and sends it to the ICS log file. |
Inputs:
- ID--String, byte, short, int, long, float, double
- parameter--String, byte, short, int, long, float, double
|
Log error ID 2
|
Formats the
error message associated with the specified ID with the parameters
and sends it to the ICS log file. |
Inputs:
- ID--String, byte, short, int, long, float, double
- parameter 1--String, byte, short, int, long, float, double
- parameter 2--String, byte, short, int, long, float, double
|
Log error ID 3
|
Formats the
error message associated with the specified ID with the parameters
and sends it to the ICS log file. |
Inputs:
- ID--String, byte, short, int, long, float, double
- parameter 1--String, byte, short, int, long, float, double
- parameter 2--String, byte, short, int, long, float, double
- parameter 3--String, byte, short, int, long, float, double
|
Table 43.
General/Logging and Tracing/Log Information
Name |
Description |
Inputs and
outputs with acceptable values |
Log information ID 1
|
Formats the
information message associated with the specified ID with the
parameter and sends it to the ICS log file. |
Inputs:
- ID--String, byte, short, int, long, float, double
- parameter--String, byte, short, int, long, float, double
|
Log information ID 2
|
Formats the
information message associated with the specified ID with the
parameters and sends it to the ICS log file. |
Inputs:
- ID--String, byte, short, int, long, float, double
- parameter 1--String, byte, short, int, long, float, double
- parameter 2--String, byte, short, int, long, float, double
|
Log information ID 3
|
Formats the
information message associated with the specified ID with the
parameters and sends it to the ICS log file. |
Inputs:
- ID--String, byte, short, int, long, float, double
- parameter 1--String, byte, short, int, long, float, double
- parameter 2--String, byte, short, int, long, float, double
- parameter 3--String, byte, short, int, long, float, double
|
Table 44.
General/Logging and Tracing/Log Warning
Name |
Description |
Inputs and
outputs with acceptable values |
Log warning ID 1
|
Formats the
warning message associated with the specified ID with the parameter
and sends it to the ICS log file. |
Inputs:
- ID--String, byte, short, int, long, float, double
- parameter--String, byte, short, int, long, float, double
|
Log warning ID 2
|
Formats the
warning message associated with the specified ID with the
parameters and sends it to the ICS log file. |
Inputs:
- ID--String, byte, short, int, long, float, double
- parameter 1--String, byte, short, int, long, float, double
- parameter 2--String, byte, short, int, long, float, double
|
Log warning ID 3
|
Formats the
warning message associated with the specified ID with the
parameters and sends it to the ICS log file. |
Inputs:
- ID--String, byte, short, int, long, float, double
- parameter 1--String, byte, short, int, long, float, double
- parameter 2--String, byte, short, int, long, float, double
- parameter 3--String, byte, short, int, long, float, double
|
Table 45.
General/Logging and Tracing/Trace
Name |
Description |
Inputs and
outputs with acceptable values |
Trace ID 1
|
Formats the
trace message associated with the specified ID with the parameter
and displays it if tracing is set to the specified level or a
higher level. |
Inputs:
- ID--String, byte, short, int, long, float, double
- level--String, byte, short, int, long, float, double
- parameter--String, byte, short, int, long, float, double
|
Trace ID 2
|
Formats the
trace message associated with the specified ID with the parameters
and displays it if tracing is set to the specified level or a
higher level. |
Inputs:
- ID--String, byte, short, int, long, float, double
- level--String, byte, short, int, long, float, double
- parameter 1--String, byte, short, int, long, float, double
- parameter 2--String, byte, short, int, long, float, double
|
Trace ID 3
|
Formats the
trace message associated with the specified ID with the parameters
and displays it if tracing is set to the specified level or a
higher level. |
Inputs:
- ID--String, byte, short, int, long, float, double
- level--String, byte, short, int, long, float, double
- parameter 1--String, byte, short, int, long, float, double
- parameter 2--String, byte, short, int, long, float, double
- parameter 3--String, byte, short, int, long, float, double
|
Trace on Level
|
Displays the
trace message if tracing is set to the specified level or a higher
level. |
Inputs:
- message--String, byte, short, int, long, float, double
- level--String, byte, short, int, long, float, double
|
Table 46.
General/Mapping
Name |
Description |
Inputs and
outputs with acceptable values |
Run Map
|
Executes the
specified map with the current calling context. |
Inputs:
- Map Name--String
- Source Business Objects--BusObj, BusObj[]
Outputs: Map Results--BusObj, BusObj[]
|
Run Map with Context
|
Executes the
specified map with the calling context specified. |
Inputs:
- Map Name--String
- Source Business Objects--BusObj, BusObj[]
- calling context--String
Outputs: Map Results--BusObj, BusObj[]
|
Table 47.
General/Math
Name |
Description |
Inputs and
outputs with acceptable values |
Absolute value
|
a=abs(b)
API: Math.abs()
|
Inputs:
b--byte, short, int, long, float, double
Outputs: a--byte, short, int, long, float, double
|
Ceiling
|
Returns the
next highest integer that is greater than or equal to the specified
numeric expression. |
Inputs:
number--String, float, double
Outputs: ceiling--int
|
Divide
|
a=b/c |
Inputs:
- b--byte, short, int, long, float, double
- c--byte, short, int, long, float, double
Outputs: a--byte, short, int, long, float, double
|
Equal
|
Is value 1
equal to value 2? |
Inputs:
- value 1--String, byte, short, int, long, float, double
- value 2--String, byte, short, int, long, float, double
Outputs: are they equal?--boolean
|
Floor
|
Returns the
next lowest integer that is greater than or equal to the specified
numeric expression. |
Inputs:
number--String, float, double
Outputs: floor--int
|
Greater than
|
Is value 1
greater than value 2? |
Inputs:
- value 1--byte, short, int, long, float, double
- value 2--byte, short, int, long, float, double
Outputs: result--boolean
|
Greater than or Equal
|
Is value 1
greater than or equal to value 2? |
Inputs:
- value 1--byte, short, int, long, float, double
- value 2--byte, short, int, long, float, double
Outputs: result--boolean
|
Less than
|
result=value
1 is less than value 2? |
Inputs:
- value 1--byte, short, int, long, float, double
- value 2--byte, short, int, long, float, double
Outputs: result--boolean
|
Less than or
equal |
Is value 1
less than or equal to value 2? |
Inputs:
- value 1--byte, short, int, long, float, double
- value 2--byte, short, int, long, float, double
Outputs: result--boolean
|
Maximum
|
a=max(b, c)
API: Math.max()
|
Inputs:
- b--byte, short, int, long, float, double
- c--byte, short, int, long, float, double
Outputs: a--byte, short, int, long, float, double
|
Minimum
|
a=min(b, c)
API: Math.min()
|
Inputs:
- b--byte, short, int, long, float, double
- c--byte, short, int, long, float, double
Outputs: a--byte, short, int, long, float, double
|
Minus
|
a=b-c |
Inputs:
- b--byte, short, int, long, float, double
- c--byte, short, int, long, float, double
Outputs: a--byte, short, int, long, float, double
|
Multiply
|
a=b*c |
Inputs:
- b--byte, short, int, long, float, double
- c--byte, short, int, long, float, double
Outputs: a--byte, short, int, long, float, double
|
Not Equal
|
result=is
value 1 not equal to value 2? |
Inputs:
- value 1--String, byte, short, int, long, float, double
- value 2--String, byte, short, int, long, float, double
Outputs: are they not equal?--boolean
|
Not a Number
|
Returns true
if input is not a number. |
Inputs:
input--String
Outputs: is not a number--boolean
|
Number to String
|
Converts a
numeric expression to a character expression. |
Inputs:
number--String, short, int, long, float, double
Outputs: string--String
|
Plus
|
a=b+c |
Inputs:
- b--byte, short, int, long, float, double
- c--byte, short, int, long, float, double
Outputs: a--byte, short, int, long, float, double
|
Round
|
Rounds a
numeric expression down to the next lowest integer if <5;
otherwise, the integer is rounded up. |
Inputs:
number--String, float, double
Outputs: rounded number--int
|
String to Number
|
Converts a
character expression to a numeric expression.
API: Math.type()
|
Inputs:
string--String
Outputs: String, short, int, long, float, double
|
Table 48.
General/Properties
Name |
Description |
Inputs and
outputs with acceptable values |
Get Property
|
Retrieves the
specified configuration property value. |
Inputs:
property name--String
Outputs: property value--String
|
Table 49.
General/Relationship
Name |
Description |
Inputs and
outputs with acceptable values |
Maintain Identity
Relationship
|
Maintains an
identity relationship with the maintainSimpleIdentityRelationship()
Relationship API. |
Inputs:
- relationship name--String
- participant name--String
- Generic Business Object--String
- Application-Specific Business Object--String
- calling context--String
|
Static Lookup
|
Looks up a
static value in the relationship. |
Inputs:
- relationship name--String
- participant name--String
- inbound?--boolean
- source value--String
Outputs: lookup value--String
|
Table 50.
General/String
Name |
Description |
Inputs and
outputs with acceptable values |
Append Text
|
Appends the
"in string2" to the end of the string "in string 1." |
Inputs:
- in string 1--String
- in string 2--String
Outputs: result--String
|
If
|
Returns the
first value if condition is true and the second value if condition
is false. |
Inputs:
- condition--boolean, Boolean
- value 1--String
- value 2--String
Outputs: result--String
|
Is Empty
|
Returns the
second value if the first value is empty. |
Inputs:
- value 1--String
- value 2--String
Outputs: result--String
|
Is NULL
|
Returns the
second value if the first value is null. |
Inputs:
- value 1--String
- value 2--String
Outputs: result--String
|
Left Fill
|
Returns a
string of the specified length; fills the left with indicated
value. |
Inputs:
- string--String
- fill string--String
- length--int
Outputs: filled string--String
|
Left String
|
Returns the
left portion of string for the specified number of positions. |
Inputs:
- string--String
- length--int
Outputs: left string--String
|
Lower Case
|
Changes all
characters to Lower Case letters |
Inputs:
fromString--String
Outputs: toString--String
|
Object To String
|
Gets a string
representation of the object. |
Inputs:
object--Object
Outputs: string--String
|
Repeat
|
Returns a
character string that contains a specified character expression
repeated a specified number of times. |
Inputs:
- repeating string--String
- repeat count--int
Outputs: result--String
|
Replace
|
Replaces part
of a string with indicated value data. |
Inputs:
- input--String
- old string--String
- new string--String
Outputs: replaced string--String
|
Right Fill
|
Returns a
string of the specified length; fills the right with indicated
value. |
Inputs:
- string--String
- fill string--String
- length--int
Outputs: filled string--String
|
Right String
|
Returns the
right portion of string for the specified number of positions. |
Inputs:
- string--String
- length--int
Outputs: right string--String
|
Substring by position
|
Returns a
portion of the string based on start and end parameters. |
Inputs:
- string--String
- start position--int
- end position--int
Outputs: substring--String
|
Substring by value
|
Returns a
portion of the string based on start and end parameters. The
substring will not include the start and end value. |
Inputs:
- string--String
- start value--int
- end value--int
Outputs: substring--String
|
Text Equal
|
Compares the
strings "inString1" and "inString2" and determine whether they are
the same. |
Inputs:
- inString1--String
- inString2--String
Outputs: are they equal?--boolean
|
Text Equal Ignore Case
|
Compares the
strings "inString1" and "inString2" lexicographically, ignoring
case considerations. |
Inputs:
- inString1--String
- inString2--String
Outputs: are they equal?--boolean
|
Text Length
|
Finds the
total number of characters in a string |
Inputs:
str--String
Outputs: length---byte, short, int, long, float, double
|
Trim Left
|
Trims the
specified number of characters from the left side of the
string. |
Inputs:
- input--String
- trim length--int
Outputs: result--String
|
Trim Right
|
Trims the
specified number of characters from the right side of the
string. |
Inputs:
- input--String
- trim length--int
Outputs: result--String
|
Trim Text
|
Trims white
spaces before and after the string |
Inputs: in
string--String
Outputs: trimmed string--String
|
Upper Case
|
Changes all
characters into Upper Case letters |
Inputs:
fromString--String
Outputs: toString--String
|
Table 51.
General/Utilities
Name |
Description |
Inputs and
outputs with acceptable values |
Catch Error
|
Catches all
the Exceptions thrown in the current activity and its
subactivities. (Double-click the function block icon in the canvas
to define the subactivity.) |
Inputs:
- Error Name--String
- Error Message--String
|
Catch Error Type
|
Catches the
specified Exception type thrown in the current activity and its
subactivities. (Double-click the function block icon in the canvas
to define the subactivity.) |
Inputs:
- error type--String
- Error Message--String
|
Condition
|
If
"Condition" is true, executes the subactivity defined in"True
Action"; otherwise, executes the subactivity defined in "False
Action." (Double-click the function block icon in the canvas to
define the subactivity.) |
Inputs:
Condition--boolean |
Loop
|
Repeats the
subactivity until "Condition" is false. (Double-click the function
block icon in the canvas to define the subactivity.) |
Inputs:
Condition--boolean |
Move Attribute in Child
|
Moves the
value from "from attribute" to "to attribute". |
Inputs:
- source parent--BusObj
- source child BO attribute--string
- from attribute--String
- destination parent--BusObj
- destination child BO attribute--String
- to attribute--String
|
Raise Error
|
Throws a new
Java Exception with the given message. |
Inputs:
message--String |
Raise Error Type
|
Throws the
specified Java Exception with the given message. |
Inputs:
- error type--String
- message--String
|
Table 52.
General/Utilities/Vector
Name |
Description |
Inputs and
outputs with acceptable values |
Add Element
|
Adds the
specified element to the end of the vector, increasing its size by
one. |
Inputs:
vector--java.util.Vector
Outputs: element--Object
|
Get Element
|
Gets the
element at the specified index in the Vector object. |
Inputs:
- vector--java.util.Vector
- index--int
Outputs: element--Object
|
Iterate Vector
|
Iterates
through the vector object. |
Inputs:
- vector--java.util.Vector
- current index--int
- current element--Object
|
New Vector
|
Creates a new
vector object. |
Outputs:
vector--java.util.Vector |
Size
|
Gets the
number of elements in this vector. |
Inputs:
vector--java.util.Vector
Outputs: size--int
|
To Array
|
Gets the
array representation containing all of the elements in this
vector. |
Inputs:
vector--java.util.Vector
Outputs: array--Object[]
|
The following example
illustrates the steps for using the Activity Editor to change the
source attribute's value to all uppercase and assign the change to
the destination attribute.
Perform the following steps:
- From the Diagram tab, drag the source attribute onto the
destination attribute to create a Custom transformation rule. Then
click the icon of the Custom transformation rule to open the
Activity Editor.
Example: Figure 47
shows the Custom transformation we are using in this example. The
source attribute is ObjClarify_contact.LastName, and the
destination attribute is ObjContact.LastName.

Figure
47. Custom transformation rule
Result: The Activity Editor opens.
For more information on creating Custom and other
transformations, see "Creating maps"..
- Select a category in the Library window (top left) to show the
available function blocks in that category in the Content window
(bottom left).
Figure 48 shows the available
functions blocks for the "String" category; the source and
destination attributes in our example are displayed as icons in the
graphical canvas.

Figure
48. Function blocks in String category and icons for source and
destination attributes
- To use any of the function
blocks in the activity, drag the function block from the tree in
the Library window and drop it onto the activity canvas; or
alternatively, drag the icon from the Content window and drop it
onto the activity canvas.
Example:
In our example, we want to change the source attribute to all
uppercase letters, so we will drag-and-drop the Upper Case function
block in the String category from the Content window onto the
activity canvas, as shown in Figure
49..

Figure
49. Dragging the Upper Case function block
- After you drop a function
block on the activity canvas, you can move it around the canvas by
selecting the function block icon and dragging and dropping it at
the desired position. When the function block is in place, you are
ready to connect the inputs and outputs of the function block to
define the flow of execution.
Example: In our
example, we want to convert the attribute value of
ObjClarify_Contact.LastName to all uppercase letters. We can do
this by connecting the output of the icon for
ObjClarify_Contact.LastName to the input of the Upper Case function
block. To do this, move the mouse cursor to the output of the icon
of port ObjClarify_Contact.LastName.
Result: The shape of the icon will change to an arrow to
indicate that you can initiate a link at that point, as shown in
Figure 50.

Figure
50. Cursor as arrow at output port of
ObjClarify_Contact.LastName
- When the mouse icon is
changed to an arrow, hold down the mouse button and move the mouse
to the input of the Upper Case function block, and release the
mouse button. A connection link will be drawn to connect the input
and outputs.
To indicate that the result of the Upper Case function block
should be assigned to the destination attribute (in our example,
ObjContact.LastName), repeat the same steps to drag-and-drop from
the output of the Upper Case function block to the input of the
ObjContact.LastName port icon. Figure
51 shows the connection links.

Figure
51. Upper Case function block with connection links
Result: We have defined an activity which will take the
value of the source attribute, uppercase it, and set the uppercased
value to the destination attribute.
- Save the activity by
selecting To Project or To File from the File-->Save submenu or
by clicking the Save Map to Project or Save Map to File button in
the Standard toolbar.
- To see an example of the Java code that will be generated by
this activity, click the Java tab.
Result: The Java tab will be activated with the sample
Java code, as shown in Figure
52.

Figure
52. Java tab with code
The following example illustrates the steps for using the
Activity Editor to change the source value's date format to a
different format and assign it to the destination attribute.
Perform the following steps:
- From the Diagram tab, drag the source attribute onto the
destination attribute to create a Custom transformation rule. Then
click the icon of the Custom transformation rule to open the
Activity Editor.
Example: Figure 53
shows the Custom transformation we are using in this example. The
source attribute is ObjClarify_QuoteSchedule.PriceProgExpireDate,
and the destination attribute is ObjARInvoice.GLPostingDate.

Figure
53. Custom transformation rule
Result: The Activity Editor opens.
For more information on creating Custom and other
transformations, see "Creating maps"..
- Select a category in the Library window (top left) to show the
available function blocks in that category in the Content window
(bottom left).
Figure 54 shows the available
functions blocks for the "Date" category; the source and
destination attributes in our example are displayed as icons in the
graphical canvas.

Figure
54. Function blocks in Date category and icons for source and
destination attributes
- To use any of the function blocks in the activity,
drag the function block from the tree in the Library window and
drop it onto the activity canvas; or alternatively, drag the icon
from the Content window and drop it onto the activity canvas.
Example: In our example, we want to change
the date format of the source attribute from "yyyyMMdd" to
"yyyy.MM.dd G 'at' HH:mm:ss z" and assign it to the destination
attribute; so we will drag-and-drop the Format Change function
block in the Date category from the Content window onto the
activity canvas, as shown in Figure
55..
- Note:
- A date formatted with "yyyyMMdd" looks like this: "20030227"; a
date formatted with "yyyy.MM.dd G 'at' HH:mm:ss z" looks like this
"2003.02.27 AD at 00:00:00 PDT".

Figure
55. Dragging the Date Format Change function block
- After you drop a function
block onto the activity canvas, you can move it around the canvas
by selecting the function block icon and dragging and dropping it
at the desired position. When the function block is in place, you
are ready to connect the inputs and outputs of the function block
to define the flow of execution.
Example: In our
example, we want to change the date format of the source attribute
ObjClarify_QuoteSchedule.PriceProgExpireDate. We will do this by
connecting the output of the port icon for
ObjClarify_QuoteSchedule.PriceProgExpireDate to the date input of
the Format Change function block. To do this, move the mouse cursor
to the output of the icon of port
ObjClarify_QuoteSchedule.PriceProgExpireDate.
Result: The shape of the icon will change to an arrow to
indicate that you can initiate a link at that point, as shown in
Figure 56..

Figure
56. Cursor as arrow at output port of
ObjClarify_QuoteSchedule.PriceProgExpireDate
- When the mouse icon is
changed to an arrow, hold down the mouse button and move the mouse
to the date input of the Format Change function block, and release
the mouse button. A connection link will be drawn to connect the
input and outputs.
To indicate that the result of the Format Change function block
should be assigned to the destination attribute
ObjARInvoice.GLPostingDate, repeat the same steps to drag-and-drop
from the output of the Format Change function block to the input of
the ObjARInvoice.GLPostingDate port icon. Figure 57 shows the connection
links.

Figure
57. Date Format Change function block with connection
links
Result: Now we have instructed the Format Change function
block to take the input from the attribute
ObjClarify_QuoteSchedule.PriceProgExpireDate, change its date
format, and assign the result to the attribute
ObjARInvoice.GLPostingDate. However, we still need to let the
Format Change function block know what the original date format is
and what resulting format we want.
- Example: In our example, if the source attribute
ObjClarify_QuoteSchedule.PriceProgExpireDate is in the date format
of yyyMMDD (that is, 20030227), we can use the predefined Date
Format function block yyyyMMdd. Drag-and-drop the yyyyMMdd function
block onto the activity canvas and connect the format output of the
yyyyMMdd function block to the input format of the Format Change
function block.
Result: This will specify that the input format of the
date is in yyyyMMdd format, as shown in Figure 58..

Figure
58. Input Date Format
- The Activity Editor
provides three predefined Date formats: yyyyMMDD HH:mm:ss,
yyyyMMDD, and yyyy-MM-dd. If the desired date format is not one of
the three predefined formats, you can specify the date format you
want by using a Constant. A Constant is a graphical
component in which you enter text directly and use the text as
input to function blocks or ports.
Example: In our example, we want the Format Change
function block to change the date format to yyyy.MM.dd G 'at'
Hh"mm"ss z. This is not one of the predefined formats, so we will
create a New Constant component in the activity canvas by dragging
and dropping the New Constant icon (located under the System
category) from the Content window to the activity canvas. Figure 59 shows the result of this
action.

Figure
59. New Constant icon dropped on the activity canvas
- To specify a constant with the value yyyy.MM.dd G
'at' Hh"mm"ss z, click the editable area of the Constant component
in the activity canvas and enter the text yyyy.MM.dd G 'at'
Hh"mm"ss z. By default, any Constant component will have the
type String (shown in the Properties window when the Constant
component is selected). However, you can change the type of the
Constant by selecting the Constant and using the combo box in the
Properties window. Figure 60
shows the New Constant icon with the text value entered.

Figure
60. New Constant with text entered
- To continue to specify that we want the output format of the
Format Change function block as yyyy.MM.dd G 'at' Hh"mm"ss z, we
define a connection link between the Constant component and the
output format of the Format Change function block.
Result: We have completed the activity definition that
will change the date format of the source attribute to a new date
format and assign it to the destination attribute.
- To add a comment or
description to remind us later what this activity does, we can add
a Description component to the activity and enter a
description.
Tip: Use the Context menu in the graphical canvas and
select Add Description, or drag the New Description icon
under the System folder in the Content window and drop it onto the
activity canvas. Figure 61 shows
how to add the Description component using the Context menu.

Figure
61. Adding a Description using the Context menu
Result: The Description component will be created in the
graphical canvas.
- Enter the description in the Description component by clicking
on the editable area of the component and typing directly into the
component. You can resize the Description by clicking and moving
the lower right-hand corner of the Description component. Figure 62 shows adding the
Description.

Figure
62. Adding the Description
- Save the activity by
selecting To Project or To File from the File-->Save submenu or
by clicking the Save Map to Project or Save Map to File button in
the Standard toolbar. Figure 63
shows saving the activity.

Figure
63. Saving the activity
The following example illustrates using the Static Lookup
relationship function block in the Activity Editor.
In WebSphere InterChange
Server Express, a static lookup relationship normally consists of
two or more relationship tables. For example, consider a system
that consists of three end-applications, as shown in Figure 64.

Figure
64. Static Lookup relationship with three
end-applications
Each of these three applications has a different representation
for "State" information, as shown in Table
53.
Table 53.
Application-specific representation of state
information
|
SAP
application |
PeopleSoft
application |
Clarify
application |
California |
CA |
01 |
State1 |
Washington |
WA |
02 |
State2 |
Hawaii |
HI |
03 |
State3 |
Delaware |
DE |
04 |
State4 |
When state
information is sent to the WebSphere business integration system
from the SAP application, SAP specified-state code is sent to ICS
Express. But when ICS Express needs to pass this information to
other applications, the state information has to be converted to
the format that the target application understands. In order to do
this, the system needs a generic representation of the "State"
information. With the generic representation, the system can
process business logics in a generic, unified manner; and the
generic representation will be converted to the
application-specific format only when needed.
Thus, in the preceding example, we would create a static lookup
relationship for doing this "State" conversion, with the
application-specific data as WebSphere business integration-managed
participants. With this setup, a generic ID is used to represent
the state information in the WebSphere business integration system.
Table 54 shows this
representation.
Table
54. Generic representation of state information
|
Generic ID |
SAP
application |
PeopleSoft
application |
Clarify
application |
California |
1 |
CA |
01 |
State1 |
Washington |
2 |
WA |
02 |
State2 |
Hawaii |
3 |
HI |
03 |
State3 |
Delaware |
4 |
DE |
04 |
State4 |
Application-specific data is converted to the generic ID as it
enters the ICS Express system, and the generic ID is converted to
application-specific data as it exits the system.This data
conversion is shown in Figure
65.

Figure
65. Data conversion from application-specific to generic to
application-specific
The ID conversion is usually done in maps that convert
application-specific business objects to generic business objects,
or vice versa. For example in the SAP-to-Generic map, we would do a
static lookup for the data "CA" and convert it to the generic
representation that ICS Express understands, "1". And in the
Generic-to-Clarify map, we would instead do a static lookup for the
generic data "1" and convert it to "State1". In either map, only
one static lookup is required.
Figure 66 shows how to use the Static
Lookup function block to convert the SAP-specified state data to
the ICS Express generic state data for processing in ICS
Express.

Figure
66. Using static lookup function block to convert SAP-specific
state data to ICS Express-generic state data
Similarly, the Static Lookup function block is used to convert
the ICS Express-generic state data to Clarify-specific state data
in the Generic-to-Clarify map. This is shown in Figure 67.

Figure
67. Using static lookup function block to convert ICS
Express-generic state data to Clarify-specific state
data
Normally, in a static lookup relationship, we convert
application-specific data to generic data, or generic data to
application-specific data. In these scenarios, only one Static
Lookup function block is used. But in the special cases where you
want to directly lookup a name-value pair, then two Static Lookup
function blocks are required.
For more information on defining and using static relationships,
see Creating
relationship definitions.
If Map Designer Express
opens the Activity Editor with an activity definition that contains
only custom Java code, the Activity Editor displays the activity
definition in Java view. Similar to Graphical view, the Activity
Editor is available in Java view in two display modes: Design mode
and Quick view mode.
- Design mode:
In Design mode, the Java view
of the Activity Editor contains the main Java WordPad for viewing
and editing custom Java code to provide the definition for the
activity. The WordPad is contained in a tabbed window area. In
addition to the regular editing options in a WordPad (Cut, Copy,
Paste, Delete, Select All, Undo, Redo), the Java WordPad provides
syntax highlighting for the Java Programming language.
By default, comments are green, string literals are pink, and
keywords are blue.
Tip: You can customize the syntax highlighting schemes in
the Preference dialog.
Figure 68 shows the Java view
in Design mode.

Figure
68. Java view in Design mode
- Quick view mode:
In Quick view mode, the Java
view only displays the WordPad. Figure 69 shows the Java view in Quick
view mode.

Figure
69. Java view in Quick view mode
Tip: To change from Quick view mode to Design mode, click
the >> button on the status bar. If you do not see the
>> button, resize the Quick view window horizontally until
the button appears.
