Professional Documents
Culture Documents
BDC
BDC
Batch Data Communication (BDC) is the process of transferring data from one SAP System to another SAP system or from a non-SAP system to SAP
System.
Types of BDC
1. call transaction
2. session method
3. direct input method
Direct Input method is used for bulk transfer of data into SAP system.It results in faster execution since no screens are processed and the SAP database
will be updated directly using the standard function modules.
Better example where direct input method will be used is… uploading the data for material master…..it includes lot of views so its very much di cult to
capture all the views and record the tcode and map the data in such conditions its better to go with DI methods
Advantages:
In session method or Call Transaction method while uploading the data u do the validation by fallowing the screen sequence and eld sequence where as
in Direct Input validations can be done set of code so this make the process very fast so its advantageous to upload large amout of data.
you always use the standard sap provided program for this.
Here in Direct Input method very important thing is structure of at le… so to know the structure rst of all you have to download the data for one record
into the internal table with the use of the same program then with the use of that structure u have to desing the at le and upload the data.
Direct Input:
With direct input, the SAP function modules execute the consistency checks. However with batch input, these consistency checks are executed with help of
the screens. This means that direct input has considerable performance advantages. But there are a few programs for direct input, you can use them if it
accomplishes your goal. Direct Input programs work like that they update database tables directly. As you know that it is forbidden to update SAP
database tables directly, since consistency and security should be considered. Exceptions are these direct input programs. So you are not able to write
custom ABAP direct input programs. But of course you can write ABAP programs to update custom database tables (Z tables), if you are sure all about
consistency.
SAP has created direct input programs because SAP wanted to enhance the batch input procedure, since batch input is slower. SAP o ers the direct input
technique, especially for transferring large amount of data. In contrast to batch input, this technique does not create sessions, but stores, updates, inserts
data directly. To enter the data into the corresponding database tables directly, the system calls a number of function modules that execute any necessary
checks. In case of errors, the direct input technique provides a restart mechanism. However, to able to activate the restart mechanism, direct input
programs must be executed in the background only. To maintain and start these programs, use program RBMVSHOW or transaction BMV0.
Examples for direct input programs are:
RFBIBL00 – FI
RMDATIND – MM
RVAFSS00 – SD
RAALTD11 – AM
RKEVEXTO – CO-PA
In contrast to batch input, this technique does not create sessions, but stores the data directly. It does not simulate the online transaction. To enter the
data into the corresponding database tables directly, the system calls a number of function modules that execute any necessary checks. In case of errors,
the direct input technique provides a restart mechanism. However, to be able to activate the restart mechanism, direct input programs must be executed
in the background only. Direct input checks the data thoroughly and then updates the database directly.
1. The rst step in a BDC session is to identify the screens of the transaction that the program will process.
2. Next
Privacy step is This
& Cookies: to write a program
site uses cookies.to
Bybuild the BDC table
continuing to use thisthat will be
website, youused
agreetotosubmit the data to SAP.
their use.
To 3.nd out more, including how to the
control Close and accept
The nal step is to submit BDCcookies, see
table to here:
the Cookie
system in Policy
the batch mode or as a single transaction by the CALL TRANSACTION command.
https://sapabapfaq.wordpress.com/conversions/bdc/ 1/6
5/2/2019 BDC | SAP ABAP QUESTIONNARE
What do you do when the system crashes in the middle of a BDC batch session?
Check no. of records already updated and delete them from input le and run BDC again.
WHAT are the commands that allow you to process sequential le? And what
is their syntax?
READ DATASET : reading and TRANSFER: writing
OPEN DTASET <dataset name>
for <input/ output /appending>
in <binary/ text > mode
at POSITION <position>
MESSAGE < eld>
READ DATASET <dataset name > INTO < eld>
CLOSE DATASET <dataset name>
DELETE DATASET <dataset name>
TRANSFER < eld> to <dataset name>
What is the e ect of the BDC_CURSOR eld name in the BDC table?
You can set the cursor and enter as a corresponding eld value, the name of the Field, on which the cursor is to be positioned.
https://sapabapfaq.wordpress.com/conversions/bdc/ 2/6
5/2/2019 BDC | SAP ABAP QUESTIONNARE
Does the CALL TRANSACTION method allow multiple transactions to be processed by SAP?
No. The CALL TRANSACTION method allows only a single transaction to be processed by SAP.
An ABAP program creates a batch input session. We need to submit the Program and the batch session in back ground. How to do it?
Go to SM36 and create background job by giving job name, job class and job steps (JOB SCHEDULING)
What are the problems in processing batch input sessions? How is batch input process di erent from processing online?
If the user forgets to opt for ‘keep’ session then the session will be automatically removed from the session queue (log remains).
When using call transaction method for 1000 records, if u found error in64th record then how can u nd it and how can u send this to user?
Using BDCMSGCOLL structure you can capture the error records.By using T.code [SLG1] we can nd 64th record or we can know by BDCMSGCOLL.
1.I am uploading 1000 records using session method.I have an error in 950th record. What will happen and how many records will upload?2.I am
uploading 1000 records using Call Transaction method.I have an error in 950th record. What will happen and how many records willupload?
If I want to insert 10 laks MM records and for inserting one record it takes 1
min by using call transaction or session method. So here is there any
alternative ?
Break the records into 100/1000 sessions and process your session it will
take same time as it takes for single sessions.We can go through LSMW direct input method, in real time for Master datauploading we are used it. It is fast
and performance wise also good.Use bapi run in background.
Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
How does
To nd outumore,
knowincluding
that updation is successful
how to control insee
cookies, BDC?
here: Cookie Policy Close and accept
Using bdcmsgcol we can nd out it is success or not. After run the BDC PROGRAM (CREATING BATCH SESSION).
https://sapabapfaq.wordpress.com/conversions/bdc/ 3/6
5/2/2019 BDC | SAP ABAP QUESTIONNARE
Using SM35 you can proceed batch session, if updation is successfully done
then status showing green tick. If any errors over there then its showing red tick.
You have 5lakh records to transfer to sap from at le. Which method of bdc
you wiil choose and why?
If u want to process the large amount of data that we have to use the
session method because of, while u are Processing the records any errors are
processed these errors Create the error log le for each error record.
In the same way this method not possible in call transaction Method .
How does u write a program in session method so that it creates the session
and run the session itself without going to sm35 ?
After writing the program submit the session using the syntax submit
rsbdcsub with mappe ‘<session name>’ [via selection screen] [and return].
https://sapabapfaq.wordpress.com/conversions/bdc/ 4/6
5/2/2019 BDC | SAP ABAP QUESTIONNARE
What has to be done to the packed elds before submitting to a BDC session?
Declare these elds in the internal table as characters and the length of the
eld should be same as the eld length of the eld’s data element. This internal table is
used to hold the data fetched from the sequential le using WS-upload function module
What is CTU_PARAMS?
This is a structure de ned in the ABAP Dictionary (SE11) that must be used to
declare the type of variable after the OPTIONS FROM keyword of CALL TRANSACTION
… USING … (“CTU”) statement. It contains many elds to in uence the CTU behavior.
For more information, refer to CALL TRANSACTION ‘SM04’ USING
lt_bdcdata MODE ‘N’
UPDATE ‘S’.
is the same as:
DATA ls_ctu_params TYPE ctu_params.
ls_ctu_params-dismode = ‘N’.
ls_ctu_params-updmode = ‘S’.
CALL TRANSACTION ‘SM04’ USING lt_bdcdata OPTIONS FROM ls_ctu_params.
‘SET_TRANS_VAR’ ID ‘ACTIV’ FIELD ‘X’, and after CTU, there is call ‘SET_TRANS_VAR’ id
‘RECORDING’ eld ‘ ‘.
The main function module for recording is BDC_RECORD_TRANSACTION, which
returns the BDC data. The SHDB recorder records the BDC data into APQI and APQD
tables.
LSMW recorder uses this same technology, but saves the BDC data into
/SAPDMC/LSGBDC* tables.
Advertisements
Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
To nd out more, including how to control cookies, see here: Cookie Policy Close and accept
https://sapabapfaq.wordpress.com/conversions/bdc/ 6/6