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: 

BDC - clarifications

Former Member
0 Kudos

Hi all,

i am techinically know most of the BDC part..but i wonder still i dont have answer for silly below mentioned Qs

1. y BDC is prefer rather than LSMW.

2. in BDC which method u will prefer y.(I know general diff b.w session and call transaction.)

can any body answer this...

Message was edited by: raja gurrala

1 ACCEPTED SOLUTION

Former Member
0 Kudos

Amit,

Thanks for the clarification.

Kindly answer the following so that i can close the thread..

1.What is bapi interms of uploading data?

2.how bapi is different from call transaction/session?

3.what r the advantages of bapi?

4.for uploading master data(ex:customer data) into sap,

which methods you prefer? call

transaction/session/lsmw/bapi? why?

5.tell any 2 standard bapi function modules used for

uploading sales order data?

6.what is exact scenario where we go for direct input method?

Rgds,

Raja.

15 REPLIES 15

Former Member
0 Kudos

Hai Raja

1. lsmw - no programming requried,

whereas in call transaction & bdc session,

programming required.

2. in call transaction,

no session concept

(data is updated AS SOON AS we run the prgoram)

where as in lsmw, and session,

SESSION is generated (in both cases)

Only after when we run this session,

does the data get updated.

3. In call transactin program,

we have to handle error list and take action.

whereas in lsmw, & session,

(since session is run)

flexibility is there to check and control errors.

BDC and LSMW are the two data migration techniques (from legacy to SAP) . BDC technique is usually done by ABAPers. It consists of three methods.

1) Call Dialog Method

2) Session Method

3) Call Transaction Method

In the case of Session Method , a BDC Session is created , which has the data and info to run it in batch mode. When the user runs this session, every transactions are run in batch mode and tables are updated.

WHile in call transaction, no session is created. Instead , a report prog is created , which takes input from the file and calls the transaction in Batch mode.

Call dialog method is similar to call transaction, except that updation is done by the calling program itself.This method is obsolete.

Advantages of Batch Input Method are

1)Can process large data volumes

2) data integrity is maintained

Just check these links.

BDC SESSION

CALL TRANSACTION

CALL DIALOG

What is BDC or batch input

The Batch Input is a SAP technic that allows automating the input in transactions. It lies on a BDC (Batch Data Commands) scenario.

BDC functions:

· BDC_OPEN_GROUP : Opens a session group

· BDC_CLOSE_GROUP : Closes a session

· BDC_INSERT : Insert a BDC scenario in the session

· The ABAP statement "CALL TRANSACTION" is also called to run directly a transaction from its BDC table.

It runs the program RSBDCSUB in order to launch automatically the session. The session management is done through the transaction code SM35.

The object itself is maintanable through the transaction SE24.

BDC methods:

Method

Description

Parameters

OPEN_SESSION

Opens a session

SUBRC (Return Code – 0 OK)

SESSIONNAME (Session to be created)

CLOSE_SESSION

Closes a session

None

RESET_BDCDATA

Resets the BDC Internal Table...

None. Normally, for internal purpose…

BDC_DYNPRO

Handles a new screen

PROGNAME (Name of the program)

DYNPRONR (Screen Number)

BDC_FIELD

Puts a value on the screen

FIELDNAME (Name of the field)

FIELDVALUE (Value to be passed)

CONSTRUCTOR

Constructor - Initializes NO_DATA

NODATA (No data character). The constructor is called automatically when the object is created.

RUN_SESSION

Launches a session with RSBDCBTC

None

CALL_TRANSACTION

Calls a transaction with the current BDC Data

MODE (Display Mode)

UPDATE (Update Mode)

TCODE (Transaction to be called)

BDC_INSERT

Inserts the BDC scenario in the session

TCODE (Transaction to be called)

BDC techniques used in programs:

1) Building a BDC table and calling a transaction,

2) Building a session and a set of BDC scenarios and keeping the session available in SM35,

3) Building a session and lauching the transaction right after closing the session.

-

-


BDC using Call Transaction

BDC using Call transaction involves calling an SAP transaction in back ground from within the ABAP

program. The process involves building an Internal BDC table containing the screen information needed to

execute the required transaction and then passing this to the Call transaction command (See code example).

The full procedure for creating a BDC program is as follows:

-

-


What is the difference between batch input and call transaction in BDC?

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

-

-


BATINPUT/DIRECT INPUT

-

-


A: Batch-inputs can not be used to fill the "delivery due list" screen because it is not a dynpro. This is a standard SAP report. A SAP report (check with "System -> Status") may be called using SUBMIT sentence with the appropriate options . It is preferred to call a report than create a Batch-input program.

GO THROUGH THIS LINK

http://www.guidancetech.com/people/holland/sap/abap/zzsni001.htm

The LSM Workbench is an SAP R/3 based tool that supports the one-time or periodic transfer of data from non-SAP systems ("legacy systems") to SAP systems.

The LSM Workbench helps you to organize your data migration project and guides you through the process by using a clear sequence of steps.

The most common conversion rules are predefined. Reusable conversion rules assure consistent data conversion for different data objects.

LSMW vs DX Workbench

The LSM Workbench covers the following steps:

Read the legacy data from one or several files (e.g. spreadsheet tables, sequential files).

Convert the data from source format to target format.

Import the data using standard interfaces (Batch Input, Direct Input, BAPI, IDoc).

Experiences made in successful implementation projects have shown that using the LSM Workbench significantly contributes to accelerating data migration.

SAP provides this tool along with documentation to customers and partners free of charge.

Users of the LSM Workbench receive the usual support via SAP Net - R/3 Frontend (component BC-SRV-DX-LSM).

Releases:

Version 1.7.2 of the LSM Workbench ("LSMW 1.7.2") available

Attention : LSMW 1.7.2 requires an SAP R/3 system with SAP R/3 4.0 or SAP R/3 4.5.

Version 1.8.0 of the LSM Workbench (1.21mb) ("LSMW 1.8.0") available

Attention : LSMW 1.8.0 requires an SAP R/3 system with SAP R/3 4.6.

Version 3.0 of the LSM Workbench (1.89mb) ("LSMW 3.0") available for Web Application Server 6.10

Attention : LSMW 3.0 requires a SAP WAS 6.10. Functionality of version 1.7.2 and 3.0 are identical !

Version 4.0 of the LSM Workbench ("LSMW 4.0") integrated in Web Application Server 6.20

Attention : LSMW 4.0 is an integrated part of SAP WAS 6.20.

Thanks & regards

Sreenivasulu P

former_member188685
Active Contributor
0 Kudos

<i>1. y BDC is prefer rather than LSMW.</i>

not always...., incase of enjoy transaction you need to go for LSMW/BAPI/Direct Input Programs other than BDC.

<i>2. in BDC which method u will prefer y.(I know general diff b.w session and call transaction.)</i>

it depends on data

if data is large then i will prefer session, rather than call transaction.

Regards

vijay

Former Member
0 Kudos

Hi raja,

1. y BDC is prefer rather than LSMW.

It is preferred most in cases where

there is table control.

BCOS in table control we have to

use fieldname(1)

fieldname(2)

2.

in BDC which method u will prefer y.(I know general diff b.w session and call transaction.)

We will prefer SESSION method bcos.

a) it provides automatic error handling

b) we can update the database, at our own time

c) we can look for error logs

regards,

amit m.

0 Kudos

Hi again,

1. TAble control.

When there is a screen having table control,

doing BDC of it is little tricky.

2. The field are accessed using

field name

but the POSITION of the row is very important.

and hence, row number is mentioned as

fieldname(1)

fieldname(2)

Simply fieldname will not work , we have to use

fieldname(1) = for 1st row

fieldname(2) = for 2nd row.

3. This is directly not supported in LSMW.

4. Hence, BDC program is created.

5. BAPI

There are some transactions, called as ENJOY Transactions,

which use ACTIVEX controls like data grid,

tree control etc,

6. Such controls do not support BDC,

bcos such controls are created on front-end computer.

7. In such cases, there are BAPI

(nothing but RFC Enabled Function Modules )

which server the purpose of putting data

into the required transaction.

regards,

amit m.

Former Member
0 Kudos

Hi,

In Turn LSMW uses BDC's inside for their internal usage...

Secondly u are not free to code any enhancements in LSMW, but as far as bdc's are concerned u can play around with it more easily and seriously.

In BDC for mass tranfer of data Call by Session is useful as regards with their capability of continuing from the point of error.

Practically for less then 10-15 transactions call by transaction is faster and simpler. For using call by transaction with bulk data the errors handling needs to be taken care.

I think this would answer ur questions.

Regards,

Abhishek

Former Member
0 Kudos

Vijay,

what is enjoy transaction? any example?

amit,

please explain ur answer for the 1st Q, as i dont have much knowledge on LSMW.

regards,

Raja.

0 Kudos

Hi,

enjoy transactions ... they all use Containers and controls like Active X controls. they don't support BDC's. and take examples VLO2N,VL01N,VL03N, all most all transactions which ended up with xxxxN are enjoy transactions.

regards

vijay

Former Member
0 Kudos

HI

GOOD

1- WHY BDC IS PREFER RATHER THAN LSMW

THIS IS ACTUCALLY A VERY COMPLEX QUESTION AND ITS ALL DEPENDS UPON THE REQUIREMENT EACH AND EVERY THING HAVING SOME POSITIVE AND NEGATIVE POINTS.

QUESTIONS AND ANSWERS OF BDC AND LSMW

-


QUESTIONS=>

BDC & LSMW

What is BDC ?

What is call transaction method ? what is the

syntax/procedure?

What is session method and what is the

syntax/procedure?

Difference between call transaction & session method?

which of these methods can be best used in background

process?

What is direct input method?

How LSMW is advantageous than normal BDC?

what are the steps in lsmw?

IN LSMW can you use BAPI, ?

Can you call a bdc from a report program?

what is the difference between synchronus &

asynchronus methods?

call transaction uses synchronus or synchronus method?

session method uses synchronus or synchronus method?

What is bapi?

how bapi is different from call transaction/session?

what r the advantages of bapi?

for uploading master data(ex:customer data) into sap,

which methods you prefer? call

transaction/session/lsmw/bapi? why?

tell any 2 standard bapi function modules used for

uploading sales order data?

-


FOR BDC GO THROUGH THIS LINK

http://www.sappoint.com/abap/bdcconcept.pdf

FOR LSMW GO THROUGH THE FOLLOWING DOCUMENT

http://72.14.203.104/search?q=cache:-DE9K5Tj0j8J:www.scmexpertonline.com/downloads/SCM_LSMW_StepsOnW...LSMW,SAP&hl=en&gl=in&ct=clnk&cd=3

IN BDC YOU CAN PREFER ANY KIND OF METHOD THAT MAY BE CALL TRANSACTION OR BDC METHOD AND AGAIN I WOULD SAY IT ALL DEPENDS UPON THE REQUIREMENTS.

THANKS

MRUTYUN

Former Member
0 Kudos

Hi Mrutyun,

cud u plz me clarify me BAPI Qs in BDC scenario as i've no idea...

i wud appreciate ur help to know in depth abt BDC & LSMW..

Thanks,

Raja.

Former Member
0 Kudos

Amit,

Thanks for the clarification.

Kindly answer the following so that i can close the thread..

1.What is bapi interms of uploading data?

2.how bapi is different from call transaction/session?

3.what r the advantages of bapi?

4.for uploading master data(ex:customer data) into sap,

which methods you prefer? call

transaction/session/lsmw/bapi? why?

5.tell any 2 standard bapi function modules used for

uploading sales order data?

6.what is exact scenario where we go for direct input method?

Rgds,

Raja.

0 Kudos

Hi again,

1. What is bapi interms of uploading data?

BAPI is just a Function module

where in there are some import parameters and tables.

We pass the data to it, and it POSTS the

data in the system, with all validations.

If some errors/warnings are there,

it returns the same in an internal table,

and does not post the data.

2. how bapi is different from call transaction/session?

In call transaction/session

we have to do RECORDING, of screens,

one by one and in sequence.

But in BAPI, since it is an FM,

We have to just provide the data for input,

and the rest it takes care of.

(we dont have to worry for screen field names,

okcodes and the sequences)

3. what r the advantages of bapi?

a) can be used for Enjoy transactions (if available)

b) No hassle of recording and noting down the screen field names

c) In future if the trnasaction screens and their

sequence changes, then our bdc program may not work.

But BAPI will work bcos SAP takes the guarantee

of making the BAPIs consistent.,

4. for uploading master data(ex:customer data) into sap,

which methods you prefer? call

transaction/session/lsmw/bapi? why?

I will prefer these kinds of methods,

in this order of preferences.

a) LSMW (no abap coding required)

b) BAPI ( simple to use)

c) session (error handling is automatic)

d) call transaction (least preferred)

5 .tell any 2 standard bapi function modules used for

uploading sales order data?

a) BAPI_SALESORDER_CREATEFROMDAT1

b) BAPI_SALESORDER_CHANGE

6. what is exact scenario where we go for direct input method

When bapi not lsmw is available.

regards,

amit m.

Former Member
0 Kudos

Hi Amit,

Thanks much for excellent clarification.

just come again for the following i cud not get properly from ur answer..

<b>6. what is exact scenario where we go for direct input method

<b>

When bapi not lsmw is available.</b></b>

Rgds,

Raja.

Message was edited by: raja gurrala

0 Kudos

Hi again,

1. By direct input method, what do u mean?

regards,

amit .m

Former Member
0 Kudos

Hi Amit,

Just i know there are some standard program thru which we can upload data ( Direct input method) like RMDATIND for material upload..

So i wud like know what is the particular situaion we go for direct input method..

Hope i am clear now..

Rgds,

Raja

0 Kudos

Hi again,

1. Such programs are usually for

simple MASTER entry screens,

and not for transaction data.

2. like vendor master, customer master, account master etc.

3. Such master data, does not involve

much IFS and BUTS,

so we can go for it.

4. But it will have pre-defined format

for uploading of data file.

5. If the requirement is simple,

one can obviously go for direct input programs,

as u suggested.

regards,

amit m.