1
Programación ABAP / Select-option dinámico de verdad!, ayuda de expertertos, abap avanzado !!!
« en: 25 de Marzo de 2010, 06:42:02 pm »
Hola sdneros, tengo un problema, bueno en resumen lo que necesito y estoy diseñando es crear un programa que introduciendo el nombre de la una tabla del diccionario y al ejecuta, me cree otra pantalla de seleccion con los campos de la tabla, lo importante es que sean los campos de esa tabla introducida anteriormente, para una vez mostrados por pantalla se puedan introducir datos en los campos para finalmente poder ser rescatados y poder ser tratados por el programa.
He probado a debuguear la se16 y tengo lo siguiente:
Lo primero que me encuentro es que llego hay una funcion la "RS_TABLE_LIST_CREATE" la cual le metemos una tabla y nos crea la pantalla de seleccion con los campos claves de la tabla. Ahora el problema que me planteo es ¿como rescato los datos del esa pantalla creada por la funcion?.
Siguo debugueando la funcion y me encuentro que esa funcion lo que hace basicamente es crear un report en tiempo de ejecucion y luego la funcion lo ejecuta, es este programa el que ejecuta la pantalla de seleccion con los campos de la tabla. Luego aqui no se puede tocar nada ya que se crea y ejecuta en tiempo de ejecucion.
Siguiendo debugueando una vez ejecutada la funcion RS_TABLE_LIST_CREATE, y pintados los campos en pantalla y ejecutado la pantalla para unos valores introducidos en los campos, la fucion ya no tiene el control del programa sino que lo hace el programa generado anteriormente comentado, y es mas, para tratar los datos de la pantalla se va a los includes del grupo de funciones SETB, grupo de funciones donde esta incluida la RS_TABLE_LIST_CREATE. Entonces he pensado en copiar SETB a ZSET y copiar el módulos de funciones RS_TABLE_LIST_CREATE a Z_RS_TABLE_LIST_CREATE para que me tire de los includes Z y pueda modificarlos para finalmente capturar los datos de la pantalla de seleccion creada por Z_RS_TABLE_LIST_CREATE.
Pero no me funciona aunque he creado un grupo nuevo y nueva funcion, el programa generado sigue tierando de los includes de SETB.
Alguna sugerencia de, ¿como crear un select-option apartir del nombre de una tabla y luego captuar los datos introducidos en los campos de la pantalla generada?.....
s
Gracias, saludos.
He probado a debuguear la se16 y tengo lo siguiente:
Lo primero que me encuentro es que llego hay una funcion la "RS_TABLE_LIST_CREATE" la cual le metemos una tabla y nos crea la pantalla de seleccion con los campos claves de la tabla. Ahora el problema que me planteo es ¿como rescato los datos del esa pantalla creada por la funcion?.
Siguo debugueando la funcion y me encuentro que esa funcion lo que hace basicamente es crear un report en tiempo de ejecucion y luego la funcion lo ejecuta, es este programa el que ejecuta la pantalla de seleccion con los campos de la tabla. Luego aqui no se puede tocar nada ya que se crea y ejecuta en tiempo de ejecucion.
Siguiendo debugueando una vez ejecutada la funcion RS_TABLE_LIST_CREATE, y pintados los campos en pantalla y ejecutado la pantalla para unos valores introducidos en los campos, la fucion ya no tiene el control del programa sino que lo hace el programa generado anteriormente comentado, y es mas, para tratar los datos de la pantalla se va a los includes del grupo de funciones SETB, grupo de funciones donde esta incluida la RS_TABLE_LIST_CREATE. Entonces he pensado en copiar SETB a ZSET y copiar el módulos de funciones RS_TABLE_LIST_CREATE a Z_RS_TABLE_LIST_CREATE para que me tire de los includes Z y pueda modificarlos para finalmente capturar los datos de la pantalla de seleccion creada por Z_RS_TABLE_LIST_CREATE.
Pero no me funciona aunque he creado un grupo nuevo y nueva funcion, el programa generado sigue tierando de los includes de SETB.
Alguna sugerencia de, ¿como crear un select-option apartir del nombre de una tabla y luego captuar los datos introducidos en los campos de la pantalla generada?.....
s
Gracias, saludos.