Все приводить не буду...
* Определение каталогов, для создания и для вывода они как я понял разные
data: fieldcat type lvc_t_fcat,
data: g_t_fieldcat type slis_t_fieldcat_alv,
g_t_sort type slis_t_sortinfo_alv,
g_f_layout type slis_layout_alv,
g_t_sel_crit type slis_sel_hide_alv,
gt_events type slis_t_event.
* Выбор количества колонок с показателями
select max( col ) from zfm_art_assign_c into column.
* Заполнение каталога для создания таблицы, тут пропущен кусок в котором описываются постоянные поля, они текстовые с ними проблем нет
col1 = 1.
while col1 <= column.
clear l_t_fieldcat.
add 1 to l_cnt_colpos.
l_t_fieldcat-col_pos = l_cnt_colpos.
shift col1 left deleting leading '0'.
concatenate 'COL' col1 into fn.
l_t_fieldcat-fieldname = fn.
* l_t_fieldcat-dd_outlen = 15.
l_t_fieldcat-outputlen = '15'.
* l_t_fieldcat-inttype = 'N'.
l_t_fieldcat-decimals = 2.
l_t_fieldcat-datatype = 'CURR'.
l_t_fieldcat-decimals_o = 2.
l_t_fieldcat-round = 2.
append l_t_fieldcat to fieldcat .
col1 = col1 + 1.
endwhile.
...
* Заполнение каталога для вывода таблицы, тут также пропущен кусок в котором описываются постоянные поля
col1 = 1.
while col1 <= column.
i = col1.
clear l_f_fieldcat.
add 1 to l_cnt_colpos.
l_f_fieldcat-col_pos = l_cnt_colpos.
l_f_fieldcat-key = ' '.
shift col1 left deleting leading '0'.
concatenate 'COL' col1 into fn.
l_f_fieldcat-fieldname = fn.
l_f_fieldcat-seltext_l = ' '.
l_f_fieldcat-seltext_m = ' '.
select single text from zfm_assign_rep_c
into l_f_fieldcat-seltext_m
where col = i.
l_f_fieldcat-seltext_s = ' '.
l_f_fieldcat-no_out = ' '.
* l_f_fieldcat-outputlen = '15'.
l_f_fieldcat-do_sum = 'X'.
l_f_fieldcat-datatype = 'CURR'.
l_f_fieldcat-decimals_out = '2'.
* l_f_fieldcat-round = 3.
l_f_fieldcat-no_zero = 'X'.
l_f_fieldcat-lzero = ''.
append l_f_fieldcat to c_t_fieldcat.
col1 = col1 + 1.
endwhile.
* Ну и вывод
call function 'REUSE_ALV_LIST_DISPLAY'
exporting
* I_INTERFACE_CHECK = ' '
* I_BYPASSING_BUFFER =
* I_BUFFER_ACTIVE = ' '
i_callback_program = sy-cprog
* I_CALLBACK_PF_STATUS_SET = c_formname_pf_status_set
i_callback_user_command = 'USER_COMMAND'
* i_structure_name = '<TAB>'
is_layout = g_f_layout
it_fieldcat = g_t_fieldcat
* IT_EXCLUDING =
* IT_SPECIAL_GROUPS =
it_sort = g_t_sort
* IT_FILTER =
* IS_SEL_HIDE =
i_default = 'X'
i_save = ' '
* IS_VARIANT =
it_events = gt_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
* IMPORTING
* E_EXIT_CAUSED_BY_CALLER =
* ES_EXIT_CAUSED_BY_USER =
tables
t_outtab = <tab>
exceptions
others = 1.
Всем заранее спасибо за помощь[/b]
_________________ Все будет хорошо... http://sap-blog.ru/
|