ZSTOCKTAKE_TX
上一篇 / 下一篇 2007-12-11 00:00:00 / 个人分类:工作日記
REPORT ZSTOCKTAKE_TX LINE-SIZE 200 LINE-COUNT 65
NO STANDARD PAGE HEADING.
************************************************************************
* Program ID : ZSTOCKTAKE_TX *
* Program Name : List of MATERIALS, QUANTITIES, NO PRICES / VALUES *
* *
* Function : To ASSIST THE AUDITOR DURING STOCK TAKE. *
* : List of MATERIALS, QUANTITIES, NO PRICES / VALUES *
* *
* Caution : *
* : *
************************************************************************
*MAINTENANCE HISTORY ***************************************************
* (Version)(YYYY/MM/DD) (Person) (Contens) *
* XX.XX.XX YYYY/MM/DD X.XXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXX *
*----------------------------------------------------------------------*
*----------------------------------------------------------------------*
* 0. 0. 1 2006/12/18 Bok Tan Initial Cording *
*----------------------------------------------------------------------*
* *
*----------------------------------------------------------------------*
************************************************************************
*----- TABLE -----*
TABLES: MAKT " Material Description
,MARC " Plant data
,MARD " Storage Location data
,MBEW " Material Valuation data
.
TYPE-POOLS:
SLIS.
*----- Internal Tables -----*
TYPES: BEGIN OF TYPE_XTRACT,
MATNR LIKE MARD-MATNR, " MATERIAL NUMBER
MAKTX LIKE MAKT-MAKTX, " MATERIAL DESCRIPTION
* VERPR LIKE MBEW-VERPR, " MATL Price (DEPENDING PRICE CONTROL
LBKUM_HK LIKE MBEW-LBKUM, " STOCK TAKE QTY - HK
* SALK3_HK LIKE MBEW-SALK3, " STOCK TAKE VALUE - HK
LBKUM_TX LIKE MBEW-LBKUM, " STOCK TAKE QTY - TX
* SALK3_TX LIKE MBEW-SALK3, " STOCK TAKE VALUE - TX
LBKUM_TOT LIKE MBEW-LBKUM, " STOCK TAKE QTY - TOTAL
SALK3_TOT LIKE MBEW-SALK3, " STOCK TAKE VALUE - TOTAL
MEINS LIKE MARA-MEINS, " BASE UNIT OF MEASURE
PEINH LIKE MBEW-PEINH, " MATERIAL Price Unit
EKGRP LIKE MARC-EKGRP, " Purchasing Group
END OF TYPE_XTRACT.
DATA: TWK1 TYPE TYPE_XTRACT OCCURS 0 WITH HEADER LINE.
TYPES: BEGIN OF TYPE_MARC,
EKGRP LIKE MARC-EKGRP, " Purchasing Group
MATNR LIKE MARC-MATNR, " MATERIAL NUMBER
END OF TYPE_MARC.
DATA: TWK2 TYPE TYPE_MARC OCCURS 0 WITH HEADER LINE.
TYPES: BEGIN OF TYPE_MARD,
MATNR LIKE MARC-MATNR, " MATERIAL NUMBER
LGORT LIKE MARD-LGORT, " STORAGE LOCATION
LABST LIKE MARD-LABST, " UNRESTRICTED USE QTY
UMLME LIKE MARD-UMLME, " Stock in transfer QTY
INSME LIKE MARD-INSME, " QUALITY INSPECTION QTY
EINME LIKE MARD-EINME, " Restricted Batches QTY
SPEME LIKE MARD-SPEME, " Blocked stock QTY
RETME LIKE MARD-RETME, " Blocked Stock Returns QTY
END OF TYPE_MARD.
DATA: TWK3 TYPE TYPE_MARD OCCURS 0 WITH HEADER LINE.
TYPES: BEGIN OF TYPE_MBEW,
MATNR LIKE MBEW-MATNR, " MATERIAL NUMBER
* VPRSV LIKE MBEW-VPRSV, " Price Control Indicator
* VERPR LIKE MBEW-VERPR, " Moving Average Price
* STPRS LIKE MBEW-STPRS, " Standard Price
PEINH LIKE MBEW-PEINH, " MATERIAL Price Unit
MEINS LIKE MARA-MEINS, " BASE UNIT OF MEASURE
END OF TYPE_MBEW.
DATA: TWK4 TYPE TYPE_MBEW OCCURS 0 WITH HEADER LINE.
*----- Work Data -----*
DATA:
ALV_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,
ALV_LAYOUT TYPE SLIS_LAYOUT_ALV,
STRU_DISVAR TYPE DISVARIANT.
*----- COUNTERS -----*
DATA:
CTR_TWK1 TYPE I
,CTR_TWK2 TYPE I
,CTR_TWK3 TYPE I.
*----- FLAGS / MISC. -----*
DATA: WK_FIRST_PAGE(1).
DATA: ZRAD.
*----- TOTALS -----*
DATA: TT_LBKUM_HK LIKE MBEW-LBKUM " STOCK TAKE QTY - HK
,TT_SALK3_HK LIKE MBEW-SALK3 " STOCK TAKE VALUE - HK
,TT_LBKUM_TX LIKE MBEW-LBKUM " STOCK TAKE QTY - TX
,TT_SALK3_TX LIKE MBEW-SALK3 " STOCK TAKE VALUE - TX
,TT_LBKUM_TOT LIKE MBEW-LBKUM " STOCK TAKE QTY - TOTAL
,TT_SALK3_TOT LIKE MBEW-SALK3. " STOCK TAKE VALUE - TOTAL
DATA: WK_DATE LIKE SY-DATUM.
DATA:
G_REPID LIKE SY-REPID,
G_TITLE LIKE SY-TITLE,
RECORDS(8) TYPE C.
*================= PARAMETER & SELECT-OPTIONS ==================*
SELECTION-SCREEN BEGIN OF BLOCK BLK1 WITH FRAME TITLE TEXT-B01.
SKIP.
SELECT-OPTIONS: Z_MATNR FOR MARD-MATNR
,Z_EKGRP FOR MARC-EKGRP.
SKIP.
SELECTION-SCREEN END OF BLOCK BLK1.
SKIP.
SELECTION-SCREEN BEGIN OF BLOCK BLK2 WITH FRAME TITLE TEXT-B02.
SKIP.
*PARAMETERS Z_TX RADIOBUTTON GROUP ZRAD DEFAULT 'X'.
*PARAMETERS Z_TX RADIOBUTTON GROUP ZRAD.
SKIP.
SELECTION-SCREEN END OF BLOCK BLK2.
SKIP.
************************************************************************
* INITIALIZATION.
************************************************************************
INITIALIZATION.
*-------------------------------------------------------------------
* TO 'AID' USERS MINIMIZE KEYSTROKES
* INPUT MOST LIKELY INITIAL VALUES FOR USERS
*-------------------------------------------------------------------
MOVE 'F*' TO Z_MATNR-LOW. " LOWER RANGE MATNR
MOVE 'CP' TO Z_MATNR-OPTION. " OPTION
MOVE 'E' TO Z_MATNR-SIGN. " SIGN
APPEND Z_MATNR.
CLEAR Z_MATNR.
MOVE 'M31*' TO Z_MATNR-LOW. " LOWER RANGE MATNR
MOVE 'CP' TO Z_MATNR-OPTION. " OPTION
MOVE 'E' TO Z_MATNR-SIGN. " SIGN
APPEND Z_MATNR.
CLEAR Z_MATNR.
MOVE 'M51*' TO Z_MATNR-LOW. " LOWER RANGE MATNR
MOVE 'CP' TO Z_MATNR-OPTION. " OPTION
MOVE 'E' TO Z_MATNR-SIGN. " SIGN
APPEND Z_MATNR.
CLEAR Z_MATNR.
MOVE 'M75*' TO Z_MATNR-LOW. " LOWER RANGE MATNR
MOVE 'CP' TO Z_MATNR-OPTION. " OPTION
MOVE 'E' TO Z_MATNR-SIGN. " SIGN
APPEND Z_MATNR.
CLEAR Z_MATNR.
MOVE 'S*' TO Z_MATNR-LOW. " LOWER RANGE MATNR
MOVE 'CP' TO Z_MATNR-OPTION. " OPTION
MOVE 'E' TO Z_MATNR-SIGN. " SIGN
APPEND Z_MATNR.
CLEAR Z_MATNR.
* IF SY-UNAME = 'ADMIN'
* OR SY-UNAME = 'BARRY'
* OR SY-UNAME = 'BOK'
* OR SY-UNAME = 'CARITA'
* OR SY-UNAME = 'FANNY'
* OR SY-UNAME = 'NELSON'
* OR SY-UNAME = 'STANLEY'.
* ELSE.
* MESSAGE I000(Z0) WITH 'YOUR SAPID NOT AUTHORIZED TO RUN THIS REPORT'.
* EXIT.
* ENDIF.
************************************************************************
* START-OF-SELECTION. *
************************************************************************
START-OF-SELECTION.
* IF SY-UNAME = 'ADMIN'
* OR SY-UNAME = 'BARRY'
* OR SY-UNAME = 'BOK'
* OR SY-UNAME = 'CARITA'
* OR SY-UNAME = 'FANNY'
* OR SY-UNAME = 'NELSON'
* OR SY-UNAME = 'STANLEY'.
* ELSE.
* MESSAGE I000(Z0) WITH 'YOUR SAPID NOT AUTHORIZED TO RUN THIS REPORT'.
* EXIT.
* ENDIF.
PERFORM GET_DATA.
IF CTR_TWK2 > 0.
PERFORM WRITE_RPT.
ENDIF.
************************************************************************
* END-OF-SELECTION. *
************************************************************************
END-OF-SELECTION.
G_REPID = 'ZSTOCKTAKE, STOCK TAKE MATERIAL QUANTITIES (CHINA) REPORT'.
SKIP.
WRITE:/ RECORDS, 'Items Selected As Per Your Selection Criteria'.
* IF SY-UNAME = 'ADMIN'
* OR SY-UNAME = 'BARRY'
* OR SY-UNAME = 'BOK'
* OR SY-UNAME = 'CARITA'
* OR SY-UNAME = 'FANNY'
* OR SY-UNAME = 'NELSON'
* OR SY-UNAME = 'STANLEY'.
* ELSE.
* MESSAGE I000(Z0) WITH 'YOUR SAPID NOT AUTHORIZED TO RUN THIS REPORT'.
* EXIT.
* ENDIF.
IF TWK1[] IS INITIAL.
MESSAGE I000(Z0) WITH 'NO RECORDS FOUND!'.
EXIT.
ENDIF.
PERFORM FIELDCAT_INIT USING ALV_FIELDCAT.
ALV_LAYOUT-COLWIDTH_OPTIMIZE = 'X'.
ALV_LAYOUT-ZEBRA = 'X'.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
* I_INTERFACE_CHECK = ' '
* I_BUFFER_ACTIVE = ' '
I_CALLBACK_PROGRAM = G_REPID
* I_CALLBACK_PF_STATUS_SET = ' '
* I_CALLBACK_USER_COMMAND = ' '
* I_CALLBACK_TOP_OF_PAGE = ' '
* I_CALLBACK_HTML_TOP_OF_PAGE = ' '
* I_CALLBACK_HTML_END_OF_LIST = ' '
* I_STRUCTURE_NAME =
* I_BACKGROUND_ID = ' '
I_GRID_TITLE = G_TITLE
* I_GRID_SETTINGS =
IS_LAYOUT = ALV_LAYOUT
IT_FIELDCAT = ALV_FIELDCAT
* IT_EXCLUDING =
* IT_SPECIAL_GROUPS =
* IT_SORT =
* IT_FILTER =
* IS_SEL_HIDE =
* I_DEFAULT = 'X'
I_SAVE = 'A'
IS_VARIANT = STRU_DISVAR
* IT_EVENTS =
* IT_EVENT_EXIT =
* IS_PRINT =
* IS_REPREP_ID =
* I_SCREEN_START_COLUMN = 0
* I_SCREEN_START_LINE = 0
* I_SCREEN_END_COLUMN = 0
* I_SCREEN_END_LINE = 0
* IT_ALV_GRAPHICS =
* IT_ADD_FIELDCAT =
* IT_HYPERLINK =
* IMPORTING
* E_EXIT_CAUSED_BY_CALLER =
* ES_EXIT_CAUSED_BY_USER =
TABLES
T_OUTTAB = TWK1
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2.
*&---------------------------------------------------------------------*
*& Form FIELDCAT_INIT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->P_ALV_FIELDCAT text
*----------------------------------------------------------------------*
FORM FIELDCAT_INIT USING P_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV.
DATA:
LS_FIELDCAT TYPE SLIS_FIELDCAT_ALV.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'MATNR'.
LS_FIELDCAT-REF_TABNAME = 'MARA'.
LS_FIELDCAT-KEY = 'X'.
APPEND LS_FIELDCAT TO P_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'MAKTX'.
LS_FIELDCAT-REF_TABNAME = 'MAKT'.
LS_FIELDCAT-KEY = 'X'.
APPEND LS_FIELDCAT TO P_FIELDCAT.
* CLEAR LS_FIELDCAT.
* LS_FIELDCAT-FIELDNAME = 'VERPR'.
* LS_FIELDCAT-REF_TABNAME = 'TWK1'.
* LS_FIELDCAT-SELTEXT_L = 'Price'.
* LS_FIELDCAT-KEY = 'X'.
* APPEND LS_FIELDCAT TO P_FIELDCAT.
* IF Z_HK = 'X'.
* CLEAR LS_FIELDCAT.
* LS_FIELDCAT-FIELDNAME = 'LBKUM_HK'.
* LS_FIELDCAT-REF_TABNAME = 'TWK1'.
* LS_FIELDCAT-SELTEXT_L = 'Stk Qty HK'.
* LS_FIELDCAT-KEY = 'X'.
* APPEND LS_FIELDCAT TO P_FIELDCAT.
* CLEAR LS_FIELDCAT.
* LS_FIELDCAT-FIELDNAME = 'SALK3_HK'.
* LS_FIELDCAT-REF_TABNAME = 'TWK1'.
* LS_FIELDCAT-SELTEXT_L = 'Stk Val HK'.
* LS_FIELDCAT-KEY = 'X'.
* APPEND LS_FIELDCAT TO P_FIELDCAT.
* ENDIF.
* IF Z_TX = 'X'.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'LBKUM_TX'.
LS_FIELDCAT-REF_TABNAME = 'TWK1'.
LS_FIELDCAT-SELTEXT_L = 'Stk Qty Cn'.
LS_FIELDCAT-KEY = 'X'.
APPEND LS_FIELDCAT TO P_FIELDCAT.
* CLEAR LS_FIELDCAT.
* LS_FIELDCAT-FIELDNAME = 'SALK3_TX'.
* LS_FIELDCAT-REF_TABNAME = 'TWK1'.
* LS_FIELDCAT-SELTEXT_L = 'Stk Val Cn'.
* LS_FIELDCAT-KEY = 'X'.
* APPEND LS_FIELDCAT TO P_FIELDCAT.
* ENDIF.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'LBKUM_TOT'.
LS_FIELDCAT-REF_TABNAME = 'TWK1'.
LS_FIELDCAT-SELTEXT_L = 'Stk Qty Tot'.
LS_FIELDCAT-KEY = 'X'.
APPEND LS_FIELDCAT TO P_FIELDCAT.
* CLEAR LS_FIELDCAT.
* LS_FIELDCAT-FIELDNAME = 'SALK3_TOT'.
* LS_FIELDCAT-REF_TABNAME = 'TWK1'.
* LS_FIELDCAT-SELTEXT_L = 'Stk Val Tot'.
* LS_FIELDCAT-KEY = 'X'.
* APPEND LS_FIELDCAT TO P_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'MEINS'.
LS_FIELDCAT-REF_TABNAME = 'MARA'.
APPEND LS_FIELDCAT TO P_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'PEINH'.
LS_FIELDCAT-REF_TABNAME = 'TWK1'.
LS_FIELDCAT-SELTEXT_L = 'Price Unit'.
LS_FIELDCAT-KEY = 'X'.
APPEND LS_FIELDCAT TO P_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'EKGRP'.
LS_FIELDCAT-REF_TABNAME = 'MARC'.
LS_FIELDCAT-KEY = 'X'.
APPEND LS_FIELDCAT TO P_FIELDCAT.
ENDFORM. "FIELDCAT_INIT
*&---------------------------------------------------------------------*
*& Form GET_DATA
*&---------------------------------------------------------------------*
* EXTRAGE DATA FROM MARD & MBEW
*----------------------------------------------------------------------*
FORM GET_DATA.
REFRESH:
TWK1
,TWK2
,TWK3.
CLEAR:
TWK1
,TWK2
,TWK3
,TT_LBKUM_HK
,TT_SALK3_HK
,TT_LBKUM_TX
,TT_SALK3_TX
,TT_LBKUM_TOT
,TT_SALK3_TOT.
SELECT EKGRP
MATNR
INTO TWK2
FROM MARC
WHERE EKGRP IN Z_EKGRP
AND MATNR IN Z_MATNR
AND LVORM <> 'X'.
APPEND TWK2.
CLEAR: TWK2.
ENDSELECT.
DESCRIBE TABLE TWK2 LINES CTR_TWK2.
IF CTR_TWK2 = 0.
EXIT.
ENDIF.
SORT TWK2 BY EKGRP MATNR.
LOOP AT TWK2.
MOVE: TWK2-MATNR TO TWK1-MATNR
,TWK2-EKGRP TO TWK1-EKGRP.
* IF Z_TX = 'X'.
PERFORM GET_MARD_TX.
* ELSE.
* PERFORM GET_MARD_HK.
* ENDIF.
IF TWK1-LBKUM_HK = 0
AND TWK1-LBKUM_TX = 0.
CLEAR: TWK1.
ELSE.
PERFORM GET_MBEW_N_OTHER_DATA.
APPEND TWK1.
CLEAR: TWK1.
ENDIF.
ENDLOOP.
DESCRIBE TABLE TWK1 LINES CTR_TWK1.
DESCRIBE TABLE TWK1 LINES RECORDS.
SORT TWK1 BY LBKUM_TX DESCENDING
* LBKUM_HK DESCENDING
EKGRP MATNR ASCENDING.
CONCATENATE RECORDS ' - Items Selected' INTO TWK1-MAKTX.
MOVE: 'TOT' TO TWK1-EKGRP
,'Z338-GRAND-TOTALS' TO TWK1-MATNR
,TT_LBKUM_HK TO TWK1-LBKUM_HK
,TT_LBKUM_TX TO TWK1-LBKUM_TX
,TT_LBKUM_TOT TO TWK1-LBKUM_TOT
* ,TT_SALK3_HK TO TWK1-SALK3_HK
* ,TT_SALK3_TX TO TWK1-SALK3_TX
,TT_SALK3_TOT TO TWK1-SALK3_TOT.
APPEND TWK1.
CLEAR: TWK1.
ENDFORM. " GET_DATA
*&--------------------------------------------------------------------*
*& Form GET_MARD_HK
*&--------------------------------------------------------------------*
* text
*---------------------------------------------------------------------*
FORM GET_MARD_HK.
CLEAR: TWK3.
MOVE: TWK2-MATNR TO TWK1-MATNR
,TWK2-EKGRP TO TWK1-EKGRP.
SELECT MATNR
LGORT
LABST
UMLME
INSME
EINME
SPEME
RETME
INTO TWK3
FROM MARD
WHERE MATNR = TWK2-MATNR
AND ( LGORT = '1101'
OR LGORT = '1102'
OR LGORT = '1110' ).
IF SY-SUBRC = 0.
PERFORM QTY_SUMMATION.
ENDIF.
ENDSELECT.
ENDFORM. " GET_MARD_HK.
*&--------------------------------------------------------------------*
*& Form GET_MARD_TX
*&--------------------------------------------------------------------*
* text
*---------------------------------------------------------------------*
FORM GET_MARD_TX.
CLEAR: TWK3.
MOVE: TWK2-MATNR TO TWK1-MATNR
,TWK2-EKGRP TO TWK1-EKGRP.
SELECT MATNR
LGORT
LABST
UMLME
INSME
EINME
SPEME
RETME
INTO TWK3
FROM MARD
WHERE MATNR = TWK2-MATNR
AND ( LGORT = '1201'
OR LGORT = '1203'
OR LGORT = '1301' ).
IF SY-SUBRC = 0.
PERFORM QTY_SUMMATION.
ENDIF.
ENDSELECT.
ENDFORM. " GET_MARD_TX.
*&--------------------------------------------------------------------*
*& Form QTY_SUMMATION
*&--------------------------------------------------------------------*
* text
*---------------------------------------------------------------------*
FORM QTY_SUMMATION.
IF TWK3-LGORT+0(2) = '11'.
ADD: TWK3-LABST TO TWK1-LBKUM_HK
,TWK3-UMLME TO TWK1-LBKUM_HK
,TWK3-INSME TO TWK1-LBKUM_HK
,TWK3-EINME TO TWK1-LBKUM_HK
,TWK3-SPEME TO TWK1-LBKUM_HK
,TWK3-RETME TO TWK1-LBKUM_HK.
ELSEIF TWK3-LGORT = '1201'
OR TWK3-LGORT = '1203'
OR TWK3-LGORT = '1301'.
ADD: TWK3-LABST TO TWK1-LBKUM_TX
,TWK3-UMLME TO TWK1-LBKUM_TX
,TWK3-INSME TO TWK1-LBKUM_TX
,TWK3-EINME TO TWK1-LBKUM_TX
,TWK3-SPEME TO TWK1-LBKUM_TX
,TWK3-RETME TO TWK1-LBKUM_TX.
ENDIF.
ENDFORM. " QTY_SUMMATION.
*&--------------------------------------------------------------------*
*& Form GET_MBEW_N_OTHER_DATA
*&--------------------------------------------------------------------*
* text
*---------------------------------------------------------------------*
FORM GET_MBEW_N_OTHER_DATA.
CLEAR: TWK4.
* Material MBEW Data
SELECT SINGLE
MATNR
* VPRSV
* VERPR
* STPRS
PEINH
INTO TWK4
FROM MBEW
WHERE MATNR = TWK1-MATNR
AND BWKEY = '1000'.
* IF TWK4-VPRSV = 'S'.
* MOVE TWK4-STPRS TO TWK1-VERPR.
* ELSE.
* MOVE TWK4-VERPR TO TWK1-VERPR.
* ENDIF.
MOVE TWK4-PEINH TO TWK1-PEINH.
* IF TWK1-PEINH <> 0.
* TWK1-SALK3_HK = TWK1-LBKUM_HK * TWK1-VERPR / TWK1-PEINH.
* TWK1-SALK3_TX = TWK1-LBKUM_TX * TWK1-VERPR / TWK1-PEINH.
* ENDIF.
ADD: TWK1-LBKUM_HK TO TT_LBKUM_HK
,TWK1-LBKUM_TX TO TT_LBKUM_TX
,TWK1-LBKUM_TOT TO TT_LBKUM_TOT
* ,TWK1-SALK3_HK TO TT_SALK3_HK
* ,TWK1-SALK3_TX TO TT_SALK3_TX
,TWK1-SALK3_TOT TO TT_SALK3_TOT.
* Material name
SELECT SINGLE MAKTX
INTO TWK1-MAKTX
FROM MAKT
WHERE MATNR = TWK1-MATNR
AND SPRAS = SY-LANGU.
* Material Unit of Measure
SELECT SINGLE MEINS
INTO TWK1-MEINS
FROM MARA
WHERE MATNR = TWK1-MATNR.
ENDFORM. " GET_MBEW_N_OTHER_DATA.
*---------------------------------------------------------------------*
* FORM WRITE_RPT *
*---------------------------------------------------------------------*
* ........ *
*---------------------------------------------------------------------*
FORM WRITE_RPT.
LOOP AT TWK1.
IF WK_FIRST_PAGE IS INITIAL.
MOVE 'N' TO WK_FIRST_PAGE.
PERFORM PRINT_HEADER.
ENDIF.
WRITE: /001 ' '
,002 TWK1-EKGRP
,010 TWK1-MATNR
,026 TWK1-LBKUM_HK
* ,044 TWK1-SALK3_HK
,044 TWK1-LBKUM_TX
* ,080 TWK1-SALK3_TX
,062 TWK1-LBKUM_TOT
,080 TWK1-SALK3_TOT
* ,1348 TWK1-VERPR
,098 TWK1-MEINS
,106 TWK1-PEINH
,115 TWK1-MAKTX.
ENDLOOP.
WRITE:/' '.
ENDFORM. " WRITE_RPT.
*&--------------------------------------------------------------------*
*& Form PRINT_HEADER
*&--------------------------------------------------------------------*
* text
*---------------------------------------------------------------------*
FORM PRINT_HEADER.
WRITE: /002 'DATE '
,007 SY-DATUM
,028 'TIME '
,033 SY-UZEIT
,066 'List of MATERIALS, UNIT PRICE, QUANTITIES, VALUES'
,123 'PAGE '
,128 SY-PAGNO NO-ZERO.
SKIP.
WRITE: /001 ' '
,002 'PUR GRP'
,010 'MATERIAL '
,033 'STK QTY HK'
* ,051 'STK VAL HK'
,051 'STK QTY TX'
* ,087 'STK VAL TX'
,069 'STK QTY TTL'
,087 'STK VAL TTL'
* ,138 'MATL PRICE'
,105 'Un Mea'
,113 'Price Unt'
,122 'Material Description'.
SKIP.
ULINE.
ENDFORM. " PRINT_HEADER
导入论坛 引用链接 收藏 分享给好友 推荐到圈子 管理 举报
TAG:

