Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Demonstration
Exercises HelpMe
5
India SAP CoE, Slide 2
Demonstration
Exercises HelpMe
5
India SAP CoE, Slide 3
Introduction
Purpose Use
Purpose
Reports are Programs that read data from the database, processes the data and displays the data to the required format.
Use
Reports are uses in day to day business environment. For eg
Displaying the purchase orders vendor wise Displaying the balance of vendors to be paid till a particular date
Enhance the efficiency & transparency of Business Processes Sound Decision making with the control of master data and accurate reporting Relevant Documents immediately available for in case of drill down reports Multiple angles of Data representing and Forecasting Values
Demonstration
Exercises HelpMe
5
India SAP CoE, Slide 7
Process Flow
external control
...
India SAP CoE, Slide 9
Events
INITIALIZATION AT SELECTION-SCREEN
START-OF-SELECTION
END-OF-SELECTION Interactive Events
India SAP CoE, Slide 10
TOP-OF-PAGE
Events
INITIALIZATION
Before the standard selection screen is displayed
Cont..
AT SELECTION-SCREEN
After user input on a selection screen has been processed, but while the selection screen is still active After the standard selection screen has been processed, before data is read from the database After all data has been read by the database In list processing when a new page starts In list processing when a page ends
START-OF-SELECTION
END-OF-SELECTION
TOP-OF-PAGE
END-OF-PAGE
Events
Initialization.
Cont..
ABAP/4 report programs are event driven programs The different events in a report Program are:
Initialization of all the values. You can fill your selection screen with some values at runtime.
At Selection-Screen.
Validation & Checks of inputted values happen here
Start-of-Selection.
Here the program starts selecting values from tables.
End-of-selection.
After all the data has been selected this event writes the data to the screen.
Interactive Events.
Used for interactive reporting. It is used to create a detailed list from a basic list.
Events
Initialization
Cont..
Processed before the presentation of the selection screen Can be used to initialize values in the selection screen or to assign values to any parameters that appear on the selection screen
At Selection-Screen
Processing block is started after the user has specified all the criteria in the selection screen This event can also be called on a particular parameter or select-option using At Selection-Screen on <parameter or select-option> If an error message is displayed from this processing block then the system displays the selection screen again and wrong input fields have to be filled again.
Events
Start-Of-Selection
Cont..
Processing block is executed after processing the selection screen All the data is selected in this block. All the main processing on the data except for interactive reporting is handled in this block.
End-Of-Selection Data which is selected and has been processed is printed to the screen in this block. List Processing happens in this block Top-of-Page. End-of-Page.
Events
Events during List Processing Top-of-Page.
Cont..
Triggered by the first write statement in the program It is used to have a standard header in the program for all the pages.
New-Page.
Can be used when one wants to display different data on different pages Terminates the current page and continues output on a new page. Will not trigger the Top-of-Page or End-of-Page. Executes on the first write statement.
End-of-Page.
It is used to have a standard footer for all the pages. Triggered by the program if the number of records exceed the line-count of the program.
Text Symbols
Text symbols are simple text literal. they can be translated to any other Language. You can address text symbols in a program one of two ways: TEXT-<xxx> (xxx is a three digit character sequence) '<Text>'(<xxx>) (xxx is a three digit character sequence)
Select Statement
Select Statement
SELECT <result> INTO <target> FROM <source> [WHERE <condition>] [GROUP BY <fields>] [ORDER BY <fields>]. ENDSELECT.
Select Statement
Reading the Whole Line
SELECT * FROM EMP INTO TMPTABLE WHERE EMPNO = EMPNO ENDSELECT.
Where Condition
<Condition>
EQ, = NE, <>, >< LT, < GT, > LE , <= GT , >= [NOT] BETWEEN [NOT] LIKE [NOT] IN
Meaning
Equal Not Equal Less Than Greater Than Less Than or Equal Greater Than or Equal Between Like Patten In
Select Statement
Specifying Internal Tables
Cont..
SELECT ... INTO|APPENDING [CORRESPONDING FIELDS OF] <itab> ENDSELECT. SELECT ... INTO|APPENDING [CORRESPONDING FIELDS OF] TABLE <itab> SELECT * FROM INTO . FOR ALL ENTRIES IN Itab WHERE .. = Itab-..
Using JOIN
SELECT employee_name, manager_name FROM employees AS e INNER JOIN managers AS m ON e.manager_id = m.manager_id SELECT employee_name, manager_name FROM employees AS e OUTER JOIN managers AS m ON e.manager_id = m.manager_id
Cursor
OPEN CURSOR <c> FOR SELECT <result> FROM <source> [WHERE <condition>]. FETCH NEXT CURSOR <c> INTO <target>.
Select Statement
Specifying a Database Table
INSERT INTO <dbtab> [CLIENT SPECIFIED] <lines>.
Cont..
Deleting Lines.
DELETE [FROM] <target> <lines>.
Database Statements
Committing Database Changes. COMMIT WORK.
COMMIT WORK always concludes a database LUW and starts a new one.
ROLLBACK WORK.
ROLLBACK WORK always undoes all changes back to the start of the database LUW.
Authorization Checks
AUTHORITY-CHECK OBJECT <authorization object> ID <authority field 1> FIELD <field value 1>. ID <authority field 2> FIELD <field value 2>. ... ID <authority-field n> FIELD <field value n>.
To check the authorization of the user of an ABAP program, use the AUTHORITY-CHECK statement
SAP Locks
SAP Locking.
Activating a lock object causes the system to generate special function modules for locking and unlocking the objects. These function modules are called: ENQUEUE_<lock-object-name> 'For locking objects DEQUEUE_<lock-object-name> 'For unlocking objects
Call function ENQUEUE_<lock-object-name>. Update / modify database. Commit / roll back. Call function DEQUEUE_<lock-object-name>.
Data Declaration
Output length
Len 8 22 11 Len 2*Len or 2*len+1(Decimal) 6 2*Len
Output
left-justified left-justified right-justified right-justified left-justified right-justified left-justified left-justified
Initial Value
BLANK 00000000 ZERO ZERO ZERO ZERO
000000 00
Arithmetic Calculation
Operator
+, -, * , / , DIV MOD ** ABS CEIL FLOOR TRUNC FRAC
Meaning
Mathematical Remainder of integer division Powers Absolute value of argument Smallest integer value Largest integer value Integer part of argument
Processing Strings
SHIFT <c> [BY <n> PLACES] [<mode>]. REPLACE <str1> WITH <str2> INTO <c> [LENGTH <l>]. TRANSLATE <c> TO UPPER CASE / LOWER CASE. SEARCH <c> FOR <str> . STRLEN( WORD1 ). CONDENSE <c> [NO-GAPS]. CONCATENATE <c1> ... <cn> INTO <c> [SEPARATED BY <s>]. SPLIT f AT g INTO h1 ... hn [<mode>}. STRLEN( f ).
Use SPACE Keyword to work with a blank Character Use DESCRIBE Keyword to get the attributes of a objects.
FIELD SYMBOLS
FIELD-SYMBOLS <FS> [<type>|STRUCTURE <s> DEFAULT <wa>].
ASSIGN <f> TO <FS>. ASSIGN <f>[+<o>][(<l>)] TO <FS>. ASSIGN (<f>) TO <FS>.
Simple Reports
Attributes.
Source code Text elements Documentation Variants
Report Statement.
REPORT ZREPNAME [NO STANDARD PAGE HEADING] [LINE-SIZE col] [LINE-COUNT n(m)] [MESSAGE-ID mid]. NO STANDARD PAGE HEADING - Suppresses output of the standard page header LINE-SIZE col - Creates a report with col columns per line. LINE-COUNT n(m) - Creates a report list with n lines per page, of which m lines are reserved for the END-OF-PAGE processing.
IMPORT <f1> [TO <g1>] <f2> [TO <g2>] ... FROM MEMORY ID <key>.
To read data objects from ABAP/4 memory into an ABAP/4 program
Selection Screen
Parameters. PARAMETERS <p> LIKE (<name>) DEFAULT <f> OBLIGATORY AS CHECKBOX RADIOBUTTON GROUP <radi>
Select-options.
NO-EXTENSION NO INTERVALS SIGN I stands for inclusive, E stands for exclusive. OPTION EQ, NE, GT, LE, LT,CP, BT, NB and NP
CHECK SELECT-OPTIONS.
check the contents of the actual database table
Selection Screen
Formatting Selection Screen.
Cont..
...
SELECTION-SCREEN SKIP [<n>]. To produce blank lines on the selection screen SELECTION-SCREEN ULINE [[/]<pos(len)>] [MODIF ID <key>]. To underline a line or part of a line on the selection screen SELECTION-SCREEN COMMENT [/]<pos(len)> <name> [FOR FIELD <f>] [MODIF ID <key>]. To write text on the selection screen SELECTION-SCREEN BEGIN OF BLOCK <block> [WITH FRAME [TITLE <title>]][NO INTERVALS].
SELECTION-SCREEN END OF BLOCK <block>. To create a logical block of elements on the selection screen
Write Statement
WRITE <format> <value> <options>.
<format> /p(I) / = Line Feed <value> p = Column Position I = Output Length Output Value Field or Literal
<options>
/ Format Options
Write - Options
LEFT-JUSTIFIED
Output is left-justified.
CENTERED
Output is centered. Output is right-justified. Output starts directly under field <g>.
NO-ZERO AS SYMBOL
Writes the output as a symbol Will have to INCLUDE <symbol>.
RESERVE n LINES
If there is not enough space left on the current page for at least n lines, this statement starts a new page. n can be a constant (1,2,3,...) or a variable.
AS ICON.
Writes the output as a icon Will have to INCLUDE <icon>.
India SAP CoE, Slide 35
Write Options
WRITE AT [/][<pos>][(<len>)] <f>.
Cont..
position the output of a WRITE statement on the list by making a format specification
SKIP [<n>].
generate blank lines on the screen
Write Options
ABAP/4 output Formatting.
Cont..
Format Color n. Format Color n Intensified On. FORMAT COLOR OFF INTENSIFIED OFF INVERSE OFF HOTSPOT OFF INPUT Off.
Internal Tables
Internal Tables
Standard tables.
Cont..
The time for key access to entries is in linear relation to the number of entries in the table
Internal Tables
Standard Sorted
Cont.. Hashed
Table Scan
Binary Srch
Hash Function
Access Using
Predominantly Index
Predominantly Key
Key Only
Uniqueness
NON-UNIQUE
UNIQUE| NON-UNIQUE
UNIQUE
Internal Tables
Cont..
Internal Tables
Operations without header line
INSERT <wa> INTO TABLE <itab>. COLLECT <wa> INTO <itab>. READ TABLE <itab> ... INTO <wa>. MODIFY TABLE <itab> FROM <wa>. MODIFY <itab> FROM <wa>WHERE
Cont..
Internal Tables
Reading data from Internal Tables.
Loop and endloop.
Cont..
<level>
FIRST LAST NEW <f> END Of <f> ON CHANGE OF <f>
Meaning
First line of the internal table Last line of the internal table Beginning of a group of lines with the same contents in the field <f> and in the fields left of <f> End of a group of lines with the same contents in the field <f> and in the fields left of <f> Executes the processing block enclosed by the "ON CHANGE OF f" and "ENDON" statements whenever the contents of the field f change (control break processing).
Internal Tables
Read table. READ TABLE <itab> <key> <result>.
Cont..
READ TABLE itab WITH KEY k1 = v1 ... kn = vn [BINARY SEARCH] It is mandatory for the internal table to be sorted in ascending order in the sequence of the specified key fields. READ TABLE itab INDEX i
Extracts
Extracts
Defining an Extracts.
FIELD-GROUPS <fg>.
Reading an Extract
LOOP. [AT FIRST | AT <fgi> [WITH <fg j>] | AT LAST. ENDAT.] ENDLOOP.
Sorting an Extract
SORT [ASCENDING|DESCENDING]
IF Condition
Logical Expression
If < Cond>.
{statements}
Elseif.
{statements}
Endif.
Case Statement
Interactive Reporting
The following are the different events associated with Interactive Reporting
Event Keyword
At Line-Selection At User-Command At PFn Where n is between 0 to 99 Top-of-Page during Line Selection
Event
Event is triggered by either the user double clicking a particular line or using F2 to select it Event triggered by user pressing a function key Event triggered on press of a function key. Event called during list processing when a detailed list is called
Interactive Reporting
READ - Reading a Line from a List Reads line number line of the list, usually after a line selection READ LINE line. READ LINE line OF CURRENT PAGE. READ LINE line OF PAGE pag READ CURRENT LINE
Cont..
MODIFY LINE n. Change a List Line INDEX idx - Changes the corresponding line in the list at list level idx
FIELD VALUE f1 FROM g1 ... fn FROM gn
WINDOW STARTING AT x1 y1 ENDING AT x2 y2. Displays the current secondary list as a modal dialog box only up to 20 windows
India SAP CoE, Slide 51
Interactive Reporting
Hotspot
Cont..
If one drags the mouse over the data displayed in the report using the FORMAT statement then the cursor changes to a Hand with an Outstretched Index finger Syntax: Format Hotspot On (Off).
Hide
This command helps you to store the field names based on which one will be doing further processing to get a detailed list. It is written directly after the WRITE statement for a field. When a row is selected the values get automatically filled in the variables for further use. Syntax: Hide <field-name>.
Logical databases
It is another way of retrieving data for a program. Logical databases are created by transaction SE36 The data is selected by another program and one can access the data using GET <table-name> command which places the data in the work area <table-name>. Advantages of a logical database over normal Select queries. It offers check conditions to see whether the input is correct, complete and plausible It contains central authorization checks for database access Enhancements such as improvement in performance immediately apply to all reports which use logical database. Note: Logical database is not used in most of the cases.
Background Processing
When a program takes a long time to execute then one can execute the program in background so that a job is set up for that program. The job can be seen in transaction SM37. The job log gives the exact start time and the end time for the job.
Comments. Commented lines in the program start with asterisk (*) To comment a part of line use double codes ().
Modularization
Subroutines
Subroutines are procedures that you can define in any ABAP program and also call from any program.
Function modules
Function modules are procedures that are defined in function groups and can be called from any ABAP program.
Include
If you want to use the same sequence of statements in several programs, you can code them once in an include program.
Subroutines
Defining Subroutines
FORM <subr> [USING ... [VALUE(]<pi>[)] [TYPE <t>|LIKE <f>]... ] [CHANGING... [VALUE(]<pi>[)] [TYPE <t>|LIKE <f>]... ]. ... ENDFORM.
Subroutines
Calling Subroutines
PERFORM... [USING ... <pi>... ] [CHANGING... <pi>... ].
Cont..
Static Variable
If you want to keep the value of a local data object after exiting the subroutine, you must use the STATICS statement to declare it instead of the DATA statement. With STATICS you declare a data object that is globally defined, but only locally visible from the subroutine in which it is defined. STATICS f_text TYPE f_word VALUE 'INIT'.
Function modules
Calling Function Modules
CALL FUNCTION <module> [EXPORTING f1 = a 1.... f n = a n] [IMPORTING f1 = a 1.... f n = a n] [CHANGING f1 = a 1.... f n = a n] [TABLES f1 = a 1.... f n = a n] [EXCEPTIONS e1 = r 1....en = rn [ERROR_MESSAGE = r E] [OTHERS = ro]].
Function modules
Cont..
Function modules
Calling A Function modules - Pattern
Cont..
Function modules
Testing A Function modules SE37
Cont..
Include
Creating Include.
Use Transaction SE38 to create a include program.
Using Include.
Include <incl> This inserts the source code <incl> into the ABAP/4 program during the syntax check and during generation. The INCLUDE statement performs the same function as if you were to copy the source code of <incl> to the position of the statement in the calling program.
GUI_DOWNLOAD
Demonstration
Exercises HelpMe
5
India SAP CoE, Slide 67
Simple Reports
Simple Reports
REPORT TEST. Initialization. Data : a type I value 10, b type I value 15, sum type I. start-of-selection. WRITE 'This is a statement *This is commented line *The write statement can also be written as. end-of-selection. WRITE 'This' & ' is ' & 'a statement'.
Sum = a + b. Write:/ sum.
Data Declaration
data: begin of it1 occurs 10, Name(10), Phno type i, end of it1. "has a header line
data it2 like it1 occurs 100. "doesn't have a header line data it3 like it1 occurs 100 with header line. "it does now
Name
Header
Phno
Data Declaration
Data Declaration
DATA: PLAYER(35) TYPE C, NICKNAME(35), POINTS GAMES TYPE I AVERAGE(5) STARTER, ACQUIRED PLAYER(35) TYPE C NICKNAME ACQUIRED TYPE I. VALUE 10, TYPE P, TYPE D. VALUE CapGemini, LIKE PLAYER, LIKE SY-DATUM.
Cont..
DATA:
DATA:
Data Declaration
Data Declaration
CONSTANTS:TEAM1(20) TYPE C TEAM2 LIKE TOT_GAMES TYPE-POOLS Z400. TYPES: NAME(35) TYPE C, TEAMS(20) VALUE 76ers, TEAM1 VALUE Celtics, TYPE I VALUE 82.
Cont..
TYPE C.
DATA:
PLAYER
CONSTANTS:
The CLEAR statement sets a field back to its initial value, not its default value.
Data Declaration
Data Declaration Value Assignment
DATA: TITLE(25), SORT_NAME(10), SALARY(10) TYPE N, CNVSALARY(10) TYPE N, GRID_LEVEL TYPE I.
Cont..
MOVE President TO TITLE. MOVE 5 TO GRID_LEVEL. COMPUTE SALARY = 5000000. CNVSALARY = SALARY * 3. ADD 1000 TO SALARY.
Data Declaration
Calculating Values.
DATA: COUNTER TYPE I, AMOUNT TYPE P VALUE 1000, SUM TYPE P, RESULT TYPE P, NUMBER(2) TYPE C VALUE 99, ROOT TYPE F. COUNTER = COUNTER + 2. RESULT = AMOUNT * COUNTER. SUM = RESULT + NUMBER COUNTER. RESULT = COUNTER * ( AMOUNT + NUMBER ). BREAK-POINT. Creates a breakpoints. ROOT = SQRT ( NUMBER + COUNTER ).
Cont..
Select Statement
Select Statement.
Select * from bfpf into itab where bukrs = 0001 and belnr eq 00200689 gjahr gt 2005. Append itab. Clear itab. Endselect Select * from bfpf into table itab where bukrs = 0001 and belnr eq 00200689 gjahr gt 2005.
and
and
Select Statement
Select Statement - Join.
Cont..
REPORT SELECT t1~carrid t1~connid t2~customid INTO (carrid, connid, custid) FROM sflight AS t1 INNER JOIN sbook AS t2 ON t1~carrid = t2~carrid WHERE t1~connid = t2~connid AND t1~fldate = t2~fldate. WRITE:/ carrid, connid, custid ENDSELECT.
Select Statement
Select Statement FOR ALL ENTRIES.
Select * from BKPF into table it_bkpf where <conditions>. If it_bkpf[] is not initial.
Cont..
Select * from bseg into table it_bseg FOR ALL ENTRIES IN IT_BKPF WHERE BELNR = it_bkpf-belnr and BUKRS = it_bkpf-bukrs and GJAHR = it_bkpf-gjahr and BUZEI = it_bkpf-buzei.
Endif.
Field Symbols
Field Symbols
REPORT demo_field_symbols_type . DATA: BEGIN OF line, col1(1) TYPE c, col2(1) TYPE c VALUE 'X', END OF line. FIELD-SYMBOLS <fs> LIKE line. ASSIGN line TO <fs>. MOVE <fs>-col2 TO <fs>-col1. WRITE:/ <fs>-col1
Internal Table
Internal Tables - Sorted REPORT TYPES: BEGIN OF line_type, f1, f2, END OF line_type. DATA: tab1 TYPE SORTED TABLE OF line_type WITH UNIQUE KEY f1 WITH HEADER LINE. tab1-f1 = Y. Tab1-f2 = 1. INSERT TABLE tab1. tab1-f1 = X. Tab1-f2 = 1. INSERT TABLE tab1. tab1-f1 = A. Tab1-f2 = 1. INSERT TABLE tab1.
Internal Table
Internal Tables - Reading TYPES: BEGIN OF line_type, f1, f2, f3, END OF line_type. DATA: tab1 TYPE STANDARD TABLE OF line_type WITH KEY f1 f2, wa type line_type. wa-f1 = 'B'. wa-f2 = '5'. wa-f3 = '12.45'. READ TABLE tab1 FROM wa INTO wa. READ TABLE tab1 WITH TABLE KEY f1 = 'B' f2 = '5' INTO wa.
Cont..
Work area wa
Subroutines
TYPES: BEGIN OF LINE, COL1, COL2, END OF LINE. DATA: WA TYPE LINE, ITAB TYPE HASHED TABLE OF LINE WITH UNIQUE KEY COL1, KEY(4) VALUE 'COL1'. WA-COL1 = 'X'. INSERT WA INTO TABLE ITAB. WA-COL1 = 'Y'. INSERT WA INTO TABLE ITAB. PERFORM DEMO USING ITAB. FORM DEMO USING P TYPE ANY TABLE. DATA: T_WA TYPE LINE. LOCAL VARIABLE FOR SUBROUTINE. READ TABLE P WITH TABLE KEY (KEY) = 'X' INTO WA. WRITE:/ T_WA-COL1. ENDFORM.
Subroutines
Data: begin of itab occurs, matnr like mara-matnr, mtart like mara-mtart, meins like mara-meins, End of itab. Perform get_data. Perform download_data. Form get_data. Select matnr mtart meins into table itab from mara up to 50 rows. Endform. Form download_data. CALL FUNCTION 'GUI_DOWNLOAD' EXPORTING FILENAME = 'c:\mara.txt' FILETYPE = 'ASC' TABLES DATA_TAB = itab. Endform.
India SAP CoE, Slide 81
Cont..
Catch - Endcatch
To code the first part of a CATCHENDCATCH block it is necessary to code CATCH SYSTEM EXCEPTIONS and specify one of the following: Error Class Specific error ID OTHERS, which traps all catchable runtime errors
DATA: [..] CATCH SYSTEM-EXCEPTIONS CONVERSION_ERRORS = 1. [..] MOVE char TO int. MOVE keyword to trigger CATCH [..] ENDCATCH. int type I, char(3) type C value ABC.
Debugger
Execute Run Completely Break Points Single Step
Variables
India SAP CoE, Slide 83
Debugger
Fields Table
Cont..
The scrollable field display contains the contents of up to eight fields. The contents of the three most important system fields are always displayed. This is the default display mode in the Debugger. See also Processing Fields Displays the contents of an internal table. This mode allows you to display and edit the entries in an internal table. See also Processing Internal Tables A scrollable display containing up to 30 breakpoints. Next to each breakpoint is a counter. You can also delete breakpoints in this display. See also Managing Dynamic Breakpoints You can set a watchpoint for a field so that the program is interrupted whenever the value of that field changes. This display mode contains a list of Watchpoints, the fields and programs to which they are assigned, the current values of the fields, and the conditions upon which the watchpoint is activated. See also Setting Watchpoints This mode displays the current sequence of events, and the sequence of calls up to the current breakpoint. The last active call is displayed at the top of the list; previous calls are listed in reverse chronological order. When an event (for example, START-OF-SELECTION) concludes, it is deleted from the display. This mode displays the structure of the program. It lists its events, subroutines, and modules, and shows which sections belong to which events. It also displays the section currently being processed. This mode displays the current Debugger settings. You can change the settings by selecting or deselecting various options. For further information, refer to Settings and Warnings
Breakpoints
Watchpoints
Calls
Overview
Settings
Releasing Request
Releasing Your Transport Request SE09
Enter Your Login ID and view the Modifiable Requests Select Your Request and click on Release Directly.
Demonstration
Exercises HelpMe
5
India SAP CoE, Slide 86
Exercises - 1
Read a set of results from table EKPO. Create a selection screen with an input field for EKPO-EBELN (Document Number). Define a structure as a work area by referring to your table EKPO. Program a SELECT loop that reads the data specified by the user and places it in your work area. Using the WRITE statement within the SELECT loop, display the following fields: EBELP Item Number of Purchasing Document MATNR Material Number LGORT Storage Location MATKL Material Group MENGE Purchase order quantity MEINS Order Unit NETPR Net price To generate a line feed, precede the data object you want to display with the / character.Example:WRITE : / wa_EKPO-EBELP,
Exercises - 2
Create a list of all FI Documents between the dates entered by the user. Create a selection screen with an input field for BKPF-BUDAT (Document Date). Select BELNR (Document Number), BUKRS (Company Code) and GJAHR (Fiscal Year) from the table BKPF and correspondingly select BUZEI (Line item number), DMBTR (Amount). Within the loop, avail the vendor / customer a discount of 10% on DMBTR using the corresponding field of the work area. Append your work area to the internal table. Sort the internal table according to the net price. Display the following fields: BELNR Document Number BUKRS Company Code GJAHR Fiscal Year BUDAT Document Date BUZEI Document Item Number DMBTR Amount
Exercises - 3
Create a tabulated list of Vendors entered by the user. Create a selection screen with an input field for LFA1-LIFNR (Vendor). Select Vendors from the table LIFNR from the selection-screen. Display the list of vendors selected on the basic list. If the User chooses a particular Vendor Display this contact details with a HOTSPOT on his Name on a detailed list. If the user click in this hotspot call the transaction FBL2N (Vendor Balance) with the current fiscal year and skip the initial screen.
Demonstration
Exercises HelpMe
5
India SAP CoE, Slide 90
HelpMe
Additional Info
Use the below link for complete details on ABAP.
http://help.sap.com/saphelp_47x200/helpdata/en/d3/2e974d35c511d 1829f0000e829fbfe/frameset.htm