Page 1 of 1

una consulta respecto al Pict de un Get

Posted: Tue Feb 14, 2006 6:04 pm
by lubin
Buenas tardes...

Algo rapido. deseo controlar en linea el PICTURE (formato) de un determinado Get el cual dependera del valor que se digite en un get determinado que se encuentre en el mismo cuadro de dialogo algo asi como el ejemplo indicado .. pero no me funciona.. que falta ??

XPICTURE:="@!"

REDEFINE GET oDATA1 VAR XDATA1 PICTURE "!" VALID CHKPIC(XDATA1,oDATA2,oDlg)
REDEFINE GET oDATA2 VAR XDATA2 PICTURE XPICTURE
.....
....

FUNCTION CHKPIC(xdata,odata2,oDlg)
do case
case xdata="A"
odata2:cPicture:="999999-999"
case xdata="B"
odata2:cPicture:="999-999-99"
otherwise
odata2:cPicture:="@!"
endcase
odata2:refesh()
oDlg:refresh()
RETURN .T.

Gracias por la ayuda
Pdta: tambien quisiera agregar algo adicional para no aburrirlos : :) .... que pasaria si en vez de que el PICTURE dependiese del valor de otro GET fuese de un COMBOBOX.... como seria la solucion....

Lubin

Posted: Tue Feb 14, 2006 6:47 pm
by manuramos
Estas cometiendo el mismo error que todos los que hemos tenido que pasar por ahí. No hay que modificar el cPicture del Get (oData:cPicture), sino el oGet:Picture del Get (oData2:oGet:Picture).

Este es un ejemplo:

cPic1 := IF(nEuro=1,"@E 9,999.99","@E 999,999")
cPic2 := IF(nEuro=1,"@E 9999.99" ,"@E 999999" )

DEFINE DIALOG oDLct RESOURCE "CUOTAS2" OF oDlg PIXEL FONT oFnt
...
REDEFINE GET aGet[1] VAR oGet1 ID 134 OF oDLct ;
WHEN { || aGet[1]:oGet:Picture:=cPic2 , .T. } ;
VALID { || aGet[1]:oGet:Picture:=cPic1 , .T. }

En cuanto al Combo, pasa su variable a la función y evalúala como una variable más.

Posted: Wed Feb 15, 2006 2:41 am
by lubin
Se agradece la Ayuda, como dices... faltaba un pequeño detalle y al parecer ya fue solucionado con tu comentario

Gracias y seguimos pa adelante

Lubin

hasta la proxima.