DCOM Explained
by Rosemary Rock-Evans
Digital Press
ISBN: 1555582168   Pub Date: 09/01/98

Previous Table of Contents Next


Chapter 8
Cedar

  Based on technology acquired from TransAccess/Netwise
  Provides nonintrusive access to IMS and CICS programs on MVS
  Works with MTS (Microsoft Transaction Server)
  Transactional control of CICS only at moment
  Alternative to Software AG’s DCOM on MVS

MS RPC provides access to other platforms via its links with the DCE RPC. But what if a company has an IBM mainframe with CICS or IMS and does not want to use DCOM on the mainframe? The answer is to use Cedar—a product integrated within the DCOM architecture providing nonintrusive links to programs in CICS or IMS on the mainframe. Remember that Cedar is now called COM TI (Transaction Integrator), but as it is still widely referred to by its code name, I have used Cedar instead of COM TI.

What Is Cedar?

Cedar (Cedar is the internal code name for the technology) provides clients component-based application access to programs written using IBM’s CICS and IMS.

Developers using MTS can include CICS programs within an MTS transaction; however, Cedar does not currently support transactional involvement of IMS programs. Where developers need to access IMS/DB databases under transaction control, Microsoft advises that the developer use CICS to access the DBMS.


Figure 8.1  Ceder or COM TI

What does it consist of?

Cedar consists of three main components:

  runtime-which intercepts the method calls to the mainframe and uses the Cedar-type library to perform the actual conversion and formatting of the method parameters
  Interface Builder-provides application developers with a GUI tool for creating Windows-based-type libraries. The IB also enables the developers to start from or create the COBOL data declarations used in the mainframe CICS and IMS programs. The developer can install the Interface Builder as an add-in to the Microsoft Visual Basic version 5 tool, or can use it as a stand-alone tool.
  administration-used to install program files, collect information about the user environment, and configure Cedar for the particular Windows NT server and MVS mainframe.

How is it configured?

The client application can be running on a computer running Windows NT Server, Windows NT Workstation, Windows 95 (or other platforms supporting DCOM and Automation). Cedar can also be used with Web-based clients connected to the Microsoft Information Server (IIS).

Cedar supports clients that use the Automation interface only.


Figure 8.2  Cedar configuration

Cedar does all of its processing on the Windows NT Server. As such, there is no executable code required to run on the mainframe. Cedar then acts as a generic proxy for the mainframe. It intercepts object method calls from the application and redirects those calls to the TP Monitor running on the MVS mainframe. Cedar also handles the return of all output parameters and return values from the mainframe. In all cases, developers can send and receive optional meta data and rowsets.

It uses standard communication protocols (LU 6.2) for communicating between the computer running Windows NT Server and the mainframe TP Monitor. Microsoft SNA server 3 is used as the bridging software to handle the protocol exchange. Cedar supports MVS version 4.3 and later.

What About Data Conversion?

When Cedar intercepts the method call, it converts and formats the method’s parameters from the representation understandable by Windows NT server into the representation understandable by the mainframe. Cedar uses the technology acquired from TransAccess. It has the job of changing the format of data structures from both sending to receiving language format, but also has the job of transforming the machine formats from ASCII to EBCDIC.

The developer uses the Interface Builder tool to define the mappings which must take place between data types, and Cedar then uses this information at runtime to do the conversion. The developer pastes the COBOL copybook acquired from the mainframe into the Interface Builder. The IB then analyzes the copybook and asks the developer a series of questions to define the methods and parameters and the corresponding data type mappings. Cedar can support the conversion of the following data types:

  PIC S9(4) COMP integer 16 bit
  PIC S9(9) COMP integer 32 bit
  COMP-3 packed decimal
  COMP-2 float 8 byte
  COMP-1 float 4 byte
  PIC X with or without translation
  DATE and TIME packed decimal
  OCCURS fixed times
  OCCURS depending

The developer can change the default mappings between COBOL data types and automation data types, and Cedar supports the following automation data types:

  2 and 4 byte signed integer
  4 and 8 byte real
  Currency (8 byte fixed point)
  Decimal
  Date 8 byte real
  Variable length string
  Boolean
  1 byte unsigned integer
  Arrays of any of the previous types

When the developer has finished doing the mapping, he clicks “make typelib,” and this then creates the Cedar-type library. Machine format and language format translations are completed simultaneously using these libraries at runtime. Cedar will handle all the complexities that the remapping from one language to another results in—blank padding where needed and packing decimal data.

And What About CICS Calls?

We will see in the chapter on MTS that MTS uses two-phase commit to control the execution of distributed transactions. By using Cedar, CICS programs can be included within the transaction. Thus, for example, a programmer could define a transaction to be the execution of updates on two DBMSs (say) and the successful execution of a CICS program. If the DBMS updates failed, or the CICS program did not complete successfully, the transaction and its updates would be abandoned. If, on the other hand, the updates could complete successfully and the CICS program completed successfully, the updates would be committed under two-phase commit control.

To include CICS (and in the future IMS) programs within a transaction, Cedar converts between Windows two-phase commit and the mainframe-based Sync Level 2 transactions. Cedar uses CICS Distributed Program Linking (DPL) or Advanced Program to Program Communication verbs (APPC), and IMS applications use the IMS Message Queue.


Previous Table of Contents Next