SAP ABAP Basic Q's

25
SAP ABAP ABAP tutorials, notes, ebooks Home About Subscribe to Feed Latest Publications ABAP Data dictionary interview questions Posted in May 17, 2009 ¬ 5:27 pmh. CINTHIA NAZNEEN 1 Comment » Q. What’s the full form of ECC? Ans: Enterprice Central Component. Q. What’s the full form of IDES? Ans: Internet Demonstration and Evaluation System. Q. What’s ABAP dictionary and its role in SAP? Ans: ABAP dictionary is the central information base for the developers. This manages all definitions(metadata) required for different applications in SAP. ABAP dictionary is completely integrated into ABAP development workbench. All other component of ABAP development workbench can access the data definitions(meta data) stored in the data dictionary. Role : ABAP data dictionary supports definition of user-defined types (data elements, structures, table types). structure of database objects (tables, indexes and views) can also be defined. These user-defined types/objects are then automatically

description

Abap Questions

Transcript of SAP ABAP Basic Q's

Page 1: SAP ABAP Basic Q's

SAP ABAPABAP tutorials, notes, ebooks

Home About Subscribe to Feed  

Latest Publications

ABAP Data dictionary interview questions

Posted in May 17, 2009 ¬ 5:27 pmh. CINTHIA NAZNEEN 1 Comment »

Q. What’s the full form of ECC?

Ans: Enterprice Central Component.

Q. What’s the full form of IDES?

Ans: Internet Demonstration and Evaluation System.

Q. What’s ABAP dictionary and its role in SAP?

Ans: ABAP dictionary is the central information base for the developers. This manages all definitions(metadata) required for different applications in SAP. ABAP dictionary is completely integrated into ABAP development workbench. All other component of ABAP development workbench can access the data definitions(meta data) stored in the data dictionary.

Role: ABAP data dictionary supports

definition of user-defined types (data elements, structures, table types). structure of database objects (tables, indexes and views) can also be defined.

These user-defined types/objects are then automatically created in the underlying relational database using the above data definitions.

The ABAP dictionary also provides tools for editing screen fields (e.g., for assigning a field an input help i.e. F4 help).

Data dictionary ensures data integrity, consistency and security.

Q. What are the main object types of ABAP dictionary?

Ans: The object types of ABAP dictionary can be of following type:

Page 2: SAP ABAP Basic Q's

Tables : Tables are defined in the ABAP Dictionary independently of the database.A table having the same structure is then created from this table definition in the underlying database.

Views : are logical views on more than one table. The structure of the view is defined in the ABAP Dictionary. A view on the database can then be created from this structure.

Types (elements, structures, table types) : Types are created in ABAP programs. The structure of a type can be defined globally in ABAP programs. Changes to a type automatically take effect in all the programs using the type.

Lock objects :are used to synchronize access to the same data by more than one user. Function modules that can be used in application programs are generated from the definition of a lock object in the ABAP Dictionary.

Domains : Different fields having the same technical type can be combined in domains. Domain defines the value range of all table fields and structure components that refer to this domain.

Data element : The ABAP Dictionary also contains the information displayed with the F1 and F4 help for a field in an input template. The documentation about the field is created for a data element.

Input help : The list of possible input values that appears for the input help is created by a foreign key or a search help.

Q. Note on SAP tables(defining through ABAP dictionary).Ans: Tables are defined independently of the database in ABAP dictionary. The fields of the table are defined with their (Database-independent) data types and lengths. Using the table definitions stored in the ABAP dictionary, a table is automatically created in the physical database(when the table is activated).

Q. What are the components of a table definition.

Ans:

Table fields : For table fields, field names and data types are defined. Foreign keys: Relationship between the table and the other tables are defined. Technical settings : Data class and size category defines that what type of table

to be created and how much space required. Indexes : Secondary indexes are created for a table for faster data selection.

Again following are defined for a table fields:

Field name can be of maximum 16 characters in a table and must start with a letter.

Key flag determines if a field should be the table key. Field type depicts the data type of the field in the ABAP dictionary. Field length denotes the number of valid places in the field. Decimal places Number of places after decimal point for float type value.

Page 3: SAP ABAP Basic Q's

Short text describes the business meaning of the field.

Also fields from other structures can be added to the table definition as include.

Q. How data Type, field Length and short Text of any field is assigned?

Ans: i. Data type, field length (and if necessary decimal places) short text can be directly assigned to a field in the table definition.ii. Data element can be assigned to a field so that data type, field length (and decimal places) are automatically determined from the domain of the data element. The short description of the data element is then assigned to the field as a short text.

Q. What are the assignment options to the field?

Ans: i. Direct assignment of data types, field length, short text to a field.

ii. Data element assignment to a field.

iii. An input check(check table) for a field can be defined with a foreign key.

iv. A search help can be assigned to a field.

v. Reference field or reference table must be specified for a table field that holds currency or quantity type value.

Q. What’s reference table and reference field?

Ans: Reference table is specified for fields containing quantities(data type QUAN) or currency(Data type CURR). This reference table must contain a field with the format for the currency key (data type CUKY) or unit of measure (data type UNIT). This field is called the reference field of the output field. The reference field can also reside in the table itself.

E.g.: TAB1 contains the field PRICE which holds price values. Field UNIT contains currency key for PRICE.So,TAB1 is the reference table for field PRICE and UNIT is the reference field for field PRICE.

Q. What’s table include?

Ans: In addition to listing the individual fields in a table or structure, fields from another structure can be included as includes.

Q. What’s named include?

Page 4: SAP ABAP Basic Q's

Ans: If an include is added to define a database table or database structure, a name can be assigned to that included (included substructure). The group of fields of that include can be addressed as a whole in ABAP application programs with a group name which is called as named include.

E.g.:We can access field of a table/ structure in the ABAP application program in the following manner:

1. <TABLE / STRUCTURE NAME > - < FIELD NAME> 2. <TABLE / STRUCTURE NAME > - <GROUP NAME>-<FIELD NAME> 3. <TABLE / STRUCTURE NAME > - <GROUP NAME>

Q. Give an example of nested include.Ans: Structure S1 may include structure S2 and again S2 may include S3.

Q.What’s the maximum depth of nested includes in a table?Ans: Maximum depth is 9 i.e. maximum 9 structures can be included in a table/structure.

Q. What’s the number of characters limit for field name?Ans: A field name may not have more than 16 characters in a table, but in a structure maximum 30 characters are allowed for a field name.

Q. What are foreign keys?

Ans: Relationships between tables are defined in the ABAP dictionary by creating foreign keys.

Q. Whare are the uses of foreign keys in SAP?

Ans:

Using foreign keys(as main table-field is linked with check table), input value check for any input field can be done.

Foreign keys can also be used to link several tables.

Explaination on foreign keys:Suppose, tab1(Foreign key table or dependent table) contains the following fields: fld1(primary key), fld2, fld3, fld4, fld5 and Tab2(Referenced table) contains the following fields: fld6(primary key), fld7(primary key), fld8, fld9 and tab1-fld2 is connected to tab2-fld5, tab1-fld4 is connected to tab2-fld6Therefore, fld2 and fld4 fields of the table tab1 are called as foreign key fields to the table tab2 and tab2 is called as check table or referenced table.

Q. What are foreign key fields?

Page 5: SAP ABAP Basic Q's

Ans: One field of the foreign key table corresponds to each key field of the check table. That field of the is called as foreign key field.

Uses: A foreign key permits assigning data records in the foreign key table and check table. One record of the foreign key table uniquely identifies a record of the check table (using the value entries in the foreign key fields of the foreign key table).

Q. What’s check table?

Ans: Check table is maintained at field level for data validation.

Q. What’s check field?

Ans: One of the foreign key field is marked as the check field. This depicts that the foreign key relationship is maintained for that field. When a value is entered for that check field in the table, input validation checking is done i.e. a checking is done that whether the inserted value exists in the check table or not. If doesn’t exist then system rejects the entry else input validation check for that field is successful.

Q. What’s generic and constant foreign keys?

Q. What’s cardinality?

Q. What are the types of foreign key fields?

Q. What are text table?

Q. What is ‘technical settings’ of a table?What are the important parameters to be mentioned within it?

Q. What’s data class?

Ans: Data class is that which allows the table to get automatically assigned under specific tablespace/dbspace during table creation in the SAP database i.e. dataclass determines that under which table space/dbspace the table will be stored.

Q. How many types of data classes are there in SAP?

Data classes are mainly of three types(for application tables):

i.Choose APPL0(master data) for data that is frequently accessed but rarely updated/changed.ii.Choose APPL1(transaction data) for data that is frequently changed.iii.Choose APPL2(organizational data) for customizing data that is defined/enteredduring system installation and rarely changed.

Page 6: SAP ABAP Basic Q's

The other two types of data classes are:USR and USR1(for customer’s own development purpose).

Q. What’s size category?

Ans: The Size category is used to defined the space requirement for the table in the database.

Q. How many types of size category are there in SAP?

Ans: There are five size categories. Size category from 0 to 4 can be choosen for the tables. A certain fixed memory size is assigned to each category in the SAP database.

Q. What’s the utility of size category?

Ans: During table creation, the SAP system reserves an initial space i.e. an initial extent) in the database.If in any case more space is needed, then additional memory is added according to the mentioned size category for that table. correct size category prevents the creation of a large number of small extents for a table i.e. prevents memory wastage.

Q. What’s buffering?

Q. How buffers are filled up?

Q. What are the different buffering types?

Q. What are the different buffering permissions?

Q. How database tables are buffered?

Q. What’s logging?

Q. How many tables are there in SAP?

Ans: i. Transparent tables, ii. Pool tables, iii. Cluster tables.

Q. What is transparent table?

Ans: The tables which create 1-to-1 correspondence between the table definition in the ABAP data dictionary and the table definition in the physical database are called as transparent tables in SAP.

Q. Give examples of transparent table.

Ans: VBAK, VBAP, KNA1 etc.

Page 7: SAP ABAP Basic Q's

Q. What is table pool?

Ans: Table pool is a table in the SAP database in which many pool tables are assigned.

Q. What are pool tables?

Ans: Tables assigned to a table pool are called as pool tables.

Q. What are table clusters?

Ans: Table cluster is a table in the SAP database in which many cluster tables are stored.

Q. What are clustered tables?

Ans: Tables assigned to a Table cluster are called as clustered tables.

Q. Uses of table pool or table cluster.

Ans: Table pool or table cluster is used to store SAP’s internal control information (screen sequences, program parameters, temporary data, continuous texts such as documentation).

Q. Example of table cluster and cluster tables.

Ans: i. The table cluster RFBLG holds data for five transparent tables i.e. BSEC, BSED, BSEG, BSES and BSET.

ii. Other examples of table clusters are CDCLS, CDHDR, RFBLG, DOKCLU, DOKTL .

Q. What are the differences between transparent and cluster/pool tables?

Ans: i. A transparent table has 1-to-1 cardinality between the table definition in the data dictionary and in the table definition of sap database whereas cluster/pool tables have many-to-1 cardinality between the table definition in the data dictionary and in the table definition of sap database.

ii. Transparent tables are accessible both by Open and native SQL statements whereas table pool/cluster tables are accessible only by open SQL but never by native SQL.

iii. Transparent tables can store table relevant data whereas table pool or cluster tables can store only system data/ application data based on the transparent tables.

Q. What are tabs under the maintenance screen of the ABAP data dictionary screen?

Page 8: SAP ABAP Basic Q's

Ans: There are five tabs under ABAP dictionary.i.Attributes,ii.Delivery & maintenance,iii. Fields,iv. Entry help/check,v. Currency/Quantity fields.

Q. What is delivery class?

Ans: We need to insert an delivery class value while creating customized table in SAP through the transaction code SE11. Delivery class is that which regulates the transport of the table’s data records (during SAP installations, SAP software upgrade, client copies, and data transport to other SAP system). SAP and its customers have different write types depending on the variety of delivery class. If Delivery class is A, it depicts that the application table for master and transaction data changes only rarely.

Q. How many types of delivery classes are there in SAP?

Ans: There are following delivery classes:

i. A: Application table (master and transaction data) is maintained by the customersusing application transaction.

ii. C: Customer table. Data is maintained only by the customer.

iii. L: Table for storing temporary data.

iv. G: Customer table, new data records can be inserted but may not overwrite or delete existing ones.

v. E: System table with its own namespaces for customer entries.

vi. S: System table, data changes have the status of program changes i.e. System tablefor program’s nature. Maintained only by SAP. E.g.: Codes for SAP transactions.

vii. W: System table for system operation and maintenance. Table contents are maintained bymaintenance transactions. E.g.: function module table.

Q. What are the differences between domain and data element?

Ans: i.Domain depicts the technical attributes of a field (its data type, field length, no. of decimal places, appreance on the sreen) of a SAP database table. Whereas data element denotes the semantic attributes(short description, label names) for a field.

Page 9: SAP ABAP Basic Q's

ii.Data elements are directly attaced to the fields of SAP database tables and each data element has an underlying domain within it. Whereas domains are not directly attached to the fields and a single domain can be under many data elements.

iii.Within domain value range of a field can be described. Whereas within the data element parameter id and search help for a particular field can be assigned.

Q. What’s value table?

Ans: Value table is maintained at domain level in SAP. During domain creation, value range of the domain is defined by specifying value table. Suppose for a particular domain, its value table holds the values ‘A’, ‘B’, ‘Z’. So whenever the domain will be used, system will allow to use these values only.

Above question-answers are prepared and posted by: Cinthia Nazneen

Notes ABAP DATA DICTIONARY, ABAP Dictionary, APPLICATION TABLE, BSEC, BSED, BSEG, BSESM BSET, CARDINALITY, CDCLS, CDHDR, CHECK TABLE, CLUSTER TABLES, CLUSTERED TABLES, CUSTOMER TABLE, DATA CLASS, DATA CONSISTENCY, DATA DICTIONARY, DATA ELEMENT, DATA ELEMENTS, DATA INTEGRITY, DATA SECURITY, DELIVERY CLASS, DOKCLU, DOKTL, DOMAIN, DOMAIN INTEGRITY, DOMAINS, ECC, ENTITY INTEGRITY, FOREIGN KEY, FOREIGN KEYS, IDES, INDEXES, INPUT HELP, KNA1, LOCK OBJECTS, MAINTENANCE SCREEN, MAINTENANCE SCREEN OF ABAP DICTIONARY, MASTER DATA, METADATA, NAMED INCLUDE, NATIVE SQL, NESTER INCLUDES, OBJECT TYPES OF ABAP DICTIONARY, OPEN SQL, ORGANIZATIONAL DATA, POOL TABLES, REFERENCE FIELD, REFERENCE TABLE, REFERENTIAL INTEGRITY, RFBLG, SAP TABLES, SECURITY, SIZE CATEGORY, STRUCTURES, SYSTEM TABLE, TABLE CLUSTER, TABLE INCLUDE, TABLE POOL, TABLE TYPES, TABLES, TECHNICAL SETTINGS, TRANSACTIONAL DATA, TRANSPARENT TABLES, TYPES, Value table, VBAK, VBAP, VIEWS

ABAP Interview questions on ABAP reports

Posted in May 3, 2009 ¬ 2:43 pmh. CINTHIA NAZNEEN 3 Comments »

Q.1) What are SAP reports?

Ans: SAP Reports are event-driven programs using ABAP/4 programming langugage. These reports are used to fetch business-specific data from SAP standard databases under specified selection criteria, fetched data is processed to display result on output screen. User develop SAP report object on ABAP editor using the standard SAP transaction SE38.

Page 10: SAP ABAP Basic Q's

Q.2)What are types of reports?

Ans: i.Simple report and ii.Interactive report.

Q.3) What are ABAP report types?

Ans: ABAP report types are of 7 types. ABAP report types are available in report’s attributes screen.i.Executable program,ii.Function group (containing function modules) ,iii. Include ,iv. Interface pool ,v. Class pool,vi. Module pool,vii. Subroutine pool.

Q.4)What are the steps involved in interactive report?

Ans: i. Basic list is displayed.ii.Case 1: User double clicks on any key figure to get more detailed data on itCase 2: User presses on any customized toolbar button so that another specified process is performed or corresponding event is trigerred.

Q.5)How many lists can be displayed through an interactive report?

Ans: Maximum 21 lists can be displayed(1 basic list+ 20 secondary lists).

Q.6)What are the events in classical and interactive reports?

Ans: EVENTS IN A CLASSICAL REPORT:

1. INITIALIZATION.2. AT SELECTION-SCREEN OUTPUT.3. AT SELECTION-SCREEN/<field>.4. START-OF-SELECTION.

OUTPUT EVENTS(5, 6):5. TOP-OF-PAGE.6. END-OF-PAGE.7. END-OF-SELECTION.

EVENTS IN AN INTERACTIVE REPORT:

In addition of the above, the following events are possible in case of Interactive Reports.i.Top of page during line selection.ii.At line-selection.

Page 11: SAP ABAP Basic Q's

iii.At pF<key>.iv.At user-command.

[P.N.: For detailed notes on events :  http://www.abapguide.com/notes/events-in-report/]

Q.7)what is the event that will be triggered first in an ABAP report?

Ans: Initialization event is triggered first if user executes an ABAP report. But if the program is of type 1, M, F, or S; then LOAD-OF-PROGRAM is trigerred first and then INITIALIZATION event.( Note:  The purpose of load of program is to load the program into system memory so that the program can be executed.)

Q.8)What are the events in dialog program?

Ans: i.PBO :  Process Before Outputii.PAI : Process After Inputiii.POH : Process on Helpiv.POV : Process on Value Request

Q.9)What are the differences between simple and interactive ABAP reports?

Ans: A simple ABAP report allows the user to interact with the whole business-result data.In case of interactive reports user can interact with specific result data at a time.

Q.10)Mention the steps involved in case of displaying data of an interactive report?

Ans: i. Execute the reportii. Click on the specific key field to display data of the secondary list.

Or, click on application toolbar button or any screen button for required data display.

Notes ABAP REPORT, ABAP REPORT TYPES, ABAP/4, AT PF, AT SELECTION-SCREEN, AT SELECTION-SCREEN OUTPUT, AT USER-COMMAND, BASIC LIST, CLASS POOL, CLASSICAL REPORT, END-0F-PAGE., END-OF-SELECTION, EVENT, EVENT-DRIVEN PROGRAMS, EVENTS IN CLASSICAL REPORT, EVENTS IN INTERACTIVE REPORT, events in report, EXECUTABLE PROGRAM, FUNCTION GROUP, INCLUDE, INITIALIZATION, INTERACTIVE REPORT, INTERFACE POOL, LOAD OF PROGRAM, MODULE POOL, OUTPUT EVENTS, REPORTS, SAP, SAP REPORTS, SE38, SECONDARY LIST, SIMPLE REPORT, START-OF-SELECTION, SUBROUTINE POOL, TOP OF PAGE DURING LINE SELECTION, TOP-OF-PAGE, TYPES OF REPORTS

REUSE_ALV_EVENTS_GET

Page 12: SAP ABAP Basic Q's

Posted in December 18, 2008 ¬ 7:24 amh. CINTHIA NAZNEEN 1 Comment » REUSE_ALV_EVENTS_GET: Returns table of possible events for a list type=======================================================================After preparing the fieldcatalog the next step is to build an event table for both user commands and system dependent events like top of page, end of page etc. and to print data at the top of the list, at the end of the list and handlinguser action on the list.A list of possible events is populated into an event table i_events.When this table is passed from the function module REUSE_ALV_EVENT_NAMES_GET the  function module returns all the possible events for a list type.The purpose of REUSE_ALV_EVENTS_GET is, in your ALV Program you have any HEADER part for that you write a form Top-of-page and you mention in ALV function module, for calling that subroutine this function moodule is used.The i_event internal table is of TYPE SLIS_T_EVENT(i.e., ET_EVENTS TYPE SLIS_T_EVENT).This table i_events contains all the events wrapped up in the ALV LIST or ALV GRID and i_event also consists of two fields NAME and FORM. The name field of the table holds the name of the events like TOP-OF-PAGE and END-OF-PAGE, USER-COMMAND and form will contain the name of the FORM ROUTINE that will be called dynamically through callback mechanism when the particular event will fire.i_event is initial for all events as default.*&———————————————————————**&      Form  EVENT_TAB                                                **&———————————————————————**       subroutine for populating the events                           **———————————————————————-*FORM event_tab .* Call FM ‘REUSE_ALV_EVENTS_GET’ to get the eventsCALL FUNCTION ‘REUSE_ALV_EVENTS_GET’EXPORTINGi_list_type     = 0IMPORTINGet_events       = i_eventEXCEPTIONSlist_type_wrong = 1OTHERS          = 2.IF sy-subrc <> 0.MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgnoWITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.ENDIF.ENDIF.ENDFORM.                    ” EVENT_TAB* READING THE EVENT FOR THE HEADERREAD TABLE i_event INTO w_event WITH KEY name = ‘TOP_OF_PAGE’ .IF sy-subrc = 0.w_event-form = ‘TOP_OF_PAGE’.MODIFY i_event FROM w_event INDEX sy-tabix TRANSPORTING form.========================================================================In the above function-module check the statement w_event-form = ‘TOP-OF-PAGE’.Here the form routine ‘TOP-OF-PAGE’ is being set up for the event TOP_OF_PAGEevent which will fire when the ALV LIST will be displayed, this form will be calleddynamically by the ALV list display during TOP-OF-PAGE event and for this,the modified

Page 13: SAP ABAP Basic Q's

events internal table has to be passed to the FM ‘REUSE_ALV_LIST_DISPLAY’ in the exporting parameter IT_EVENTS.Failing this the form ‘TOP_OF_PAGE’ will not be called.This event is used for placing heading information like showing current date and time or the name of the report at the top of the report.Posted by: Cinthia NazneenNotes ALV, EVENT, IT_EVENTS, RESUE_ALV_LIST_DISPLAY, TOP_OF_PAGE

ABAP CERTIFICATION QUESTIONS, EBOOKS, SYLLABUS

Posted in October 14, 2008 ¬ 7:27 amh. CINTHIA NAZNEEN 2 Comments »

Download from the following link:

abap-certification-questions

sap-abap-exam

Download an excellent ebook on ‘SAP ABAP Interview Questions, answers, explainations: ABAP Certification Review’ :   ABAP CERTIFICATION REVIEW

SAP CERTIFICATION SYLLABUS:  Click here to view

Posted by: Cinthia Nazneen

certification papers ABAP, ABAP CERTIFICATION, ABAP CERTIFICATION QUESTIONS, CERTIFICATION QUESTIONS

DISPLAY OF CLASSICAL REPORT

Posted in August 4, 2008 ¬ 3:48 pmh. CINTHIA NAZNEEN No Comments »

If i_final is the final internal table containing  retrieved business data, and w_final is the work area of your final internal table, then you can display the result (classical report view) by writing code in following manner.

*&———————————————————————**&      Form  TOP_OF_PAGE*&———————————————————————**       For data display*———————————————————————-*form TOP_OF_PAGE .

Page 14: SAP ABAP Basic Q's

IF NOT i_final[] IS INITIAL.ULINE.WRITE:/1 sy-vline,2 ‘PO Number’,12 sy-vline,13 ‘PO Line Item’,25 sy-vline,26 ‘Ex/Non Ex’,35 sy-vline,36 ‘Date In’,44 sy-vline,45 ‘MM Document’,56 sy-vline,57 ‘Item’,61  sy-vline.ULINE.

LOOP AT i_final INTO w_final.WRITE:/1  sy-vline,2  w_final-ebeln,       “PO Number12  sy-vline,13  w_final-ebelp,      “PO Line Item25  sy-vline,26  w_final-segal,      “Ex/Non Ex35  sy-vline,36  w_final-aedat,      “Date in44  sy-vline,45  w_final-mblnr,      “MM document56  sy-vline,57  w_final-zeile,      “Item61  sy-vline.ENDLOOP.ENDIF.endform.                    ” TOP_OF_PAGE

Uncategorized ABAP, CLASSICAL, CLASSICAL REPORT, REPORT, SAP, TOP-OF-PAGE

client-dependent and client-independent table in ABAP

Posted in March 28, 2008 ¬ 3:30 pmh. CINTHIA NAZNEEN No Comments »

In SAP, highest level of organization structure is client.Whenever we login to SAP system, we login to a specific client. Data in the R/3 sytem is categorized as client-dependent and client-independent.

Page 15: SAP ABAP Basic Q's

Client dependent table:

Client dependent tables are always client-specific. These cannot be accessed from any other client. First column of any client-dependent table is always client(type MANDT) by default and it’s a primary key, this field contains the client no.

A client-dependent table may have different dataset for different clients.

Client independent table:

Client-independent table are cross-client i.e. independent of any client, so accessible from any other client and changes made in this table under one client, will be reflected in all the other clients. Hence, a client-independent table will always have same dataset for all clients.

Identifying the client dependent and independent tables:

Check table DD02L is having a field named CLIDEP which is with the short-text ’flag-indicating client-specific entries’. Execute this table. Records having CLIDEP(Client-speicific) checked as ‘X’, are containing tha names of client-dependent tables, and rest records are containing the name of client-independent tables.

Posted by: Cinthia Nazneen

Notes ABAP, CLIDEP, client, client dependent, Client dependent table, client independent, client independent table, cross-client, DD02L, MANDT, R/3, SAP, sap table, SAP TABLES

Events in an ABAP/4 Report Program

Posted in December 29, 2007 ¬ 3:44 pmh. CINTHIA NAZNEEN 11 Comments »

There is no mandatory event in a report program. Events are actually used to organize the statements and control the flow of the program. If the program contains no explicitly defined event blocks, all the statements in the program form the entire event block START-OF-SELECTION. ABAP runtime environment automatically introduces a START-OF-SELECTION at the first execution line.

ABAP/4 report programs are event driven programs. Following events are triggered in a report.

LOAD OF PROGRAM. - If propgram is of type 1, M, F, or S; then LOAD-OF-PROGRAM is trigerred first and then INITIALIZATION. The purpose of load of program is to load the program into system memory so that the program can be executed.

INITIALIZATION. - just once.

Page 16: SAP ABAP Basic Q's

AT SELECTION-SCREEN OUTPUT. - when there is selection-screen

AT SELECTION-SCREEN. - when user interacts.

START-OF-SELECTION. - when F8.This is the default event in ABAP.

END-OF-SELECTION. - At the end

EVENTS IN A CLASSICAL REPORT:

1. INITIALIZATION: This is triggered when the report is loaded in memory.

2. AT SELECTION-SCREEN OUTPUT: This is triggered when the selection screen is loaded in memory before being displayed.

3. AT SELECTION-SCREEN/<field> : This event is triggered before leaving the selection screen.

4. START-OF-SELECTION: This is the the first and default event for displaying the report. Data retrieval logic is written under this event.

OUTPUT EVENT(5, 6):5. TOP-OF-PAGE: This event is triggered every time a new page is started in the list.

6. END-OF-PAGE : This event is triggered every time the list data reaches the footer region of the page.

7. END-OF-SELECTION: This event is triggered after the START-OF-SELECTION is completed.This event is used when there is use of logical data base in the report. It is triggered in type 1 programs once the logical database completes reading all data i.e. all the selection is finished and before the list processor is started. This statement tells the server that all the database reading is completed and no more data reading is going to take place. END-OF-SELECTION is generally used for the summary/results of reports. In an executable program without logical data base, there is no need to implement the event block END-OF-SELECTION.After a program is executed by the user, the database is locked when it encounters a START-OF-SELECTION statement and the lock is released when an END-OF-SELECTION statement is encountered (to maintain the consistency). Data selection is done between START-OF-SELECTION and END-OF-SELECTION. Now if we don’t write the END-OF-SELECTION statement, the database will remain locked till the programs get terminated. Hence, the performance will be reduced. So it is always good practice to write END-OF-SELECTION statement after finishing the data selection from database.

EVENTS IN AN INTERACTIVE REPORT:

Page 17: SAP ABAP Basic Q's

In addition of the above, the following events are possible in case of Interactive Reports.

1. Top of page during line selection : top of page event for secondary list.

2. At line-selection : evey time user dbl-clicks(F2) on the list data.

3. At pF<key> : function key from F5 to F12 to perform interactive action on the list.

4. At user-command.

==================================================

Finally I want to include one point:If you debug your report program from the Abap editor screen then it triggers from1.Initialization,2.At Selection-screen,3.Start-of Selection,4.End-of Selection,5.Top-of-page,6.End-of-page.

But if you debug from the selection-screen then it triggers from1.At Selection-Screen,2.Start-of-selection,3.Top-of-page,4.End-of-page.

Posted by: Cinthia Nazneen

Notes ABAP/4, AT LINE-SELECTION, AT PF, AT SELECTION-SCREEN, AT SELECTION-SCREEN OUTPUT, AT USER-COMMAND, CLASSICAL REPORT, END-OF-PAGE, END-OF-SELECTION, EVENT, EVENTS, INITIALIZATION, INTERACTIVE REPORT, LOAD OF PROGRAM, REPORT, START-OF-SELECTION, TOP OF PAGE DURING LINE SELECTION, TOP-OF-PAGE

EVENTS IN ABAP

Posted in December 29, 2007 ¬ 3:42 pmh. CINTHIA NAZNEEN No Comments »

There will be different types of events in ABAP.

Events in Dialog ProgramPBO - Process Before OutputPAI - Process After InputPOH - Process on HelpPOV - Process on Value Request.

Page 18: SAP ABAP Basic Q's

Events in Classical ReportINITIALIZATIONAT SELECTION-SCREEN OUTPUTAT SELECTION-SCREENSTART-OF–SELECTION.TOP OF PAGEEND OF PAGEEND-OF-SELECTION.

Control Break events related to Internal TablesAT NEW FIELDAT END OF FIELDAT FIRSTAT LAST

Events in Interactive Report AT USER-COMMAND.AT LINE-SELECTIONAT PF-FUNCTION KEY

Notes ABAP, CLASSICAL REPORT, CONTROL BREAK EVENTS, DIALOG PROGRAM, EVENTS, EVENTS IN CLASSICAL REPORT, EVENTS IN DIALOG PROGRAM, EVENTS IN INTERACTIVE REPORT, PAI, PBO, POH, POV

SAP-TABLES

Posted in December 15, 2007 ¬ 3:38 pmh. CINTHIA NAZNEEN No Comments »

Download SAP-TABLE help ebook. This is a very useful one I found.

SAP TABLE INDEX:

1. SD Table index

2. MM table index

3. Purchasing table index

4. FI table index

5. PS tables

6. PP tables

7. SAP PM-SD Tables

Page 19: SAP ABAP Basic Q's

8. HR tables/Infotypes tables

9. System tables