Application Development 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: 

AP Invoice upload - BAPI or BDC? Which is better?

former_member189629
Active Contributor
0 Kudos

Experts,

To create AP Invoices from flat file data, which one of these options is a better one in terms of performance and maintainability?

BDC/Call Transaction better

or

BAPIs (BAPI_ACC_DOCUMENT_POST or something)

Thanks in adcance

1 ACCEPTED SOLUTION

Former Member
0 Kudos

If your input to create Invoice with maximum information, it is always advisable to use std. BAPI otherwise use BDC

8 REPLIES 8

Former Member
0 Kudos

If your input to create Invoice with maximum information, it is always advisable to use std. BAPI otherwise use BDC

Former Member
0 Kudos

Hi,

If BAPI_ACC_DOCUMENT_POST can accommodate your need, I suggest you to use this BAPI.

Please only use BDC if you don't have any others choice. Use it as your last option.

Regards,

0 Kudos

Thank you for your replies. I am keeping this thread open as I am looking fr some strong reasining as to why opt for which ever method. I don't need the pros and cons of BDC/BAPIs but need a strong reason why I must use an option for AP Invoices. Keping in mind potential issues like...

Error handling: BAPIs? or SM35 sessions (using BDCs)?

Regards...

Edited by: NW on Aug 22, 2008 9:04 AM

Former Member
0 Kudos

Hello,

There are few points you need to consider to decide what method you need to use.

Using, BAPI, normally it is immediate update, orders will be created immediately.

with BDC, order will be crated when BDC session is processed.

Size of inbound data

System workload

How you want to create orders <immediate / batch>.

BDC can give better control on error processing,

Using BAPI, you have to manipulate data file for error documents.

Do you want to create subsequenet documents based on created sales order the you have to use BAPI trap order number and use it for dependent document processing. Using BDC you can't do that.

I hope this points are sufficient to decide which method do you need.

Regards,

Mahesh

0 Kudos

Mahesh,

Thank you for your reply. Let me expand on the points you mentioned...

Size of inbound data

Ans. Will not be too big - it is a daily run batch extract + Invoice posting

System workload

?

How you want to create orders <immediate / batch>.

Ans. Batch - Daily Sched

BDC can give better control on error processing, Using BAPI, you have to manipulate data file for error documents.

? Can you add some detail to this please?

Do you want to create subsequenet documents based on created sales order the you have to use BAPI trap order number and use it for dependent document processing. Using BDC you can't do that.

Ans: No

raymond_giuseppi
Active Contributor
0 Kudos

It is better to use BAPI, like [BAPI_ACC_INVOICE_RECEIPT_POST|https://www.sdn.sap.com/irj/sdn/advancedsearch?query=bapi_acc_invoice_receipt_post&cat=sdn_all] or [BAPI_INCOMINGINVOICE_SAVE|https://www.sdn.sap.com/irj/sdn/advancedsearch?cat=sdn_all&query=bapi_incominginvoice_save&adv=false&sortby=cm_rnd_rankvalue].

- BAPI are easier, just fill a structure and not field screen per screen (BDCDATA structure, flow of screens).

- BAPI are much easier when managing multiple line/items

- BAPI are less sensible when upgrading version

- BDC does not feel good when it comes to enjoy transaction (in fact in most cases they wont work at all)

- BAPI should consume less ressources,

- On the other side, error are managed in BDC by keeping the file in an error status, when you have to programmatically manage errors in a BAPI

Regards

Former Member
0 Kudos

NW,

Looking at your answers, you should use BAPI, provided you put appropriate error handling mechanism.

BDC's are always pain when it comes to upgrade or SAP enjoy transactions. Advantage of BDC's are better control on error handling and huge data load.

Regards,

Mahesh

former_member189629
Active Contributor
0 Kudos

Thanks everyone for your replies. As always, SDN Rocks!