2007 Oct 03 3:56 PM
Hi All
I am doing field catalog merge for a structure using the FM
'LVC_FIELDCATALOG_MERGE' . I am passing the structure to this FM.
Initially there were 14 fields in the structure. I added a new field
and activated the structure. But it still shows only 14 fields instead of 15.
Please Reply ASAP.
Thanks.
Praveena.
Hi,
Use the fieldcatalog table used under changing parameter
ct_fieldcat = fieldcat
loop at fieldcat.
if fieldcat-fieldname = 'FIELDNAME'.
fieldcat-no_OUT = 'X'.
fieldcat-tech = 'X'.
modify fieldcat.
endif.
endloop.
Thanks,
Sriram Ponna.
2007 Oct 03 4:00 PM
Hi,
CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'
EXPORTING
I_BUFFER_ACTIVE = 'X' " Put this as X
I_STRUCTURE_NAME = 'SFLIGHT'
I_CLIENT_NEVER_DISPLAY = 'X'
I_BYPASSING_BUFFER = 'X' " Put this as X
I_INTERNAL_TABNAME =
CHANGING
ct_fieldcat = fieldcat
EXCEPTIONS
INCONSISTENT_INTERFACE = 1
PROGRAM_ERROR = 2
OTHERS = 3.
Regards
Sudheer
2007 Oct 03 4:01 PM
Yes, go in debug mode.Keep a break point at K_KKB_FIELDCAT_MERGE.
This fm has following code. Keep a break point in second ALV_CHECK_BUFFER.
call function 'ALV_CHECK_BUFFER'
exporting
i_buffer_type = 'A'
i_buffer_active = i_buffer_active
i_bypassing_buffer = i_bypassing_buffer
i_refresh_buffer = ' '
importing
e_import = l_import
e_export = l_export
e_delete = l_delete.
call function 'ALV_CHECK_BUFFER'
exporting
i_buffer_type = 'B'
i_buffer_active = i_buffer_active
i_bypassing_buffer = i_bypassing_buffer
i_refresh_buffer = ' '
importing
e_import = l_import_b
e_export = l_export_b
e_delete = l_delete_b.
After the second ALV_CHECK_BUFFER executes, clear value of variable l_import_b. This will help you to see new added fields to your structure in report output.
2007 Oct 03 4:31 PM
Hi,
Use the fieldcatalog table used under changing parameter
ct_fieldcat = fieldcat
loop at fieldcat.
if fieldcat-fieldname = 'FIELDNAME'.
fieldcat-no_OUT = 'X'.
fieldcat-tech = 'X'.
modify fieldcat.
endif.
endloop.
Thanks,
Sriram Ponna.
2007 Oct 03 5:04 PM
Hello Praveena
The ALV function group buffers the structure data. If this problem occurs simple "reboot" the transaction (enter<b> /NSE80</b> into command window, top left) and execute your program again.
Regards
Uwe
| User | Count |
|---|---|
| 4 | |
| 2 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |