This operation receives data, sends it to the application, and returns data following application processing.
- Create the InvokeINCCA Operation
-
- From the Interface Mapper, click
Operation >
New.
- In the
Name field, type
InvokeINCCA.
- Under
Select program/copybook, click
INCCA.
The Interface Mapper parses the code for candidate commareas from which to choose. This includes:
- dfhcommarea - a commarea field specified on an EXEC CICS RETURN statement
- fields that are sources or targets of COBOL move statements involving
dfhcommarea
- Click
INCCA under both
Select input data area and
Select output data area.
The INCCA program defines only
dfhcommarea, and thus this is the only commarea shown. You can optionally expand and contract the code to see its contents.
- Do not check
Create Default Mappings. In this tutorial, we create the mappings manually.
- Click
OK to create the InvokeINCCA operation.
The Interface Mapper shows the input and output commarea fields in the left panes.
- Map Input Interface Fields
-
Web Service interfaces receive inbound data from a SOAP request. To receive the data and then pass it into our commarea, we must map the following commarea fields to the interface as input fields:
- int-fld
- dec-fld
- disp-fld
- string-fld
- Drag
int-fld from the
Input Commarea pane to the
Interface Fields pane.
Note: Alternatively, you can create this mapping by right-clicking
int-fld in the
Input Commarea pane and selecting
New Input Field from the context menu.
- In the
Interface Fields pane, double-click
int-fld.
- In the
Name field, type
InIntFld; then click
OK to rename the field.
- Drag the following fields from the
Input Commarea pane to the
Interface Fields pane and rename each as indicated:
Input Commarea Field
|
Interface Field Name
|
comp-fld
|
InCompFld
|
dec-fld
|
InDecFld
|
disp-fld
|
InDispFld
|
string-fld
|
InStringFld
|
- Map Interface Output Fields
- Our sample application modifies the data in the commarea fields, and then the service interface passes the modified data back to the requester in a SOAP response. Therefore, we must map the same commarea fields, plus the
grp-fld array, to the interface as output fields. The
grp-fld array does not receive input from the SOAP request, but the application moves data into it as it processes the request. Therefore, we need to map an output interface field to the
grp-fld array.
- Drag the following fields from the
Output Commarea pane to the
Interface Fields pane and rename each as indicated:
Input Commarea Field
|
Interface Field Name
|
int-fld
|
OutIntFld
|
comp-fld
|
OutCompFld
|
dec-fld
|
OutDecFld
|
disp-fld
|
OutDispFld
|
string-fld
|
OutStringFld
|
grp-fld
|
OutGrpFld
|
- Map a Work Field
- Work fields store data that can be passed from one operation to another. This service interface requires a work field to pass the contents of the
string-fld commarea field from the
InvokeINCCA operation that we are defining now, to the
InvokeSECCA operation that we define in the next phase of this tutorial. Therefore, we define the work field as part of the operation that executes first - this
InvokeINCCA operation.
- In the
Work Fields pane, right-click; then select
New Work Field from the context menu.
- In the
Name field, type
WrkString, and type
80 into the
Length field; then click
OK.
- Create a Field Assignment
- To assign a value to the
WrkString work field, we create a field assignment.
- In the
Assignments pane, right-click and select
New Assignment from the context menu.
- From the
Assign to drop-down list, select
WrkString.
- From the
Field/Operation1 drop-down list, select
dfhcommarea.string-fld.
- Click
OK to save the assignment.
- Click
File > Save CICSCommareaWS.svi to save the completed InvokeINCCA Operation.