7 steps to a SAP PI to PO migration

Some time ago I created a webinar about SAP PI to PO migrations. I wanted to use the content and share it because it is quite useful for everybody working on a migration. I can see that it is some of the questions that I got on my latest webinar was also about the process. I do hope that this gives a better understanding of what is happening.

As with all things, there are 7 steps to make a good SAP Migration. So if you are in the process this is the steps that I would recommend that you take. It is assumed that you will migrate to a new system because it will make it easier to migrate a single interface at the time. If things does not work you will always have a backup plan.

The 7 steps are the following:

  1. Goals
  2. Current integrations
  3. Pattern mappings
  4. Resource consumption
  5. Migration phases
  6. Development
  7. Testing

The process should be very iterative because you learn a lot in the process that you can use to migrate other interfaces. I the current integration you are going to map out all your existing interfaces together with what types of pattern they are using. This information will then be used in the migration phase and how it is going you may get input on how the next interfaces can be migrated.

You can view this in two different ways. Either you can watch my Screen recording video of it.

Or view the slides here and download them if you want to be using them.

I have also created a longer article about some of the SAPs you need to consider more in details in the blog SAP XI/PI to PO migration.  It is not the same and the two have a lot in common.

SAP PI/PO change tracking tool is now free

I love getting ideas on how to easier to complete a boring task for SAP PI/PO developers.
I believe quite a few of you remembered the PIDocumenter that I created ten years ago. It was a PHP application that could generate an Excel document with the mapping. This function is now standard with Netweaver Developer Studio, though I would say my version was better formatted. That solution became deprecated because the method to get the XMI file was blocked.
One and a half year ago I started working on a tool to make the testing easier on SAP PI/PO. One of the functions we had could make a comparison of XML documents and read the directory API to understand the landscape. It would be simple to combine the two function to compare a directory comparison function.

I have been working at different places where there was a requirement to document what was transported. And I thought it was difficult(too manual) and time-consuming. But there was not a system in place to handle it so things could be changed so it was out of sync. So I wanted to make a tool that could help in the process.

It became the Change Tracking Tool(CTT).

CTT is a tool that will allow you to find what is changed on any objects, like which switch is changed.
In the Swing tool or NWDS, you can see the different versions of an object. It is though difficult to see which specific field was changed in a change. That is one of the use cases CTT helps with.

The other problem is about registering which change is affecting which objects. This way you can have an easy overview of the changes that are happening in your landscape. So you can register the changes on your change number, so you can easily track the changes together with what happened.

It has was given as a bonus to people buying IRT (Integration Regression Tool). It did though not match which what those organizations were looking for. So now you can get it for free. CTT is a part of the installation IRT so once installed you will have access to both functions. IRT is still a licensed product; you can obtain a trial license to try it out.

Take it for a spin and let me know what you think.

Nb. we will add Repository information later this year.

Tool to get BPM context data from a SAP PO BPM

One of the benefits to having a team of developers at your disposal like I do to create my SAP PI/PO test tool is, the ability to create cool applications to solve problems. So I’m really happy that I can give a free tool away to the people that have the same challenge as I ran into.

I have a client where we were using BPM to have some user actions in. Sometimes they wanted to restart the BPM process with the same data or minor changes. I could see the payload in the BPM monitor as on below.

This did not give any information about how I could download the message. I know if the process is failed I’m able to edit the payload of a message, but this is obvious, not true if the process is completed.

There was no API for getting the data from my research at the point.

So we had to create our own tool to handle the queries.

We found the table in the database that housed the Context Data and then started understanding how it worked. The context data was encoded in an XML structure with base64. Then it was just to build a simple user interface on top of it.

It should be easy to find the correct document and so we added a function to make xpath in the data to get the correct data. So we ended up with the following UI.

 

If you want to get it. You can get it for free at http://figaf.com/tools/figaf-bpm-extractor/.

The build includes sources so you can optimize it your self.

 

 

 

 

SAP Integration Landscape and Emerging Complexity

The field of process integration is changing quickly, setting new challenges for Integration professionals, and I think a good understanding of the available tools is key.

When we talk about paradigms in process integration, there have been 3 major phases:

  • Mainframes: Back in the day, most companies had one mainframe or two. The good thing about the mainframe was that it was fairly simple to integrate what were essentially internal programs – even if you had to work across mainframe platforms.
  • Client-server: With the emergence of client-servers and SAP R/3, the number of application servers was growing quickly. Suddenly, as an Integration Department, you had to figure out how to integrate the applications in your landscape so that you could create a new interface. In SAP terms, it may have been a Business Connector or eXchange Infrastructure (XI). You only had one tool to use.
  • The Cloud: Today, cloud integration is the norm, and the goal is to be able to quickly and easily leverage new cloud capabilities from existing development. A couple of examples of existing cloud capabilities are Hybris Cloud for Customer (e-commerce solutions) and SuccessFactor (human capital management).  There are also a number of non-SAP cloud applications. In fact, you most likely have some of them in your landscape already. As the integration expert, your job requires you to make them all play together seamlessly. Some come with prebuild content others you have to create for yourself.

As I said earlier, it used to be that you had integration consolidation that mostly worked in XI/PI. Now, Integration departments are faced with a very different landscape, driven by the need for new integration capabilities, and need to be looking outside of their space at the tools that are already available in other areas of process development. If we understand what’s out there, we can choose the right tool for the job.

I’m talking about tools like the HANA Cloud Platform – integration services (HCP-IS)/HCI, Process Orchestration (PRO), API Management, and Data Services to do bigger data ETL. We’ve also got the Application Integration Framework Overview (AIF), for when you want to do any integration with backend services. There are also SAP Gateway solutions available for exposing OData. Those are the SAP integration technologies that I can think of off the top of my head, other vendors have similar offerings that may be relevant.

I did this exercise with a customer and we spend 6 hours on the different topics and when it did fit into their architecture.

The big problem for the integration manager/architect is that you need to know the tools, and know when it makes sense to use one and how to select one over another. You also need to be able to train your team to use them. As you learn more, you’ll find a lot of overlap between the capabilities of the various tools, and knowing what each one can do will allow you to streamline your process when you have complex situations.

The challenge with all these tools is that it is both labor-intensive and potentially expensive to try them out. Say you have a situation where you want to expose some data to the user. First, you will have to figure out the logic and the capabilities of the various tools to find the best one to combine the elements so your API management will call  PRO or Gateway — to get or expose some data. Then you’ll need to acquire the tools and start using them, in order to really understand where they fit and what you can do with them. Once you get that down, you will need to work out how to leverage the technology internally. So, a lot of work is involved whenever you introduce new technology like this. You also have to keep in mind that you will be paying for licensing to use the tool, even if you don’t end up implementing it.

So as integration experts and enterprise architects, working in a rapidly changing field, we want to do our homework and really understand any tool and how we can leverage it before we place it in our systems.

What is your strategy for landscape integration? How do you cope with training problems?

How the Seeburger Migration Tool Works

 

I can understand that there is a bit of confusion about how our Seeburger Migration Tool works for converting from Seebuger BIC to the B2B Add-on.

I hope this post will make things clearer.

The big problem is that Seeburger’s XML representation of the EDIFACT/XML formats is different from the ones that form the SAP B2B Add-on. The root node is different, and there is a difference in how Groups and some fields names are made. It is therefore a bit of a challenge to move from one format to the other. Below you can see what the SOT tool does.

I have tried to illustrate the process in the following diagram:
How SOT functions

SOT is a small, self-contained web application that runs locally on your own PC. Once installed, you are able to configure which PI system it should use.

The process is the following:

  1. The user selects a Message Mapping from a drop-down list and which External Definition to use for the mapping.
  2. User Presses Fetch and Update.
    1. This will download the Metadata from the mapping.
    2. Find the Seeburger XSD contained in the mapping.
    3. Compare the existing Seeburger format with the B2B Add-on format. It will then know that it needs to convert from /LIST/S_UNB/S_UNH/G_SSG25/S_LIN/D_1082 to /INVOIC96A/M_INVOIC/G_SG25/S_LIN/D_1082. It is using an algorithm for the comparison, so nothing special is required for the different message types and versions.
    4. Go through the mapping metadata and convert all occurrences of the first Xpath to the second.
    5. Alert if there is a difference in the structure that is not accounted for, or if there are other errors.
  3. The user can then select Update. This will upload the new message data to the server, and the mapping will use the new definition.
  4. You will have to open the mapping and save it to make sure it compiles the mapping files.

You will still be able to use the same original mapping; it will just work on the B2B format.

The functions that you use will still be in the mapping, since we are only changing the use of XSD.

If you want to see more, I suggest that you check out the tool page for SOT.