Вы находитесь на странице: 1из 3

Learning BDC Programming

I want to learn how to upload data using BDC. If I have a excel data file how will
upload it using BDC. I don't know the full process of doing it, if someone help me in
this. I want it using BDC session process and processing that session. I was trying to
upload material master other day. But could not follow the process of uploading using
BDC though I know LSMW. Please explain me the BDC process in details with
For a BDC upload you need to write a program which created BDC sessions.
1. Work out the transaction you would use to create the data manually.
2. Use transaction SHDB to record the creation of one material master data.
Click the New recording button or the Menu - Recording - Create
3. Save the recording, and then go back a screen and go to the overview.
4. Select the recording and click on Edit - Create Program. Give the program a Z name, and
select transfer from recording.
5. Edit the program. You will see that all the data you entered is hard-coded into the
program. You need to make the following changes:
5.1 After the start-of-selection, Call ws_upload to upload the file (the excel file needs to be
saved as TAB separated).
5.2 After the open-group, Loop on the uploaded data. For each line, perform validation
checks on the data, then modify the perform bdc_field commands to use the file data.
5.3. After perform bdc_transaction, add the endloop.
Execute the program. It will have options to create a batch session or to process directly.
These are all my finds . Might be it will be useful to you.
Direct call of transactions, session handling:
/nxxxx This terminates the current transaction, and starts transaction xxxx
/n This terminates the transaction. This generally corresponds to pressing F15 to go back.
/nend This termiantes all separate sessions and logs off (corresponds to System - Logoff).
/nex This terminates all separate sessions and logs off immediately (without any warning!).
/oxxxx This opens a new session and starts transaction xxxx in This session.
/o This lists existing sessions and allows deletion or opening of a new session.

/i This terminates the current session (corresponds to System End

/i1, /i2,... This terminates the session with the number given.
.xyzw Fast path: 'xyzw' refers to the underlined letters in the menus. This type of navigation
is uncommon and is provided more for emergencies (such as a defective mouse).
The following commands can be entered in correction mode ('Process in foreground' or
'Display errors only') when processing a batch input session:
/n This terminates the current batch input transaction and characterizes it as
/bdel This deletes the current batch input transaction.
/bend This terminates batch input processing and sets the session to Failed
/bda This switches from Display errors only to Process in foreground
/bde This switches from Process in foreground to Display errors only
/h This switches into debugging mode.
/hs This switches into debugging mode and activates the debugging of system functions.
WARNING: Resetting buffers can significantly change the performance of the entire
system for a long time.
It should therefore only be used where there is a good reason tdso. As of release 3.0B
system administator authorization is required (authorization object (S_ADMI_FCD). The
action is noted in the system log.
/$SYNC This resets all buffers of the application server
/$CUA This resets the CUA buffer of the application server
/$TAB This resets the TABLE buffers of the application server
/$NAM This resets the nametab buffer of the application server
/$DYNP This resets the screen buffer of the application server
ABAP Tips by: Vijay K.

What is recording?
As the word record implies, it mean recording the keystroke of the user input of a SAP
transaction screen.
Why it is used?
It is normally used for mass update or uploading of data to the system.
What is its need?
It help to save time for the users who need to mass change the system data. For e.g. tax rate
change announce by the country government.
How it is related with bdc?
It is related to bdc because bdc programming allows recording of user inputs.