Page 1 of 1

Error en valid eval

Posted: Sun Nov 08, 2009 9:04 pm
by JoseLuis
Hoia amigos:
Tengo el siguiente código y me fuciona:

Code: Select all

        REDEFINE BTNGET opd VAR Publicas:cTipo  ID 111 Of oDlg Update Picture "@!";
                    valid eval ({||(iif(Publicas:ctipo='O',(ocopro2:Show(),opd:oJump:=ocopro2,ocopro2:setfocus()),;
            compara(Publicas:cTipo,aAlias)),oDlg:Update()),.T.});
            When cQuehago$"AM" 
 
Pero si le añadimos una restricción a la variable Publcias:ctipo:

Code: Select all

        REDEFINE BTNGET opd VAR Publicas:cTipo  ID 111 Of oDlg Update Picture "@!";
                    valid eval ({||Publicas:cTipo$"PDO",(iif(Publicas:ctipo='O',(ocopro2:Show(),opd:oJump:=ocopro2,ocopro2:setfocus()),;
            compara(Publicas:cTipo,aAlias)),oDlg:Update()),.T.});
            When cQuehago$"AM" 
 
Ya no me funciona, porque al compilar me aparece la expresion
C:\fuentes\xharbour\GESPAQ08\PRG\trafico.prg(409) Warning W0027 Meaningless use of expression: ':'
C:\fuentes\xharbour\GESPAQ08\PRG\trafico.prg(409) Warning W0027 Meaningless use of expression: 'String'

y no me genera el exe

Re: Error en valid eval

Posted: Mon Nov 09, 2009 7:54 am
by Antonio Linares
Jose Luis,

Prueba a poner todo el código de la validación en una función y llama a dicha función desde el VALID.

Es decir, no pongas todo ese código en el VALID. Sácalo y ponlo en una función.

Re: Error en valid eval

Posted: Mon Nov 09, 2009 9:54 am
by JoseLuis
Antonio

Pues también llevas razón,

Muchas gracias

Re: Error en valid eval

Posted: Mon Nov 09, 2009 6:41 pm
by ADBLANCO
Claro José,
si lo que retorna
Publicas:cTipo$"PDO"
es numérico

Code: Select all

REDEFINE BTNGET opd VAR Publicas:cTipo  ID 111 Of oDlg Update Picture "@!";
                    valid eval ({||Publicas:cTipo$"PDO",(iif(Publicas:ctipo='O',(ocopro2:Show(),opd:oJump:=ocopro2,ocopro2:setfocus()),;
            compara(Publicas:cTipo,aAlias)),oDlg:Update()),.T.});
            When cQuehago$"AM"