Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

SAP external interfaces

Former Member
0 Likes
1,641

Hello everyone,

I’m searching almost 8 days for information about SAP external interfaces, but don’t know more then before. Every time I though I understand something, I’ve read another article and get confused again. Our company uses SAP R/3 Release 4.6c.

It would be grateful if anyone could explain me, what external interfaces are possible to use with Visual Basic 6 / .Net . I’ve already heard about RFC, BAPI, IDoc and Batch Input but don’t know what the differences between these interfaces are.

Additionally I need information about the advantages and disadvantages of these interfaces. A small overview would be very helpfull .

I want to use an interface to connect via Visual Basic 6 or .Net to SAP and execute there some transactions. We have a transaction call 'MB1A' which is my aim transaction.

Before I start programming, I’d like to balance pros and cons to these interfaces.

It would be perfect if anyone of you can help me with this problem.

Kind Regards

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
1,438

Does anyone have some advantages or disadvantages for BAPI and Batch Input? I should explain to my boss what is the best solution.

Kind Regards,

Olli

Edited by: Oliver Linden on Jan 16, 2008 7:45 AM

11 REPLIES 11
Read only

Former Member
0 Likes
1,438

Forget Batch input. Its old technology and is not the best choice in your case.

RFC is simply a remote enabled function module. A BAPI is simply a function module (hence BAPI , RFC and FM are same thing). An idoc is the output container produced by calling a BAPI or through standard ALE setup (which just calls a FM in background and posts IDOC). Is ALE a possiblity?

I do not specifically know what is available for VB. NET but I know that in java you could just call a BAPI (RFC enabled) if the BAPI exists to do the job.

Read only

Former Member
0 Likes
1,438

At first, thanks for your qick answere.

I've read BAPIs can also be called out of VB.net but I don't know exactly what BAPI i should use. I've found a BAPI called "BAPI_GOODSMVT_CREATE". I think that's the BAPI I need to do the same as the transaction MB1A.

I don't know much about ALE, but I will search about this in the www. Thanks for the hint.

Read only

0 Likes
1,438

Hi Oliver,

The BAPI you found is indeed the one you would need for "doing the same as MB1A". When using VB or .NET I would suggest to you use BAPIs, simply because they are well documented, have well defined parameters and they are synchronous (while IDocs are asynchronous).

Regards,

John.

Read only

Former Member
0 Likes
1,438

Hi John,

many thanks for your answere, too.

Can you give me a link where this BAPI is documented with the parameters? Or/And maybe an example, too?

Regards,

Olli

Read only

0 Likes
1,438

Hi Oliver

You can check the details and documentation of any BAPI in the transaction code "BAPI" in R/3.

It will have all the details, in addition few are explained with examples.

Cheers

~ ranganath

Read only

0 Likes
1,438

Hi Oliver,

In case you have access to an SAP system: use transaction BAPI to find all documentation.

The only example coding I can give is calling the BAPI from Abap, but I guess that's not what you are looking for....

Regards,

John.

Read only

Former Member
0 Likes
1,438

I will look up the BAPI in our SAP-System.

Thank you two for the answere.

If anyone has an example-vbcode for the BAPI "BAPI_GOODSMVT_CREATE" it would be perfect!

Edited by: Oliver Linden on Jan 15, 2008 2:56 PM

Read only

Former Member
0 Likes
1,439

Does anyone have some advantages or disadvantages for BAPI and Batch Input? I should explain to my boss what is the best solution.

Kind Regards,

Olli

Edited by: Oliver Linden on Jan 16, 2008 7:45 AM

Read only

0 Likes
1,438

Hi Oliver,

Batch input has no advantage at all. The major disadvantage is that this technique is very "vulnerable" for any changes in the system. If through customizing the order of screens in a transaction change of certainly in case of a system upgrade your batch input will not work anymore.

BAPIs are standardized business interfaces and will still work even after an upgrade.

Regards,

John.

Read only

Former Member
0 Likes
1,438

Hi,

at first thank you John for your answere.

Today i've tried to call the BAPI out of Visual Basic, but I want to simlulate the transaction. If found the Testrun parameter of BAPIs, but don't know how to turn on this parameter. Should I edit the BAPI BAPI_GOODSMVT_CREATE in the SAP-System or can I also turn on this parameter in Visual Basic?

Regards

Olli

Read only

0 Likes
1,438

Hello Oliver,

you can set parameter "TESTRUN" = X to check your transfered data, i.e. process the BAPI w/o posting. Table RETURN, contains the messages from this testrun.

By the way - I think it's impossible to call a bdc directly from a VB application (you can only call an RFC enabled function module, which performs a bdc).

Best regards

Stephan