cancel
Showing results for 
Search instead for 
Did you mean: 

Optimal Middleware solution?

Former Member
0 Kudos

Hi Experts,

I am in process of developing a middleware/bolt-on between an already existing product and SAP ERP.

The possibilities are as follows:-

1. Client:- Desktop or Mobile

2. Middleware:- Any web technology preferably .Net or Java

3. SAP ERP:- Could be pre Netweaver or Post Netweaver versions.Could be from 4.x to ECC 6.0.SO want to develop an independent solution which will work irrespective of the SAP ERP implementation version.

From research i understand that the bridge between middleware and SAP ERP can be filled using:-

1. RFC

2. BAPI

3. Webservices

The tools available are:-

1. RFC (C/C++ Libraries)

2. SAP .Net Connector

3. SAP Java Connector

4. SAP Business Connector(Can anybody tell me the difference between SAP Business Connector and .Net/Java Connector???)

5. ES in Netweaver to consume webservices

As i want to also cater to ERP versions previous to Netweaver i am going to ignore the webservices option.

From my reading i understand that BAPI is the best option for my requirement.

Am i right??

If yes,then Can i use BAPI via tools 1,2,3,4??Which is better amongst them??

Kindly request feedback from the experts as soon as possible.

Awaiting reply.

Regards

Biju Chandran

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi,

Yes,you can use BAPI via tools 1,2,3,4.

Business Connector in an EAI / ESB toll and SAP recommendation is ti o use SAP XI / PI Instead.

Today SAP recommend to use Enterprises but not .Net Connector.

The best should be JCO connector, or RFC (C++), it's up to you.

Regards, Gilles.

Former Member
0 Kudos

Thank you Gilles.

Can you elaborate more on the differences between BC,.Net/Java Connector and XI..

I know all these are used to integrate non-SAP to SAP.But still do not have total clarity as to how they do it differently from each other.

Also since my non-SAP system is in .Net i would prefer using a connector supporting .Net.

1. Are new releases to SAP .Net Connector available?what is the SAP license i would need to use it?

2. Are new releases to SAP Business Connector available?what is the SAP license i would need to use it?

3. Are new releases to RFC C/C++r available?what is the SAP license i would need to use it?

Thanks and Regards,

Biju

Former Member
0 Kudos

BC and XI / PI are EAI / ESB applications.

More details here

http://en.wikipedia.org/wiki/Enterprise_application_integration

You'll have all the details about the different connectors on the marketplace

http://service.sap.com/connectors

Regards, Gilles.

Former Member
0 Kudos

Thanks again Gilles.

One last thing i am looking for clarity is what sort of user license would be needed to connect via the connectors and execute the BAPIs

Former Member
0 Kudos

About license, it's always a discussion between SAP and the customer.

You should have one license per user connected, in your .Net applications your user should have also a Abap user with the license. If you have that for all your users you can do what you want.

PI / XI and business connectors should be free when you stay in a sap to sap world,this is not your case.

There is also the possibility to buy server license (license per cpu)

Regards, Gilles.

Former Member
0 Kudos

Say if there are 100 users connected to the .Net application and the application in turn communicates to SAP.

In that case won't one user license suffice as ideally only one entity (.Net)is communicating with SAP.

What do you mean by ABAP user with the license?

In possiblity of buying server license do you mean 1 license for the .Net server?

Former Member
0 Kudos

You can use a "system user" but SAP does not like that.

The rule is "100 .Net users" = 100 SAP Licenses or a cpu license

This si the rule but the reality says it's always a negociation between sap and the customers.

Regards, Gilles.

Former Member
0 Kudos

Thanks Gilles..It helped a lot..thank you

Former Member
0 Kudos

I am asuming System user is same as RFC User...please correct me if i am wrong

Former Member
0 Kudos

yes, a "technical" user.

A dialog user is also possible.

Gilles.

Former Member
0 Kudos

Ok...I finally decide to go with .Net Connector.Any ideas as to if it is still supported by SAP.

Should it matter as the BAPIs in SAP are backward compatible and once a BAPI is released SAP does not make much changes to it.

And underneath .Net connector-BAPI is also RFC.

Former Member
0 Kudos

About .net connector support :

Note 856863 - SAP NCO Release and Support Strategy

Regards, Gilles.

Former Member
0 Kudos

> You can use a "system user" but SAP does not like that The rule is "100 .Net users" = 100 SAP Licenses or a cpu license

You can use service user only and there is no restriction from SAP side on this, all application which access SAP via service user only and they use in bulk. so even if 100 .Net user connected your middleware then only 1 user connected to SAP.

To avoid heavy consumption of resource use connection pool (in .Net connector or Java Connector) so you can use it optimally.

Using BAPI is not very good idea as everything in SAP is not BAPI so keep yor option open and additionally support flat files as well. You can develop generic ABAP program (some sort of addon) on sap side to translate every data into flat file which can be picked up from fix location.

Regards,

Gourav Khare

Former Member
0 Kudos

Thanks Gourav for getting back on this.

I am assuming

System User = Service User = RFC USer(User with type'Communication')

Please correct me if I am wrong.

My choice of BAPI is because of its object orienteering and also it is readily available.

If i do not have a BAPI ,i can write my own right?But then upgrade will be an issue i guess.

I do not want to go with flat files as i want the communication to be Synchronous.

Former Member
0 Kudos

>System User = Service User = RFC USer(User with type'Communication')

yes, i mistyped as system user, it is service user.

>My choice of BAPI is because of its object orienteering and also it is readily available

BAPI is NOT object oriented (and it really doesn't matter). BAPI is not available for everything. And if you keep writing BAPI if not available then purpose of your middleware will be lost. If you just trying to transfer data b/w system and would like to connect them using 1 to 1 connection then indeed use RFC/BAPI etc for real time call.

But if you are trying to develop generic solution to transfer data between different systems without disrupting source and target system then you should use file system as well. Just read more about middleware to understand concept behind it.

Regards,

gourav