Debugging is the tool to trace the program execution line by line.
Debugging is used to change the input values as run time.
Debugging is used to stop the program execution as any execution statement by using break-point.
Break-point:
Break point is the signal which interrupts the program execution.
There are 2 types of break point
Static Break Point
Dynamic Break point
Difference btw static and dynamic break point:
Static break point are achieved using break-point keyword.
Static break point are not user specific. ie... program execution stops at static break point irrespective of who set the break point. but based on some condition we can set static break point as user specific.
We can set static break point at any version of the program. ie.. active or inactive.
SAMRTFORMS can be debugged using static break point.
------------------
Dynamic break point are achieved using stop button in the application tool bar.
Dynamic break point are user specific.ie... program execution stops only for the user who set that break point.
We can set dynamic break point only at the active version of the program.
We cannot debug the smartforms using dynamic break point.
Note:
There are two ways to debug the program.
Place the break point and execute the program.
Execute the program and set in debugging mode.
Note:
SY-UNAME is the system variable which contains the current user name.
To achieve user specific static break point we have to use SY-UNAME in IF condition.
If SY-UNAME = 'sapuser'.
break-point.
Endif.
How to add/remove dynamic break point:
Place the cursor on the program line where we want to add break point and click STOP button from application tool bar
To remove the break point, place the cursor on the break point and press the STOP button from application tool bar.
Note:
We can add upto 30 break point in a program.
Function keys:
F5 - Line by line execution.
F6 - To execute one block of code(complete subroutine or function module) at a time.
F7 - To exit from a block of code. ie.. if we are inside the block of code, F7 is used to come out of it.
F8 - If there is any break point in upcoming line, It will jump to next break point or else comes out from program.
Watch Point:
Watch point are used to stop the execution program based on particular condition.
Hot to add watch point in program:
Click watch point from the application tool bar and provide name[Workarea-Fieldname]. ie.. wa-bukrs.
SAP - System Application and Product in data processing
ERP - Enterprise Resource Planning
ECC - Enterprise Central Component
ABAP - Advance Bussiness Application Programming
1.ERP
ERP contains predefine database tables and programs
Some of the ERP products available in the markets are
BAAN - Small and Medium scale industries [Vendors and Customers]
RAMCO - Small and Medium scale industries [Finance]
Peoplesoft - Large scale industries [Human Resource]
Oracle Apps - Large scale industries [Finance]
SAP - Large scale industries
Note:
Enterprise means big companies
Resource means money, material, man power, machineries, marketing, etc Planning means how to properly utilise these resources for companies betterment
2.SAP
SAP has tightly integrated across all the modules and departments [HR,MM, SD, FICO, etc]
SAP is developed in multi-language and supports multi currencies
SAP is developed by 5 former IBM employees
SAP is ready made product with customisation facility
SAP is platform independent
SAP supports cross application. ie, [SAP to SAP, SAP to non-SAP, non-SAP to SAP]
SAP has its own programming language called ABAP
SAP ABAP is not case sensitive language
SAP ABAP is used to customise standard functionality of SAP
3.Role of ABAPer
ABAPer are responsible to create RICEFW
R - Reports
I - Interface
C - Conversion
E - Enhancement
F - Forms
W - Workbench
1. Reports:
Based on the given input fetching the data from database table and displaying it in a predefined formate is called reports. There are 3 types of reports
Classical reports - Display the entire information in a single list.
Interactive reports - Display the summarised information in the basic list and detailed information in the next list.
ALV reports - Display the output with predefined functionalities such as borders, sorting, etc
2. Interface: Interface are used to establish the connection between SAP to SAP and SAP to non-SAP Example: ALE/IDOC and BAPI 3. Conversion: Conversion program are used to upload the data from the legacy system(file) to SAP system Example: BDC, LSMW and BAPI 4. Enhancement: Enhancement are used to add some additional functionalities to standard SAP functionalities without disturbing the existing functionalities Example: User exit, Customer exit, Enhancement point, BADI 5. Forms: Forms are used to prepare the business documents such as offer letters, invoice etc Example: SMARTFORMS, SAP Script 6. Workflow: Workflow used to automate the existing business process
ie.. Workflow is used to identify the workload of an employee as well as performance of an employee
4.Types of project
Implementation project
Upgradation project
Maintenance/Support project
Rollout project
1.Implementation project:
If we want to implement SAP from scratch, then it means implementation project.
Phases:
Project preparation phase
Business blue print phase
Realisation phase
Post preparation phase
Go-live and support phase
2.Upgradation project:
Whenever there is change in SAP version, we have to implement the new features into our existing implementation is called upgradation project. 3.Maintenance/Support project:
After project in live, it needs 24/7 support is called support project.
4.Rollout project:
Whenever company purchase a new company or to implement a new module, it means rollout project.
5.Source code
The source code of an ABAP program consists of either a statement or comment.
Statement:
Statement is the collection of operators, operands, variable and keyword.
Operators and Operands:
In ABAP we have 3 types of operators mathematical operator, comparative operator, relational or logical operator.
1.Mathematical Operator
Operators | Description| Example
+| Addition| 3+2 = 5
- | Subtraction| 3-2 = 1
* | Multiplication| 3*2 = 6
** | Exponential | 3**2 = 9
/ | Division | 4/2 = 2
mod | Modulo division 5mod2 = 1
2.Comparative Operator
Description ` | Operator
Less Than | <orLT
Less Than or EquaL | <= or LE
Greater Than |> or GT
Greater Than or Equal | >= or GE
Equal | = or EQ
Not Equal | <> or NE
3.Relational Operator
Operator | Example
AND | a<b and a<c OR | a<b or a<c
NOT | a<b not a<c
Variables
Variable is the name given to the memory location.
ie.. int a = 10, where value 10 is stored in memory location 'a'
Keywords
Keywords are used to identify the type of the statement.There are many keywords like