¿Qué valor pasaste en I_SOFT_REFRESH de REFRESH_TABLE_DISPLAY?
Avalados por :
Hola,
Tengo un ALV OO con un botón personalizado para copiar líneas (y agregar algunas modificaciones en las líneas copiadas).
Cada línea copiada se inserta debajo de su línea de origen.
Funciona correctamente siempre, pero cuando se aplican algunos filtros al ALV.
Si aplico un filtro y luego uso el botón de copia, no todas las líneas copiadas aparecen en el ALV, y algunas de las líneas ocultas que no coinciden con los criterios de filtro se muestran...
Si voy a la columna con el filtro y aplico nuevamente el filtro, todo se muestra correctamente.
Creo que tiene que ver con el índice de las líneas que se muestran con los filtros...
¿Sabes cómo puedo resolver este problema?
He intentado usar los métodos GET y SET FILTER CRITERIA después y antes de refresh_display, pero no funcionan.
Saludos
¿Qué valor pasaste en I_SOFT_REFRESH de REFRESH_TABLE_DISPLAY?
Sí, lo siento, CL_GUI_ALV_GRID
Supongo que te refieres a CL_GUI_ALV_GRID, no al otro ALV OO...
Pude reproducir fácilmente, gracias a tu buen ejemplo.
En tu caso, la solución es usar un refresco sin estabilidad.
go_alv->refresh_table_display(
EXCEPTIONS
finished = 1
OTHERS = 2 ).
Desafortunadamente, si actualizas la tabla interna y la refrescas con estabilidad, la cuadrícula ALV asume que no cambiaste las líneas y el filtro se equivoca porque cambiaste las líneas.
contacto@primeinstitute.com
(+51) 1641 9379
(+57) 1489 6964
© 2024 Copyright. Todos los derechos reservados.
Desarrollado por Prime Institute