Table of Contents Previous Next PDF


Channel/Container Support in DPL

Channel/Container Support in DPL
This section discusses the following topics:
Channel / Container Overview
The channel and container model introduces a new approach that provides an easy and flexible mechanism for exchange of large volumes of structured parameter data between CICS programs.
Containers are named blocks of data designed for passing information between programs. Programs can pass any number of containers between each other. Containers grouped together in sets are called channels. A channel is analogous to a parameter list.
ART CICS uses FML32 buffer type to carry channel data, and CARRAY to carry container data. Channel and container decode, encode, and data alignment are added to TMA GWSNAX. GWSNAX can be integrated with ART CICS to communicate between ART CICS and mainframe CICS, as well as between local Tuxedo and CICS programs.
ATMI Server Programming
ATMI server can only use FML32 APIs to manipulate channel / container according to following approximate mapping:
 
Fadd32() or Fchg32()
Fget32() or Ffind32()
A loop based on Foccur32()
Meanwhile, five FML32 field macros should be included in ATMI server code; all of them belong to a given FML32 definition:
#define CX_PROGRAM ((FLDID32)231327331)
#define CX_TRANSID ((FLDID32)231327333)
#define CX_CHANNEL_NAME ((FLDID32)231329593)
#define CX_CONTAINER_NAME ((FLDID32)231329594)
#define CX_CONTAINER_DATA ((FLDID32)231329595)
These fields are used to map relevant CICS command options:
 
PROGRAM of LINK
TRANSID of LINK
CHANNEL of LINK or container commands
CONTAINER of container commands
FROM of PUT container
INTO or SET of GET container
FLENGTH of PUT or GET container
Length of CX_CONTAINER_DATA
Configurations
VIEW32 Definitions
TMA SNA uses View32 definitions generated from copybook of containers for data conversion. Usually, every kind of container must correspond to a View32 definition of the same name but differs in the following aspects.
For example, TMA SNA container name "CONT-1" corresponds to View32 name "cont_1".
Note:
DMCONFIG
Both INBUFTYPE and OUTBUFTYPE must be set as FML32 for services which use channel / container data type, but no VIEW32 subtype is needed to specify because it will be automatically set as the container name.
Environment Variable
CHANNEL_COMPRESS_LEVEL
The environment variable is used to improve network transmission performance between GWSNAX and CRM when channel/container contains large amounts of data.
When it is set, GWSNAX or CRM compresses channel / container data before sending it to network. The value is an integer in the range of 0 to 9. Lower compression levels result in faster execution, but less compression. Higher levels result in greater compression, but slower execution.
For example:
CHANNEL_COMPRESS_LEVEL=6
CHANNEL_WITHOUT_ART_FLDS
Besides the five FML32 fields mentioned in the above ATMI Server Programming section, GWSNAX provides the following three fields only for ART CICS integration.
#define CXMW_MESSAGE ((FLDID32)231327692)
#define CX_USERID ((FLDID32)231327345)
#define CX_USERNAME ((FLDID32)231327376)
When this environment variable is set, the above three fields, which are useless in other scenarios, will not be added in FML32 buffer sent to queue.
For example:
CHANNEL_WITHOUT_ART_FLDS=y
See Also
ART for CICS Integration Consideration in Oracle Tuxedo Mainframe Adapter for SNA User's Guide
GWSNAX in Oracle Tuxedo Mainframe Adapter for SNA User's Guide

Copyright © 1994, 2017, Oracle and/or its affiliates. All rights reserved.