Skip to Content
This is the first in my 3-part series on supporting B2B using a specific vertical Industry Standard in the SAP Exchange Infrastructure.   SAP supports B2B (Business to Business) Interoperability in the
[High Tech | http://www.sap.com/usa/industries/hightech/index.epx
],
[Chemical | http://www.sap.com/usa/industries/chemicals/index.epx
], and
Automotive industries through the
RosettaNet , CIDX , and STAR standards, respectively.  I’m one of a few developers who has worked on the integration of these standards into SAP content packages for XI.  SAP provides a complete end-to-end solution spanning the industry standards, the integration platform, and the application. 

In 2005, through the SAP Launches Inititative for Industry Content
we recruited over 125 ISVs worldwide.  We then trained, enabled, and
certified many of them to create XI content packages to become Powered By NetWeaver.


For this blog series, I’ll be using a standard from the
Open Applications Group (OAG) which can be utilized for teaching purposes as it is more of a “horizontal”  standard, meaning it can be used for any industry.

Let’s assume you want to support a B2B transaction like Procurement utilizing some Industry Standard. For the sake of this exercise, we can use OAG. It is very similar to RosettaNet, CIDX, and STAR as both the business process and technical definition of the message is provided by the organization.

As opposed to having one monster blog, I have broken this exercise into 3 smaller parts.

The sequence (and approximate time required) is as follows:

  • Environment Prep (about 1 hour)
  • Integration Content (about 1 hour)
  • Testing (about 1 hour)

Please note, I have listed this as a Beginner blog.  For this reason, everything you need to do is spelled out in detail.

Please forgive me for not cutting any corners… =P


Prerequisites


To succeed with this blog, you’ll need access to at least 3 things…

  1. The Internet
  2. an SAP XI

box (preferably XI 3.0 SP14) Ideally this is connected to your ERP system and has the Support Package 48 XI Content for SAP APPL 4.6C installed.

    1. an SAP ERP backend (preferably one that has ALE and the inbound ORDERS.ORDERS05 IDOC configured)


Note:  documentation for this topic (#3) is out of scope – please see elsewhere in SDN for this  info

Assuming you have the above prerequisites, let’s start prepping the environment.


Step 1:  Prep the XI Environment.


Create your own Product and Software Component (SWC) in the System Landscape Directory  (SLD).


1.     Start the Integration Builder (Transaction Code SXMB_IFR).

2. Login to the System Landscape Directory.

3. Click on the “Software Catalog” link.

4. Choose Products as the Software Type.

5. Click on the New Product button.

6. In the Define Product screen, do the following:

7. Enter the vendor “xyz.com”

8. Enter the name “MYPRODUCT” and version “1.0”

9. Choose Create. Your product has been created.

The screen switches to the Define Software Component view. Here do the following:

10. Keep the Product and Vendor information.

11. Enter the name “OAG_EXAMPLE” and version “30.1” of your SWC.

12. Choose Create. Your software component has been created.


Import the SWC into the Integration Repository


13.     Login to the Integration Repository.

14. Navigate the menu Tools -> Transfer from System Landscape Directory -> Import Software Component Versions.

15. Select the SWC that you just created (OAG_EXAMPLE). Click Import.

16. Once the SWC is imported click Exit. You should now see the SWC in the tree on the left pane.

17. Expand the SWC to see the SWC version. Double click this version to see its details on the right pane.

Create the Namespace under the SWC

18. Double-click the SWC OAG_EXAMPLE’s version to see its details on the right pane.

19. Click the Change icon to go into EDIT mode for the SWC version.

20. In the Namespaces section, enter the namespace e.g. http://xyz.com/xi/OAG/80/R3/46C

21. Leave the object attributes as default.

22. Save the objects. Activate the objects.


Step 2:  Download the OAG message for Procurement.


Go to the Open Applications Group . Navigate to the “Free Downloads” page.  Select the  OAGIS 8.0 SP3 link.  Fill-in the required registration information, then download the OAGIS  8.0 XSDs.  There’s over 10MB worth of data that gets downloaded to your local machine.   Extract all of the files to
<your filesystem>OAGIS8.0OAGISBODsProcessPurchaseOrder.xsd (3K)<br>
<li>
<your filesystem>OAGIS8.0OAGISResourcesVerbsProcess.xsd  (2K)<br>
<li>
<your filesystem>OAGIS8.0OAGISResourcesNounsPurchaseOrder.xsd (6K)<br>
<li>
<your filesystem>OAGIS8.0OAGISResourcesNounsOrder.xsd  (22K)<br>
<li>
<your filesystem>OAGIS8.0OAGISResourcesVerbsVerb.xsd (5K) <br>
<li>
<your filesystem>OAGIS8.0OAGISResourcesVerbsVerbBase.xsd (1K)<br>
<li>
<your filesystem>OAGIS8.0OAGISResourcesNounsDocument.xsd (9K)<br>
<li>
<your filesystem>OAGIS8.0OAGISResourcesComponents.xsd (155K)<br>
<li>
<your filesystem>OAGIS8.0OAGISResourcesFields.xsd (54K)<br>
<li>
<your filesystem>OAGIS8.0OAGISResourcesEnums.xsd (19K)<br>
<li>


Importing External Objects


The purpose of this exercise is to demonstrate the process of importing external definitions  of Industry Standard messages into the SAP XI system.  The following process can be used for almost any XML Industry Standard like
RosettaNet , CIDX ,
STAR ,
ACORD ,
PIDX , ebXML , etc.  SAP does provide a number of Industry Standard interfaces that are centrally maintained and provided for both SAP, External Parnter and Customer usage that can be uploaded for use in XI.  See the <b>Service Marketplace folder.  Select the +ProcessPurchaseOrder.xsd +file from  the folder
For the Source field enter the value ProcessPurchaseOrder.xsd. Save the file.


Notice that the Name field is empty. This is because the Process.xsd and PurchaseOrder.xsd files have not been uploaded to the system under this SWC and Namespace. We will now upload these files.
. Select the Process.xsd file from the folder
For the Source field enter the value ../Resources/Verbs/Process.xsd. Save the file.


image

    1. Navigate to the External References tab. In the table, under the Source column, you will see an entry for:
      Verb.xsd.


image


Notice that the Name field is empty. This is because the Verb.xsd has not been uploaded to the system under this SWC and Namespace.  Now upload this file.
. Select the Verb.xsd file from the folder
For the Source field enter the value Verb.xsd. Save the file.

    1. Navigate to the External References tab. In the table, under the Source column, you will see an entry for:

      VerbBase.xsd


image


Notice that the Name field is empty. This is because the VerbBase.xsd has not been uploaded to the system under this SWC and Namespace.  Now upload this file.
. Select the VerbBase.xsd file from the folder
For the Source field enter the value VerbBase.xsd. Save the file.


image

No need to enter any values in the External References Tab.


We’re almost half-way done…!!!



image
. Select the PurchaseOrder.xsd file from the folder
For the Source field enter the value ../Resources/Nouns/PurchaseOrder.xsd. Save the file.

    1. Navigate to the External References tab. In the table you will see an entry for:

      Order.xsd


image


Notice that the Name field is empty. This is because the Order.xsd has not been uploaded to the system under this SWC and Namespace.  Now upload this file.
. Select the Order.xsd file from the folder
For the Source field enter the value Order.xsd. Save the file.

    1. Navigate to the External References tab. In the table you will see an entry for:

      Document.xsd


image


As above, notice that the Name field is empty. This is because the Document.xsd file has not  been uploaded to the system under this SWC and Namespace. We will now upload this file..  Select the Document.xsd file from the folder
For the Source field enter the value Document.xsd. Save the file.

    1. Navigate to the External References tab. In the table you will see an entry for:

      ../Components.xsd


image


As above, notice that the Name field is empty. This is because the Components.xsd file has not  been uploaded to the system under this SWC and Namespace. We will now upload this file.. Select the Components.xsd file from the folder
For the Source field enter the value ../Components.xsd. Save the file.

    1. Navigate to the External References tab. In the table you will see an entry for:

      Fields.xsd


image


As above, notice that the Name field is empty. This is because the Fields.xsd file has not  been uploaded to the system under this SWC and Namespace. We will now upload this file.. Select the Fields.xsd file from the folder
For the Source field enter the value Fields.xsd. Save the file.

    1. Navigate to the External References tab. In the table you will see an entry for:

      Enums.xsd

      Meta.xsd


image


Similar as before notice that the Name column is empty. This is because the Enums.xsd and Meta.xsd files  have not been uploaded to the system under this SWC and Namespace. Please upload these 2 remaining files.


image


!https://weblogs.sdn.sap.com/weblogs/images/297/Meta.jpg|height=315|alt=image|width=425|src=https://weblogs.sdn.sap.com/weblogs/images/297/Meta.jpg|border=0!

Note: No need to maintain anything in the External References Tab!


Exchange Infrastructure (XI) Interfaces


One last step, before we jump into mapping, will be the creation of an XI Message Interface, which is based on the External Definitions we just uploaded to XI.  In order for the ProcessPurchaseOrder interface structure to be defined properly, we needed to upload additional supporting XSD files.  This was done in the previous exercise.  We also need an XI object called a Message Interface to represent the ProcessPurchaseOrder, which will later be used in another XI object called an Interface Mapping. 

  1. Highlight the Message Interfaces object. Right-click to display the context menu. Select New from the context menu.
  2. Enter the name ProcessPurchaseOrder. Click Create. The object is displayed on the right pane in the Edit mode.

For the Attributes radio buttons select Abstract and Asynchronous.


SAP Interfaces


For this exercise, we’ll be using the ORDERS.ORDERS05 IDOC.  For more information regarding this IDOC, check out the
IFR .  Otherwise, from your ERP system, go to transaction, WE60.  Type in ORDERS05 and enjoy reading!


If you have access to the SAP Service Market Place, download the XI Content Package for your specific version of SAP ERP or R/3.  In this exercise, we are using an SAP R/3 4.6C system.  The Support Pack (SP 48) contains the necessary SAP interfaces (i.e. ORDERS.ORDERS05) that will be used in the exercise.

!https://weblogs.sdn.sap.com/weblogs/images/297/SAPAPPL46C.jpg|height=396|alt=image|width=395|src=https://weblogs.sdn.sap.com/weblogs/images/297/SAPAPPL46C.jpg|border=0!
These are some of the interfaces in SP48 SAP APPL.

If you do have access to the Service MarketPlace, please get the XI CONTENT SAP APPL for SP48. Otherwise, just upload the ORDERS.ORDERS05 IDOC to your own SWC. (Note: there are quite a few blogs already that describe how to upload IDOCS from ERP to XI…)


Service Marketplace


NOTE: If you are an existing SAP user, you might be able to download and use the SAP delivered Industry Standard interfaces like OAGIS, RosettaNet, CIDX, PIDX, and STAR from the SAP Service Marketplace at http://service.sap.com . See your SAP Account Professional for more information and access to this content.

!https://weblogs.sdn.sap.com/weblogs/images/297/SAPXIContent2.jpg|height=298|alt=image|width=592|src=https://weblogs.sdn.sap.com/weblogs/images/297/SAPXIContent2.jpg|border=0!


image
image


Until next time….



Please see my next installment, How to Support Industry Standards in XI (Part I of III) – Interfaces of this series for creating the XI Integration Content (i.e. message interfaces, graphical mappings, integration scenarios, etc.).   We’ll wrap up in How to Support Industry Standards in XI (Part III of III) – Config & Test with how to configure XI and test what has been uploaded and created.</p>

To report this post you need to login first.

4 Comments

You must be Logged on to comment or reply to a post.

  1. Former Member
    Thank you for your great weblog.

    67.     REMEMBER:Activate your CHANGELIST.

    When i tried to activate my CHANGELIST.
    I got an error message.

    Activation of the change list canceledCheck result for External Definition Components | http://xyz.com/xi/OAG/80/R3/46C:Document check found errors Cause: Unable to recognize the loaded document as valid XSD The value “xsd:anyType” is not permitted for the attribute ” type” of the “QName” type in the ” /schema/complexType(“EmbeddedData”)/sequence/element(“Data”) ” element

    [Screenshots]
    http://static.flickr.com/27/103617986_86e5c06cd5_o.jpg

    http://static.flickr.com/31/103617985_3e9b5d933f_o.jpg

    What did i make a mistake?
    Thanks,

    (0) 
    1. Shabarish Vijayakumar
      The following is what i get when i try to activate my change list something similar to what Dongsok Kang got. Can you help us out ?

      Regards,
      ShabZ

      Activation of the change list canceled Check result for External Definition Components | http://shabarish.tsystems.com/industrystandard/trial: Document check found errors  Cause: Unable to recognize the loaded document as valid XSD  The value “xsd:anyType” is not permitted for the attribute “type” of the “QName” type in the “/schema/complexType(“EmbeddedData”)/sequence/element(“Data”)” element

      (0) 
      1. Shabarish Vijayakumar

        i tried to individually activate and found that the problem was in the Components.xsd. it has a line <xs:element name=”Data” type=”xs:anyType”>. I removed the attribute type (<xs:element name=”Data”>) and now i am able to activate the same.<br/><br/>Is there any relevance for the type =”xs:anyType” attribute in this case ?<br/><br/>~ShaBZ~

        (0) 

Leave a Reply