Picture 9999 en TMaskEdit
Publicado: Dom Dic 18, 2005 6:23 pm
Hola,
Tengo un control TMaskEdit al que he asignado 9999 como cPicture desde el
IDE. Supuestamente, al asignarle ese cPicture estoy forzando que el tipo
de la propiedad Value sea numérico. Sin embargo, al ejecutar la siguiente
instrucción se produce un error en tiempo de ejecución:
cSeek := strZero( ::oEditCentro:Value, 4 )
El error es este:
Subsistema: BASE
Código de error: 9999
Estado: .F.
Descripción: Argument error
Operación: STRZERO
Argumentos: [ 1] = Tipo: C Valor: 3001 [ 2] = Tipo: N Valor:
4 [ 3] = Tipo: U Valor: NIL
Fichero:
Código error SO: 0
Pila de llamadas:
STRZERO (0)
TPROFESIONALES:EDITBUSQUEDAKEYUP (272)
TEDIT:ONKEYUP (0)
TEDIT:WMKEYUP (968)
TPROFESIONALES:SHOWMODAL (0)
GES_PRF (225)
(b)TFORMMAIN:CREARTOOLBAR (192)
TTOOLBUTTON:ONCLICK (0)
(b)XTOOLBUTTON (54)
TTOOLBUTTON:CLICK (0)
TTOOLBAR:COMMAND (173)
TREBAR:WMCOMMAND (241)
RUNFORM (0)
TAPPLICATION:RUN (189)
MAIN (17)
Tengo que aclarar una cosa: si al TMaskEdit le he asignado un valor desde
código, mediante esta expresión:
::oEditCentro:Value := 3001
Entonces la instrucción de arriba NO da error. El error lo da cuando no le
asigno ningún valor desde código y en cambio se lo asigno en tiempo de ejecución
intruduciendo valores desde teclado sobre el TMaskEdit.
No entiendo por qué ocurre, puesto que si el cPicture del TMaskEdit es 9999,
supuestamente debería entender que lo que le introduzco desde teclado en
tiempo de ejecución es un valor numérico. Sin embargo, da error al tratar
de hacer un strZero()... ¿Sabéis qué puede pasar? ¿Podría ser un fallo de
Xailer o estoy haciendo algo mal? Muchas gracias.
Un saludo,
Jaime Irurzun.
Tengo un control TMaskEdit al que he asignado 9999 como cPicture desde el
IDE. Supuestamente, al asignarle ese cPicture estoy forzando que el tipo
de la propiedad Value sea numérico. Sin embargo, al ejecutar la siguiente
instrucción se produce un error en tiempo de ejecución:
cSeek := strZero( ::oEditCentro:Value, 4 )
El error es este:
Subsistema: BASE
Código de error: 9999
Estado: .F.
Descripción: Argument error
Operación: STRZERO
Argumentos: [ 1] = Tipo: C Valor: 3001 [ 2] = Tipo: N Valor:
4 [ 3] = Tipo: U Valor: NIL
Fichero:
Código error SO: 0
Pila de llamadas:
STRZERO (0)
TPROFESIONALES:EDITBUSQUEDAKEYUP (272)
TEDIT:ONKEYUP (0)
TEDIT:WMKEYUP (968)
TPROFESIONALES:SHOWMODAL (0)
GES_PRF (225)
(b)TFORMMAIN:CREARTOOLBAR (192)
TTOOLBUTTON:ONCLICK (0)
(b)XTOOLBUTTON (54)
TTOOLBUTTON:CLICK (0)
TTOOLBAR:COMMAND (173)
TREBAR:WMCOMMAND (241)
RUNFORM (0)
TAPPLICATION:RUN (189)
MAIN (17)
Tengo que aclarar una cosa: si al TMaskEdit le he asignado un valor desde
código, mediante esta expresión:
::oEditCentro:Value := 3001
Entonces la instrucción de arriba NO da error. El error lo da cuando no le
asigno ningún valor desde código y en cambio se lo asigno en tiempo de ejecución
intruduciendo valores desde teclado sobre el TMaskEdit.
No entiendo por qué ocurre, puesto que si el cPicture del TMaskEdit es 9999,
supuestamente debería entender que lo que le introduzco desde teclado en
tiempo de ejecución es un valor numérico. Sin embargo, da error al tratar
de hacer un strZero()... ¿Sabéis qué puede pasar? ¿Podría ser un fallo de
Xailer o estoy haciendo algo mal? Muchas gracias.
Un saludo,
Jaime Irurzun.