FORM. POST_DOCUMENT.
*add by yuan-yuan xiao 080827
DATA:P_POSTDATE LIKE ZCM03-POSTDATE.
IF ZCM03-POSTDATE IS INITIAL.
P_POSTDATE = SY-DATUM.
ELSE.
P_POSTDATE = ZCM03-POSTDATE.
ENDIF.
*
*add by yuan-yuan xiao 080619
IF F_SHOW = 'Y'.
PERFORM. DO_SUBPOST(ZRMM_CSD_0050) USING ZCM03-DOCNUMBER
ZCM03-DOCYEAR ZCM03-BADAT P_POSTDATE"zcm03-badat
'1' S_POSTID '1' S_PWD.
ELSE.
*
PERFORM. DO_SUBPOST(ZRMM_CSD_0050) USING ZCM03-DOCNUMBER
ZCM03-DOCYEAR
ZCM03-BADAT
P_POSTDATE"zcm03-badat
'1'
S_POSTID '0'
S_PWD.
ENDIF.
ENDFORM.
*&--------------------------------------------------------------
*& Form write_document
*&--------------------------------------------------------------
FORM. WRITE_DOCUMENT .
DATA:L_PROGRAM LIKE RS38M-PROGRAMM,
ABAPLIST LIKE ABAPLIST OCCURS 0,
ASCILIST(120) OCCURS 0 WITH HEADER LINE,
LINESIZE TYPE I,
LINECOUNT TYPE I,
LAYOUT LIKE PRI_PARAMS-PAART,
DEST LIKE PRI_PARAMS-PDEST.
*add by yuan-yuan xiao 090213.start
READ TABLE ZCM04TAB INDEX 1.
*.end
* loop at zcm03tab where selid eq 'X'.
CASE ZCM03-DOCTYPE .
WHEN '1'.
L_PROGRAM = 'ZRMM_CSD_0051'.
LINESIZE = 100.
LINECOUNT = 28.
LAYOUT = 'ZX_28_100_L'.
WHEN '13'.
L_PROGRAM = 'ZRMM_CSD_0051'.
LINESIZE = 100.
LINECOUNT = 28.
LAYOUT = 'ZX_28_100_L'.
WHEN '2'.
L_PROGRAM = 'ZRMM_CSD_0052'.
LINESIZE = 100.
LINECOUNT = 28.
LAYOUT = 'ZX_28_100_L'.
WHEN '3'.
L_PROGRAM = 'ZRMM_CSD_0053'.
LINESIZE = 132.
LINECOUNT = 51.
LAYOUT = 'ZX_51_132_L'.
WHEN '4'.
L_PROGRAM = 'ZRMM_CSD_0010'.
LINESIZE = 100.
LINECOUNT = 28.
LAYOUT = 'ZX_28_100_L'.
WHEN '5'.
* add by nancy 090214
IF ZCM04TAB-WERKS = 'PYT1'
OR ZCM04TAB-WERKS = 'PYD1'
OR ZCM04TAB-WERKS = 'PYY1'
OR ZCM04TAB-WERKS = 'PYY2'
OR ZCM04TAB-WERKS = 'PYY3'.
L_PROGRAM = 'ZRMM_PCE_0154'.
ELSE.
L_PROGRAM = 'ZRMM_CSD_0013'.
ENDIF.
LINESIZE = 100.
LINECOUNT = 28.
LAYOUT = 'ZX_28_100_L'.
WHEN '6'.
*add by yuan-yuan xiao 090213.start
IF ZCM04TAB-WERKS = 'PYT1'
OR ZCM04TAB-WERKS = 'PYD1'
OR ZCM04TAB-WERKS = 'PYY1'
OR ZCM04TAB-WERKS = 'PYY2'
OR ZCM04TAB-WERKS = 'PYY3'.
L_PROGRAM = 'ZRMM_PCE_0155'.
ELSE.
L_PROGRAM = 'ZRMM_CSD_0007'.
ENDIF.
*.end
LINESIZE = 100.
LINECOUNT = 28.
LAYOUT = 'ZX_28_100_L'.
WHEN '7'.
L_PROGRAM = 'ZRMM_CSD_0003'.
LINESIZE = 100.
LINECOUNT = 28.
LAYOUT = 'ZX_28_100_L'.
WHEN '8'.
L_PROGRAM = 'ZRMM_CSD_0011'.
LINESIZE = 100.
LINECOUNT = 28.
LAYOUT = 'ZX_28_100_L'.
*Ting 090715 begin
WHEN 'B'.
L_PROGRAM = 'ZRMM_CSD_0011_A'.
LINESIZE = 100.
LINECOUNT = 28.
LAYOUT = 'ZX_28_100_L'.
*Ting 090715 end
WHEN '9'.
L_PROGRAM = 'ZRMM_CSD_0054'.
LINESIZE = 100.
LINECOUNT = 28.
LAYOUT = 'ZX_28_132_L'.
WHEN '10'.
L_PROGRAM = 'ZRMM_CSD_0006'.
LINESIZE = 100.
LINECOUNT = 28.
LAYOUT = 'ZX_28_100_L'.
WHEN '11'.
L_PROGRAM = 'ZRMM_CSD_0012'.
LINESIZE = 100.
LINECOUNT = 28.
LAYOUT = 'ZX_28_100_L'.
WHEN '12'.
L_PROGRAM = 'ZRMM_CSD_0027'.
LINESIZE = 100.
LINECOUNT = 28.
LAYOUT = 'ZX_28_100_L'.
WHEN '14'.
L_PROGRAM = 'ZRMM_CSD_0003A'.
LINESIZE = 100.
LINECOUNT = 28.
LAYOUT = 'ZX_28_100_L'.
WHEN '15'.
L_PROGRAM = 'ZRMM_CSD_0003B'.
LINESIZE = 100.
LINECOUNT = 28.
LAYOUT = 'ZX_28_100_L'.
WHEN '16'.
L_PROGRAM = 'ZRMM_CSD_0003C'.
LINESIZE = 100.
LINECOUNT = 28.
LAYOUT = 'ZX_28_100_L'.
WHEN '17'.
L_PROGRAM = 'ZRMM_CSD_0003D'.
LINESIZE = 100.
LINECOUNT = 28.
LAYOUT = 'ZX_28_100_L'.
WHEN 'I'.
L_PROGRAM = 'ZRMM_CSD_0066'.
LINESIZE = 100.
LINECOUNT = 28.
LAYOUT = 'ZX_28_100_L'.
WHEN 'J'.
L_PROGRAM = 'ZRMM_CSD_0066'.
LINESIZE = 100.
LINECOUNT = 28.
LAYOUT = 'ZX_28_100_L'.
* echo add 090812.sn
WHEN 'C'.
L_PROGRAM = 'ZRMM_CSD_0013'.
LINESIZE = 100.
LINECOUNT = 28.
LAYOUT = 'ZX_28_100_L'.
WHEN 'D'.
L_PROGRAM = 'ZRMM_CSD_0007'.
LINESIZE = 100.
LINECOUNT = 28.
LAYOUT = 'ZX_28_100_L'.
* Echo add 090812.EN
* Echo 091112.add.sn
WHEN 'E'.
L_PROGRAM = 'ZRMM_CSD_0011_B'.
LINESIZE = 100.
LINECOUNT = 28.
LAYOUT = 'ZX_28_100_L'.
*Echo 091112.add.en
ENDCASE.
*
* set pf-status '1000' excluding 'OUTPUT'.
* set pf-status '1000' excluding 'DESELALL' .
* set pf-status '1000' excluding 'SELALL' .
*add by yuan-yuan xiao 090213.start
IF ZCM04TAB-WERKS = 'PYT1'
OR ZCM04TAB-WERKS = 'PYD1'
OR ZCM04TAB-WERKS = 'PYY1'
OR ZCM04TAB-WERKS = 'PYY2'
OR ZCM04TAB-WERKS = 'PYY3'.
SELECT SINGLE BUKRS
INTO T001K-BUKRS
FROM T001K
WHERE BWKEY = ZCM04TAB-WERKS.
SUBMIT (L_PROGRAM)
WITH COMPANY EQ T001K-BUKRS
WITH S_DOCNUM EQ ZCM03-DOCNUMBER
WITH SDOCYEAR EQ ZCM03-DOCYEAR
AND RETURN.
ELSE.
SUBMIT (L_PROGRAM)
* via selection-screen
* using selection-set 'docnumber1'
WITH SDOCNUM EQ ZCM03-DOCNUMBER
WITH SDOCYEAR EQ ZCM03-DOCYEAR
WITH SLANGU EQ SY-LANGU
* exporting list to memory
AND RETURN.
ENDIF.
*.end
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/14397246/viewspace-666184/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/14397246/viewspace-666184/