Classical Report Requirement -2
Requirement 2: Display the LFA1 table (Vendor Master Data) with the fields LIFNR (Vendor Account Number), NAME1 (Name), ORT01 (City), PSTLZ (Postal Code), where the range of LIFNR is between 1000 and 3000.
The selection screen should look like the below-
And if the values entered are below 1000 or greater than 3000, it should display the message as "PLEASE ENTER VALID VALUES" as below-
Classical Report for the above requirement -
REPORT YCLASSICAL_LFA1 NO STANDARD PAGE HEADING.
* NAME OF THE TABLE OR TABLES YOU WANT IN THE PROGRAM
TABLES: LFA1.
*SELECTION SCREEN
* SELECT-OPTIONS: TO SELECT A RANGE BETWEEN TWO VALUE.
* L_LIFNR HERE IS THE VARIABLE TO STORE THE RANGE.
SELECTION-SCREEN: BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-000.
SELECT-OPTIONS: L_LIFNR FOR LFA1-LIFNR.
SELECTION-SCREEN: END OF BLOCK B1.
*CREATING STRUCTURE FOR LFA1 TABLE WITH NAME TY_STR.
TYPES: BEGIN OF TY_STR,
LIFNR TYPE LIFNR,
NAME1 TYPE NAME1_GP,
ORT01 TYPE ORT01_GP,
PSTLZ TYPE PSTLZ,
END OF TY_STR.
*CREATING INTERNAL TABLE WITH NAME IT AND WORK AREA WITH WA.
DATA: IT TYPE TABLE OF TY_STR,
WA TYPE TY_STR.
*PERFORMING INITIALIZATION
* TO PRESENT THE VALUES BY DEFAULT IN SELECTION-SCREEN.
INITIALIZATION.
L_LIFNR-SIGN = 'I'.
L_LIFNR-OPTION = 'BT'.
L_LIFNR-LOW = 1000.
L_LIFNR-HIGH = 3000.
APPEND L_LIFNR.
*CONDITION TO CHECK IF USER ALTERS DEFAULT VALUE AND ENTERS WRONG VALUE
AT SELECTION-SCREEN ON L_LIFNR.
IF L_LIFNR-LOW < 1000 OR L_LIFNR-HIGH > 3000.
MESSAGE 'PLEASE ENTER VALID VALUES' TYPE 'E'.
ENDIF.
* TO GET DATA FROM THE DATABASE.
START-OF-SELECTION.
SELECT LIFNR NAME1 ORT01 PSTLZ
FROM LFA1 INTO TABLE IT
WHERE LIFNR IN L_LIFNR.
END-OF-SELECTION.
WRITE:/ 'LIFNR' COLOR 5,
10 'NAME1' COLOR 5,
40 'ORT01' COLOR 5,
60 'PSTLZ' COLOR 5.
ULINE.
LOOP AT IT INTO WA.
WRITE:/ WA-LIFNR,
10 WA-NAME1,
40 WA-ORT01,
60 WA-PSTLZ.
ENDLOOP.
* TO GIVE THE HEADING AT THE TOP OF PAGE.
TOP-OF-PAGE.
WRITE:/20 'CLASSICAL REPORT - LFA1 TABLE' COLOR 4.
ULINE.
END-OF-PAGE.
Output-
Comments
Post a Comment