Page 1 of 1

Capturar Valor

Posted: Thu May 05, 2016 4:51 pm
by LOUIS
Hola Amigos:

En un TextBox ingreso un valor numerico
@ 125,475 TEXTBOX MM WIDTH 50 HEIGHT 40 FONT "TAHOMA" SIZE 24 BOLD FONTCOLOR BLACK NUMERIC INPUTMASK '99'
Luego quiero coger este valor en una variable, así :
QP = RETENCIONES.MM.VALUE

Pero en QP no tengo nada ...
Qué estoy haciendo mal ?

De antemano muchas gracias.

Re: Capturar Valor

Posted: Thu May 05, 2016 4:59 pm
by danielmaximiliano
podrias poner el codigo original , si es un FMG el codigo completo del archivo FMG.
para ello utiliza las herramientas de "Full Editor" asi no se hace extenso el codigo para verlo aqui

Re: Capturar Valor

Posted: Thu May 05, 2016 5:54 pm
by LOUIS
Gracias Daniel, aqui esta el codigo ...

Code: Select all

procedure COMPRUEBA

DEFINE WINDOW RETENCIONES;
   AT 0,0 ;
   WIDTH 1024 HEIGHT 732 BACKCOLOR BLUE NOCAPTION
   @ 000,000 LABEL Label_1 WIDTH 1024 HEIGHT 50 FONT "ARIAL" SIZE 36 BOLD FONTCOLOR WHITE VALUE "&CIA" TRANSPARENT
   @ 050,000 LABEL Label_2 WIDTH 1024 HEIGHT 50 FONT "MAGNETO" SIZE 30 FONTCOLOR WHITE VALUE "Verificando Retenciones :" TRANSPARENT
   @ 125,000 LABEL Label_3 WIDTH 1024 HEIGHT 36 FONT "TAHOMA" SIZE 24 FONTCOLOR WHITE VALUE "DIGITE EL NUMERO DEL MES" TRANSPARENT
   @ 125,475 TEXTBOX MM    WIDTH 50 HEIGHT 40 FONT "TAHOMA" SIZE 24 FONTCOLOR BLACK NUMERIC INPUTMASK '99'
   @ 125,550 BUTTON BUTTON_1 CAPTION "MOSTRAR !" ONCLICK MUESTRA()

   ON KEY ESCAPE ACTION SALIDA()
END WINDOW

ACTIVATE WINDOW RETENCIONES

*-----------------------
Procedure MUESTRA()

PRIVATE QP
QP=0
MM=0
ANO=YEAR(QFECHA_INI)

QP = RETENCIONES.MM.VALUE
Y es la última linea QP = RETENCIONES.MM.VALUE donde no logro capturar el valor ingresado en TEXTBOX

Además y disculpa la molestia, como puedo validar en el textbox sólo valores del 1 al 12 ?

Te agradezco nuevamente.

Re: Capturar Valor

Posted: Fri May 06, 2016 12:09 pm
by luisvasquezcl
Hola Louis
Te comento lo que encontré.
1. Falta el tipo de la ventana : Main, Child,etc.
2. El problema que no te funciona el botón es porque el label_3 cubre el botón por lo tanto no funciona el evento Action. Para corregir este problema acorta el largo del label.
Para validar el valor debes:
if qp < 1 .or. qp > 12
msginfo("error de periodo")
endif
Espero te sea de ayuda.
Saludos cordiales,
Luis Vasquez

Re: Capturar Valor

Posted: Fri May 06, 2016 2:41 pm
by LOUIS
Amigo Luis gracias por responder.

En verdad yo no tengo el problema de la label, talvez se deba a que su versión no es la que Yo uso (3.0.46)
En todo caso, encontré la solución; primero quité la palabra NUMERIC y ahí sí me capturó el valor, claro que en modo CHAR;
luego la variable QP la redefiní como VAL y listo, funcionó.

Gracias de todos modos.

Re: Capturar Valor

Posted: Fri May 06, 2016 5:20 pm
by Carlos Britos

Code: Select all


*-----------------------
Procedure MUESTRA()

PRIVATE QP
QP=0
MM=0
ANO=YEAR(QFECHA_INI)

QP = RETENCIONES.MM.VALUE
A la variable MM se le esta asignando el valor 0

MM es el nombre del control y de una variable en la misma funcion

Re: Capturar Valor

Posted: Fri May 06, 2016 6:44 pm
by LOUIS
Tiene razón amigo Carlos, suprimí esa linea MM=0 , pero si hubo necesidad también de quitar la palabra NUMERIC.

Sí funcionó, gracias por su acotación.