Ver Mensaje Individual
  #3  
Viejo 14/01/10, 07:59:18
VLozano VLozano is offline
Senior Member
 
Fecha de Ingreso: nov 2009
Mensajes: 124
Si usas el botón de código (imagen # tag [ CODE]), podremos leer tu mensaje sin dejarnos los ojos. Además, ese "span" tipo html no se lee bien, y aún molesta más

AT SELECTION-SCREEN

Es un evento que se dispara cuando el usuario valida un campo de pantalla (pulsando "enter", lanzando la ejecución...).

AT SELECTION-SCREEN ON nombre_campo
Es el mismo evento, PERO sólo cuando se valida el campo nombre_campo. Es decir, en tu caso (inicial) cuando el foco está en la casilla de texto correspondiente a zw_laufi, y se pulsa "enter", se ejecuta esa parte de código.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR nombre_campo
Es un evento que se dispara cuando el usuario intenta ver una lista de valores posibles para el campo (pulsando F4, pojemplo).

Cambiar ON por ON VALUE-REQUEST no tiene ningún sentido, por lo tanto, nos podemos centrar en el primer mensaje de error. Éste nos dice que la variable ZW_LAUFI que intentas usar en el AT SELECTION-SCREEN ON no existe. O que no la puede encontrar, que para el caso sería lo mismo.

Posibilidades que se me ocurren:
- la variable ha sido declarada como PARAMETER en un include al que no se llega (asegúrate que hay una línea "INCLUDE DBPYFSEL.")
- la variable ha sido declarada como PARAMETER, pero el programa (o include) donde se ha declarado no se ha activado o tiene un error.

A mí me huele al segundo punto. Ese tipo de declaración no me suena, así que hace falta asegurarse de que realmente funciona.

* Navega de nuevo hasta esa declaración de zw_laufi.
* Mira si el programa está activado (parte superior de la pantalla, al lado del nombre del programa/include, valores posibles "Inactivo", "Activo", "Revisado", o algo así).
* Si no está activo, actívalo (botón de la cerilla, o Ctrl+F3)
** Si se activa, vuelve al programa inicial y prueba de nuevo
** Si no se activa, arregla esa parte, y prueba de nuevo (probablemente funcione lo propuesto por mystic_soul)
* Si está activo... tenemos un problema

Pero no vale la pena seguir elucubrando hasta no estar seguros de que esa declaración de zw_laufi es correcta, así que me espero a después de los anuncios


Nota para mystic_soul: aunque creo que tu solución será la refinitiva, a veces es mejor explicar el por qué de las cosas además de dar la solución al problema. Así nos aseguramos de que la próxima vez que aparece el problema, quien se enfrenta a él tiene argumentos para no tener que preguntar de nuevo. "Enseñar a pescar", lo llamamos por aquí (en mi curro)
__________________
"Porque algunos sabemos que somos parte del problema"
Responder Con Cita