2008 Sep 18 7:48 AM
Dear Gurus ,
I want to display a popup window after some abap write commands .
But i want to display it AFTER and not before ...
Can i do it ....
Look my code ..
REPORT YAPALLAGI LINE-SIZE 80 LINE-COUNT 65
NO STANDARD PAGE HEADING.
TABLES: LFA1,T001,YAPAL.
DATA: BEGIN OF ITAB_C OCCURS 0,
AR_MITR(10),
NAME(72),
OCCUPA(66),
DOY(71),
ODOS(35),
ARITH(06) ,
CITY(18),
AFM(66),
AFORA(30),
ORIO_VAL(15),
OLD_VAL(15) ,
VAL_1(15) ,
VAL_2(15) ,
VAL_3(15),
VAL_4(15) ,
VAL_5(15),
V_TXT(200),
VAL_TXT(70),
VAL_TXT2(70),
END OF ITAB_C.
DATA: FIRST_TIME TYPE C.
DATA: V_OLD LIKE YAPAL-V_OLD ,
VV LIKE YAPAL-V_OLD ,
VAL_A LIKE YAPAL-V_NEW ,
VAL_B LIKE YAPAL-V_NEW .
*==========================================================
SELECTION-SCREEN SKIP.
PARAMETERS:
P_APALN LIKE YAPAL-APALN OBLIGATORY,
P_MJAHR LIKE YAPAL-MJAHR DEFAULT SY-DATUM(4) OBLIGATORY,
P_LIFNR LIKE LFA1-LIFNR OBLIGATORY
MATCHCODE OBJECT KRED ,
P_VORIO LIKE YAPAL-VORIO ,
P_AR_MIT LIKE YAPAL-AR_MITR ,
P_VAL_N LIKE YAPAL-VAL_N ,
P_VAL_P LIKE YAPAL-VAL_P ,
P_AFORA LIKE YAPAL-AFORA OBLIGATORY ,
P_DDATE LIKE YAPAL-DDATE OBLIGATORY .
SELECTION-SCREEN SKIP.
SELECTION-SCREEN SKIP.
PARAMETERS: P_CHECK AS CHECKBOX DEFAULT 'X'.
AT SELECTION-SCREEN ON EXIT-COMMAND .
IF FIRST_TIME = 'X'.
PERFORM INFORM.
ENDIF.
*==========================================================
INITIALIZATION.
SELECT MAX( APALN ) INTO P_APALN FROM YAPAL WHERE MJAHR = P_MJAHR .
P_APALN = P_APALN + 1.
*==========================================================
START-OF-SELECTION.
SELECT SINGLE * FROM YAPAL WHERE APALN = P_APALN AND
MJAHR = P_MJAHR .
IF SY-SUBRC = 0.
ITAB_C-AR_MITR = YAPAL-AR_MITR.
ITAB_C-NAME = LFA1-NAME1.
ITAB_C-OCCUPA = LFA1-NAME3.
ITAB_C-DOY = LFA1-NAME4.
ITAB_C-ODOS = LFA1-STRAS.
ITAB_C-ARITH = '.'.
ITAB_C-CITY = LFA1-ORT01.
ITAB_C-AFM = LFA1-STCD2.
ITAB_C-AFORA = YAPAL-AFORA.
ITAB_C-ORIO_VAL = YAPAL-VORIO.
WRITE YAPAL-VORIO CURRENCY 'eur' TO ITAB_C-ORIO_VAL.
ITAB_C-OLD_VAL = YAPAL-V_OLD.
WRITE YAPAL-V_OLD CURRENCY 'eur' TO ITAB_C-OLD_VAL.
ITAB_C-VAL_1 = YAPAL-VAL_N.
WRITE YAPAL-VAL_N CURRENCY 'eur' TO ITAB_C-VAL_1.
VV = YAPAL-V_OLD - YAPAL-VAL_N.
WRITE VV CURRENCY 'eur' TO ITAB_C-VAL_2.
ITAB_C-VAL_3 = YAPAL-VAL_P.
WRITE YAPAL-VAL_P CURRENCY 'eur' TO ITAB_C-VAL_3.
VV = YAPAL-V_OLD - YAPAL-VAL_N + YAPAL-VAL_P.
WRITE VV CURRENCY 'eur' TO ITAB_C-VAL_4.
ITAB_C-VAL_5 = YAPAL-V_NEW.
WRITE YAPAL-V_NEW CURRENCY 'eur' TO ITAB_C-VAL_5.
ITAB_C-VAL_TXT = '.'.
ITAB_C-VAL_TXT2 = '.'.
ELSE. "DEN BRIKE IDIO
CLEAR YAPAL.
V_OLD = 0.
SELECT * FROM YAPAL WHERE MJAHR = P_MJAHR.
P_VORIO = YAPAL-VORIO .
V_OLD = V_OLD + YAPAL-VAL_P - YAPAL-VAL_N .
P_AR_MIT = YAPAL-AR_MITR .
ENDSELECT.
CLEAR YAPAL.
SELECT SINGLE * FROM LFA1 WHERE LIFNR = P_LIFNR.
YAPAL-AR_MITR = P_AR_MIT .
YAPAL-MJAHR = P_MJAHR.
YAPAL-APALN = P_APALN.
YAPAL-AFORA = P_AFORA.
YAPAL-LIFNR = LFA1-LIFNR.
YAPAL-DDATE = P_DDATE.
YAPAL-VAL_P = P_VAL_P.
YAPAL-VAL_N = P_VAL_N.
YAPAL-VORIO = P_VORIO.
YAPAL-V_OLD = V_OLD.
VAL_A = YAPAL-V_OLD - YAPAL-VAL_N.
VAL_B = VAL_A + YAPAL-VAL_P.
YAPAL-V_NEW = YAPAL-VORIO - VAL_B.
ITAB_C-AR_MITR = YAPAL-AR_MITR.
ITAB_C-NAME = LFA1-NAME1.
ITAB_C-OCCUPA = LFA1-NAME3.
ITAB_C-DOY = LFA1-NAME4.
ITAB_C-ODOS = LFA1-STRAS.
ITAB_C-ARITH = '.'.
ITAB_C-CITY = LFA1-ORT01.
ITAB_C-AFM = LFA1-STCD2.
ITAB_C-AFORA = YAPAL-AFORA.
ITAB_C-ORIO_VAL = YAPAL-VORIO.
WRITE YAPAL-VORIO CURRENCY 'eur' TO ITAB_C-ORIO_VAL.
ITAB_C-OLD_VAL = YAPAL-V_OLD.
WRITE YAPAL-V_OLD CURRENCY 'eur' TO ITAB_C-OLD_VAL.
ITAB_C-VAL_1 = YAPAL-VAL_N.
WRITE YAPAL-VAL_N CURRENCY 'eur' TO ITAB_C-VAL_1.
VV = VAL_A.
WRITE VV CURRENCY 'eur' TO ITAB_C-VAL_2.
ITAB_C-VAL_3 = YAPAL-VAL_P.
WRITE YAPAL-VAL_P CURRENCY 'eur' TO ITAB_C-VAL_3.
VV = VAL_B.
WRITE VV CURRENCY 'eur' TO ITAB_C-VAL_4.
ITAB_C-VAL_5 = YAPAL-V_NEW.
WRITE YAPAL-V_NEW CURRENCY 'eur' TO ITAB_C-VAL_5.
ITAB_C-VAL_TXT = '.'.
ITAB_C-VAL_TXT2 = '.'.
IF P_CHECK = ' '.
INSERT YAPAL.
MOVE 'X' TO FIRST_TIME.
ENDIF.
ENDIF. " DEN BRIKE IDIO
WRITE: / .
WRITE: / .
WRITE: / .
WRITE: / .
WRITE: / .
WRITE: / .
WRITE: /65 ITAB_C-AR_MITR.
WRITE: / .
WRITE: / .
WRITE: / .
WRITE: / .
WRITE: / .
WRITE: / .
WRITE: / .
WRITE: / ' ', ITAB_C-NAME INPUT .
WRITE: / ' ', ITAB_C-OCCUPA INPUT .
WRITE: / ' ', ITAB_C-DOY INPUT .
WRITE: / ' ', ITAB_C-ODOS INPUT
,40 ' ', ITAB_C-ARITH INPUT
,55 ' ', ITAB_C-CITY INPUT .
WRITE: / ' ', ITAB_C-AFM INPUT .
WRITE: / .
WRITE: / .
WRITE: /60 ' ', ITAB_C-ORIO_VAL .
WRITE: /.
WRITE: /.
WRITE: /.
WRITE: /31 ITAB_C-OLD_VAL .
WRITE: /.
WRITE: /25 ITAB_C-VAL_1 , 45 ITAB_C-VAL_2 .
WRITE: /.
WRITE: /.
WRITE: /.
WRITE: / ITAB_C-AFORA INPUT,45 ITAB_C-VAL_3
,65 ITAB_C-VAL_4 .
WRITE: /.
WRITE: /65 ITAB_C-VAL_5 .
WRITE: /.
WRITE: /.
PERFORM GET_TOTAL_AMOUNT USING ITAB_C-VAL_5 CHANGING ITAB_C-V_TXT.
ITAB_C-VAL_TXT = ITAB_C-V_TXT+0(69).
CONCATENATE ITAB_C-V_TXT+69(70) '.' INTO ITAB_C-VAL_TXT2.
WRITE: /13 ITAB_C-VAL_TXT INPUT.
WRITE: /13 ITAB_C-VAL_TXT2 INPUT.
WRITE: /.
WRITE: /.
WRITE: /60 ' ' , YAPAL-DDATE.
write: /65 'u039F u0394u0399u039Au0391u0399u039Fu03A5u03A7u039Fu03A3 '.
NEW-PAGE.
*==========================================================
END-OF-SELECTION.
&----
*& Form INFORM
&----
text
----
--> p1 text
<-- p2 text
----
FORM INFORM .
DATA : ANS TYPE ANSWER.
CLEAR ANS.
CALL FUNCTION 'POPUP_WITH_2_BUTTONS_TO_CHOOSE'
EXPORTING
DEFAULTOPTION = '1'
DIAGNOSETEXT1 = ' '
DIAGNOSETEXT2 = ' '
DIAGNOSETEXT3 = ' '
TEXTLINE1 = 'zzzzzzzzzzzzzzz'
TEXTLINE2 = 'zzzzzzzzzzzzzzzzzzzzzz'
TEXTLINE3 = ' '
TEXT_OPTION1 = 'xxxxxxxxxxxxxxxxx'
TEXT_OPTION2 = 'ffffffffffffffffff'
TITEL = 'fffffffffffffffff'
IMPORTING
ANSWER = ANS .
IF ANS = '1'.
SUBMIT SAPLZHALM1.
ENDIF.
IF ANS = '2'.
ENDIF.
ENDFORM. " INFORM
2008 Sep 18 8:29 AM
hi ...
try out using Popup_to_confirm function module...
do let me know if it helps else will try for something else.
Regards
Rachel
HI,
For That You can write the Above mention FM in
AT USER-COMMAND.
Case 'BACK'
FM....
Regards
Sumit Agarwal
2008 Sep 18 8:24 AM
Hi,
You can write that in:
AT USER-COMMAND
or
AT LINE-SELECTION.
or
You can use WAIT to wait for certain time and then display the popup.
Hope that helps.
Bhupal
2008 Sep 18 8:28 AM
HIIIIIIIII
I THINK YOU USE FM POPUP_TO_CONFIRM IN AT LINE SELECTION OR AT USER COMMAND.
2008 Sep 18 8:29 AM
hi ...
try out using Popup_to_confirm function module...
do let me know if it helps else will try for something else.
Regards
Rachel
2008 Sep 18 8:59 AM
Look my example in a simply way ....
write 😕 xxxxxx
write 😕 xxxxxx
write 😕 xxxxxx
write 😕 xxxxxx
write 😕 xxxxxx
fm ........
The problem is that i see the fm first and after the write statements in screen ....
I want to see the screen and when i press back if to see the fm if a trigger is on ...
2008 Sep 18 9:05 AM
HI,
For That You can write the Above mention FM in
AT USER-COMMAND.
Case 'BACK'
FM....
Regards
Sumit Agarwal
| User | Count |
|---|---|
| 6 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |