Ver Mensaje Individual
  #1
Antiguo 30 de septiembre de 2022, 20:12
Josber
Moderador Global
Activista del Foro: Activista del Foro - Issue reason: Por aportar manuales y enriquecer  Agradecimientos: Por muchos agradecimientos de parte de los Foreros - Issue reason: Por muchos agradecimientos 
Última Actividad 21.09.2026 07:20
Posts Posts: 883
Likes enviados Enviados: 418
Likes recibidos Recibidos: 492
Predeterminado No funciona EXIT PROGRAM después de un "SetFocus"
0 Inactivo Inactivo

A ver, supongamos que en el evento "opened" de un Form, tenemos algo así

"opened"

Código COBOL:
  1. CALL "COMPROBAR".

y en la Sub-Rutina "COMPROBAR", tenemos

Código COBOL:
  1. IF VALOR_N = 1
  2.    CALL "VALOR-BAJO"
  3.    INVOKE BOTON1 "SetFocus"
  4.    EXIT PROGRAM
  5. END-IF.

y en la Sub-Rutina "VALOR-BAJO", tenemos

Código COBOL:
  1. IF IMPORTE < 1000
  2.    INVOKE BOTON2 "SetFocus"
  3.    EXIT PROGRAM
  4. END-IF.

Resulta que, en la rutina VALOR-BAJO, si el importe es < 1000, no me "ejecuta" el foco y el EXIT PROGRAM, por lo que, vuelve a la instrucción siguiente a CALL "VALOR-BAJO" de la rutina COMPROBAR, y ahí si me ejecuta el foco correctamente y "se va" a BOTON1, yo quiero que, independientemente del valor que tenga VALOR_N, si IMPORTE es menor de 1000, como le indico en VALOR-BAJO, que el foco lo recoja BOTON2.

Obviamente, no son así las sentencias auténticas pero, es que las puestas, tampoco funcionan bien. En el montón de programas que tengo escritos, no me había pasado esto nunca, instrucciones tan simples como estas, siempre me han funcionado correctamente. Por si preguntáis, Win10 X64 virtualizado, con PWC9 y los Runtime del PWC10, aunque es lo mismo, con otros programas y esta configuración, funciona correctamente

No sé si me explico correctamente.
Josber is offline   Responder Con Cita