So it is done, Part 2 finally is written and an example is uploaded to github. It took me about 8 months to release Part 2 of these series. Part 1 was released in March 2016 and now I had time to write an example for Part 2 and upload it to github. Part 1 discover the basics about a RFC Server with the SAP NCo Connector, part 2 now explain how to build a RFC Server more flexible.
In some cases you want to trigger an external program from a SAP system. In this part 1 I explain how to build a RFC Server with NCo 3.0. I had several problems when I started with this topic so I decided to write a short example. If someone want the Visual Studio project files, please contact me.
So let's go.
This Post describes how to build a simple RFC Server using SAP NCo 3.0 and the app.config. Part 2 will be describe how to build a RFC Server with RFC Parameter. As example program I use STFC_CONNECTION. It is a good example, because it contains importing and exporting parameters.
First you have to download and install NCo 3.0 (OSS login required). Afterwards you have to start a new project in Visual Studio.
Setting up the Visual Studio Project:
In the properties of the project you have to use a new console application. As target framework I use .Net Framework 4.5.
While developing in the Visual Studio for .Net you can get an error like this: "Interop type 'CrystalDecisions.Enterprise.SessionMgr' cannot be embedded. Use the applicable interface instead." or in German: "Interop Typ 'CrystalDecisions.Enterprise.SessionMgr' kann nicht eingebettet werden. Verwenden Sie stattdessen die anwendbare Schnittstelle."
To aviod this error, you have to change the properties of this reference. You have to switch the "Embed Interop Types" from True to False.
In the last time I had several problems with external access to a SAP BW System. The access was realized with an old version of the SAP Connector. And that is the problem. If you have a SAP Business Warehouse System version which is greater than 7.3, you maybe get troubles. For example SAP added new fields or like in 7.4 you now have the option for "Long text is XL" in the master data. So the old versions would not work with this.
I just found a very good table about the maintenance of all versions in Martins blog.