Chem XML Message eStandards and CIDX Scenario - Part II

By Suraj Kumar Pabbathi, PI Competency Lead, YASH Technologies

In part I, we have discussed about CIDX Message eStandards. Now let us discuss how to configure and design the objects to support the communication based on CIDX standards in XI.

This is achieved by designing the Message types in Integration Repository and configuring collaboration profiles using CIDX adapter in Integration Repository. 

CIDX Adapter: CIDX Adapter supports the chem eStandards described in PartI and facilitates to send the messages between Integration Server and Partner System by transforming the message format in XML to message format compliant to chem eStandard Business transaction (chem XML Message) and vice-versa.

It supports Single-Action Asynchronous business transaction, in the sense, at a time it can send only single action message (for e.g.: Invoice) to partner system in asynchronous mode. 

There is variety of chem eStandard business transactions described in the chem eStandard document http://xml.coverpages.org/Chem-eStandardsV20.pdf that can be exchanged with partner participating in different roles such as buyer, seller and so on.

For eg: some of the transactions supporting Logistics execution are listed below; where in third column indicates Global Process Indicator code of chem XML Transactions. 

 

 

 

 

 

 

 

 Fig: Sample Transaction Code List 

The messages when sent by Integration Engine to Adapter Engine, in Adapter Engine, the messages are enveloped as RNIF Action and Signal messages as specified in RNIF 1.1 specification.

Find below the step by step procedure to design and configure the scenario to send a sample (Invoice) message to Partner system. 

Design time activities in Integration Repository:

XI message based on chem. eStandards, must be compliant with message interface content in repository. This means that the DTDs/Schemas need to be downloaded from www.cidx.org and uploaded into Integration Repository through External Definitions as illustrated in the screenshot below:  

Observe that Software component CIDX has Software component version 1.0, which in turn has different namespaces created under them.

These namespaces and Schemas should be supporting chem. eStandards, as CIDX Adapter determines/constructs the namespace and interface name of an incoming CIDX Action Message as follows:

<Version> := /ServiceHeader/ProcessControl/ProcessIdentity/VersionIdentifier

Version: Specify the selected version of the message chosen from the schemas available from www.cidx.org  

<Requesting Message> := /ServiceHeader/…/ActionControl/ActionIdentity/GlobalBusinessActionCode

Requesting Message: A big list of messages are provided which would suit the business transactions performed between chemical companies. They support many scenarios like Customer, Logistics Execution, Catalog and RFQ, Purchase Order, Financials, ForeCasting, Exchange Interactions. 

 

Configuration time activities in Integration Directory:

Let us plan for a scenario where in our XI system acts as receiver of the message and partner system sends an Invoice message. That is Partner is starting a message exchange with XI.

Therefore a Sender CIDX adapter needs to be configured which is considered to be Single Action Initiator.

  1. Create a Party: Party represents a larger unit, which is involved in a cross-system process, for example a Seller Company. Communication Parties are assigned alternative identifiers; across the world with identifiers. (for example, Dun & Bradstreet D-U-N-S number).

Create two parties, one representing Buyer (initiator) and other Seller (Responder), EDI_XML_Buyer and EDI_XML_Seller respectively. 

  1. Create a Service: Business Service represents an abstract, addressable unit. Business services are used in cross-company processes. CIDX adapter determines the partner’s service name and local service name for an incoming CIDX message based on Service Header fields as described below:

Service Name should be as CIDX<TransactionCode>_Version_PartnerRole.

<Transaction Code>:= /ServiceHeader/ProcessControl/ProcessIdentity/GlobalProcessIndicatorCode

Transaction Code: For every business transaction, CIDX standards have defined unique Code to identify the transaction and process it accordingly. A sample code list is provided earlier in this document. 

<Version>:= /ServiceHeader/ProcessControl/ProcessIdentity/VersionIdentifier 

<Partner Role>:= /ServiceHeader/ProcessControl/TransactionControl/PartnerRoleRoute/fromRole.PartnerRoleDescription/GlobalPartnerRoleClassificationCode 

<Current Role>:= /ServiceHeader/ProcessControl/TransactionControl/PartnerRoleRoute/toRole.PartnerRoleDescription/GlobalPartnerRoleClassificationCode

For example:

Buyer service should be named as CIDXE81_40_Buyer

Seller service should be named as CIDXE81_40_Seller 

Find below the sample message containing the information as described above.

  1. Create a Communication channel of type CIDX adapter:

As partner is initiating the message select the adapter type as “Sender”.

For understanding more about the parameters of CIDX adapter while configuring them, go through http://help.sap.com/saphelp_nw04/helpdata/en/02/265c3cf311070ae10000000a114084/frameset.htm

 

  1. Create a Sender Agreement using the communication channel created for this Scenario within this agreement.

  1. Create other objects to complete the configuration which includes Receiver Determination, Interface Determination and Receiver Agreement.
  2. An effort is also made to discuss Security Services in CIDX Adapter:

XI and RNIF protocols support message level security by digital signature and encryption.  Message-level security processing is done in Java part of SAP WAS.

CA (Certificate Authority) certificates to be used need to be entered into Key Store of J2EE Engine that executes the security handling at runtime.

During configuration these certificates are referred while defining the communication channels when certificate logon is used.

Otherwise, UserName/Password authenticity can be used alternatively.

There are three sections to achieve the security of transmission of the messages between chemical companies

    1. Confidentiality: Select HTTPS communication protocol
    2. Authentication, Authorization and Message Integrity: By digitally signing the message authenticates the receiver to receive the message. Validation is done by the receiver to match the identity of the sender. Then message is processed successfully to achieve the integration of Business.
    3. Accountability:

                                                               i.      Non-Repudiation of the message when selected for inbound messages means that partner cannot deny of sending the messages and stores the inbound message in the security archive.

                                                             ii.      Non-Repudiation of the message when selected for Outbound messages means that partner cannot deny or receiving the messages and stores the outbound message in the security archive. 

Testing Results:

  • Message is sent by Company A which needs to be received by XI of Company B.
  • Chem. XML message with Preamble, ServiceHeader, Service Content and Digitally signed is received by Adapter Engine. When this message is monitored through Messaging system, viewed as below:

Message ID

7a451b3102e112ddc6e975b43570eb8c

RefToMsgID

 

Conversion ID

PROCESS.HFO7w7WYcCkcu6FKTUEpnSs4cQ9Vg.Invoice.CompanyA

Sequence Number

0

Message Type

Asynchronously Received Message (RECEIVE)

From Party

Name: EDI_XML_CompanyA

From Service

Name: CIDXE81_40_Buyer

Action

Namespace http://sap.com/xi/CIDX/40 Name: Invoice

Connection Name

CIDXAdapter

Status

Delivered

Error Category

 

Error Code

 

Profile

CIDX

Transport

HTTPS

Delivery Semantics

Exactly Once

Times Failed

0

Number of Retries

5

Sent/Received

04/25/2008 12:00:00

Transmitted/Delivered

04/25/2008 12:00:49

Next Delivery

04/25/2008 12:00:00

Persist Until

04/25/2008 12:00:00

Valid Until

 

Retry Interval

5 Minutes

Address

https://yhsapi01:50300/MessagingSystem/receive/CIDXAdapter/CIDX

Credential

 

Transport Headers

Content-Length = 10234 HTTP=POST

Node ID

2082666

  • From the above one can observe that status is delivered and other message details are provided.
  • CIDX adapter with the available details from the chem. XML message does following
    • Validates the digital signature with the action message
    • Using the service header information
      • DUNS number of sender, receiver identifies Sender and Receiver Party
      • Transaction code, version, Requesting Message and Partner Roles identifies Sender and Receiver Business Services
    • Converts chem. XML message to SOAP message encapsulating content as XML message derived from Service content
Routes the message to Integration Engine and is processed by Pipeline Services.
 

Please send us your feedback/suggestions at webmaster@SAPTechnical.COM 

HomeContribute About Us Privacy Terms Of Use • Disclaimer • SafeCompanies: Advertise on SAPTechnical.COM | Post JobContact Us  

Graphic Design by Round the Bend Wizards

footer image footer image