.netintegrationsap-pisap-xi

Best SAP integration practice for an ISV company?


We are a smaller ISV company that develop a product that often end up depending on SAP integration when installed in customer environments.

We're now looking for the optimal way of integration our product with SAP - in the most standard way possible. We need a solution that will work for most possible customer with least amount of work (some of the really don't have their own SAP resources).

We need to receive some basic information such as customers, addresses, stock items. We also need to send invoice information to SAP for further processing there.

After some reading here for example it looks like NetWeaver and PI is the best way to go. Doesn't that however require a lot of development on the clients PI side to expose and call the correct services? How can that be solved?

Another question is if it's normal for all SAP customer to even have NetWeaver? I need my solution to work for all our customer and some are kind of mid-sized SAP customers with smaller SAP installations.

If PI isn't the way to go what are my options and what are the pro and cons?

Update 2010-12-30 - requirements. Some requirements that we need to fulfill are:


Solution

  • PI is not an option. Its the sap equivalent to biztalk. And most sap customers don't have it. So it will limit your possible customer base.

    NetWeaver is just a marketing term for most of sap Platforms those days. There are customers that are using pre-netweaver system. But, anyway, the term is useless.

    What you can count on ANY sap customer to have is the ABAP application server (This is the basic platform for most sap solutions).

    ABAP server implement an interface called RFC. It's a remote procedure call protocol that can be used for synchronous (and also asynchronous) calls. You consume this interface from .net with SAP .NET Connector (sap marketplace user needed). On top of this protocol sap provide a set of functions called BAPI for standard scenarios. If you are lucky, you can find the functions that will provide the functionality you need. Your other option, only for asynchronous communication, is called IDOC. They are suitable for batch processing.

    Both those options are available on any sap system.