Top 33 Sap Bdc Interview Questions You Must Prepare 07.Dec.2023

Yes, user can create background job scheduling in two ways.

  1. By calling the executable program RSBDCSUB
  2. Transaction Code SM37

  1. Create recording
  2. Transfer the data from legacy system to internal term
  3. From internal table transfer the data to BDC structure
  4. Create session or use call transaction method to update data to database table.

Calltransaction update types:update types : S /A/LS-SYNCHRONOUSA-ASYNCHRONOUSL-LOCAL MEMORYsynchronous mode is waiting for commit work and asynchronous is not waiting for commit work.

you should Write BDC_Insert Function module Twice. Remaining Function modules like BDC_group_open and BDC_close_group should be write once there...you can pass two or more transaction code in BDC_insert function module.

Go to se11 and enter bdcmsgcoll in database table filed and click on display it will displayed all the fields that are existing in the bdcmsgcall structure.

  1. Declare it_bdcmsgcoll type bdcmsgcoll.
  2. Declare to hold messages like Message (100) and w_msg TYPE bdcmsgcoll,
  3.  Call transaction like below
    CALL TRANSACTION MM01 USING IT_BDCDATA UPDATE S MESSAGES INTO IT_BDCMSGCOLL.
  4. IF SY-SUBRC <> @
  5. loop at it_bdcmsgcoll into wa_bdcmsgcoll where w_msg = E;.
    CALL FUNCTION MESSAGE_TEXT_BUILD
    EXPORTING
    msgid = wa_bdcmsgcoll-msgid
    msgnr = wa_bdcmsgcoll-msgnr
    msgv1 = wa_bdcmsgcoll-msgv1
    msgv2 = wa_bdcmsgcoll-msgv2
    msgv3 = wa_bdcmsgcoll-msgv3
    msgv4 = wa_bdcmsgcoll-msgv4
    IMPORTING
    message_text_output = w_message.
  6. FM will genrate meaningful Error Discription :w_message.

We can handle table control using line index , 

Line index indicates which line of Table control is to be use for BDC transaction,

Ex -

perform bdc_field using 'RC29K-AUSKZ(01)'

indicates 1st line of table control is going to be used for transaction which is Line index of Table Control 

If you want to do FICO testing, you need to know the FICO process in SAP and also need to be familiar with the T-Codes and their functionality. A bit of Configuration knowledge is also required to test FICO.

Tools: LSMW and BDC tools willl be used for data migration and loading the transactional/Master data in SAP.

In Session method, in SM35 when you process the batch, you need to select the radio button Background, so it will run in background. In call transaction you need to mention the Mode value as N (no screen), so that it will run in background.

BDC is used to transfer the data from legacy system to SAP system & vice versa...

We can send the files from SAP to legacy system thru datasets (open dataset for output...) & GUI_download (F'n Module)..

Using function module UPLOAD or WS_UPLOAD or GUI_UPLOAD, but we need to give file type as 'wxi'. OR use function module : alsm_excel_to_internaltable.

For up loading?text file we use the pre-defined FM gui_upload. in that FM we have the parameter has_field_seperator, for that we assign the default delimiter 'x'.

?????????? HAS_FIELD_SEPERATOR = 'X'

'X' can provide the What ever delimiter we used in flat file for seperation.

By defining the view index as like as table control Index value. Suppose if view is in 9th position value, then assign this value to index .

In session method the system automatically handled the error.goto sm35select the session name ,then select the analysis tab button in the top after that select the Log created, Here we can see the error record.

Call trasaction method trasfers non sap data into sap immediately after completion of BDC, whereas session method creates the session and transfers data when user seesions it. It tranfers data one by one whereas trasaction method transfers data all together.

The diffrence between WS_Upload and Upload is when you use function Upload it prompts for a dailog box where in you need to key in the file location. Where as in case of WS_Upload you specify the file location in the function input parameters itself.

BDC - Batch data communication in which there are 2 processes

  1. in bound
  2. outbound

RFC - remote fucntion call(or) calling

BAPI's are the remote enabled Function modules which are defined in the Business Object Repository (BOR) as the methods of the business objects.I can say BAPI is the subset of RFC. RFC connects to the other system via BAPI and vice versa.

idoc is carry data from one server to other server,bapi can be used to update the data base table with legacy system data.

Steps to create manual BDC session

  1. Use BDC_OPEN_GROUP to open the session
  2. loop on the internal table which you will use in transaction , stps of BDC transaction recording
    Use BDC_INSERT to insert 1 transaction in Session
    endloop
  3. Use BDC_CLOSE_GROUP to close the session .

For tab control we have to use concatenate options in your coding.

Yeah that table control is same as that used in module pool here we do recording

DATA  w_file TYPE string.
* Convert the file path into string
  w_file = p_input.
* Internal Table should have same field sequence as EXL File.
  CLEAR   t_upload.
  REFRESH t_upload.
* Call function to upload the data into internal table
  CALL FUNCTION 'GUI_UPLOAD'
    EXPORTING
      filename                = w_file
      filetype                = 'ASC'
      has_field_separator     = 'X'
    TABLES
      data_tab                = t_upload
    EXCEPTIONS
      file_open_error         = 1
      file_read_error         = 2
      no_batch                = 3
      gui_refuse_filetransfer = 4
      invalid_type            = 5
      no_authority            = 6
      unknown_error           = 7
      bad_data_format         = 8
      header_not_allowed      = 9
      separator_not_allowed   = 10
      header_too_long         = 11
      unknown_dp_error        = 12
      access_denied           = 13
      dp_out_of_memory        = 14
      disk_full               = 15
      dp_timeout              = 16
      OTHERS                  = 17.
  IF sy-subrc NE 0.
*    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
*            WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ELSE.
*   Delete the first row of heading from the uploaded table
    DELETE t_upload INDEX 1.
  ENDIF.       " IF sy-subrc EQ 0.

We can use session method logfile in call transaction.

  1. We have to send error records in to one internal table .
  2. Next for that itab u can use session method .
  3. with this u will get session method log file in call tran.

Lsmw is one time requirement call tr. doesn't have log file. we have to maintain explicitly

In the function module t-code here mention transaction code, and dynprotab here mentioning internal table name ,calling no of times a FM and assing TCODE and INTERNALTABLENAME