Página 1 de 1

Columna Browse especial

Publicado: Jue Mar 24, 2005 12:40 pm
por jmartial
Hola,
Me gustaría hacer un par de cosas que no sé si es posible con el Browse de
Xailer,
1) inventar una columna que sea el sumatorio de un campo, hay algún evento
del browse que se ejecute en cada registro???
2) Totalizar columnas en el pie
Un Saludo ,
Joaquín
PD: sería una pasada !!!

Columna Browse especial

Publicado: Jue Mar 24, 2005 8:12 pm
por Rene Flores
Joaquí­n:
Estas si me las se, me estoy volviendo "una empollon" en el browse de
Xailer. Mira la imagen anexa.
> 1) inventar una columna que sea el sumatorio de un campo,
Facil, define la columna asi:
WITH OBJECT ::oDbfBrowse1

:SetDbf(ALIAS_CATALOGO,{"Cuenta","Descripcio","Tipo","Subtipo ","Naturaleza"})
:aCols[1]:cHeader := "Cuenta"
/* esta propiedad hace la magia :*/
:aCols[1]:OnGetData := {|oCol, cText, nImage| cText :=
(ALIAS_CATALOGO)->cuenta+"-"+(ALIAS_CATALOGO)->subcuenta+ "-"+(ALIAS_CATALOGO)->ssubcuenta+"-"+(ALIAS_CATALOGO)->auxiliar}
Es la primer columna del browse superior, y corresponde a la suma de los
4 primeros campos del DBF.
hay algún evento del browse que se ejecute en cada registro???
::OnChange
>
> 2) Totalizar columnas en el pie
MAs Facil todavia, el browse inferior en la imagen es un array browse,
en ese array browse, conforme vas avanzando o retrocediendo sobre él va
sumando los valores desde el princpio hasta donde esta el apuntador, y
los va refrescando en los footers del browse, lo unico que hago es
asignar al evento ::OnChange del browse una llamada a un metodo que es este:
METHOD SumaSaldos( oSender ) CLASS TForm1
LOCAL nSumaCargos := 0, nSumaAbonos := 0
WITH OBJECT oSender
AEVAL(:aArrayData,{|x| nSumaCargos += x[3], nSumaAbonos += x[4]
},1,:nArrayAt)
:aCols[3]:cFooter := TRANSFORM(nSumaCargos,"999,999,999.99")
:aCols[4]:cFooter := TRANSFORM(nSumaAbonos,"999,999,999.99")
END WITH
RETURN Nil
y Listo
Saludos
Rene Flores
http://www.ciber-tec.com
------------------------
Visita mi blog
http://www.objetopersistente.blogspot.com
--

Columna Browse especial

Publicado: Vie Mar 25, 2005 1:09 am
por jmartial
Muchas gracias René,
Mañana intentaré probarlo, pero como funcione bien, es una pasada!!!!
Un Saludo,
Joaquín
"Rene Flores" <rflores.removeforspam@ciber-tec.com> escribió en el mensaje
news:[email=4243111d@ozsrv2.ozlan.local...]4243111d@ozsrv2.ozlan.local...[/email]
> Joaquín:
>
> Estas si me las se, me estoy volviendo "una empollon" en el browse de
> Xailer. Mira la imagen anexa.
>
> > 1) inventar una columna que sea el sumatorio de un campo,
>
> Facil, define la columna asi:
>
> WITH OBJECT ::oDbfBrowse1
>
>
:SetDbf(ALIAS_CATALOGO,{"Cuenta","Descripcio","Tipo","Subtipo ","Naturaleza"}
)
> :aCols[1]:cHeader := "Cuenta"
>
> /* esta propiedad hace la magia :*/
>
> :aCols[1]:OnGetData := {|oCol, cText, nImage| cText :=
>
(ALIAS_CATALOGO)->cuenta+"-"+(ALIAS_CATALOGO)->subcuenta+ "-"+(ALIAS_CATALOGO
)->ssubcuenta+"-"+(ALIAS_CATALOGO)->auxiliar}
>
> Es la primer columna del browse superior, y corresponde a la suma de los
> 4 primeros campos del DBF.
>
> hay algún evento del browse que se ejecute en cada registro???
>
> ::OnChange
> >
> > 2) Totalizar columnas en el pie
>
> MAs Facil todavia, el browse inferior en la imagen es un array browse,
> en ese array browse, conforme vas avanzando o retrocediendo sobre él va
> sumando los valores desde el princpio hasta donde esta el apuntador, y
> los va refrescando en los footers del browse, lo unico que hago es
> asignar al evento ::OnChange del browse una llamada a un metodo que es
este:
>
> METHOD SumaSaldos( oSender ) CLASS TForm1
> LOCAL nSumaCargos := 0, nSumaAbonos := 0
> WITH OBJECT oSender
> AEVAL(:aArrayData,{|x| nSumaCargos += x[3], nSumaAbonos += x[4]
> },1,:nArrayAt)
> :aCols[3]:cFooter := TRANSFORM(nSumaCargos,"999,999,999.99")
> :aCols[4]:cFooter := TRANSFORM(nSumaAbonos,"999,999,999.99")
> END WITH
> RETURN Nil
>
> y Listo
>
> Saludos
>
> Rene Flores
> http://www.ciber-tec.com
> ------------------------
> Visita mi blog
> http://www.objetopersistente.blogspot.com
>
------------------------------------------------------------ ----------------
----

Columna Browse especial

Publicado: Vie Mar 25, 2005 1:11 pm
por jmartial
René No Funciona,
Una Columna sumatorio de un campo me refiero, a que tienes una columna que
es un importe y la que yo creo es su suma arrastrada, por ejemplo:
columna 1 : 100,250,300
col virtual : 100,350,650
Y la segunda pregunta, poner total en un footer, me refería a un Browse de
un dataset no a un ArrayBrowse, es totalmente diferente.
Gracias de todas formas,
Joaquín
"Joaquín Martínez" <jmartial@interbook.net> escribió en el mensaje
news:[email=424356ad@ozsrv2.ozlan.local...]424356ad@ozsrv2.ozlan.local...[/email]
> Muchas gracias René,
>
> Mañana intentaré probarlo, pero como funcione bien, es una pasada!!!!
>
> Un Saludo,
> Joaquín
>
> "Rene Flores" <rflores.removeforspam@ciber-tec.com> escribió en el mensaje
> news:[email=4243111d@ozsrv2.ozlan.local...]4243111d@ozsrv2.ozlan.local...[/email]
> > Joaquín:
> >
> > Estas si me las se, me estoy volviendo "una empollon" en el browse de
> > Xailer. Mira la imagen anexa.
> >
> > > 1) inventar una columna que sea el sumatorio de un campo,
> >
> > Facil, define la columna asi:
> >
> > WITH OBJECT ::oDbfBrowse1
> >
> >
>
:SetDbf(ALIAS_CATALOGO,{"Cuenta","Descripcio","Tipo","Subtipo ","Naturaleza"}
> )
> > :aCols[1]:cHeader := "Cuenta"
> >
> > /* esta propiedad hace la magia :*/
> >
> > :aCols[1]:OnGetData := {|oCol, cText, nImage| cText :=
> >
>
(ALIAS_CATALOGO)->cuenta+"-"+(ALIAS_CATALOGO)->subcuenta+ "-"+(ALIAS_CATALOGO
> )->ssubcuenta+"-"+(ALIAS_CATALOGO)->auxiliar}
> >
> > Es la primer columna del browse superior, y corresponde a la suma de los
> > 4 primeros campos del DBF.
> >
> > hay algún evento del browse que se ejecute en cada registro???
> >
> > ::OnChange
> > >
> > > 2) Totalizar columnas en el pie
> >
> > MAs Facil todavia, el browse inferior en la imagen es un array browse,
> > en ese array browse, conforme vas avanzando o retrocediendo sobre él va
> > sumando los valores desde el princpio hasta donde esta el apuntador, y
> > los va refrescando en los footers del browse, lo unico que hago es
> > asignar al evento ::OnChange del browse una llamada a un metodo que es
> este:
> >
> > METHOD SumaSaldos( oSender ) CLASS TForm1
> > LOCAL nSumaCargos := 0, nSumaAbonos := 0
> > WITH OBJECT oSender
> > AEVAL(:aArrayData,{|x| nSumaCargos += x[3], nSumaAbonos += x[4]
> > },1,:nArrayAt)
> > :aCols[3]:cFooter := TRANSFORM(nSumaCargos,"999,999,999.99")
> > :aCols[4]:cFooter := TRANSFORM(nSumaAbonos,"999,999,999.99")
> > END WITH
> > RETURN Nil
> >
> > y Listo
> >
> > Saludos
> >
> > Rene Flores
> > http://www.ciber-tec.com
> > ------------------------
> > Visita mi blog
> > http://www.objetopersistente.blogspot.com
> >
>
>
> ------------------------------------------------------------ --------------
--
> ----
>
>
>
>
>

Columna Browse especial

Publicado: Sab Mar 26, 2005 5:44 am
por Rene Flores
Joaquí­n:
> Una Columna sumatorio de un campo me refiero, a que tienes una columna que
> es un importe y la que yo creo es su suma arrastrada, por ejemplo:
> columna 1 : 100,250,300
> col virtual : 100,350,650
>
Vale vale vale, ya lo pillo, pense que querias hacer la suma horizontal.
humm. de momento no se me ocurre nada.
> Y la segunda pregunta, poner total en un footer, me referí­a a un Browse de
> un dataset no a un ArrayBrowse, es totalmente diferente.
Si si, de momento no esoty usando DataSets, voy manejando las tablas "a
pelo", y me funciona la tecnica anteiror tanto para dbfbrowse y arraybrows.
Saludos
Rene Flores
http://www.ciber-tec.com
>
> Gracias de todas formas,
> Joaquí­n
>
>
> "Joaquí­n Martí­nez" <jmartial@interbook.net> escribió en el mensaje
> news:[email=424356ad@ozsrv2.ozlan.local...]424356ad@ozsrv2.ozlan.local...[/email]
>
>>Muchas gracias René,
>>
>>Mañana intentaré probarlo, pero como funcione bien, es una pasada!!!!
>>
>>Un Saludo,
>>Joaquí­n
>>
>>"Rene Flores" <rflores.removeforspam@ciber-tec.com> escribió en el mensaje
>>news:[email=4243111d@ozsrv2.ozlan.local...]4243111d@ozsrv2.ozlan.local...[/email]
>>
>>>Joaquí­n:
>>>
>>>Estas si me las se, me estoy volviendo "una empollon" en el browse de
>>>Xailer. Mira la imagen anexa.
>>>
>>>
>>>>1) inventar una columna que sea el sumatorio de un campo,
>>>
>>>Facil, define la columna asi:
>>>
>>>WITH OBJECT ::oDbfBrowse1
>>>
>>>
>>
> :SetDbf(ALIAS_CATALOGO,{"Cuenta","Descripcio","Tipo","Subtipo ","Naturaleza"}
>
>>)
>>
>>>:aCols[1]:cHeader := "Cuenta"
>>>
>>>/* esta propiedad hace la magia :*/
>>>
>>>:aCols[1]:OnGetData := {|oCol, cText, nImage| cText :=
>>>
>>
> (ALIAS_CATALOGO)->cuenta+"-"+(ALIAS_CATALOGO)->subcuenta+ "-"+(ALIAS_CATALOGO
>
>>)->ssubcuenta+"-"+(ALIAS_CATALOGO)->auxiliar}
>>
>>>Es la primer columna del browse superior, y corresponde a la suma de los
>>>4 primeros campos del DBF.
>>>
>>> hay algún evento del browse que se ejecute en cada registro???
>>>
>>>::OnChange
>>>
>>>>2) Totalizar columnas en el pie
>>>
>>>MAs Facil todavia, el browse inferior en la imagen es un array browse,
>>>en ese array browse, conforme vas avanzando o retrocediendo sobre él va
>>>sumando los valores desde el princpio hasta donde esta el apuntador, y
>>>los va refrescando en los footers del browse, lo unico que hago es
>>>asignar al evento ::OnChange del browse una llamada a un metodo que es
>>
>>este:
>>
>>>METHOD SumaSaldos( oSender ) CLASS TForm1
>>> LOCAL nSumaCargos := 0, nSumaAbonos := 0
>>> WITH OBJECT oSender
>>> AEVAL(:aArrayData,{|x| nSumaCargos += x[3], nSumaAbonos += x[4]
>>>},1,:nArrayAt)
>>> :aCols[3]:cFooter := TRANSFORM(nSumaCargos,"999,999,999.99")
>>> :aCols[4]:cFooter := TRANSFORM(nSumaAbonos,"999,999,999.99")
>>> END WITH
>>>RETURN Nil
>>>
>>>y Listo
>>>
>>>Saludos
>>>
>>>Rene Flores
>>>http://www.ciber-tec.com
>>>------------------------
>>>Visita mi blog
>>>http://www.objetopersistente.blogspot.com
>>>
>>
>>
>> ------------------------------------------------------------ --------------
>
> --
>
>>----
>>
>>
>>
>>
>>
>
>
>