‎2009 Jan 28 4:28 AM
Hi, everyone !
When i use ALV display data of ITAB occurs a problem !
My ITAB hava hundred field. but only displayed 90 field.
Please help me !
Thanks Advanced !
‎2009 Jan 28 4:35 AM
‎2009 Jan 28 6:35 AM
‎2009 Jan 28 6:38 AM
hi,
then how are you getting output for 90 fields.
is it coming without creating fieldcatalog?
‎2009 Jan 28 6:39 AM
https://forums.sdn.sap.com/click.jspa?searchID=21509342&messageID=6504967
Just see whether this thread could help you.
‎2009 Jan 28 10:34 AM
hi
Dispalyed the fields in the output doesn't depend on the fields present in the internal table..
it come from the structure you are passing to ur function module to create an alv or ur class method..
so your structure might be having only 90 fields that u are seeing in the display...
and this is way to enhance your field catalogue....
merging the new 10 fields and old 90 that this with you in a structure...
CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
EXPORTING
i_structure_name = 'SFLIGHT
CHANGING
ct_fieldcat = lt_fieldcat.
DESCRIBE TABLE lt_fieldcat LINES lv_fieldcat_rows.
ls_fieldcat-col_pos = ( lv_fieldcat_rows + 1 ).
ls_fieldcat-fieldname = text-l14.
ls_fieldcat-seltext_l = text-l07.
ls_fieldcat-seltext_m = text-l06.
ls_fieldcat-seltext_s = text-l06.
ls_fieldcat-datatype = 'CHAR'.
ls_fieldcat-ref_tabname = 'KOMWBHK_LIST_DISPLAY'.
APPEND ls_fieldcat TO lt_fieldcat.
CLEAR: ls_fieldcat.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY' "TC List
EXPORTING i_callback_program = g_my_name_is
i_callback_pf_status_set = 'PF_STATUS_SET'
i_callback_user_command = 'USER_COMMAND_TC'
it_fieldcat = lt_fieldcat
is_layout = l_layout
i_save = yes
is_variant = p_gs_disvariant
TABLES t_outtab = pt_komwbhk_list
‎2009 Jan 28 11:01 AM
‎2009 Jan 28 11:12 AM
Hi ,
Specify u r itab with Occurs 1 or 2.
Then it ma ysolve problem.
I willsuggest you dont use occurs statement.
Thanks
‎2009 Jan 28 11:22 AM
hi try this ...
REPORT ZALV_TEST.
data: it_mara type table of mara,
g_table type ref to cl_salv_table,
g_functions type ref to cl_salv_functions,
g_display type ref to cl_salv_display_settings.
start-of-selection.
Select * into table it_mara from mara up to 10 rows.
cl_salv_table=>factory( importing r_salv_table = g_table changing
t_table = it_mara ).
g_functions = g_table->get_functions( ).
g_functions->set_all( abap_true ).
g_table->display( ).
‎2009 Jan 28 11:33 AM
Hi,
For Printing more than 90 fields in alv use NO_OUT of fieldcat field, if it is having value is 'X',then it will not display the field, so you need to modify fieldcat internal table by assigning SPACE all ways so that it will display all fields how many you want.
Ex: Loop at i_fieldcat into wa_fieldcat.
IF wa_fieldcat-no_out = 'X',
wa_fieldcat-no_out = ' '.
ENDIF.
modify i_fieldcat from wa_fieldcat transportinig no_out.
clear wa_fieldcat.
ENDLOOP.
after then you use,
CALL METHOD alv_grid->set_table_for_first_display
i think it will help you.
‎2009 Feb 13 12:33 AM
‎2009 Jan 28 11:39 AM