Pages

SAP Basic Frequently Asked Questions - Part 1


1) What is an internal table? What are screens, sub-screens, table controls and tab strips?
                          
                            OR

    What is the difference between internal table and structure?

Ans:  
Internal tables are created in the programming it and the data are read from the application level. 

Internal tables of one program can’t be used in other programs. But structures once you create you can use it again and again.

There are three types of structure:-

1. Flat structure (elementary fields)

2. Nested structure (type reference to other structure)

3. Deep structure (type reference to database tables)

                                  Or  

Structure is used to see what are the records are available in database.

But internal table is used to store the records from database. It stored in temporary storage. We can work with internal table records instead of database.

                                  Or 

If we declare structure with TYPE then it is only a definition. If we declare structure with DATA then it creates object and contains one record.

It we declare structure with TABLE OF then it creates internal table of initial size. Internal table must create through standard tables or structures only

2) What is the main difference between work area and header line?

Ans:  Header is always consisting of data which is constant and in work area the data is changing. 

Example In Purchase Order Header is Vendor data which is same always for the selected vendor where as work area which is item details which can change according to what item is being order with that vendor.

3) what is Tr.Code? What are the types is there? How many Tr.Code is there?

Ans: Tr.Code is TRANSACTION CODE.SAP offers more than one way of running an application which may be the existing standard SAP one eg. SE11, LSMW etc. Or developer-defined application/program (to which a tr.code has been assigned). Using transaction codes we can run an application directly without consuming time in locating the program/application of interest. 

Let’s have a simple example: REPORT ztcode

WRITE: /5 'MY TRANSACTION CODE'.

We can run it by F8 & can have its effect (output), but if assigned a Tr.Code, using its tr.code, same is done directly i.e. without locating the program thru object navigator (SE80) or abap editor (SE38)

Tcode = Transaction Code.

Def = A transaction code is a four-character command that tells the system location of a task. Each 

SAP screen has a unique transaction code. A transaction code may contain only letters such as zstm or a combination of letters and numbers such as me51.

4). Explain row type and line type concept

Ans:  Line type can hold one record. (Work area)
 Row type can hold multiple records. (Body)

                                     Or                    

Row type defines the header or work area of the internal table where we can hold a record of multiple data type. Where as line type defines one field of internal table which can hold only one type of data element. Row type is nothing but Header and line type is work body
                         
Line type refers to the structure of an internal table, whereas row type is the actual part that contains the data and it refers to the table body. Creating internal table using line type and row type concept is for reusability purpose. Line type and Row type are defined at DDIC LEVEL.

5) What is the difference between cost center element and a GL ACCOUNT?

Ans:   G/L Account is classified into expenses and revenues. In FI module the term GL Account is used  and in CO Module the term Cost Center is used. Both r having same meaning

                                   Or

Not all G/L accounts are supportive to cost elements e.g. asset g/l and liability g/l cannot be taken for controlling purposes.

Hence, only Cost and Revenue G/L accounts are Cost elements. Cost elements enable data flow to controlling where as G/L accounts are the data warehouses by them selves for FI purpose.

                                  Or        

Gl account and cost centre element appears to be the same. However, there is a lot of difference in between them. The main difference is the gl account balance cannot be used for any allocation, distribution purpose. However, the cost centre element can be allocated and distributed from one object to another object.

6) Can any one give me brief explanation about internal tables, and work area?

Ans: It is the intermediate table between database and driver program. Using this we can avoid the accidental loss of data using work area only we can retrieve the data and inserting the data into internal table.

                         Or

Internal Tables are just temporary objects stored in the program, n its main purpose is to extract data from database tables. It doesn’t mean that u can do direct operations on database table from program, but thru internal .tables we can minimize the access n utilization of database (as we extract them to program n perform operations directly)...Minimizing the utilization of database, can improve the efficiency, which is the primary goal of a programmer....They r just can be told as copies to database tables...Work area is nothing but a flat structure with the same definition as Internal table. 

It just stores one row at a time. In a nutshell, it’s an explicit area where all the operations on Internal table can be performed...Of course without work area, one can perform operations thru header line (which is assigned by SAP itself).....

                               Or  

An internal table is a run time instance.  It gets created when program starts execution.
*It gets destroyed when program terminates. It has two different parts.  Header Line (optional) & Body (Compulsory).
*Any value that comes to or goes from internal table, that travels through header line.

7) what is difference b/w struts and spring framework?

Ans:   Struts is a web framework while spring is a complete framework, you can develop web based solutions as well as desktop applications using spring. Spring is based on the principle of Dependency 

Injection or inversion of control. All the dependencies for a bean are injected using a centralized configuration file in advance so that they need not to look up for them. Spring provides it's own MVC framework as well as ability to hook other framework like struts along with using other facilities of spring like Aspect oriented programming.


8) How to change 1200 open sales order pricing? Suppose customers have booked order in advance. At the due date of delivery the company's pricing has been changed. Now the company wants to change the pricing of these orders. How to do it?

Ans: There is a transaction code named MASS in sap it is used to carry the mass changes in the sale order.
                            Or
        
   Using VA02 Tr.Code.

9) How many tables are created when you copy a Company Code in SAP?
 
     What are the main tables required for a FI/Co consultant to refer upon in delivering his duties?

Ans:   Around 350 tables are created when you copy a company code and make it productive. As a FI/CO consultant you should be aware of tables related to the FI/CO sub-modules that you have worked on. Eg General Ledger... Asset etc. This link has all the tables used in FI module.. You can see what sub-module you work on and what tables you use.

Or       It is 252 tables.

10) How to eliminate duplicate entries in internal tables?

Ans: To delete all duplicate entries from a sorted internal table (e.g. just after SORT), you can use the DELETE ADJACENT DUPLICATES FROM itab statement. You can use the COMPARING addition to limit the fields that are used to test for duplicate entries e.g. SORT itab by Matnr werks logort .DELETE ADJACENT DUPLICATES FROM itab COMPARING Matnr werks. All duplicates with same combination of Matnr and werks will be deleted

                                   Or  

SORT ITAB. DELETE ADJACENT DUPLICATES FROM itab COMPARING ALL FIELDS.

                                        Or 

Using DELETE ADJACENT DUPLICATES will retain the first entry. What if I want to delete all entries if duplicate is found? For example, if Matnr A is found to have duplicates in the internal table, all entries with Matnr A should be removed from the internal table.

11) Field groups and internal tables

Ans: Field group are nothing but a similar type of fields grouped under single name (group).  Grouping of the fields is called field groups. Internal Tables are stored temp memory/in buffer for the further processing of the fields.

                                    Or 


Field groups are like structures in C. We can create multiple variables in single structure.
Internal table is a temporary table is stored in RAM (presentation layer).

12) Size of the internal tables

Ans: Depends upon the presentation layer RAM size.

                                  Or    
 
   The sizes of the internal tables are set using the 'occurs n' clause. Here n refers to a integer number that specifies the size. Usually its given as 'occurs 0' which creates an itab with the memory space of 8kb.

                                  Or 


internal table have 2 gigabytes of memory space’s the initialize size is of 8 kb which can be extend further.

13) what are the basic difference internal tables and database tables? How can we differentiate  
      by looking at the tables? Handling of internal tables

Ans: The basic difference is database tables are stored in db server and the internal tables are virtual  
         tables these are created run time only

                                 Or    

   Internal table: when ever we declared in Program and executed in the RUN TIME only control can allocate internal table ,when ever the Program closed the memory of internal table will be released by control. it means table will be created at RUNTIME only. These are not declared at underlying database.
Database Tables: tables which are declared in under lying database level, and its memory is permanent

14) What’s an effective way of using an internal table record?

Ans: Create internal table without Header. Do all the internal table operations by Creating Work area.
 
         This would be the efficient way of coding.
 
         Don't forget to CLEAR Work area whenever it is required.

15) Types of internal tables

Ans: Types of internal tables

1. STANDARD tables:

 Key access to a standard table uses a linear search. This means that the time required for a search is in linear relation to the number of table entries. You should use index operations to access standard tables. 

2. SORTED tables: 

Defines the table as one that is always saved correctly sorted. Key access to a sorted table uses a binary key. If the key is not unique, the system takes the entry with the lowest index. The runtime required for key access is logarithmically related to the number of table entries. 

3. HASHED tables:

Defines the table as one that is managed with an internal hash procedure. You can only access a hashed table using the generic key operations or other generic operations (SORT, LOOP, and so on). Explicit or implicit index operations (such as LOOP ... FROM or INSERT itab within a LOOP) are not allowed. 

4. INDEX table:

A table that can be accessed using an index. Index table is only used to specify the type of generic parameters in a FORM or FUNCTION. That means that you can't create a table of type INDEX. Standard tables and sorted tables are index tables

5. ANY table: 

Any table is only used to specify the type of generic parameters in a FORM or FUNCTION. That means that you can't create a table of type ANY. Standard, sorted and hashed tables belongs to ANY tables

                                  Or 

There are three types of Internal Tables exist.

1. Standard Internal Tables: These tables have a linear index and can be accessed using the index or the key. The response time is in linear relationship with number of table entries. These tables are useful when user wants to address individual table entries using the index.

2. Sorted Internal Tables: These tables also have an index and the key. But, the response time is in logarithmic relationship with number of table entries, since it uses binary search algorithm instead of linear search. These tables are useful when user wants the table to be sorted while additional entries have to be added. 

3. Hashed Internal Tables: These tables have no index, but have the key. The response time is constant irrespective of number of table entries, since it uses a Hash algorithm. These tables are useful when user wants to access the entries with key only.

16) Field groups

Ans: Field group is like a structure that can hold a set of fields. It’s also called as field strings. Field strings can contain only one record. Whenever we update the values in the field group the existing values are overwritten with the new values entered. The field groups can be created using the data statement.

0 comments:

Post a Comment