what is the basic difference between ecc 6

44
What is the basic difference between ECC 6.0 and NETWEAVER 7.1. 1. When using Open SQL statements in an ABAP/4 program, you must ensure the following. a) The database system being addressed must be supported by SAP. b) The database tables being addressed must be defined in the ABAP/4 dictionary. c) Both a and b d) None Ans. c _________________________________________________________________ ___________ 2. Which of the following statements are correct? a) A database interface translates SAP’s Open SQL statements into SQL commands specific to the database in use. Native SQL statements access the database directly. b) When you use Native SQL, the addressed database tables do not have to be known to the ABAP/4 dictionary. In Open SQL, the addressed database tables must be defined in the ABAP/4 dictionary. c) There is automatic client handling in Native SQL whereas clients must always be specified in Open SQL. Ans. a,b _________________________________________________________________ ___________ 3. Which of the following are true? a) TABLE is used as a synonym for STANDARD TABLE b) You can only access a hashed table using the generic key operations. Explicit or implicit index operations (such as LOOP ... FROM oe INSERT itab within a LOOP) are not allowed. c) All hashed tables are index tables. d) We have to define the hash procedure explicitly for HASHED TABLE. Ans. a, b _________________________________________________________________ ___________

Upload: rashmitabcet

Post on 28-Mar-2015

143 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: What is the basic difference between ECC 6

What is the basic difference between ECC 6.0 and NETWEAVER 7.1.

1. When using Open SQL statements in an ABAP/4 program, you must ensure the following.a) The database system being addressed must be supported by SAP.b) The database tables being addressed must be defined in the ABAP/4 dictionary.c) Both a and bd) NoneAns. c____________________________________________________________________________

2. Which of the following statements are correct?a) A database interface translates SAP’s Open SQL statements into SQL commands specific to the database in use. Native SQL statements access the database directly.b) When you use Native SQL, the addressed database tables do not have to be known to the ABAP/4 dictionary. In Open SQL, the addressed database tables must be defined in the ABAP/4 dictionary.c) There is automatic client handling in Native SQL whereas clients must always be specified in Open SQL.Ans. a,b____________________________________________________________________________

3. Which of the following are true?a) TABLE is used as a synonym for STANDARD TABLE b) You can only access a hashed table using the generic key operations. Explicit or implicit index operations (such as LOOP ... FROM oe INSERT itab within a LOOP) are not allowed.c) All hashed tables are index tables.d) We have to define the hash procedure explicitly for HASHED TABLE.Ans. a, b____________________________________________________________________________

4. Can a transparent table exist in data dictionary but not in the database physically? a) Trueb) FalseAns. b_____________________________________________________________________________

5. Can you create a table with fields not referring to data elements?a) Yesb) NoAns. a_____________________________________________________________________________

6. How do you create a batch input session for a transaction?a) ‘Call transaction’ in background mode.b) ‘Call transaction’ in error mode.c) ‘Bdc_insert’ for the transaction.d) None of the above.

Page 2: What is the basic difference between ECC 6

Ans. c____________________________________________________________________________

7. What is the alternative to batch input session?a) Load moduleb) Call transactionc) BAPId) Idoc segmentAns. b____________________________________________________________________________

8. The following are true about ‘EXEC SQL’. a) You can end the Native SQL with a semicolon.b) You can end the Native SQL with a period.c) You cannot perform reliable authorization checks using EXEC SQL.d) Host variables in the Native SQL are identified with a preceding hash (#).Ans. a, c____________________________________________________________________________

9. The following are true about database locking.a) Database systems set physical locks on all lines affected by a database call.b) Read locks prevent the setting of further read locks for the objects in question.c) Read locks prevent other transactions from setting write locks for the objects in question.d) Write locks allow other transactions to set read locks for the objects in question.Ans. a, c____________________________________________________________________________

10. What are field symbols? a) Field symbols are like pointers in C that can point to any data object in ABAP/4 and to structures defined in ABAP/4 dictionary.b) Field symbols have to be created with type specifications only.c) You cannot assign one field symbol to another.d) All operations you have programmed with the field symbol are carried out with the assigned field.Ans. a, d____________________________________________________________________________

11. EXTRACT statement a) The first EXTRACT statement extracts the first extract record.b) The first EXTRACT statement creates the extract dataset and adds the first extract record.c) Each extract record contains, if specified, the fields of the field group.d) Each extract record contains, if specified, the fields of the field symbol.Ans. b, c____________________________________________________________________________

12. You cannot assign a local data object defined in a subroutine or function module to a field

Page 3: What is the basic difference between ECC 6

group. a) Trueb) FalseAns. a____________________________________________________________________________

13. Which of the following are true?a) COLLECT can only be used with STANDARD TABLE.b) To use COLLECT, the internal table should be derived from a database table with an explicit key.c) If the system finds a numeric component, that is not part of the key, the numeric fields that are not part of the table key (see ABAP number types) are added to the sum total of the existing entries. If it does not find an entry, control passes on to the next record in the internal table.d) If the system finds a numeric component, that is not part of the key, the numeric fields that are not part of the table key (see ABAP number types) are added to the sum total of the existing entries. If it does not find an entry, the system creates a new entry instead.Ans. d_________________________________________________________________________

14. Which of the following are true?a) ABAP queries are created by associating them to a logical database or through a direct read/data retrieval program.b) ABAP queries are created from functional areas that are created from a logical database or through a direct read/retrieval program.c) ABAP queries are created from user groups attached to the functional areas that are created from a logical database or through a direct read/retrieval program.d) ABAP queries are created through the regular report program.Ans. c____________________________________________________________________________

15. A logical unit of work (LUW or transaction) begins a) Each time you start a transaction.b) Each time you end a transaction.c) When the database changes of the previous LUW have been confirmed (database commit).d) Before the database changes of the previous LUW have been cancelled (database rollback).Ans. a, d.____________________________________________________________________________

16. A database commit is triggered bya) ABAP/4 command COMMIT WORK.b) CALL SCREEN, CALL DIALOG.c) A Remote Function Calld) CALL TRANSACTIONAns. a, b, c, d____________________________________________________________________________

Page 4: What is the basic difference between ECC 6

17. The following are true about SAPscript control commands. a) If a control command is unknown or it contains syntax errors, the line containing it will be printed out as it is.b) If a control command is unknown or it contains syntax errors, the line containing it will be treated as a comment line.c) A maximum of one control command may appear in each line.d) A maximum of six control commands may appear in each line.Ans. b, c____________________________________________________________________________

18. To output SAPscript layout sets, in the print programa) You must always start the output with OPEN_FORM and end it with CLOSE_FORM.b) Within one transaction, you can use only one OPEN_FORM and CLOSE_FORM to open and close a layout set.c) WRITE_FORM should be used within an OPEN_FORM and CLOSE_FORM.d) WRITE_FORM can be used without an OPEN_FORM and CLOSE_FORM.Ans. a, c____________________________________________________________________________

19. The transaction CMOD and SMOD area) Used to create enhancements to standard SAP programs.b) Used to create enhancements to ABAP queries.c) Used to create the user exits, menu exits and screen exits.d) Used to modify the standard function groups.Ans. a, c____________________________________________________________________________

20. Which of the following are tools to report data in ABAP?e) ALVf) ALEg) LSMWh) SmartForms

Ans: a____________________________________________________________________________

21. ABAP Query tool is used to:a) Enquire about a running-program statusb) Automatically generate code for reportingc) Perform database operations for user-written programsd) None of the above

Ans: b.____________________________________________________________________________

22. In ABAP Query tool...

Page 5: What is the basic difference between ECC 6

e) Each user can be assigned to several user-groupsf) Each user can be assigned to several functional areasg) Each functional area can be assigned to several user-groupsh) One user can be assigned only to one user-group.

Ans: a, b, c____________________________________________________________________________

23. Logical databases must be used to create an ABAP Querya) Trueb) False

Ans: b____________________________________________________________________________

24. In a BDC program, how would you handle errored records? Would you…a) Rerun the program b) Report the errored recordsc) Generate a batch-input session with errored recordsd) Create an output file, to be run again after corrections

Ans: b, c, d____________________________________________________________________________

25. What are IDocs?a) Documentation of executable programsb) Documents used for data-transport between SAP and non-SAP s/w.c) Documents used for data-transport between two different SAP systemsd) Documents used for one-time data-migration activities.

Ans: b, c____________________________________________________________________________

26. For transportation of data from a presentation server into SAP, the function module used isa) UPLOADb) WS_UPLOADc) FILE_UPLOADd) DATA_UPLOAD

Ans: a, b____________________________________________________________________________

27. For one-time high volume data-uploads into SAP from non-reliable systems, the following are generally used:a) BDCb) LSMW

Page 6: What is the basic difference between ECC 6

c) Direct table updated) Idocs

Ans: a, b____________________________________________________________________________

28. In an ABAP program, the INITIALIZATION event is invokeda) Before the AT-SELECTION-SCREEN eventb) After the AT-SELECTION-SCREEN eventc) Could be either wayd) Cannot be predicted

Ans: a____________________________________________________________________________

29. The statement to check whether an internal table itab_test has no records, is:IF itab_test is initial.a) TRUEb) FALSE

Ans: b.____________________________________________________________________________

30. The statement used to clear all the contents of an internal table is:a) CLEAR itab.b) REFRESH itab.c) FREE itab.d) DELETE itab.

Ans: b, c____________________________________________________________________________

31. The AT-SELECTION-SCREEN event is triggered when…a) ENTER key is hit on the selection-screenb) F8 key is hit on the selection-screenc) Any field on selection-screen is populatedd) F4 key is hit on the selection-screen 

Ans: a, b____________________________________________________________________________

32. What is the transaction-code for viewing batch-runs of a program?a) SE37b) SM37c) SM35d) SM30

Page 7: What is the basic difference between ECC 6

Ans: b____________________________________________________________________________

33. SY-BATCH can be used to determine whether a program is being run in batch-mode, within the AT-SELECTION-SCREEN event.a) TRUEb) FALSE

Ans: b____________________________________________________________________________

34. The following statements will clear the header-line of an internal table:a) DELETE ITAB.b) FREE ITAB.c) REFRESH ITAB.d) CLEAR ITAB.

Ans: d____________________________________________________________________________

35. The SAP Logon password is always case-insensitive.a) TRUEb) FALSE

Ans: b 

36. Data: BEGIN OF ITAB OCCURS 0,FIELD1(10),FIELD2(10),END OF ITAB.

DO 20 TIMES.ITAB-FIELD1 = ‘Field1’.ITAB-FIELD2 = ‘Field2’.ENDDO.a) The internal table has 20 entries.b) The internal table has one entry.c) The internal table has no entry.d) Unpredictable.

Ans: c____________________________________________________________________________

37. READ TABLE ITAB_TEST WITH KEY VBELN = k_vbeln. 

Page 8: What is the basic difference between ECC 6

If multiple records in table ITAB satisfy the condition, then a) All records are fetchedb) The last record is fetchedc) The first record is fetchedd) Compilation error

Ans: c____________________________________________________________________________

38. If ITAB has 1000 entries, and DBTAB is a large table, which is better in terms of performance?i) LOOP AT ITAB.SELECT * INTO ITAB_2 FROM DBTAB WHEREKEY1 = ITAB-KEY1.APPEND ITAB_2.ENDSELECT.ENDLOOP.ii) LOOP AT ITAB.SELECT * INTO TABLE ITAB_2 FROM DBTAB WHEREKEY1 = ITAB-KEY1.ENDLOOP.iii) SELECT * INTO TABLE ITAB_2 FROM DBTAB FOR ALL ENTRIES IN ITAB WHEREKEY1 = ITAB-KEY1.a) (i) is better than (ii), and (ii) is better than (iii).b) (ii) is better than (iii), and (iii) is better than (i).c) (iii) is better than (i) and (i) is better than (ii).d) (iii) is better than (ii) and (ii) is better than (i).

Ans: d____________________________________________________________________________

39. DATA: BEGIN OF ITAB OCCURS 0,Fld1 (1),Fld2 (1),Fld3 (1),END OF ITAB.

ITAB has 5 records – [ (1,1,1), (1,1,2), (1,2, 2), (2,2,2), (2,2,3) ].

The code segment:LOOP AT ITAB.AT NEW fld3.WRITE fld3.ENDAT.

Page 9: What is the basic difference between ECC 6

ENDLOOP.Produces the output:a) 1 2 2 2 3b) 1 2 3c) 1 1 2 2 2d) 1 1 1 2 2

Ans: a____________________________________________________________________________

40. TYPES: BEGIN OF TYPE1,FLD1,FLD2,FLD3,END OF TYPE1.DATA: ITAB1 TYPE STANDARD TABLE OF TYPE1.

ITAB1-FLD1 = ‘a’.ITAB1-FLD2 = ‘b’.ITAB1-FLD3 = ‘c’.APPEND ITAB1.

a) The table has one record, with values (a, b, c ).b) The table has no records.c) Compilation error due to method of declaration of type.d) Compilation error due to method of declaration of table.

Ans: d____________________________________________________________________________

41. The fastest way to read a value in an internal table is to:a) Specify key, and do a binary searchb) Specify the table-keysc) Directly specify the index valued) Use a work-area with same structure as the internal table.

Ans: c____________________________________________________________________________

42. If COLLECT is used on an internal table, which has a non-key character field,a) The first record’s value is used in the collected version.b) The last record’s value is used in the collected version.c) Compilation errord) Cannot be predicted

Ans: c

Page 10: What is the basic difference between ECC 6

____________________________________________________________________________

43. Which is the correct syntax for sorting an internal table?a) SORT ITAB USING key1 key2.b) SORT ITAB BY key1 key2.c) SORT ITAB WITH key1 key2.d) SORT ITAB key1 key2.

Ans: b____________________________________________________________________________

44. If we need to fetch all database entries corresponding to a given key, X records at a time, the syntax to be used is:a) SELECT…PACKET SIZE X….b) SELECT…PACKAGE SIZE X…c) SELECT…UPTO X RECORDS….d) This facility is not available in ABAP.

Ans: b____________________________________________________________________________

45. LOOP AT ITAB_DTL_1.COLLECT ITAB_DTL_1 INTO ITAB_FINAL.ENDLOOP.If the tables contain character fields, which table should be declared with the keys Explicitly specified?a) ITAB_DTL_1b) ITAB_FINALc) Either one will do.d) Neither needs a key to be specified

Ans: b____________________________________________________________________________

46. The syntax to concatenate a set of values into one variable is:a) CONCATENATE source1, source2 INTO target.b) CONCATENATE source1 source2 INTO target.c) CONCATENATE source1 and source2 INTO target.d) None of the above.

Ans: b____________________________________________________________________________

47. On the selection-screen, if, while using SELECT-OPTIONS, we specify NO INTERVALS,we can guarantee that the user will not be able to enter a range of values.a) TRUE

Page 11: What is the basic difference between ECC 6

b) FALSE

Ans: b____________________________________________________________________________

48. ABAP programmers can create their own data types?a) YESb) NO

Ans: a____________________________________________________________________________

49. MOVE can be used to copy:a) One field’s contents to another fieldb) One structure’s contents to another compatible structurec) One table’s contents to another compatible tabled) A part of one field to another field

Ans: a, b, c, d____________________________________________________________________________

50. PERFORM ROUTINE1 USING val1.…..FORM ROUTINE1 USING temp1.Temp1 = 10.ENDFORM.

Is the value of val1 changed?a) YESb) NO

Ans. a____________________________________________________________________________

51. Within an IF-ENDIF block, a) ELSE must be usedb) ELSEIF must be usedc) If ELSEIF is used, ELSE must be usedd) None of the above

Ans: d____________________________________________________________________________

52. The user-list in a given SAP client can be found using transactiona) STO4b) SE04

Page 12: What is the basic difference between ECC 6

c) SM04d) None of the above

Ans: c____________________________________________________________________________

53. The DESCRIBE statement on internal tables is used to:a) Find the number of lines currently in tableb) Find initial size of the tablec) Find type of the internal tabled) Give the line size, in number of characters, of the table

Ans: a, b, c____________________________________________________________________________

54. Which of the following statements can work without a corresponding END-statement?a) DOb) ATc) IFd) SELECT

Ans: d____________________________________________________________________________

55. In an ABAP program, we can specify a variable to be of HEXADECIMAL type.a) TRUEb) FALSE

Ans: a____________________________________________________________________________

56. In an ABAP program, we can specify a variable to be of OCTAL type.a) TRUEb) FALSE

Ans: b____________________________________________________________________________

57. The default length of a field of type “time”(‘T’) in an ABAP program is:a) 6b) 8c) 14d) 0

Ans: a____________________________________________________________________________

Page 13: What is the basic difference between ECC 6

58. The various numeric types definable in an ABAP program are:a) I, F, P, Nb) I, F, Pc) I, F, Nd) I, P, N

Ans: b____________________________________________________________________________

59. Variables in an ABAP code can be defined as being similar to data-dictionary elements, using:a) LIKEb) FORc) TYPEd) None of the above

Ans: a, b, c____________________________________________________________________________

60. Constants and internal tables are defined using the keywords (respectively):a) CONSTANTS and TABLESb) DATA and DATAc) DATA and TABLESd) CONSTANTS and DATA

Ans: a____________________________________________________________________________

61. There are 8 elementary data-types, and hence, 64 possible conversions. Of these,a) Type D and T cannot be inter-convertedb) None of the other types can be converted into D and T.c) D and T cannot be converted into any other type.d) Only C can convert into D/T and vice-versa.

Ans: a____________________________________________________________________________

62. MOVE f1 TO f2 is equivalent to f2 = f1a) TRUEb) FALSE

Ans: a____________________________________________________________________________

63. If a structure does not contain internal tables as components, we can equate two structures of

Page 14: What is the basic difference between ECC 6

incompatible types.a) TRUEb) FALSE

Ans: a____________________________________________________________________________

64. For an inequality check between two variables, the symbol used is:a) NEb) <>c) ><d) NEQ

Ans: a, b, c

____________________________________________________________________________

65. S1 = ‘ABCAB’.S2 = ‘ABCD ‘.IF S1 CN S2.WRITE ‘a’.ELSE.WRITE ‘b’.ENDIF.Output of above code is:a) ab) bc) Compilation errord) Blank

Ans: b____________________________________________________________________________

66. The statementIF NUM IS BETWEEN 3 AND 7.Is a valid syntax?a) TRUEb) FALSE

Ans: B____________________________________________________________________________

67. Is it possible to call a subroutine of one program from another program? a) Trueb) False

Page 15: What is the basic difference between ECC 6

Ans: A____________________________________________________________________________ 

68. Can ABAP control statements be used within a sap script?a) YESb) NO

Ans: a____________________________________________________________________________ 

69. The presentation server is actually the program named SAPGUI.a) Trueb) False

Ans: a____________________________________________________________________________ 

70. When is Top-of-page event executed

a) Triggered by a New-page statementb) When the First Write Statement of the program is encountered.c) Before outputting the first line on a new page.

Ans: b, c

1. What is full form of BDC Session?Batch Data Communication Session.

2. What are the steps in a BDC session?The first step in a BDC session is to identify the screens of the transaction that the program will process.  Next step is to write a program to build the BDC table that will be used to submit the data to SAP.  The final step is to submit the BDC table to the system in the batch mode or as a single transaction by the CALL TRANSACTION command.

3. How do you find the information on the current screen? STATUS command from any menu.The information on the current screen can be found by SYSTEM

4. How do you save data in BDC tables?The data in BDC tables is saved by using the field name ‘BDC_OKCODE’ and field value of ‘/11’.

5. What is the last entry in all BDC tables?In all BDC tables the last entry is to save the data by using the field name BDC_OKCODE and a field value of ‘/11’.

6. What is a multiple line field?A multiple line field is a special kind of field which allows the user to enter multiple lines of data into it.

7. How do you populate data into a multiple line field?To populate data into a multiple line field, an index is added to the field name to indicate which line is to be populated by the BDC session (Line index).

8. Write the BDC table structure.BDC table structure

Page 16: What is the basic difference between ECC 6

FIELD  TYPE   DESCRIPTIONProgram  CHAR (8)  Program name of transaction.DynPro  CHAR (4)  Screen number of transaction.DynBegin  CHAR (1)  Indicator for new screen.Fnam  CHAR (35)  Name of database field from screen.Fval   CHAR (80)  Value to submit to field.

9. Does the CALL TRANSACTION method allow multiple transactions to be processed by SAP?No.  The CALL TRANSACTION method allows only a single transaction to be processed by SAP.

10. Does the BDC-INSERT function allow multiple transactions to be processed by SAP?Yes.11. What is the syntax for ‘CALL TRANSACTION’?CALL TRANSACTION trans [ using bdctab MODE mode ].Three possible entries are there for MODE.  A - Show all screens.  E - Show only screens with errors.  N - Show no screens.

1. What is a transaction?- A transaction is dialog program that change data objects in a consistant way.

2. What are the requirements a dialog program must fulfill?A dialog program must fulfil the following requirements- a user friendly user interface.- Format and consistancey checks for the data entered by the user.- Easy correction of input errors.- Access to data by  storing it in the data bases.

  3.What are the basic components of dialog program?- Screens (Dynpros)- Each dialog in an SAP system is controlled by dynpros.A dynpros consists of a screen And its flow logic and controls exactly one dialog step.- ABAP/4 module Pool.     Each dynpro refers to exactly one ABAP/4 dialog program .Such a dialog program is also       called a module pool ,since it consists of interactive modules.

4.What is PBO and PAI events?PBO- Process Before Output-It determines the flow logic before displaying the screen.PAI-Process After Input-It determines the flowlogic after the display of the screen and after receiving inputs from the User.

5. What is dynpro?What are its components ?- A dynpro (Dynamic Program) consists of a screen and its flow logic and controls exactly one dialog steps.- The different components of the dynpro are :Flow Logic: calls of the ABAP/4 modules for a screen .Screen layout:Positions of the text ,fields,pushbuttons and so on for a screenScreen Attributes:Number of the screen,number of the subsequent screen,and othersFields attributes :Definition of the attributes of the individual fields on a screen.

6. What is a ABAP/4 module pool?-Each dynpro refers to exactly one ABAP/4 dialog program.Such a dialog program is also calleda module pool ,since it consists on interactive modules.

7..Can we use WRITE statements in screen fields?if not how is data transferred from field data to screen fields?-We cannot write field data to the screen using the WRITE statement.The system instead transfers data by comparing screen fields names with ABAP/4  variable names.If both names are the same,ittransfers screen fields values to ABAP/4 programs fields and Vice Versa.This happens immediately after displaying the screen.

Page 17: What is the basic difference between ECC 6

8.Can we use flow logic control key words in ABAP/4 and vice-versa?- The flow control  of a dynpro consists os a few statements that syntactically ressemble ABAP/4  statements .However ,We cannot use flow control keywords in ABAP/4 and vice-versa.

9.What is GUI status? How to create /Edit GUI status?-A GUI status is a subset of the interface elements used for a certain screen.The status comprisesthose elements that are currently needed by the transaction .The GUI status for a transaction may be composed of the following elements:-Title bar.-Mneu bar.-Application tool bar-Push buttons.

To create and edit GUI status and GUI title,we use the Menu Painter.

10. How does the interection between  the Dynpro and the ABAP/4 Modules takes place?-A transaction is a collection os screens and ABAP/4 routines ,controlled and executed by a Dialog processor.The Dilaog processor processes screen after the screen ,thereby triggering the appropriateABAP/4 processing of each screen .For each screen,the system executes the flow logic that contains the corresponding ABAP/4 processing.The controls passes from screen flow logic to ABAP/4 code and back.

11. How does the Dialog handle user requests?- when an action is performed ,the system triggers the PROCESS AFTER INPUT event.The data passed includes field screen data data entered by the user and a function code. A  functioncode is a technical name that has been allocated in a screen Painter or Menu Painter to a meny entry,a push button,the ENTER key or a function Key of a screen.An internal work field(ok-code)in the PAI module evaluates the function code,and the appropriate action is taken.

12. What is to be defined for a push button fields in the screen attributes?- A function code has to be defined in the screen attributes for the push buttons in a screen.

13. How are the function code handles in Flow Logic?           - When the User selects a function in a transaction ,the system copies the function code into a           specially   designated work field called OK_CODE.This field is Global in ABAP/4 Module Pool.The OK_CODE can then be evaluated in the corresponding PAI module. The function code is always passed in Exactly the same way , regardless of Whether it comes from a screen’s pushbutton,a menu option ,function key or other GUI element.

14.What controls the screen flow?- The SET SCREEN and LEAVE SCREEN statements controls screen flow.

14. The Function code currently active is ascertained by what Variable?- The function code currently active in  a Program can be ascertained from the SY-UCOMM  Variable.

15. The function code currently  active is ascertained by what variable ?- By SY-UCOMM Variable.

16. What are the “field” and “chain” Statements?- The FIELD and CHAIN flow logic statements let you Program Your own checks.FIELD and CHAIN tell the system Which fields you are checking and Whether the System should Perform Checks in the flow logic or call an ABAP/4 Module.

17. What is an “on input filed” statements?- ON INPUTThe ABAP/4 module is called only if a field contains the Value other than the initial Value.This initial Value is determined by the filed’s Dta Type: blanks for character Fields,Zeroes for numerics. If the  user changes the Fields Value back t o its initial value,ON INPUT does not trigger a call.

Page 18: What is the basic difference between ECC 6

18. What is an “on request Field” statement?- ON REQUEST  The ABAP/4 Module is called only if the user has entered the value in the field value since the last screen display .The Value counts as changed Even if the User simply types in the value that was already there .In general ,the ON REQUEST condition is triggered through anyForm of” MANUAL INPUT’.

19. What is an on”*-input filed” statement?ON *-INPUT- The ABAP/4 module is called if the user has entered the “*” in the first  character of the field, and the field has the attribute  *-entry in the screen Painter.You can use this option in Exceptionla cases where you want to check only fields with certain Kinds of Input.

20. What are conditional chain statement?ON CHAIN-INPUT similar to ON INPUT.The ABAP/4 module is called if any one of the fields in the chain contains a value other than its initial value(blank or nulls).ON CHAIN-REQUESTThis condition functions just like ON REQUEST, but the ABAP/4 module is called if any one of the fields in the chain changes value.

21. What is “at exit-command:?The flowlogic Keyword at EXIT-COMMAND is a special addition to the MODULE statement in the Flow Logic .AT EXIT-COMMAND lets you call a module before the system executes the automatic fields checks.

22. Which Function type has to be used for using “at exit-command” ?- To Use AT EXIT – COMMAND ,We must assign a function Type “E” to the relevant function in the MENU Painter OR Screen Painter .

23. What are the different message types available in the ABAP/4 ?- There are 5 types of message types available.- E: ERROR- W-WARNING- I –INFORMATION- A-ABNORMAL TERMINATION.- S-SUCCESS

24. Of the two “ next screen “ attributes the attributes that has more priority is -------------------.Dynamic.

25. Navigation to a subsequent screen can be specified statically/dynamically. (TRUE/FALSE).                  TRUE.

26. Dynamic screen sequence  for a  screen can be set using ------------- and ----------------- commands        Set Screen, Call screen.

27. The commands through Which an ABAP/4 Module can “branch to “ or “call” the next screen are

   1.------------,2--------------,3---------------,4------------.

- Set screen<scr no>,Call screen<scr no> ,Leave screen, Leave to screen <scr no>.

28. What is difference between SET SCREEN and CALL SCREEN ?   - With SET SCREEN the current screen simply specifies the next screen in the chain , control branches to this next screen  as sonn as th e current screen has been processed .Return from next screen to current screen is not

Page 19: What is the basic difference between ECC 6

automatic .It does not interrupt  processing of the current screen.If we want to branch  to the next  screen without finishing  the current one ,use LEAVE SCREEN.

- With CALL SCREEN , the current (calling) chain is suspended , and a next screen (screen chain) is called .The called can then return to the suspended chain with the statement LEAVE SCREEN TO SCREEN 0 .Sometime we might want  to let an user call a pop up screen from the main application screen to let him enter secondary information.After they have completed their enteries, the users should be able to close the popup and return directly to the place where they left off in the main screen.Here comes CALL SCREEN into picture .This statement lets us insert such a sequence intp the current one.

29. Can we specify the next screen number with a variable (*Yes/No)?    - Yes

30. The field SY-DYNR refers to--------------

Number of the current screen.

31. What is dialog Module?- A dialog Module is a callable sequence of screens that does not belong to a particular transaction.Dialog modules have their module pools , and can be called by any transaction.

32. The Syntex used to call a screen as dialog box (pop up)is---------

 CALL SCREEN <screen number.>STARTING AT <start column><start line>ENDING AT <end column> <end line>

33. What is “call mode”?- In the ABAP/4  WORLD each stackable sequence of screens is a “call mode”, This is IMP because of the way u return from the given  sequence .To terminate a call mode and return to a suspended chain set the “next screen” to 0 and leave to it:      LEAVE TO SCREEN 0 or (SET SCREEN 0 and LEAVE SCREEN) .When u return to     the suspended chain execution resumes with the statement  directly following the original CALL SCREEN statement.The original sequence of screens in a transaction (that is , without having stacked any additional call modes),you returned from the transaction altogether.

34. The max number of  calling modes stacked at one time is?- NINE

35. What is LUW  or Data base Transaction ?

- A “LUW”(logical unit of work) is the span of time during which any database updates must be performed in an “all or nothing” manner .Either they are all performed (committed),or they are all thrown  away (rolled back).In the ABAP/4 world , LUWs and - Transactions can have several meanings:

LUW (or “database LUW” or “database transaction”)

This is the set of updates terminated by a database commit. A LUW lasts, at most, from one screen change to the next (because the SAP system triggers database commits automatically at every screen change).

36. What is SAP LUW or Update Transaction?Update transaction (or “SAP LUW”)This is a set of updates terminated by an ABAP/4 commit.  A SAP LUW may last much longer than a database LUW,

Page 20: What is the basic difference between ECC 6

since most update processing extends over multiple transaction screens.  The programmer terminates an update transaction by issuing a COMMIT WORK statement.

37. What happens if only one of the commands SET SCREEN and LEAVE SCREEN is used without using the other?If we use SET SCREEN without LEAVE SCREEN, the program finishes processing for the current screen before branching to <scr no>.  If we use LEAVE SCREEN without a SET SCREEN before it, the current screen process will be terminated and branch directly to the screen specified as the default next-screen in the screen attributes.

38. What is the significance of the screen number ‘0’?In “calling mode”, the special screen number 0 (LEAVE TO SCREEN 0) causes the system to jump back to the previous call level.  That is, if you have called a screen sequence with CALL SCREEN leaving to screen 0 terminates the sequence and returns to the calling screen.  If you have not called a screen sequence, LEAVE TO SCREEN 0 terminates the transaction.

39. What does the ‘SUPPRESS DIALOG’ do?Suppressing of entire screens is possible with this command.  This command allows us to perform screen processing “in the background”.  Suppresing screens is useful when we are branching to list-mode from a transaction dialog step.

40. What is the significance of the memory table ‘SCREEN’?At runtime, attributes for each screen field are stored in the memory table called ‘SCREEN’.  We need not declare this table in our program.  The system maintains the table for us internally and updates it with every screen change.

41. What are the fields in the memory table ‘SCREEN’?Name  Length  Description

NAME  30  Name of the screen fieldGROUP1  3  Field belongs to field group 1GROUP2  3  Field belongs to field group 2GROUP3  3  Field belongs to field group 3GROUP4  3  Field belongs to field group4ACTIVE  1  Field is visible and ready for input.REQUIRED  1  Field input is mandatory.INPUT  1  Field is ready for input.OUTPUT  1  Field is display only.INTENSIFIED 1  Field is highlightedINVISIBLE  1  Field is suppressed.LENGTH  1  Field output length is reduced.DISPLAY_3D 1  Field is displayed with 3D frames.VALUE_HELP 1  Field is displayed with value help.

42. Why grouping of fields is required? What is the max no of modification groups for each field?If the same attribute need to be changed for several fields at the same time these fields can be grouped together.  We can specify up to four modification groups for each field.

43. What are the attributes of a field that can be activated or deactivated during runtime?Input, Output, Mandatory, Active, Highlighted, Invisible.

44. What is a screen group? How it is useful?Screen group is a field in the Screen Attributes of a screen.  Here we can define a string of up to four characters which is available at the screen runtime in the SY-DNGR field.  Rather than maintaining field selection separately for each screen of a program, we can combine logically associated screens together in a screen group.

45. What is a Subscreen? How can we use a Subscreen?A subscreen is an independent screen that is displayed in a n area of another (“main”) screen.  To use a subscreen we must call it in the flow logic (both PBO and PAI) of the main screen.  The CALL SUBSCREEN stratement tells the system to execute the PBO and PAI events for the subscreen as part of the PBO or PAI events of the main screen.  The flow logic of your main program should look as follows:PROCESS BEFORE OUTPUT.CALL SUBSCREEN <area> INCLUDING ‘<program>’ ’<screen>’.

Page 21: What is the basic difference between ECC 6

PROCESS AFTER INPUT.CALL SUBSCREEN <area>.Area is the name of the subscreen area you defined in your main screen.  This name can have up to ten characters.  Program is the name of the program to which the subscreen belongs and screen is the subscreen’s number.

46. What are the restrictions on Subscreens?Subscreens have several restrictions.  They cannot:• Set their own GUI status• Have a named OK code• Call another screen• Contain an AT EXIT-COMMAND module• Support positioning of the cursor.

47. How can we use / display table in a screen?ABAP/4 offers two mechanisms for displaying and using table data in a screen.  These mechanisms are TABLE CONTROLS and STEP LOOPS.

48. What are the differences between TABLE CONTROLS and STEP LOOPS?TABLE CONTROLS are simply enhanced STEP LOOPS that display with the look and feel of a table widget in a desktop application.  But from a programming standpoint, TABLE CONTROLS and STEP LOOPS are almost exactly the same.  One major difference between STEP LOOPS and TABLE CONTROLS is in STEP LOOPS their table rows can span more than one time on the screen.  By contrast the rows in a TABLE CONTROLS  are always single lines, but can be very long.  (Table control rows are scrollable).  The structure of table control is different from step loops.  A step loop, as a screen object, is simply a series of field rows that appear as a repeating block.  A table control, as a screen object consists of: I) table fields (displayed in the screen ) ii) a control structure that governs the table display and what the user can do with it.

49. What are the dynapro keywords?FIELD, MODULE, SELECT, VALUES and CHAIN are the dynapro keywords.

50. Why do we need to code a LOOP statement in both the PBO and PAI events for each table in the screen?We need to code a LOOP statement in both PBO and PAI events for each table in the screen.  This is because the LOOP statement causes the screen fields to be copied back and forth between the ABAP/4 program and the screen field.  For this reason, at least an empty LOOP….ENDLOOP must be there.

51. The field SY-STEPL refers to the index of the screen table row that is currently being processed.  The system variable SY-stepl only has a meaning within the confines of LOOP….ENDLOOP processing.  Outside the loop, it has no valid value.

52. How can we declare a table control in the ABAP/4 program?

Using the syntax controls <table control name> type tableview using screen <scr no>.

53. Differentiate between static and dynamic step loops.Step loops fall into two classes: Static and Dynamic.  Static step loops have a fixed size that cannot be changed at runtime.  Dynamic step loops are variable in size.  If the user re-sizes the window the system automatically increases or decreases the number of step loop blocks displayed.  In any given screen you can define any number of static step loops but only a single dynamic one.

54. What are the two ways of producing a list within a transaction?By submitting a separate report.By using leave to list-processing.

55. What is the use of the statement Leave to List-processing?Leave to List-processing statement is used to produce a list from a module pool.  Leave to list processing statement allows to switch from dialog-mode to list-mode within a dialog program.

Page 22: What is the basic difference between ECC 6

56. When will the current screen processing terminates?A current screen processing terminates when control reaches either a Leave-screen or the end of PAI.

57. How is the command Suppress-Dialog useful?Suppressing entire screens is possible using this command.  This command allows us to perform screen processing “in the background”.  The system carries out all PBO and PAI logic, but does not display the screen to the user.  Suppressing screens is useful when we are branching to list-mode from a transaction dialog step.

58. What happens if we use Leave to list-processing without using Suppress-Dialog?If we don’t use Suppress-Dialog to next screen will be displayed but as empty, when the user presses ENTER, the standard list output is displayed.

59. How the transaction that are programmed by the user can be protected?By implementing an authority check.

60. What are the modes in which any update tasks work?Synchronous and Asynchronous.

61. What is the difference between Synchronous and Asynchronous updates?A program asks the system to perform a certain task, and then either waits or doesn’t wait for the task to finish.  In synchronous processing, the program waits: control returns to the program only when the task has been completed.  In asynchronous processing, the program does not wait: the system returns control after merely logging the request for execution.

62. SAP system configuration incluedes Dialog tasks and Update tasks.63. Dialog-task updates are Synchronous  updates.64. Update –task updates are Asynchronous updates.65. What is the difference between Commit-work and Rollback-Work tasks?Commit-Work statement “performs” many functions relevant to synchronized execution of tasks.  Rollback-work statement “cancels: all reuests relevant to synchronized execution of tasks.

66. What are the different database integrities?• Semantic Integrity.• Relational Integrity.• Primary Key Integrity.• Value Set Integrity.• Foreign Key integrity and• Operational integrity.

67. All SAP Databases are Relational Databases.68. What is SAP locking?It is a mechanism for defining and applying logical locks to database objects.

69. What does a lock object involve?The tables.The lock argument.

70. What are the different kinds of lock modes?Shared lockExclusive lock.Extended exclusive list.

71. How can a lock object be called in the transaction?By calling Enqueue<lock object> and Dequeue<lock object> in the transaction.

72. What are the events by which we can program “help texts” and display “possible value lists”?-PROCESS ON HELP-REQUEST (POH).-PROCESS ON VALUE-REQUEST (POV).

Page 23: What is the basic difference between ECC 6

73. What is a matchcode?A matchcode is an aid to finding records stored in the system whenever an object key is required in an input field but the user only knows other (non-key) information about the object.

74. In what ways we can get the context sensitive F1 help on a field?- Data element documentation.- Data element additional text in screen painter.- Using the process on help request event.

75. What is roll area?A roll area contains the program’s runtime context.  In addition to the runtime stack and other structures, all local variables and any data known to the program are stored here.

76. How does the system handle roll areas for external program components?- Transactions run in their own roll areas.- Reports run in their own roll areas.- Dialog modules run in their own roll areas- Function modules run in the roll area of their callers.

77. Does the external program run in the same SAP LUW as the caller, or in a separate one?- Transactions run with a separate SAP LUW- Reports run with a separate SAP LUW.- Dialog modules run in the same SAP LUW as the caller- Function modules run in the same SAP LUW as the caller.The only exceptions to the above rules are function modules called with IN UPDATE TASK (V2 function only) or IN BACKGROUND TASK (ALE applications).  These always run in their own (separate) update transactions.

78. What are function modules?Function modules are general-purpose library routines that are available system-wide.

79. What are the types of parameters in the function modules?In general, function module can have four types of parameters:- EXPORTING: for passing data to the called function.- IMPORTING: for receiving data returned from the function module.- TABLES: for passing internal tables only, by reference (that is, by address).- CHANGING: for passing parameters to and from the function.

80. What is the difference between Leave Transaction and Call Transaction?In contrast to LEAVE TO TRANSACTION, the CALL TRANSACTION  statement causes the system to start a new SAP LUW.  This second SAP LUW runs parallel to the SAP LUW  for the calling transaction.

81. How can we pass selection and parameter data to a report?There are three options for passing selection and parameter data to the report.- Using SUBMIT…WITH- Using a report variant.- Using a range table.

82. How to send a report to the printer instead of displaying it on the screen?We can send a report to the printer instead of diplaying it on the screen.  To do this, use the keywords TO SAP-SPOOL:SUBMIT RSFLFIND…TO SAP-SPOOL DESTINATION ‘LT50’.

83. How can we send data to external programs?Using SPA/GPA parameters(SAP memory).Using EXPORT/IMPORT data (ABAP/4 memory)

84. What are SPA/GPA parameters (SAP memory)SPA/GPA parameters are field values saved globally in memory.  There are two ways to use SPA/GPA parmeters:

Page 24: What is the basic difference between ECC 6

By setting field attributes in the Screen Painter.By using the SET PARAMETER or GET PARAMETER statements.

MODULE POOL

Where does the GET PARAMETER statement get its values? Which field gets populated with the new value?Ans :- From the buffer.

Where can the SET CURSOR command be executed? What is its effect?Ans :- In PBO, To position the CURSOR in a particular field after the screen is displayed.

What are the matchcodes and how do they affect the screen field? Where are they specified in the online program?Ans  :-  In the Properties window of the Field.

What is the effect of an ON CHAIN-REQUEST command in your flow logic?Ans :-  When value of any of the fields between CHAIN…..ENDCHAIN is attempted to change.

What commands are used to change database table entries?Ans :-  How can you check if the changes to the database were successful?

What is the difference between the Long form and the short form of making database changes?Ans :-  Long Form :  Update MARA and set brgew =  0 where matnr = ‘MAT!’.This is a standard Oracle Statement to modify the entry in the Database. Short Form : MARA-MATNR = ‘MAT1’. MARA-BRGEW = 0.Modify MARA. This is an SAP defined statement to modify the table.It is more secure and consistent.

What is the advantages using the SAP long form over the short form of database changes?Ans :-  May be Fast Effect.

Can ‘where’ clause be used when updating database entries?Ans :-  Yes.

Describe array operations and their advantages?Ans :- 

What is logical unit of work? How is it defined?

Ans :-  Logical Unit of work is a block of memory area where database contents are stored and manipulated.For every SAP application LUW is automatically created for database communication. Besides this we have SAP LUW s also there.

What function is performed by the commit work command?Ans :- When you perform Commit , all the LUW s work will be reflected to the database.

Why is it so important for a programmer to check the lock entries?Ans :- To find out if record is locked and also to maintain data integrity.

How can you find a lock entry for a database table?Ans :- The function module ‘ENQUEUE ’ checks whether a lock was triggered for the same object. Otherwise an

Page 25: What is the basic difference between ECC 6

exception FOREIGN_LOCK is carried out. If the object is not locked the function module sets the lock.

What steps are necessary to set a lock on a record within a database table?Ans :-  Execute CALL FUNCTION statement CALL FUNCTION “ENQUEUE EXPORTING............…EXCEPTIONS..........…CASE SY-SUBRC......ENDCASE...................      

How do you unlock the entry? Why is this necessary?Ans :- Execute the CALL FUNCTION statementCALL FUNCTION ‘DEQUEUE ’EXPORTING…It is important to unlock the entry so others can update it.

What is the difference between  ‘CALL SCREEN # # # ‘ and ‘SET SCREEN ### ’…   LEAVE SCREEN?Ans :- SET SCRREN statement sets or overwrites the follow-up screen.LEAVE SCREEN executes the screen number currently in the follow-screen fieldCALL SCREEN interrupts the processing of the current screen to call a new screen or a chain of screens,  processingof the  current screen is resumed directly after the call.       

After a CALL SCREEN command where does the processing return after the screen has been executed?Ans :- It returns the processing to the calling screen.

Which is the more similar to a call with return, the SET SCREEN or the CALL SCREEN?Ans :- The CALL SCREEN command.

What function is performed by the SET SCREEN 0 command?Ans :- Returns to the original screen.

What are the main differences between the repot status and screen status?Ans:-

What is the significance of  the word ‘OUTPUT’ in the declarationMODULE TEST_KNOWLEDGE OUTPUTENDMODULE.

Ans :- Then we know that it is part of the PBO, therefore is processed before the screen is presented.

Describe the fields on the screen ?

Ans :-  Attributes screen , Screen types ,follow up screens , cursor position etc. After you have entered the screen number, the screen branches to the screen attribute maintenance. Enter a short description , select the type NORMAL and specify the number of the follow-up screen.

What are the three components of ON-LINE program?

Ans :- Screen , ABAP/4 program and transaction code.

What is gained by using the Dictionary Fields menu option when creating your screen?

Page 26: What is the basic difference between ECC 6

Ans :- The fields you have created inherits the same attributes as those in the Data Dictionary.

How to Create a  checkbox , frame, pushbuttons and radio buttons on a screen?

Ans :- Just type a name and go to graphic element push button.

How do you assign an OK_CODE for a push button? How it is used in your ABAP?

Ans :- In the field list ,name the element and give it the value that it will represent when pushed       You must make sure that you clear the field that represents the pushbutton after every check. What automatic checks does the screen perform? (should be four)

Describe all four and how they are used?

Ans :- The field format, required input, a foreign key table ,parameters.

What are the two methods to declare input field as mandatory?If you set required field as program attribute, the user must enter a value in the field. Required fields appear on the screen containing a question mark (?).

How does foreign key work? What you have to put in your screen to identify the foreign key?No? Then where is the foreign key identified?

Ans :- You have defined a screen field by referring to a Data Dictionary, which has a check table. When the foreign key is checked the system compares the values of the fields to be checked with the contents of the key fields of the corresponding table.

What are the two effects of the foreign key from a user standpoint?

Ans :- Possible entries & a check against the key field contents.

What is user defined validation checks in the flow logic?

Ans :- FIELD…SELECT FIELD…VALUES or in the module pool FIELD…MODULE.

Does the value command in the flow logic go in the PAI or the PBO event?Ans :- PAI.

If an error occurs in the module pool, which fields are available for entry and which are display only fields?

Ans :- Only those fields defined with the FIELD statement before MODULE & relevant checks in a chain.

When is the chain command used in the PBO event?

Ans :- If you want to make more than one field ready for input after an error.

What table stores the online messages? What is the message class and what is its significance?

Ans :-  Table T100. The message class is a specific class of messages for a group of transactions.

What are the 5 different message types and how are they handled by the system? What is then difference between the Warning and Error messages?

Page 27: What is the basic difference between ECC 6

Ans :- A : Abend   Message displayed on the current screen and subsequent task terminatedI : Information  Message displayed on the current screen , but user can continue program by pressing ENTERE: Error Message displayed on the current screen. With FIELD statements , the fields concerned become ready again for input and user is required to make the entry /entries againW : Warning  As E message , but correcting input is optionalS: Success Message displayed on the follow-up screen as an I message.

What does WITH statement add to a message?

Ans :- In the place of the & or $ the fields or values are placed in the error message. 

What effect does the FIELD statement have within the flow logic?

Ans :- The field statement resets the fields so those fields are ready for input again.

Where are the messages displayed on the screen?

Ans :- At the bottom.

Is the SET PARAMETER statement to be issued in PBO or PAI module? Why?

Ans :- PAI, the value must be input into the fields first before it can be placed in the buffer.

What are the differences between TABLE CONTROLS and STEP LOOPS ?-    TABLE CONTROLS are simply enhanced STEP LOOPS that display data with the look and feel of a table widget in a desktop application.  But from a programming standpoint, TABLE CONTROLS and STEP LOOPS are almost exactly the same.  One major difference between STEP LOOPS and TABLE CONTROLS is in STEP LOOPS their table rows can span more than one line on the screen.  By contrast the rows in a TABLE CONTROLS are always single lines, but can be very long.  ( Table control rows are scrollable ).  The structure of table controls is different from step loops.  A step loop, as a screen object, is simply a series of field rows that appear as a repeating block.  A table control, as a screen object consists of :   i )  table fields ( displayed in the screen )    ii )  a control structure that governs the table display and what the user can do with it.

Why do we need to code a LOOP statement in both the PBO and PAI events for each table in the screen ?We need to code a LOOP statement in both PBO and PAI events for each table in the screen.  This is because the LOOP statement causes the screen fields to be copied back and forth between the ABAP/4 program and the screen field.  For this reason, at least an empty LOOP......ENDLOOP must be there.

The field SY-STEPL refers to ___________________ .The index of the screen table row that is currently being processed. The system variable SY-STEPL only has a meaning within the confines of LOOP...ENDLOOP processing. Outside the loop, it has no valid value.

How can we declare a table control in the ABAP/4 program ?Using the syntax  controls type tableview using screen .

Differentiate between static and dynamic step loops.  Step loops fall into two classes:  Static and dynamic.  Static step loops have a fixed size that cannot be changed at runtime.  Dynamic step loops are variable in size.  If the user re-sizes the window the system automatically increases or decreases the number of step loops blocks displayed.  In any given screen you can define any number of static step loops but only a single dynamic one.

What are the two ways of producing a list within a transaction ?By submitting a separate report.

Page 28: What is the basic difference between ECC 6

By using leave to list-processing.

What is the use of the statement Leave to list-processing ?Leave to list-processing statement is used to produce a list from a module pool.  Leave to list-processing statement allows to switch from dialog-mode to list-mode within a dialog program.

When will the current screen processing terminates ?A current screen processing terminates when control reaches either a Leave-screen or the end of PAI.

How is the command Suppress-Dialog useful ?Suppressing entire screens is possible using this command.  This command allows us to perform screen processing “in the background”.  The system carries out all PBO and PAI logic, but does not display the screen to the user.  Suppressing screens is useful when we are branching to list-mode from a transaction dialog step.

What happens if we use Leave to list-processing without using Suppress-Dialog ?If we don't use Supress-Dialog the next screen will be displayed but as empty.when the user presses ENTER, the standard list output is displayed.

How the transactions that are programmed by the user can be protected ?By implementing an authority check.

What are the modes in which any update tasks work ?Synchronous and Asynchronous.

What is the difference between Synchronous and Asynchronous updates ?A program asks the system to perform a certain task, and then either waits or doesn't wait for the task to finish. In synchronous processing, the program waits: control returns to the program only when the task has been completed. In asynchronous processing, the program does not wait: the system returns control after merely logging the request for execution. 

What is the difference between Leave Transaction and Call Transaction ?-    In contrast to LEAVE TO TRANSACTION, the CALL TRANSACTION statement causes the system to start a new SAP LUW . This second SAP LUW runs parallel to the SAP LUW for the calling transaction.

Overall how do you write transaction program in SAP?Create the transaction using object browser (SE80)Define the objects e.g. screen, Transactions. – Modules – PBO, PAI.And you can create a transaction from SE93 also.

Does SAP has a GUI screen painter? If yes What operating systems is it available on? What is the other type of screen painter called?Yes On what OS is it available – Window based.Other type of screen painter – alpha numeric screen painter.

What are step loops? How do you program page down page up in step loop?Step loops: Method of displaying a set of records.Page down  & Page up: decrement / increment base counter Index = base + sy-step1 – 1

Normally how many and what files get created when a transaction program is written? What is top XXXXXXTOP program?Main program with A Includes

Page 29: What is the basic difference between ECC 6

I  ) TOP INCLUDE – GLOBAL DATAII ) Include for PBOIII) Include for PAIIV) include for Forms

Where is processing logic located in an on-line program?Ans :- ABAP/4 program (module pool)

Describe the online processor. What is its function?Ans :- Controls the flow of online program.

How are screen names defined? Do you create a screen first or define your program first?Ans :- Define the program first and then create a screen. What are the differences between TABLE CONTROLS and STEP LOOPS ?-    TABLE CONTROLS are simply enhanced STEP LOOPS that display data with the look and feel of a table widget in a desktop application.  But from a programming standpoint, TABLE CONTROLS and STEP LOOPS are almost exactly the same.  One major difference between STEP LOOPS and TABLE CONTROLS is in STEP LOOPS their table rows can span more than one line on the screen.  By contrast the rows in a TABLE CONTROLS are always single lines, but can be very long.  ( Table control rows are scrollable ).  The structure of table controls is different from step loops.  A step loop, as a screen object, is simply a series of field rows that appear as a repeating block.  A table control, as a screen object consists of :   i )  table fields ( displayed in the screen )    ii )  a control structure that governs the table display and what the user can do with it.

Why do we need to code a LOOP statement in both the PBO and PAI events for each table in the screen ?We need to code a LOOP statement in both PBO and PAI events for each table in the screen.  This is because the LOOP statement causes the screen fields to be copied back and forth between the ABAP/4 program and the screen field.  For this reason, at least an empty LOOP......ENDLOOP must be there.

The field SY-STEPL refers to ___________________ .The index of the screen table row that is currently being processed. The system variable SY-STEPL only has a meaning within the confines of LOOP...ENDLOOP processing. Outside the loop, it has no valid value.

How can we declare a table control in the ABAP/4 program ?Using the syntax  controls type tableview using screen .

Differentiate between static and dynamic step loops.  Step loops fall into two classes:  Static and dynamic.  Static step loops have a fixed size that cannot be changed at runtime.  Dynamic step loops are variable in size.  If the user re-sizes the window the system automatically increases or decreases the number of step loops blocks displayed.  In any given screen you can define any number of static step loops but only a single dynamic one.

What are the two ways of producing a list within a transaction ?By submitting a separate report.By using leave to list-processing.

What is the use of the statement Leave to list-processing ?Leave to list-processing statement is used to produce a list from a module pool.  Leave to list-processing statement allows to switch from dialog-mode to list-mode within a dialog program.

When will the current screen processing terminates ?A current screen processing terminates when control reaches either a Leave-screen or the end of PAI.

How is the command Suppress-Dialog useful ?Suppressing entire screens is possible using this command.  This command allows 

Page 30: What is the basic difference between ECC 6

us to perform screen processing “in the background”.  The system carries out all PBO and PAI logic, but does not display the screen to the user.  Suppressing screens is useful when we are branching to list-mode from a transaction dialog step.

What happens if we use Leave to list-processing without using Suppress-Dialog ?If we don't use Supress-Dialog the next screen will be displayed but as empty.when the user presses ENTER, the standard list output is displayed.

How the transactions that are programmed by the user can be protected ?By implementing an authority check.

What are the modes in which any update tasks work ?Synchronous and Asynchronous.

What is the difference between Synchronous and Asynchronous updates ?A program asks the system to perform a certain task, and then either waits or doesn't wait for the task to finish. In synchronous processing, the program waits: control returns to the program only when the task has been completed. In asynchronous processing, the program does not wait: the system returns control after merely logging the request for execution. 

What is the difference between Leave Transaction and Call Transaction ?-    In contrast to LEAVE TO TRANSACTION, the CALL TRANSACTION statement causes the system to start a new SAP LUW . This second SAP LUW runs parallel to the SAP LUW for the calling transaction.

Overall how do you write transaction program in SAP?Create the transaction using object browser (SE80)Define the objects e.g. screen, Transactions. – Modules – PBO, PAI.And you can create a transaction from SE93 also.

Does SAP has a GUI screen painter? If yes What operating systems is it available on? What is the other type of screen painter called?Yes On what OS is it available – Window based.Other type of screen painter – alpha numeric screen painter.

What are step loops? How do you program page down page up in step loop?Step loops: Method of displaying a set of records.Page down  & Page up: decrement / increment base counter Index = base + sy-step1 – 1

Normally how many and what files get created when a transaction program is written? What is top XXXXXXTOP program?Main program with A IncludesI  ) TOP INCLUDE – GLOBAL DATAII ) Include for PBOIII) Include for PAIIV) include for Forms

Where is processing logic located in an on-line program?Ans :- ABAP/4 program (module pool)

Describe the online processor. What is its function?Ans :- Controls the flow of online program.

Page 31: What is the basic difference between ECC 6

How are screen names defined? Do you create a screen first or define your program first?Ans :- Define the program first and then create a screen.

Which function type has to be used for using “at exit-command” ?-    To use AT EXIT-COMMAND, we must assign a function type ‘E’ to the relevant function in the Menu Painter or Screen Painter.

What is the difference between SET SCREEN and CALL SCREEN ?With SET SCREEN, the current screen simply specifies the next screen in the chain. control branches to this next screen as soon as the current screen has been processed. Return from next screen to current screen is not utomatic.Itdoesnot  interrupt processing of the current screen.  If we want to branch to the next screen without finishing the current one, use LEAVE SCREEN.

With CALL SCREEN, the current (calling) chain is suspended, and a next screen (or screen chain) is called in. The called screen can then return to the suspended chain with the statement LEAVE   SCREEN TO SCREEN 0. Sometimes we might want to let an user call a popup screen from the main application screen to let them enter secondary information. After they have completed their entries, the users should be able to close the popup and return directly to the place where they left off in the main screen. Here comes CALL SCREEN into picture. This statement lets us insert such a sequence into the current one.

Can we specify the next-screen number with a variable.  ( Yes /  No ).Yes.

The field SY-DYNNR refers to ________________.Number of the current screen.    

What is a dialog module ?A dialog module is a callable sequence of screens that does not belong to a particular transaction. Dialog modules have their own module pools, and can be called by any transaction.

The syntax used to call a screen as a dialog box  ( popup ) is _________________.CALL SCREEN STARTING AT ENDING AT      .

What is a “call mode” ?In the ABAP/4 world, each stackable sequence of screens is a "call mode". This is important because of the way you return from a given current sequence. To terminate a call mode and return to a suspended chain, set the "next screen" to 0 and leave to it: LEAVE TO SCREEN 0 or ( SET SCREEN 0 and LEAVE SCREEN ).  When you return to the suspended chain, execution resumes with the statement directly following the original CALL SCREEN statement.  The original sequence of screens in a transaction is itself is a calling mode.  If you LEAVE TO SCREEN 0 in this sequence ( that is, without having stacked any additional call modes ), you return from the transaction altogether.

The maximum number of calling modes stacked at one time is ______.Nine.

What is LUW or Database LUW or Database Transaction ?A “LUW” ( logical unit of work ) is the span of time during which any database updates must be performed in an “all or nothing” manner.  Either they are all performed  ( committed ) , or they are all thrown away ( rolled  back ).  In the ABAP/4 world, LUWs and transactions can have several meanings:LUW ( or “database LUW” or  “database transaction” )This is the set of updates terminated by a database commit.  A LUW lasts, at most, from one screen change to the

Page 32: What is the basic difference between ECC 6

next ( because the SAP system triggers database commits automatically at every screen change ).

What is SAP LUW or Update Transaction ?Update transaction ( or “SAP LUW”)This is a set of updates terminated by an ABAP/4 commit. A SAP LUW may last much longer than a database LUW, since most update processing extends over multiple transaction screens.The programmer terminates an update transaction by issuing a COMMIT WORK statement.

What happens if only one of the commands SET SCREEN and LEAVE SCREEN is used without using the other?If  we use SET SCREEN without LEAVE SCREEN, the program finishes processing for the current screen before branching to .  If we use LEAVE SCREEN without a SET SCREEN before it, the current screen process will be terminated  and branch directly to the screen specified as the default next-screen in the screen attributes.

What is significance of the screen number ‘0’ ?In "calling mode", the special screen number 0 (LEAVE TO SCREEN 0) causes the system to jump back to the previous call level.  That is, if you have called a screen sequence with CALL SCREEN leaving to screen 0 terminates the sequence and returns to the calling screen.  If you have not  called a screen sequence, LEAVE TO SCREEN 0 terminates the transaction.

What does the command ‘SUPPRESS DIALOG’ do ?Suppressing of entire screens is possible with this command.  This command allows us to perform screen processing “in the background”. Suppresing screens is useful when we are branching to list-mode from a transaction dialog step.

What is the significance of the memory table ‘SCREEN’ ?At runtime, attributes for each screen field are stored in the memory table called ‘SCREEN’.  We need not declare this table in our program.  The system maintains the table for us internally and updates it with every screen change.

What are the fields in the memory table ‘SCREEN’ ?-    Name        Length        Description 

Why grouping of fields is required ? What is the maximum number of modification groups for each field ?-    If the same attributes need to be changed for several fields at the same time these fields can be grouped together.  We can specify up to four modification groups for each field.

What is a screen group ? How it is useful ?Screen group is a field in the Screen Attributes of a screen.  Here we can define a string of up to four characters which is available at the screen runtime in the SY-DNGR field.  Rather than maintaining field selection separately for each screen of a program, we can combine logically associated screens together in a screen group.

What is a Subscreen ? How can we use a Subscreen ?A subscreen is an independent screen that is displayed in an area of another ("main") screen. To use a subscreen we must call it in the flow logic ( both PBO and PAI ) of the main screen.   The CALL SUBSCREEN statement tells the system to execute the PBO and PAI events for the subscreen as part of the PBO or PAI events of the main screen. The flow logic of your main program should look as follows:PROCESS BEFORE OUPTPUT.CALL SUBSCREEN INCLUDING ' ' ''.PROCESS AFTER INPUT.CALL SUBSCREEN .Area is the name of the subscreen area you defined in your main screen. This name can have up to ten   characters. Program is the name of the program to which the subscreen belongs and screen is the  subscreen's number.

What are the restrictions on Subscreens ?Subscreens have several restrictions.  They cannot:Set their own GUI status

Page 33: What is the basic difference between ECC 6

Have a named OK codeCall another screenContain an AT EXIT-COMMAND moduleSupport positioning of the cursor

How can we use / display table data in a screen ?ABAP/4 offers two mechanisms for displaying and using table data in a screen. These mechanisms are TABLE CONTROLS and STEP LOOPS.