What Is The Difference Between Transparent Table and Pooled Table?
What Is The Difference Between Transparent Table and Pooled Table?
A transparent table in data dictionary has a one-to-one relationship with a table in the database A pooled table in R/3 has a many to one relationship with a table in the database. Pooled table is a group of related logical tables.An important difference between transparent table and the pool table is that you cannot create secondary indices on pool table Transparent table stores application data where as pooled table stores system data. transparent table : where the master data is stored, and which data has no frequent changes .ex: KNA1,MARA,LFA1 etc. we can have INCLUDE AND APPEND structure in transparent table. pooled table : it is linear search, where data has changed frequently,it can not have foriegn key relationship,we can not INCLUDE AND APPEND structure.
1. Transparent
2. Clustered
3. Pooled
TRANSPARENT tables: Table Structure in the ABAP dictionary is same as the table structure in the database. and 90% of the SAP tables are TRANSPARENT tables. CLUSTERED tables & POOLED tables : There is a layer (CLUSTER LAYER) in the database server to process the incoming requests from the application server, so that database server just supplies the data instead of processing & then supplying, so that PERFORMANCE will increase, there its called as a LOGICAL DATA also. CLUSTER TABLE follows BINARY search. POOLED TABLE follows LINEAR search. What ever i provided is with my knowledge... if any mistakes just give the reply...
Thank you
Value table:it is mainted at domain level. Check table :it is maintained at field level. the refrance table of forin key table. we create value table for domain level validation and check table for field level validatin.check table will come in the concept of foreign key table.
are there. 4. Input help from Fixed value or Value range given in Domain.
Faq's on DDIC
DATA DICTIONARY 1. What are the layers of data descriptions 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 itis 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 (11 0-4) and data classes, only three ofwhich 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 customers 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 tomanage 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 keys 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. 14. Which objects are independent transport objects? Domains, Data elements, Tables, Technical settings for tables, Secondary indexes for transparent tables, Structures, Views, Match code objects, Match code 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, DEC, 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 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. 19. 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. 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 samedevelopment 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 ? 3. 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. 24. What are the features of ABAP/4 Dictionary ? The most important features are : - Integrated to ABAP/4 Development Workbench - Active in the runtime environment
25. 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 utitlities. 26.What are the basic objects of the data dictionary ? - Tables - Domains - Data elements - Structures - Foreign keys 27. What are the aggregate objects in the data dictionary? - Views - Matchcodes - Lock objects 28.In the ABAP/4 Dictionary Tables can be defined independent of the underlying database (T/F) True 29. ABAP/4 Dictionary contains the Logical _ (Logical/Physical) definition of the table. 30. 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 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. 31. 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 for 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. 32. 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 requiremnets - table access behaviour - buffering required - changes to entries logged 33.What is a Table attribute ? 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: a. Delivery class b. Table maintenance allowed c. Activation type. 34. 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. 35. What is the maximum number of structures that can be included in a table or structure - Nine. 36. What are the two methods of modifying Sap standard tables ? - Append Structures and - Customizing Includes. 39. What is the difference between a Substructure and an Append Structure ? In case of a substructure, the reference originates in the table itself, in the forma of a statement .include... . In case of an append structure, the table itself remains unchanged and the refrence originates in the append structure. 40. To how many tables can an append structure be assigned ? One. 41. If a table that is to be extended contains a long field, we cannot use append structures. Why? Long fields in a table must always be located in the end, as the last field of the table. If a table has an append structure the append line must also be on the last field of the table. 42.Can we include customizing include or an append structure with Pooled or Cluster tables ? No. 43. What are the two ways for restricting the value range for a domain ? By specifying fixed values. By stipulating a value table. 44. Structures can contain data only during the run time of a program (T/F) - True. 45. What are the aggregate objects in the Dictionary? - Views - Match Code - Lock object 46.What are base tables of an aggregate object? The tables making up an aggregate object (primary and secondary) are called aggregate object. 47.The data of a view is not physically stored, but derived from one or more tables. (T/F). -True. 48. What are the 2 other types of Views, which are not allowed in Release 3.0? - Structure Views - Entity Views. 49. 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 key of a record is unknown. 50. What are the two levels in defining a Match Code? - Match Code object - Match Code Id.
51. What is the maximum number of match code Id's that can be defined for one Match code object ? A match code Id is a one character ID that can be a letter or a number. 52. 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. 53. 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. 54. Can matchcode object contain IDs with different update types ? - Yes. 55. What are the update types possible ? The following update types are possible: Update type A: The matchcode data is updated asynchronously to database changes. Update type S: The matchcode data is updated synchronously to database changes. Update type P: The matchcode data is updated by the application program. Update type I: Access to the matchcode data is managed using a database view. Update type K: Access to the matchcode is achieved by calling a function module. 56. What are the two different ways of building a match code object ? A match code can be built in two different ways : Logical structure : The matchcode data is set up temporarily at the moment when the match code is accessed. (Update type I, K) Physical structure : The match code data is physically stored in a seperate table in the database. (Update type A, S, P) 57. What are the differences between a Database index and a match code ? Match Code can contain fields from severeal 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. 58. What is the function of a Domain? A domian 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. 59. Can you delete a domain which is being used by data elements ? - No. 60. What are conversion routines ? Non standard conversions from display format to sap internal format and vice-versa are implemented with so called conversion routines. 61. What is the function of a data element ? A data element describes the role played by a domain in a technical context. A data element contains semantic information. 62. Can a domain, assigned to a data element be changed ? Yes. We can do so by just overwriting the entry in the field domain).
63. Can you delete data element which is being used by table fields . No. 64. Can you define a field without a data element ? 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 ashort text directly in the table maintenance. 65. What are null values ? If the value of a field in a table is undefined or unknown, it is called a null value. 66. What is the difference between a structure and a table ? Structures are constructed the almost the same way as tables, the only difference using that no database table is generated from them. 67. 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 being derived from one or more tables. 68. How many types of Views are there ? - Database View - Help View - Projection View - Maintenance View 69. What is Locking ? When two users simultaneously attempt to access the same data record, this is synchronised by a lock mechanism. 70. What is database utility ? Database utility is the interface betweenn the ABAP/4 Dictionary and the underlying the SAP system. 71. What are the basic fucntions of Database utility ? The basic functions of database utility are : - Create database objects - Delete database objects - Adjust database objects to changed ABAP/4 dictionary definition. 72. What is Repository Info. Systems ? It is a tool with which you can make data stored in the ABAP/4 Dictionary available.
Posted by SAP-ABAP at 1:11 P
Data Class
If you choose the data class correctly, your table is automatically assigned to the correct area (tablespace or DBspace) of the database when it is created. Each data class corresponds to a physical area in which all the tables assigned to this data class are stored. There are the following data classes: APPL0 (master data): Data which is seldomly changed. An example of master data is the data contained in an address file, such as the name, address and telephone number. APPL1 (transaction data): Data that is frequently changed. An example of transaction data is the goods in a warehouse, which change after each purchase order. APPL2 (organizational data): Customizing data that is defined when the system is installed and seldomly changed. An example is the table with country codes.
Two further data classes, USR and USR1, are provided for the customer. These are for user developments. The tables assigned to these data classes are stored in a tablespace for user developments.
Buffering is particularly important in client/server environments, as it takes considerably longer to access a table with the network than it does to access a table that is buffered locally. Depending on the network load, this factor can lie between 10 and 100. The difference in performance is somewhat less marked in central systems (systems with only one application server) than in local ones (systems with several application servers). However, even in central systems, a reduction in process changes and increased sophistication of the buffering over that provided by the database system have a noticeable effect on performance.
The buffering type determines which records are loaded into the buffer during an access.
Displacement
If more space is required in the buffer due to new data, the data that has not been accessed for the longest time is displaced. The data is displaced asynchronously at certain times that are defined dynamically by the buffer accesses. The data is only displaced if at this time the free space in the buffer is less than a given value or if the access quality is not good enough.
See also:
The following two points speak against table buffering: The data read by the application must always be up-to-date. Delays caused by the synchronization mechanism (see Synchronization of Local Buffers) cannot be accepted. The table data is frequently modified. In this case the cost of synchronization could be greater than the gain in performance resulting from buffering. Roughly speaking, it does not make sense to buffer a table if more than one
The table containing currency exchange rates is updated only once a day, but it is read frequently. Buffering is recommended in this case.
Typical candidates for buffering include customizing and system tables. In certain cases master data with customizing character can also be buffered. The contents of buffered tables are not always up-to-date in a distributed system. You can bypass the buffer and read the data directly from the database table with the ABAP command "SELECT SINGLE ... BYPASSING BUFFER". If a buffered table is accessed frequently with this command, you should consider whether it is really necessary for the table to be buffered or whether it is essential to have the current state of the database.
You must define whether and how a table is buffered in its technical settings (see Technical Settings).
Structure Enhancements
1. Possibilities offered by structure enhancements 2. Problems with structure enhancements 3. Classifying enhancements in the ABAP Dictionary 4. Handling the enhancement in the program check
1. Possibilities offered by structure enhancements Customers can subsequently enhance structures and tables, defined by SAP in the ABAP Dictionary, as follows:Customizing Includes Customizing Includes: Specified parts of a structure or table are already reserved for enhancements. The
customer then creates the appropriate includes. Appends: The customer appends fields to the end of the structure or the table without any prior reservation having been made.
Enhancements of this kind affect not only the structures and tables themselves but also all dependent structures that take the enhancement as an include or substructure. For example, if an enhancement using an Append takes effect only at the end of the initial structure, it will affect all the dependent structures.
2. Problems with structure enhancements In programs without an active Unicode check, structure enhancements can cause significant problems with type checks or if used in connection with deep structures, leading both to syntax and runtime errors. In programs with an active Unicode check, assignments, operand checks, and accesses using offset and length are also affected and problems can arise For example, if a purely character-type structure is enhanced by inserting numeric or deep components, it can lose its nature. Enhancements cause further problems because they can change the and hence affect the checks (based on the fragment view) for assignments and comparisons.
Choosing a Table Type The table type (and particularly the access method) that you will use depends on how the typical internal table operations will be most frequently executed. Standard tables This is the most appropriate type if you are going to address the individual table entries using the index. Index access is the quickest possible access. You should fill a standard table by appending lines (ABAP APPEND statement), and read, modify and delete entries by specifying the index (INDEX option with the relevant ABAP command). The access time for a standard table increases in a linear relationship with the number of table entries. If you need key access, standard tables are particularly useful if you can fill and process the table in separate steps. For example, you could fill the table by appending entries, and then sort it. If you use the binary search option with key access, the response time is logarithmically proportional to the number of table entries.
Sorted tables This is the most appropriate type if you need a table which is sorted as you fill
it. You fill sorted tables using the INSERT statement. Entries are inserted according to the sort sequence defined through the table key. Any illegal entries are recognized as soon as you try to add them to the table. The response time for key access is logarithmically proportional to the number of table entries, since the system always uses a binary search. Sorted tables are particularly useful for partially sequential processing in a LOOP if you specify the beginning of the table key in the WHERE condition.
Hashed tables This is the most appropriate type for any table where the main operation is key access. You cannot access a hashed table using its index. The response time for key access remains constant, regardless of the number of table entries. Like database tables, hashed tables always have a unique key. Hashed tables are useful if you want to construct and use an internal table which resembles a database table or for processing large amounts of data.
1. Select object type Lock object in the initial screen of the ABAP Dictionary, enter an object name and choose Create. The name of a lock object should begin with an E (Enqueue). The maintenance screen for lock objects is displayed. 2. Enter an explanatory short text in the field Short text.
You can then use the short text to find the lock object at a later time, for example with the SAP Repository Information System. 3. Enter the name of the primary table of the lock object.
All other tables in the lock object must be linked with the primary table using foreign keys. There are also some restrictions on the valid foreign key relationships. 4. Select the lock mode of the primary table in the field below it.
The lock mode is used as the default value for the corresponding parameters of the function modules generated from the lock object. 5. Choose Add if you want to lock records in more than one table with the lock object. A list of all the tables linked with the primary table using valid foreign keys is displayed. Select the appropriate table. The lock mode of the primary table is copied as lock mode. You can change this setting as required, for example you can assign the lock mode separately for each table. Similarly, you can add a table linked with the secondary table just added with foreign keys. To do this, place the cursor on the name of the secondary table and choose Add.