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 (
Join,
Set Value,
Split, and
Submap,
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.
|
Tool Bar
| 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.
For a list of supported functional blocks, organized in tables according to
category, see "Identifying supported function blocks".
- Note:
- In addition to the standard function blocks that Activity Editor provides,
you can import your own Java library for use as function blocks in 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
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 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 identify the function blocks in each category and the
acceptable values for their inputs and outputs.
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 objet 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 fro 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 i 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 connectio 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 Chidren
| Removes all child instances to 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 to 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 Defnition
| 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 dta
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 relationhip 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 send 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 send 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 send 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 send 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 send 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 send 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 send 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 send 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 send 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 display 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 display it if tracing is set to the specified level or a
highter 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 display it if tracing is set to the specified level or a
highter 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
| Maintain 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
| Look 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 specifed 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 positon--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 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 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 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: 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 upper-cased 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 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 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: 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 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 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
-
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 Activity Editor.
In the 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. But
when ICS 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 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 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 generic state data for processing in
ICS.

Figure 66. Using static lookup function block to convert SAP-specific state data to ICS-generic state data
Similarly, the Static Lookup function block is used to convert the
ICS-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-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.
