Saturday, 29 November 2014

ALV in Executable Programing



TABLES zfms_cihr.
TYPE-POOLSslis.

DATAit_fcat TYPE slis_t_fieldcat_alv,         "  ALV Grid Support   RRCAT
wa_fcat 
TYPE LINE OF slis_t_fieldcat_alv.
DATA:  t_slis_layout_alv TYPE slis_layout_alv.
DATA seqnr TYPE i.                                        " VALUE 0.
DATA prg_name TYPE sy-repid.

 t_slis_layout_alv-colwidth_optimize 'X'.
  
PERFORM fill_catalog USING seqnr 'CINUM' 'Coal Invoice Number'.
  
PERFORM fill_catalog USING seqnr 'CINYR' 'Coal Invoice Year'.
  
PERFORM fill_catalog USING seqnr 'CIDAT' 'Coal Invoice Date'.
  
PERFORM fill_catalog USING seqnr 'DOCNO' 'Accounting Document Number'.
  
PERFORM fill_catalog USING seqnr 'DOCYR' 'Document Year'.
  
PERFORM fill_catalog USING seqnr 'LIFNR' 'Account Number of Vendor or Creditor '.
  
PERFORM fill_catalog USING seqnr 'WERKS' 'PLANT'.
  
PERFORM fill_catalog USING seqnr 'MIDSP' 'Mine Dispatch Point'.
  
PERFORM fill_catalog USING seqnr 'INCAT' 'Invoice Category'.
  
PERFORM fill_catalog USING seqnr 'DDTYP' 'Dispatch Document Type'.
  
PERFORM fill_catalog USING seqnr 'VBELN' 'Sales and Distribution Document Number'.
  
PERFORM fill_catalog USING seqnr 'INQTY' 'Invoice Quantity'.
  
PERFORM fill_catalog USING seqnr 'REFQT' 'Total Reference Quantity'.


*  PERFORM user_command USING ucomm selfield.
  prg_name 
sy-repid.



  
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
     
EXPORTING
*   I_INTERFACE_CHECK                 = ' '
*   I_BYPASSING_BUFFER                = ' '
*   I_BUFFER_ACTIVE                   = ' '
     i_callback_program                
prg_name
*   i_callback_pf_status_set          = 'SET_PF_STATUS'
*   i_callback_user_command           = '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                      
'COAL INVOICE DETAILS'
*   I_GRID_SETTINGS                   =
     is_layout                         
t_slis_layout_alv
       it_fieldcat                       
it_fcat
*   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
       
EXCEPTIONS
       program_error                     
1
       
OTHERS                            2
              
.


  
IF sy-subrc <> 0.
* Implement suitable error handling here
  
ENDIF.
ENDFORM.                    " SHOW_DATA


FORM FILL_CATALOG  USING    P_SEQNR
                            
VALUE(P_0074)
                            
VALUE(P_0075).

  
CLEAR wa_fcat.
  wa_fcat
-col_pos p_seqnr.
  wa_fcat
-fieldname p_0074.
  wa_fcat
-seltext_m p_0075.
  
ADD TO seqnr.

*  IF wa_fcat-fieldname+0(1) = 'O'.
*    wa_fcat-emphasize = 'X'.
*  ENDIF.
*  ADD 1 TO seqnr.
  
APPEND wa_fcat TO it_fcat.

ENDFORM.                    " FILL_CATALOG

No comments:

Post a Comment