2007 Oct 05 6:08 AM
hi to all experts,
what is function module for calling pop up box for showing the output of report.
or
how to design a box with the help of coding.
please give me sample code.
thanks in advance and reward also.
regard :
deep.
2007 Oct 05 6:33 AM
hi
execute the below code
&----
*& Report ZPRG8 *
*& *
&----
*& *
*& *
&----
REPORT ZPRG8 .
TABLES: LFA1, EKKO, EKPO.
SELECT-OPTIONS: S_LIFNR FOR LFA1-LIFNR.
DATA: BEGIN OF ITAB OCCURS 0,
LIFNR LIKE LFA1-LIFNR,
NAME1 LIKE LFA1-NAME1,
END OF ITAB.
DATA: BEGIN OF JTAB OCCURS 0,
EBELN LIKE EKKO-EBELN,
AEDAT LIKE EKKO-AEDAT,
END OF JTAB.
DATA: BEGIN OF KTAB OCCURS 0,
EBELP LIKE EKPO-EBELP,
MATNR LIKE EKPO-MATNR,
END OF KTAB.
TYPE-POOLS:SLIS.
DATA: REPID LIKE SY-REPID,
F_LFA11 TYPE SLIS_T_FIELDCAT_ALV,
F_LFA1 TYPE SLIS_FIELDCAT_ALV,
F_EKKO1 TYPE SLIS_T_FIELDCAT_ALV,
F_EKKO TYPE SLIS_FIELDCAT_ALV,
F_EKPO1 TYPE SLIS_T_FIELDCAT_ALV,
F_EKPO TYPE SLIS_FIELDCAT_ALV,
I_EVENTS TYPE SLIS_T_EVENT,
S_EVENTS TYPE SLIS_ALV_EVENT.
REPID = SY-REPID.
PERFORM COL_HEAD.
START-OF-SELECTION.
SELECT LIFNR NAME1 FROM LFA1 INTO TABLE ITAB WHERE LIFNR IN S_LIFNR.
CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
EXPORTING
I_INTERFACE_CHECK = ' '
I_BYPASSING_BUFFER =
I_BUFFER_ACTIVE = ' '
I_CALLBACK_PROGRAM = sy-repid
I_CALLBACK_PF_STATUS_SET = ' '
I_CALLBACK_USER_COMMAND = ' '
I_STRUCTURE_NAME =
IS_LAYOUT =
IT_FIELDCAT = F_LFA11
IT_EXCLUDING =
IT_SPECIAL_GROUPS =
IT_SORT =
IT_FILTER =
IS_SEL_HIDE =
I_DEFAULT = 'X'
I_SAVE = ' '
IS_VARIANT =
IT_EVENTS = I_EVENTS
IT_EVENT_EXIT =
IS_PRINT =
IS_REPREP_ID =
I_SCREEN_START_COLUMN = 0
I_SCREEN_START_LINE = 0
I_SCREEN_END_COLUMN = 0
I_SCREEN_END_LINE = 0
IMPORTING
E_EXIT_CAUSED_BY_CALLER =
ES_EXIT_CAUSED_BY_USER =
TABLES
T_OUTTAB = ITAB
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2
.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
FORM COL_HEAD.
F_LFA1-FIELDNAME = 'LIFNR'.
*F_LFA1-TABNAME = 'ITAB'.
F_LFA1-REF_TABNAME = 'LFA1'.
F_LFA1-REF_FIELDNAME = 'LIFNR'.
APPEND F_LFA1 TO F_LFA11.
F_LFA1-FIELDNAME = 'NAME1'.
*F_LFA1-TABNAME = 'ITAB'.
F_LFA1-REF_TABNAME = 'LFA1'.
F_LFA1-REF_FIELDNAME = 'NAME1'.
APPEND F_LFA1 TO F_LFA11.
F_EKKO-FIELDNAME = 'EBELN'.
*F_EKKO-TABNAME = 'JTAB'.
F_EKKO-REF_TABNAME = 'EKKO'.
F_EKKO-REF_FIELDNAME = 'EBELN'.
APPEND F_EKKO TO F_EKKO1.
F_EKKO-FIELDNAME = 'AEDAT'.
*F_EKKO-TABNAME = 'JTAB'.
F_EKKO-REF_TABNAME = 'EKKO'.
F_EKKO-REF_FIELDNAME = 'AEDAT'.
APPEND F_EKKO TO F_EKKO1.
F_EKPO-FIELDNAME = 'EBELP'.
*F_EKPO-TABNAME = 'KTAB'.
F_EKPO-REF_TABNAME = 'EKPO'.
F_EKPO-REF_FIELDNAME = 'EBELP'.
APPEND F_EKPO TO F_EKPO1.
F_EKPO-FIELDNAME = 'MATNR'.
*F_EKPO-TABNAME = 'KTAB'.
F_EKPO-REF_TABNAME = 'EKPO'.
F_EKPO-REF_FIELDNAME = 'MATNR'.
APPEND F_EKPO TO F_EKPO1.
S_EVENTS-NAME = 'USER_COMMAND'.
S_EVENTS-FORM = 'VAL'.
APPEND S_EVENTS TO I_EVENTS.
ENDFORM.
FORM VAL USING USER_COMMAND LIKE SY-UCOMM SEL TYPE SLIS_SELFIELD.
DATA: V_LIFNR(10) TYPE N,
V_EBELN(10) TYPE N,
V_MATNR(10) TYPE C.
IF SEL-FIELDNAME = 'LIFNR'.
V_LIFNR = SEL-VALUE.
SELECT EBELN AEDAT FROM EKKO INTO TABLE JTAB WHERE LIFNR = V_LIFNR.
CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = REPID
IT_FIELDCAT = F_EKKO1
IT_EVENTS = I_EVENTS
TABLES
T_OUTTAB = JTAB.
ENDIF.
IF SEL-FIELDNAME = 'EBELN'.
V_EBELN = SEL-VALUE.
SELECT EBELP MATNR FROM EKPO INTO TABLE KTAB WHERE EBELN = V_EBELN.
CALL FUNCTION 'REUSE_ALV_POPUP_TO_SELECT'
EXPORTING
I_TITLE = 'ITEM DETAILS'
I_SCREEN_START_COLUMN = 10
I_SCREEN_START_LINE = 10
I_SCREEN_END_COLUMN = 36
I_SCREEN_END_LINE = 16
I_TABNAME = 'EKPO'
IT_FIELDCAT = F_EKPO1
I_CALLBACK_PROGRAM = REPID
I_CALLBACK_USER_COMMAND =
IS_PRIVATE =
IMPORTING
ES_SELFIELD = SEL
E_EXIT =
TABLES
T_OUTTAB = KTAB.
ENDIF.
IF SEL-FIELDNAME = 'MATNR'.
V_MATNR = SEL-VALUE.
SET PARAMETER ID 'MAT' FIELD V_MATNR.
CALL TRANSACTION 'MM02' AND SKIP FIRST SCREEN.
ENDIF.
ENDFORM.
regards
Nagesh.Paruchuri
hi to all experts,
what is function module for calling pop up box for showing the output of report.
or
how to design a box with the help of coding.
please give me sample code.
thanks in advance and reward also.
regard :
deep.
2007 Oct 05 6:16 AM
Hi
There are lot of fun modules for calling the Popup box
in SE37 enter popupconfirm
you will get lot of them
use one
POPUP_TO_CONFIRM_Values
You can call your own screen using the command
CALL SCREEN <no> Starting At 5 5 ending at 45 67
Press F1 on CALL Screen and use the correct syntax
Regards
Anji
2007 Oct 05 6:18 AM
2007 Oct 05 6:21 AM
CALL FUNCTION 'POPUP_WITH_TABLE_DISPLAY_OK'
EXPORTING
endpos_col = 20
endpos_row = 10
startpos_col = 1
startpos_row = 1
titletext = 'REPORT OUTPUT'
IMPORTING
CHOISE =
tables
valuetab = itab
EXCEPTIONS
BREAK_OFF = 1
OTHERS = 2
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
itab is table containing data to be output...
plz reward points if dis helps
2007 Oct 05 6:24 AM
hI
FM's :
POPUP_TO_CONFIRM_WITH_MESSAGE
POPUP_TO_CONFIRM_STEP
T-CODE - SE37
check
POPUP_TO_CONFIRM_*
<b>REWARD IF USEFULL</b>
2007 Oct 05 6:24 AM
C14A_POPUP_LIST_DISPLAY
try using this function module.
regards..
2007 Oct 05 6:33 AM
hi
execute the below code
&----
*& Report ZPRG8 *
*& *
&----
*& *
*& *
&----
REPORT ZPRG8 .
TABLES: LFA1, EKKO, EKPO.
SELECT-OPTIONS: S_LIFNR FOR LFA1-LIFNR.
DATA: BEGIN OF ITAB OCCURS 0,
LIFNR LIKE LFA1-LIFNR,
NAME1 LIKE LFA1-NAME1,
END OF ITAB.
DATA: BEGIN OF JTAB OCCURS 0,
EBELN LIKE EKKO-EBELN,
AEDAT LIKE EKKO-AEDAT,
END OF JTAB.
DATA: BEGIN OF KTAB OCCURS 0,
EBELP LIKE EKPO-EBELP,
MATNR LIKE EKPO-MATNR,
END OF KTAB.
TYPE-POOLS:SLIS.
DATA: REPID LIKE SY-REPID,
F_LFA11 TYPE SLIS_T_FIELDCAT_ALV,
F_LFA1 TYPE SLIS_FIELDCAT_ALV,
F_EKKO1 TYPE SLIS_T_FIELDCAT_ALV,
F_EKKO TYPE SLIS_FIELDCAT_ALV,
F_EKPO1 TYPE SLIS_T_FIELDCAT_ALV,
F_EKPO TYPE SLIS_FIELDCAT_ALV,
I_EVENTS TYPE SLIS_T_EVENT,
S_EVENTS TYPE SLIS_ALV_EVENT.
REPID = SY-REPID.
PERFORM COL_HEAD.
START-OF-SELECTION.
SELECT LIFNR NAME1 FROM LFA1 INTO TABLE ITAB WHERE LIFNR IN S_LIFNR.
CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
EXPORTING
I_INTERFACE_CHECK = ' '
I_BYPASSING_BUFFER =
I_BUFFER_ACTIVE = ' '
I_CALLBACK_PROGRAM = sy-repid
I_CALLBACK_PF_STATUS_SET = ' '
I_CALLBACK_USER_COMMAND = ' '
I_STRUCTURE_NAME =
IS_LAYOUT =
IT_FIELDCAT = F_LFA11
IT_EXCLUDING =
IT_SPECIAL_GROUPS =
IT_SORT =
IT_FILTER =
IS_SEL_HIDE =
I_DEFAULT = 'X'
I_SAVE = ' '
IS_VARIANT =
IT_EVENTS = I_EVENTS
IT_EVENT_EXIT =
IS_PRINT =
IS_REPREP_ID =
I_SCREEN_START_COLUMN = 0
I_SCREEN_START_LINE = 0
I_SCREEN_END_COLUMN = 0
I_SCREEN_END_LINE = 0
IMPORTING
E_EXIT_CAUSED_BY_CALLER =
ES_EXIT_CAUSED_BY_USER =
TABLES
T_OUTTAB = ITAB
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2
.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
FORM COL_HEAD.
F_LFA1-FIELDNAME = 'LIFNR'.
*F_LFA1-TABNAME = 'ITAB'.
F_LFA1-REF_TABNAME = 'LFA1'.
F_LFA1-REF_FIELDNAME = 'LIFNR'.
APPEND F_LFA1 TO F_LFA11.
F_LFA1-FIELDNAME = 'NAME1'.
*F_LFA1-TABNAME = 'ITAB'.
F_LFA1-REF_TABNAME = 'LFA1'.
F_LFA1-REF_FIELDNAME = 'NAME1'.
APPEND F_LFA1 TO F_LFA11.
F_EKKO-FIELDNAME = 'EBELN'.
*F_EKKO-TABNAME = 'JTAB'.
F_EKKO-REF_TABNAME = 'EKKO'.
F_EKKO-REF_FIELDNAME = 'EBELN'.
APPEND F_EKKO TO F_EKKO1.
F_EKKO-FIELDNAME = 'AEDAT'.
*F_EKKO-TABNAME = 'JTAB'.
F_EKKO-REF_TABNAME = 'EKKO'.
F_EKKO-REF_FIELDNAME = 'AEDAT'.
APPEND F_EKKO TO F_EKKO1.
F_EKPO-FIELDNAME = 'EBELP'.
*F_EKPO-TABNAME = 'KTAB'.
F_EKPO-REF_TABNAME = 'EKPO'.
F_EKPO-REF_FIELDNAME = 'EBELP'.
APPEND F_EKPO TO F_EKPO1.
F_EKPO-FIELDNAME = 'MATNR'.
*F_EKPO-TABNAME = 'KTAB'.
F_EKPO-REF_TABNAME = 'EKPO'.
F_EKPO-REF_FIELDNAME = 'MATNR'.
APPEND F_EKPO TO F_EKPO1.
S_EVENTS-NAME = 'USER_COMMAND'.
S_EVENTS-FORM = 'VAL'.
APPEND S_EVENTS TO I_EVENTS.
ENDFORM.
FORM VAL USING USER_COMMAND LIKE SY-UCOMM SEL TYPE SLIS_SELFIELD.
DATA: V_LIFNR(10) TYPE N,
V_EBELN(10) TYPE N,
V_MATNR(10) TYPE C.
IF SEL-FIELDNAME = 'LIFNR'.
V_LIFNR = SEL-VALUE.
SELECT EBELN AEDAT FROM EKKO INTO TABLE JTAB WHERE LIFNR = V_LIFNR.
CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = REPID
IT_FIELDCAT = F_EKKO1
IT_EVENTS = I_EVENTS
TABLES
T_OUTTAB = JTAB.
ENDIF.
IF SEL-FIELDNAME = 'EBELN'.
V_EBELN = SEL-VALUE.
SELECT EBELP MATNR FROM EKPO INTO TABLE KTAB WHERE EBELN = V_EBELN.
CALL FUNCTION 'REUSE_ALV_POPUP_TO_SELECT'
EXPORTING
I_TITLE = 'ITEM DETAILS'
I_SCREEN_START_COLUMN = 10
I_SCREEN_START_LINE = 10
I_SCREEN_END_COLUMN = 36
I_SCREEN_END_LINE = 16
I_TABNAME = 'EKPO'
IT_FIELDCAT = F_EKPO1
I_CALLBACK_PROGRAM = REPID
I_CALLBACK_USER_COMMAND =
IS_PRIVATE =
IMPORTING
ES_SELFIELD = SEL
E_EXIT =
TABLES
T_OUTTAB = KTAB.
ENDIF.
IF SEL-FIELDNAME = 'MATNR'.
V_MATNR = SEL-VALUE.
SET PARAMETER ID 'MAT' FIELD V_MATNR.
CALL TRANSACTION 'MM02' AND SKIP FIRST SCREEN.
ENDIF.
ENDFORM.
regards
Nagesh.Paruchuri
2007 Oct 05 8:28 AM
hi paruchuri nageswarrao
thanks a lot for given the code.
bcoz my other problem is also solved.
again thanks a lot and giving full point.
Regard : Deep.
2007 Oct 06 6:38 AM
dear paruchuri nageswarrao ,
i have one doubt that when i click on MATNR field at pop up box and it goes to the
MM02.
my doubt is that where the clicked value is stored.
please clear the doubt
i am waiting for responce.
Regard : Deep
2007 Oct 06 8:58 AM
hi deep sama
when u clicked on matnr
this value stores in sap memory
to store values in sap memory u have to use set/get parametrs
to store values in abap memory u have to use import/export parameters
sap memory is available between external sessions
abap memory is available between internal sessions only
reward if u find use ful
regards
Nagesh.Paruchuri
| User | Count |
|---|---|
| 6 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |