Page 1 of 1
Refresco de Footer en xbrowse
Posted: Thu May 17, 2007 3:56 pm
by dbzap
Como se hace ?
Lo despliego... pero no puedo actualizar el dato.
Saludos y gracias de antemano.
Posted: Thu May 17, 2007 4:54 pm
by carlos vargas
Recuerdo que tuve ese inconveniente con esa, clase lo que habia que hacer es pintar nuevamente el dato.
, lo que yo tenia era un proc que solo hacia el pintado del footer, por ello en cada cambio que ocurria, como eliminar o agregar una fila o editarla, llamaba a ese proc.
salu2
carlos vargas
Posted: Thu May 17, 2007 5:10 pm
by dbzap
Carlos
Lo hice asi, pero no me refresca, tienes algo de codigo para comparar ?
Gracias
Posted: Thu May 17, 2007 7:41 pm
by Antonio Linares
Julio,
Has probado con oBrowse:Refresh() ?
Posted: Thu May 17, 2007 8:05 pm
by dbzap
Maestro.
Eso fue lo primero que hice.
Luego vinieron los codigos de bloque, luego las funciones y luego EL FORO !!
yo lo declare algo asi como
oCol[1]:cFooter := Tran( nTotal, "9999,999,999" )
Saludos
PD: vi por ahi un "bStrFoot" ..... pero en la clase no existia...
Posted: Thu May 17, 2007 8:24 pm
by Antonio Linares
Julio,
Prueba con:
oCol[1]:cFooter := Tran( nTotal, "9999,999,999" )
oCol[1]:PaintFooter( oBrowse:nHeight - oBrowse:nFooterHeight, nil, oBrowse:nFooterHeight - 3 )
Posted: Thu May 17, 2007 8:26 pm
by AOKISANTOS
Julio, talvez te ajude!
uBrw:aCols[03]:cHeader := "Valor"
uBrw:aCols[03]:nWidth := 70
uBrw:aCols[03]:cEditPicture := "@E 999,999.99"
uBrw:aCols[03]:nDataStrAlign := AL_RIGHT
uBrw:aCols[03]:nHeadStrAlign := AL_RIGHT
uBrw:aCols[03]:nFootStrAlign := AL_RIGHT
uBrw:aCols[03]:bOnPostEdit := {|o,x| bStruc[uBrw:nArrayAt, 3 ] := x }
uBrw:aCols[03]:bStrData := {|| TRANS(bStruc[uBrw:nArrayAt, 3 ] ,"@E 999,999.99")}
uBrw:aCols[03]:bEditValue := {|| bStruc[uBrw:nArrayAt, 3 ] }
uBrw:aCols[03]:nEditType := EDIT_GET
uBrw:aCols[03]:bEditValid := {|oGet| Validando( oGet,uBrw ) }
**************************************
STATIC FUNCTION Validando( oGet,uBrw )
**************************************
local lValRet:=.T.,X,valtota1:=0,valtota2:=0
local bValid := oGet:bValid
local nVal := oGet:Value()
oGet:bValid := nil
oGet:bValid:=bValid
FOR X:=1 TO LEN(bStruc)
valtota1+=round(bStruc[x][3],2)
valtota2+=round(bStruc[x][6],2)
NEXT
uBrw:aCols[3]:cFooter:= trans(valtota1,"@E 999,999.99")
uBrw:aCols[6]:cFooter:= trans(valtota2,"@E 999,999.99")
uBrw:refresh()
RETURN lValRet
Fique com Deus
Aoki
Posted: Thu May 17, 2007 9:47 pm
by carlos vargas
Code: Select all
procedure Edit(lNuevo)
...
BrwUpdFoot()
oBrw:refresh()
return
Code: Select all
procedure BrwUpdFoot()
oBrw:aCol3]:cFooter:= transform(nTotal,"@E 999,999.99")
return
aca tanto oBrw, como nTotal son variables accesibles desde todos los proc.
salu2
carlos vargas
Posted: Thu May 17, 2007 9:57 pm
by dbzap
ok, gracias
Lo revisare
Saludos
Posted: Fri May 18, 2007 5:32 pm
by dbzap
Funcionó como me señalaste.
Gracias.