Skip to Content

The title of this blog is actually a quote from H.G. Wells. He was a great writer and amongst others he wrote several science fiction novels. The main theme in his books was always about humans and their society. We all organize ourselves into various kinds of social groupings and one my groupings is the community of SAP Process Integration.

Today I was working on a PI mapping and could not understand why it was failing at first. Finally I figured it out, the standard PI mapping functions were giving me results which I did not expect. When I looked at it closer I thought: “if I would have done it, I would have implemented this functionality differently”. Then again, it works as designed.

Still I could not let it go and opened Eclipse and started to code a function which did the job better (better in a sense of getting the expected result that I needed). I compiled the class and added the jar file to the mapping. (As there was already a JAVA class attached to the mapping with other functions.)

Then I came across a blog post from Daniel Graversen about isNill and isNull. ( See blog He had done the same thing; he fell down and stood up!

To get back to the main theme of H.G. Wells where people tend to organize themselves in social groupings, I thought why not ask my grouping/community if they experience the same thing and want to stand up today. I send some tweets out  towards fellow developers and an exciting idea cam up: why not start a PI codeXchange?

In this PI codeXchange we bundle our own functions into several classes and together with the community we build our own classes. Think of functions regarding dates, string and queue handling amongst others. An example of a date function could be to ad or subtract days from  a starting date and so on. We think this could really serve the community.

Most people are wondering, nice idea and what’s in it for me? Besides the intellectual challenge, we help the community. You will again knowledge on how fellow developers are solving their problems and you will expose yourself to the community, which is good for you network.

So now I am asking to everyone who fell down and wants to stand up today, please participate. Let us hear your voice and tell us what you think of this idea to start our own community library for SAP PI functions.

Again, please share your thoughts and ideas about this.

To report this post you need to login first.


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

  1. Philippe Addor

    Sharing code and make it reusable is always a good idea! The PI community however is relatively small. So it might be difficult to gather enough people to keep it alive. Do you know the open PI initiative? That one contains only some open EDI adapters at the moment and since a few years. Why not teaming up and extend it to UDFs, Java mappings and such?

    1. Guido Koopmann Post author

      Hi Philippe,

      I know that the PI community is relatively small. I also believe that we have a chance to get it started, it’s worth a shot. The great thing is that core JAVA developers can connect with us too, so then we have a wider range.

      Eventually we could team up with and see what we can do for each other.

      Kind regards,

      Guido Koopmann

    2. Denny Schreber

      Being one of the OPI2 founders it’s nice to see some interest in our initiative. SourceForge was used because of all the features it offers for distributed development. However, OPI2 has more or less ready-to-use “products” and not so much libraries on which you can build your own solutions. That’s why I think this Function Library is a great thing and I think I will contribute as well. In the end, we will hopefully benefit from each other since I think one can learn a lot from reading each other’s coding and getting new ideas how to tackle our challenges.


      Denny Schreber

  2. Mariana Mihaylova

    Great to see so many people taking this on!

    SAP Code Exchange: should be used as the one platform for SAP developers to share code, ideas and get feedback. Any SCN contributor can join an existing project or create a new one and invite others.

    Legal aspects for using Code Exchange are covered here:  

    We can easily feature/link to Code Exchange projects anywhere on SCN and other sites, but code can be hosted directly in a Code Exchange project only.

    We have created the SAP NetWeaver Process Orchestration Developer Center at the end of last year to facilitate sharing of development resources for the SAP NetWeaver Java stack:

    What I would like to ask the community is:

    A good way to get started is to create a new project on Code Exchange or contribute to an already existing as appropriate. Every time you share please create a document in the Process Orchestration Dev Center providing full detail on your sample and linking to Code Exchange for download. You can easily link to or share this document later on SCN or any other site. However having all samples documented on the Dev Center will help us build a library and help SCN users easily find and access them.

    Hope this will help us get organized and kick this off. Please let me know if you have any questions.

    Thanks and Regards,


  3. Guido Koopmann Post author

    HI all,

    Glad to see that we have alot of positive reactions about this topic. At this time I have created a new project on codeXchange: PI function library plugins.

    In here we start with, putting some UDF’s which we can add in the function library of PI. I hope to upload the first content next week. After time we can extend this and create new other projects.

    When someone wants to join please send me a message so that I can grant you access. Hope to see you all.

    Kind regards,

    Guido Koopmann


Leave a Reply