Contador registros en Table Control
Hola, necesito implementar en una pantalla, un contador en el que aparezca el numero totales de registro de un table control de esa misma pantalla, y ademas en que registro estamos situados actualmente. Algo asi : Actual / Total
Pero no consigo avanzar. Lo he intentado como campos de salida independientes pero no les puedo dar valor. Alguien sabe como conseguirlo ?? Gracias a todos. |
Hola, el numero totales de registro de un table control depende de la tabla interna, entonces solo bastaria con realizar la sentencia
DESCRIBE TABLE ti_interna LINES sy-tfill. Donde sy-tfill es una variable del sistema q me indica el numero de registros de la tabla interna y por ende el numero de registro que tiene el table control, sobre el otro punto podrias explicarlo un poco mas :p |
Veras, ese paso que describes ya lo tenia localizado. Lo que me faltaría seria el saber como trasladar ese valor a la pantalla y que se visualice.
Lo he intentado creandome un campo texto solo de salida en la pantalla, debajo del table control, y asignandole ese valor con el total de lineas, pero no consigo que me coja ningun valor. O me da error la asignacion o simplemente aparece vacio. No consigo trasladarlo de ninguna forma. Conoces alguna forma de hacerlo ?? Gracias. |
Aver, prueba creando dentro del PBO un MODULE cuenta_registros, ahi colocas la sentencia que te mencione antes, le asignas el valor del sy-tfill a un contador por ejemplo wc_reg de tipo entero, y dentro del dynpro crearias un campo entrada y salida de nombre WC_REG, ahi si es fijo que se debe visualizar, me cuentas como te fue :D
|
Pues tampoco funciona :mad: Lo unico que he conseguido asi es que me compile (al haberle asignado el sy-tfill a una variable entera en vez de a un campo de la dynpro) pero luego en la dynpro solo aparece ese campo como de entrada/salida vacio.
Lo he debugeado y el sy-tfill y la variable entera tienen valor en el PBO, asi que mi problema sigue igual : como asignar ese sy-tfill a un valor de la dynpro para que lo visualice. Te pego el codigo : PROCESS BEFORE OUTPUT. MODULE INIT. MODULE FILL_ITAB. MODULE REG_COUNT. con MODULE REG_COUNT. DATA: tot type i. DESCRIBE TABLE g_tc_itab LINES sy-tfill. tot = sy-tfill. Se te ocurre alguna otra cosa ?. Y si no, gracias de todos modos |
1.- Acuerdate que el campo que esta en tu dynpro se debe de llamar de la misma manera que tu variable TOT. y debe ser del tipo de TOT, en las propiedades del campo.
esto lo debe hacer automatico. |
He visto la luz !!! jaja. Me faltaba que ambas variables (programa-dynpro) fueran del mismo tipo :D
Muchas gracias a los dos. Un dolor de cabeza menos :p |
Hola, yo informo del número de registro que tiene mi alv, en el titulo del programa:
*g_aciertos toma valor con la instrucción: DESCRIBE TABLE gt_datos LINES g_aciertos. En la ventana titulo tienes que poner: Mi_titulo_de_programa & aciertos Donde & corresponde a la variable g_aciertos. |
Husos Horarios son GMT. La hora en este momento es 23:31:16. |
www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web