SAP ABAP DDIC Interview Questions

SAP ABAP DDIC Interview Questions: Mastering Data Dictionary Management for Efficient System Development



1) What is DDIC?

Ans: 
  • It stands for a data dictionary. this is a centralized and structured source of information for business applications. 
  • The central storage location of data.
  • Its main function is to support the creation.#
  • transaction code - SE11.
  • The ABAP Data Dictionary is a powerful tool used in SAP systems to define, manage, and store data objects such as tables, views, data types, and domains. It acts as a central repository for all data definitions, which are used by ABAP programs to perform operations on the data.
2) What are the different types of Data Dictionary Objects?

Ans:  There are 7 types of DDIC objects:

  •  Database Tables
  •  Domains
  •  Data types: i) Data element ii) Structure iii) Table type
  •  Search helps: i) Elementary search help ii) Collective search help
  •  Views: i) Database view ii) Maintenance view iii) Help view iv) Projection view
  • Type groups
  •  Lock objects.
3) What are database tables and their type?

Ans:  Database table stores data records in the form of rows and columns. There is 3 type of database table.
  • Transparent Table
  • Pooled Table
  • Cluster Table
 In Real-time we mostly use transparent tables.


Open SQL: It is a set of statements that can interact with any kind of database.

Native SQL: It is specific to the particular database & it hits the database directly.

4) What types of technical properties of a table and explain them?

Ans: There are 7 types of tech. properties. 

1) Delivery Class: -

  • It is used to control the Transport of the table data or to specify the type of the table.

      In Real-time we mostly use the delivery classes A and C.

2) Table view maintenance: #

 3) Data Class:

  •  It is used to specify the type of data to be maintained in the table.

  In Real-time we mostly use APPL0 or APPL1.

  • APPL0 – Master data – Access frequently &updated (changed) rarely. Ex: D.O.B
  • APPL1 – Transactional data – #
  • Organization & Customizing data – Updated rarely. Ex: Company Codes

4) Size Category:

  • It is used to specify the initial space required for the table in the database.

 In real-time we mostly use the '0' category. ( 0 – 7 ) -> [ 0 – 7100]

5) Buffering: 

  • It is used to control (reduce) the traffic in the database when the table is accessed by multiple users.
  • In Real-time we mostly use the mode “Buffering not allowed " – The table Can’t be buffered
  • #
  • Buffering Switched on – The table can be buffered. In the case of this option, any one of the buffering types should be selected.

i) Single record buffering: In the case of this buffering type, record by record is buffered from the database tables.

ii) Generic Area buffer: It is used to buffer the table data based on the specified key fields. In the case of this buffering type, the no. of key fields must be specified.

iii) Fully buffer: The entire table is buffered.

6) Enhancement category: 

  •  It is used to enhance the particular fields of the table.

 In Real-time we mostly use Can be enhanced(DEEP).

7) Table Maintenance generator: 

  • It is used to maintain multiple entries & validate the table data using the T-code SM30.
5) What is the purpose of the Table Maintenance Generator (TMG)?

Ans: - It is used to maintain(Change, create, modify) the custom tables using the standard T-Code

 SM30.

6) What are the events in TMG?

Ans: Validation can be done by Table events using SM30. Totally 38 events are there in TMG.

1. #

2.#

 3. Before deleting the data display.

 4. After deleting the data display.

 5. Creating a new entry.

7) What are the steps to create TMG?

Ans: - Following steps can be used to create the TMG.

  •  Execute SE11
  •  Select the Radio button DB Table
  •  Provide the Table name & click on change
  •  Click on utilities.
  •  Click on TMG.
  •  Select the auth. the group as &NC& and Provide the function group as your table name
  •  Select the one-step radio button.
  •  Enter the overview screen number (could be any). [4 digit only]
  •  Click on create icon(F6) & Click on save.
  •  Press enter button & Click on Local Object & Click on Back.

8) How data is stored in the cluster table?

Ans: 

  • #
9)#

10) What are the differences between the Include structure and the Append structure?

Ans:

11) How to identify the standard tables? (Indications)

Ans:- 

  • The tables don't start with Z or Y.
  • The tables can't be seen in the CHANGE mode.
12) How to see the relationship between the tables?

Ans:-

  •  Using SQVI T-Code.
  •  While maintaining data in the child table (Foreign key relationship).
13) How many types of Indexes are there and explain them?

Ans:- Indexes are used to avoid duplicate data while accessing the table. Indexes can also be used for better performance while extracting the data from the tables. There are 2 types of Indexes.

  • Primary index: It is generated by the system using the key field of the tables. Keyfields hold unique data.
  • Secondary Index: These are created and maintained by the Technical Consultants/ABAPer.

We can create 9 secondary indexes per table. We can create secondary indexes for both custom and standard tables.

14) What is the Where Used List?

Ans: It is used to list out all the dependent objects & know the usage of the particular object.

The T-code SQVI is used to check the relationships between the tables.

 15) Can we add/Enhance additional customer-specific field values to standard domains?

Ans: Yes, the standard domains can be enhanced to add, additional customer-specific fixed values

& intervals using the Menu path: Go to ->Fixed Value Append at the Domain level.

16) What are the differences between the Check table and value table?

Ans:-


17) What are the types of Views and explain them?

Ans: - Views are the virtual/imaginary tables. It does not contain the data permanently. A view contains the data at the Run time only.

  • Database View: It is used to combine multiple tabled data by joining them. It can be used to extract the data in the programs.
  • Maintenance View:  It is used to maintain multiple tables of data using the T-code SM30 (TMG).
  • Help View: It is used in the selection method in an Elementary Search Help to provide the list of possible entries from multiple tables.
  • Projection View: It is used to hide the unwanted fields of the table. It can be defined using one table only.

18) What are the Search Help and its types explain about them?

Ans: - It is used to provide all the possible entries to the input variable as search help.

  • Elementary Search help:  It is created using one base table.
  • Collective Search help: It is the collection of Elementary Search help.

Search Help Exit: It is a Function module to filter possible entries of a search help. It is used to modify the F4 values at run time.

19) Is it possible to create a table/structure without creating any data elements and domains?

Ans:- Yes, we can create using the predefined types.

  • It is used to create the table without using Data Elements/Domains.
  • If the table or structure is created using predefined types, the symbol ' + ' is appeared instead of field labels while maintaining the tables.
  • Reusability is not possible with the Predefined Types.

20) What are the Lock objects and explain the different lock modes?

Ans:- They are used to control the parallel access for the same data by multiple users. It avoids the concurrency access of multiple users on the same Database.

  • The custom lock object name should start with 'E' followed by the table name.                                Ex: - E < ZB16_Student >.
  • It generates two function modules one starts with ENQUEQE and another starts with DEQUEQE.
  • ENQUEQE - Request for Lock
  • DEQUEQE -To Release the Lock

Types of Locks:

  • Write/Exclusive: The locked data can be accessed by a single user only. All other Lock requests are rejected.
  • Read/Shared: Multiple users can access the same data simultaneously. If no user tries to edit the data, all other users cannot access this data.
  • Exclusive but not Cumulative: It can be requested only once by the given transaction Codes. All other lock requests are rejected.

SM12 : This T-code is used to list out the locked objects & to delete the locked objects.

21) What is the difference between a Table and a Structure?

Ans:-


22) Explain about Data element & Domain?

Ans:-

  • Data Element:
  1. It is one of the data dictionary objects which can be used to maintain the field labels (descriptions) of the fields in the table or structure.
  2. Parameter IDs are maintained at the Data Element level under Further Characteristics tab.
  3. A Data Element is a domain-based object that defines the technical attributes of a field, such as data type, length, and decimal places. It is a reusable object that can be used across multiple tables and views in the Data Dictionary. Data Elements provide consistency and data integrity in the system.

  • Domain:  
  1. It is one of the data dictionary objects which can be used to maintain the technical properties of the fields in the table such are Data types (char, int....etc), and length of the data (10,20...etc)
  2. It can be used to maintain a Value table to provide search help on the field.
  3. Conversion Routines are maintained at Domain Level.
  4. A Domain is a predefined set of technical characteristics that define the value range and data type of a field. It represents the semantic meaning of a field and is used to ensure data consistency and integrity. Domains are used in Data Elements and can be reused in multiple Data Elements.
23) How to adjust the table/View?

Ans: If there were any changes made at the table level the system will throw an error as Structure change at the field level. The table must be adjusted to rectify this error.

  • The T-Code SE14 or the path: Utilities ---> database objects ---> database utility can be used to adjust the table.
  • If the key field is changed to a non-key field then the system throws an error ‘Convert Table’: structure changed at Table level.
24) I have a Z-Table, I want to add one more field to the table without disturbing previous data, what should I do?

Ans: While adjusting the database table in SE14, select the 'Save Data' radio button.

25) What are the different ways to provide search help?

Ans:- We can provide in 3 ways.

  • Using value table at a Domain level.
  • Foreign key relationship.
  • Elementary and collective search help.
26) What is type group and explain?

Ans: 

  • It is used to define the Global types, Internal tables, and constants which can be referred to anywhere in the system.
  • It is one of the data dictionary objects.
  • The ABAP statement TYPE-POOLS is used to call/define the type group.

27) What is table type and explain?

Ans: It is one of the data dictionary objects used to define the global internal table which can be referred to across the system.

28) What is the Maximum No. of structures that can be included in a table or Structure?

Ans: 9 ( Nine ).

29) Can you use all the Views in the ABAP Program?

Ans: No. We can use only the Projection view or database view in the Program.

30) In which table are the programs, Tables, and Development classes sorted?

Ans: The Program details are stored in the table TADIR, Database tables in DD02L and DD02Tand the development class packages in TDEVC.

31)Explain the tables TADIR and TRDIR?

Ans: TADIR is a table that holds the Data Dictionary objects. i.e; Data elements, Domains, Tables

& TRDIR stores all the Programs details.

32) When you create new entries in the table the field values are always in Uppercase. How do you get the data with a mixed case? (OR) How to make a table field to store a lowercase value?

Ans :-

  • The reason for this is that the Domain for the Field in the table might have a Lowercase checkbox unchecked. Check the LOWERCASE CHECKBOX to preserve the case of your data.
  • The checkbox Lower case is checked to make character fields case sensitive to accept both Upper and Lower case letters. Since the system takes the ‘Character’ data type as Upper case letters by default. Also, we can determine whether a field stores lowercase values or not by checking the Lower Case check box of its domain. If this is checked then it will store both lowercase and uppercase. If it is not checked then it will store only uppercase values.

Steps:

1. Create a demo table that is ZDEMOTABLE.

2. Generate Table Maintenance for this.

3. Now create new entries with the help of transaction SM30.

4. Click on New entries.

5. Enter value and save.

6. Data will be saved in capital letters or check entries using transaction SE16.

7. Now we want to store the entries in lowercase. Here are the steps to achieve this.

a. Go to the domain of the field to which you want to store values in lowercase.

b. Click on the Change/display button.

c. Check the Lower Case check box.

d. Save and activate the domain.

e. Now again create new entries with the help of t-code SM30. Enter values and save.

Output:

Values will be stored in the given case.

33) What is the Transaction code?

Ans: They are the commands/shortcuts to execute a corresponding application. In SAP each screen is associated with T-Code.

  • Standard T-code: They are the system provided to work with the pre-defined applications. The Standard T-codes could only be the combination of any alphabet/alpha-numeric. Eg: SQVI, SE11, SE38 (SE-System Engineering, SM–System Machine, SQ-System query).
  • Custom T-code: They are created & maintained by ABAP Technical Consultant. SE93 is used to work with custom T-code.
  • TSTC: It is the standard table that contains all the Transaction Codes in the system.

34) What is Client & Server?

Ans: 

Client: It is a software/hardware combination that can send requests for services from the central system.

Server: It is a software/hardware combination that can provide services to a group of clients.

35) Explain about 3-Tier Architecture?

Ans:

  •  Presentation Layer (GUI): It is an environment where all the users are sent for the services.
  • Application Layer: It receives requests from the presentation layer to get them processed. It also sends back the services to the presentation layer. There are 4 types of components in the application layer.                                                                                                                                  1)Dispatcher: It is a link between the presentation layer & the work process. It receives the request from the presentation layer & sends them to an appropriate work process to get them processed.                                                                                                                                          2) Gateway/Layer: It is a communication protocol of the cross-application components such are  $, BAPI, etc. It provides a link between two SAP systems.                                                             3) Shared Memory: It is a common memory that can be shared by all the work process.           4) Work Process: It is a component to execute the applications.
  • Database Layer: It is the central repository of the data. It provides database services to a group of clients.
36) What is the Command field?

Ans: It is used to execute the T-codes in SAP which are located on the standard toolbar.

  • /o: It is used to execute the T-code in another new session.
  • /n: It is used to execute the T-code on the same session by closing the current session.

37) What are Workbench objects/tools?

Ans: It is a collection of tools that can be used to develop the applications, change the existing applications & implement customer-specific business requirements.

38) What is Object Navigator?

Ans: It is the central point of entry to work with any kind of workbench objects such as Programs,

DDIC objects, Function groups, etc. The T-code is SE80.

39) What is Foreign Key?

Ans: A key field is defined as a table field & is the primary key of another table is called a foreign key.

40) What is a Client Dependent & Client Independent table?

Ans: The table which has the field MANDT field (Client no) is called the Client Dependent table. The table which doesn’t have the MANDT field (Client no) is called the Client Independent table.

41) What are Key field & Non-key fields?

Ans: The key fields don’t allow duplicates. It contains unique data. The key field checkboxes are checked to make the field a primary key. The non-key fields may/may not allow duplicates. The key field checkboxes are unchecked.

42) What is the Initial Value Check box?

Ans: The Initial Value Check box is checked to take the default field values of the key fields for the 1st time.

43) Differences between the tables created using Data elements & Pre-defined types?

Ans:


44) What are the Important Tables to store the Definitions of DDIC?

Ans:



45) Explain about Currency or Quantity fields in DDIC?

Ans: In SAP the currency & quantity fields are required currency key & quantity unit. Hence, the reference table & the reference field must be specified for currency & quantity fields.

  • The data type for the currency field is ‘CURR’ & the data type for the currency key is ‘CUKY’.
  • The data type for the quantity field is ‘QUAN’ & the data type for the quantity key is ‘QUAN’.
  • The reference table could be any table that has the currency key & quantity unit fields.
  • The same table can also be used as a reference table if it has the currency key or quantity unit fields.
46) What is a table buffer? Which type of tables used this buffer?

Ans: Buffer is nothing but a memory area. The table is buffered means that table information is available on the application server. When you call data from the database table it will come from the application server. Transparent tables and pool tables are buffered, while cluster tables cannot be buffered.


46)What is a Transparent Table?

Ans:

A Transparent Table is a basic table in the Data Dictionary that stores data in the form of rows and columns. It has a one-to-one relationship with a physical database table and is used to store application data. Transparent Tables have a one-to-one relationship with ABAP Dictionary tables and can be accessed using Open SQL statements.


47)What is a Lock Object?

Ans:

A Lock Object is a mechanism used in ABAP to handle concurrent access to data by multiple users. It ensures that data integrity is maintained and prevents conflicts when multiple users try to update the same data simultaneously. Lock Objects define the conditions under which data can be locked and unlocked in the system.


48)What is a Matchcode Object?

Ans:

A Matchcode Object is used in ABAP to define search helps for input fields in a program. It provides a list of possible values for a field and allows users to select a value from the list instead of manually entering the value. Matchcode Objects are defined using the Data Dictionary and can be reused in multiple programs.

49)What is a Foreign Key Relationship?

Ans:

A Foreign Key Relationship is a relationship between two tables in the Data Dictionary that ensures data integrity by defining the referential integrity rules between them. It specifies that the values of a field in one table must exist as values in another table. Foreign Key Relationships are used to maintain consistency and integrity among related tables.

50)What is a Cluster Table?

Ans:

A Cluster Table is a table in the Data Dictionary that stores application data in a compressed format to save storage space. It is used for storing large volumes of data that is not accessed frequently. Cluster Tables are accessed using special functions for reading, writing, and updating data.

51)What is a Pool Table?

Ans: A Pool Table is a table in the Data Dictionary that stores application data in a compressed format, similar to a Cluster Table. However, Pool Tables are designed to store smaller volumes of data that are accessed more frequently than Cluster Tables. Pool Tables are accessed using special functions for reading, writing, and updating data.

52)What is a View Cluster?

A View Cluster is a mechanism in ABAP that allows you to define a logical view of multiple Cluster Tables. It provides a way to access data from multiple Cluster Tables using a single view, which simplifies data retrieval operations. View Clusters are used to improve data retrieval performance and simplify data access in ABAP programs.

53)What is a Table Pool?

A Table Pool is a mechanism in ABAP that allows you to define a logical grouping of related Pool Tables. It provides a way to access data from multiple Pool Tables using a single Pool Table, which simplifies data retrieval operations. Table Pools are used to improve data retrieval performance and simplify data access in ABAP programs.


Post a Comment

0 Comments