SAP ABAP BDC-Interview Questions With Answers-6.



26. What Is CTU_PARAMS In BDC? What Are The Different Components Available In This Structure?

CTU_PARAMS is a structure which has components used to control processing of CALL_TRANSACTION. This structure is used to provide display mode, update mode, default size and more control components to the Call Transaction statement.

The different components available in CTU_PARAMS are:

  • DISMODE - Processing Mode
    1. A - All Screens
    2. N - No Screens
    3. E - Only Error Screens

  • UPMODE - Update Mode
    1. S - Synchronous
    2. A - Asynchronous
    3. L - Local

  • CATTMODE - CATT Means Computer Aided Test Tool
    1. Blank - No CATT Mode,
    2. N - CATT Without Single Screen Control
    3. A - CATT With Single Screen Control

  • DEFSIZE - Default Size For Screen resolution. 'X' - Yes, ' ' - No.

  • RACOMMIT - Do not end transaction at COMMIT WORK. 'X' - Yes, ' ' - No.

  • NOBINPT - No batch input session active (that is, SY-BINPT = SPACE). SY-BINPT is always space during a CATT procedure. 'X' - Yes, ' ' - No.

  • NOBIEND – No Batch input session active after end of BDC data 'X' - Yes, ' ' - No.



27. Explain A Scenario Where NOBINPT Component OF CTU_PARAMS Can Be Used In BDC?

The error message that usually comes in status bar while you are running the transaction online might appear in a popup window when you are running that in batch. This will make your fields disabled for input. This OPTIONS addition will remove this problem

Fill the fields of CTU_PARAMS. The field NOBINPT should be set to 'X'. This will set the SY-BINPT to space. So now the transaction which you will be calling will run in online mode.

For Example:

CLEAR lv_options.
lv_options-dismode = 'E'.
lv_options-updmode = 'S'.
lv_options-cattmode = ' '.
lv_options-defsize = ' '.
lv_options-racommit = ' '.
lv_options-nobinpt = 'X'.
lv_options-nobiend = ' '.

CALL TRANSACTION 'BP' USING gt_bdcdata OPTIONS FROM lv_options.


28. Sometimes BDC Stops Before The End. Also No Error Message Gets Captured. What Might Be The Issue?

Mostly when a BDC is run in 'N' mode, the BDC stops at the first COMMIT WORK statement. To resolve the issue set the RACOMMIT component of CTU_PARAMS.

CTU_PARAMS-RACOMMIT = 'X'


29. How To Handle Screen Resolution Issue In BDC?

Generally what happens is in one system, you can see that a table control has 10 rows, but in others systems it might show 20 records in the table control. This happens due to different Screen resolution in two different systems. This can be resolved if we can have a Default size for table while recording. When you set the default size then it will take same screen size (default screen size) in all the systems when you run BDC. This can be resolved by setting default size parameter available in CTU_PARAMS structure and then pass the same to the Call Transaction statement.

Consider the following example:

DATA: lv_options TYPE ctu_params.

lv_options-dismode = ‘N’. " No screen mode
lv_options-upmode = ‘S’. " Synchronous update
lv_options-defsize = ‘X’. " Default Size

CALL TRANSACTION 'VA01' USING gt_bdcdata
                                          OPTIONS FROM lv_options.