Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Pf status related problem

Former Member
0 Likes
403

Hi all,

When I have called a modal dialog box screen, I want to set a pf status called STLI ,however I could not succeed it.

Where am I doing the error?

My code is like following:

MODULE STATUS_0200 OUTPUT.

IF SY-UCOMM = 'RW'.

SET SCREEN 0.

LEAVE SCREEN.

ELSE.

SUPPRESS DIALOG.

LEAVE TO LIST-PROCESSING.

if wflag = 1.

PERFORM WRITE_ORDERLIST.

elseif wflag = 2.

PERFORM WRITE_ORDERLIST2.

endif.

ENDIF.

ENDMODULE. " status_0200 OUTPUT

FORM WRITE_ORDERLIST.

data : vbmnc_toplam like ZTAB-VBMNC.

SET PF-STATUS 'STLI'.

refresh donemler.

loop at ztab where matnr = itab-matnr

and werks = itab-werks.

donemler-gjahr = ztab-mbdat(4).

donemler-monat = ztab-mbdat+4(2).

collect donemler.

endloop.

sort donemler by gjahr monat.

SORT ZTAB BY MBDAT.

loop at donemler.

WRITE : /2 donemler-monat, donemler-gjahr,

ITAB-MATNR COLOR 1, ITAB-MAKTX.

clear vbmnc_toplam.

ULINE /1(99).

LOOP AT ZTAB WHERE MATNR = ITAB-MATNR

AND WERKS = ITAB-WERKS

and mbdat(4) = donemler-gjahr

and mbdat+4(2) = donemler-monat.

WRITE : /1 SY-VLINE, ZTAB-SENDM AS CHECKBOX,

SY-VLINE NO-GAP, ZTAB-VBELN NO-GAP,

SY-VLINE NO-GAP, ZTAB-POSNR NO-GAP,

SY-VLINE NO-GAP, ZTAB-WERKS NO-GAP,

SY-VLINE NO-GAP, ZTAB-MBDAT NO-GAP,

SY-VLINE NO-GAP, ZTAB-VBMNC UNIT ZTAB-MEINS NO-GAP,

SY-VLINE NO-GAP, ZTAB-MEINS NO-GAP,

SY-VLINE NO-GAP, ZTAB-NAME1 NO-GAP,

SY-VLINE NO-GAP.

vbmnc_toplam = vbmnc_toplam + ZTAB-VBMNC.

ENDLOOP.

if sy-subrc = 0.

ULINE /1(99).

clear ztab-name1.

write : /1 sy-vline, donemler-monat, donemler-gjahr, 'Toplam :',

vbmnc_toplam unit ztab-meins no-gap under ztab-vbmnc,

sy-vline no-gap, ztab-meins no-gap, sy-vline no-gap,

ztab-name1 no-gap, sy-vline no-gap.

endif.

endloop.

ULINE /1(99).

ENDFORM.

Thanks.

Hi all,

When I have called a modal dialog box screen, I want to set a pf status called STLI ,however I could not succeed it.

Where am I doing the error?

My code is like following:

MODULE STATUS_0200 OUTPUT.

IF SY-UCOMM = 'RW'.

SET SCREEN 0.

LEAVE SCREEN.

ELSE.

SUPPRESS DIALOG.

LEAVE TO LIST-PROCESSING.

if wflag = 1.

PERFORM WRITE_ORDERLIST.

elseif wflag = 2.

PERFORM WRITE_ORDERLIST2.

endif.

ENDIF.

ENDMODULE. " status_0200 OUTPUT

FORM WRITE_ORDERLIST.

data : vbmnc_toplam like ZTAB-VBMNC.

SET PF-STATUS 'STLI'.

refresh donemler.

loop at ztab where matnr = itab-matnr

and werks = itab-werks.

donemler-gjahr = ztab-mbdat(4).

donemler-monat = ztab-mbdat+4(2).

collect donemler.

endloop.

sort donemler by gjahr monat.

SORT ZTAB BY MBDAT.

loop at donemler.

WRITE : /2 donemler-monat, donemler-gjahr,

ITAB-MATNR COLOR 1, ITAB-MAKTX.

clear vbmnc_toplam.

ULINE /1(99).

LOOP AT ZTAB WHERE MATNR = ITAB-MATNR

AND WERKS = ITAB-WERKS

and mbdat(4) = donemler-gjahr

and mbdat+4(2) = donemler-monat.

WRITE : /1 SY-VLINE, ZTAB-SENDM AS CHECKBOX,

SY-VLINE NO-GAP, ZTAB-VBELN NO-GAP,

SY-VLINE NO-GAP, ZTAB-POSNR NO-GAP,

SY-VLINE NO-GAP, ZTAB-WERKS NO-GAP,

SY-VLINE NO-GAP, ZTAB-MBDAT NO-GAP,

SY-VLINE NO-GAP, ZTAB-VBMNC UNIT ZTAB-MEINS NO-GAP,

SY-VLINE NO-GAP, ZTAB-MEINS NO-GAP,

SY-VLINE NO-GAP, ZTAB-NAME1 NO-GAP,

SY-VLINE NO-GAP.

vbmnc_toplam = vbmnc_toplam + ZTAB-VBMNC.

ENDLOOP.

if sy-subrc = 0.

ULINE /1(99).

clear ztab-name1.

write : /1 sy-vline, donemler-monat, donemler-gjahr, 'Toplam :',

vbmnc_toplam unit ztab-meins no-gap under ztab-vbmnc,

sy-vline no-gap, ztab-meins no-gap, sy-vline no-gap,

ztab-name1 no-gap, sy-vline no-gap.

endif.

endloop.

ULINE /1(99).

ENDFORM.

Thanks.

1 REPLY 1
Read only

Former Member
0 Likes
364

Hi,

If you have a look at your code your code is not at going to form "WRITE_ORDERLIST" where you are setting PF status.

MODULE STATUS_0200 OUTPUT.

IF SY-UCOMM = 'RW'.

SET SCREEN 0.

LEAVE SCREEN.

ELSE.

SUPPRESS DIALOG.

LEAVE TO LIST-PROCESSING.

if wflag = 1.

PERFORM WRITE_ORDERLIST.

elseif wflag = 2.

PERFORM WRITE_ORDERLIST2.

endif.

ENDIF.

ENDMODULE. " status_0200 OUTPUT

--

Regards-

Gagan Kumar