取得open sales order(1)转

这个程序用来找到open的sales order. REPORT /SIE/CHN_SD_SDI_OPEN_QTY . *&---------------------------------------------------------------------* *& Macro declaration * *&---------------------------------------------------------------------* DEFINE SET_ALV_FIELDCAT. CLEAR LS_FIELDCAT. LS_FIELDCAT-FIELDNAME = &1. "Field name LS_FIELDCAT-TABNAME = &2. "Reference table name LS_FIELDCAT-COL_POS = &3. "Column position LS_FIELDCAT-OUTPUTLEN = &4. "Output length LS_FIELDCAT-SELTEXT_L = &5. "Select text long length LS_FIELDCAT-DDICTXT = 'L'. "Using select text type APPEND LS_FIELDCAT TO IT_FIELDCAT. END-OF-DEFINITION. TABLES: VBAK,VBAP,VBFA. TYPE-POOLS SLIS. *ALC used fieldcatelog internal table DATA: IT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV. *Structure and internal table for sales open Qty DATA: BEGIN OF R_SQ, VBELN LIKE VBAP-VBELN, POSNR LIKE VBAP-POSNR, SQ(20), GQ(20), OQ(20), END OF R_SQ, IT_SQ LIKE TABLE OF R_SQ. *Structure and table for billing open Qty DATA BEGIN OF R_BQ. DATA VBELN LIKE VBAP-VBELN. DATA POSNR LIKE VBAP-POSNR. INCLUDE STRUCTURE FPLT. DATA END OF R_BQ. DATA IT_BQ LIKE TABLE OF R_BQ. *Selection screen SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-B01. SELECTION-SCREEN BEGIN OF LINE. PARAMETER RAD1 RADIOBUTTON GROUP R1 USER-COMMAND F1. SELECTION-SCREEN COMMENT 3(20) TEXT-R01 FOR FIELD RAD1. PARAMETER RAD2 RADIOBUTTON GROUP R1. SELECTION-SCREEN COMMENT 40(20) TEXT-R02 FOR FIELD RAD2. SELECTION-SCREEN END OF LINE. SELECTION-SCREEN END OF BLOCK B1. SELECT-OPTIONS: S_VKORG FOR VBAK-VKORG, S_VTWEG FOR VBAK-VTWEG, S_SPART FOR VBAK-SPART, S_KUNNR FOR VBAK-KUNNR, S_ERDAT FOR VBAK-ERDAT, S_AUART FOR VBAK-AUART, S_PSTYV FOR VBAP-PSTYV, S_ABGRU FOR VBAP-ABGRU, S_WBS FOR VBAP-PS_PSP_PNR, S_MATNR FOR VBAP-MATNR, S_VBELV FOR VBFA-VBELV, S_VBTYP FOR VBFA-VBTYP_N. *Initialize program INITIALIZATION. RAD1 = 'X'. *Change output according to screen selection AT SELECTION-SCREEN OUTPUT. PERFORM MODIF_SCREEN. *Check authority AT SELECTION-SCREEN. PERFORM AUTH_CHECK. START-OF-SELECTION. IF RAD1 IS INITIAL. * Get billing Qty PERFORM GET_DATA_BQ. * Show billing Qty PERFORM OUTPUT_BQ. ELSE. * Get Sales Open Qty PERFORM GET_DATA_SQ. * Show Sales Open Qty PERFORM OUTPUT_SQ. ENDIF. *&---------------------------------------------------------------------* *& Form modif_screen *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* FORM MODIF_SCREEN. IF RAD1 IS INITIAL. LOOP AT SCREEN. IF SCREEN-NAME CS 'VBELV' OR SCREEN-NAME CS 'VBTYP'. SCREEN-ACTIVE = 0. MODIFY SCREEN. ENDIF. ENDLOOP. ENDIF. ENDFORM. " modif_screen *&---------------------------------------------------------------------* *& Form AUTH_CHECK *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* FORM AUTH_CHECK. * Check whether the User has the Transaction Code Authorization AUTHORITY-CHECK OBJECT 'S_TCODE' ID 'TCD' FIELD 'VA03'. IF SY-SUBRC <> 0. MESSAGE E043(/SIE/CHN_ALL). ENDIF. ENDFORM. " AUTH_CHECK


取得open sales order(1)

这个程序用来找到open的sales order. REPORT /SIE/CHN_SD_SDI_OPEN_QTY . *&---------------------------------------------------------------------* *& Macro declaration * *&---------------------------------------------------------------------* DEFINE SET_ALV_FIELDCAT. CLEAR LS_FIELDCAT. LS_FIELDCAT-FIELDNAME = &1. "Field name LS_FIELDCAT-TABNAME = &2. "Reference table name LS_FIELDCAT-COL_POS = &3. "Column position LS_FIELDCAT-OUTPUTLEN = &4. "Output length LS_FIELDCAT-SELTEXT_L = &5. "Select text long length LS_FIELDCAT-DDICTXT = 'L'. "Using select text type APPEND LS_FIELDCAT TO IT_FIELDCAT. END-OF-DEFINITION. TABLES: VBAK,VBAP,VBFA. TYPE-POOLS SLIS. *ALC used fieldcatelog internal table DATA: IT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV. *Structure and internal table for sales open Qty DATA: BEGIN OF R_SQ, VBELN LIKE VBAP-VBELN, POSNR LIKE VBAP-POSNR, SQ(20), GQ(20), OQ(20), END OF R_SQ, IT_SQ LIKE TABLE OF R_SQ. *Structure and table for billing open Qty DATA BEGIN OF R_BQ. DATA VBELN LIKE VBAP-VBELN. DATA POSNR LIKE VBAP-POSNR. INCLUDE STRUCTURE FPLT. DATA END OF R_BQ. DATA IT_BQ LIKE TABLE OF R_BQ. *Selection screen SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-B01. SELECTION-SCREEN BEGIN OF LINE. PARAMETER RAD1 RADIOBUTTON GROUP R1 USER-COMMAND F1. SELECTION-SCREEN COMMENT 3(20) TEXT-R01 FOR FIELD RAD1. PARAMETER RAD2 RADIOBUTTON GROUP R1. SELECTION-SCREEN COMMENT 40(20) TEXT-R02 FOR FIELD RAD2. SELECTION-SCREEN END OF LINE. SELECTION-SCREEN END OF BLOCK B1. SELECT-OPTIONS: S_VKORG FOR VBAK-VKORG, S_VTWEG FOR VBAK-VTWEG, S_SPART FOR VBAK-SPART, S_KUNNR FOR VBAK-KUNNR, S_ERDAT FOR VBAK-ERDAT, S_AUART FOR VBAK-AUART, S_PSTYV FOR VBAP-PSTYV, S_ABGRU FOR VBAP-ABGRU, S_WBS FOR VBAP-PS_PSP_PNR, S_MATNR FOR VBAP-MATNR, S_VBELV FOR VBFA-VBELV, S_VBTYP FOR VBFA-VBTYP_N. *Initialize program INITIALIZATION. RAD1 = 'X'. *Change output according to screen selection AT SELECTION-SCREEN OUTPUT. PERFORM MODIF_SCREEN. *Check authority AT SELECTION-SCREEN. PERFORM AUTH_CHECK. START-OF-SELECTION. IF RAD1 IS INITIAL. * Get billing Qty PERFORM GET_DATA_BQ. * Show billing Qty PERFORM OUTPUT_BQ. ELSE. * Get Sales Open Qty PERFORM GET_DATA_SQ. * Show Sales Open Qty PERFORM OUTPUT_SQ. ENDIF. *&---------------------------------------------------------------------* *& Form modif_screen *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* FORM MODIF_SCREEN. IF RAD1 IS INITIAL. LOOP AT SCREEN. IF SCREEN-NAME CS 'VBELV' OR SCREEN-NAME CS 'VBTYP'. SCREEN-ACTIVE = 0. MODIFY SCREEN. ENDIF. ENDLOOP. ENDIF. ENDFORM. " modif_screen *&---------------------------------------------------------------------* *& Form AUTH_CHECK *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* FORM AUTH_CHECK. * Check whether the User has the Transaction Code Authorization AUTHORITY-CHECK OBJECT 'S_TCODE' ID 'TCD' FIELD 'VA03'. IF SY-SUBRC <> 0. MESSAGE E043(/SIE/CHN_ALL). ENDIF. ENDFORM. " AUTH_CHECK

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/190059/viewspace-476653/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/190059/viewspace-476653/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值