
sapabap采购订单报表.doc
7页.*&---------------------------------------------------------------------**& Report ZMM_TEST01*& Author: 路*&---------------------------------------------------------------------**&*&*&---------------------------------------------------------------------*REPORT ZMM_TEST01.TABLES:EKKO,EKPO,EKET,MAKT.TYPE-POOLS: SLIS. "类似.net引入命名空间*-----------------------------------------------------------------------** Define types*-----------------------------------------------------------------------*TYPES: BEGIN OF TYP_LIST, BUKRS TYPE EKKO-BUKRS, EKORG TYPE EKKO-EKORG, EKGRP TYPE EKKO-EKGRP, EBELN TYPE EKKO-EBELN, EBELP TYPE EKPO-EBELP, MATNR TYPE MAKT-MATNR, MAKTX TYPE MAKT-MAKTX, MENGE TYPE EKPO-MENGE, MEINS TYPE EKPO-MEINS, NETPR TYPE EKPO-NETPR, WAERS TYPE EKKO-WAERS, EINDT TYPE EKET-EINDT, END OF TYP_LIST.*-----------------------------------------------------------------------** Define data*-----------------------------------------------------------------------*DATA: GTD_DATA TYPE STANDARD TABLE OF TYP_LIST, GTH_DATA TYPE TYP_LIST.DATA: GTD_TITLE TYPE SLIS_T_LISTHEADER, GTH_TITLE TYPE SLIS_LISTHEADER.DATA: GTD_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV, GTH_FIELDCAT TYPE SLIS_FIELDCAT_ALV.DATA: GTH_LAYOUT TYPE SLIS_LAYOUT_ALV.DATA: GD_SPRAS TYPE SPRAS.data P_DATUM type d.*--------------------------------------------------------------------------** selection-screen*--------------------------------------------------------------------------*SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.SELECT-OPTIONS: S_LLIEF FOR EKKO-LLIEF, S_EBELN FOR EKKO-EBELN, S_MATNR FOR EKPO-MATNR , S_AEDAT for EKKO-AEDAT OBLIGATORY.SELECTION-SCREEN END OF BLOCK B1.INITIALIZATION. P_DATUM = sy-datum. P_DATUM+6(2) = 01. P_DATUM = P_DATUM . S_AEDAT-low = P_DATUM. S_AEDAT-high = sy-datum . APPEND S_AEDAT.*----------------------------------------------------------------------** START-OF-SELECTION*----------------------------------------------------------------------*START-OF-SELECTION. PERFORM SUB_GET_DATA. PERFORM SUB_DISPLAY. PERFORM SUB_CLEAR.*&---------------------------------------------------------------------**& Form SUB_GET_DATA*&---------------------------------------------------------------------** text*----------------------------------------------------------------------*FORM SUB_GET_DATA .*------SELECT HEADER DATASELECT EKKO~BUKRS EKKO~EKORG EKKO~EKGRP EKKO~EBELN EKPO~EBELP MAKT~MATNR MAKT~MAKTX EKPO~MENGE EKPO~MEINS EKPO~NETPR EKKO~WAERS EKET~EINDT INTO CORRESPONDING FIELDS OF TABLE GTD_DATA FROM EKKO INNER JOIN EKPO ON EKKO~EBELN = EKPO~EBELN LEFT JOIN EKET ON EKPO~EBELN = EKET~EBELN AND EKPO~EBELP = EKET~EBELP LEFT JOIN MAKT ON EKPO~MATNR = MAKT~MATNR WHERE EKKO~AEDAT in S_AEDAT AND EKKO~LLIEF IN S_LLIEF AND EKKO~EBELN IN S_EBELN AND EKPO~MATNR IN S_MATNR.ENDFORM.*&---------------------------------------------------------------------**& Form SUB_TITLE*&---------------------------------------------------------------------** text*----------------------------------------------------------------------*FORM SUB_TITLE. REFRESH GTD_TITLE. CLEAR GTH_TITLE. PERFORM SUB_SET_TITLE USING H 采购订单报表. PERFORM SUB_SET_TITLE USING S 日期 : SY-DATUM. PERFORM SUB_SET_TITLE USING S 作者 : SY-UNAME.ENDFORM. "SET_TITLE*&---------------------------------------------------------------------**& Form sub_field*&---------------------------------------------------------------------** text*----------------------------------------------------------------------** --> p1 text* <-- p2 text*----------------------------------------------------------------------*FORM SUB_FIELD .* PERFORM SUB_SET_FIELD USING 1 CHECK_BOX GTD_DATA 1* 选取 X X . PERFORM SUB_SET_FIELD USING 1 BUKRS GTD_DATA 10 公司代码 X . PERFORM SUB_SET_FIELD USING 2 EKORG GTD_DATA 4 采购组织 X . PERFORM SUB_SET_FIELD USING 3 EKGRP GTD_DATA 3 采购组 . PERFORM SUB_SET_FIELD USING 4 EBELN GTD_DATA 4 采购凭证号 . PERFORM SUB_SET_FIELD USING 5 EBELP GTD_DATA 3 项目编号 . PERFORM SUB_SET_FIELD USING 6 MATNR GTD_DATA 10 。