Professional Documents
Culture Documents
A Classical Report 1 With All EVENTS As Per Real Time Programming
A Classical Report 1 With All EVENTS As Per Real Time Programming
B A P&W E B D Y N P R O A B A P @ A R J U N
IGROWSOFT
:
:
:
:
:
********************SELECTION SCREEN
PARAMETERS : P_LAND1 TYPE KNA1-LAND1 .
PARAMETERS : P_FNAME TYPE RLGRAP-FILENAME .
PARAMETERS : P_DLOAD AS CHECKBOX .
INITIALIZATION .
PERFORM INIT_VARIBALES.
*AT SELECTION-SCREEN OUTPUT .
AT SELECTION-SCREEN ON P_LAND1.
PERFORM VALIDATE_LAND1 .
AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FNAME.
PERFORM GET_FILE_NAME .
*
AT SELECTION-SCREEN ON HELP-REQUEST FOR P_FNAME .
PERFORM GET_HELP .
*AT SELECTION-SCREEN .
START-OF-SELECTION .
PERFORM GET_DATA .
END-OF-SELECTION .
Page 1
B A P&W E B D Y N P R O A B A P @ A R J U N
IGROWSOFT
IF P_DLOAD = 'X' .
PERFORM DOWNLOAD_DATA .
ENDIF .
PERFORM DISPLAY_DATA .
TOP-OF-PAGE .
PERFORM DISPLAY_HEADING .
END-OF-PAGE .
PERFORM DISPLAY_FOOTER .
*&---------------------------------------------------------------------*
*&
Form INIT_VARIBALES
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM INIT_VARIBALES .
V_TITLE = 'CUSTOMER MASTER REPORT' .
P_LAND1 = 'DE' .
ENDFORM.
" INIT_VARIBALES
*&---------------------------------------------------------------------*
*&
Form VALIDATE_LAND1
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM VALIDATE_LAND1 .
SELECT LAND1
FROM KNA1
INTO V_LAND1
UP TO 1 ROWS
WHERE LAND1 = P_LAND1.
ENDSELECT .
IF SY-SUBRC <> 0 .
MESSAGE 'INVALID COUNTRY CODE' TYPE 'E' .
ENDIF .
ENDFORM.
" VALIDATE_LAND1
Page 2
B A P&W E B D Y N P R O A B A P @ A R J U N
IGROWSOFT
*&---------------------------------------------------------------------*
*&
Form GET_DATA
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM GET_DATA .
SELECT KUNNR LAND1 NAME1 ORT01
FROM KNA1
INTO TABLE I_KNA1
WHERE LAND1 = P_LAND1 .
IF SY-SUBRC <> 0 .
MESSAGE 'NO DATA FOUND' TYPE 'I' .
ENDIF .
ENDFORM.
" GET_DATA
*&---------------------------------------------------------------------*
*&
Form DISPLAY_HEADING
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM DISPLAY_HEADING .
WRITE : / SY-ULINE .
WRITE : /45 V_TITLE COLOR 5 .
WRITE : / SY-ULINE .
ENDFORM.
" DISPLAY_HEADING
*&---------------------------------------------------------------------*
*&
Form DISPLAY_FOOTER
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM DISPLAY_FOOTER .
WRITE : / SY-ULINE .
WRITE : /45 'IBM INDIA PVT.LTD' COLOR 5 .
WRITE : / SY-ULINE .
ENDFORM.
" DISPLAY_FOOTER
Page 3
B A P&W E B D Y N P R O A B A P @ A R J U N
IGROWSOFT
*&---------------------------------------------------------------------*
*&
Form DISPLAY_DATA
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM DISPLAY_DATA .
LOOP AT I_KNA1 INTO WA_KNA1 .
WRITE : / WA_KNA1-KUNNR , WA_KNA1-LAND1 , WA_KNA1-NAME1 , WA_KNA1ORT01 .
ENDLOOP .
ENDFORM.
" DISPLAY_DATA
*&---------------------------------------------------------------------*
*&
Form DOWNLOAD_DATA
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM DOWNLOAD_DATA .
V_FNAME = P_FNAME .
CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
FILENAME
= V_FNAME "'C:\KNA1.TXT'
FILETYPE
= 'DAT' "ASC MEANS NOTEPAD FILE/DAT MEASN EXCEL F
ILE
WRITE_FIELD_SEPARATOR = 'X'
TABLES
DATA_TAB
= I_KNA1.
.
IF SY-SUBRC = 0.
MESSAGE 'DATA IS SUCCESSFULLY DOWNLOADED' TYPE 'I'.
ENDIF.
ENDFORM.
" DOWNLOAD_DATA
Page 4
B A P&W E B D Y N P R O A B A P @ A R J U N
IGROWSOFT
*&---------------------------------------------------------------------*
*&
Form GET_FILE_NAME
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM GET_FILE_NAME .
CALL FUNCTION 'KD_GET_FILENAME_ON_F4'
EXPORTING
PROGRAM_NAME = SYST-REPID
DYNPRO_NUMBER = SYST-DYNNR
FIELD_NAME
= 'P_FNAME'
CHANGING
FILE_NAME
= P_FNAME.
IF SY-SUBRC <> 0.
ENDIF.
ENDFORM.
" GET_FILE_NAME
*&---------------------------------------------------------------------*
*&
Form GET_HELP
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM GET_HELP .
MESSAGE 'PLEASE CLCIIK ON F4 FOR FILE NAME' TYPE 'I'.
ENDFORM.
" GET_HELP
Page 5
B A P&W E B D Y N P R O A B A P @ A R J U N
IGROWSOFT
********************SELECTION SCREEM
SELECT-OPTIONS : SO_MATNR FOR MARA-MATNR .
PARAMETERS : P_MTART TYPE MARA-MTART .
PARAMETERS : P_FNAME TYPE RLGRAP-FILENAME .
PARAMETERS : P_DLOAD AS CHECKBOX .
INITIALIZATION .
PERFORM INIT_VARIBALES.
*AT SELECTION-SCREEN OUTPUT .
AT SELECTION-SCREEN ON P_MTART.
PERFORM VALIDATE_MTART .
AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FNAME.
PERFORM GET_FILE_NAME .
*
AT SELECTION-SCREEN ON HELP-REQUEST FOR P_FNAME .
PERFORM GET_HELP .
AT SELECTION-SCREEN .
PERFORM VALIDATE_MTART .
Page 6
B A P&W E B D Y N P R O A B A P @ A R J U N
IGROWSOFT
START-OF-SELECTION .
PERFORM GET_DATA .
END-OF-SELECTION .
IF P_DLOAD = 'X' .
PERFORM DOWNLOAD_DATA .
ENDIF .
PERFORM DISPLAY_DATA .
TOP-OF-PAGE .
PERFORM DISPLAY_HEADING .
END-OF-PAGE .
PERFORM DISPLAY_FOOTER .
*&---------------------------------------------------------------------*
*&
Form INIT_VARIBALES
*&---------------------------------------------------------------------*
*
text
*--------------------------------------------------------------------- -*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM INIT_VARIBALES .
V_TITLE = 'MATERIAL MASTER REPORT' .
P_MTART = 'FERT' .
SO_MATNR-SIGN = 'I' .
SO_MATNR-OPTION = 'BT' .
SO_MATNR-LOW = '1' .
SO_MATNR-HIGH = '1000' .
APPEND SO_MATNR .
ENDFORM.
" INIT_VARIBALES
Page 7
B A P&W E B D Y N P R O A B A P @ A R J U N
IGROWSOFT
*&---------------------------------------------------------------------*
*&
Form VALIDATE_LAND1
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM VALIDATE_MTART .
SELECT MTART
FROM MARA
INTO V_MTART
UP TO 1 ROWS
WHERE MTART = P_MTART.
ENDSELECT .
IF SY-SUBRC <> 0 .
MESSAGE 'INVALID MATERIAL TYPE' TYPE 'E' .
ENDIF .
ENDFORM.
" VALIDATE_LAND1
*&---------------------------------------------------------------------*
*&
Form GET_DATA
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM GET_DATA .
SELECT MATNR MTART MBRSH MEINS
FROM MARA
INTO TABLE I_MARA
WHERE MATNR IN SO_MATNR
AND
MTART = P_MTART .
IF SY-SUBRC <> 0 .
MESSAGE 'NO DATA FOUND' TYPE 'I' .
ENDIF .
ENDFORM.
" GET_DATA
Page 8
B A P&W E B D Y N P R O A B A P @ A R J U N
IGROWSOFT
*&---------------------------------------------------------------------*
*&
Form DISPLAY_HEADING
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM DISPLAY_HEADING .
WRITE : / SY-ULINE .
WRITE : /45 V_TITLE COLOR 5 .
WRITE : / SY-ULINE .
ENDFORM.
" DISPLAY_HEADING
*&---------------------------------------------------------------------*
*&
Form DISPLAY_FOOTER
*&---------------------------------------------------------------------*
*
text
*--------------------------------------------------------------------- -*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM DISPLAY_FOOTER .
WRITE : / SY-ULINE .
WRITE : /30 'ALL RIGHTS RESERVED TO OUR COMPNAY ARJUN INDUSTRIES INDIA PVT
.LTD' COLOR 5 .
WRITE : / SY-ULINE .
ENDFORM.
" DISPLAY_FOOTER
*&---------------------------------------------------------------------*
*&
Form DISPLAY_DATA
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM DISPLAY_DATA .
LOOP AT I_MARA INTO WA_MARA .
WRITE : / WA_MARA-MATNR , WA_MARA-MTART , WA_MARA-MBRSH , WA_MARAMEINS .
ENDLOOP .
ENDFORM.
" DISPLAY_DATA
Page 9
B A P&W E B D Y N P R O A B A P @ A R J U N
IGROWSOFT
*&---------------------------------------------------------------------*
*&
Form DOWNLOAD_DATA
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM DOWNLOAD_DATA .
V_FNAME = P_FNAME .
CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
FILENAME
= V_FNAME "'C:\MARA.TXT'
FILETYPE
= 'DAT' "ASC MEANS NOTEPAD FILE/DAT MEANS EXCEL
WRITE_FIELD_SEPARATOR = 'X'
TABLES
DATA_TAB
= I_MARA.
IF SY-SUBRC = 0.
MESSAGE 'DATA IS SUCCESSFULLY DOWNLOADED' TYPE 'I'.
ENDIF.
ENDFORM.
" DOWNLOAD_DATA
*&---------------------------------------------------------------------*
*&
Form GET_FILE_NAME
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM GET_FILE_NAME .
CALL FUNCTION 'KD_GET_FILENAME_ON_F4'
EXPORTING
PROGRAM_NAME = SYST-REPID
DYNPRO_NUMBER = SYST-DYNNR
FIELD_NAME
= 'P_FNAME'
CHANGING
FILE_NAME
= P_FNAME.
IF SY-SUBRC <> 0.
ENDIF.
ENDFORM.
" GET_FILE_NAME
Page 10
B A P&W E B D Y N P R O A B A P @ A R J U N
IGROWSOFT
*&---------------------------------------------------------------------*
*&
Form GET_HELP
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM GET_HELP .
MESSAGE 'PLEASE CLCIIK ON F4 FOR FILE NAME' TYPE 'I'.
ENDFORM.
" GET_HELP
Save->act->Test.
The Selection-Screen will be displayed with default values which is our requirement.
Page 11
B A P&W E B D Y N P R O A B A P @ A R J U N
IGROWSOFT
TYPE
TYPE
TYPE
TYPE
KNA1-KUNNR
KNA1-NAME1
LFA1-LIFNR
LFA1-NAME1
MODIF
MODIF
MODIF
MODIF
ID
ID
ID
ID
AAA,
AAA,
BBB,
BBB .
Save->Act->Test
Page 12
B A P&W E B D Y N P R O A B A P @ A R J U N
IGROWSOFT
Page 13
B A P&W E B D Y N P R O A B A P @ A R J U N
IGROWSOFT
SELECT-OPTIONS : SO_VBELN
PARAMETERS : P_VKORG TYPE
PARAMETERS : P_VTWEG TYPE
PARAMETERS : P_SPART TYPE
FOR VBAK-VBELN .
VBAK-VKORG .
VBAK-VTWEG.
VBAK-SPART .
AT SELECTION-SCREEN ON P_VKORG .
PERFORM VALIDATE_VKORG .
AT SELECTION-SCREEN ON P_VTWEG .
PERFORM VALIDATE_VTWEG .
AT SELECTION-SCREEN ON P_SPART .
PERFORM VALIDATE_SPART .
START-OF-SELECTION .
END-OF-SELECTION .
Page 14
B A P&W E B D Y N P R O A B A P @ A R J U N
IGROWSOFT
*&---------------------------------------------------------------------*
*&
Form VALIDATE_VKORG
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM VALIDATE_VKORG .
SELECT VKORG
FROM VBAK
INTO V_VKORG
UP TO 1 ROWS
WHERE VKORG = P_VKORG.
ENDSELECT .
IF SY-SUBRC <> 0 .
MESSAGE 'INVALID SALES ORG' TYPE 'E' .
ENDIF .
ENDFORM.
" VALIDATE_VKORG
*&---------------------------------------------------------------------*
*&
Form VALIDATE_VTWEG
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM VALIDATE_VTWEG .
SELECT VTWEG
FROM VBAK
INTO V_VTWEG
UP TO 1 ROWS
WHERE VTWEG = P_VTWEG.
ENDSELECT .
IF SY-SUBRC <> 0 .
MESSAGE 'INVALID DIST.CHANNEL' TYPE 'E' .
ENDIF .
ENDFORM.
" VALIDATE_VTWEG
Page 15
B A P&W E B D Y N P R O A B A P @ A R J U N
IGROWSOFT
*&---------------------------------------------------------------------*
*&
Form VALIDATE_SPART
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM VALIDATE_SPART .
SELECT SPART
FROM VBAK
INTO V_SPART
UP TO 1 ROWS
WHERE SPART = P_SPART.
.
ENDSELECT .
IF SY-SUBRC <> 0 .
MESSAGE 'INVALID DIVISION' TYPE 'E' .
ENDIF .
ENDFORM.
" VALIDATE_SPART
Save->Act->Test
Using AT SS for Multiple Fields Validation
Same prog as above with below change
AT SELECTION-SCREEN .
PERFORM VALIDATE_VKORG .
PERFORM VALIDATE_VTWEG .
PERFORM VALIDATE_SPART .
START-OF-SELECTION .
END-OF-SELECTION .
Page 16