Basis interview questions

1.SAPARCHITECTURE

1) What is SAP?
SAP is German Software company that produces the R/3 System
SAP is SYSTEMS, APPLICATIONS, PRODUCTS in data processing.
2) What is R/3?
R/3= Real Time in 3 Tier Architecture. R/3 is an integrated suite of applications designed to handle the data processing for large corporations.
3) What is the purpose of R/3.
The sole purpose of R/3 is to provide a suite of tightly integrated large-scale business applications.
4) What is an ERP System.?
ERP “ ENTERPRISE RESOURCE PLANNING SYSTEM.
R/3 is an example of ERP system.
ERP systems are used by large corporations to track a lot information related to the business like Financials, Sales and Material data.
5) What is a Functional Module?
A functional module is a set of transactions that deals with the same area of business functionality.
6) What is an operating system?
It is an interface between the user and computer.
7) What is a database?
A collection of data records.
8) What is DBMS?
A collection of records, programs to manipulate or operate on the data.
9) What is RDBMS?
A collection of table which is integrated to each other.
10) What are the advantages of RDBMS?
A) Prevents the duplication of data.
B) Whenever the data collapses you can get the data form ‘Redo Lock’ files.
C) Data integrity.
D) Physical data independence.
E) Concurrency control possible locking in RDBMS.
11) What is BASIS?
Basis is like an operating system for R/3. It sits between the ABAP/4 code and the computer operating system. ABAP/4 cannot run directly on an operating system. It requires a set of programs to load interpret and buffer its input and output. Basis provides the runtime
Environment for ABAP/4 programs.
12) What is Client/Server?
Client/Server is two programs talking to each other. With Client/Server, the client/Server programs are independent process. If the client sends a request to the Server, it is free to perform other work while waiting for the response.
13) What is a Tier?
A tier is the boundary between two computers. When the Client/Server programs both run on the same computer, the configuration is referred to as Single tier Client/Server. When they run on different computers, the configuration is referred to as two-tier. A Program can function as both a client and server if both requests information and replies to requests. When you have three programs in communication, the configuration is called three-tier client/Server
14) What is Presentation Server?
The presentation server is actually a program named SAPGUI.EXE it is usually installed on a user’s workstation. When started the presentation Server displays R/3menus with in a window. This window commonly known as the SAPGUI or the user interface.
15) What is Application Server?
An Application server is a set of executables that collectively interpret the ABAP/4 programs and manage the input and output for the application server. If your ABAP/4 program requests information from the database, the application server will format the request and sent it to the database.
16) What is database Server?
The database server is a set of executables that accept database request from the application server. These requests are passed onto the DBMS the RDBMS sends the data back to the database server, which then passes the information back to the application server. The application server to turn passes that information to your ABAP/ 4 program.
17) Define R/3 System?
The simplest definition of an R/3 system is “One Database”. One R/3 System is composed of one database server accessing a single database. One or more application server and one or more presentation servers.
18) What is an R/3 instance?
The term synonymous with application server
19) What is “User Context”?
A user Context is memory allocated to contain the characteristics of a user that is logged on the R/3 System. It holds the information.
a) The user’s current settings.
b) The user’s authorization.
c) The names of the programs the user is currently running.
20) What is a Dialog Step?
A Dialog Step is any screen change. A Dialog step is the processing needed to get form one screen to the next. It includes all processing that occurs after the user issues a request, and including the processing needed to display the next screen.
21) What is the Roll Area?
A roll area is memory allocated by a work process for an instance of a program.
22) What is Work process?
23) How many types are work processes are there and what are they?
a) Background – Background jobs.
b) Dialog –Dialog request.
c) Enqueue – Logical Lock Request.
d) Gateway – Funnels messages into and out of the R/3 System.
e) Message – Routes, messages between application server within an R/3 System.
f) Spool – Print spool request.
g) Update – Request to update data in the database.
24) How many types of tables are there in R/3 Database and what are they?
Two Types A) Client-Dependent and B)Client-Independent.
A table is client-dependent if the first table field type is of type CLMT. The length will always be 3. And this field is always named ‘MANDT’.
If the first is not of type CLNT the table is Client-Independent.
25) What is SAP’s Open SQL?
ABAP/4 code is portable between databases. To access the database in an ABAP/4 program you will code SAP’s Open SQL. Open SQL is a subset of ANSISQL. The ABAP/4 interpreter passes all open SQL statements to the database interface part of the work-process. There they are converted to SQL I.e. native to the installed RDBMS.

DICTIONARY

1. What is a data dictionary?
Data dictionary is a central source of information for the data in a data management system.
2. What is Dictionary’s main function?
The main function of the dictionary is to support the creation and management of data definitions (METADATA).
3. What is a table?
a) A table is a two-dimensional matrix consisting of rows and field.
b) A table is a collection of rows containing fields also called columns.
4 What is a structure?
A structure is a description of a group of fields.
5) What is the main difference between tables and structures?
Major difference between the two is that a table has an underlying database table associated with it. For structure there is no database table is generated.
6) How many ways a structure name can be used? What are these ways?
a) In a program : To allocate memory for a group of fields.
b) In a Table : To describe a set of fields.
1) What is a substructure?
Rather than listing all the fields you wish a table is structured to contain, you choose to include the fields from another table or structure as a substructure.
2) What are the basic objects of ABAP/4 dictionary?
Tables and structures, views, domains, data Elements,
3) What are the table components?
Fields, Domains and Data Elements.
4) What is a Data Elements?
The data element describes the role of a (technical) domain within a particular business function for the fields concerned and determines how these fields are displayed on the screen.
5) What is a domain?
A domain contains the technical characteristics of a field such as external format, length, and other attributes for all these fields.

6) Where can you change technical characteristics of a field?
Only on domain.
13)What is a key?
The minimal set of fields sufficient to uniquely identify each table line by their values is termed as table key.
14) What is reference table and reference field?
Ref. Table:- Table that contains the reference field
Ref. Field:- Field of the reference table containing the corresponding unit or currency.
A reference field is a table having specific fields that contain either currency amounts (data type CURR) or quantities (data type QUAN) the corresponding field is called reference field.
15) What are the most important parameters involved in the technical settings?
A)Data Class 2) Size Category 3) Buffering Authorization 4) Buffering type 5) Logging.
16) What do you determine from the technical settings?
When the table is created on the database, the necessary information about the storage area and the probable size is determined from technical settings.
17) What are the two approaches to create a table?
a) BOTTOM _ UP( Domain, Data Element, Table)
b) TOP – DOWN ( Table, Data Element, Domain)
18)What is a primary key in a table?
A table can have several keys you have to select one of these keys to access the table records, the key is referred to as the primary key of the table.
19)What is a log table?
It is a log file where changes made to the database are stored.
20) What is a foreign key?
A foreign key is a field in a table that is connected to another table via a foreign key relationship. The purpose of the foreign key relationship is to validate the data being entered into one table by checking against a valid set of values in another table.
21) Foreign key table and check table?
The table that contains a foreign key is called foreign key table. The table that contains the valid set of values is called the check table.
22) What are the technical requirements to create a foreign key?
A) The domain names for the foreign key field and check table field must be the same.
B) The check must occur against a field with the primary key of the check table.
23) What is a compound foreign key?
It’s a foreign key composed of two or more fields. A check is done to compare two fields on the foreign key table against two fields in
the check table.
24) What is a database utility?
Within dictionary lies a database utility tool using it, you can examine and modify tables at the database level.
25) What are the two special tables fields?
Currency fields/Quantity fields. The numeric amount is called currency of data type CURR.
A Quantity field is a field that contains a numeric measurement of data type QUAN.
26) What are key candidates?
In a table fields other than primary key are called key candidates.
27) What is a text table?
A text table is a table that contains spoken language descriptions of values in a check table SPRAS and LANG fields.
28) What is a generic foreign key?
It is a foreign key in which one of the primary key fields of the check table, fields is marked as generic. When a primary key field as generic, it doesn’t have a counter part in the foreign key. Table does not participate in the check.
29) What is a constant foreign key?
Constant foreign key is a compound foreign key where one of the check table field name is replaced by a constant value.
30) What are the adapted foreign key?
Foreign key fields of a compound foreign key do not all have to reside in the same table. If they do not reside to the same table that is known as adapted foreign key.
31) Define value Table?
Within the domain is the value table field. The table named within this field is called by value table. The functions of this table are
a) It is automatically proposed as the check table when creating a foreign key.
b) It provides list of values for F4 help but it does not provide validation.
32) What are aggregate objects?
Views, Match codes and Lock Objects.
These are formed from several tables that are linked to one another.
33) What are join operations?
Join, Projections and Selection. These are relation operators.
Join : Join can be used to collect several tables as a cross product table.
Projection : The relation operator projection removes unnecessary fields from cross product table.
Selection: Restrictions for the fields of the view can be specified in selection conditions(And, Or)
34) How many types of views are there and what are they?
4 types 1) Database Views 2) Projection View 3) Help View 4) Maintenance View.
35) What is a view?
The view is virtual table which consists of selective fields from a single table or multiple table.
36) What are match codes?
A match code is a tool to help you search for data records in the system especially when the key of a record is unknown.
37) What are the two stages to define match codes in ABAP/4?
Match code object and Match Code ID.
38)What is a match code Object?
A match code object describes the set of all possible search path for a search them.
39) What is a match code ID?
Match code Id describes the set of all possible search path for a search term.
40) What is lock mechanism?
Simultaneous accessing of same data record by two users in the system in synchronized by a lock mechanism.

41) What is lock Object?
The tables and key fields in which the data records are to be locked by a lock request are specified in the lock object.
42) what is a lock mode?
The lock mode controls the method by which several users are given access to the same data records at any one time.
43) how many lock mode types are there and what are they?
3 types. E S and X.
E-Exclusive-single user at any one time.
S-Shared-several users can simultaneously display same records.
X-Exclusive but not cumulative.
E can be called several times from the same transaction and are removed successively, but type X can be called only once, any other call is rejected.
44) what are the function modules for setting and releasing locks?
ENQUEUE and DEQUEUE
45) what are the differences between database indexes and match codes?
Match code contains fields from several tables where as an index contains fields from only one table.
Match codes can be built on the basis of both transparent and special tables.
46) How many match codes Ids can be defined for a match code object?
36.
47) How many ways are there to add fields to an existing table what are they?
2 types . 1) Inserting. 2) Appending.
48) What is the purpose of data browser?
It enables you to manipulate the data within tables.
49) How many data browser utilities are there in R/3 System?
4 ways SE16, SE17, SM30, SM31. Mostly used is SE16.
50) What is an include chain?
The chain of structures created by including one structure within another is called include chain.
51) What is an index?
An index is an efficiency mechanism for quickly finding rows within a table. An index increases the performance tremendously it will speed up select statements. A select should always be supported by an index. An index could be described as a copy of a database table reduced to specific fields.
52) What is secondary index?
If selections are frequently made involving attributes that cannot contain in the primary index, you should define secondary indexes.
53) What is the maximum number of secondary indexes allowed per table in R/3?
15.
54) What is an index-ID ?
When a table has several indexes, these are distinguished by means of a three-character index-ID.
55) What is table space?
A table space is a physical file on disk that is used to hold tables. Every table is assigned to one table-space.
56) What is a data class?
The data class determines the table-space that the table is assigned to./
The data class determines the physical area of the database (table space) in which the table is created.
57) What are the important data classes?
1) APPL0- Master Data 2) APPL1 – Transaction Data 3) APPL2 – Customizing Data.
58) What is size category?
The size category field enables you to specify the maximum number of records you expect this table to hold ( 0,1,2,3,4)
59) What is an extent?
An extent is the amount of space allocated to a table.
60) What do you mean by buffering a table?
Buffering a table is nothing but, allocating memory for database local to application server.
61) What are the buffering types?
1) Full buffering 2) Generic Buffering 3) Single-Record Buffering.
62) What is nametab ?
An R/3 table exists in two forms, the source that you can display and modify and the compiled form that is used at run time called the run – time object. The run-time object is created when you activate the table and is also known as na
metab.
63) What is the role of a nametab?
When you generate the run-time object for the program the definition of the table is not embedded into it. Instead when the programs run-time object is executed, it makes a call to the nametab to determine the table structure of runtime. Thus enables you to change the table or structure without having to regenerate all the ABAP/4 programs that uses it. The dynamically determined the table characteristics at run-time by calling nametab.
64) What is activation?
Creates run-time objects for immediate accessing of data at application server.
65) What is a clip-board operation? How many clip-board operations are there in R/3 , what are they?
A clip-board is for cut and past operations. They are 5 Clip-Boards.
1) The Buffer – Cut and Past within a program.
2, 3, 4, The x, y and z Buffers – Cut and Paste between two programs.
5 The Clip-Board - Cut and Paste between two R/3 Sessions and other window applications.
66) What are the types of tables in R/3?
1) Transparent table – It has one to one relationship with a table in the database, for each transparent table definition in the dictionary, there is one associated table in the database. Transparent tables are much more, then pooled or Cluster Tables . They are used to hold application data.
2) 2) Pooled table – Many to one relationship with table in the database for one table in the database, they are many table in the ABAP/4 Dictionary.
3) Cluster table – Few tables in the R/3 and one table in the database.




3 . TRANSACTION


1.What is a Transactions?
(A) Transaction is a dialog program, which consists Screens and Module Pools to Read and Change Database tables.

2. What is Dialog Program?
(A) Dialog program is not a stand-alone program and uses Flow logic of screens and processing logic in Module Pools to retrieve and update Database tables.

3. Why Dialog program is not a stand-alone program?
(A) To execute dialog programs, they must be linked to at least one screen. Dialog program is not a stand-alone because the Transaction code, in the dialog program module pool, is controlled by screen flow logic.

4. What is a Screen?
(A) Screen is an Object of Screen Painter.
Screen is an area where you Define and Layout your application specific screen elements.

5. What is Screen Painter?
(A) Screen Painter is an ABAP/4 Development workbench tool to create and design Screens and it’s Flow Logic.

6. Where do you design or edit screen layout?
(A) Full Screen Editor, a toll of Screen Painter is used.

7. What are different modes of Full Screen Editor?
(A) The full screen editor works in two modes: Graphical Mode and Alphanumeric Mode.

In Graphical Mode, you use drag and drop interface ,you use your keyboard and menus.

Graphical Mode is available only on MS Windows 95, MS Windows NT, and Unix/Motif platforms. Alphanumeric Mode is available on all platforms. This documentation describes how to use screen painter in graphical mode.

8. Do you have any tool other than Screen Painter to create screens?
(A) Yes. It is Object Browser a Development tool of ABAP/4 Development Workbench.

9. What are the components of a screen?
(A) Screen attributes :Describe a screen object to the SAP System.
Field Attributes :Correspond to screen elements. Fields are defined in the ABAP/4
Dictionary or in your program.
Screen Layout :Contains an arrangement of screen elements.
Flow Logic :Controls the flow of your program.

10. What is screen size and Explain?
(A) Screen’s size is measured in lines and columns beginning at the upper-left corner. The default screen size is 21 lines by 83 columns. The maximum size of a screen is 200 lines by 240 columns.
11.What is Flow Logic?
(A) Flow logic is code written under PBO & PAI event keywords to process a particular screen.

12. What does the flow logic code consists?
(A) The flow logic consists of statements that are syntactically similar to those in the ABAP/4 programming language. This flow logic does not use the ABAP/4 programming language and the ABAP/4 Editor tool, but a special statement set.

13. Where do you edit the Flow logic?
(A) You define the flow logic in the flow logic editor of the Screen Painter.

14. What is Flow logic Editor?
(A) The flow logic editor is a screen painter tool, having a subset of the functionality provided with the ABAP/4 Editor.

15. What are the Events you use in flow logic?
(A) PBO (Process Before Output) is an Event Keyword which is fired before displaying the screen. PAI(Process After Input) is an Event Keyword which is fired after user input to the screen.

16. What is PBO flow logic and PAI flow logic? Explain.
(A) PBO event keyword along with it’s called module an PAI event keyword along with it’s called module are called PBO flow logic and PAI flow logic respectively.

17. What is Dynpro?
(A) The collection of PBO flow logic, screen, and PAI flow logic is called “Dynamic Program”(Dynpro).

18. What is Processing logic?
(A) Processing logic is the ABAP/4 code written in the modules called by PBO & PAI.

19. What is Dialog session?
(A) Execution of a dynpro chain.

20. How do you write field data to the screen using WRITE statement?
(A) We can’t write field data to the screen using WRITE.

21. How do you transfer field data from ABAP/4 module to the screen and vice versa?
(A) The system transfers data by comparing screen field names with ABAP/4 variable names. If both names are the same, it transfers screen field values to ABAP/4 program fields and vice versa.

22. How user’s request is performed?
(A) In a transaction, the user makes requests by selecting screen pushbuttons, menu functions, function keys, toolbar pushbuttons, icons or the ENTER key.

23. What data is passed to the program?
(A) When user request is performed, the system triggers the PROCESS AFTER INPUT event. The data passed includes field screen data entered by the user and a function code.

24. What is Function Code?
(A) Function code is a technical name that has been allocated in the Screen Painter or Menu Painter to a menu entry, a pushbutton, the ENTER key of a screen.

25. How does the value of Function code is determined?
(A) An internal work field ‘OK_CODE’ in the PAI module evaluates the Function code, and screen flow logic passes this value to ABAP/4 program, so that appropriate action is taken.

26. What is OK_CODE?
(A) OK_CODE is a specially designated internal field with data type ‘OK’ the system copies the Function code name into this field.
This field is global in the ABAP/4 Module Pool.

27. How OK_CODE is defined in the Module program?
(A) The program declaration for an OK_CODE is four characters long.

28. Which system variable holds the value of Function Code?
(A) The function code currently active in a program can also be ascertained from the SY-UCOMM variable.

29. What are the screen elements or window elements that can be assigned by a Function code?
(A) In the Screen Painter :Screen Push Buttons
In the Menu Painter :Menu functions
Function keys
Tool-bar pushbuttons and icons
The ENTER key

30.How do you assign function code to a screen pushbutton?
(A) You can assign a function code, for a pushbutton field, by setting the Function code attribute for that pushbutton.

31. How do you assign function code to screen elements in the Menu Painter?
(A) The GUI status defines the screen elements & function codes.

32. What is GUI status & GUI Title?
(A) GUI status is a set of dynpro elements needed for the transaction at a given time.
GUI title is the title bar text that appears at the top of a windows session.

33. Where do you Define GUI Status and GUI Title bar?
(A) In the Menu Painter.

34. How do you assign GUI Status or GUI Title bar to a screen?
(A) The GUI Status or GUI Title bar for a screen is assigned to the screen by ‘SET’ Keyword in the PBO Event.

35. Is it to possible to assign a GUI Status to several screens?
(A) Yes.

36. If Yes. Why?
(A) It is possible because screens and user interfaces are independent tools of Work Bench.

37. What happens if you set no GUI Status for a screen?
(A) If you do not set a GUI Status for a screen, the system displays that screen with the same GUI elements that were already set for the previous screen.
If the transaction does not have a previous screen, or if you have not set any GUI status yet, the screen will be issued without a user interface.

38. What is User Interface?
(A) Technical features and functions available to the user to exchange information with the computer system.

39. What is GUI status?
(A) Main element of the graphical user interface.

A GUI Status can consist of the following objects:
A menu bar with menus
A standard tool bar
An application tool bar
Functions and function key settings

40. Is it possible to use a part of already defined GUI Status. How?
(A) Yes. The system offers you an additional keyword to deactivate specific menu functions in a GUI-status. The format of this statement is:

SET PF-STATUS GUI status EXCLUDING .

41. Why is CLEAR OK_CODE?
(A) CLEAR OK_CODE is required to delete the contents of the field OK_CODE to avoid any unwanted function selection, after processing the function code.

42. How does the deactivated screen elements are displayed?
(A) Deactivated pushbuttons do not appear at all. Deactivated menu function appear (as do function key assignments in the list displayed with the right mouse button), but only in grayed-out form. If the user selects them, nothing happens.

4.TRANSACTIONS


1.What is a Transactions?
(A) It’s a program that conducts a dialog with the user or it’s a collection of screens and abap/4 routines, controlled and executed by a dialog processor. The dialog processor processes screen after screen thereby triggering the appropriate abap/4 processing of each screen.

2.What actually Handling Errors and Messages is?
(A) After entering the screen input the transaction checks the input’s validity before using it. This simplifies the field checking and these features include keywords for programming error-handing as well as dialog-processing runtime environment.

3.What is automatic field check?
(A) Field checks are performed automatically by the system, based on information stored in the ABAP/4 Dictionary.

4. What are FIELD and CHAIN Statements (in the flow logic language)?
(A) The FIELD and CHAIN flow logic statements let you program your own field checks.

5.What is a Dialog Module?
(A) A Dialog Module is a callable sequence of screens that does not belong to a particular transaction. Dialog modules have their own module pools, and can be called by any transaction. FIELD and CHAIN tell the system which fields you are checking, and whether the system should perform checks in the flow logic or call an ABAP/4 module. If errors are found, the system enters an error dialog with the user.

6. What is the MESSAGE statement (in ABAP/4)?
(A) The MESSAGE statement (in ABAP/4) lets you put out messages from an ABAP/4 program. An ABAP/4 program notifies the system of errors by putting out an error message or warning. In response, the system enters its error dialog with the user.

7. What is an error Dialog (performed by the system)?
Errors can be detected either by the system or by an ABAP/4 module. In either case, when an error is found, the system automatically re-displays the screen an puts out a message.
Errors are most often field-specific. In the re-display, the field (or fields) causing the error is input-enabled. The system places the cursor in the error field, and requires the user to re-enter the input. The field checks are then repeated.

Controlling the Screen Flow

SET SCREEN statement merely specifies the next screen: it does not interrupt processing of the current screen. If you want to branch to the next screen without finishing the current one, use LEAVE SCREEN.
The System field SY-DYNNR always contains the number of the current screen.

8. What is CALL SCREEN statement?
(A) The CALL SCREEN statement lets you insert such a sequence into the current one. The syntax for calling up a new screen sequence is CALL SCREEN . There fore CALL SCREEN can be as “stacking” a sequence, since the statement actually suspends the current sequence and starts a new one. The system continues with the new attribute. The user can neither see the field nor enter values into it.

9. What is Processing Screens in Background?
(A) We can suppress entire screens using SUPPRESS DIALOG. This command allows us to perform screen processing “in the background”. The system carries out all PBO and PAI logic, but does not display the screen to the user. Suppressing screens is useful when we are branching to list-mode from a transaction dialog step.

Setting Screen Field Attributes

Every screen field has attributes that you set in the Screen Painter when you define the screen. At runtime, you may want to change these attributes. Depending on what functions the user has requested in the previous screen. At runtime, attributes for each screen field are stored in a memory table called SCREEN. You do not need to declare this table in your program. The system maintains the table for you internally and updates it with every screen change.
To activate a field attribute, set its value to 1. To deactivate it, set it to 0. When you set the ACTIVE attribute to 0. The system suppresses the field and turns off the ready for input.

Using Tables in a Screen

10. What are the two mechanisms for displaying and using table data in a screen?
(A) ABAP/4 offers two mechanisms for displaying and using table data in screen. These mechanisms are Table Controls and Step Loops. Table Controls and Step Loops are types of screen tables you can add to a screen in the Screen Painter.

11. What are Table Controls and Step Loops?
(A) Table controls and Step Loops are objects for screen table display that you add to a screen in the Screen Painter. From a programming standpoint, Table Controls and Step Loops are almost exactly the same. Table Controls are simply enhanced Step Loops that display data with the Look and Feel of table widget in a desktop application. With Table Controls, the user can:
Scroll through the table vertically and horizontally
Re-size the width of column
Scroll within a field (when field contents are wider than the field)
Select table rows or columns
Re-order the sequence of columns
Save the current display settings for future use

One feature of Step Loops is that their table rows can span more than one line on the screen (Table control rows are scrollable).

In general, many of the features provided by the Table Control are handled locally by your system’s SAPGUI front-end. You don’t have to program any of these features (except vertical scrolling) in your ABAP/4 transaction.
12. What the Loop Statement Does?
(A) The LOOP statement is responsible for getting screen table values between the screen and the ABAP/4 program. There fore we code a LOOP statement in both the PBO and PAI events for every table in our screen. So an empty LOOP….ENDLOOP must be there.

Using the LOOP Statement

13. What are the Dynpro Keywords used between a LOOP and its ENDLOOP?
(A) Between a LOOP and its ENDLOOP, you can user the FIELD, MODULE, SELECT, VALUES and CHAIN dynpro keywords. Most often, you use the MODULE statement to call an ABAP/4 module.

You must code a LOOP statement in both the PBO and PAI events for each table in your
screen.

Static and Dynamic Step Loops

Step Loops fall into two classes: Static and Dynamic. Static Step Loops have a fixed size that cannot be changed at runtime. Dynamic Step Loops are variable in size. If the user re-sizes the window, the system automatically increases or decreases the number of Step Loop block displayed. In any given screen, you can define any number of static Step Loops, but only a single dynamic one.
You specify the class for a Step Loop in the Screen Painter. Each loop in a screen has the attributes loop type (fixed = static, variable = dynamic) and loop count. If a loop is fixed, the loop count tells the number of loop-blocks displayed for the loop. This number can never change.
Programming with static and dynamic Step Loops is essentially the same. You can use both the LOOP and LOOP AT statements for both types.





5 . SAPSCRIPT

1. What is sap script ?.
A : The text editor supplied with the R/3 system for creating and editing documentation is called sap script.

2. What is the path of layout set?
A: Tools---word processing---layout set or transaction code is SE 71.

3. What is the length of the layout set name ?
A: It is 16 characters and must begin with a letter.
4 : What is the layout set?
A : In sap script layout set describes the layout of the individual print pages and uses text elements to supply definable out put blocks that a print program can call. The general application layout sets are Orders, Order acknowledgements, Invoices, Urging letters.

5.what are the elements of layout sets?
• Header data.
• Paragraphs.
• Character Strings.
• Windows.
• Pages.
• Page Windows.
• Text Elements.

Header data: This is general information about layout set. Such as user ID of the person who created it, a short text about layout set and global control data.

Paragraphs: These are real layout elements in sap script. Every text entered in the editor consists of various paragraphs.

Character String: These are layout elements relevant for a section of text with in a Paragraph. They are inserted in the continuous text.

Windows: These are logical units, which do not have a physical position on the Page, and they have a name, which reflects the purpose of the text to be displayed in the Window.

Pages: One or more pages that are to appear in the layout set are defined here. The user determines the page sequence by specifying the next page of the layout set in the header data.

Page windows: A page window is defined by specifying the position and Size of the layout set window on a layout set page. A page window describes position of the window on a specific page of the layout set and before the area in which the text can be out put in the layout set.

Text elements: sap Script calls the individual text components of a layout set text elements. To achieve good structuring and readability, u assign a fixed name to each text elements in the layout set. The print program then uses these names to access the elements. The text elements are related to window, that is, a print program can call for each window only those text elements that exist in this Window.

6. How many window types are there in layout set?
A. Three, they are
1) Constant - same contents and size on all layout set pages.
2) Variable - windows are processed again for each page.
3) Main - controls page break. It contains text body that may cover several pages.

17.what is the text header in layout set?
A. The text header is a structure. It contains administrative information such as
- Title of the text module
- Creation data (date, time, creator)
- Change information (date, time, user who made last change)
- Allocated style and / or allocated layout set
- Text format

18. What are the activate text elements?
Set, Append, Delete.
Set replaces all active text elements of the window by the current one (default)
Append: It appends the current text elements to the active text elements.
Delete it deletes the current text element from the list of active text elements.
Note: Active text elements are all text elements the system already outputs to the window when the current page is called.
19. What are the output areas in the main window?
Ans.: Top Area. Bottom Area. Body.
20. What are the include texts in SAP script?
Ans: To include the contents of one text into another we use the statement include to specify.
The text to be included, you must enter the text name with the INCLUDE statement.
21. What is a layout set name?
Ans.
Layout set name is the name assigned by the user who created it.
22. How many types of symbols are there in SAP script ?
Ans : There are four(4) types of symbols in SAP script and they are
a) System symbols b) Standard symbols. C) Program Symbols d) Text symbols.
23. System symbols: These can be used in all kinds of text. The names of the system symbols are fixed. EX : Current date, Current Month, current time etc.
24. What are Standard Symbols.
Ans : These are defined in the TTDTG table. This table contains both the names of each symbol and its value. This table is delivered complete with standard entries with customer specific symbols.
25. What are the program symbols?
Ans. The name of a program symbol consists of the table name and the field name separated by a hyphen. Symbols that obtain their values from this kind of data area are called program symbols. The value of a program symbol is limited up to a maximum of 225 characters.
26. What are the texts symbols?
All symbols, which do not correspond to one of the three types of symbol described above, are text symbols. You define the value of a text symbol yourself in the text module.
27. What is the STYLE for formatting out put ?
The output formats of sap script texts are controlled by character and paragraph format.
All output formats you may use for a certain text are combined in a style.
28. What are the STYLE Elements?
STYLE Elements are three, those are
a) HEADER DATA :- In the header data you can find a short description of the style and a default paragraph.
b) Paragraph formats and attributes(Paragraph formats control the formatting of paragraphs in sap script.
c) Character formats and attributes.(Character formats are used for text formatting within paragraphs.
29. What are the processing options in style.
STYLE maintenance three processing options are
a) Create/change 2) Display 3) Catalog(Searching).
30. How you can call layout set to the ABAP/4 program?
a) Open _ form b) Write _ form c) Close _ form.
31. What are the alignments of tabs in paragraph formats?
You can define as many tab positions as you require for each paragraph format, the text can be aligned in different ways. Left, Right, Center, Sign and Decimal.
32) What are the measurement units to define a tab position?
a) CH Characters. b) CM Centimeter. C) MM Millimeter d) PT Pointer e) TW (Twips1/20point).
33) How to attach the logo into your layout set?
First you create the bitmap file, then it converts into TIFF file and then run the executable file RSTXLDMC.
34) TIFF -- Tagged Image File Format.
ITF -- Interchange Text Format.
RTF -- Rich Text Format.
ASCII – American Standard Code for Information Interchange
JPEG – Joint Photographic Experts Group.
MPEG – Movie
GIF -- Graphic Interchange Format.


6 . BATCH DATA COMMUNICATION.


1) What is a Batch Input. OR Batch Data Communication?
The SAP System offers tow primary methods for transferring data into the System from other SAP Systems and non-SAP Systems. These two methods are collectively called
‘Batch Input’ or Batch Data Communication’.
2) What are the advantages of Batch Input technique for transferring data?
a) No manual interaction is required during data transfer. If the data to be transferred is already available in electronic form (on a tape, for example), then you can enter the data automatically into the SAP System using batch input.
b) B) Batch input ensures data integrity.—Batch input enters data into the SAP System using the same transactions that interactive users do. Batch input data is therefore submitted to all of the checks and controls that apply to data entered by normal interactive means.
3) What are the batch input processing methods?
a) ABAP/4 CALL DIALOG.
b) ABAP/4 CALL TRANSACTION USING statement to run an SAP transaction.
c) Classical Batch Reporting(input).
4) What are the typical uses of Batch Input ?
a) Transferring data from another system when you install your SAP System.
b) Regularly transferring data that is captured by a non-SAP System in your company into the SAP System.
5) What are the steps followed for transferring data with Batch input.?
Data Analysis.
Generate SAP Structures.
Develop transfer program.
Create sequential File.
Create Batch Input Program.
Process Batch input data.
Analysis Result.
Analysis Error Session.
6) How do you generate SAP data structure ?
Choose Tools –-> ABAP/4 workbench and then ABAP/4 Dictionary.
In the ABAP/4 Dictionary, select Environment- Generate table description.
7) What are the data type/format of legacy data to be transferred ?
The data must be character format..
No piece of data may be longer then its target SAP field.
If the data is shorter then the target field, you must left-justify it within the SAP field(pat it with blanks at he right end).
8) What is the purpose of Batch Input Program?
Read data in, often from a sequential file that has been exported from another system or prepared by a data transfer program.
If necessary, perform data conversations or error- checking.
Prepare the data for batch input processing by storing the date id the batch input data structure, BDCDATA.
Generate a batch input session for classical batch input, or process the data directly with
CALL TRANSACTION METHOD.
9) What is the BDCDATA structure ?
BDCDATA structure is the batch input structure stores the data that is to be entered into SAP System and the actions that are necessary to process the data. The batch input structure is used by all of the batch input methods. You can use the same structure for all types of batch input, regardless of whatever you are creating a session in the batch input queue or using CALL TRANSACTION USING or CALL DIALOG.
10) How do you declare BDCDATA structure ?
DATA : Begin of


Occurs
Include structure bdcdata
DATA : End of .
11) Explain in detail about fields of a BDCDATA structure?
DYNAPRO – Number of the screen. Length(4). Set this field only in the first record for the screen.
DYNABEGIN – Indicates the first record for the screen. Length (1). Set this field to x only in the first record for the screen (Reset to ‘(blank) for all other records.
PROGRAM – Name of the program. Length (8). The PROGRAM field is not case sensitive. Set this field only in the first record for the screen.

FNAM – Name of a field in the screen. Length (35). The FNAM field is not case sensitive.
FVAL – Value for the field named in FNAM. Length(80). The FVAL field is case sensitive. Values assigned to this field are always padded on the right if they are less than 80 characters. Values must be in character format.
12) Describe BDCDATA structure fields?
Description of BDCDATA Structure.




FIELD NAME TYPE LENGTH DESCRIPTION

PROGRAM CHAR 8 BDC Module pool
DYNPRO NUMC 4 BDC Dynpro number
DYNBEGIN CHAR 1 BDC Starting a dynpro
FNAM CHAR 35 BDC Field Name
FVAL CHAR 80 BDC Field Value

13) How do you create a Batch Input Session?
To create a session, program the following procedure using the following BDC_ function modules:
a) Open the batch-input session using function module BDC_OPEN_GROUP.
b) For each transaction in the session,
Fill the BDCDATA structure with values for all screens and fields that must be processed in the transaction. (For more info, please see using Batch Input Data structure)
Transfer the transaction to the session with BDC_INSERT.
c) Close the batch input session with BDC_CLOSE_GROUP.
14) Explain role of parameters of BDC_OPEN_GROUP function module?
CLIENT - Client in which the session is to be processed default If you don’t provide a value for this parameter, the default is the client under which the batch input program runs when the session is created.
GROUP - Name of the session that is to be treated. May be up to 12 characters long. Default: none . You must specify a session name.
HOLDDATE – Lock date. The session is locked and may not be processed until after the date that you specify. Only a system administrator with the LOCK authorization for the authorization object Batch Input Authorization can unlock and run a session before this date.

Format YYYYMMDD (8 digits)
Default : No lock date, session can be processed immediately. A lock date is optional.
KEEP – Retain session after successful processing. Set this option to the value X to have a session kept after it has been successfully processed. A session that is kept remains in the input/output queue until an administrator deletes it. Sessions that contain errors in transactions are kept even if KEEP is not set.
Default : if not set, then sessions that are successfully processed are deleted. Only the batch input log is kept.
USER – Authorizations user for background processing. This is the user name that is used for checking authorizations if a session is started in background processing. The user must be authorized for all of the transactions and functions that are to be executed in a session. Otherwise, transactions will be terminated with “no authorizations” errors.
The user can be of type dialog or ------ dialog users are normal interactive users in the SAP system. Background users are user master records that are specially defined for providing authorizations for background processing jobs.
15) What are the parameters of BDC_OPEN_GROUP function module?
CALL FUNCTION ‘BDC_OPEN_GROUP
EXPORTING
CLIENT =
GROUP =
HOLD DATE =
KEEP =
USER =

EXCEPTIONS RUNNING
QUEUE ERROR = 1
CLIENT INVALID = 2
GROUP_INVALID = 3

16) What are the parameters of BDC_INSERT function module.
CALL FUNCTION ‘BDC_INSERT
EXPORTING
TCODE =
POST_LOCAL =
PRINTING =
-------------------------------------------------------------------------------------------
TABLES DYNPROTAB =
---------------------------------------------------------------------------------------------
EXCEPTIONS RUNNING
INTERNAL_ERROR = 1
NOT_OPEN = 2
QUEUE_ERROR = 3
17)Explain role of parameters of BDC_INSERT function module?

BDC_INSERT takes the following parameters:
* TCODE – The code of the transaction that is to be run.
TCODE is an EXPORTING parameter in the function module.
• POST_LOCAL – parameter to update data locally. If POST_LOCAL = ‘X’, data will be updated locally.
• DYNPROTAB – The BDCDATA structure that contains the data that is to be processed by the transaction. DYNPROTAB is a tables parameter in the function module.
18) How do you process the Batch Input Session.?
Session processing can be started in two ways.
• An on-line user can start the session using the batch input menu options. (To access the batch input options, choose system  Services Batch input)
• You can submit the background job RSBDCSUB to start a session in background processing. If several sessions have the same name RSBDCSUB starts them all.
19) What are the parameters of BDC_CLOSE_GROUP function module?
CALL FUNCTION ‘BDC_CLOSE_GROUP’
EXCEPTIONS
NOT_OPEN = 1
QUEUE_ERROR = 2

BDC_CLOSE_GROUP needs no parameters. It automatically closes the session that is currently open in your program.

20) Explain the batch input data transfer by CALL TRANSACTION USING?
CALL TRANSACTION
USING
MODE
UPDATE



A Display all
E Display only Error
N No display.



S Continue processing when update is completed (Synchronous )
A Continue processing immediately
L Local update

21) Explain the batch input data transfer by CALL DIALOG?
CALL DIALOG
USING
MODE
22) What is the Message parameter of CALL TRANSACTION USING?
This is used with CALL TRANSACTION USING statement - MESSAGES INTO MESSTAB – and indicates all system messages issued during a CALL TRANSACTION USING are written into the table . The internal table must have the structure BDCMSGCOLL.

23) What is a batch input Session?
A batch-input session is a collection of transaction data for one or more transactions.

24) How do you execute a function for data transfer by batch input?
You can execute a function in a transaction by entering the function code or function key number in the command field of an SAP session. You see the FNAM and FVAl fields to enter this information ,just as you would for normal screen fields.
The command field is identified by a special name in batch input BDC_OKCODE. This name is constant and always identifies the command field.
This sample record would execute the save function. It uses the function key assignment of save, which is F11. A function key number must be prefixed with the /(slash).

BDCDATA-FNAM = ‘BDC_OKCODE’.
BDCDATA-FVAL = ‘/11’.

This sample record also executes save, but uses the function code instead of the function key assignment. All functions , whether they are displayed in menus or as buttons, are identified by function codes. A function code must be prefixed with the = character.

BDCDATA-FNAM = ‘BDC_OKCODE’.
BDCDATA-FNAM = ‘UPDA’.

25 ) How do you enter a value in loop fields of batch input?
Some screen fields need multiple values, one on each line. To provide input to one of these loop fields, you must use an explicit line index:

BDCDATA-FNAM = ‘fieldx (5)’.
BDCDATA-FVAL = ‘value’.
The line index (in the example :(5), line 5) indicates in which loop line on the screen values are to appear.


26)how do you position the cursor for data transfer by batch input?
To position the cursor on a particular field , you must use the special cursor field.

BDCDATA-FNAM = ‘BDC_CURSOR’.
BDCDATA-FVAL = ‘fieldx’.

To position the cursor on a loop field, you must use again in an index.

27) What is Direct Input?
To enhance the batch input procedure the system offers the direct input technique especially for transferring large amounts of data. In contrast to batch input , this technique does not create sessions, but stores the data directly. It does not process screens. To enter the data into the corresponding database tables directly, the system calls a number of function modules that execute any necessary checks. In case of errors, the direct input technique provides a restart mechanism. However, to be able to activate the restart mechanism, direct input programs must be executed in the background only. To maintain and start these programs, use program RBMVSHOW or the transaction BMVO.

28) Give some direct input program with their application?
Examples for direct input programs are:
Program application

RFBIBlOO FI
RMDATIND MM
RVAFSSOO SD
RAALTD11 AM
RKEVEXTO CO-PA

29) What are the Recording features?
The recording function offers the following features:
• Recording transaction runs,
• Creating batch input sessions from the recorded transaction run,
• Generating a batch input program from the recorded data.

30) What are the Special recording features?
The following data is not recorded:

• F1,F4 and customer –related F1and F4 functions,
• All functions of the menus system and help,
• Values of the standard variant,
• Error dialogs and warning dialogs,
• Scrolling via the scrollbar (use F21 to F24 instead)
• COMMIT WORK indicates the successful end of the transaction and thus of the recording.
• LEAVE TO TRANSACTION can not be processed in batch input and therefore ends the recording.
31) Explain about recording features?
RECORDING TRANSACTION RUNS

A batch input recording consists of a sequence of transactions with the screens processed. A screen (program name, screen name) contains the modified fields (field name, field value), the executed user command (BDC_OKCODE) and the cursor position (BDC_CURSOR).
To start the recording function , go to the batch input initial screen and choose record or directly call transaction SHDB.

To create a recording , specify the recording name and choose Create. In the subsequent dialog box , enter the name of the transaction you want to record. Then execute the transaction and enter the required values in the screen fields.
After the end of the transaction , the system displays the processed screens(module pool, screen number) the changed fields (field name, field value) the executed commands(BDC_OKCODE)
And the cursor position (BDC_CURSOR) in a hierarchical list.
Choose copy transaction to copy the executed transaction run into the recording .choose next transaction if you want to record another transaction run with a different transaction.
After recording all desired transactions ,save the recording.

CREATE BATCH INPUT SESSIONS FROM THE RECORDED TRANSACTION RUN

From within the recording overview , choose create session to create a batch input session with the data of the recorded transaction. You can then process this session as usual.

GENERATE A BATCH INPUT PROGRAM FROM THE RECODED DATA

Apart from creating a session , you can also generate an ABAP/4 batch input program from within the recording overview. In this case select the desired recording and specify the name of the program you want to generate. Then maintain the program attributes and the entry in the object list.
The generated program contains the entire coding required to create a batch input session.
Thus you can leave out the transaction execution and the determination of the module pool name, the screen numbers, the field names , and the function codes.


7 . ALE-EDI

In a modern company, the flows of logistics and information between the various organizational units are likely to be sizable and complex.
ALE (Application Link Enabling) supports the construction and operation of distributed applications. ALE handles the exchange of business data messages across loosely coupled SAP applications, ensuring that data is consistent. Applications are integrated by using synchronous and asynchronous communication, rather then by means of a central database.
ALE comprises three layers :
• Applications.
• Distribution
• Communication.

In order to meet the requirements of today’s customers and to be open for future developments, ALE must meet the following challenges:

• Communication between different software releases.
• Continued data exchange after a release upgrade without special maintenance.
• Independence of the technical format of a message form its contents.
• Extensions that can be made easily, even by customers.
• Applications that are decoupled from the communication.
• Communications interfaces that allow connections to third-party applications.
• Support for R/3-R/2 scenarios.

ALE – The Concept.
The basic principle behind ALE is the guarantee of a distributed, yet fully integrated, R/3 System installation. Each application is self-sufficient and exists in the distributed environment with its own set of data.
The use of self-sufficient systems implies a certain measure of data redundancy. Therefore data has to be both distributed and synchronized across the entire system communication is performed asynchronously.
ALE and the R/3 Procedure Model.
If ALE is to be supported in an R/3 System installation, implementation of the R/3 procedure model is affected at four points.
• deciding on functions and processes.
• Specifying global settings.
• Modeling company structure.
• Modeling the basic data and the master data.

ORGANIZATION AND CONCEPTION:
In the ALE environment functions and processes are defined on a cross-system basis. SAP supplies the “Organizational Architect” PC tool for Modeling. You can use this tool for modeling the processes distributed as part of the application scenarios.
The message types exchanged between the systems are described in the customer distribution model.
MESSAGE TYPE
The messages exchanged between systems are of various message types. The message type depends on the data contained and the process involved. It determines the technical structure of the message, the IDoc type. For example, the ORDERS message type is used for purchase order messages. The message type describes the contents of the IDoc (such as order, delivery, material master).

Customer Distribution Model:

The customer stores the exact distribution of functions across his various systems in the customer distribution model. The logical systems and messages flows are specified here, possibly based on defined listings.

Detailing And Realization:

When defining organizational units like company codes and plants in the R/3 System, it is important to note that these have to be unique worldwide, With “Organizational Architect” PC tool you can graphically depict organizational units and the relationships between them.
After the master data has been defined, the associated ALE message types have to be created. The ALE SMD Tool is used for this.
Once the message types that SAP supplies in the standard delivery and that the customer creates for his master data has been created, the model maintenance for the master data and the transaction data is complete.
To ensure successful exchange of messages between systems, control data referenced in the message (eg. Plant, terms of payment) has to exist in both systems. There is an ALE tool that determines the control data to be modified for the master data and the transaction data from the customer distribution model.
After the control data has been modeled, it must be created. In other words, the plants, terms of payment , etc. have to be created.

Modeling

Before a distributed & integrated system can be implemented in a company, a logical ( although not necessarily physical) model of the entire system has to be constructed. The customer uses this configuration to specify which applications should run on which systems and how the various applications should exchange data.
The logical system needs to be modeled as if it were a single SAP instance. The applications are distributed across the physically separate systems afterwards .Most organizational units (Plant, sales organization, etc.) have to be given unique names. For example , ‘Plant 0001’ always refers to the same plant in every system. The only exceptions are company codes and business areas.

The permanent exchange of data between the decontrol applications ensure that they work correctly. The data that is communicated is as follows:

- Control data

- The control data includes all objects that describe how the system is organized. These include Customizing data like company codes, languages, purchasing organizations, plants and user maintenance.

- Refer to the “Distribution Scenarios” section of the ALE Implementation Guide( IMG) for details about the control data required for each of the scenarios.

- The customer details his/her specific distribution requirements in the customer distribution model.

- Master data.
- Distribution scenarios for master data are contained in the reference model. Rather than distributing the entire master data information, views can be distributed(for example, sales views on the material master).
- By configuring the views, the customer can select the master data fields to be distributed.
MESSAGE EXCHANGE BETWEEN DISTRIBUTED SYSTEMS.
- The foundation for data exchange is the IDOCs, as already used in the EDI interface.
An IDOC is a data container for data exchange between two SAP system or between a SAP system and a non-SAP system. IDOCs have a neutral data structure. External systems can use IDOCs as a standard interface for data transfer.

IDOC STRUCTURE .
An idoc consists of a header, various consecutive data segments and some status records.
An Idoc can contain character fields only.
The function of the individual elements of an Idoc are as follows. The contents, the structure, the sender and the recipient of the Idoc are (amongst other things) defined in the Idoc header. The current status is also given here.
Each data segment contains a standard lead text consisting of a sequential segment number and a description of the segment type, and a 1000 byte long string field that contains the actual data of the segment.
The status records show the history of the processing steps applied to the Idoc so far.
The message type describes the contents of the Idoc (such as order, delivery, material master)
The Idoc type describes the technical structure of the Idoc.
The message type remains constant for each release, whereas the Idoc type(in other words, the technical structure) can change from release to release. However compatibility must be retained. The structure of the Idoc is stored in the SAP system, partly in the data dictionary and partly in special tables. The structure definition covers the following.
The segment sequence. Hierarchical relationships between segments are possible. The number of times a segment can occur is specified for each segment, as is whether the segment is a mandatory segment or an optional segment.
The fields contained in a segment.
In the example shown above the Idoc contains a header segment that has to be the first segment of the message. Thereafter there must be at least one additional item. The following conditions apply
- Each item must be followed by at least one sub-item and at most 99.
- Up to 9999 text segments can appear after an item’s sub-items(optional).
- The last segment in a message must be an accumulation segment(ACCUM).
DATA DISTRIBUTION
If an application has been configured to send data to another system, it will create a master Idoc containing this data when the relevant event occurs. The Idoc is passed to the ALE layer where it is formatted for dispatch and then sent.
In a successful transmission the Idoc is read in the target system where it causes the input processing to be started. The exact processing applied to the data before it is passed to the application depends on the system settings. It may either be fully automatic or contain manual steps as well.
Although the output processing and input processing can be performed for each Idoc separately, it is also possible to bundle several Idocs into a packet and to process them all in one step(mass processing).
COMMUNICATION.
The communication between the distributed systems it performed asynchronously using Idocs. The data can be forwarded either immediately after it has been received in the application or as a batch job.
Using a batch job to dispatch data loads the system much less than immediately dispatching every Idoc.
Asynchronous communication means that the application does not have to wait for a response from the target system. If, for example, the connection happens to be down at the time of dispatch, the communication layer takes care of the subsequent transmission.
The only synchronous activity is querying information. Data is not distributed with update processes. Synchronous requests are performed by directly calling a function in the target system. This data is not sent using Idocs.

ALE Versus EDI.
Since the ALE concept is a layer on top of the Idoc interface, it makes no difference to applications whether EDI or ALE scenarios are to be used for data communication. An application recognizes if data needs to be sent and will create a master idoc. The route used to communicate this Idoc depends on the settings in the output processing.

Differences between ALE and EDI are:
From the business user’s point of view, EDI supports the exchange of messages between different companies, whereas ALE is designed more for the exchange of information between separate units within a single company.
Transmission with ALE occurs directly when Remote Function Call(RFC) calls a function module in the remote system.
In the case of EDI there is an intermediate EDI sub-system that takes care of the transmission between the sending and receiving systems.
SUMMARY :
State-of-art communication technology and the client/server architecture have made the distribution of standard software technically possible.
Asynchronous exchange of data with a measure of data redundancy is the best solution utilizing today’s technology.
The goal of ALE is to enable data exchange between R/3-R/3, R/2-R/3 and R/3-non-SAP systems.
Control data, master data and transaction data is transmitted.
ALE also supports release upgrades and customer modifications.
ALE allows a wide range of customer-specific field choices in the communication.
ALE and EDI complement each other.

DEFINITIONS

Function Type

A function type defines a self-contained process in an application. An example of this is the posting for a movement of goods in inventory management i.e. evaluate stock change, perform stock change.
Distributable Function Type
A collection of function types which may be grouped together because of the related use of the various function types, and which may be seen as being distinct from other function types. E g, inventory management and inventory controlling.
Filter Object Type
A filter object type is a selection criterion in the distribution reference model that specifies the criteria which determine whether a function type can be used several times in a distributed system. E g, Plant, Division, Material.
Distribution Scenarios
Two types 1. Control Data Distribution 2. Master Data Distribution
Error Handling
Error handling is defined for every distribution scenario in Idoc processing. If an Idoc cannot be posted, a workflow is started to manually process the Idoc ( information is sent to the person(s) responsible).
Serialization
If several Idoc are sent within a short period of time then “overtaking” can occur, so that later changes arrive sooner than changes that were actually made earlier. In order to avoid incorrect updates being made, a serialization mechanism must be used that can spot “overtaking” and report it. If “overtaking” occurs, a workflow is started to manually process the Idoc affected.
Workflow
A workflow is defined as a sequence of processing steps ( work item). There may be branching points within this sequence.
A workflow has a container. This holds the parameters used in the processing steps.
In order to terminate the processing steps of a workflow, an event is triggered. The parameters are passed from the terminate the processing steps of a workflow , an event is triggered. The parameters are passed from the current step to the workflow container.
The workflow manager checks which processing step should be called next. For Ex: if an IDoc read’ step is terminated and a parameter indicating an error is passed, a step will be started that initiates manual processing.
An error will also cause an event to be triggered If a function module has been called directly. However, in contrast to the situation with a workflow, it does not cause a workflow step to be terminated, but rather and error workflow is started.
ALE Audit
ALE Audit enables the sender system to monitor the processing status of dispatched Idocs in the receiver system. The receiver system periodically sends confirmations back to the sender system, which are logged in IDoc status records and in individual audit tables.
Status records generated from the confirmations contain the following values:
• 39- IDOCs in receiver system (ALE Service) and still being processed.
• 40- Application document processing not completed successfully in receiver system.
• 41- Application document processed in the receiver system. Processing completed.

Outbound Processing
In the output processing one of the function modules of the application creates an Idoc, the so called maser IDoc. This IDoc is sent to the ALE layer where the following processing steps are applied:
Receiver determination, if this ;has not already been done by the application.
Data selection.
Segment filtering
Field conversion.
Version change.
The resulting Idoc(It is possible that several Idoc could be created in the receiver determination) are referred to as communication Idocs and stored in the database. The dispatch control then decides which of these Idocs should be sent immediately. These are passed to the communications layer and are sent either using the transactional Remote Function Call(RFC) via file interfaces (e. g for EDI).
If an error occurs in the ALE layer, the Idoc containing the error is stored and a workflow is created. The ALE administrator can use this workflow to process the error.
Mass Processing of IDOCs----Mass processing refers to bundles of Idoc packets, which are dispatched and processed by the receiving R/3 system. Only one RFC call is needed to transfer several IDOCs . Performance is considerably better when transferring optimal packet sizes.
INBOUND PROCESSING

After an Idoc has been successfully transmitted to another system, inbound processing is carried out in the receiver system, involving the following steps in the ALE layer:
- Segment filtering
- Field conversion
- Data transfer to the application.

There are three different ways of processing an inbound Idoc.

A function module can be called directly(standard setting)
A workflow can be started.
A work item can be started.


EDI

Electronic Data Interchange of structured business data between different applications. In the following, this definition shall be restricted to data exchange between different corporations. Thus, EDI is separated from ALE, which was developed for data exchange between different application within the same company.

The EDI architecture consists of:
EDI-enabled applications of the original and target system.

They support the automatic processing of business transactions. In general, an application the original system sends a message to an application of the target system.

The Idoc interface

This was designed as an open interface. Therefore, the technical and administrative aspects can be separated form the application-specific aspects. The Idoc interface consists of IDoc types and function modules that from the interface to the application.


The EDI subsystem.


These converts the Idoc types into EDI message types and vice versa. This component of the EDI architecture Is not supplied by SAP.

In ALE scenarios, there are no EDI subsystems in the communication architecture . In this case, Idocs are transmitted via the Remote Function Call(RFC).

IDoc Types:
The main component of the IDoc interface is the IDoc type. The IDoc type is a SAP standard that determines the structure and format of data for electronic transmission.
• It is partner-independent
• It is Identical for inbound and outbound processing.
• It is dependent only on message types.
• It is independent of EDI standards.
• It is independent of subsets.

An IDoc type consists of the following three record types
Control Record = The control record is the same for all Idoc types. The field contents of the control record uniquely an IDoc I e, IDoc-ID, SENDER-ID, RECEVER-ID, IDoc, TYPE.
Data records = The data records consists of a key section and a data section or segments. The key section contains information that uniquely identifies a segment, for example, assignment to an IDoc, segment name, segment number, hierarchical level, etc. The field contents of the segment are the data from the SAP application(such as purchase order or order confirmation) The data records that contain the application data are different for each IDoc type.
Status Records = The status records keep track of the states an IDoc has passed through on its way from 1 application to your business partner and vice versa.

EDI Subsystem Requirements :
The IDoc interface manages all aspects of the conversion of application data into an IDoc (SAP Standard) and vice versa.
The technical aspects, that is, everything connected with EDI technology and EDI standards, are handled the EDI subsystem. Applications that are to be supported require the following functionality from the ED subsystem.
Functionality:
Mapping: The conversion of Idocs fields to data elements of the EDI messages is managed here.
Syntax check – The EDI subsystem is responsible for ensuring correct syntax of generated and received data.
Generation of standard specific envelops – The EDI subsystem formats the data for transmission. The data are sorted and provided with “envelopes” and “addresses” that ensure that the transmission conforms to defined standards.
Partner-specific processing and code conversion - The EDI subsystem supports partner dependent adaptations and code conversions that are necessary during the conversion of structures.
Interchange and Functional Acknowledgement – The EDI subsystem generates and sends functional Acknowledgments for received messages, and processes received functional acknowledgment and links them with the transmitted messages. Administration(monitoring) of Functional Acknowledgments is also performed by the EDI subsystem. The relevant information is passed to the IDoc interface via status records.
Retransmission : The EDI subsystem regulates the identical repetition of a complete interchange the selective repetition of specific EDI messages. The relevant if passed to the IDoc interface via status records.
Status check and reporting- EDI subsystem is responsible for checking the success or failure of a conversion and transmission of EDI messages, as well as of acknowledgments that are received.
Archiving – Archiving of the original EDI messages and interchanges files is handled by the EDI subsystem. In particular, the EDI subsystem must fulfill the legal requirements regarding security and retention periods, witch, differ from country to country.
Partner profile – The EDI subsystem manages all agreements regarding conversion and communication in partner profiles.
External communication : The EDI subsystem is responsible for the physical transmission of EDI messages.
Support of real time EDI.
File interchange - Files can either be exchanged via NFS(Network File System), or the EDI subsystem is installed on the same machine as the SAP System.

IDoc Processing
Data flow in outbound processing – IDoc are transferred from your SAP System to a receiving system,
From SAP document to IDoc.
Depending on the application module, out bound processing takes place under control of the application or of message control. When the application is in control, a document is converted into an IDoc and formatted for the IDoc interface via the ALE service(Application Link Enabling)
In both data flows, the Idocs are transferred in a standardized format. The following techniques are available for this transfer.
File interface.
Transactional RFC.
CPI-C to R/2 System.
Internet.
Message Control Concept.
The “message Control” module determines how documents are output in terms of number, type, type and medium.
In the purchasing system(MM) and the Sales and Distribution (SD) system, a Message Control record handles outbound messages. This log record is created under certain conditions; these are either specified by the respective application system from the master data, or can be set by Message Control.
Message control is a service program for other applications. Tables are used to determine which programs are responsible for formatting and dispatching messages. The conditions that trigger the sending of messages are often very complex and, in addition, depend on the individual customer situation. To formulate these conditions, Message control uses the condition technique. A hierarchy of condition components represents the condition technique.

Structure of Condition Components:

Scheme.
A set of messages (for example, RFQ messages, order messages) for which the conditions determining a dispatch are checked simultaneously. Message determination is always applied within a scheme. Which scheme is valid at which time is managed by the business applications.
• Output type(condition type)
The message for which a partner and an output medium must be determined and the contents defined(for example, BA)) order confirmation, AFOO request for quotation, AN00 quotation).
• Access sequence.
The search strategy that the system uses to determine valid default values for the given message. The search strategy specifies which application data are used to access one or more condition tables.
• Condition table.
This table contains the data condition for which message default( for example, dispatch of order confirmation via EDI) is triggered in cases where access was successful using the keys defined via the access sequence.

Message Determination Strategies. If a business application transfers a scheme to message control for message determination, all of the scheme’s output types are processed. Each output type in the scheme can be assigned a condition. The value of the system return code at the end of the condition determines whether or not condition tables will be accessed for this message. If the result is negative, processing in the scheme is continued.
In message determination for an output type, its access sequence is processed; that is, all condition tables of this access sequence are accessed sequentially.
Access to a condition table within an access sequence can have an exit criterion that determines whether message determination within the access sequence should end after the first successful access to a record for an output type(exclusive), or whether the search should continue(inclusive).

Sending data via the IDoc interface
In order to send messages via the IDoc interface, you must have already maintained the following areas:
• Connection of the Doc interface to an EDI subsystem
The port definition Here you describe the characteristics of the EDI subsystem that is connected to the SAP System. You specify the technical characteristics of the connection between the SAP System and the EDI subsystem in the port definition. The following port types are supported.

• Transactional RFC: IDoc s are exchanged with the partner system by means of transactional RFC s.
• R/2 System : Idocs are transferred in accordance with the CPI-C protocol of the R/2, Release 5.0 f EDI interface. Only outbound processing is supported.
• File interface : IDoc s are exchanged in a file. The two systems can “ shake hands” via RFC to set the time when responsibility for the data is transferred from one system to the other. For outbound messages, a function module can determine the file name.
For inbound messages and the status records, this means.
The EDI subsystem always transfers the name of the file to be processed to the IDoc interface.
Settings for these two processing procedures in the port only serve as default values. They are always overridden by the values currently transferred. To prevent loss from overwriting and duplication of data, use dynamic file names.

The partner profile.
In the partner profile for outbound messages, you define which documents you want to exchange as EDI messages with which business partner. If outbound processing is managed by message control, you then specify the outbound parameters as well as the message control parameters. If the outbound processing is controlled by the application, you then only specify the outbound parameters.
All other characteristics are specified directly in the partner profile. The partner profile is organized as follows:
• General partner profile.

You classify and activate the partner and specify a responsible person for dialog steps (such as exception handling).

• Parameters for Message Control

You only specify these parameters if you want to send messages from an application that uses Message Control (NAST). You enter the parameters with which NAST controls a dispatch via the IDoc interface. You use the process code to choose the application data and its retrieval as an IDoc. The NAST key fields are assigned to the key fields of the outbound parameter table.

• Outbound parameters

You always edit this area for outbound processing. You indicate which port (technical characteristics) should be used for transaction and specify the source structure, the IDoc type to be transferred, and the target structure (the EDI message type to be generated in the EDI subsystem).

• Inbound parameters

You always edit this area for inbound processing. You use the process code to assign an inbound processing method to the inbound IDoc specified by the partner and logical message.

Timing of IDoc Outbound Processing

There are three areas in which you can determine the timing of the electronic data exchange:

• In Message Control, using the dispatch time
• In the partner profile of the IDoc interface, using the output mode
• In the EDI subsystem

In Message Control , set the following times in the appropriate condition tables:
1 dispatch with the next selection runs
2 dispatch at specified time
3 explicit request
4 immediately

In the partner profile , specify which mode is to be used to process the Idocs:
1 A single IDoc is transferred and the EDI subsystem started.
2 A single IDoc is transferred and the EDI subsystem runs according to its schedule.
3 Several Idocs are transferred and the EDI subsystem started.
4 Several Idocs are transferred and the EDI subsystem runs according to its schedule.

For output modes 2 and 4, you must define a schedule for the EDI subsystem.

Error Handling

If and error occurs during processing of the outbound data, the responsible person is informed via Workflow Management. This also applies if an error occurs during the transfer of status records from the EDI subsystem.
If the status records are transferred successfully , but contain an error status, the responsible person is likewise informed via Workflow Management.
The IDoc interface takes the name of the person responsible for exceptional situations from the partner profile.

Data Flow in Inbound Processing

Your system receives an IDoc via a port determined by the sending system. That’s why you do not need to maintain the port definition in inbound data processing. It is only required that the IDoc interface “knows” the sending system. If your partner has an entry with the correct message type in your partner profile, the IDoc is “accepted” and found in the inbox. The data flow can proceed along the following paths towards the application:

• The direct path via a function module which transforms the Idoc data into the corresponding application document (release 3.0/3.1).
• The indirect path via the SAP business workflow(single step or multiple step task, release .30/3.1).
• The indirect path via a process of the process technology(starting with release 2.1/2.2).
Starting with release 3.0, only process types are supported which are already defined; no new definitions of process types can be made!

In order to receive messages via the IDoc interface, you must have already maintained the following areas:

• Connection of the IDoc interface to an EDI subsystem
• The partner profile for inbound messages
• Coupling to workflow , process or function module via the process code.

From IDoc to SAP Document

The EDI subsystem writes the data as an IDoc to an inbound file.
The EDI subsystem triggers the SAP System and transfers the dictionary and name of the file containing the data. The IDoc interface is activated. (program RSEINB00 is called.)this program starts by reading the control record of the first IDoc. Then it checks whether a partner profile exists for the partner specified as sender in the control record. After the control record is read , the data records of the IDoc are read and written to the SAP database. A process is then generated directly and transferred to Workflow Management.


WORKFLOW

WORKFLOW MANAGEMENT

Execution of a predefined workflow task at runtime.
A workflow consists of a sequence of work items, which are processed by human agents or mechanical processing units.
The time and logical sequence of work items (linked to the evaluation of conditions)is handled by the workflow manager and controlled flexibly by event-related response mechanisms.

Errors

Three types of error can occur.
a) if a technical error occurs while the document is being read from the inbound file, the process linked with process code EDII is generated. Documents that have been successfully processed up to this point are saved in the database. Processing can be restarted from the point where the error occurred. The error is logged and you can resume processing by starting program RSEINB00.
b) If an error occurs during the transfer of an IDoc up to the point where the process is generated(formal error), the process linked with process code EDII is generated and the document is saved in the database.
c) If a syntax error occurs, there are two options:

- you want an employee to check the IDoc, correct the error or decide the IDoc should be transferred to the application despite the syntax error. To do this, you must specify in the partner profile that syntax should be checked. The IDoc interface then generates an error process and sends a message to the employee responsible. The error process is linked with process code EDIY.
- You want the IDoc to be transferred to the application automatically regardless of syntax errors. To do this , deactivate the syntax check in the partner profile.

STATUS PROCESSING

The status records trace stations passed by the IDoc during processing, e.g. “created” or “ready for sending”. Thus, they provide important information for monitoring and statistics of the communication. Your partner can inform you about the processing status of an IDoc, which has arrived in his box. There are the following methods for this so-called status reporting
- if you communicate using an EDI subsystem, status records can be transferred to the IDoc interface via the file port.
- Status records can be collected and transferred as an IDoc itself.
Status processing begins when the status report informs about communication errors. For example, a workflow may be initiated in the course of which selected agents can react to the communication errors.
CONFIGURING COMMUNICATION VIA PORTS

By selecting the port type, you determine how your system is coupled with the external system. In general, the IDoc interface supports the following coupling types(port types):

File port: triggering
This topic describes the “triggering”. The technical coupling of the SAP system with EDI subsystem via the file interface.

Transactional RFC (ALE Scenario)- this requires that the target system (the “RFC destination”)is already known to your system.

CPI-C port
This port type provides the direct coupling of an R/3 with an R/2 system. In this scenario, no complementary software is used for communication and transferring Idocs.

Internet port
By attaching them to an e-mail, you can transfer Idocs using the internet. To that end, they are attached to a normal e-mail according to the MIME protocol.

CONFIGURING THE IDoc INTERFACE FOR EDI

To configure the IDoc interface for EDI involves the following points.
- Defining the port definition
- Defining the partner profile
- Defining the message default

Defining the port definition:

You specify the technical characteristics of the connection between the SAP system and the EDI subsystem in the port definition. The following poet types are supported.
- transactional RFC
Idocs are exchanged with the partner system by means of transactional RFCs.
- R/2 system
Idocs are transferred in accordance with the CPI-C protocol of the R/2, release 5.0F EDI interface. Only outbound processing is supported.
- file interface
Idocs are exchanged in a file. The two systems can “shake hands” via RFC to set the time when responsibility for the data is transferred from one system to the other. For outbound messages, the file name can be determined by a function module.

Defining the partner profile:
You specify the partners with which electronic data interchange should take place in the partner profile. You define the characteristics for the data exchange at the partner and logical message levels. The technical characteristics are assigned through the port selection. All other characteristics are specified directly in the partner profile. The partner profile is organized as follows:

- General partner profile
You classify and activate the partner and specify a responsible person for dialog steps (such as exception handling).
- Parameters for message control
You only specify these parameters if you want to send messages from an application that uses message control (NAST).
- outbound parameters
you always edit this area for outbound processing. You indicate which port (technical characteristics) should be used for transmission and specify the source structure, the IDoc type to be transferred and the target structure (the EDI message type to be generated in the EDI subsystem).
- inbound parameters
you always edit this area for inbound processing. You use the process code to assign an inbound processing method to the inbound IDoc specified by the partner and logical message.

Processing tests
This aims at R/3 system administrators. It describes how you can test the configuration of the IDoc interface step by step.

Monitoring
This describes the tools used to monitor the IDoc interface. These help to find out whether Idocs haven’t been transmitted correctly and which ones.

Archiving Idocs:
It is possible to store Idocs in an archive. The IDoc archiving class was introduced and various archiving programs implemented using the Archive development Kit (ADK). The archiving class provides the following functions.
- includes Idocs as sub-objects in larger archiving objects.
- Function modules and FORM routines of the EDIA function group realize the archiving class. This includes all function modules and FORM routines whose names begin with “IDoc”.

INTRODUCTION TO MESSAGE CONTROL
Objective of message control

The objective of message control is the exchange of information between various partners and the launching of subsequent processing that is partner-independent. Message control provides interfaces to make this possible.
You can use the message control interfaces to describe various data combinations along with the required processing. If one of these combinations is found to be applicable during the processing of an application object, the appropriate processing is started (synchronously or asynchronously).



Implementation of message control

Message control is a “ service program” for other applications. It is initiated via ABAP/4 function modules.
Information about which programs carry out the subsequent processing is managed in tables. The conditions determining when programs are called are often very complex and also depend on the individual customer situation. Message control offers the flexibility needed to represent these various situations.

Concepts of message control

The condition technique in the R/3 system is used to formulate rules and conditions. A message default , which you can either accept or change is delivered from the conditions defined in the condition technique. In accordance with the message default, message processing and transmission is controlled via message control records.



8 . GENERAL

1.How to create a Table?(Steps to create a table)
First Domain, Data element.
Domain is nothing but the technical properties like type and length.
Data element is nothing but the short description or text.

2.What are the differences between a Subroutine and Function modules?
Function modules are special external programs stored in a central library and has a global presence while subroutines are confined to a particular program.
Subroutines cannot return values where as functions can return values.
Subroutines can not handle exceptions,
3.What are the different ways of passing parameters?
Call by Reference
Call by Value.
Call by value and return

Perform sub1 using A
Form Sub1 using value(P_A)

Perform sub1 using A
Form Sub1 using A

Perform sub1 using A
Form Sub1 changing value A
4.How to pass an internal table( By reference or by value)?
Call By reference
5.What are the events of a Classical report?
Initialization
At selection-screen
Start-of -selection
End-of selection
6.What are the types of a programs?
(Include, Module pool, Online, Function group, Subroutine pool)
7.How many secondary lists can be possible for a report?
20 secondary lists
8.What event triggers first in a classical report?
Start of selection(if we don’t have any other events like initialization)
9.What is the exact use of the domain and data element?
Domain can be used for any other fields
Where as the data element is specific to the field
10.What is the difference between a structure and a table?
Structure cannot store the records. Where as the table contains records(database)
Structure can store a single record where as a table can store a multiple records

11.What is the use of an occurs clause in the internal table declaration?
It specifies the number of records that can store an internal table
If we specify zero it stores the number of records with respect to the records
12.How many ways we can read an internal table?
Loop at internal table
Endloop.
Read table itab index
13.What is the difference between a clear and refresh of an internal table?
Clear clears the header.
Where as the Refresh clears the Body and the header
14.How can we free the memory of an internal table?
Using the keyword FREE
15.No Standard page heading()
(Attributes: Title text)
16.Does the top of page fire when no write statement in the report?
No.
17.Difference between a modify and append in an internal table?
Modify will modify the existing record where as the append will insert the new record
18.Difference between an update and modify of a database table?
Update: if record doesn’t exists it will give the error.
Modify: if record exists it modify otherwise it will insert new record
19.Syntax for the select-option: field for table-fieldname
and it is an internal table with the name of the variable having fields like
option (include or exclude)(I,E) default I,
sign (EQ,LE,GE,BT) default EQ,
low
high
20.How to call a report from the screen and vice versa?
Submit report rep1 and return ( from screen to report)
Set screen
Leave screen( from screen to screen)
Or Leave to screen scr-100
Call screen( from rep to screen ; screen to screen and screen to rep)


21.Different ways of calling a report and screen from each other?

22.What are the different types of tables?
Three types: Clustered
Pool
Transparent

23.How can u go to the secondary list?
At line-selection
At user-command
24. How many Primary and secondary list can a report have?
1 Basic list(number 0) and 20 Secondary lists
25.Can we go from a 3rd secondary list to the basic list?
Yes. By setting sy-lsind to 0.
26.what for Sy-lisel is used?
To get the contents of the selected line.
27.Difference between Hide and a sy-lisel
We can use the chain-hide to hide more than one field
28. what is the use of the read keyword of an internal table
Dynamic reading
29.How to record the transaction?
By using SHDB
30.Differences between Call transaction and Session method?
Unless we process the session data cannot be updated.
Where as the data is updated immediately as soon as we call the transaction
No sy-subrc is returned in session method where as the sy-subrc is returned in the call
Transaction method.
In session method error log is created. Where as in call transaction method Errors need to be handled explicitly.
Updation in database tables is always synchronous. Where as in the call transaction method Updation can be either synchronous or Asynchronous
31.BDC Structure?
Program
Dynpro
Dynbegin
Fnam
Fval
32. What are the steps in a BDC program?
BDC_OPEN_GROUP.
BDC_INSERT
BDC_CLOSE_GROUP.
33.USE of a BDC?
Passing the data from the legacy system to the SAP system


34.What are the events in a transaction?
PBO
PAI
POV
POH

35.What we can write in PBO and PAI?
Modules loop and endloop
Chain and endchain
36.Where Chain and Endchain is used and for what?


37.Difference between the table control and the Steploop?
In step loop only horizontal scroll bar is present where as in the table control we can both horizontal and vertical scroll bars
No need to define the step loop
Where as the table control is to be defined
38.What is the use of the ok-code(like sy-ucomm)



39.How to dynamically change the screen Attributes?
Using loop at Screen

40.What is the use of the POV and POH?
POV is used to give the list of values
POH is used to give the Help

41.PFnn ?

42. If one person is making use of the table, can otherperson make changes to the database table?
No SAP provides the locking facility to the table

43.What is the difference between the Subscreen and the Ordinary Screen?

44. What are the events of an Interactive report?
Initialization
At selection-screen
Start-of -selection
End-of selection
Top of page during line selection.
At user-command
At line-selection

9.SAPIMP


1) ABAP-Advanced Business Application Programming.
Programming language developed by SAP for application development purposes. All R/3 applications are written in ABAP
2) ABAP Dictionary
Central and redundancy-free storage facility for all data in the R/3 System.
The ABAP Dictionary describes the logical structure of application development objects and their representation in the structures of the underlying relational database.
All runtime environment components such as application programs or the database interface get information about these objects directly from the ABAP Dictionary.
The ABAP Dictionary is an active data dictionary and is fully integrated in the ABAP Workbench.

Directory that contains the following information:
• Description of all application data for an enterprise
• Relationships between the application data
• Use of the application data in programs and screen templates
The descriptive data for the ABAP Dictionary is also known as meta data since is represents data about data.

3)EDITOR: You use the ABAP Editor to develop and maintain ABAP programs, function modules, screen flow logic, and logical databases

You can use the ABAP Editor in four different modes:
• Editor control mode
• PC mode with line numbering
• PC mode without line numbering
• Command mode
4)ABAP STATEMENT:
Statement in an ABAP program.
An ABAP program consists of statements. Each statement begins with an ABAP keyword and ends with a period.
Statements can extend over several program lines, and there can be several statements on one line.
5)KEYWORD: First word in an ABAP statement.
The keyword determines the meaning of the entire statement.
There are four different ABAP keyword types:
• Declarative keywords
• Event keywords
• Control keywords
• Operational keywords
6)MODULE POOL: An ABAP program with the program type 'M'.
7)ABAP OBJECTS: ABAP Objects implements the concepts of object-oriented programming in the ABAP programming language.
8)ABAP PROGRAM: Program written in the ABAP programming language.
An ABAP program consists of a collection of processing blocks, which are processed sequentially as soon as they are called by the runtime system.
There are two main kinds of ABAP program:
• Report programs (ABAP reports)
• Dialog programs
9) ABAP REPORT PROGRAM
ABAP program that reads and analyzes the data in database tables, and sometimes also makes updates.
ABAP report programs have the program type "executable program" and are often linked to a particular logical database.
When you execute an ABAP report program, you can display the resulting output list - also known as a report - on the screen or send it to a printer. You can also save the output list and display it later.
10) ABAP Query
ABAP Workbench tool that allows users without knowledge of the ABAP programming language to define and execute their own reports.
Users enter texts and select fields and options in order to determine the structue of the reports. Fields are selected from functional areas and can be assigned a sequence by numbering.
Three types of reports are available:
• Basic lists
• Statistics
• Ranked lists
11) ABAP Workbench
Integrated graphical development environment of the R/3 System.
The ABAP Workbench allows you to develop, maintain, and manage client/ server applications written in ABAP.
You can use the tools of the ABAP Workbench to:
• Write ABAP code
• Design screens
• Create user interfaces
• Test applications for efficiency
• Check applications for errors
• Use predefined functions
• Access development objects
• Access database information
12) Financial Accounting (FI)
Structure which records value transactions within an accounting unit (in this case a company code) as regards an element from a value grouping. The account can refer to an object to which the value transactions are assigned.
The account contains transaction figures, which contain the changes to the values in a summarized form per company code.

13)EDI : Electronic Data Interchange.
Electronic exchange of structured data, such as business documents, between domestic and international business partners that use different hardware, software and communication services. For this purpose, the data involved is formatted according to predefined standards.
In addition to this, the SAP ALE technology is available for data exchange within a company.
14) EDI architecture
Components that are part of the data interchange.
The EDI architecture consists of the following elements:
• EDI-enabled SAP application
• EDI interface
• Translator or EDI subsystem
15) IDOC INTERFACE:
File in which IDocs are stored.
Smallest element of an EDI standard for the description of values.
The data element is uniquely defined by its name, type, and length. A data element corresponds to an SAP data field.
16)EDI STANDARD; An EDI standard generally comprises:
• EDI syntax
• Data element service
• Message type service
17)FI/CO INTERFACE:
Central interface for postings to Accounting.
The FI/CO interface carries out checks from an accounting point of view as standard. It is also responsible for the consistent update of documents and line items and thus for the integration of the affected components with Accounting.
18) Internet Transaction Server
Tool for managing and monitoring all aspects of the Internet Transaction Server (ITS).
You can use ITS Administration to:
• Manage users
• Manage and configure ITS instances
• Monitor performance
• Set up security
• Display HTML templates and language resources
• Display log and trace files
• Enable/disable debugging
• Maintain registry settings
19)MESSAGE CLASS:
Group of messages used by a particular application.
Every ABAP program is linked to a message class. The message class name consists of two alphanumeric characters.
20)METADATA: Metadata is data about data. This means that Metadata describes the origin, history and further aspects of the data. Using the Metadata, the information that is stored in the SAP Business Information Warehouse can be effectively used for reporting and analysis.
There are different classes of Metadata:
• Technical
• Business-orientated

Data that describes other data.
Metadata comprises data definitions that are normally stored in a data dictionary.
21)PAI: Process After Input.
Block of code processed after a screen has been displayed.
22)PBO: Process Before Output.
Block of code processed after a screen is called but before it is actually displayed.
23)MODE: The PC mode has two possible settings:
• PC mode with line numbering
• PC mode without line numbering
Besides the PC mode, there is also the EDIT CONTROL MODE and the COMMAND MODE.
PC mode with line numbering is the DEFUALT setting.
24)PROJECT TYPES Groups projects according to specific criteria, for example:
• capital-investment projects
• customer projects
• development projects
25)REPOSITORY BROWSER
Central storage facility for all ABAP Workbench development objects.
The development objects managed by the R/3 Repository include:
• Program objects
• Function group objects
• Dictionary objects
• Business Engineering objects
• Other objects
26)RFC Remote Function Call.
RFC is an SAP interface protocol. It considerably simplifies the programming of communication processes between systems.
RFCs enable you to call and execute predefined functions in a remote system - or even in the same system.
RFCs manage the communication process, parameter transfer and error handling.
27) SAP Business Workflow
SAP Business Workflow comprises technologies and tools for the automatic control and execution of cross-application processes. This primarily involves coordinating
• the persons involved
• the work steps required
• the data that needs to be processed (business objects)
The main aims of SAP Business Workflow are to reduce throughput times and the costs involved in managing business processes, and to increase transparency and quality.
28)SAP DATA PROVIDER: The Data Provider facilitates data transfer between the back end and the front end. It makes it possible to send the contents of tables to the graphic. Without the Data Provider data transfer between the back end and the front end would be more restricted and less efficient
29) SAP KNOWLEDGE PROVIDER: Comprehensive document management system.
The SAP Knowledge Provider supports document authoring with offline editing, and offers both context-sensitive selection and logical hyperlink mechanisms.
Applications such as the SAP Knowledge Engineer use the SAP Knowlegde Provider to define views of the structure of their documents. The SAP Knowledge Provider is therefore an cross-application, cross-media, information technology infrastructure
30) SAP INTERNET SALES (CRM)Business solution to facilitate electronic business activites between companies and consumers, or between different companies. Using this solution, you can sell your products directly via the World Wide Web. The KPro Web Server is implemented as an Internet Information Server (IIS) application.
31)SAP MEMORY MANAGEMNET
Global, user-related memory that extends beyond transaction limits.
Access to the SAP memory is via SPA/GPA parameters
32) ABAP Query
ABAP Workbench tool that allows users without knowledge of the ABAP programming language to define and execute their own reports.
To determine the structure of reports in SAP Query, you only have to enter texts, and select fields and options. If necessary, you can edit lists in WYSIWYG mode through drag and drop, and with the functions in the available toolbars.
33) SAPscript
R/3 text management and form printing tool.
SAPscript consists of five components:
• An editor for entering and editing text.
• Styles and forms for designing the print layout.
• A composer as the central module for output formatting.
• A programming interface that allows you to integrate SAPscript components in your own application programs and program the output via forms.
• Various database tables for storing texts, styles, and forms.

34)SAPMAIL: Electronic mail system in SAPoffice with which you can transmit messages
35) System-defined data object.
All system fields conform to the naming convention SY-, where denotes the field.
You can display a list of system fields in the ABAP Editor.
Examples:
• SY-SUBRC - return code
• SY-UNAME - user name
• SY-DATUM - current date
• SY-UZEIT - current time
• SY-TCODE - current transaction
36)TABLE Tabular array of data in the ABAP Dictionary.
A table consists of columns (data values of the same type) and rows (data records).
Each record can be identified uniquely by one or several fields.
37) TABLE CATEGORY defines how the table is implemented physically. It can be a:
- transparent database table (is created in the database)
- pooled table (table data is stored in the appropriate table pool)
- cluster table (table data is stored in the appropriate table cluster).
38) TABLE CLUSTER: Database table that contains the data of several logical cluster tables
39) TABLE POOL: Database table that contains the entries of several logical pooled tables.
40)TABLE ELEMENT: Multiline element in the workflow container, which can contain a list of values.
A table element can be specified in the activity definition. The activity is executed in parallel processing branches as many times as there are values in the table.
41)TABLE GROUP: Set of interdependent FI-SL database tables consisting of:
• an object table
• a summary table
• an actual line item table
• a plan line item tables
42) TABLE HIT LIST: Runtime analysis function.
The table hit list displays the database tables accessed by a program or transaction, the number of accesses, and the time required for each.
43)TABLE INDEX : Index for accelerating data selection from a database table or an internal table.
You can think of a table index as a copy of a table that is reduced to certain fields only and always sorted. Sorting is performed while the table records are being accessed, e.g. via binary search.
44)TABLE KEY : Group of fields that uniquely identify each record in a table
45)TABLE MANUAL : Group of fields that uniquely identify each record in a table
46)TABLE PARAMETER : Internal table which can be both imported and exported.
When the contents of an internal table are passed from a calling program to a function module, the latter can change the value and pass it back to the calling program.
47)TABLE STRUCTURE : Layout of a table.
The table structure consists of a complete list of table fields and also indicates which fields constitute the primary key.
48)TABLE TYPE : Object in the ABAP Dictionary that describes the structure and functional attributes of an internal table in ABAP
49)TABLE WORK AREA: Data object created in an ABAP program by the TABLES statement.
A table work area is a structure similar to a table in the ABAP Dictionary.
50)TABLESPACE: Logical storage area known to the database management system (DBMS).
Tablespace has different meanings for different DBMSs:
• ORACLE uses the term to describe an area for the storage of similar kinds of objects, such as tables, indexes or views.
• INFORMIX uses the term - with the spelling "tblspace" - to describe all the disk space allocated to a single table or table fragments.
• DB2 common server uses the term - with the spelling "table space" - to describe an area for the storage of tables or table components (that is, data, index and so on).
• Other DBMSs may use tablespace in a different way to the examples above.
51)TABLE CONTROL: Area on a screen for efficient entry and display of one-line tabular data, which is processed in a loop at runtime.
• There can be several table controls on one screen and, as with subscreens, each has a unique name.
The main features of a table control are as follows:
• Vertical scroll bar
• Horizontal scroll bar
• One-line (there is no equivalent of multiple line loop blocks as found in step loops)
Table controls are similar to step loops, but have greater functional scope. For this reason, they can be regarded as enhanced step loops.
52)TABSTRIP CONTROL : Graphical element that looks like a card index.
You use tabstrip controls to display different components of an application on a single screen. In contrast to conventional screen processing, the user can see all components at once and navigate between then easily.
A tabstrip control consists of two or more page elements, and each page element has a title element. You implement page elements as subscreens, and title elements as pushbuttons.
You create tabstrip controls in the Screen Painter and declare them in your program with the CONTROLS statement.
53)TCP/IP : Transmission Control Protocol/Internet Protocol
A software protocol developed for communications between computers.
54)VALIDATION : Process of checking values and combinations of values as they are entered into the SAP R/3 System. Validation occurs before the data is posted so that only valid data is posted. These validation rules are user-defined
55)VARIABLE : Placeholder used to store and address data under a particular name in a particular format.
You can distinguish variables by their name, type, length and structure.
56) VENDOR : Business partner from whom materials or services can be procured
Business partner to whom amounts are payable for goods delivered/ services performed.
Examples of such services/goods include:
• Goods acquired
• Business services received
• The transfer of a right
57)WORKFLOW: Execution of a multistep task at runtime.
A workflow consists of a sequence of steps, which are processed either by people or automatically by the system.
The chronological and logical sequence of the steps, linked to the evaluation of conditions, is monitored by the workflow manager and can be controlled flexibly with event-related response mechanisms.
From a technical point of view, a workflow is represented by a workflow work item (type F).
58)WYSIWIG : What you see is what you get
WYSIWYG application enable the user to see on the display screen exactly what will appear when the document is printed.
59) Logistics Information System (LIS)
The Logistics Information System is made up of the following information systems:
• Sales Information System
• Purchasing Information System
• Inventory Controlling
• Shop Floor Information System
• Plant Maintenance Information System
• Quality Management Information System
The information systems that belong to LIS have a modular structure, yet have a variety of techniques in common which allow you to analyze data. This type of structure also allows the individual information systems to retain their special features.
The information systems in LIS can be used to plan, control, and monitor business events at different stages in the decision-making process. They are fleixble tools for collecting, aggregating and analyzing data from the operative applications. The level of detail in which information is displayed is freely definable. Informative key figures enable you to continually control target criteria and to react in time to exceptional situations. Data can be analyszed using either standard analyses or flexible analyses. Flexible planning, the Early Warning System, and the Logistics Information Library are also integrated in the information systems. Tools are available in Customizing which enable you to create a self-defined information system and tailor it to specific requirements.
60)

10.FINANACEMODULE


1) COMPANY: Smallest Organizational unit for which individual financial statements can be drawn up according to the relevant commercial law.
A company can consist of one or more company codes.
2) Company Code : The smallest Organizational unit for which a complete self-contained set of accounts can be drawn up for purpose of external reporting.
3) Business Area : A business area is an Organizational unit of financial accounting that represents a separate area of operations or responsibilities within an organization.
4) Chart of Accounts : A chart of accounts is classification of accounts defined in for financial accounting as a frame work for recording values and value flows in order to guarantee an orderly rendering of financial statements. The operating or transaction chart of accounts is used in Financial Accounting and Controlling.
5) Fiscal year Variant : Variant defines the relationship between the calendar and fiscal year. The Fiscal year variant specifies the number of periods and special periods in a fiscal year and how the system is to determine the assigned posting periods.
6) Credit control area : Organizational unit that represents an area responsible for granting and monitoring customer credit.
7) Integration : This organizational unit is either a single company code or comprised of several company codes when credit control is performed across multiple company codes. In a credit control area, credit information can exist for each customer.
8) Controlling area : Organizational unit used to represent a closed system for cost accounting purposes. A controlling are may include single or multiple company codes that may use different currencies. These company codes must use the same operative chart of accounts. All internal allocations refer exclusively to objects in the same controlling area.
9) GL Account(Ledger) : A specialized frame work that determine how values and quantities are entire an present for a particular area of accounting and for it reporting or evaluation purposes.
10) Ledger : A ledger is comprised of the figures and documents representing the changes in values and quantities due to business transactions.
11) Account Groups: A collection of properties of accounts which determine the creation of master records.
The account group determines the data that is relevant for the master record and a number range from which numbers are selected for the master records. Each master record must be assigned to an account group.
TWO types of account groups : 1) G. L. Account Group 2) Sub- Ledger Account Group.
G L Account Group determine the number range and field status of company code area.
Sub-Ledger account groups a) Number range b) Internal of external c) Field status of all the screens.
12) Field Status Variant : An individual variant for field status groups exists for each company.
Every company code is allocated to this variant.
Field Status Group : Field status group is defined under field status variant. We can define any number of filed status groups. FSG determines the no of fields that should appear in document entry screen.
13) Reconciliation Account : GL Account to which transactions in subsidiary ledger(Such as customers, vendors or asset areas) are automatically updated when we post to a customer or vendor account the system automatically posts to a reconciliation account. Only the system can post to reconciliation account.
14) Posting Period Variant: Posting period variant is used to define open and closing posing periods. It can be used to different company codes for which you want to use identical variants for open posting periods to this variant.
15) Parked Document: The reason Park the document a) No authorization to post the document b) Lack of information to post the document. When we delete the parked document the account number assigned to the parked document cannot be reused. Only the line items gets deleted. The header line remains as it is.
16) Tolerance Group: Two types of Tolerance groups are available a) user tolerance group b) Tolerance group for customer/ vendors.
Contents of tolerance group.
a) The document total b) Open line item c) Discounts d) Payment differences.
Contents of tolerance group for vendor/customer.
a) Tolerances up to which difference in payment are posted automatically to expense or revenue accounts when clearing open items.
b) The handling of the terms of payment for residual items, if they are to be posted during clearing.

17) Deletion of Document: Posted document can not be deleted. We can only reverse the posted document. We can delete reference documents and parked documents.
Fields that can be changed in a posted document.
1) Document Header------- A)Document B) Document header text fields.
2) Line item -----------------A) Line item text. B) Allocation Number.

18)
TRANSACTION CODE
General Ledger FSMN
Accounts Receivable FDMN
Accounts Payable FKMN
Fixed Assets ASMN
Consolidation FCMN
Special purpose Ledger FGM
Funds Management TCMN
Travel Management PR00
Customizing SPRO
Fiscal year Variant OB29
Allocate to company Code OB37

19)
1) Central Objects of Financial Accounting.
a) Company Code. B) Fiscal year. C) Document.
2) Set company code to productive FI FAGS Co. Code  Set Co. Code productive.
3) Global parameters a) Chart of Accounts. B) Fiscal Year Varian

20) TOLERANCE GROUP are defined per company code.
Usage: Each tolerance group contains settings that affect cash discount and payment difference processing. These settings become effective during payment entry.
Accounts that are managed on an open item basis include:
Clearing accounts b) bank clearing account c) payroll clearing account d) cash discount clearing account e) Clearing account for gods receipt/ invoice receipt.
Accounts that are not managed on an open item basis include:
a)Bank Account b) Tax accounts c) Raw Material Accounts. D) Reconciliation Accounts E) Profit and loss accounts.
21) CLEARING ACCOUNT : Account that contains postings temporarily. clearing accounts are auxiliary accounts used for reporting reasons which clear repeatedly.
Possible reasons could be :
* Time difference between business transaction(GR/IR Clearing Ac)
• Organizational task distribution(Bank clearing ac)
• Unclear business transaction.

No comments:

topics