Refresco de Footer en xbrowse

Post Reply
User avatar
dbzap
Posts: 189
Joined: Mon Nov 07, 2005 7:36 pm
Location: Chile
Contact:

Refresco de Footer en xbrowse

Post by dbzap »

Como se hace ?

Lo despliego... pero no puedo actualizar el dato.

Saludos y gracias de antemano.
Julio Gonzalez V.
RANDOM S.A.
SISTEMICA S.A.
User avatar
carlos vargas
Posts: 1421
Joined: Tue Oct 11, 2005 5:01 pm
Location: Nicaragua

Post 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
Salu2
Carlos Vargas
Desde Managua, Nicaragua (CA)
User avatar
dbzap
Posts: 189
Joined: Mon Nov 07, 2005 7:36 pm
Location: Chile
Contact:

Post by dbzap »

Carlos
Lo hice asi, pero no me refresca, tienes algo de codigo para comparar ?
Gracias
Julio Gonzalez V.
RANDOM S.A.
SISTEMICA S.A.
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Julio,

Has probado con oBrowse:Refresh() ?
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
dbzap
Posts: 189
Joined: Mon Nov 07, 2005 7:36 pm
Location: Chile
Contact:

Post 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...
Julio Gonzalez V.
RANDOM S.A.
SISTEMICA S.A.
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post 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 )
regards, saludos

Antonio Linares
www.fivetechsoft.com
AOKISANTOS
Posts: 210
Joined: Sun Jul 23, 2006 1:15 am

Post 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
FWH25+XHARBOUR 99.50
User avatar
carlos vargas
Posts: 1421
Joined: Tue Oct 11, 2005 5:01 pm
Location: Nicaragua

Post 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
Salu2
Carlos Vargas
Desde Managua, Nicaragua (CA)
User avatar
dbzap
Posts: 189
Joined: Mon Nov 07, 2005 7:36 pm
Location: Chile
Contact:

Post by dbzap »

ok, gracias
Lo revisare
Saludos
Julio Gonzalez V.
RANDOM S.A.
SISTEMICA S.A.
User avatar
dbzap
Posts: 189
Joined: Mon Nov 07, 2005 7:36 pm
Location: Chile
Contact:

Post by dbzap »

Funcionó como me señalaste.
Gracias.
Julio Gonzalez V.
RANDOM S.A.
SISTEMICA S.A.
Post Reply