MUNDOSAP

MUNDOSAP (foro/index.php)
-   Programación ABAP IV (foro/forumdisplay.php?f=4)
-   -   Que ocurre en el fieldcatalog de mi ALV GRID? (foro/showthread.php?t=77048)

vic3 25/04/17 10:20:31

Que ocurre en el fieldcatalog de mi ALV GRID?
 
Buenos días,

tengo creada una Librería con rutinas y eventos de mi ALV GRID

En mi Form: ALV_GRID_GET_FIELD_CATALOG

************************************************************************************************************************
FORM ALV_GRID_GET_FIELD_CATALOG USING P_NOMBRE_TABLA CHANGING CT_FIELDCATALOG TYPE LVC_T_FCAT.

FIELD-SYMBOLS <TABLE> TYPE ANY. "TABLE.
FIELD-SYMBOLS <LS_FCAT> TYPE LVC_S_FCAT.

DATA SALV_TABLE TYPE REF TO CL_SALV_TABLE.

REFRESH CT_FIELDCATALOG.

UNASSIGN <TABLE>.
ASSIGN (P_NOMBRE_TABLA) TO <TABLE>.

TRY.
CL_SALV_TABLE=>FACTORY( IMPORTING
R_SALV_TABLE = SALV_TABLE
CHANGING
T_TABLE = <TABLE> ).

---------------------------------------------------------- :confused:
CT_FIELDCATALOG = CL_SALV_CONTROLLER_METADATA=>GET_LVC_FIELDCATALOG(
r_column = SALV_TABLE->get_columns( )
R_AGGREGATIONS = SALV_TABLE->GET_AGGREGATIONS( )
).

---------------------------------------------------------- :confused:

CATCH CX_ROOT.
MESSAGE E001(00) WITH 'Error programacion: Error al obtener el Field Catalog'.
ENDTRY.

DELETE CT_FIELDCATALOG WHERE FIELDNAME = 'MANDT'.

LOOP AT CT_FIELDCATALOG ASSIGNING <LS_FCAT> WHERE REPTEXT = ''.
<LS_FCAT>-REPTEXT = <LS_FCAT>-FIELDNAME.
ENDLOOP.

ENDFORM. " ALV_GRID_GET_FIELD_CATALOG
************************************************************************************************************************


Tengo problemas en la parte del código señalada y no se por que... Agradecería vuestra ayuda, un saludo

omegaotaku 26/04/17 13:35:10


Buenos días. Por empezar a CL_SALV_TABLE le tiene que pasar una tabla no una estructura:

MAL:

CL_SALV_TABLE=>FACTORY( IMPORTING
R_SALV_TABLE = SALV_TABLE
CHANGING
T_TABLE = <TABLE> ).

BIEN

cl_salv_table=>factory( IMPORTING
r_salv_table = salv_table
CHANGING
t_table = p_nombre_tabla ).

p_nombre_tabla debe ser del mismo tipo que recibe.

Y tenes otro error de ortografía en r_column:

MAL:

ct_fieldcatalog = cl_salv_controller_metadata=>get_lvc_fieldcatalog(
r_column = salv_table->get_columns( )
r_aggregations = salv_table->get_aggregations( )
).

BIEN:

ct_fieldcatalog = cl_salv_controller_metadata=>get_lvc_fieldcatalog(
r_columns = salv_table->get_columns( )
r_aggregations = salv_table->get_aggregations( )
).

Saludos.

vic3 27/04/17 15:13:03



Gracias por la respuesta, se agradece tu atención. Un saludo.


Husos Horarios son GMT. La hora en este momento es 08:15:27.

www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web