Data dictionary
Data dictionary
Contains numerous abap data dictionary interview questions to help you ace that programming job.
1. What are the layers of data description in R/3?
- The external layer.
- The ABAP/4 layer.
- The database layer.
2. Define external layer?
The external layer is the plane at which the user sees and interacts with the data, that is, the data format in the user interface. This data format is independent of the database system used.
3. Define ABAP/4 layer?
The ABAP/4 layer describes the data formats used by the ABAP/4 processor.
4. Define Database layer?
The database layer describes the data formats used in the database.
5. What is a Data Class?
The Data class determines in which table space the table is stored when it is created in the database.
6. What is a Size Category?
The Size category describes the probable space requirement of the table in the database.
7. How many types of size categories and data classes are there?
There are five size categories (0-4) and 11 data classes only three of which are appropriate for application tables:
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).
The other two types are:
- USR
- USR1 – Intended for customer’s own developments.
8. What are control tables?
The values specified for the size category and data class are mapped to database-specific values via control tables.
9. What is the function of the transport system and workbench organizer?
The function of the transport system and the Workbench Organizer is to manage any changes made to objects of the ABAP/4 Development Workbench and to transport these changes between different SAP systems.
10. What is a table pool?
A table pool (or pool) is used to combine several logical tables in the ABAP/4 Dictionary. The definition of a pool consists of at least two key fields and a long argument field (VARDATA).
11. What are pooled tables?
These are logical tables, which must be assigned to a table pool when they are defined. Pooled tables can be used to store control data (such as screen sequences or program parameters).
12. What is a table cluster?
A table cluster combines several logical tables in the ABAP/4 Dictionary. Several logical rows from different cluster tables are brought together in a single physical record. The records from the cluster tables assigned to a cluster are thus stored in a single common table in the database.
Read also the Difference between a check table and a value table
13. How can we access the correction and transport system?
Each time you create a new object or change an existing object in the ABAP/4 Dictionary, you branch automatically to the Workbench Organizer or correction and transport system.
14. Which objects are independent transport objects?
Domains, Data elements, Tables, Technical settings for tables, Secondary indexes for transparent tables, Structures, Views, Matchcode objects, Matchcode Ids, Lock objects.
15. How is conversion of data types done between ABAP/4 & DB layer?
Conversion between ABAP/4 data types and the database layer is done within the database interface.
16. How is conversion of data types done between ABAP/4 & external level?
Conversion between the external layer and the ABAP/4 layer is done in the SAP dialog manager DYNP.
17. What are the Data types of the external layer?
ACCP, Char, CLNT, CUKY, CURR, DATS, DESC, FLTP, INT1, INT2, INT4, LANG, LCHR, LRAW, NUMC, PREC, QUAN, RAW, TIMS, UNIT,VARC.
18. What are the Data types of the ABAP/4 layer?
Possible ABAP/4 data types:
C: Character.
D: Date, format YYYYMMDD.
F: Floating-point number in DOUBLE PRECISION (8 bytes).
I: Integer.
N: Numerical character string of arbitrary length.
P: Amount of counter field (packed; implementation depends on h/w platform).
S: Time Stamp YYYYMMDDHHMMSS.
V: Character string of variable length, length is given in the first two bytes.
X: Hexadecimal (binary) storage.
19. How can we set the table spaces and extent sizes?
You can specify the extent sizes and the table space (physical storage area in the database) in which a transparent table is to be stored by setting the size category and data class.
20. What is the function of the correction system?
The correction system manages changes to internal system components. Such as objects of the ABAP/4 Dictionary.
21. What are local objects?
Local objects (Dev class$TMP) are independent of correction and transport system.
22. What is a Development class?
Related objects from the ABAP/4 repository are assigned to the same development class. This enables you to correct and transport related objects as a unit.
23. What is a data dictionary?
Data Dictionary is a central source of data in a data management system. Its main function is to support the creation and management of data definitions. It has details about
- What data is contained?
- What are the attributes of the data?
- What is the relationship existing between the various data elements?
24. What functions does a data dictionary perform?
In a data management system, the principal functions performed by the data dictionary are
- Management of data definitions.
- Provision of information for evaluation.
- Support for s/w development.
- Support form documentation.
- Ensuring that the data definitions are flexible and up-to-date.
25. What are the features of ABAP/4 Dictionary?
The most important features are:
- Integrated to aABAP/4 Development Workbench.
- Active in the runtime environment.
26. What are the uses of the information in the Data dictionary?
The following information is directly taken from the Data dictionary:
- Information on fields displayed with F1 help.
- Possible entries for fields displayed with F4 help.
- Matchcode and help views search utilities.
27. What are the basic objects of the data dictionary?
- Tables
- Domains
- Data elements
- Structures
- Foreign Keys
28. What are the aggregate objects in the data dictionary?
- Views
- Match codes
- Lock objects.
29. In the ABAP/4 Dictionary Tables can be defined independent of the underlying database (T/F).
True.
30. ABAP/4 Dictionary contains the Logical definition of the table.
Also read The Different Types of SAP Tables
31. A field containing currency amounts (data type CURR) must be assigned to a reference table and a reference field. Explain.
As a reference table, a system containing all the valid currencies is assigned or any other table, which contains a field with the currency key format. This field is called as reference field. The assignment of the field containing currency amounts to the reference field is made at runtime. The value in the reference field determines the currency of the amount.
32. A field containing quantity amounts (data type QUAN) must be assigned to a reference table and a reference field. Explain?
As a reference table, a system table containing all the valid quantity units is assigned or any other table, which contains a field with the format or quantity units (data type UNIT). This field is called as reference field.
The assignment of the field containing quantity amounts to the reference field is made at runtime. The value in the reference field determines the quantity unit of the amount.
33. What is the significance of Technical settings (specified while creating a table in the data dictionary)?
By specifying technical settings we can control how database tables are created in the database. The technical settings allows us to
- Optimize storage space requirements.
- Table access behaviour.
- Buffering required.
- Changes to entries logged.
34. What is a Table attribute?
The table’s attributes determine who is responsible for maintaining a table and which types of access are allowed for the table. The most important table attributes are:
- Delivery class.
- Table maintenance allowed.
- Activation type.
35. What is the significance of Delivery Class?
- The delivery class controls the degree to which the SAP or the customer is responsible for table maintenance.
- Whether SAP provides the table with or without contents.
- Determines the table type.
- Determines how the table behaves when it is first installed, at upgrade, when it is transported, and when a client copy is performed.
Q1. What is Data Dictionary in SAP?
Ans: We use the ABAP Dictionary to create and manage data definitions (metadata). The ABAP Dictionary allows a central description of all the data used in the system without redundancies. New or modified information is automatically updated for all the system components. It ensures data integrity, data consistency and data security.
Q2. What is a Data Class?
Ans: The Data class determines in which tablespace the table is stored when it is created in the database.
Q3. What is a Size Category?
Ans: The Size category describes the probable space requirement of the table in the database.
Q4. How Many types of size categories and data classes are there?
- APPL0 - Master data (data frequently accessed but rarely updated)
- APPL1 - Transaction data (data that is changed frequently)
- APPL2 - Organisational data (customizing data that is entered when system is configured and then rarely changed)
Q5. What are the features or important object types in the Data Dictionary?
Ans:
- Tables
Tables are defined in the ABAP Dictionary independently of the database.
- Views
Views are logical views of more than one table.
- Types
The structure of a type can be defined globally in ABAP programs.
- Lock objects
These objects are used to synchronize access to the same data by more than one user
- Domains
Different fields having the same technical type can be combined in domains.
Q6. What are the Data Elements in Data Dictionary?
Ans: We use data elements to define the type of a table field, structure component or the row type of a table type.
Q7. What are foreign keys in Data Dictionary?
Ans: We use foreign keys to define relationships between tables in the ABAP Dictionary, create value checks for input fields and link several tables in a view or a lock object.
Q8. What are Search helps in Data Dictionary?
Ans: Search helps are objects that you can use to assign input help (F4 Help) to screen fields. You can do this by creating a search help in the ABAP Dictionary and attaching it to the corresponding screen field.
There are two types of search helps:
- Elementary search helps.
- Collective search helps.
Q9. What is the database utility?
Ans: The database utility allows you to edit (create, delete and adjust to changes to their definition in the ABAP Dictionary) database objects derived from objects of the ABAP Dictionary.
Q10. What are Pooled and Cluster Tables ?
Ans: Table pools and table clusters are special table types in the ABAP Dictionary. The data from many different tables can be stored together in a table pool or table cluster. Tables assigned to a table pool or table cluster are indicated as pooled tables or cluster tables.
We must use a table pool or table cluster exclusively for storing internal control information (screen sequences, program parameters, temporary data, continuous texts such as documentation). Data of commercial relevance is stored in transparent tables.
Q11. What are the layers of SAP System in R/3?
Ans:
- The external layer.
- The ABAP/4 layer.
- The database layer.
Q12. What is a Data Class?
Ans: The Data class determines in which table space the table is stored when it is created in the database.
There are the following data classes:
- APPL0 (master data):
- Data that is seldom changed.
- APPL1 (transaction data):
- Data that is frequently changed.
- APPL2 (organizational data):
- Customizing data that is defined when the system is installed and seldom changed.
Q13. What is a Size Category?
Ans: The Size category describes the probable space requirement of the table in the database.
Q14. How many types of size categories and data classes are there?
Ans: There are five size categories (0-4) and 11 data classes only three of which are appropriate for application tables:
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).
The other two types are:
- USR
- USR1 – Intended for customer’s own developments.
Q15. What are control tables?
Ans: The values specified for the size category and data class are mapped to database-specific values via control tables.
Q16. What is the function of the transport system and workbench organizer?
Ans: The function of the transport system and the Workbench Organizer is to control any changes made to objects of the ABAP/4 Development Workbench and to transport these changes between different SAP systems.
Q17. Which objects are independent transport objects?
Ans: Domains, Data elements, Tables, Technical settings for tables, Secondary indexes for transparent tables, Structures, Views,Match code objects, Match code Ids, Lock objects.
Q18. What is a Development class?
Ans: Related objects from the ABAP/4 repository are assigned to the same development class. This enables you to correct and
transport related objects as a unit.
Q19. In the ABAP/4 Dictionary Tables can be defined independent of the underlying database ?
Ans: Yes.
Q20. What is a Table attribute?
Ans: The table’s attributes determine who is responsible for maintaining a table and which types of access are allowed for the table.
The most important table attributes are:
Delivery class.
Table maintenance allowed.
Activation type.Q21. What is the max. no. Of structures that can be included in a table or structure.
Ans: Nine.
Q22. What are two methods of modifying SAP standard tables?
Ans:
- Append Structures and
- Customizing Includes.
Q23. How many tables can an append structure be assigned?.
Ans: One.
Q24. Can we include customizing include or an append structure with Pooled or Cluster tables?
Ans: No.
Q25. What are the two ways for restricting the value range for a domain?
Ans: By specifying fixed values.
By stipulating a value table.
Q26. Structures can contain data only during the run time of a program (T/F)
Ans: True.
Q27. What are the aggregate objects in the Dictionary?
Ans: Views
Match Code.
Lock Object.
Q28. The data of a view is not physically stored, but derived from one or more tables (t/f)
Ans: True.
Q29. What is a Match Code?
Ans: Match code is a tool to help us to search for data records in the system. Match Codes are an efficient and user-friendly search aid where key of a record
is unknown.
Q30. What are the differences between a Database index and a match code?
Ans: Match code can contain fields from several tables whereas an index can contain fields from only one table.
Match code objects can be built on transparent tables and pooled and cluster tables.
Q31. What is the function of a Domain?
Ans: A domain describes the technical settings of a table field.
A domain defines a value range, which sets the permissible data values for the fields, which refers to this domain.
A single domain can be used as basis for any number of fields that are identical in structure.
Q32. Can you delete a domain, which is being used by data elements?
Ans: No.
Q33. What are conversion routines?
Non-standard conversions from display format to sap internal format and vice-versa are implemented with so called conversion
routines.
Q34. Can you delete data element, which is being used by table fields.
Ans: No.
Q35. Can you define a field without a data element?
Ans: Yes. If you want to specify no data element and therefore no domain for a field, you can enter data type and field length and a short text directly in the table maintenance.
Q36. What are null values?
Ans: If the value of a field in a table is undefined or unknown, it is called a null value.
Q37. What is the difference between a structure and a table?
Ans: Structures are constructed the almost the same way as tables, the only difference using that no database table is generated from them.
Q38. What is a view?
Ans: A view is a logical view on one or more tables. A view on one or more tables i.e., the data from a view is not actually physically
stored instead being derived from one or more tables.
Q39. How many types of Views are there?
Ans:
Database View
Help View
Projection View
Maintenance View
Q40. What are Lock objects?
Ans: When two users simultaneously attempt to access the same data record, this is synchronized by a lock mechanism.
Read Lock (Shared Locked)
The read lock allows other transactions read access but not write access to the locked area of the table
Write Lock (exclusive lock)
The write lock allows other transactions neither read nor write access to the locked area of the table.
Enhanced write lock (exclusive lock without cumulating)
Write lock also protects from further accesses from the same transaction.
Q41. What are the Data types of the ABAP/4 layer?
Ans: C: Character.
D: Date, format YYYYMMDD.
F: Floating-point number in DOUBLE PRECISION (8 bytes).
I: Integer.
N: Numerical character string of arbitrary length.
P: Amount of counter field (packed; implementation depends on h/w platform).
S: Time Stamp YYYYMMDDHHMMSS.
V: Character string of variable length, length is given in the first two bytes.
X: Hexadecimal (binary) storage.
Q42. What is customizing include?
Ans: Customers can enhance tables and structures of the standard system without having to modify the table and structure definitions. This means that these enhancements cannot be lost when upgrading. If a table or structure of the standard system is enhanced with customer fields using a customizing include, these customer fields are automatically inserted in the new delivered table or structure definition during an upgrade.
A customizing include is a structure that satisfies a special naming convention. The name of a customizing include begins with 'CI_' and the include is in the customer namespace.
Q43. What is Append Structure in Dictionary?
Ans: We use append structures for enhancements that are not included in the standard. This includes special developments, country versions and adding customer fields to any tables or structures.
An append structure is a structure that is assigned to exactly one table or structure. There can be more than one append structure for a table or 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
Q44. What are the steps create a Table?
Ans: Creating Tables and Table Fields
Maintain the technical settings for the table.
Maintain (if necessary) the foreign key relationships of the table to other tables.
Create (if necessary) secondary indexes for the table.
For tables with the Delivery Class G or E, you must also maintain a customer namespace (key block of the table) for the table entries.
Maintain Customer Namespace on the Delivery and Maintenance tab.
Choose an enhancement category.
Q45. What is TABLE MAINTENANCE GENERATOR in Dictionary?
Ans: Table Maintenance Generator is a tool used to customize the tables created by end users and can be changed as required, such as making an entry to that table, deleting an entry etc.
Transaction Codes
SE54: Generate Table Maintenance Dialog
SE55: Table view maintenance DDIC call
SE56: Table view display DDIC call
SE57: Deletion of Table Maintenance
SM30: Maintenance Table Views:
Authorization Group : If the table needs to be maintained by only particular group of people, then the Authorization group needs to be filled otherwise fill it as NC. To maintain the authorization group refer to SU21.
Function group is the name to which the generated maintenance modules will belong to.
Generally Function Group name can be same as table name.
Maintenance screens: Maintenance can be done in 2 ways
- Maintenance and Overview both on one screen
- Maintenance on one screen and Overview on another screen.
Modifications Available in Table Maintenance
Screen Alterations
Go To Environment -> Modification -> Maintenance Screens
Table Maintenance Events
Q46. List of Events available in Table maintenance
Ans:
01 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
06 After completely performing the function 'Get original'
07 Before correcting the contents of a selected field
08 After correcting the contents of a selected field
09 After getting the original of an entry
10 After creating the header entries for the change task (E071)
11 After changing a key entry for the change task (E071K)
12 After changing the key entries for the change task (E071K)
13 Exit editing (exit main function module)
14 After lock/unlock in the main function module
15 Before retrieving deleted entries
16 After retrieving deleted entries
17 Do not use. Before print: Event 26
18 After checking whether the data has changed
19 After initializing global variables, field symbols, etc.
20 after input in date sub screen (time-dep. tab. /views)
21 Fill hidden fields
22 Go to long text maintenance for other languages
23 Before calling address maintenance screen
24 After restricting an entry (time-dep. tab./views)
25 Individual authorization checks
26 Before creating a list
27 After creation or copying a GUID (not a key field)
28 After entering a date restriction for time-dep. views
AA Instead of the standard data read routine
AB Instead of the standard database change routine
AC Instead of the standard 'Get original' routine
AD Instead of the standard RO field read routine
AE Instead of standard positioning coding
AF Instead of reading texts in other languages
AG Instead of 'Get original' for texts in other languages
AH Instead of DB change for texts in other languages
ST GUI menu main program name
AI Internal use only
Environment -> Modification -> Events
Q47. What are the Types in Data Dictionary?
Ans: User-defined data types can be stored for all programs in the ABAP Dictionary. User-defined types provide the same functionality as the local types that can be defined in ABAP programs with TYPES
There are three different type categories:
- Data elements (elementary types and reference types).
- Structures (structured types):
A structure consists of components that also have a type, that is they refer to a type.
- Table types:
A table type describes the structure and functional attributes of an internal table. A special case is the ranges table types.
Q48. How do you Transporting Table entries from one server to another?
Ans: Go to transaction SE10. Click on Create.
Select Workbench request. (If the table is customizing table, then select customizing request)
Provide a short description to the request.
Now double-click on the request,
Go to change mode, and enter the following details:
Now click on the key button available under the name “Function” (As shown in the screenshot above). Following screen appears. Double-click on the first empty line.
Select the third radio button “Table contents specified by current key”.
Click on Save. A warning message would appear.
SAP issues a warning message when an application table is used. Following is the SAP help that would appear when we click on the message:
Ignore the warning message and click on Save.
Now transport this request to transport the data to any other system.
Q49. What are the Packages in SAP ?
Existing development classes are simply containers for development objects with a transport layer that determines how the objects will be transported. Packages extend the concept of development classes with the addition of new attributes: nesting, interfaces, visibility, and use accesses.
· Nesting allows you to embed packages in other packages.
· Visibility is a property of package elements.
Packages use interfaces and visibility to make their services known to other packages. All the visible elements in a package can, potentially, be sued by other packages. In contrast, invisible elements cannot be used by other packages as well.
Q50. What is Buffering and Buffering Types?
Ans: Full buffering:
The system loads all the re
Single-record buffering:
Only the records of a table that are really accessed are loaded into the buffer.
cords of the table into the buffer when one record of the table is accessed.
Generic buffering:
When a record of the table is accessed, all the records having this record in the generic key fields (part of the table key that is left-justified, identified by specifying a number of key fields) are loaded into the buffer.
Q51. What is Text Table in SAP?
Ans: You create text tables when you want to store explanatory text in several languages. It is not advisable to store such texts in your primary table. You can make a text table that must comprise the key of the primary table (for more information, see the example below). Every text table must also have an additional language key field (field of data type LANG).
Q51. What is Logging?
Ans: Using the logging flag you can define whether changes to the data records of a table are logged. If you switch on the logging, each change to an existing data record (with UPDATE, DELETE) by the user or application program is recorded in the database in a log table (DBTABPRT).
Q52. What are Indexes in Data Dictionary?
Ans: We use indexes to speed up searching a table for data records that satisfy certain search criteria.
The primary index contains the key fields of the table and a pointer to the non-key fields of the table. The system creates the primary index automatically when the table is created in the database.
You can also create further indexes on a table in the ABAP Dictionary. These are called secondary indexes. This is necessary if the table is frequently accessed in a way that does not take advantage of the sorting of the primary index for the access.
Q1: What is SAP ABAP?
Answer: SAP is a software type,
also known as Enterprise Resource Planning (ERP). It is used by large companies
to manage their daily affairs. The term ABAP means Advanced Business
Application Programming. It is the coding language for SAP. It is used to
develop RICEFW (Reports, Interfaces, Extensions, Forms, and Workflows) objects.
It is a 4th generation programming language used to create an application for
the SAP R/3 system. Those applications are run in SAP that has written by using
ABAP/4.
Q2: Name the different ABAP editors? What are
its uses?
Answer: SE38 and SE80 are the two
different ABAP editors where SE38 is used to establish the program.
Additionally, it is used to view online reports, and also it helps to perform
all the development of objects belonging to this editor.
SE80
supports additional features like function group, creating packages, module
pool, programs, and classes.
Q3: Which data classes are used in ABAP?
Answer: Data classes are used in
ABAP programming; accordingly, the data type such as:
·
Transaction
data: It is the data that can change frequently.
·
Master
data: It is the data that can change slowly.
·
System
data: It is the data that is needed by the R/3 system for itself.
·
Organization
data: It is the data that is entered in the system when it becomes configured,
and after, it over time changed.
Q4: How can we access ABAP Web Dynpro
workbench? Name its object list and also component?
Answer: When we need to access WD
or Web Dynpro graphical tools or runtime environment in ABAP workbench, we have
to use Transaction code: SE80. Moreover, the object list that we can use;
·
View
·
Dynpro
Component
·
Interface
·
Controller
·
Web
Dynpro application
Q5: What do you mean by Web Dynpro, and how
can you use it?
Answer: SAP AG develops web Dynpro. It is the
SAP standard user interface technology. It is used to create web-based
applications in the SAP ABAP environment by utilizing SAP development concepts
and techniques. WD offers a front-end web user interface in connecting straightforwardly
to backend SAP R/3 systems to retrieve data and also functions for reporting.
WD for ABAP has a graphical development environment and a runtime environment
with particular development tools that are combined in the ABAP Workbench.
Q6: What are the advantages of using Web
Dynpro?
Answer: There are different benefits of using
web Dynpro such as;
·
It
offers easy structure changes.
·
It
offers easy changing of layout and navigation with graphical tools.
·
It
offers easy integration in the ABAP environment.
·
It
offers flawlessly maintaining and refusing components for development.
·
It
offers automatic data transport with the use of data binding.
Q7: What is the meaning of the ABAP data
dictionary?
Answer: ABAP is used in application
development to specify the logical structure of the objects. It is also used to
reveal the underlying relational database in tables.
Want to Become an SAP ABAP Expert?
Enroll now for SAP ABAP Online Training
Q8: What do you mean MVC programming model in Web Dynpro?
Answer: WD applications are dependent upon on
MVC model, whereas;
·
Model:
It is used to retrieve the back-end data in a WD application.
·
View:
It is used to provide the representation of data in a web browser.
·
Controller:
Controller is used to controlling communication between the model and view
wherein the controller takes input from users and takes the processes data from
the model and exhibits it in the browser.
Q9: What do you mean by the data classes in
ABAP?
Answer: A data class means a class that has
only fields and crude methods to access them. They are considered as the only
containers for data that are used by other classes. Kindly note that these
classes don’t have any more functionality, and even these cannot individually
run on the data that they own.
Q10: What is the difference between pool
tables and transparent tables?
Answer:
·
Transparent
tables: When the tables have one-to-one relation with the tables available in
the database, it is known as transparent tables. Its structure relates to a
single database field.
·
Pooled
tables: When the tables have one relation with the tables available in the
database, it is known as pooled tables and is stored at the database level.
Q11: What is BDC programming?
Answer: Batch Data Communications (BDC) is a
process to transfer external data into the SAP system. We use a queue file as
the central component to transfer that gets the data via batch groups or
programs that are related to sessions.
Q12: How is it possible to create a ‘table
cluster’ in ABAP?
Answer: When we want to create a table cluster
in ABAP, then we have to follow some steps such as;
1. First, we open the ABAP
dictionary, and then choose the object type table and add a table name and also
choose to create.
2. Then, a field maintenance
screen for the table will be shown. Kindly note that the table type transparent
table will set as default.
·
Now
make the essential entries in the short description and also delivery
classified on the Attributes page. After then, we can specify the fields of the
table. When a transparent table is created, then we can proceed. And also, at
the time, we can save our entries.
1. Now select on the EXTRAS
Change table category, and when a dialogue box comes, then choose the table
type with the name Cluster table or Pooled table. Now go back to the field
maintenance screen for the table.
2. Cluster name or field pool
will be displayed on the Attributes tab page apart from the standard fields.
Lastly, write the name of the table pool or table cluster to where we want to
specify the cluster table.
Q13.What do you mean by foreign key
relationships in SAP ABAP?
Answer: Foreign keys are needed to offering
the consistency of data. These are used to define the relationship between the
table in the ABAP data dictionary. These keys are also used to establish value
checks for the input fields. Moreover, data entered in it must be analyzed
against the previous data to make sure that there should not have any
contradiction. If so happens, then it should be defined in the foreign key
relationship. Also, to create foreign keys, we should use the SE11 SAP
transaction code.
Q14. What do you mean by internal tables?
Answer: When a program is executed, only then
internal tables can exist. These can only be used on a subset of database
tables to perform table calculations. These can also be reorganized the content
of the database tables; accordingly, the needs of the users.
Q15. Which functional modules are used
in sequence in BDC?
Answer: Only three functional modules are used
in sequence in BDC to make the data transfer flawlessly. These are;
BDC_INSERT
BDC_OPEN_GROUP
BDC_CLOSE_GROUP
Q16: What are Smart Forms in SAP ABAP?
Answer: SAP ABAP Smart Forms are used to
establish and maintain forms in case of mass printing in SAP Systems by using a
graphical design tool. The output medium that is used in SAP smart forms is
fax, printer, e-mail, etc. Kindly note that Smart forms are introduced in 1998
to overcome the barriers of SAP script.
Q17. Name the components of SAP scripts?
Answer: SAP scripts in SAP ABAP are a word
processing tool that can function like a layout set that has paragraph formats,
windows, and pages, character formats, etc.
Q18: What is the difference between table and
structure in the data dictionary in SAP ABAP?
Answer: The basic differences between table
and structure in SAP ABAP are;
·
We
can store the data physically in tables while this is not possible in a
structure.
·
We
can have the technical attribute in a table. However, it is not feasible in a
structure.
·
The
table has a primary key, while a structure doesn’t have.
Q19.What is the difference between Template
and Table in SAP ABAP?
Answer: The table is dynamic, while the
template is static in SAP ABAP.
Q20. How can the data be formated before writing a statement in the report in
the SAP ABAP?
Answer: With the assistance of the loop event,
the reports output can be generated as
.at
new
.at
first
.at
l
Q21. What is the difference between ABAP and
OOABAP? When is OOABAP used?
Answer: When there is a need to create
traditional programs in R/3, then ABAP is used while creating BSP/PCUI
applications, OOABAP is used.
Q22. What do you mean by ALV programming in
SAP ABAP? How can you use this grid on it?
Answer: Application List Viewer or ALV is used
to improve the output of the report. With SAP, it is possible to avail of a set
of ALV function modules that are used or for improving the readability or
functionality of any report output. ALV is a relevant tool used to arrange the
columns in the report output.
Q23. How can you use End-of-selection in
SAP ABAP?
Answer: To write HR-ABAP code in SAP ABAP, we
use the end of the selection event. Moreover, HR-ABAP code is used to read the
data while starting the selection event and also printing on the list. Also,
all will be done at the end of the selection event.
Q24. How can you differentiate between ‘Type’
and ‘Like’?
Answer: When a data type is directly assigned
to the data object while declaring, it means ‘TYPE,’ while when a data type is
applied to another object while declaring data object, it implies ‘LIKE.’
Type
is concerned with the existing data type while Like is concerned with the
existing data object.
Q25. What do you mean by table buffer? Which
type of tables is used in this buffer?
Answer: In SAP ABAP, table buffering is a
concept in ABAP tables used to improve the performance from 10 to 100 times and
decline the time of processing of the table. The fact, a buffer is used as an
interface between the application layer and the database layer.
Pool
tables and transparent tables are used in buffer. Moreover, the cluster table
can’t be buffered.
Q26. Which different scenarios can use to
create interactive forms in Web Dynpro in SAP ABAP?
Answer: Basically, there are four different
scenarios that we can use to create interactive forms in Web Dynpro in SAP
ABAP:
·
Print
Scenario
·
Offline
Scenario
·
Interactive
Scenario
·
Using
digital signature
Q27. How can the use of messages be done in
Web Dynpro in SAP ABAP?
Answer: In ABAP Workbench, it is possible to
create and reveal messages that have information for end-users of Dynpro
applications. We can also see those messages on the screen. Moreover, these are
user interactive message that shows essential messages or information about web
Dynpro application.
Q28: Name the different database Integrities?
Answer:
·
Semantic
Integrity
·
Value
Set Integrity
·
Primary
Key Integrity
·
Foreign
Key Integrity
·
Relational
Integrity
·
Operational
Integrity
Q29. Which two methods of modifying SAP
standard tables have?
Answer: Append structures, and Customizing
include are two different methods of modifying SAP standard tables.
Q30: Name the different types of parameters?
How are these different from other kinds of parameters?
Answer: Formal parameters and Actual
parameters are two different types of parameters. Formal parameters are used to
define while defining subroutine with the ‘form’ statement, while Actual
parameters are used to define the call of a subroutine with the ‘perform’
statement.
It
is possible to differentiate the other kinds of parameters by their
functionality. When I need to pass data from the subroutine, then output
parameters are used while to pass data to subroutines, then input parameters
are used.
Q31. Name different types of data dictionary
objects?
Answer: Tables, Domain, Views, Type Groups,
Data Element, Lock Objects, Structures, Table Types, and Search Helps.
Q32. How can the data store in the cluster
table?
Answer: With the assistance of different DDIC
tables, a cluster table can store data. It is used to store data like the
name-value pair.
Q33. How can we use ‘pretty-printer’?
Answer: In SAP ABAP, the pretty-printer is
used to format the ABAP code.
Q34. What do you mean by lock object?
Answer: To synchronize access of abundant
users who are using the same data in SAP ABAP, we use Lock objects are used.
Q35. How is it possible to debug a script
form?
Answer: To debug a script form in SAP ABAP, we
have to follow this sequence:
SE71
– give the form name – utilities – activate the debugger
Q36. What do you mean by group by in
the ‘select’ statement?
Answer: When we need to take out the data from
the table with a particular field group of Clause, then the select statement is
used.
Looking forward to becoming an SAP ABAP Expert? Then get certified with SAP ABAP Training.
Q37. What is the main difference between a dialogue program and a report?
Answer: A dialogue is a module pool program,
while a report is an executable program. These can execute with a transaction
only. Moreover, dialogue programming is used in a case when customizations of
screens are required.
Q38.What is an SAP dispatcher?
Answer: A control agent is known as an SAP
dispatcher. It is used to manage resources for R/3 applications.
Q39.Difference between a Database index and a
Match code?
Answer: A database index has fields from one
table.
Match
code has fields from different tables. Moreover, match code objects can build
on transparent tables, cluster tables, and pooled tables.
Q40. What are the advantages of the
modularization technique?
Answer: With the modularization technique,
it is possible to avoid redundancy in a case program that has the same block of
statements. With modularizing the ABAP/4 programs, it becomes simple and easy
to read and enhances the structure as well. Moreover, these programs are easy
to update.
Q41. How it possible to create callable
modules of program code within one ABAP/4 program?
Answer: Either by creating programs in the
library or defining macros.
Q42. How can we use the inbound and outbound
plugin Dynpro component?
Answer: The inbound and outbound plugs in the
Dynpro component are components of the view controller.
Inbound
plug specifies the beginning point of view while the outbound plug specifies
about the subsequent view needs to be called.
Q43. How to use the window in Web Dynpro
application development?
Answer: In Web Dynpro, it is possible to use
windows for views sets or multiple views. Moreover, it is possible to display a
view when it embeds in a view. Also, a window always has one or more views that
are interacted with navigation links.
By
opening the SAP GUI, it is possible to find a data dictionary that is available
in the SAP menu tree. This is done via the Tools menu. Now click on the ABAP
workbench and then click on the development folder where one can find the ABAP
dictionary. Alternatively, use the transaction code SE11.
Q44. Which data dictionary object is chosen to
create a transparent table?
Answer: Database table
Q45. What to do to avoid duplicate writing
statements and also to save time?
Answer: For this, we need to use the concept
of chaining statements.
Enroll In our SAP MDG Training
Q46. What is the 3-tier architecture of SAP ABAP?
Answer: With the help of the presentation
layer of the SAP ABAP, it is possible to comprise an input device. The fact,
this presentation layer assists in controlling the SAP system. The presentation
can either be a web browser or a mobile phone. This process can be carried with
the assistance of the application server.
In
another server, the database layer is placed, in which the application server
communicates to this layer for security purposes. Moreover, with this system,
all the layers communicate in between the system entirely.
Q47. Why we insert and append statements in
SAP ABAP?
Answer: In the internal table, we can record
the specific work area while the Append statement is used to add this record.
Moreover, a record at a particular place can add with the help of the insert
statement.
Q48. Which different events are related to
screen programming?
Answer: Four events are related to screen
programming, such as:
·
Process
after Input or PAI: This event is executed during the interaction of users with
the screen execution.
·
A
process on Help or POH: This event gets executed on request by the users only
after pressing the key F1. After this, the program receives codes in different
event blocks, which the screen processed by the system.
·
Process
Before Output or PBO: This event gets executed long-only before showing it on
the screen.
·
Process
On Value or POV: This event gets executed just by pressing F4 by users.
Q49. Which main events are used in the logical
database?
Answer: Two main events are used in the
logical database, such as:
GET:
With the assistance of an event, programs are used in the logical database. It
basically takes place when a logical database read by a line from the node.
This made it possible to available towards the programs, and with the help of
getting a statement, it is possible to find out the depth of the logical
database.
PUT: With the PUT event, it is possible to direct
the flow of the program.
Q50. Name the various contents of Technical
Specifications.
Answer: Five contents are available in
technical specifications such as:
Buffering
permission, data class, size category, buffering type, and log in.
Question 1. What Is Delivery Class?
Answer :
You use the delivery class to control the transport of table data for an installation, upgrade, or client copy and transports between customer systems. The delivery class is also used in the extended table maintenance.
There are the following development classes:
- 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, SAP can insert new data records but cannot overwrite or delete existing ones. The customer namespace must be defined in table TRESC. To define the customer namespace use report RDDKOR54. You can start it directly from the table maintenance by choosing Maintain Customer Namespace on the Delivery and Maintenance tab.
- E- System table with its own namespace for customer entries. The customer namespace must be defined in table TRESC. To define the customer namespace use report RDDKOR54. You can start it directly from the table maintenance by choosing Maintain Customer Namespace on the Delivery and Maintenance tab.
- S- System table, data changes have the status of program changes.
- W- System table (for example table of the development environment) whose data is transported with its own transport objects (such as R3TR PROG, R3TR TABL and so on).
Question 2. How Many Types Of Data Classes Are There In Sap Abap?
Answer :
- APPL0(Master Data) for the data frequently accessed but rarely updated/changed.
- APPL1(Transactional Data) for the data that is frequently changed.
- APPL2(organizational Data) for customizing data that is defined/ entered during system installation and rarely changed.
SAP CRM Interview QuestionsQuestion 3. What Is Value Table?
Answer :
Value table is maintained at Domain level in SAP. During domain creation, value range of the domain i defined by specifying value table.
Question 4. What Is Table Attribute?
Answer :
The Table attributes determine who is responsible for maintaining a table and which types of access are allowed for the table.
The most important table attributes are:
- Delivery class
- Table Maintenance allowed
- Activation type.
SAP CRM TutorialQuestion 5. What Is Is A Match Code?
Answer :
A Match code is a tool tip to help us to search for the data records in the system. Match codes are an efficient and user friendly search where key of a record is unknown.
SAP BI Interview QuestionsQuestion 6. What Is Meant By Hot Spots?
Answer :
A Hot spot is a list area where the mouse pointer appears as an upright hand symbol. When a user points to that area, a single click does the same thing as a double click. Hot spots are supported from R/3 release 3.0.
Question 7. Difference Between Call By Value And Call By Reference?
Answer :
Call By Value:creates a new memory location for use within the subroutine. The memory is freed once it leaves the subroutine, changes made to the variable are not affected outside the subroutine.
Call by Reference : passes a pointer to the memory location. Changes to the variable within the subroutine affects the variable outside the subroutine.
SAP BI Tutorial SAP MM Interview QuestionsQuestion 8. What Are The Different Types Of Data Dictionary Objects?
Answer :
Data Dictionary Objects:
- Tables
- Views
- Domain
- Data Element
- Type Groups
- Search Helps/Matchcode Objects
- Lock objects
- Structures
- Table Types.
Question 9. What Is Lock Object ?
Answer :
LockObjects used to synchornize access of several users using same data.
SAP BASIS Interview QuestionsQuestion 10. How To Eliminate Duplicate Entries In Internal Tables?
Answer :
SORT itab.
DELETE ADJACENT DUPLICATES FROM itab COMPARING ALL FIELDS.
SAP MM TutorialQuestion 11. What Is The Basic Difference Internal Tables And Database Tables?
Answer :
The basic difference is database tables are stored in DB serverand the internal tables are virtual tables these are created run time only
Internal tables are created dynamically, the memory of internal tables is not permant memory, for internal tables the memory will be created in the application server and it is external memory and terminates after the program termination.
SAP ABAP Interview QuestionsQuestion 12. How Many Ways You Can Create Table?
Answer :
User can create a Database table in two ways:
- Top-to-bottom approach: In this approach, first fields are defined and later domain and data element are defined.
- Bottom-to-top approach: In this approach, first domain and data element are defined and later fields are defined.
SAP CRM Interview QuestionsQuestion 13. What Is Sql Trace?
Answer :
SQL Tracer is a tool used to measure the performance of ABAP program.
Tcode :st05
SAP BASIS TutorialQuestion 14. How To Creat Transactions?
Answer :
We can use TC SE93 for creating our own transaction code.
Question 15. Open Sql Vs. Native Sql?
Answer :
- A database interface translates SAP’s Open SQL statements into SQL commands specific to the database in use.
- Native SQL statements access the database directly.
SAP ABAP Web Dynpro Interview QuestionsQuestion 16. Can You Create A Table With Fields Not Referring To Data Elements?
Answer :
Yes.
SAP ABAP TutorialQuestion 17. Which Database Object Is Used For Storing The System Variables?
Answer :
SYST table.
SAP Workflow Interview QuestionsQuestion 18. Which Transaction Code Is Used Executing A Report (type 1 Program)?
Answer :
SE38
SAP BI Interview QuestionsQuestion 19. When Is The Top-of-page Event Triggered?
Answer :
After executing first write statement in start-of-selection event.
SAP ABAP Web Dynpro TutorialQuestion 20. How Many Types Of Buffering?
Answer :
There are three type of buffer:
single record->it buffers only records based on select query statement.
generic buffer->it buffers all the records which match to primary key and generic key
full buffer :Buffering is use for improve performance.
Sap Abap Hr Interview QuestionsQuestion 21. What Are The Different Types Of Locks?
Answer :
Read lock (shared lock):
Protects read access to an object. The read lock allows other transactions read access but not write access to the locked area of the table.
Write lock (exclusive lock):
Protects write access to an object. The write lock allows other transactions neither read nor write access to the locked area of the table.
Enhanced write lock (exclusive lock without cumulation):
Works like a write lock except that the enhanced write lock also protects from further accesses from the same transaction.
Question 22. What Are The Control Break Events In Abap?
Answer :
- AT-FIRST: This is used when we want to execute the statements before records are processed.
- AT-LAST: This event is used when we want to execute the statements after all records are processed.
- AT-NEW: This event is used when we want to execute the statement before group of records are processed.
- AT-END: This event is used when we want to execute the statements after processing of group of records.
- What is an ABAP data dictionary?
- What are domains and data element?
- What is foreign key relationship?
- Describe data classes in SAP ?
- What are indexes in SAP tables?
- Difference between transparent tables and pooled tables?
- Difference between .include and .append?
- What is occurs in internal table?
- Buffering concept usage in SAP Tables?
- What is occurs in internal table?
- WHAT IS THE DIFFERENCE BETWEEN CHECK TABLE AND VALUE TABLE?
- WHAT ARE THE DIFFERENCES BETWEEN CLUSTER TABLES AND POOLED TABLES?
- What is the difference between VIEW and a TABLE in SAP?
- What is the difference between Master data and Transaction data in SAP?
- Can a domain, assigned to a data element be changed?
- What is a Data Class in SAP Data Dictionary?
- What is a Size Category in SAP Data Dictionary?
- What are the Data types of the ABAP/4 layer?
- What are two methods of modifying SAP standard tables?
- To how many tables can an append structure be assigned?
- What is a Match Code in SAP Data Dictionary?
- Can you delete a domain, which is being used by data elements?
- What is the function of a Domain in SAP Data Dictionary?
- Can you delete data element, which is being used by table fields.
- What is a table pool in SAP?
- What is the difference between Structure and work area?
- How data is stored in cluster table?
- What are client dependant objects in abap/sap?
- Can we create field without data element and how?
- How can I copy a standard table to make my own z_table.
- What are the difference between Table and Structure?
- Can we have the same append structure in more then one Database Table ?
what are the layers of data description in R/3
• The external layer.
• The ABAP/4 layer.
• The database layer.
Define Database layer?
The database layer describes the data format used in the database.
What is a Data Class?
The data class determines in which table space the table is stored when it created in the database.
APPL0 Master data, transparent tables
APPL1 Transaction data, transparent tables
APPL2 Organization and customizing
DDIM Dimension Tables in BW
DFACT Facts Table in BW
DODS ODS Tables in BW
What is Size category?
The size category describes the probable space requirement of the table in the database.
0-9 size categories
How many types of size categories and data classes are there?
There are nine(0-9) and 11 data classes only three of which are appropriate for application tables:
What is a Table attribute?
The table’s attributes determine who is responsible for maintaining a table and which types of access are allowed for the table. The most important table attributes are:
• Delivery class.
• Table maintenance allowed.
• Activation type.
36. What is the max. no. Of structures that can be included in a table or structure.
Nine.
37. What are two methods of modifying SAP standard tables?
• Append Structures and
• Customizing Includes.
Include structure | Append structure |
With .Include X, you can include this structure in multiple tables. | With .Append X, you specify that structure X has been used in table Y and that this cannot be used in any other table now. So you restrict structure X only to Table Y |
Include structure add fields at any position in the table. | Append structure includes the fields at the end of the table |
Many tables you can include it. | append structure can only be used once . |
.INCLUDE xxxxx | .APPEND xxxxx. |
41. Can we include customizing include or an append structure with Pooled or Cluster tables?
No.
56. What are the differences between a Database index and a match code?
• Match code can contain fields from several tables whereas an index can contain fields from only one table.
what are different types of buffering?
buffering not allowed, single reocrd buffering , buffering allowed.
display maintenance allowed.
How to by pass buffer in select query?
SELECT SINGLE * FROM T100 INTO T100_WA
BYPASSING BUFFER
WHERE SPRSL = ‘D’
AND ARBGB = ’00’
AND MSGNR = ‘999’.
The SELECT statement bypasses the buffer when you use any of the following:
The BYPASSING BUFFER addition in the FROM clause
The DISTINCT addition in the SELECT clause
Aggregate expressions in the SELECT clause
Joins in the FROM clause
The IS NULL condition in the WHERE clause
Subqueries in the WHERE clause
The ORDER BY clause
The GROUP BY clause
The FOR UPDATE addition
what is check table and value table?
lips-vgbel —- value table field and check table is vbuk-vbeln.
value table is at domain level and check table is at field level.
Details at domain level: search help and parameter id and default component name
for vgbel it is REF_DOC.
Value range is available at domain level.
why we need table type as we have structure in se11?
In table type we can specify key values and type of table either sorted standard etc.
what is table maintenance generator?
by using table maintenance generator we can maintain the entries in the table and we can create.
utilities –> table maintenance generator.
while creating table maintenance generator we should provide function group. Main purpose of this function group is while creating table maintenance generator system will generate some code. It will store and attached to the relevant function module.
whenever changes to the table addition of field or something we need to delete the table maintenance generates , we need to recreate it again because in coding new field and new fields should be displayed in the output.
Details at the time of table creation:
number of screens : over view screen and single screen, authorization group an authorization object , function group and package.
Sorted table binary search?
If the specified key fields form a left-justified extract of the table key or are identical with the entire table key, the search is binary, otherwise sequential.
dialog data transport details:
there is radio buttons for recording routines: if we select standard recording routine when ever we create an entry into the table , it will ask for recording routine.
If we do not want to transport we can select no or user recording routine. option.
Modification to the table maintenance generator:
pooled and cluster tables are transparent in hana database.
a field in the table maintenance generator can be non-editable by simply unchecking that input checkbox for that field in maintenance screens.
Similarly, the screen name of any of the fields appearing on the maintenance window can also be changed by changing the Name on the layout window of that field.
we can write the events for extra modification.
how to make table field as a check box in table maintenance generator?
in that case take that field domain with character of length 1 and provide value details in domain level as X and space.
Search helps: elementary search help :
in elementary search help there are 3 input tabs. One is data Collection, enhance options, search help exit and parameters.
Data collection: it is based on search from tables or views. We need to provide particular name.
Dialog behaviour:
- Immediate value display: direct list it is suggested for only small amount of data
- dialog with value restriction : user selection screen would be displayed.
- dialog depends on value set: if the list contains less than 100 it would display it directly otherwise restrict the data.
Hot key: Hot key permits the user to select the elementary search help from collective search help.
enhance options: proposal search for input fields on the selection of search help itself.full text fuzzy search and search help exit.
Parameter: importing and exporting lpos and spos specifies input fields and output fields . if it is zero it would not be displayed on the screen.
collective search help: In definition provide search help exit and importing and exporting parameters ans no need to specify positions.
And in include search helps include the available search helps and assign the parmeters to included search helps.
What are lock objects?
share lock , exclusive lock and optimistic lock .
What are control tables?
The values specified for the size category and data class are mapped to database-specific values via control tables.
What is a table pool?
A table pool (or pool) is used to combine several logical tables in the ABAP/4 Dictionary. The definition of a pool consists of at least two key fields and a long argument field (VARDATA).
11. What are pooled tables?
These are logical tables, which must be assigned to a table pool when they are defined. Pooled tables can be used to store control data (such as screen sequences or program parameters).
12. What is a table cluster?
A table cluster combines several logical tables in the ABAP/4 Dictionary. Several logical rows from different cluster tables are brought together in a single physical record. The records from the cluster tables assigned to a cluster are thus stored in a single common table in the database.
13. How can we access the correction and transport system?
Each time you create a new object or change an existing object in the ABAP/4 Dictionary, you branch automatically to the Workbench Organizer or correction and transport system.
How is conversion of data types done between ABAP/4 & DB layer?
Conversion between ABAP/4 data types and the database layer is done within the database interface.
How is conversion of data types done between ABAP/4 & external level?
Conversion between the external layer and the ABAP/4 layer is done in the SAP dialog manager DYNP.
18. What are the Data types of the ABAP/4 layer?
Possible ABAP/4 data types:
C: Character.
D: Date, format YYYYMMDD.
F: Floating-point number in DOUBLE PRECISION (8 bytes).
I: Integer.
N: Numerical character string of arbitrary length.
P: Amount of counter field (packed; implementation depends on h/w platform).
S: Time Stamp YYYYMMDDHHMMSS.
V: Character string of variable length, length is given in the first two bytes.
X: Hexadecimal (binary) storage
23. What is a data dictionary?
Data Dictionary is a central source of data in a data management system. Its main function is to support the creation and management of data definitions. It has details about
24. What functions does a data dictionary perform?
• Management of data definitions.
• Provision of information for evaluation.
• Support for s/w development.
• Support form documentation.
• Ensuring that the data definitions are flexible and up-to-date.
25. What are the features of ABAP/4 Dictionary?
The most important features are:
• Integrated to aABAP/4 Development Workbench.
• Active in the runtime environment.
26. What are the uses of the information in the Data dictionary?
The following information is directly taken from the Data dictionary:
• Information on fields displayed with F1 help.
• Possible entries for fields displayed with F4 help.
• Matchcode and help views search utilities.
28. What are the aggregate objects in the data dictionary?
• Views
• Match codes
• Lock objects.
31. A field containing currency amounts (data type CURR) must be assigned to a reference table and a reference field. Explain.
As a reference table, a system containing all the valid currencies is assigned or any other table, which contains a field with the currency key format. This field is called as reference field. The assignment of the field containing currency amounts to the reference field is made at runtime. The value in the reference field determines the currency of the amount.
34.
59. What are conversion routines?
• Non-standard conversions from display format to sap internal format and vice-versa are implemented with so called conversion routines.
what are lock objects in sap ?
Lock objects are use in SAP to avoid the inconsistancy at the time of data is being insert/change into database.
SAP Provide three type of Lock objects.
– Read Lock(Shared Locked)
protects read access to an object. The read lock allows other transactions read access but not write access to
the locked area of the table- Write Lock(exclusive lock)
protects write access to an object. The write lock allows other transactions neither read nor write access to
the locked area of the table.
– Enhanced write lock (exclusive lock without cumulating)
works like a write lock except that the enhanced write lock also protects from further accesses from the
same transaction.
You can create a lock on a object of SAP thorugh transaction SE11 and enter any meaningful name start with EZ Example EZTEST_LOCK.
When you create a lock object System automatically creat two function module.
1. ENQUEUE_. to insert the object in a queue.
2. DEQUEUE_. To remove the object is being queued through above FM.
We can call the function module which is generated while creating the lock object and pass the parameters to the FM . It will create a database lock in the system.
68. What is Locking?
When two users simultaneously attempt to access the same data record, this is synchronized by a lock mechanism.
Views:
• Database View
• Help View
• Projection View
• Maintenance View
Database view:
A database view is a general view for one or more basis tables. If there are multiple basis tables, they are joined using an inner join.
Maintenance Status
The Access setting in the maintenance status of a database view can have the following values:
- Read only
- The database view can only be used to read data with Open SQL.
- Read, change, delete, and insert
- If the database view contains only a single basis table, data can be changed using Open SQL.
Projection Views
A projection view is a special view for hiding fields from a single basis table. An SQL view is not created on the database.
The Access setting in the maintenance status of a projection view can have the following values:
- Read only
- The projection view can only be used to read data with Open SQL.
- Read, change, delete, and insert
- The projection view can only be used to change data with Open SQL.
Maintenance Views
A maintenance view is a special view for performing writes on multiple tables using extended table maintenance. A single maintenance view can be used to modify the content of multiple related database table consistently.
A maintenance view is not defined on the database. The structure type defined using a maintenance view can be referenced in ABAP programs using TYPE. A maintenance view cannot, however, be accessed using Open SQL. Instead, the transaction SE54 can be used to create dialogs called maintenance dialogs for maintenance views, which can themselves be used to edit the tables of the maintenance views jointly in extended table maintenance (transactions SM30 and SM31).
Maintenance Status
The Access setting in the maintenance status of a maintenance view can have the following values:
- Read only
- The maintenance view can only be used to read data.
- Read, change, delete, and insert
- The maintenance view can be used to change, delete, and insert data.
- Read and change
- The maintenance view can be used to change data, but not delete or insert it.
- Read and change (time-dependent views)
- The maintenance view can be used to insert only entries whose non-time-dependent part of the key does not differ from existing entries.
- Help Views
A help view is a special view for use in search helps.
What is Help View: Help view can be used in the search help as in the ‘Selection Method’. We can also provide database table or database view name there, but suppose if we want to get data as outer join then Help View can be provided. It uses left outer join to select the data while database view uses inner join. What it means: suppose I have two tables A and B. In help view all the contents of primary table will be displayed.
- SAP ABAP scripts interview questions:
Basic settings in Script: Page format( Portrait , landscape). Lines/inch, characters/inch , First page , Default paragraph, Tab stop, Font family , font size , Bold , italic.
We can create new paragraph formats in paragraph format tab.
difference between Type and Like
Type | Like |
type refers the existing data type | like refers the existing data object |
Type is a keyword used to refer to a data type | Like is a keyword used to copy the existing properties of already existing data object. |
ou assign datatype directly to the data object while declaring | you assign the datatype of another object to the declaring data object. The datatype is referenced indirectly. |
DIFFERENCE BETWEEN EXECUTABLE/REPORT PROGRAM AND DIALOG/MODULE POOL :
Report/Executable programs: A report is a program that typically reads and analyses data in database tables without changing the database.
Dialog/Module pool programs: If your ABAP program demands a user input,dialog programming is used.A user dialog is any form of interaction between the user and the program and could be any of the following such as entering the data,choosing a menu item,clicking or double clicking the entry.
EXECUTABLE/REPORT PROGRAM | MODULE-POOL /DIALOG PROGRAM |
1. Executable program contain only two screen that is input as Selection screen and output as list. | 1. Module pool programs contain many screen that are logically linked together. |
2. Reports are standalone programs(that is we don’t need to link our program to any screen or any transaction code). | 2. Module pool programs are not standalone programs(that is we have to link our program to atleast one screen or atleast one transaction code). |
3. It uses events like Start of selection, end of selection etc,.. | 3. It uses events like PBO and PAI etc,.. |
4.It can be run via SE38/SE80. | 4.It must be run via a Transaction code as one nedd to specify the starting screen. |
5.Executable programs will be called with SUBMIT statement. | 5.Module pool programs are called either with CALL TRANSACTION or LEAVE TO TRANSACTION. |
Difference Between include structure and append structure:
Difference Between Structure and Table(DB Table) in SAP ABAP:
TABLE | STRUCTURE |
1.Table can store data physically. | 1.Structure doesn’t store data physically. |
2.Table contains technical attributes like data class,logon data,buffering etc.. | 2.Structure doesn’t contain any techinal attributes like table. |
3. Table contains primary key. | 3.Structure doesn’t contain primary key. |
4.Table will allow you to store multiple records while the program is still running. | 4.Structure doesn’t allow you to store more than one record during runtime. . |
What is the difference between transport of copies and transport request?
Transport of copies is nothing but getting all versions of an object which are in released status to compare the differences in betwwen them .
workbench request is the one we’ll create whenever you develop an object in ABAP.
Type of a table or structure
The table type determines how the logical table description defined in the ABAP/4 Dictionary is reproduced on the database. There are the following table types:
- transparent table
- structure
- append structure
For internal purposes, such as storing control data or update texts, there are in addition the following table types:
- pooled table
- cluster table
- generated view structure
Transparent table There is a physical table on the database for each transparent table. The names of the physical tables and the logical table definition in the ABAP/4 Dictionary correspond. All business data and application data are stored in transparent tables.
Structure No data records exist in the database for a structure. Structures are used for the interface definition between programs or between screens and programs.
Append structure An append structure defines a set of fields which belong to another table or structure but which are treated in the correction administration as its own object. Append structures are used to support modifications.
Pooled table Pooled tables can be used to store control data (e.g. screen sequences, program parameters or temporary data). Several pooled tables can be combined to form a table pool. The table pool corresponds to a physical table on the database in which all the records of the allocated pooled tables are stored.
Cluster table Cluster tables contain continuous text, for example, documentation. Several cluster tables can be combined to form a table cluster. Several logical lines of different tables are combined to form a physical record in this table type. This permits object-by-object storage or object-by-object access. In order to combine tables in clusters, at least parts of the keys must agree. Several cluster tables are stored in one corresponding table on the database.
Generated view structure In activation a structure is generated for a view. This structure serves as the interface for the runtime environment. It does not generally appear in the ABAP/4 Dictionary.
Q.What is a Data Class?
The Data class determines in which tablespace the table is stored when it is created in the database.
Q. What is a Size Category?
The Size category describes the probable space requirement of the table in the database.
Q. How Many types of size categories and data classes are there?
There are five size categories (0-4) and 11 data classes, only three of which are appropriate for application tables:
- APPL0 - Master data (data frequently accessed but rarely updated)
- APPL1 - Transaction data (data that is changed frequently)
- APPL2 - Organisational data (customizing data that is entered when system is configured and then rarely changed)
Q. What are control tables?
The values specified for the size category and data class are mapped to database-specific values via control tables.
Q. What are the function of the transport system and workbench organiser?
The function of the transport system and the Workbench Organizer is to manage any changes made to objects of the ABAP/4 Development Workbench and to transport these changes between different SAP systems.
Q. What is a table pool?
Q. A table pool (or pool) is used to combine several logical tables in the ABAP/4 Dictionary. The definition of a pool consists of at least two key fields and a long argument field (VARDATA).
Q. What are pooled tables?
These are logical tables which must be assigned to a table pool when they are defined. Pooled tables can be used to store control data (such as screen sequences or program parameters).
Q. What is a table cluster?
A table cluster combines several logical tables in the ABAP/4 Dictionary. Several logical rows from different cluster tables are brought together in a single physical record. The records from the cluster tables assigned to a cluster are thus stored in a single common table in the database.
Q. Which objects are independent transport objects?
Domains, Data elements, Tables, Technical settings for tables, Secondary indexes for transparent tables, Structures, Views, Matchcode objects, Matchcode IDs, Lock objects.
Q. What are the Data types of the external layer?
ACCP, CHAR, CLNT, CUKY,CURR, DATS, DEC, FLTP, INT1,INT2, INT4, LANG, LCHR,LRAW, NUMC, PREC, QUAN,RAW ,TIMS, UNIT, VARC.
Q. What are the Data types of the ABAP/4 layer?
Possible ABAP/4 data types:
- C: Character.
- D: Date, format YYYYMMDD.
- F: Floating-point number in DOUBLE PRECISION (8 bytes).
- I: Integer.
- N: Numerical character string of arbitrary length.
- P: Amount or counter field (packed; implementation depends on hardware platform).
- S: Time stamp YYYYMMDDHHMMSS.
- T: Time of day HHMMSS.
- V: Character string of variable length, length is given in the first two bytes.
- X: Hexadecimal (binary) storage.
Q. How can we set the tablespaces and extent sizes?
You can specify the extent sizes and the tablespace (physical storage area in the database) in which a transparent table is to be stored by setting the size category and data class.
Q.What is a data dictionary?
Data dictionary is a central source of data in a data management system. Its main function is to support the. It has details about
- What data is contained?
- What are the attributes of the data?
- What is the relationship existing between the various data elements?
Q.What functions does a data dictionary perform?
In a data management system, the principal functions performed by the data dictionary are:
- Management of data definitions
- Provision of information for evaluation
- Support for software development
- Support form documentation
- Ensuring that the data definitions are flexible and up-to-date.
Q.A field containing currency amounts (data type CURR) must be assigned to a reference table and a reference field. Explain.
As a reference table, a system table containing all the valid currencies is assigned or any other table which contains a field with the currency key format. This field is called as a reference field. The assignment of the field containing currency amounts to the reference field is made at runtime. The value in the reference field determines the currency of the amount.
Q.What is the significance of Technical settings (specified while creating a table in the data dictionary)?
By specifying technical settings we can control how database tables are created in the database. The technical settings allows us to - optimize storage space requirements
- table access behaviour
- buffering required
- changes to entries logged
Q.What is the significance of Delivery Class?
- The delivery class controls the degree to which the SAP or the customer is responsible for table maintenance whether SAP provides the table with or without contents.
- Determines the table type. - determines how the table behaves when it is first installed, at upgrade, when it is transported, and when a client copy is performed.
Q.What is the maximum number of structures that can be included in a table or structure?
Nine.
Q.What are the two methods of modifying SAP standard tables?
- Append Structures and
- Customizing Includes.
Q.What is the difference between a Substructure and an Append Structure?
- In the case of a substructure, the reference originates in the table itself, in the forma of a statement include.
- In thecase of an append structure, the table itself remains unchanged and the reference originates in the append structure.
Q. What are the two ways for restricting the value range for a domain?
- By specifying fixed values.
- By stipulating a value table.
Q.What is a Match Code?
Match Code is a tool to help us to search for data records in the system. Match codes are an efficient and user-friendly search aid where the key of a record is unknown.
Q. What are the two levels in defining a Match Code?
- Match Code object
- Match Code Id.
Q.What is the maximum number of match code Id's that can be defined for one Match code object ?
A maximum number of match code Id's that can be defined for one Match code object is36. A match code Id is a one character ID which can be a letter or a number.
Q.Can we define our own Match Code ID's for SAP Matchcodes?
Yes, the numbers 0 to 9 are reserved for us to create our own Match Code IDs for a SAP defined Matchcode object.
Q.What is an Update type with reference to a Match code ID?
If the data in one of the base tables of a matchcode ID changes, the matchcode data has to be updated. The update type stipulates when the matchcode is to be updated and how it is to be done. The update type also specifies which method is to be used for Building matchcodes . You must specify the update type when you define a matchcode ID.
Q.What are conversion routines ?
Non-standard conversions from display format to sap internal format and vice-versa are implemented with so called conversion routines.
Aggregated Objects Views, matchcodes, and lock objects are also called aggregate objects because they are formed from several related tables.
Q.What is a View ?
A view is a logical view on one or more tables. A view on one or more tables i.e, the data from a view is not actually physically stored instead of being derived from one or more tables. A view can be used to summarize data which is distributed among several tables
Q.How many types of Views are there ?
1)Database View (SE11)
Database views are implement an inner join, that is, only records of the primary table (selected via the join operation) for which the corresponding records of the secondary tables also exist are fetched. Inconsistencies between primary and secondary table could, therefore, lead to a reduced selection set. In database views, the join conditions can be formulated using equality relationships between any base fields. In the other types of view, they must be taken from existing foreign keys. That is, tables can only be collected in a maintenance or help view if they are linked to one another via foreign keys.
2) Help View ( SE54)
Help views are used to output additional information when the online help system is called. When the F4 button is pressed for a screen field, a check is first made on whether a matchcode is defined for this field. If this is not the case, the help view is displayed in which the check table of the field is the primary table. Thus, for each table no more than one help view can be created, that is, a table can only be primary table in at most one help view.
3) Projection View
Projection views are used to suppress or mask certain fields in a table (projection), thus minimizing the number of interfaces. This means that only the data that is actually required is exchanged when the database is accessed. A projection view can draw upon only one table. Selection conditions cannot be specified for projection views.
4) Maintenance View ( SE54 )
Maintenance views enable a business-oriented approach to looking at data, while at the same time, making it possible to maintain the data involved. Data from several tables can be summarized in a maintenance view and maintained collectively via this view. That is, the data is entered via the view and then distributed to the underlying tables by the system.
Q.What is Locking ?
When two users simultaneously attempt to access the same data record, this is synchronised by a lock mechanism.
When dialog transactions are programmed, locks are set and released by calling certain function modules. These function modules are generated automatically from the definition of so-called lock objects in the ABAP/4 Dictionary. To synchronize the access to a table by setting and removing locks, a Lock object has to be defined in the ABAP/4 Dictionary. Activating the lock object automatically creates #function modules for setting and removing locks. These function modules must be included when programming interactive transactions.
Lock Mechanism : To set locks, a lock object must be defined in the ABAP/4 Dictionary. In this lock object, those tables in which data records are to be locked by calling a lock are determined. All tables included in a lock object must be connected to each other via foreign keys. The key fields of the tables in a lock object form the Lock arguments for the tables. The lock arguments are the basis for formulating the logical condition for identifying the records to be locked. When activating this lock object, two function modulesB with the names ENQUEUE_ and DEQUEUE_ are generated.
Example :
Q.What is database utility ?
Database utility is the interface between the ABAP/4 Dictionary and the underlying the SAP system. The database utility is the interface between the ABAP/4 Dictionary and the relational database underlying the SAP system. You can call the database utility from the initial screen of the ABAP/4 Dictionary with Utilities Database utility. The database utility allows you to create, delete and convert objects from the ABAP/4 Dictionary in the database.
MODULARIZATION
Q. What is Modularization and its benefits?
If the program contains the same or similar blocks of statements or it is required to process the same function several times, we can avoid redundancy by using modularization techniques. By modularizing the ABAP/4 programs we make them easy to read and improve their structure. Modularized programs are also easier to maintain and to update.
Q.How can we create callable modules of program code within one ABAP/4 Program?
A. By defining macros.
B. By creating include programs in the library.
Q. What are subroutines?
Subroutines are program modules which can be called from other ABAP/4 programs or within the same program.
Q. What are the types of Subroutines?
A. Internal Subroutines: The source code of the internal subroutines will be in the same ABAP/4 program as the calling procedure (internal call).
B. External Subroutines: The source code of the external subroutines will be in an ABAP/4 program other than the calling procedure.
Q. What are the different types of parameters?
Formal parameters: Parameters which are defined during the definition of subroutine with the FORM statement.
Actual parameters: Parameters which are specified during the call of a subroutine with the PERFORM statement.
Q. How can one distinguish between different kinds of parameters?
A. Input parameters are used to pass data to subroutines.
B. Output parameters are used to pass data from subroutines.
Q. What are the different methods of passing data?
A. Calling by reference: During a subroutine call, only the address of the actual parameter is transferred to the formal parameters. The formal parameter has no memory of its own, and we work with the field of the calling program within the subroutine. If we change the formal parameter, the field contents in the calling program also change.
B. Calling by value: During a subroutine call, the formal parameters are created as copies of the actual parameters. The formal parameters have memory of their own. Changes to the formal parameters have no effect on the actual parameters.
C. Calling by value and result: During a subroutine call, the formal parameters are created as copies of the actual parameters. The formal parameters have their own memory space. Changes to the formal parameters are copied to the actual parameters at the end of the subroutine. The method by which internal tables are passed is By Reference.
Q. What is the difference between the function module and a normal ABAP/4 subroutine?
In contrast to normal subroutines function modules have uniquely defined interface. Subroutines do not return values.
Subroutines do not return exceptions. Subroutines cannot be tested independently. Declaring data as common parts is not possible for function modules. Function modules are stored in a central library.
Q.What is a function group?
A function group is a collection of logically related modules that share global data with each other. All the modules in the group are included in the same main program. When an ABAP/4 program contains a CALL FUNCTION statement, the system loads the entire function group in with the program code at runtime. Every function module belongs to a function group.
Q.What is the difference between internal tables and extract datasets?
A. The lines of an internal table always have the same structure. By using extract datasets, you can handle groups of data with different structure and get statistical figures from the grouped data.
B. You have to define the structure of the internal table at the beginning. You need not define the structure of the extract dataset.
C. In contrast to internal tables, the system partly compresses extract datasets when storing them. This reduces the storage space required.
D. Internal tables require special work area for interface whereas extract datasets do not need a special work area for the interface.
Comments
Post a Comment