SAP ABAP/Data Dictionary-Interview Questions With Answers.


Here's a list of Interview Questions With Answers on SAP ABAP Dictionary / Data Dictionary. Click on the question to find out the answer. Also please discuss and share answers or questions if you have any in the comment box.


1) What Is The Difference Between Native SQL & Open SQL?
2) What Is ABAP Dictionary Or Data Dictionary? What Is The Transaction To Access ABAP Dictionary?
3) What Are The Objects Of the ABAP Dictionary Or What Types Of Objects Can Be Created In The ABAP Dictionary?
4) What Are The 3 Types Of Tables In SAP?
5) What Do You Mean By Transparent Tables In SAP ABAP?


6) What Do You Mean By Pooled Tables In SAP ABAP? Also Explain What Do You Mean By Table Pool?
7) What Do You Mean By Cluster Tables In SAP ABAP? Also Explain What Do You Mean By Table Cluster?
8) What Are The Differences Between Transparent Tables, Pooled Tables & Cluster Tables?
9) What Is A View In SAP?
10) What Are The Different Types Of Views In SAP?


11) What Is A Database View?
12) What Is A Projection View?
13) What Is A Maintenance View?
14) What Is A Help View?
15) State The Differences Between Database View & Projection View?


16) What Are The Relational Operations That Can Be Performed On View In SAP?
17) What Is A Delivery Class?
18) What Are The Three Options Of Table View Maintenance While Creating A Table? Differentiate Between Them?
19) What Is The Importance Of Technical Settings While Creating A Table In ABAP Dictionary?
20) What Are Data Classes? What Are The Various Data Classes Available For Selection?




30 SAP ABAP BDC Interview QnA's - Questions With Answers


Here's a list of Interview Questions With Answers on SAP ABAP Batch Data Communication (BDC). Click on the question to find out the answer. Also please discuss and share answers or questions if you have any in the comment box.


1. What Is BDC Programming?
2. What Are The Advantages Of Using BDC As An Interface Technique?
3. What Are The Different Methods Of BDC Available In SAP System?
4. What Are The Fields Present In The BDC Table?
5. What Are The Function Modules Required To Create A Batch Input Session? In What Sequence Are They Called?


6. What Are The Two Methods To Process Batch Input Sessions?
7. For What Purpose RSBDCSUB Program Is Used?
8. Which Transaction Is Used To Process Batch Input Session? What Are The Different Modes Of Processing Batch Input Sessions?
9. What Are The Update Modes Available While Processing Batch Input Sessions? What Is The Difference Between Synchronous & Asynchronous Update?
10. What Is The Importance Of HOLDDATE Parameter In BDC_OPEN_GROUP Function Module?


11. What Is The Importance Of KEEP Parameter In BDC_OPEN_GROUP Function Module?
12. What Is The Importance Of POST_LOCAL Parameter In BDC_INSERT Function Module?
13. What Is The Biggest Disadvantage Of Using Batch Input Session Method?
14. What Is To Be Done When The System Crashes In The Middle Of A BDC Batch Session? What Do You Do With Errors In BDC Batch Session?
15. How Do You Find Screen No., Program Name & Field Names From Any Transaction Code?



16. What Are The Difference Between Call Session Method & Call Transaction Method?
17. On What Basis Do You Decide When To Use Call Session Method & When To Use Call Transaction Method?
18. What Is The Syntax For Call Transaction Statement?
19. What Is The Difference Between The Different Update Modes Available For Call Transaction Statement?
20. How Do You Handle BDC For A Table Control?



21. How To Capture Messages While Processing Call Transaction In BDC?
22. Differentiate Between Synchronous & Asynchronous Update Mode in BDC?
23. Which Of The Following Method Of BDC Allow Multiple Transactions To Be Processed By SAP? Call Transaction Or Call Session?
24. Which Mode Of CALL TRANSACTION Method Allows Background Processing?
25. What Should Be The Step By Step Approach For Writing A BDC Program?


26. What Is CTU_PARAMS In BDC? What Are The Different Components Available In This Structure?
27. Explain A Scenario Where NOBINPT Component OF CTU_PARAMS Can Be Used In BDC?
28. Sometimes BDC Stops Before The End. Also No Error Message Gets Captured. What Might Be The Issue?
29. How To Handle Screen Resolution Issue In BDC?


30 SAP RFC Interview Questions With Answers.

Here we bring to you most frequently asked interview question set with answers on SAP Remote Function Call (RFC). Click on the links and find out the answers.


This compilation of interview questions will help you handle interview questions related to Remote Function Call (RFC) with ease. Please comment below if you find any answer incorrect, or in case if you want to add some more questions, please post your comments.


1. What Do You Mean By RFC? Explain In Detail.
2. What Is An RFC Interface? What are the types of RFC Interface?
3. What Are The Functions Of RFC Interface?
4. Explain A Scenario Where There Will Be A Need Of Using RFC?
5. What Are The Advantages Of RFC – Remote Function Call?


6. For What Purposes Can RFC’s Be Used?
7. State Whether RFC’s Are Client Dependent Or Client Independent Objects?
8. What Are The Types of RFC’s available in SAP System?
9. How Are RFC’s Executed? In Background Or Dialog Work Processes?
10. State Some Factors That Can Increase The Response Time Of An RFC Connection Between Two Systems?


11. What Is Synchronous RFC (sRFC)?
12. What Is Asynchronous RFC (aRFC)?
13. What Is Transactional RFC (tRFC)?
14. What Is Queued RFC (qRFC)?
15. What Is The Disadvantage Of Using Queued RFC (qRFC)?


16. What Is Fast RFC (fRFC)?
17. What Is Parallel Processing In RFC (pRFC)?
18. What Are The Features Of Transactional RFC (tRFC)?
19. What Are the Disadvantages of Transactional RFC (tRFC)?
20. State the difference between Synchronous RFC (sRFC), Asynchronous RFC (aRFC), Transactional RFC (tRFC), Queued RFC (qRFC) and Parallel RFC (pRFC)?


21. What Do You Mean By The Terms RFC Client & RFC Server?
22. What Do You Understand By The Term DESTINATION Used In RFC?
23. How Parameter Handling Is Different For Remote Function Calls & Local Function Calls?
24. Can We Call Remote Function Calls Locally?
25. Can a Server System Call Remote Function Of Client System BACK or When to use DESTINATION ‘BACK’?


26. How Can You Differentiate Types Of RFC By Syntax In An ABAP Program?
27. What Do You Mean By Trusted RFC Connections? What Are The Advantages Of It?
28. What Are The Different Testing Options Available For RFC Connection?
29. How To Debug A Remote Function Call (RFC)?
30. What Are The Basic Transaction Codes Used For RFC's?




Please let us know if the compilation was of any help to you or not. Also please share your interview experience below so that more and more people can benefit from your experience. Always remember "Knowledge grows only when you share it with other people.".

Internal Tables - Introduction & Types Of Internal Tables With Sample Programs.


Submitted By: Shilpa Gunjan (L&T Infotech)

- Internal table is a temporary table created in RAM of Application Server while runtime which can be used to do operation on the data while processing.


- The contents of a database table can be copied to an internal table at runtime, so that the internal table is a snapshot of a database table and can then be used as a working copy of the data within the program. In short, internal tables can be used as containers for volatile data in a program.


- The database tables are been used across so many sap standard programs. We cannot directly play around with them. In order to avoid that as per the requirement of the program we go for the concept of internal tables during the program execution and use the internal tables and take the required data from the database table and then we can always play around with the data in the internal table. It is just like when you go the any supermarket, you take a basket (internal table) and select some items out of the racks of the supermarket (database table) and put into the basket.


- Internal table is a data structure which can be used to store multiple records of data which may or may not be related to a database.


- In short internal tables are a kind of multi-dimensional array where records are saved in a tabular format (rows and columns).


- It’s a temporary table which has no specific primary (unless explicitly defined). It can have any number of duplicate entries.


- Memory Allocation to Internal Tables is done dynamically at run time only. Initial Default Size is 8KB.


- When the program is run, the internal table is allocated a memory during runtime and when the program ends, the allocated memory gets free.


ADVANTAGES:


- By using internal tables we can avoid the possibility of loss of data as in business applications data has more importance.


- By using Internal tables we can improve the performance of the program. Instead of reading the same data repeatedly from the database, we can save the database data in an internal table. So now we have a copy of database data available for processing or any kind of manipulation.


Types of Internal Tables:

Internal tables are of two types: Index tables & Non-Index tables. Index tables are further subdivided into two types: Standard table and Sorted tables.


1) Index Table.

2) Non-Index (Hashed) Table.



RELATED POSTS:

- INTERNAL TABLES - Introduction, Advantages & Types Of Internal Tables.

- STANDARD INTERNAL TABLE (Index Table) - Introduction With Sample Programs.

- SORTED INTERNAL TABLE (Index Table) - Introduction, Advantages & Performance.

- SORTED INTERNAL TABLE With Key Access (Performance) - Sample Program.

- SORTED INTERNAL TABLE With INDEX Access (Performance) - Sample Program.

- HASHED INTERNAL TABLE (Non-Index Table) - Introduction, Advantages & Performance.

- HASHED INTERNAL TABLE - Partial Key Access (Performance) - Sample Program.

- HASHED INTERNAL TABLE - Table's Key Access (Performance) - Sample Program.


Your suggestions and comments are welcome in this section.

Please mail all your contributions to administrator@abapmadeeasy.com We request you to mention your Name, Designation, Experience & Organization you are working for. Your posts will be verified and posted in this site with your name.

14 SAP LSMW Interview Questions With Answers.


Here we bring to you most frequently asked interview question set with answers on SAP Legacy System Migration Workbench (LSMW). Click on the links and find out the answers.

This compilation of interview questions will help you handle interview questions related to Legacy System Migration Workbench (LSMW) with ease. Please comment below if you find any answer incorrect, or in case if you want to add some more questions, please post your comments.



1. What Is LSMW All About?
2. State The Difference Between LSMW and BDC?
3. When Should We Prefer Using LSMW Over Other Legacy Data Transfer Methods?
4. What Are The Advantages Of LSMW?
5. What is The Disadvantages Of LSMW?


6. What Are The Import Methods Available In LSMW? State the Advantage & Disadvantage Of Each Method?
7. What Is Data Migration & What Is The Significance Of Data Migration. State The Most Important Data Migration Tools Available In SAP?
8. What Are The Main Functions Of LSMW?
9. Can LSMW Be Used For Handling Multiple Recordings?
10. Can You Carry Out Validations Or Say Can You Write Your Custom Code In LSMW?

11. Can Data Be Transferred From One R/3 To Another R/3 Via LSMW?
12. Is It Possible To Assign A Transaction Code To a LSMW Object?
13. What Kind Of Data Can Be Migrated Using The LSMW? Is It Certain That The Imported Data Will Be Consistent?
14. How Many Steps Needs To Be Followed While Using LSMW For Data Migartion. Also Mention The Steps Sequentially.


Please let us know if the compilation was of any help to you or not. Also please share your interview experience below so that more and more people can benefit from your experience. Always remember "Knowledge grows only when you share it with other people.".

40 SAP Smartforms Interview Questions With Answers.


Here we bring to you most frequently asked interview question set with answers on SAP Smartforms. Click on the links and find out the answers.


This compilation of interview questions will help you handle interview questions related to smartforms with ease. Please comment below if you find any answer incorrect, or in case if you want to add some more questions, please post your comments.


1. What Are Smart Forms In SAP System?
2. What Are The Differences Between SAP Scripts & Smartforms?
3. How Many Main Windows Can We Have In A Smartform?
4. Is It Mandatory To Have A Main Window In Smartforms?
5. What Are The Types Of Windows Available In Smartforms?


6. Explain The Significance Of Main Window?
7. Explain The Significance Of Secondary Window?
8. Explain The Significance Of Copies Window?
9.  Explain The Significance Of Final Window?
10. What Is The Difference Between Tables & Template Node?


11. How To Insert Or Upload Graphics In Smartforms?
12. Can You Force A Page Break Within Table Loop In Smart Forms? If Yes, How?
13. How Do You Create & Maintain Font Style & Font Size Used In Smartforms In SAP?
14. Why SAP Scripts Are Client Dependent & Smartforms Are Client Independent?
15. A SAP R/3 System Has 2 Clients 100 & 110. You Create An SAP Script Z_Script & A Smartform Z_Smartform In Client 100. Will Both Z_Script & Z_Smartform Be Available In Client 110 As Well?


16. How Do You Find The Name Of The Function Module For A Smartform? When Is This Function Module Created?
17. You Have Created A Smartform In Development Server. Then You Transported The Smartform To Production Server. Will The Name Of The Function Module Be Same In Both The Servers?
18. State The Difference Between Form Interface & Global Definitions In Global Settings Of Smartforms?
19. In A Certain Smartform, For Two Differently Configured Printers, There Seem To Be A Difference In The Output Of Characters Per Inch (The Distance Between Characters Which Gives A Layout Problem - Text In Two Lines Instead Of One.
20. How Can You Convert Smartforms Output To PDF?


21. How Will You Print On Both Sided Of A Smartform?
22. How Can One Insert Symbols In Smartforms?
23. How Can I Make The Smartforms To Choose A Printer Name By Default?
24. How Can I Make The Smartforms To Display A Print Preview By Default Without Displaying The Popup For Print Parameters?
25. How Can I Display The Total Number Of Pages In Smartforms?


26. Sometimes While Using The Variable SFSY-FORMPAGES Or SFSY-PAGE, You Get A Star '*' Instead Of The Total Number Of Pages Or Current Page Number. How To Resolve Such Issues?
27. What Are The Various Text Formatting Options In Smartforms?
28. How To Add A Standard Address In A Smart Form?
29. What Is The Concept Of Page Protection In Smart Forms? How Do You Achieve Page Protection In Smart Forms?
30. Can You Move A Smartform From One SAP System To Another Without Using Transports?


31. Why Pages & Windows Node Are Required Or Mandatory While Creating A Smart Form?
32. How Can You Find The Generated Function Module Name For A Smart Form?
33. How Do You Debug A Smart Form?
34. What Are The Different Auxiliary Nodes Available In Smart Form?
35. What are the Text Types available in Smart Form?


36. What Are Text Modules In Smart Forms? What Are The Advantages Of Using Text Module?
37. What Is The Use Of Command Node In Smart Form?
38. Can One Restrict The Translations Of Smart form To Specific Languages?
39. How Can You Translate A Smart Form From One Language To Another?
40. How Do You Assign Transport Request To Translations For Smart Forms?


41. What Is The Use Of Folder Node In Smart Form?
42. How Do You Use Barcode in Smart Form?


Please let us know if the compilation was of any help to you or not. Also please share your interview experience below so that more and more people can benefit from your experience. Always remember "Knowledge grows only when you share it with other people.".

SAP-Types Of Projects-Interview Questions With Answers.


1) What Are The Different Types Of Projects In SAP?

There are 4 types of projects in SAP. They are:
  • Implementation Project
  • Rollout Project
  • Support Project
  • Upgrade Project

2) What Do You Mean By SAP Implementation Project?

Implementation Project is mostly transforming the whole business process and mapping into SAP.

Rapidly expanding businesses looks for integrating their business operations to improve efficiency, enhance customer satisfaction, enable collaborative working with business partners or consolidate IT infrastructure to reduce costs and improve operations by implementing SAP ERP Systems.


3) What Do You Mean By SAP Rollout Project?

SAP Rollout means reuse of existing implementation cycle and business processes at a new location. SAP Rollout offers the opportunity to implement SAP Solution implemented for one country to be extended to a new country.

Roll out is kind of implementation in the sense that, if an implementation is already done for a country the same settings would be setup for the new country for which the roll out is being carried out. Some minor settings specific to that new country are anyway setup again.

Major part of the already carried out settings are implemented for the new country based on the previously carried out implementation. A roll-out project takes the main customizing/programs done for a company and adapts it to the new company, working only on the small differences between the companies. Example: printouts, logos, company code.

Companies that have already implemented an SAP ERP system but would like to rollout a similar system in other geographic locations in order to integrate business operations, improve efficiency in business, and reduce cost of IT.

In simple words, Rollout is nothing but a reuse of the existing implementation process in the new location and changes the settings according to the location of the implementation.

In case of India additionally you will have to do CIN Settings. Taxation is different for different countries.


4) What Do You Mean By SAP Support Projects?

Once the SAP Implementation is successfully carried out and the Go-Live phase is carried out, the application needs a maintenance/support to resolve the issues/tickets raised by the users when using the application. Ticket is like a request for changes/bug fixing or a request for a new ABAP Developer Role includes bug fixing/change the existing code due to new requirements/build a new code etc. This is Called SAP Support Project.

Support Projects are mostly for longer duration may be 3 to 5 to 7 years usually. These are being driven by various Service Level Agreements (SLAs) between Client and the Supporting Organization. Furthermore, there could be number of people supporting the same client at different shifts / time intervals.


5) What Do You Mean By SAP Upgrade Projects?

SAP Upgrade is nothing but upgrading the SAP Software with a superior version which has got more advantages when compared to the earlier version. Say the current version of SAP implemented if ECC 4.6. Now the client is willing to upgrade it to ECC 6.0. This is done in an Upgrade Project.


6) State The Difference Between SAP Partner & SAP Customer?

SAP Partners are SAP consultancy firms responsible for implementation of SAP whereas SAP Customers are companies where SAP is being implemented.

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.



SAP ABAP BDC-Interview Questions With Answers-5.



21. How To Capture Messages While Processing Call Transaction In BDC?

System messages issued during the transaction can be stored in the as shown below. This internal table must be declared as TYPE TABLE OF BDCMSGCOLL.

DATA: gt_bdcdata TYPE TABLE OF bdcdata WITH HEADER LINE,
gt_msgtab TYPE TABLE OF bdcmsgcoll WITH HEADER LINE.


CALL TRANSACTION 'xxxx' USING gt_bdcdata
MODE 'N''
UPDATE 'S'
MESSAGES INTO gt_msgtab.

Internal table gt_msgtab contains only message no and message Id and not the actual message. In order to extract the exact message FORMAT_MESSAGE function module can be used.

FORMAT_MESSAGE function module gives the actual message based on the message id, message no, and message variables.

LOOP AT gt_messtab.
   CALL FUNCTION 'FORMAT_MESSAGE'
   EXPORTING
      id = gt_bdcdata -msgid
      lang = gt_bdcdata -msgspra
      no = gt_bdcdata -msgnr
      v1 = gt_bdcdata -msgv1
      v2 = gt_bdcdata -msgv2
   IMPORTING
      msg = lv_msg
   EXCEPTIONS
      others = 0.

ENDLOOP.


22. Differentiate Between Synchronous & Asynchronous Update Mode in BDC?

Synchronous update indicates that an update is completed for the transaction before processing returns to the calling program whereas Asynchronous update indicates that processing returns to the calling program immediately after the transaction is completed, even before the update is completed.

Moreover these two updates can be differentiated on two basis: One on Execution Speed and the other on Return Code.

  • Synchronous update is slower than asynchronous update because processing does not return to the calling program until the update is complete (update mode when processing batch input sessions is always synchronous).
  • The return code value i.e. SY-SUBRC value after synchronous update indicates the success or failure of the actual update (0 for success and non-zero value for failure). The return code after asynchronous updating only indicates the success or failure of the transaction, not the update.


23. Which Of The Following Method Of BDC Allow Multiple Transactions To Be Processed By SAP? Call Transaction Or Call Session?

The CALL TRANSACTION method always allows only a single transaction to be processed by SAP.

In Session Method, the BDC_INSERT function module allows multiple transactions to be processed by SAP. However BDC_OPEN_GROUP function module allows only a single session to be opened at a time. It means one BDC session can process multiple transactions.


24. Which Mode Of CALL TRANSACTION Method Allows Background Processing?

No Screen Mode (N) is the only mode that allows background processing.


25. What Should Be The Step By Step Approach For Writing A BDC Program?

The approach for writing a BDC program should be:

  • Go to SHDB and record the transaction for which the data is to be uploaded into the SAP System.
  • Save the recording and Transfer the recording routine to a program.
  • Now modify that program as per your need. Say if you are uploading an excel file available in presentation server then use function modules to upload excel file data into internal table. 
  • Then put a loop on internal table and pass required data to the recording routine and save data into BDCDATA table. 
  • Finally CALL TRANSACTION statement can be used to process the data present in the BDCDATA table.
  • This way data can be uploaded into SAP System.



SAP ABAP BDC-Interview Questions With Answers-4.



16. What Are The Difference Between Call Session Method & Call Transaction Method?

Differences between Call Session Method & Call Transaction Method are:


  • In CALL SESSION method, the SAP database is updated during the processing of the batch input session, not the execution of the BDC program. In CALL TRANSACTION method, the SAP database is updated during the execution of the BDC program.

  • In CALL SESSION method, errors are handled automatically by the system during the processing of the batch input session. Errors are recorded in a log and with the batch input session, error is kept. In CALL TRANSACTION method, errors are not handled automatically by the system. Errors must be handled explicitly in the BDC program.

  • In CALL SESSION method - Asynchronous Processing and Synchronous Database update. During processing, no transaction is started until the previous transaction has been written to the database. In CALL TRANSACTION method - Synchronous Processing and database update can be done either synchronously or asynchronously. One just need to specify the mode in the program.

  • CALL TRANSACTION method is faster than CALL SESSION Method.


17. On What Basis Do You Decide When To Use Call Session Method & When To Use Call Transaction Method?

Both the methods have their own pros and cons. However I would look at the following parameters for deciding upon which method to use.

  • Size Of Data: Call Session method supports both small amount of data as well as large amount of data whereas Call transaction method should exclusively be used only for small amount of data.

  • Type Of processing The User Wants (Foreground/Background): Call Transaction method doesn’t support background processing whereas Call Session method supports both foreground as well as background process.


18. What Is The Syntax For Call Transaction Statement?

To perform batch input with the CALL TRANSACTION statement, the USING addition is required to send the contents of the BDC table to the transaction:

CALL TRANSACTION <transaction code>
USING <bdc table>
[MODE <display mode>]
[UPDATE <update mode>]
[MESSAGES INTO <msg table>] .

  • The <bdc table> must be declared TYPE TABLE OF BDCDATA.
  • The <display mode> determines how the transaction will be processed: ‘A’ (display all), ‘E’ (display errors only), or ‘N’ (no display). The default is ‘A’.
  • The <update mode> determines how database update will occur: ‘S’ (synchronous) or ‘A’ (asynchronous) or L (local update). The default is ‘A’.
  • System messages issued during the transaction can be stored in the <msg table>. This internal table must be declared TYPE TABLE OF BDCMSGCOLL.


19. What Is The Difference Between The Different Update Modes Available For Call Transaction Statement?

There are 3 update modes available for call transaction mode. They are Synchronous (S), Asynchronous (A) and Local (L).

  • Synchronous (S) update indicates that an update is completed for the transaction before processing returns to the calling program.
  • Asynchronous (A) update indicates that processing returns to the calling program immediately after the transaction is completed, even before the update is completed.
  • Local (L) update indicates that updates of the called program are executed in such a way as if the SET UPDATE TASK LOCAL statement had been executed in it.


20. How Do You Handle BDC For A Table Control?

Issue can be resolved by using the BDC OKCODE ‘=P+’ . It’s the BCD_OKCODE for Page down that can be used for scrolling down in table control.

To populate data into a row of internal table, an index is added to the field name to indicate which line or row is to be populated (Line Index).


Take the below example:

When BDCDATA table is being filled with the records, then keep on incrementing the count variable by 1 as it represents the line number of the table control. Concatenate the field name with the count to represent the row and column of the table control.

When the last line of the table control is reached then again reset the value of the count as one and set the command of page up i.e. ‘=P+’ inside the loop only. This is done only for that screen where table control is being used.

LOOP AT ITAB.
   LV_COUNT1 = LV_COUNT1 + 1.
   LV_COUNT = LV_COUNT1.
   CONDENSE LV_COUNT.

   perform bdc_dynpro using 'SAPLZVBAK' '0001'.
*perform bdc_field using 'BDC_CURSOR'
* 'ZVBAK-SPART(01)'.
   CLEAR V_CHAR.
   CONCATENATE ‘ZVBAK-VBELN(‘ L V_COUNT ‘)’ INTO V_CHAR.
   perform bdc_field using V_CHAR
   ITAB-VBELN.

   IF LV_COUNT1 = 10.
       LV_COUNT1 = 1.
       perform bdc_field using 'BDC_OKCODE'
       '=P+'.
   ENDIF.
ENDLOOP.