*&---------------------------------------------------------------------*
*& Report ZVVF_MR025_WEIGHBRIDGE_SDDSPLY *
*&---------------------------------------------------------------------*
REPORT ZVVF_MR025_WEIGHBRIDGE_SDDSPLY no standard page heading line-size
110 MESSAGE-ID ZMM .
*----------------------------------------------------------------------
** Module Sales *
*----------------------------------------------------------------------
** Objective: OBD Status Report
** Program : Updates tables ( ) Download data ( )
** Output Lists (X) ALV
**
**---------------------------------------------------------------------*
* External Dependencies
**---------------------------------------------------------------------*
*
**---------------------------------------------------------------------*
* Amendment History
**---------------------------------------------------------------------*
* Who Change ID Reason
*** ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
*---------------------------------------------------------------------**
* Type-pools
*----------------------------------------------------------------------*
TYPE-POOLS : slis.
*---------------------------------------------------------------------*
**TABLES :
*---------------------------------------------------------------------*
TABLES : ZVVF_MT25_OUTMOV, "Weigh Bridge Down Loaded Details
ekpo, " Purchasing Document Item
MKPF. " Header: Material Document
*---------------------------------------------------------------------*
**CONSTANTS :
*---------------------------------------------------------------------*
*--- For ALV ----*
CONSTANTS: c_top_of_page_db TYPE slis_formname VALUE 'TOP_OF_PAGE_DB'.
*---------------------------------------------------------------------*
**DATA :
*---------------------------------------------------------------------*
DATA : W_REPID LIKE SY-REPID,
W_ANS type n,
w_ok like sy-ucomm,
W_MODE LIKE CTU_PARAMS-DISMODE.
*---------------------------------------------------------------------*
**INTERNAL TABLES :
*---------------------------------------------------------------------*
*--- For ALV ----*
DATA: it_list_top_of_page TYPE slis_t_listheader,
it_events TYPE slis_t_event,
it_fieldcat TYPE slis_t_fieldcat_alv.
*---------------*
DATA: IT_PODAT TYPE TABLE OF ZVVF_MT25_OUTMOV WITH HEADER LINE.
*---------------------------------------------------------------------*
**WORK AREAS
*---------------------------------------------------------------------*
DATA: WA_PODAT LIKE LINE OF IT_PODAT,
WA_layout TYPE slis_layout_alv. " For ALV
*---------------------------------------------------------------------*
**SELECTION SCREEN
*---------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF BLOCK MAIN WITH FRAME TITLE TEXT-001.
select-options : so_DATE for MKPF-BUDAT obligatory.
SELECTION-SCREEN END OF BLOCK MAIN .
*---------------------------------------------------------------------*
**INITIALIZATION :
*---------------------------------------------------------------------*
INITIALIZATION.
w_repid = SY-REPID.
*---------------------------------------------------------------------*
**AT SELECTION SCREEN :
*---------------------------------------------------------------------*
AT SELECTION-SCREEN.
PERFORM Check_DATA.
*---------------------------------------------------------------------*
**START OF SELECTION :
*---------------------------------------------------------------------*
START-OF-SELECTION.
LOOP AT IT_podat INTO WA_podat.
PERFORM MATNR_FORMAT.
MODIFY IT_podat FROM WA_podat TRANSPORTING MATNR.
endloop.
*---------------------------------------------------------------------*
**END OF SELECTION :
*---------------------------------------------------------------------*
END-OF-SELECTION.
PERFORM fieldcat_init USING it_fieldcat[].
PERFORM eventtab_build USING it_events[].
PERFORM comment_build USING it_list_top_of_page[].
PERFORM layout_build USING WA_layout.
PERFORM write_alv_grid.
*&---------------------------------------------------------------------*
*& Form Check_DATA
*&---------------------------------------------------------------------*
FORM Check_DATA.
**Select all credit memo which are not yet posted
select * from ZVVF_MT25_OUTMOV into corresponding fields of table
it_podat where
ZDATE in so_DATE.
IF SY-SUBRC NE 0.
MESSAGE E005.
ENDIF.
endform. "Check_DATA
*&--------------------------------------------------------------------*
*& Form fieldcat_init
*&--------------------------------------------------------------------*
* text
*---------------------------------------------------------------------*
* -->IT_FIELDCATtext
*---------------------------------------------------------------------*
FORM fieldcat_init USING lt_fieldcat TYPE slis_t_fieldcat_alv.
DATA : wa_fieldcat TYPE slis_fieldcat_alv.
DATA :w_pos TYPE i VALUE 0.
w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_PODAT'.
wa_fieldcat-fieldname = 'ZPOST'.
wa_fieldcat-seltext_m = 'OBD Posted to WeighBridge' .
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '20'.
wa_fieldcat-checkbox = 'X'.
APPEND wa_fieldcat TO lt_fieldcat.
w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_PODAT'.
wa_fieldcat-fieldname = 'ZDOWN'.
wa_fieldcat-seltext_m = 'Downloaded OBD' .
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '1'.
wa_fieldcat-checkbox = 'X'.
APPEND wa_fieldcat TO lt_fieldcat.
w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_PODAT'.
wa_fieldcat-fieldname = 'ZUPDT'.
wa_fieldcat-seltext_m = 'Batch Updated OBD' .
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '1'.
wa_fieldcat-checkbox = 'X'.
APPEND wa_fieldcat TO lt_fieldcat.
w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_PODAT'.
wa_fieldcat-fieldname = 'ZBLCK'.
wa_fieldcat-seltext_m = 'Blocked OBD' .
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '1'.
wa_fieldcat-checkbox = 'X'.
APPEND wa_fieldcat TO lt_fieldcat.
w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_PODAT'.
wa_fieldcat-fieldname = 'VBELN'.
wa_fieldcat-seltext_m = 'Delivery No'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.
w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_PODAT'.
wa_fieldcat-fieldname = 'WERKS'.
wa_fieldcat-seltext_m = 'Plant'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.
w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_PODAT'.
wa_fieldcat-fieldname = 'GMENGE'.
wa_fieldcat-seltext_m = 'Gross Wt.'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.
w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_PODAT'.
wa_fieldcat-fieldname = 'TMENGE'.
wa_fieldcat-seltext_m = 'Tare Wt.'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.
w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_PODAT'.
wa_fieldcat-fieldname = 'ZLFIMG'.
wa_fieldcat-seltext_m = 'Net Wt.'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.
w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_PODAT'.
wa_fieldcat-fieldname = 'LFIMG'.
wa_fieldcat-seltext_m = 'Outbond Delivery Qty'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.
w_pos = w_pos + 1.
CLEAR wa_fieldcat.
wa_fieldcat-col_pos = w_pos.
wa_fieldcat-tabname = 'IT_PODAT'.
wa_fieldcat-fieldname = 'ZSLIPNO'.
wa_fieldcat-seltext_m = 'Weighslip No.'.
wa_fieldcat-emphasize = 'C410'.
wa_fieldcat-outputlen = '15'.
APPEND wa_fieldcat TO lt_fieldcat.
ENDFORM. " fieldcat_init
*&---------------------------------------------------------------------*
*& Form eventtab_build
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->P_it_EVENTS[] text
*----------------------------------------------------------------------*
FORM eventtab_build USING lt_events TYPE slis_t_event.
DATA: wa_event TYPE slis_alv_event.
DATA: c_top_of_page TYPE slis_formname.
c_top_of_page = c_top_of_page_db.
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
i_list_type = 0
IMPORTING
et_events = lt_events.
READ TABLE lt_events WITH KEY name = slis_ev_top_of_page
INTO wa_event.
IF sy-subrc <> 0.
MOVE c_top_of_page TO wa_event-form.
APPEND wa_event TO lt_events.
ELSE.
MOVE c_top_of_page TO wa_event-form.
MODIFY lt_events FROM wa_event INDEX sy-tabix .
ENDIF.
ENDFORM. " eventtab_build
*&---------------------------------------------------------------------*
*& Form comment_build
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->P_it_LIST_TOP_OF_PAGE[] text
*----------------------------------------------------------------------*
FORM comment_build USING lt_top_of_page TYPE slis_t_listheader.
DATA: wa_line TYPE slis_listheader.
CLEAR wa_line.
wa_line-typ = 'H'.
wa_line-info = 'VVF LTD. Mumbai'.
APPEND wa_line TO lt_top_of_page.
wa_line-typ = 'H'.
wa_line-info = SY-ULINE.
APPEND wa_line TO lt_top_of_page.
wa_line-typ = 'H'.
wa_line-info = 'OBD Status Report'.
APPEND wa_line TO lt_top_of_page.
ENDFORM. " comment_build
*&---------------------------------------------------------------------*
*& Form layout_build
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->P_WA_layout text
*----------------------------------------------------------------------*
FORM layout_build USING wa_layout TYPE slis_layout_alv.
wa_layout-zebra = 'X'.
wa_layout-colwidth_optimize = 'X'.
wa_layout-no_totalline = 'X'.
* wa_layout-edit = 'X'.
ENDFORM. " layout_build
*&---------------------------------------------------------------------*
*& Form write_alv_grid
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM write_alv_grid.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = w_repid
* i_callback_user_command = 'USER_COMMAND'
* i_callback_PF_STATUS_SET = 'PF_STATUS'
i_background_id = 'ALV_BACKGROUND'
I_CALLBACK_TOP_OF_PAGE = c_top_of_page_db
is_layout = WA_layout
it_fieldcat = it_fieldcat[]
it_events = it_events[]
* i_save = 'A'
* I_DEFAULT = 'X'
TABLES
t_outtab = IT_PODAT
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.
ENDFORM. " write_alv_grid
*---------------------------------------------------------------------*
* FORM TOP_OF_PAGE_DB *
*---------------------------------------------------------------------*
* ........ *
*---------------------------------------------------------------------*
FORM TOP_OF_PAGE_DB.
*
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
it_list_commentary = it_list_top_of_page
i_logo = ' '.
ENDFORM. "top_of_page_db
*&--------------------------------------------------------------------*
*& Form MATNR_FORMAT
*&--------------------------------------------------------------------*
* MATNR FORMAT
*---------------------------------------------------------------------*
FORM MATNR_FORMAT.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
EXPORTING
INPUT = WA_podat-MATNR
IMPORTING
OUTPUT = WA_podat-MATNR.
ENDFORM.
No comments:
Post a Comment