Hi Rob Burbank,
My coding is taking so much time for the execution.
How to simplify run time.
Please tell me how to optimize time.
TABLES : WB2_V_MKPF_MSEG2,MACKW.
RANGES : O_DATE FOR SY-DATUM.
DATA : BEGIN OF ITAB OCCURS 0.
INCLUDE STRUCTURE WB2_V_MKPF_MSEG2.
DATA : MTART TYPE MACKW-MTART.
DATA : END OF ITAB.
DATA : BEGIN OF IT_COL OCCURS 0,
MATNR_I TYPE WB2_V_MKPF_MSEG2-MATNR_I,
LGORT_I TYPE WB2_V_MKPF_MSEG2-LGORT_I,
MENGE_I TYPE WB2_V_MKPF_MSEG2-MENGE_I,
MEINS_I TYPE WB2_V_MKPF_MSEG2-MEINS_I,
LGOBE TYPE T001L-LGOBE,
END OF IT_COL.
SELECT-OPTIONS: S_BUKRS FOR WB2_V_MKPF_MSEG2-BUKRS_I,
S_WERKS FOR WB2_V_MKPF_MSEG2-WERKS_I,
S_MATNR FOR WB2_V_MKPF_MSEG2-MATNR_I,
S_MTART FOR MACKW-MTART,
S_BUDAT FOR WB2_V_MKPF_MSEG2-BUDAT
NO-EXTENSION NO INTERVALS.
O_DATE-SIGN = 'I'.
O_DATE-OPTION = 'BT'.
O_DATE-LOW = '19780218'.
O_DATE-HIGH = S_BUDAT-LOW - 1.
APPEND O_DATE.
START-OF-SELECTION.
SELECT * FROM WB2_V_MKPF_MSEG2 AS A INNER JOIN MACKW
AS B ON B~MATNR = A~MATNR_I AND B~WERKS = A~WERKS_I
INTO CORRESPONDING FIELDS OF TABLE ITAB WHERE
A~MATNR_I IN S_MATNR AND A~WERKS_I IN S_WERKS AND
A~BUKRS_I IN S_BUKRS AND
A~BUDAT IN O_DATE AND
B~MTART IN S_MTART.
SORT ITAB BY BUDAT WERKS_I MTART MATNR_I .
LOOP AT ITAB.
IF ITAB-SHKZG_I = 'H'.
ITAB-MENGE_I = ITAB-MENGE_I * -1.
ENDIF.
MODIFY ITAB.
ENDLOOP.
LOOP AT ITAB.
MOVE : ITAB-MATNR_I TO IT_COL-MATNR_I,
ITAB-LGORT_I TO IT_COL-LGORT_I,
ITAB-MENGE_I TO IT_COL-MENGE_I.
COLLECT IT_COL.
ENDLOOP.
LOOP AT IT_COL.
WRITE : / IT_COL-LGORT_I,IT_COL-MATNR_I,IT_COL-MENGE_I.
ENDLOOP.
Regards,
Ur friend.
Well, that's better at least, but I'll move it to the correct forum.
Edited by: Rob Burbank on Jun 5, 2009 1:55 PM