|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Como colocar los titulos de un ALV Jerarquico (las posiciones en la Cabecera)
FORM append_alv_for_documents .
DATA: ls_layout TYPE slis_layout_alv, lt_fieldcat TYPE slis_t_fieldcat_alv, lt_fieldcat_all TYPE slis_t_fieldcat_alv, lt_eventtab TYPE slis_t_event, ls_key TYPE slis_keyinfo_alv, ls_events TYPE slis_alv_event. FIELD-SYMBOLS: <ls_fieldcat> TYPE slis_fieldcat_alv. CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE' EXPORTING i_program_name = sy-repid i_structure_name = 'FAGL_S_RFBELJ10_DOCUMENTS_HEAD' CHANGING ct_fieldcat = lt_fieldcat EXCEPTIONS inconsistent_interface = 1 program_error = 2 OTHERS = 3. IF sy-subrc <> 0. MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4. ENDIF. LOOP AT lt_fieldcat ASSIGNING <ls_fieldcat>. <ls_fieldcat>-tabname = 'HEAD'. CASE <ls_fieldcat>-fieldname. * WHEN 'USNAM'. * <ls_fieldcat>-no_out = 'X'. * if poland is initial. * <ls_fieldcat>-no_out = 'X'. * endif. WHEN 'BUKRS' OR 'GJAHR'. <ls_fieldcat>-no_out = 'X'. * WHEN 'NUMBR'. * <ls_fieldcat>-seltext_l = text-140. * <ls_fieldcat>-seltext_m = text-140. * <ls_fieldcat>-seltext_s = text-140. * <ls_fieldcat>-reptext_ddic = text-140. * <ls_fieldcat>-no_zero = 'X'. WHEN 'WAERS'. <ls_fieldcat>-no_out = 'X'. WHEN 'CPUDT'. <ls_fieldcat>-no_out = 'X'. WHEN 'BLDAT'. <ls_fieldcat>-no_out = 'X'. WHEN 'BLAR'. <ls_fieldcat>-no_out = 'X'. WHEN 'DOCNR'. <ls_fieldcat>-no_out = 'X'. WHEN 'RYEAR'. <ls_fieldcat>-no_out = 'X'. WHEN 'STBLG'. <ls_fieldcat>-no_out = 'X'. WHEN 'STJAH'. <ls_fieldcat>-no_out = 'X'. ENDCASE. ENDLOOP. APPEND LINES OF lt_fieldcat TO lt_fieldcat_all. REFRESH lt_fieldcat. CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE' EXPORTING i_program_name = sy-repid i_structure_name = 'FAGL_S_RFBELJ10_DOCUMENTS_ITEM' CHANGING ct_fieldcat = lt_fieldcat EXCEPTIONS inconsistent_interface = 1 program_error = 2 OTHERS = 3. LOOP AT lt_fieldcat ASSIGNING <ls_fieldcat>. <ls_fieldcat>-tabname = 'ITEM'. CASE <ls_fieldcat>-fieldname. WHEN 'BUKRS' OR 'GJAHR' OR 'BELNR' OR 'NUMBR' OR 'HWAER' OR 'NAME2' OR 'PSTLZ' OR 'ORT01' OR 'STRAS' OR 'SGTXT'. <ls_fieldcat>-no_out = 'X'. WHEN 'WRSHB'. <ls_fieldcat>-no_out = 'X'. WHEN 'BUZEI'. <ls_fieldcat>-no_out = 'X'. WHEN 'DOCLN'. <ls_fieldcat>-no_out = 'X'. WHEN 'GSBER'. <ls_fieldcat>-no_out = 'X'. WHEN 'BSCHL'. <ls_fieldcat>-no_out = 'X'. WHEN 'UMSKZ'. <ls_fieldcat>-no_out = 'X'. WHEN ' XNEGP'. <ls_fieldcat>-no_out = 'X'. WHEN 'KOART'. <ls_fieldcat>-no_out = 'X'. "note955881 WHEN 'XNEGP'. <ls_fieldcat>-no_out = 'X'. WHEN 'DMHAB'. "HABER <ls_fieldcat>-do_sum = 'X'. IF italy IS INITIAL. "note955881 <ls_fieldcat>-no_zero = 'X'. <ls_fieldcat>-seltext_l = text-131. <ls_fieldcat>-seltext_m = text-131. <ls_fieldcat>-seltext_s = text-131. <ls_fieldcat>-reptext_ddic = text-131. ENDIF. * <ls_fieldcat>-outputlen = 15. WHEN 'DMSOL'. "DEBE <ls_fieldcat>-do_sum = 'X'. IF italy IS INITIAL. "note955881 <ls_fieldcat>-no_zero = 'X'. <ls_fieldcat>-seltext_l = text-130. <ls_fieldcat>-seltext_m = text-130. <ls_fieldcat>-seltext_s = text-130. <ls_fieldcat>-reptext_ddic = text-130. ENDIF. * <ls_fieldcat>-outputlen = 15. WHEN 'DOCLN'. IF NOT fagl_active IS INITIAL AND par_docc IS INITIAL. ELSE. <ls_fieldcat>-no_out = 'X'. ENDIF. ENDCASE. ENDLOOP. APPEND LINES OF lt_fieldcat TO lt_fieldcat_all. ls_layout-list_append = 'X'. ls_layout-min_linesize = 255. ls_layout-info_fieldname = 'COLOR'. ls_events-name = 'END_OF_LIST'. ls_events-form = 'OUTPUT_EOL'. append ls_events to lt_eventtab. ls_events-name = 'TOP_OF_PAGE'. ls_events-form = 'TOP_OF_PAGE'. APPEND ls_events TO lt_eventtab. ls_events-name = 'END_OF_PAGE'. ls_events-form = 'END_OF_PAGE'. APPEND ls_events TO lt_eventtab. ls_key-header01 = 'BUKRS'. ls_key-item01 = 'BUKRS'. ls_key-header02 = 'BELNR'. ls_key-item02 = 'BELNR'. ls_key-header03 = 'GJAHR'. ls_key-item03 = 'GJAHR'. gs_variant-report = sy-repid. gs_variant-variant = par_var1. CALL FUNCTION 'REUSE_ALV_HIERSEQ_LIST_DISPLAY' EXPORTING i_callback_program = sy-repid is_layout = ls_layout it_fieldcat = lt_fieldcat_all * it_sort = lt_sort_acc is_variant = gs_variant i_save = 'A' it_events = lt_eventtab i_tabname_header = 'HEAD' i_tabname_item = 'ITEM' is_keyinfo = ls_key is_print = gs_print TABLES t_outtab_header = gt_doc_head t_outtab_item = gt_doc_item 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. (Necesito colocar las posiciones en la misma linea de la cabecera |
Herramientas | Buscar en Tema |
Desplegado | |
|
|