PDA

Ver la Versión Completa : Evento sy-ucomm en report normal??


Driau
06/03/08, 12:55:23
Hola a todos,

Tan solo queria saber si alguien conoce alguna manera de poder hacer doble-click sobre un valor en un report una vez se muestran port pantalla. Un report que no es ALV...un report con sentencias WRITE.
Me explico???

Muchas gracias a todos!

ballan
06/03/08, 13:21:13
Yo hago lo siguiente

AT LINE-SELECTION.

*aqui pongo el codigo que quiero que se ejecute cuando pinchan
*las variables sy-cucol y sy-curow llevan la columna y fila que han pinchado

START-OF-SELECTION

*aqui se haria el proceso, los select, etc

FORMAT HOTSPOT ON.
WRITE: 'SE HA CREADO EL DOCUMENTO:' , p_docu.
FORMAT HOTSPOT OFF.

Luego en la pantalla veras que el valor de la variable p_docu cuando pasas el cursor del raton por encima cambia y es una mano, si pinchas se ejecutara lo que hayas puesto en el at line-selection

Driau
06/03/08, 13:34:46
Muchas gracias Ballan!

Driau
07/03/08, 12:45:08
Hola,

Lo he probado y funciona. Pero tengo un problema adicional. Como mi listado tiene muchas filas....cuando selecciono sy-curow en la pantalla de seleccion en la primer fila..obtengo sy-curow = 1. Eso es correcto. Pero si bajo el scroll....y marco el primer registro (que en realidad no es el primero..a lo mejor es el 45) obtengo sy-curow = 1. Me seguis??? El numero las linias de 1 a lo que sea...segun las que tiene en la pantalla. Como puedo hacer para hacer scroll vertical y si le marco la linia 50..me coja la linia 50???

ballan
10/03/08, 13:47:34
Ahora no tengo sap delante y no te se decir exactamente pero creo que hay mas campos donde llevaba informacion del numero de lista me suena uno que se llama LISTI

Prueba a pinchar varias veces en el scroll y cuando debugees mira toda la estructura sy (syst) aver si hay algun campo que lleve lo que a ti te interesa

Rodolfo Montiel Rivera
10/03/08, 15:14:04
at line-selection.

clear: var_documento.
clear: var_posicion.

*sy-lilli te trae la linea donde se dio el click despues con eso puedes leer *cualquiera de los datos que hay en esa linea en este caso leo los campos *ebelp y ebeln de la linea donde ocurrio el clicky los asigno a dos variables.

linea = sy-lilli.

read line linea field value itab_reporte-ebelp into var_posicion
itab_reporte-ebeln into var_documento.

perform descripcion_historial using var_documento var_posicion.