You are on page 1of 48

1. What is ABAP?

Ans: Advanced Business Application in Data Processing

2. How Many Modules supported by ABAP.


Ans: Mostly All (SD, MM, PP, QM, HR.....etc)

3. How many Objects types in ABAP.


Ans: Called AS RICEF Objects type is Reports, Interfaces, Conversation, Forms, Enhancements.

4. How to create client independent tables?


Ans: The table in which the first field is not mandt then it is called as client independent tables and
mandt is the field with mandt as the data element. Automatically client which we login is populated
to mandt.

5. What is the difference between Type and Like?


TYPE, you assign data type directly to the data object while declaring.
LIKE, you assign the data type of another object to the declaring data object. The data type is
referenced indirectly.

6. What is the difference between synchronous and asynchronous update?

In synchronous updated the parent table is updated along with the child tables and then a sy-subrc is
returned. 0 for successful and 4 or 8 for not successful.

While in asynchronous updating after the updation of the parent table we get a sy-subrc return. The
system is not bothered if the child tables are updated or not.

7. What is bdcmsgcoll and how it works with call transaction method?

BDCMSGCOLL is a structure available in the abap dictionary. We use this structure to handle all
errors in call transaction. We need to declare an internal table like bdcmsgcoll. When a database
table is updated we get some messages like successful, or not successful or successful with some
warning message.

All these messages pass through this structure. We can capture them using a function module called
FORMAT_MESSAGE.

8. What is BDC recording?


In BDC recording you record the transaction through which you want to upload data. This tool will
create a program for you and you don't need to create the program manually. You can code both call
transaction and session method using this tool.

9. Which table stores the Programs created?


TRDIR - Generierte Tabelle zu einem View

10. How can we compare two programs? SE30

1
11. Describe data classes.
Master data: It is the data which is seldom changed.
Transaction data: It is the data which is often changed.
Organization data: It is a customizing data which is entered in the system when the system is
configured and is then rarely changed. System data: It is the data which R/3 system needs for itself.

12. What is foreign key relationship?


A relationship which can be defined between tables and must be explicitly defined at field level.
Foreign keys are used to ensure the consistency of data.

13. The following statements will clear the header-line of an internal table:
Ans: CLEAR ITAB.

14. When the AT-SELECTION-SCREEN event is triggered.


If ENTER key is hit on the selection-screen & F8 key is hit on the selection-screen

15. The statement used to clear all the contents of an internal table is.
REFRESH itab & FREE itab.

16. When in an ABAP program, the INITIALIZATION event is invoked


Before the AT-SELECTION-SCREEN event.

17. In a BDC program, how would you handle errored records? Would you…
c) Generate a batch-input session with errored records

18. The transaction CMOD and SMOD are


a) Used to create enhancements to standard SAP programs.
c) Used to create the user exits, menu exits and screen exits.

19. To output SAPscript layout sets, in the print program


a) You must always start the output with OPEN_FORM and end it with CLOSE_FORM.
c) WRITE_FORM should be used within an OPEN_FORM and CLOSE_FORM.

2
20. A database commit is triggered by
a) ABAP/4 command COMMIT WORK or BAPI_TRANSACTION_COMMIT.

21. What are field symbols?


a) Field symbols are like pointers in C that can point to any data object in ABAP/4
d) All operations you have programmed with the field symbol are carried out with the assigned field.

22. READ TABLE ITAB_TEST WITH KEY VBELN = k_vbeln.


If multiple records in table ITAB satisfy the condition, then
c) The first record is fetched

23. The fastest way to read a value in an internal table is to:


c) Directly specify the index value

24. If COLLECT is used on an internal table, which has a non-key character field.

c) Compilation error

25. Which is the correct syntax for sorting an internal table?

b) SORT ITAB BY key1 key2.

26. MOVE can be used to copy:


a) One field’s contents to another field
b) One structure’s contents to another compatible structure
c) One table’s contents to another compatible table
d) A part of one field to another field

27. The user-list in a given SAP client can be found using transaction.

c) SM04

28. The DESCRIBE statement on internal tables is used to:


a) Find the number of lines currently in table
b) Find initial size of the table
c) Find type of the internal table

29. Which of the following statements can work without a corresponding END-statement?

d) SELECT

30. In an ABAP program, we can specify a variable to be of HEXADECIMAL type.

3
a) TRUE

31. When is Top-of-page event executed

b) When the First Write Statement of the program is encountered.


c) Before outputting the first line on a new page.

32. TOP-OF-PAGE
This is called when a new page is started with an ABAP list and is used to display a header for
the list.

33. TOP-OF-PAGE During LINE_SELECTION


If you use the 'DURING LINE-SELECTION' addition this event is also triggered when creating
detailed lists.

34. END-OF-PAGE

This is displayed at the end of each page if there is a line reservation in the addition LINE-COUNT of
the initiating statement for a page footer.
REPORT demo_rep NO STANDARD PAGE HEADING LINE-COUNT 0(1).

35. START-OF-SELECTION

This is the first event after all screen selection processing has been completed. If no other
events are declared then there is no need to manually code this event as all processing
statements will be automatically assigned to an implicit START-OF-SELECTION block. It is a
good ideal to put it in though as it separates the code and makes it easier to read. Generally
you would put all your data selection ABAP code within this event.

END-OF-SELECTION

If your report is linked to a logical database this event is called after the logical database has
completely finished its work. Otherwise this event is trigged after the START-OF-SELECTION
event so you would generally use it to processes the data retrieved in that event.

36. AT SELECTION SCREEN OUTPUT

This is called just before the selection screen is displayed and can be used to manipulate the
actual selection screen attributes using the loop at screen functionality. This allows you to do
things like hide fields, grey them out so they are output only or make them intensified etc.
LOOP AT SCREEN.
IF SCREEN-name = 'P_FIELd1'.
SCREEN-INTENSIFIED = '1'.
MODIFY SCREEN.
CONTINUE.
ENDIF.
ENDLOOP.

4
37. INITIALIZATION

Called after the abap selection screen code has been processed (i.e. parameters, select-options etc)
but before these are displayed to the user. So you can use it to initialize input fields of the selection
screen or change the default values of these before the user gets to enter data into them.

38. LOAD-OF-PROGRAM

First event to be called before any of the other ABAP code is processed.

39. Events in Classical Reports

-Load-of-program
This event is used to load program into memory for execution and this is the first event in
execution sequence.
Initialization
This event is used to initialize variables, screen default values and other default actions.
-At Selection-Screen output
By using this event we can manipulate dynamic selection-screen changes.
-At Selection-Screen on field
At Selection-Screen
-End-of-Selection
-Top-of-Page
-End-of-Page

40. SAP ABAP Field Symbol:

A field symbol refers or points (pointers known as in C language) .


For our purpose let us consider MARA table as the refering table and MATNR field as the
referring field.

41. Field catalog:

Field catalog is a format description of the display area.

42. Message A001. : Concept of Message class

REPORT ZTEST_DUMMY MESSAGE-ID A001.


if sy-subrc = 0.
message e001.
endif.

43. TYPE-POOLS: slis. " SLIS contains all the ALV data types

44. The commonly used ALV functions used for this purpose are:

1. REUSE_ALV_VARIANT_DEFAULT_GET
2. REUSE_ALV_VARIANT_F4
3. REUSE_ALV_VARIANT_EXISTENCE

5
4. REUSE_ALV_EVENTS_GET
5. REUSE_ALV_COMMENTARY_WRITE
6. REUSE_ALV_FIELDCATALOG_MERGE
7. REUSE_ALV_LIST_DISPLAY
8. REUSE_ALV_GRID_DISPLAY
9. REUSE_ALV_POPUP_TO_SELECT
10. ALSM_EXCEL_TO_INTERNAL_TABLE

45. Copy SAP scripts between clients:

Go to the target client and execute program “RSTXFCPY”.

46. Conversion of Standard Text into OTF and ITF formats.

Create standard text using SO10

47. Uploading TIFF files and using them in SAPscript

The report RSTXLDMC allows a TIFF graphics file to be uploaded from the file system of the
R/3 GUI to a standard text in the R/3 word processor SAP script.

48. Assign Standard Texts to the transport request


using standard report RSTXTRAN.

49. Setting up a new page format in SAP Script.


using SPAD

50. Different Types of Selection Screens:

1. at selection-screen on field :

This event occurs after the runtime environment has passed all input data from the selection screen
to the ABAP program.

2. at selection-screen output :

- Triggered in PBO of selection-screen.


- This allows you to modify the Selection-screen, before it is displayed.

3. at selection-screen block:
- PAI Event

4. at selection-screen on value-request :
- This event is triggered for F4 help.

5. at selection-screen on help-request and their difference?


- This event is triggered when the user clicks F1 for help on fields.

51. Append Structure:

6
Append structures are used for enhancements that are not included in the standard.An append
structure is a structure that is assigned to exactly one table or structure.The following enhancements
can be made to a table or structure TAB with an append structure:
· Insert new fields in TAB,
· Define foreign keys for fields of TAB that already exist,
· Attach search helps to fields of TAB that already exist,

52. Include Structure:


We cannot include structure to Standard Table. It can be inserted anywhere in the Table. we can use
include structure in more than one table.

53. Transaction SPDD:

This is for data dictionary corrections. If any standard tables have been modified, then that object
appears in the list and you have to adjust it again after comparing the versions.

54. Transaction SPAU:

This is for repository objects (programs, screens, functions, classes, etc.). These have to be compared
to the previous versions too and any missing modified code is too re-inserted. SPAU comes after the
downtime phase of upgrade and is carried in normal client.

55. Data Class:

This is nothing but physical area of database tables which is assigned to data class for storage
purpose. Following are the types of data classes.
APPL0- Master data (data frequently accessed but rarely updated).
APPL1- Transaction data (data that is changed frequently).
APPL2- Organizational data (customizing data that is entered when system is configured and then
rarely changed).

56. Delivery Class:

The delivery class controls the degree to which the SAP or the customer is responsible for table
maintenance. or Gives the owner of the table.

There are the following development classes: A,S,C,L

* A: Application table (master and transaction data).


* C: Customer table, data is only maintained by the customer.
* L: Table for storing temporary data.
* G: Customer table.

57. Size Category:

Size Category defines expected space, which is required for table in the database. You can choose a
size Category from 0 -4. Each Category is assigned a certain fixed memory size in database. When
table is created initial space is reserved in the database.

58. Technical setting :

7
Technical setting in tables makes controls over the tables. It consist of delivery class which is used
for managing and transport of tables While upgrade. It consists of table types as below.
- A: Application table
- B: Customer table
- C:Ten. Data table
- G: Customer table

59. SD FLOW (order to cash Flow):

Inquiry > VA11 > VBAK-VBAP


Quotation > VA21 >VBAK-VBAP
Purchase order > ME21N >EKKO-EKPO
Sales Order > VA01 >VBAK-VBAP
Delivery > VL02N >LIKP-LIPS
Shipping > VT01 >VTTK-VTTP
Billing > VF01 >VBRK-VBRP
Invoice > VF21 >VBRK-VBRP

60. LSMW Steps:

- Maintain object Attribues


- Maintain Source Structures
- Maintain Source Structure
- Maintain Structure relation
- Maintain field mapping and conversation rules
- Maintain fix value
- Specify file
- Assign file
- Read File
- Display read data
- Create Batch input screen
- Run Batch input screen

61. Diffcurance:

Select single fetch first matching records whereas select up to 1 rows fetch all matching records into
database.

1. 85. Open SQL : Insert , Update , Modify , Delete.

62. Get last records and count Entries:

Data : V_COUNT TYPE I.


DESCRIBE TA BLE IT_ITAB LINES V_COUNT.
READ TABLE IT_ITAB INTO WA_ITAB INDEX 1.

8
63. Domain:

Domain defines set of possible values , allocated to field. It also describe technical characteristics ,
no of characters , output length , sign , lower case , upper case details, value tables. Etc.

64. SAP MM Cycle:

PR > ME51
RFQ > ME41
Quotation > ME41N
Quotation Compare > ME49N
Purchase Order > ME21N
GRN > MIGO
Invoice > MIRO
Vendor payment finally.

65. Workbench request is client independent , when it import into client 100. Then it
automatically reflects into all clients. Whether Customizing request is client dependent.

66. CALL TRANSACTION SYNTAX:

CALL TRANSACTION MM03-------------àT-CODE


USING BDCDATA -------------àBDC STRUCTURE
MODE A/E/N --------------à PROCESING MODE
UPDATE S/A/L --------------à UPDATE MODE
MESSAGE INTO BDCMSGCALL.---------à ERROR HANDLING

67. Check Tables:

Check tables used for validation whether data is exit or not. It’s validation at field level. It checks
both transaction data as well as master data.

68. Value table:

Value table maintained at domain level. In this we entered allowed values. Then system used only
entered values.

69. ALV layout can be transported

70. Diffcurance smart forms and SAP Script

- Multiple page format supported - Not Supported

9
- Independent - Dependent
- Use of copy window - No
- XML output supported - No
- Generate function modules - No
- Color functionality - No
- Main window must or not - Must

71. When we want to validate single field on selection screen that time we used FIELD
Command.

72. Leave Screen:

Without finishing current screen. If we wish to continue next screen that time we use this
command.

73. Set Screen:

Call to next screen and return to back screen is not automated in this case.

74. CALL Screen:

With call screen current screen suspended and next screen called after that called screen
called to suspended screen by using “LEAVE SCREEN TO SCREEN 0”.

75. SO10 : Standard text : request

76. Standard delivery document type

- LF : Standard delivery
- LR : Return delivery
- NL : Replenishment delivery
- LO: Delivery without reference
- RL : Return delivery from PO

77. Two different orientation not possible on layout smartforms

78. Tabstrip Control:

A tabstrip control is a screen object consisting of two or more pages. Tabstrip controls allow you to
place a series of screens on a single screen.To use a tabstrip control in your ABAP program, you must
create a control for each in the declaration part of your program using the following statement:
CONTROLS <ctrl> TYPE TABSTRIP. Which is always in PBO.

79. System Fields:

10
System fields are set at the PAI (Process After Input) event for every screen.These can be also used
for interactive list processing, except for SY-DATUM, SY-LOOPC, and SY-STEPL. SY-SLSET Variant
used to fill the selection screen.

80. Changing the title of the standard SAP screen:

To change the title of the standard SAP screen, follow these steps:
1. Execute transaction SE63
2. Follow the menu path -->translation -->shorttext -->transactions
3. Enter the transaction code and press EDIT. (check whether the target language is set to ENGLISH)
4. You will get the existing title on the first line. In the second line, you can edit that title.
5. Now click on SAVE to save the changes
6. Now execute that transaction to check the change in the title
7. You can also translate Menu texts, screen texts and others using this SE63 transaction.

81. HR Infotypes:

Infotypes are units of information in the Human Resource Management System. Examples:

82 . SUBSCREEN IN ABAP:

- A Sub screen is nothing but a screen with in a screen.


- Subscreens allow you to embed one screen within another at runtime.

83 . SAP PP Tables:

11
84. BADI & Why is it?
BADI (Business Add-In) is a new SAP Object Oriented enhancement technique which is used to add
our own business functionality to the existing SAP standard functionality. BADI follows Object
Oriented approach to make them reusable. A BADI can be used any number of times where as
standard enhancement techniques can be used only once. For example if we assign an enhancement
to one custom project, then that enhancement cannot be assigned to any other custom projects. To
overcome this drawback SAP has provided a new enhancement technique called BADI.
Transaction code for BADI Definition: SE18
Transaction code to Implement BADI: SE19
There are two types of BADI's.
1) Multi use BADI:
With this option, any number of active implementations can be assigned to the same definition
BADI. By default this option is checked. If we want the BADI for multiple use If you have multiple-use
BADI definitions, the sequence must not play any role.
The drawback in Multiple use BADI is, it is not possible to know which BADI is active especially in
country specific version.
2) Filter dependent BADI:
Using this option we can define the BADI's according to the filter values to control the add-in
implementation on specific criteria.
Ex: Specific country value.

154. Method1 Steps to find BADI:


1. Go to SE 24 transaction, type CL_EXITHANDLER and then click on display.
2. Double click on GET_INSTANCE method.
3. Put a break-point on class method CL_EXITHANDLER=>GET_CLASS_NAME_BY_INTERFACE.
4. Run any transaction on which we want find the BADI's say VA01.
5. Give the transaction name VA01 and press enter.
6. It will automatically take you to the break-point which we have set the in the SE24 transaction.
Each time if you press F8 a list BADI names will be displayed.

12
7. You can find the BADI name in field EXIT_NAME and if you double click on it, we can get the
corresponding BADI name before hit the corresponding screen. Based on the requirement find the
BADI name and accordingly implement your functionality using the transaction se19.

85. How to Debug Pop-up window

Create a simple text file on ur drive example debugger.txt containing


[FUNCTION]
Command=/H
Title=Debugger
Type=SystemCommand
drag this file and drop on the dialog box.
it will take you to debugger mode.
86. Easy Step To Debug a Smartform

- After executing smartform it generate function module


- there is source code perform global_init
- here we can easily find our tables and variables by setting break point there

87. New Debugger Skip Breakpoints

Whenever you have a breakpoint, once system brings you debugger, you can now use the Skip field
for each breakpoint. Whatever number you enter in the field, system would NOT stop to the
breakpoint for those many iterations.

Once the iteration is reached, system would STOP at the breakpoint.

13
After the condition is met, the breakpoint behaves normally – means flow of execution would be
interpreted whenever the statement is executed.

88. SE63 for language translation :

In SE63, click Translation -> B5 SAPscript: Forms and Styles> Forms.

89. BDC Session steps : BDC_OPEN_GROUP, BDC_INSERT, BDC_CLOSE_GROUP,SM35.

90. How can I debug my SAPscript?


- Go to the transaction SE71.
- Enter the form name.
- Choose the menu Utilities->Activate Debugger to enable debugging.
- Or call standard program RSTXDBUG.
- To stop debugging, you must print the SAPscript form, and click Exit button in the debugger
window when it is displayed.
91. How can I copy SAPscripts from one client to another, or export/import them?

14
- In the transaction SE71, enter the Form name and choose the menu, Utilities->Copy from
client to copy SAPscripts from one client to another.
- Use RSTXSCRP to import/export SAPscripts.
92. How can I change the page size of the layout?
- In the SAPscript, Goto -> Header -> Basic Settings
- Here you could configure the page settings and their orientation
93. How to find the Driver Program for the given SAPscript?
1. Go to the Table TNAPR using SE11
2. Get the Contents of the Table(CNTRL+SHIFT+F10)
3. On the Table Content Selection Screen, Type the SAPscript Name for which we have find the
Driver Program in the field FONAM and execute(F8)
4. PGNAM field of the result display contains the Driver Program Name for our SAPscript.

94. How can I get the landscape format in SAPscript?


- In the form go to basic settings--> you can find a landscape option --> click on it and at the
bottom. You can find the page option enter the page name for which you want to assign
landscape format.

95. How many MAIN windows are allowed for SAPscript?


- SAPscript allows 99 MAIN windows
- Each Page can consists up to 99 windows. Each main window is assigned a
consecutive
- identifying number (0..98).
- This is mainly used for label printing or address printing.

96. Is it possible to create a SAPscript without a main window?


- (this can be used for static forms which always print the same number of pages)
- Yes, but you must call WRITE_FORM function module at least once (even with a non-existing
element or window!)
- If there is more than one page, you may need to force the next page to be printed by calling
CONTROL_FORM function module with command NEW-PAGE (PAGE2 for example).
97. Where are the SAPscript form names?

15
- Table STXH, with field values tdobject = 'FORM' and tdid = 'TXT' and tdname = form name

98. How to assign own form to a standard print program?


- Most of applications use NACE transaction, but there are also Print Workbench, Post-
Processing Framework.
99. What are the different types of windows in SAPscripts?
- Windows are defined in the Layout sets which define the position and the text to displayed.
- The different types of windows are:
● MAIN - Main Window
The main window is a continuous window which can extend over several pages. If the text in
the main window fills up a page, a new page is created.Only one main window can be
defined in the SAPscript whereas up to 100 instances of main window can be created in a
page.
● VAR - Variable Window
This window can have the variable contents displayed on them. The contents of the window
cannot exceed the window size. The content can be formatted for each page.
● CONST - Constant Window
The constant window can have a fixed content and is formatted only once
100. What the conditional statements used in SAPscripts?
- The following conditional statements are used in SAPscripts:

-/: IF...ELSE/ELSEIF...ENDIF
/: CASE...ENDCASE

101. How can I set the header and footer in the main window?
The TOP...END TOP and BOTTOM...ENDBOTTOM commands are used to set the header and footer
texts in the main window respectively.
These texts will be displayed on the start and end of every new page in the output.
To disable these texts enclose empty commands between the commands.Eg.:

/: TOP
/: ENDTO

16
102. How can I trigger new page in SAPscripts?
Use the command NEW-PAGE to trigger a new page in SAPscript.

/: NEW-PAGE

You can explicitly trigger a page not in sequence by specifying the name pf page with the command
NEW-PAGE

/: NEW-PAGE <pagename>

103. How to Use the New-Window Command?


You can use the NEW-WINDOW command to call the other main window explicitly in the form, even
if the current main window is not full. We can create up to 99 Main Windows. This Main windows
are generally used to create labels or to write Addresses.Need to write this in the Main window.

/: NEW-WINDOW

104. What is the use of the POSITION and SIZE command in SAPscripts?
The POSITION command is used to x, y coordinate position which is used by the BOX command. The
offset from the current window positions are specified which could be either positive or negative.

/: POSITION XORIGIN '2' CM YORIGIN '-1.5' CM

Similarly the SIZE command sets the width and height parameters.

/: SIZE WIDTH '10' TW HEIGHT '10' TW

181. What is the difference between the SAPscript texts, 'Customer &KNA1-KUNNR&' and
'&Customer KNA1-KUNNR&'?

● In the first case of 'Customer : &KNA1-KUNNR&', the text 'Customer : ' is displayed
regardless of the variable KNA1-KUNNR even if it has initial value
● In the second case of '&Customer : KNA1-KUNNR&', the text 'Customer :' and KNA1-KUNNR
is displayed only when the variable KNA1-KUNNR has non-initial value.
105. How can I format the time in the SAPscript?
Similar to SET DATE MASK for date fields we can use SET TIME MASK for formatting time fields.

/: SET TIME MASK = 'HH hrs MM min SS sec'

106. How can I format the date being displayed in the SAPscript?
The date fields in SAP scripts can be formatted using the SET DATE MASK control command.

/: SET DATE MASK = 'MMMM DD, YY'

107. Which are frequently Used System Variables in SAPscript?

17
&DATE& , &DAY& , &MONTH& , &YEAR& , &TIME& , &HOURS& ,&MINUTES& ,&SECONDS&
,&PAGE&,&NEXTPAGE&,&SPACE&, &ULINE& , &VLINE& ,&NAME_OF_MONTH&, &SAPSCRIPT-
FORMPAGES& ,&SAPSCRIPT-JOBPAGES&.
108. How can I print logos in SAPscripts?
TIFF files (*.tif):
● Use the program RSTXLDMC to convert the TIFF file to standard text.
● Print this using the INCLUDE command:
● INCLUDE ZLOGO OBJECT TEXT ID ST
● Bitmap files (*.bmp)
● Go to transaction SE78
● Choose BMAP under GRAPHICS
● Choose Import Graphic (F5)
● Select the image and upload
● In SE71 choose Insert->Graphics and then choose the image for display.

109. How can I display barcodes in SAPscripts?


Create a character format in the SAPscript.Choose the Bar Code for the character format.And finally
to display barcodes, in the command enter:

<C1>&vbeln&</>

where C1 is the character format created and vbeln is the variable for which the barcode is to be
created.
110. How can I Word Wrap the text being displayed in SAPscript?
Use the Function Module RKD_WORD_WRAP to wrap the text and use this for output.
111. How do I create standard texts for the SAPscripts?
You can create standard texts using the transaction SO10. Then to insert these standard texts in the
SAPscript choose the menu, Insert->Text->Standard and choose the standard text that you want to
choose.
Alternatively, you can display standard texts in your SAPscripts using the command:

/: INCLUDE ZSTEXT OBJECT TEXT ID ST LANGUAGE EN

112. Types of Symbol in SAP Scripts:


- Standard Symbol
- System Symbol : &DATE&

18
- program Symbol : &WA_KNA1-KUNNR&.

113. Duplex printing in SAP:


- Go to SPAD ,
- take output devices .
- Choose your output device ,
- double click
- take the output attributes.
- Give the print mode as Duplex.
- Your printer also should be set for the duplex mode.

114. Events in Table Maintenance Generator SM30


There are 39 events for Table Maintenance Generator, follow this:
SE54 -> Enter Table Name (Which table you want) -> Environment -> Events -> Enter -> New
Entries -> Under ' T ' -> Press F4.
Then you will get below events:
Before saving the data in the database
02 After saving the data in the database
03 Before deleting the data displayed
04 After deleting the data displayed
05 Creating a new entry …….and so on……

115. ST22 - Dump Analysis this transaction is used to analyzed dumps.

116. File Deletion from SAP program


The methods are:
1. CL_GUI_FRONTEND_SERVICES=>FILE_DELETE
2. GUI_DELETE_FILE

117. This program executes the following popup function modules, to help choosing the right
one:

19
● POPUP_WITH_TABLE_DISPLAY
● POPUP_TO_CONFIRM_STEP
● POPUP_TO_DECIDE_WITH_MESSAGE
● POPUP_TO_DECIDE
● POPUP_TO_SELECT_MONTH
● POPUP_TO_CONFIRM_WITH_VALUE
● POPUP_TO_CONFIRM_WITH_MESSAGE
● POPUP_TO_DISPLAY_TEXT
● POPUP_TO_CONFIRM
● POPUP_TO_CONTINUE_YES_NO
● POPUP_TO_CONFIRM_DATA_LOSS

118. For deleting PO History we can use a BAPI 'BAPI_PO_DELETE_HISTORY'.


119. Upload blank lines in to the internal tables
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
FILENAME = 'C:\Documents and Settings\venkatapp\Desktop\venkat.txt'
TABLES
DATA_TAB = ITAB.
*----this is the condition for including the blank lines
SET BLANK LINES ON.
LOOP AT ITAB.
WRITE / ITAB-TEXT_LINE.
ENDLOOP.

120. Moving of request :


You want to move a task to another request. For instance, you want to move the
development/correction task DV4K901149 from the request DV4K901148 (Test CTS, request 1) to
the request DV4K901152 (Test CTS, request 2).Select the task you want to move and choose the
utility Reassign Task from the menu:

20
Specify the request which the chosen task will be moved in (target request):

The task will be moved to the chosen target request:

21
121. SAP Request Tables:
E070 -> Change & Transport System: Header of Requests/Tasks
E070A -> Change & Transport System: Attributes of a Request
E070C -> CTS: Source/Target Client of Requests/Task
E070CREATE -> Change & Transport System: Creation Date of Request
E070DEP -> Change & Transport System: Dependencies of Requests
E071 -> Change & Transport System: Item of Requests/Tasks
E070TC -> Help Table for E070 for Client-Specific Imports

122. Using SE80 we can copy a function group in SAP.

123. NACE in SAP ABAP:


The T Code NACE is used to link the Standard SAP forms (SCRIPT FORM or SMARTFORM) or the
customized form or the new form to its respective print programs. Also the output types, Form entry
are linked with their forms and print programs.if you create the output type using NACE then it will
be automatically visible in table NAST and TNAPR.
124. REUSE_ALV_VARIANT_EXISTENCE. Checks whether a display variant exists. This function
module checks the existence in the database.
125. TJ30T - User status table
126. ls-control-param-langu = ‘F’ - display smartform in desired language.
127. Collect statement duplication avoided, consider numeric fields.
128. Append statement allow duplication of fields

22
129. BAPI to read characteristics value : BAPI_OBJCL_GETCLASSES.
130. Function module to read selection screen data : RP_PNP_SHOW_SELECTOPTIONS.
131. Increase page size of report at output
132. REPORT ZTEST_01 NO STANDARD PAGE HEADING LINE-SIZE 533.
133. SE81 - Application Components hierarchy details
134. CONVERSATION ROUTINES FOR QUANTS : MEINS
135. CONVERSATION_EXIT_CUNIT_OUTPUT
136. Method for deleting file on Application server: NEW_FILE TYPE STRING.
137. CALL METHOD CL_GUI_FRONTEND_SERVICES => FILE_DELETE
138. EXPORTING = NEW_FILE
139. CONVERSATION ROUTINES FOR character name to char. number
140. CONVERSATION_EXIT_ATINN_INPUT
141. NAST : Message status table
142. SELECT - ENDSELECT :
Select end select is used if you want to operate on each record that you will get from the
database.
143. SELECT - SINGLE:
Select single is used for selecting single record from database.
144. SU21 - Maintain Authorization objects
145. A classic BAdI :
A classic BADI can be called only once and the call positions are registered centrally.
With the classical BAdIs, the filter values are stored in a structure and passed with the call of
the BAdI methods. With classic BAdIs, a BAdI object is created by calling a factory method,
and referenced via a reference variable of the type of the BAdI interface.

146. Explain ABAP program Types:


- Executable program in SE38
- Include program not able to execute in any of the tcode only included as sub program
- MODULE pool only execute through tcode create by you .
- Function group cannot be executed only function modules are executed @ se37
- subroutine pool again with in the program called can not be executed
- interface pool can not be executed
147. - class pool can be executed in tcode se24
- type pool can not be executed in any tcode

23
148. SAP Memory ABAP Memory
- Global - Local
- using get , set data on screen - import & export
- Available through out session - Only limited session

149. Menu Exit :

Menu exits add items to the pull down menus in standard SAP applications. You can use these menu
items to call up your screens or to trigger entire add-on applications.
SAP creates menu exits by defining special menu items in the Menu painter. These special entries
have function codes that begin with ‘+’ (a plus sign).

Transaction used for achieving this functionality is SMOD & CMOD.

150. Difference between user exits & customer exits:


User exit:- A user exit is a three character code that instructs the system to access a program during
system processing.
SXX: S is for standard exits that are delivered by SAP. XX represents the 2-digit exit number.
UXX: U is for user exits that are defined by the user. XX represents the 2-digit exit number.
user exits are available only for SD module.user exits make use of forms(subroutines. user exits have
the option to access global data.User exits are flexible and inconsistent.Created in SAP
namespace.You require access key to make changes.customer exits are not reusable

Customer exit:- The R/3 enhancement concept allows you to add your own functionality to SAP’s
standard business applications without having to modify the original applications. SAP creates
customer exits for specific programs, screens, and menus within standard R/3 applications. These
exits do not contain any functionality. Instead, the customer exits act as hooks. You can hang your
own add-on functionality onto these hooks.customer exits are available for all the modules such as
MM,SD,FI , etc.customer Exits make use of Function modules . customer exits we can only access the
import/export/changing/tables parameters of the Function modules . customer exits are restrictive
and consistent. Created in customer namespace.You dont require access key to make
changes.customer exits are reusable.

24
151. Customer exits can be further classified as:
Menu Exits:
Menu exits add items to the pulldown menus in standard SAP applications. You can use these menu
items to call up your own screens or to trigger entire add-on applications.
SAP creates menu exits by defining special menu items in the Menu Painter. These special entries
have function codes that begin with "+" (a plus sign). You specify the menu item’s text when
activating the item in an add-on project.
Screen Exits :
Screen exits add fields to screens in R/3 applications. SAP creates screen exits by placing special
subscreen areas on a standard R/3 screen and calling a customer subscreen from the standard
screen’s flow logic.
Function Module Exits :
Function module exits add functions to R/3 applications. Function module exits play a role in both
menu and screen exits. When you add a new menu item to a standard pull down menu, you use a
function module exit to define the actions that should take place once your menu is activated.
Function module exits also control the data flow between standard programs and screen exit fields.
SAP application developers create function module exits by writing calls to customer functions into
the source code of standard R/3 programs.
These calls have the following syntax:
CALL CUSTOMER-FUNCTION ‘001’.

Field Exits:
Field exits allow you to create your own programming logic for any data element in the Dictionary.
You can use this logic to carry out checks, conversions, or business-related processing for any screen
field. Example: The data element BBBNR identifies a company’s international location number. You
might want to set up your R/3 System so that all international location numbers are larger than 100.

152. Deep structures contain at least one deep component at any nesting level.
153. Nested structures contain at least one sub-structure. Whether a nested structure is flat or
character-like depends on all the components in it.
154. We can use projection views and database views in program declarations.
155. Table maintenance generator is used to create entries add, modify, delete record from
database table. SM30 creation. SE11 menu Option , SE37 - delete tmg.

25
156. Single step & two step we used this concepts in module pool programming.

Single step: Only overview screen is created i.e. the Table Maintenance Program will have
only one screen where you can add, delete or edit records.

Two step: Two screens namely the overview screen and Single screen are created. The user
can see the key fields in the first screen and can further go on to edit further details.

157. Steps to create TABLE MAINTENANCE GENERATOR:


- Go to se11 check table maintenance check box under attributes tab
- Utilities-TMG->create function group and assign it under function group
- Also assign authorization group default &NC& .
- select maintenance type as single step.
- Maintenance screen as system generated numbers this dialog box appears
- When you click on create button
- Save and activate table

158. Performance Techniques in SAP ABAP:


'FOR ALL ENTRIES' statement which allows you to build an internal table and then restrict
the database select to only get entries contained in it.Things to remember before using for
all entries:
- Always select all the key fields, even you are not using the fields further in program.
- Sort the table by fields in where clause.
- Check table is not blank before using for all entries. i.e If not it_tab1[] is initial.
- Delete the adjacent duplicates from the driver table.
- Otherwise, for the same entry system will check redundantly.
159. EXIT command behaviour in ABAP code?
- EXIT command will come out of the program if used inside an IF condition.
- If used in LOOP....ENDLOOP, EXIT will come out of the loop.
- If used in a FORM or PERFORM it will come out of the subroutine.
- Never use an EXIT command inside a USER EXIT because it pulls you out of the program.

160. Change package: from Menu > EDIT > Object Directory entry > Here we can change existing
package
161. Working with Version Management: Utilities -> Versions-> Version Management.

26
By using this we can see last object changes who has changed objects , last
changed details.

162. SE14 - database utility if we modified any z tables then we need to use this t-code.

163. Difference between BDC and BAPI:


BAPI BDC
- BAPI is faster than BDC - Slow
- BAPI directly updates DB - No updates
- Used for small uploads - BIG
- No foreground & background - yes- SM35
- Return parameter used - No

164. BAPI RFC


- BAPI based on API - FM
- Business objects associated with BAPI - NO
- Error & success logs returns - NO
- BAPI has methods , events - NO
- Non SAP word can commit - NO

165. Check table define when we maintain foreign key


166. Type of FM : Normal , RFC , Update
167. Aggregate Objects: Views, Lock Objects , Match Codes.

168. Important SAP ABAP Tcodes:

Serial Transaction Function


No Code

36 SE06 Set up workbench organizer

37 SE09 Transport organizer

38 SE10 Customizing organizer

27
39 SE11 Data dictionary maintenance`

40 SE12 Data dictionary display

41 SE15 Repository Info System

42 SE16 Display table content

43 SE17 General table display

44 SE37 ABAP Function Modules

45 SE38 ABAP Editor

46 SE41 Menu Painter

47 SE51 Screen Painter

48 SE71 Form Painter

49 SE80 Object Navigator

50 SE93 Maintain Transaction

51 SFT2 Maintain public holiday calendar

52 SFT3 Maintain factory calendar

53 SHDB Transaction Recorder

54 SICK Installation check

55 SLIN Extended Check

56 SM01 Lock Transactions

57 SM04 Overview of users

58 SM13 Update terminates

59 SM21 System Log

28
60 SM30 Maintain tables(not all tables can use SM30)

61 SM31 Maintain tables

62 SM35 Batch Input Monitoring

63 SM37 Overview of background jobs

64 SM39 Job analysis

65 SM49 External operating system commands, execute

66 SM50 Work process overview

67 SM51 Instance overview

68 SM58 Error log for asynchronous RFC

69 SM59 RFC connection, maintain

70 SM63 Operations mode, maintain

71 SM66 Global work process overview

72 SM69 External operating system commands, maintain

73 SP00 Spool

74 SP01 Spool control

75 SP02 Display output requests

76 SP11 TemSe(temporary sequential objects) contents

77 SP12 TemSe administration

78 SPAD Spool administration (printer setup)

79 SPAM SAP Patch Manager

80 SPAU Intersection SAP Transport/customer modifications

29
81 SPIC Spool; installation check

82 ST01 SAP system trace

83 ST06 Operating system monitor

84 ST07 Application Monitor

85 ST09 Table call statistics

86 ST11 Display developer trace

87 ST12 Application monitor

88 ST22 Dump Analysis

89 STAT Local Transaction statistics

90 STUN Performance monitoring

91 SU01 User maintenance

92 SU02 Maintain authorization profiles

93 SU03 Maintain authorizations

94 SU10 Maintain change to user records

95 SU12 Delete all users

96 SU2 Maintain user parameters

97 SU53 Display authorization checked values

98 SM12 To unlock the locked entries

99 SAAB Checkpoints that Can Be Activated

100 SALE ALE customizing transaction

103 NACE conditions of output control (to create a link between forms and

30
driver programs)

104 ST05 SQL tracer (for performance tunning)

105 SE30 ABAP runtime analysis(Performance tuning)

106 SE61 SAP Documentation

107 SE62 Industry Utilities

108 SE63 Translation: Initial Screen ( to Translate Short / Long Text )

109 SE64 Terminology

110 SE72 SAPscript Styles

111 SE73 SAPscript Font Maintenance

112 SE74 SAPscript format conversion

113 SE75 SAPscript Settings

114 SE76 SAPscript: Form Translation

169. Smartforms Request : SE03 : Enter object SSFO then we can see all details for particular
Smartforms.

170. Changing Lines in ABAP Internal Tables:

MODIFY it FROM gwa_student TRANSPORTING place


WHERE place = 'Bangalore'.

171. BDC Structure:


Program Char40 BDC Module pool
Dynpro Numc BDC Screen Number
Dynbegin Char1 BDC Screen Start
fnam Char12 BDC field name
fval char132 BDC Value

172. BDCMSGCOLL : Used for trap error


173. when error found in BDC that is caught using function module “format_message” and
stored into ITAB.

31
174. SM35 Stages - Processed , Being Recorded , Incorrect , Batch.

175. Types of Variants :

- Standard variants , Transaction variants , Screen Variants

176. Screen Variants :


In this we can assign number of users to particular group by setting proposal tab. variants
attached to standard table can be seen by system > Utilities > transaction Variants

177. Classical Report Events :

Initialization , At selection screen (IS PAI Events) , Start of selections, End of Selections.
178. SY-STEPL:
Refers to index of screen tables , that is currently processed. it has important during loop -
endloop. outside the loop it has no valid value.
179. TBTCO (Job headers) and TBTCO (Job steps)
180. Structure of a smartforms Form:

A form consists of pages, output areas, addresses, graphics (such as company logo, Scanned
Signature Of HR Manager), and data or text contents. Within an output area, you can use static or
dynamic tables to display data or texts in lines, columns, or cells. To further structure and format
text and data, use paragraphs with the paragraph and character formats. In SAP we call output areas
as Windows.

181. MAIN Window is used to Print the Dynamic Length Items, Sales Order Items.
182. Secondary Window :
In a secondary window you display text and data in predefined output area. There is no flow text
display with page breakup. If you position a secondary window with same name on several pages ,
the system displays the contents of this window on each page.

183. Final Window :


You may want to display or query values on the first page that are determined only during
processing. For example, you may want to name the grand total in the letter text of an invoice.
However, this amount is determined only after listing all individual items. Or you may want to query

32
on the first page within a condition the total number of pages, which the system calculates only after
processing all pages.
184. What is OOS Note : Online service note. SAP tries to solve problem by providing OSS notes.
185. How to disable screen fields in Module pool:
LOOP AT SCREEN.
IF screen-name = 'DISP'.
IF p_pspnr = 'X'.
screen-input = 1.
ELSE.
screen-input = 0.
ENDIF.
MODIFY SCREEN.
ENDIF.
ENDLOOP.

186. How to check current kernel Version/ Release in SAP:


To check the Kernel version, login to SAP system, click on System pull down menu and then
select Status.

187. Format color col_normal intensified off : control foreground color


188. SU21 - Maintain Authorization objects.

189. INSERT - inserts a new record. INSERT expects that a record with the required key does NOT
exist in the table. Therefore, if a record with the same key already exists, a runtime error occurs.

190. UPDATE - update an existing record. UPDATE expects that a record with required key exists
in the table. If a record with the required key does not exist, it issue an error (sy-subrc is 4).

191. MODIFY - acts like a combination of INSERT and UPDATE. If a record with the specified key
does not exist, it adds it to the table. If a record with the specified key does exist, it modifies it.
So MODIFY actually acts like "Insert or change record".

192. Binary statement always used with sorted tables and cant used with hashed tables.
193. SE09: request owner can be changed using this.
194. LFB1 : vendor master company code

33
195. MODIFY ...TRANSPORTING STATEMENT:
MODIFY ...TRANSPORTING STATEMENT statement is used to modify the fields in the internal
table that are given after TRANSPORTING.
MODIFY ITAB INDEX P_NO TRANSPORTING SNAME AGE.
196. TSPAT : Org. Unit sales division
197. TQOST : QM table for certification type

198. SAP BI T-codes:


RSA1 - Administration Workbench
RSA2 - Data Source extractor
RSA3 - Data Source Extractor Checker
RSRT - Query Monitor
RSDODS- EXIt DSO
RRMX - BEX Analyzer

199. SAP PP Tables:

200. Transport standard text : RSTXTRAN


201. Print Address on first page:
/: IF &PAGE& = 1.
/: ENDIF.

202. SAP SCRIPT Duplex printing of pages:


- PRINT-CONTROL duplex ON.

203. All text element start with ‘/E’ tag.


204. Print Signature on last Page :
/: IF &NEXTPAGE& = 0.
/: ENDIF.
205. SE63 : SAPscript in different language
206. OVER - Uploading pictures > OT >F8>St.doc > Save > use fm

207. Screen Painter Architecture:

34
Screen Part Description

Screen Attributes Screen attributes describe a screen object in the SAP


system. They describe the program to which the
screen belongs and the type of screen.

Screen Layout The screen layout describes both the screen elements
and their layout. The most common screen elements
are I/O fields, text fields, checkboxes, radio buttons,
pushbuttons and controls. Fields are defined in the
ABAP Dictionary or in your program.

Flow Logic The flow logic controls the flow of your program

208. STX4 : SAPScripts table


209. SAPScript Components:
Page , Window , page Window , Paragraph , character format , header
210. Check Consistency of SAPScripts : RSTXCHKO
211. SAPScript not work with ITF format
212. Offset is used for printing or displaying certain numbers of bytes , if offset grether than 30
then nothing printed.

213. Tables : T134 : Material Types


214. Tables : T134T : Material types description
215. Duplex printing in SAP : SPAD > take o/p devices > double click > print > duplex- triplex…
216. How can you format the data before write statement in the report?
217. By using the loop event the reports output can be formatted:

a) .at first

b) .at new

c) .at last

218. The difference between the table and template is that, table is a dynamic and template is a
static.
219. What is table buffer? Which type of tables used this buffer?

35
Over here, buffer means memory area, table buffer means the table information is available

on the application server. When you call data from database table, it will come from

application server. Transparent tables and pool tables are buffered, while cluster table

cannot be buffered.

220. What is the use of ‘pretty printer’?

To format the ABAP code ‘pretty printer’ is used.

221. What is the difference between ‘Type’ and ‘Like’?

‘Type’: You assign data type directly to the data object while declaring.

‘Like’: You assign the data type of another object to the declaring data object.

‘Type’ refers the existing data type while ‘Like’ refers to the existing data object

222. How data is stored in cluster table?

A cluster table contains data from multiple DDIC tables. It stores data as name value pair.

223. In the ‘select’ statement what is ‘group by’?

To fetch the data from the table by the specified field Group by Clause is used

234. Replace all occurrences of ‘*’ in : we find any particular field

235. At Selection screen output:

This event is triggered at the screen event PAI of a selection screen.

IF R1 = ‘X’.
PERFORM MODIFY.
endif.

FORM MODIFY.
loop at screen.
IF SCREEN-NAME = ‘X’.
SCREEN-ACTIVE = 0.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
ENDFORM.

236. LEAVE LIST-PROCESSING:

36
This statments Leaves the current program and continues processing after CALL
TRANSACTION , CALL DIALOG or SUBMIT prog AND RETURN .

237. Difference Between Select-Options & Ranges:

The main diff. between them is, while we use SELECT-OPTIONS system implicitly creates the
select options internal table which contains the fields of SIGN,OPTION,LOW & HIGH. But in
case of RANGES, this internal table should be defined explicitly.
238. When the SELECT-OPTIONS statement is executed, an internal table containing four
components, SIGN, OPTION, LOW, and HIGH is created. These components correspond to the
field of a database table or an internal field in the corresponding program

239. BDC Ok_CODES:

- /n : Terminate and marked as incorrect


- /bdel : Delete current batch input session
- /bbeg : Restart transaction
- /bend : terminate Batch input session
- /bda : Change display mode to processed
- /bde : Change display mode to read display

240. BDC Session log file print : RSBDCLOG

241. Generally CTU_PARAMS Is used to avoid unnecessary screens,even though they will not
appear in the recording. To handle screen resolutions in bdc.

242. BDCrecx1 is an include which contains selection-screen which we get when we execute the
BDC program using Recording.It contains Performs BDC_DYNPRO and BDC_FIELD which are
used to pass screen numbers and screen fields.It contains Session logic and call transaction
logic.just double click on BDCRECX1 and check it once.

243. Difference between call transaction ands session method (CLASSICAL BATCH INPUT):

call transaction Session method (CLASSICAL BATCH INPUT):

Immediate updation in the database tabl Data is not updated in the database table until the
session is processed.

sy-subrc is returned. No sy-subrc is returned.

37
Error need to be handled explicitly. Error log is created for error records.

updation can be synchronous as well as Updation is always synchronous


asynchronous

244. Table Maintenance steps:

- go to se11
- utilities - table maintenance
- enter authorization group
- enter function group
- specify screen type , single , two
- create t-code
- save & activate

245. BAPI to Update IQ02 Matrix code disable field:

DATA : allocvaluesnum like bapi1003_alloc_values_num occurs 0,


allocvalueschar like bapi1003_alloc_values_char occurs 0,
wa_allocvalueschar type bapi1003_alloc_values_char,
allocvaluescurr like bapi1003_alloc_values_curr occurs 0,
return like bapiret2 occurs 0.

call function 'BAPI_OBJCL_CHANGE'


exporting
objectkey = objectkey "'000000000010029313'
objecttable = 'EQUI'
classnum = 'MATRIX-DATEN'
classtype = '002'
status = '1'
tables
allocvaluesnumnew = allocvaluesnum
allocvaluescharnew = allocvalueschar
allocvaluescurrnew = allocvaluescurr
return = return.
call function 'BAPI_TRANSACTION_COMMIT'
exporting

38
wait = 'X'.

246. BAPI to get IQ02 Matrix code:

call function 'BAPI_OBJCL_GETDETAIL'


exporting
objectkey = objectkey " '000000000010029313'
objecttable = 'EQUI'
classnum = 'MATRIX-DATEN'
classtype = '002'
keydate = sy-datum
language = sy-langu
tables
allocvaluesnum = allocvaluesnum1
allocvalueschar = allocvalueschar1
allocvaluescurr = allocvaluescurr1
return = return.

247.Client Copy of Standard Text using SCC1 and RSTXTRAN

- Let’s first create the Standard text using transaction code SO10
- Hence, Create the TR using SE09
- Change the type using Request/Task -> Change Type.
- Select the “Development/Correction” and click on Ok.
- Go to SE38 and type RSTXTRAN and click on execute and fill the details as follows.
- Click on Execute and you will get the Provisional List of Text to be transferred.
- Click on the button “Trsfr texts to corr.” and then pop up will come.

- Click yes and you will get the text transfer result.
- let’s do the client copy using transaction code SCC1
- Don’t select test run
- Pass the request number
- Click on Start Immediately and you will then get the success message
- You will see the same Standard text in on other client for further testing.

483. SAPSCRIPT forms translation : SE76

484. Before deleting your code always save it into tmp for further references.

39
485. T001F - Company code-dependent form selection
486. T001G - Company Code-Dependent Standard Texts
487. T021M - Sort Variants
488. TBSL - Posting Key

490. Copy SAPSCRIPTS to ALL language’s:

- Go to the target client and execute program “RSTXFCPY”.


- Enter the form name against source client, target client.
- don’t select the check box “Original language Only”,
- If you want the form in original language and execute the report.
- It will ask for the package. Enter the package and click save.

493. Where the history of Transaction Codes does get stored?

- Go to Start -> Run -> regedit and click ok. It will open the following screen.
- Expand the node HKEY_USERS.
- After that expand the selected node and again expand it.
Click on Software -> SAP -> SAPGUIFront.
- Finally, expand the SAPGUIFront and click on Code. It will open the desired list of all t
codes - which user has entered on the command line on a SAP system in that particular
Computer.

494. Comparing two SAPscript forms:


- Go to the transaction code SE38 and enter the program name “RSTXFCOM”.
- Execute the program. Below screen will appear.
- Enter the form name, language as below and execute it. Enter the client.
- if you want to compare the cross client forms.
- Click Expand All.
- In this way we can compare the forms. The differences will be highlighted in red.

495. Converting Smart form output in to List Display in 1 step:


- Run the smart form.
- Write “SLIS” in the command window and press enter.
- The output is displayed in a List.

496. Forwarding spool request to your inbox:


- Go to the transaction code SP01, enter the spool request number and execute.
- Go to Spool Request->Forward->Send using “SAPoffice”.
- Enter the recipient address, check the copy checkbox and click on copy button.
- Check the status of the sent mail in transaction code SOST.
- Display document.
- If all the SMTP settings R configured the mail will get attachment in inbox.

497. Unlocking the transport request/task:

40
- Go the transaction code SE03 or execute the program “RSWBO099” using
- Double click on Unlock objects (Expert tool)
- Screen will appear. Enter the transport request and click execute
- Screen will appear. Click on unlock.
- The corresponding transport request will be unlocked.

498. Enable, disable and delete input history:

- Go to any t-code (SE38/SE24/SE37) and enter space. program history will appear.
- This can be disabled by clicking SPACE+CONTROL and right click.
- By default “Use Default Settings” will be selected. Click Disable history to disable
- Now we can’t see the input history.
- Enable the history.
- Check the history. The history of the program names will be available.

499. Uploading image without any distortion from original image:


- Go to the transaction code SE78 & Save the same image with the 256 color as below
- In this way we can import images with same color intensity as is.

500. Create Transport Request using Function Module

- Go to SE37, give FM name TR_INSERT_REQUEST_WITH_TASKS


- Execute it and enter the details:
Request Type: W- workbench, K- Customized
- In table IT_USERS we can give user names for which we want to create tasks:
- Press execute button
- You can go to SE01 and check this request

501. Restrict other users from editing a program or fm :

- Go to the t code SE38, program, select “Attributes” radio button change.


- In S38 Check the check box “Editor Lock” as below and click on save.
- Try to edit this report with someone else’s log in.
- Similarly, we can lock the function module with the help of edit lock.

502. Consistency check for SAP Script forms and styles:


- Go to the transaction code SE38 and enter the program name “RSTXCHKO”.
- Execute the program. Below screen will appear.
- Enter the object as FORM for SAP script form and STYLE for SAPscript style.
- Enter the object, select the check boxes as per require. and execute it, as below.
- In this way, we can perform the consistency check for the SAP scripts and styles.

503. ABAP Test Cockpit - ABAP Quality Tool:

ABAP Test Cockpit (ATC) is an SAP new tool for ABAP programs quality checking. ATC is
available from EhP2 for SAP NetWeaver 7.0 with support package stack 12. The ABAP Test
Cockpit is directly integrated into the ABAP workbench as well as in the ABAP Development
Tools for Eclipse and allows checking code from just within the development environment
the ABAP developer is used to.

SE38 > Menu > program > check > ABAP Test cockpit.

41
Go to transaction ATC -> ATC Administration -> Setup -> Configure ATC.

504. Function Modules used in read & save text : read_text & Save_text

509. Printing smartform without printer dialog


We need to set 'X' to NO_DIALOG into SSFCTRLOP(Smart Forms: Control structure) structure. We
have to export this structure through Smart Form function module.

ssfctrlop-no_dialog = 'X'. "It supresses the Printer dialog.


ssfcompop-tddest = p_printr. "Printer from selection-screen

"Get Function module name for given smartform


CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
formname = 'ZTEST_SMARTFORM'
IMPORTING
fm_name = fm_name.
"Call Smartform function module.
CALL FUNCTION fm_name
EXPORTING
control_parameters = ssfctrlop
output_options = ssfcompop
TABLES
it_nfal = it_nfal.

510. Smartform call within LOOP and ENDLOOP

LOOP AT it_nfal.
AT FIRST.
"Get Function module name for given smartform
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
formname = 'ZTEST_SMARTFORM'
IMPORTING
fm_name = fm_name.
ENDAT.
IF sy-tabix = no_of_records.
flag = 'Y'.

42
ENDIF.
APPEND it_nfal TO it_nfal_final.

525. What is RFC?

A Remote Function Call(RFC) is a call to a function module running in a system different from the
caller's. The remote function can also be called from within the same system (as a remote call).The
RFC interface provides the ability to call remote functions.

RFC consists of two interfaces :


1. A calling interface for ABAP Programs
2. A calling interface for Non-SAP programs.
Types of RFC:
1. Synchronous RFC - The calling program continues the execution only after the called
function is complete.
2. Asynchronous RFC - The calling program continues the execution without waiting for
return from the called function.
3. Transactional RFC - The called function module is executed exactly once in the RFC target
system. Each function call is seen as a transaction in the target system. Transactional
RFCs use the suffix IN BACKGROUND TASK .

536. Merging multiple transport requests into one:

Execute transaction code SE10, select the radio button “Workbench Requests” and click on display.

Following list is displayed with the Workbench requests (modifiable):

43
For example you need to merge above two transport requests into one request.
First click on New and create a workbench request.

Now select the Transport request in which you want to merge another request. Click on merge
button and give the transport request no. Click on Green tick.

44
Now expand the request, you will get the entry of merged transport request.

With same steps you can add more transport requests in your request.
Above steps holds good if you need to add/merge one or two transport requests. Sometimes there
might be a requirement to merge more requests in one. In such cases, proceed as mentioned
below:
First create a new transport request and click on merge as specified in above steps. Now select
‘Object lists from multiple requests’ and press on green tick.

45
Following screen is displayed:

Now enter all the transports requests numbers which need to be merged and execute.

46
Click on“Merge”
A popup screen to confirm the action is displayed. Click on “Execute online”.

Now expand the transport request. You will find all the merged transport requests.

1.1.1.1
1.1.1.2 How can I provide a background shading to the table?
In the Table Painter, you can specify the color and shading for the table lines.

Calling the function module to send mail:

SO_DOCUMENT_SEND_API1

47
To get subtotals on each page in smartforms
If the requirement is to get subtotal on each page, we can use calculation tab of smartforms which is
present on table line as shown in the figure below.

Put the name of the field of the table whose subtotal you want in the column Field Name.
Put a variable in the column Target Field Name. This variable will have the value of subtotal which
you got to print.

Set the time according to your requirement.

48

You might also like