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

reg : bdc

Former Member
0 Likes
641

Could anybody explain me what a bdc actually is ?

what are its functionalities?

where is it applied?

thanks in advance.

Sowmya.

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
607

Hi,

BDC is Batch Data Communication where data is transferred from legacy system to SAP system. BDC is a batch interfacing technique that SAP developed. It is mainly used for uploading data into the SAP R/3 system. BDC works by simulating the user input from transactional screen via an ABAP program.

The data input data file will come in the form of a flat file which the user save as file type txt file or prn file from the Microsoft Excel program. An Abaper will create a program to read the text file and upload into the SAP system.

Normally, the tcode SHDB will be used to record the transaction code the user used. After, the simulation, the Abaper can generate a sample program and modify from there. It makes the programming easier and faster.

Different methods of BDC are

1. Call Transaction Method.

2. Session Method

3. Direct Input method.

In all the above methods you have to prepare a flat file containing the data in the required format to be uploaded to the SAP system. You need to call the function ' UPLOAD' to do this. Then the contents of the flat file have to copied to your internal table and then u need to call the transaction through which you want to update the database. You internal table should also have the information relating to the structure BDCDATA which is having the details like the module pool program name, screen no. The basic concept of updating the database is same in all the 3 methods but only the method differs.

In session method after the data transfer program is coded, in order to process that particular session you have to go to TC: SM 35 to process the session.

Direct input method have some standard programs that have to executed.....

Regards,

U. Uma

5 REPLIES 5
Read only

anversha_s
Active Contributor
0 Likes
607

hi,

<u>

BDC (Batch Data Communication)</u> is a technology used for data transfer.

it is meant for transferring data thru SAP transactions itself. when u use BDC for data transfer,

the sequence of steps is the same as when u use standard sap transaction screens for data upload.

the only difference is that u can use different options for foreground/background processing.

Features :

BDC is an automatic procedure.

This method is used to transfer large amount of data that is available in electronic medium.

BDC can be used primarily when installing the SAP system and when transferring data from a legacy system (external system).

BDC uses normal transaction codes to transfer data.

Types of BDC :

CLASSICAL BATCH INPUT (Session Method)

CALL TRANSACTION

BATCH INPUT METHOD:

This method is also called as ‘CLASSICAL METHOD’.

Features:

Asynchronous processing.

Synchronous Processing in database update.

Transfer data for more than one transaction.

Batch input processing log will be generated.

During processing, no transaction is started until the previous transaction has been written to the database.

CALL TRANSACTION METHOD :

This is another method to transfer data from the legacy system.

Call transaction.

1) asynchronous processing

2) can transfer small amount of data

3) processing is faster.

4) errors need to be handled explicitly

5) data is updated automatically

Session method.

1) synchronous processing.

2) can tranfer large amount of data.

3) processing is slower.

4) error log is created

5) data is not updated until session is processed.

Session method is to populate the data by filling BDC structure

and keep as session to process from SM37 to post in appropriate Transaction.

Call transaction method is to post the data directly into the Transaction from an Executable program.

Features:

Synchronous processing. The system performs a database commit immediately before and after the CALL TRANSACTION USING statement.

Updating the database can be either synchronous or asynchronous. The program specifies the update type.

Transfer data for a single transaction.

Transfers data for a sequence of dialog screens.

No batch input processing log is generated.

<u>BDC are used for follwoing scenarios mostly:</u>

1. Mass Upload of Data

2. allowed to do some activity repeatedly for large amout of data where User Interaction becomes Hectic.

Major use would be for DATA TRANSFER!!!!!

It allows us to automate some transaction for which we have data.

Following documents would give u some brief idea on Batch Data communication :

http://help.sap.com/saphelp_erp2005/helpdata/en/fa/097119543b11d1898e0000e8322d00/frameset.htm

http://www.sapgenie.com/abap/bdc.htm

If u want to call a transaction and goto a particular screen as soon as u call the transaction, u can record the flow in BDC.

That is u have to goto SHDB transaction for recording and then specify the transaction code then pass the values and once u reach the screen, press save button and press back.

Code will get automatically generated.

Then u can copy and paste the part of the code that is needed

<u>BDC Helps</u>

http://help.sap.com/saphelp_erp2005/helpdata/en/fa/097119543b11d1898e0000e8322d00/frameset.htm

http://myweb.dal.ca/hchinni/sap/bdc_home.htm

https://www.sdn.sap.com/irj/sdn/wiki?path=/display/home/bdc&;

http://www.sap-img.com/abap/learning-bdc-programming.htm

http://www.sapdevelopment.co.uk/bdc/bdchome.htm

http://www.sap-img.com/abap/difference-between-batch-input-and-call-transaction-in-bdc.htm

http://help.sap.com/saphelp_47x200/helpdata/en/69/c250684ba111d189750000e8322d00/frameset.htm

http://www.sapbrain.com/TUTORIALS/TECHNICAL/BDC_tutorial.html

Rgds

Anver

Read only

Former Member
0 Likes
607

Hi,

BDC allows you to perform database updates in the background using standard SAP transactions.

Example

-


If you want to create a sales order..You can use the bdc technique to create sales orders..

Basically it will go through the screens..

You will use CALL TRANSACTION to trigger the BDC.

Thanks,

Naren

Read only

Former Member
0 Likes
608

Hi,

BDC is Batch Data Communication where data is transferred from legacy system to SAP system. BDC is a batch interfacing technique that SAP developed. It is mainly used for uploading data into the SAP R/3 system. BDC works by simulating the user input from transactional screen via an ABAP program.

The data input data file will come in the form of a flat file which the user save as file type txt file or prn file from the Microsoft Excel program. An Abaper will create a program to read the text file and upload into the SAP system.

Normally, the tcode SHDB will be used to record the transaction code the user used. After, the simulation, the Abaper can generate a sample program and modify from there. It makes the programming easier and faster.

Different methods of BDC are

1. Call Transaction Method.

2. Session Method

3. Direct Input method.

In all the above methods you have to prepare a flat file containing the data in the required format to be uploaded to the SAP system. You need to call the function ' UPLOAD' to do this. Then the contents of the flat file have to copied to your internal table and then u need to call the transaction through which you want to update the database. You internal table should also have the information relating to the structure BDCDATA which is having the details like the module pool program name, screen no. The basic concept of updating the database is same in all the 3 methods but only the method differs.

In session method after the data transfer program is coded, in order to process that particular session you have to go to TC: SM 35 to process the session.

Direct input method have some standard programs that have to executed.....

Regards,

U. Uma

Read only

p291102
Active Contributor
0 Likes
607

Hi,

Session method.

1) synchronous processing.

2) can tranfer large amount of data.

3) processing is slower.

4) error log is created

5) data is not updated until session is processed.

Call transaction.

1) asynchronous processing

2) can transfer small amount of data

3) processing is faster.

4) errors need to be handled explicitly

5) data is updated automatically

Batch Data Communication (BDC) is the oldest batch interfacing technique that SAP provided since the early versions of R/3. BDC is not a typical integration tool, in the sense that, it can be only be used for uploading data into R/3 and so it is

not bi-directional.

BDC works on the principle of simulating user input for transactional screen, via an ABAP program.

Typically the input comes in the form of a flat file. The ABAP program reads this file and formats the input data screen by screen into an internal table (BDCDATA). The transaction is then started using this internal table as the input and executed in the background.

In ‘Call Transaction’, the transactions are triggered at the time of processing itself and so the ABAP program must do the error handling. It can also be used for real-time interfaces and custom error handling & logging features. Whereas in

Batch Input Sessions, the ABAP program creates a session with all the transactional data, and this session can be viewed, scheduled and processed (using Transaction SM35) at a later time. The latter technique has a built-in error processing mechanism too.

Batch Input (BI) programs still use the classical BDC approach but doesn’t require an ABAP program to be written to format the BDCDATA. The user has to format the data using predefined structures and store it in a flat file. The BI program then reads this and invokes the transaction mentioned in the header record of the file.

Direct Input (DI) programs work exactly similar to BI programs. But the only difference is, instead of processing screens they validate fields and directly load the data into tables using standard function modules. For this reason, DI programs are much faster (RMDATIND - Material Master DI program works at least 5 times faster) than the BDC counterpart and so ideally suited for loading large volume data. DI programs are not available for all application areas.

Differences between bdc session method and call transaction method.

The most important aspects of the batch session interface are: - Asynchronous processing - Transfers data for multiple transactions - Synchronous database update During processing, no transaction is started until the previous transaction has been written to the database. - A batch input processing log is generated for each session - Sessions cannot be generated in parallel

The most important aspects of the CALL TRANSACTION USING interface are: - Synchronous processing - Transfers data for a single transaction - Synchronous and asynchronous database updating both possible The program specifies which kind of updating is desired. - Separate LUW for the transaction The system performs a database commit immediately before and after the CALL TRANSACTION USING statement. - No batch input processing log is generated.

Thanks,

Shankar

Read only

Former Member
0 Likes
607

HI

GOOD

go through this link

https://www.sdn.sap.com/irj/sdn/wiki?path=/display/home/dataTransfers-LSMW,ALE,+BDC&

thanks

mrutyun^