ltp programmin

7
 *&-------------------- ------------------------------------------------- * *& REPORT ZPP_LTP_REPORT *& *&---------------------------------------------------------------------* *& *& Program Title : Long Term Planning Report. *& Program ID : ZPP_LTP_REPORT *& Module : PP *& Program Type : 1.Executable program *& Project : BULL *& Created By : Vikrant Machha *& Created Date : 12.03.2015 *& T-Code : ZLTP *& *&-------------------- ------------------------------------------------- * REPORT ZPP_LTP_REPORT. "provide tables TABLES: PLAF,MARA,MAKT,MARC,MBEW. "provide type-pools TYPE-POOLS: SLIS.  " Final Structure Declaration.. TYPES : BEGIN OF TY_FINAL,  MATNR TYPE MATNR,  GSMNG TYPE GSMNG,  PERTR TYPE PERTR,  PSTTR TYPE PSTTR,  PEDTR TYPE PEDTR,  MTART TYPE MTART,  MATKL TYPE MATKL,  MAKTX TYPE MAKTX,  LBKUM TYPE LBKUM,  MINBE TYPE MINBE,  EISBE TYPE EISBE, * DISLS TYPE DISLS,  EKGRP TYPE EKGRP,  DISPO TYPE DISPO,  MEINS TYPE MEINS,  BSTMI TYPE BSTMI,  WERKS TYPE WERKS,  END OF TY_FINAL.  "Internal table declaration for PLAF DATA: IT_PLAF TY PE TABLE OF PLAF, "WITH HEADE R LINE,  IT_MARA TYPE TABLE OF MARA,  IT_MAKT TYPE TABLE OF MAKT,  IT_MARC TYPE TABLE OF MARC,  IT_MBEW TYPE TABLE OF MBEW,  IT_FINAL TYPE TABLE OF TY_FINAL,  WA_PLAF TYPE PLAF,  WA_MARA TYPE MARA,  WA_MAKT TYPE MAKT,  WA_MARC TYPE MARC,  WA_MBEW TYPE MBEW,  WA_FINAL TYPE TY_FINAL,  " field catalog Inte rnal table declaration for PLAF  IT_FLDCAT TYPE SLIS_T_FIELDCAT_ALV,

Upload: mahendranpsiva

Post on 01-Nov-2015

1 views

Category:

Documents


0 download

DESCRIPTION

ltp

TRANSCRIPT

*&---------------------------------------------------------------------**& REPORT ZPP_LTP_REPORT*&*&---------------------------------------------------------------------**&*& Program Title : Long Term Planning Report.*& Program ID : ZPP_LTP_REPORT*& Module : PP*& Program Type : 1.Executable program*& Project : BULL*& Created By : Vikrant Machha*& Created Date : 12.03.2015*& T-Code : ZLTP*&*&---------------------------------------------------------------------*REPORT ZPP_LTP_REPORT."provide tablesTABLES: PLAF,MARA,MAKT,MARC,MBEW."provide type-poolsTYPE-POOLS: SLIS. " Final Structure Declaration..TYPES : BEGIN OF TY_FINAL, MATNR TYPE MATNR, GSMNG TYPE GSMNG, PERTR TYPE PERTR, PSTTR TYPE PSTTR, PEDTR TYPE PEDTR, MTART TYPE MTART, MATKL TYPE MATKL, MAKTX TYPE MAKTX, LBKUM TYPE LBKUM, MINBE TYPE MINBE, EISBE TYPE EISBE,* DISLS TYPE DISLS, EKGRP TYPE EKGRP, DISPO TYPE DISPO, MEINS TYPE MEINS, BSTMI TYPE BSTMI, WERKS TYPE WERKS, END OF TY_FINAL. "Internal table declaration for PLAFDATA: IT_PLAF TYPE TABLE OF PLAF, "WITH HEADER LINE, IT_MARA TYPE TABLE OF MARA, IT_MAKT TYPE TABLE OF MAKT, IT_MARC TYPE TABLE OF MARC, IT_MBEW TYPE TABLE OF MBEW, IT_FINAL TYPE TABLE OF TY_FINAL, WA_PLAF TYPE PLAF, WA_MARA TYPE MARA, WA_MAKT TYPE MAKT, WA_MARC TYPE MARC, WA_MBEW TYPE MBEW, WA_FINAL TYPE TY_FINAL, " field catalog Internal table declaration for PLAF IT_FLDCAT TYPE SLIS_T_FIELDCAT_ALV, WA_FCAT TYPE SLIS_FIELDCAT_ALV, WA_LAYOUT TYPE SLIS_LAYOUT_ALV.SELECTION-SCREEN : BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-000. SELECT-OPTIONS : S_WERKS FOR MARC-WERKS,"Plant S_DISPO FOR PLAF-DISPO,"MRP Controller S_MATNR FOR PLAF-MATNR,"Material number S_PLSCN for PLAF-PLSCN DEFAULT '002'."Planning scenario* PARAMETERS : S_PLSCN TYPE PLAF-PLSCN DEFAULT '002'.SELECTION-SCREEN :END OF BLOCK B1.START-OF-SELECTION.PERFORM GET_DATA.PERFORM COMBINE_DATA.PERFORM FIELDCATLOG.PERFORM LAYOUT.PERFORM DISPLAY_DATA.FORM GET_DATA. SELECT MATNR GSMNG PERTR PSTTR PEDTR FROM PLAF INTO CORRESPONDING FIELDS OF TABLE IT_PLAF WHERE DISPO IN S_DISPO AND MATNR IN S_MATNR AND PLSCN in S_PLSCN. IF IT_PLAF IS NOT INITIAL. SELECT MATNR MTART MATKL MEINS FROM MARA INTO CORRESPONDING FIELDS OF TABLE IT_MARA FOR ALL ENTRIES IN IT_PLAF WHERE MATNR = IT_PLAF-MATNR. ENDIF. IF IT_PLAF IS NOT INITIAL. SELECT MATNR MAKTX FROM MAKT INTO CORRESPONDING FIELDS OF TABLE IT_MAKT FOR ALL ENTRIES IN IT_PLAF WHERE MATNR = IT_PLAF-MATNR. ENDIF. IF IT_PLAF IS NOT INITIAL. SELECT MATNR LBKUM FROM MBEW INTO CORRESPONDING FIELDS OF TABLE IT_MBEW FOR ALL ENTRIES IN IT_PLAF WHERE MATNR = IT_PLAF-MATNR. ENDIF. IF IT_PLAF IS NOT INITIAL. SELECT MATNR MINBE EISBE DISLS EKGRP DISPO BSTMI WERKS FROM MARC INTO CORRESPONDING FIELDS OF TABLE IT_MARC FOR ALL ENTRIES IN IT_PLAF WHERE MATNR = IT_PLAF-MATNR AND DISPO IN S_DISPO AND WERKS IN S_WERKS. ENDIF.ENDFORM.FORM COMBINE_DATA. LOOP AT IT_PLAF INTO WA_PLAF. WA_FINAL-GSMNG = WA_PLAF-GSMNG. WA_FINAL-PERTR = WA_PLAF-PERTR. WA_FINAL-PSTTR = WA_PLAF-PSTTR. WA_FINAL-PEDTR = WA_PLAF-PEDTR. READ TABLE IT_MARA INTO WA_MARA WITH KEY MATNR = WA_PLAF-MATNR. WA_FINAL-MTART = WA_MARA-MTART. WA_FINAL-MATKL = WA_MARA-MATKL. WA_FINAL-MEINS = WA_MARA-MEINS. READ TABLE IT_MAKT INTO WA_MAKT WITH KEY MATNR = WA_PLAF-MATNR. WA_FINAL-MAKTX = WA_MAKT-MAKTX. READ TABLE IT_MBEW INTO WA_MBEW WITH KEY MATNR = WA_PLAF-MATNR. WA_FINAL-LBKUM = WA_MBEW-LBKUM. READ TABLE IT_MARC INTO WA_MARC WITH KEY MATNR = WA_PLAF-MATNR. WA_FINAL-MINBE = WA_MARC-MINBE. WA_FINAL-EISBE = WA_MARC-EISBE.* WA_FINAL-DISLS = WA_MARC-DISLS. WA_FINAL-EKGRP = WA_MARC-EKGRP. WA_FINAL-DISPO = WA_MARC-DISPO. WA_FINAL-BSTMI = WA_MARC-BSTMI. WA_FINAL-WERKS = WA_MARC-WERKS. CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING INPUT = WA_PLAF-MATNR IMPORTING OUTPUT = WA_PLAF-MATNR. WA_FINAL-MATNR = WA_PLAF-MATNR. APPEND WA_FINAL TO IT_FINAL. ENDLOOP.ENDFORM.FORM FIELDCATLOG." build field catalog for PLAF tableWA_FCAT-COL_POS = '1'.WA_FCAT-FIELDNAME = 'WERKS'.WA_FCAT-SELTEXT_M = 'PLANT'.*WA_FCAT-TABNAME = 'IT_MARC'.*WA_FCAT-EMPHASIZE = 'C210'.WA_FCAT-OUTPUTLEN = '20'.APPEND WA_FCAT TO IT_FLDCAT.WA_FCAT-COL_POS = '2'.WA_FCAT-FIELDNAME = 'MATNR'.WA_FCAT-SELTEXT_M = 'MATERIAL NUMBER'.*WA_FCAT-TABNAME = 'IT_PLAF'.*WA_FCAT-EMPHASIZE = 'C210'.WA_FCAT-OUTPUTLEN = '20'.APPEND WA_FCAT TO IT_FLDCAT.WA_FCAT-FIELDNAME = 'MAKTX'.WA_FCAT-COL_POS = '3'.WA_FCAT-SELTEXT_M = 'MATERIAL DESCRIPTION'.*WA_FCAT-TABNAME = 'IT_MAKT'.*WA_FCAT-EMPHASIZE = 'C410'.APPEND WA_FCAT TO IT_FLDCAT.WA_FCAT-COL_POS = '4'.WA_FCAT-FIELDNAME = 'GSMNG'.WA_FCAT-SELTEXT_M = 'ORDER QUANTITY'.*WA_FCAT-TABNAME = 'IT_PLAF'.WA_FCAT-EMPHASIZE = 'C500'.APPEND WA_FCAT TO IT_FLDCAT.CLEAR WA_FCAT.WA_FCAT-COL_POS = '5'.WA_FCAT-FIELDNAME = 'MEINS'.WA_FCAT-SELTEXT_M = 'UNITS OF MEASUREMENT'.*WA_FCAT-TABNAME = 'IT_MARA'.*WA_FCAT-EMPHASIZE = 'C410'.APPEND WA_FCAT TO IT_FLDCAT.WA_FCAT-COL_POS = '6'.WA_FCAT-FIELDNAME = 'PERTR'.WA_FCAT-SELTEXT_M = 'PLANNING OPEN DATE'.*WA_FCAT-TABNAME = 'IT_PLAF'.*WA_FCAT-EMPHASIZE = 'C510'.APPEND WA_FCAT TO IT_FLDCAT.WA_FCAT-COL_POS = '7'.WA_FCAT-FIELDNAME = 'PSTTR'.WA_FCAT-SELTEXT_M = 'ORDER START DATE'.*WA_FCAT-TABNAME = 'IT_PLAF'.*WA_FCAT-EMPHASIZE = 'C110'.APPEND WA_FCAT TO IT_FLDCAT.WA_FCAT-COL_POS = '8'.WA_FCAT-FIELDNAME = 'PEDTR'.WA_FCAT-SELTEXT_M = 'ORDER END DATE'.*WA_FCAT-TABNAME = 'IT_PLAF'.*WA_FCAT-EMPHASIZE = 'C410'.APPEND WA_FCAT TO IT_FLDCAT.WA_FCAT-COL_POS = '9'.WA_FCAT-FIELDNAME = 'MTART'.WA_FCAT-SELTEXT_M = 'MATERIAL TYPE'.*WA_FCAT-TABNAME = 'IT_MARA'.*WA_FCAT-EMPHASIZE = 'C410'.APPEND WA_FCAT TO IT_FLDCAT.WA_FCAT-COL_POS = '10'.WA_FCAT-FIELDNAME = 'MATKL'.WA_FCAT-SELTEXT_M = 'MATERIAL GROUP'.*WA_FCAT-TABNAME = 'IT_MARA'.*WA_FCAT-EMPHASIZE = 'C410'.APPEND WA_FCAT TO IT_FLDCAT.WA_FCAT-COL_POS = '11'.WA_FCAT-FIELDNAME = 'LBKUM'.WA_FCAT-SELTEXT_M = 'CURRENT STOCK'.*WA_FCAT-TABNAME = 'IT_MBEW'.*WA_FCAT-EMPHASIZE = 'C410'.APPEND WA_FCAT TO IT_FLDCAT.WA_FCAT-COL_POS = '12'.WA_FCAT-FIELDNAME = 'MINBE'.WA_FCAT-SELTEXT_M = 'ROP'.*WA_FCAT-TABNAME = 'IT_MARC'.*WA_FCAT-EMPHASIZE = 'C410'.APPEND WA_FCAT TO IT_FLDCAT.WA_FCAT-COL_POS = '13'.WA_FCAT-FIELDNAME = 'EISBE'.WA_FCAT-SELTEXT_M = 'SAFETY STOCK'.*WA_FCAT-TABNAME = 'IT_MARC'.*WA_FCAT-EMPHASIZE = 'C410'.APPEND WA_FCAT TO IT_FLDCAT.*WA_FCAT-FIELDNAME = 'DISLS'.*WA_FCAT-SELTEXT_M = 'LOT SIZE'.*WA_FCAT-TABNAME = 'IT_MARC'.*WA_FCAT-EMPHASIZE = 'C410'.*APPEND WA_FCAT TO IT_FLDCAT.WA_FCAT-COL_POS = '14'.WA_FCAT-FIELDNAME = 'BSTMI'.WA_FCAT-SELTEXT_M = 'MIN LOT SIZE'.*WA_FCAT-TABNAME = 'IT_MARC'.*WA_FCAT-EMPHASIZE = 'C410'.APPEND WA_FCAT TO IT_FLDCAT.WA_FCAT-COL_POS = '15'.WA_FCAT-FIELDNAME = 'EKGRP'.WA_FCAT-SELTEXT_M = 'PURCHASING GROUP'.*WA_FCAT-TABNAME = 'IT_MARC'.*WA_FCAT-EMPHASIZE = 'C410'.APPEND WA_FCAT TO IT_FLDCAT.WA_FCAT-COL_POS = '16'.WA_FCAT-FIELDNAME = 'DISPO'.WA_FCAT-SELTEXT_M = 'MRP CONTROLLER'.*WA_FCAT-TABNAME = 'IT_MARC'.*WA_FCAT-EMPHASIZE = 'C410'.APPEND WA_FCAT TO IT_FLDCAT.ENDFORM.FORM LAYOUT.* WA_LAYOUT-ZEBRA = 'X'. WA_LAYOUT-COLWIDTH_OPTIMIZE = 'X'.ENDFORM.FORM DISPLAY_DATA.IF IT_PLAF[] IS NOT INITIAL.CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY' EXPORTING* I_INTERFACE_CHECK = ' '* I_BYPASSING_BUFFER = ' '* I_BUFFER_ACTIVE = ' ' I_CALLBACK_PROGRAM = SY-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 =* I_GRID_SETTINGS = IS_LAYOUT = WA_LAYOUT IT_FIELDCAT = IT_FLDCAT* IT_EXCLUDING =* IT_SPECIAL_GROUPS =* IT_SORT =* IT_FILTER =* IS_SEL_HIDE = I_DEFAULT = 'X' I_SAVE = 'X'* IS_VARIANT =* 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* I_HTML_HEIGHT_TOP = 0* I_HTML_HEIGHT_END = 0* IT_ALV_GRAPHICS =* IT_HYPERLINK =* IT_ADD_FIELDCAT =* IT_EXCEPT_QINFO =* IR_SALV_FULLSCREEN_ADAPTER =* IMPORTING* E_EXIT_CAUSED_BY_CALLER =* ES_EXIT_CAUSED_BY_USER = TABLES T_OUTTAB = IT_FINAL* EXCEPTIONS* PROGRAM_ERROR = 1* OTHERS = 2 .IF SY-SUBRC 0.* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.ENDIF.ELSE. MESSAGE 'NO RECORDS FOUND' TYPE 'I'.ENDIF.ENDFORM.