In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

Para Ignacio de Clase Report

Foro de Xailer profesional en español
Responder
emilio gil[1]
Mensajes: 16
Registrado: Jue Abr 06, 2006 6:22 pm

Para Ignacio de Clase Report

Mensaje por emilio gil[1] »

Hola Ignacio:
Hace un par de semanas te consulte como imprimir cuando se utiliza el
MemDataSet y me enviaste la solución que transcribo:
REPORT oReport TITLE cTitulo FONT oFont1 PREVIEW
COLUMN OF oReport TITLE "Descripción" DATA ::oMemDataSet1:Descrip
COLUMN OF oReport TITLE "Cod.Bal." DATA ::oMemDataSet1:CodBal
COLUMN OF oReport TITLE "Cuenta" DATA ::oMemDataSet1:Cta
oReport:nTitleUpLine := rlSINGLE
oReport:nGridStyle := rgBOTH
oReport:bWhile := {|| ::oMemDataSet1:nRecNo() < ::oMemDataSet1:RecCount()}
oReport:bSkip := {|| ::oMemDataset1:Skip()}
RUN REPORT oReport
En concreto me aportaste el bWhile y el bSkip y funciona, pero observo
el mismo error que ya tení­a esta clase cuando la utilizaba en FiveWin y
es que si utilizas:
oReport:bWhile := {|| ::oDS:nRecNo() <= :oDS:RecCount()}
el programa se ralla, mientras que si usas
oReport:bWhile := {|| ::oDS:nRecNo() < :oDS:RecCount()}
funciona pero no te imprime el último elemento del DataSet, esto en
fivewin lo solucionaba añadiendo un registro vacio al final de la
matriz, ¿ hay algun modo más elegante de darle solución al tema ?
Anticipadamente gracias.
Emilio Gil.
Avatar de Usuario
ignacio
Site Admin
Mensajes: 9452
Registrado: Lun Abr 06, 2015 8:00 pm
Ubicación: Madrid, Spain
Contactar:

Para Ignacio de Clase Report

Mensaje por ignacio »

Emilio,
Ya hemos modificado la clase para que acepte expresiones del tipo:
oReport:bWhile := {|| !::oMemDataSet1:Eof() }
Espero que podamos publicar en breve una nueva versión de Xailer.
Saludos,
"emilio gil" <emiliogil@ya.com> escribió en el mensaje
news:443d2f26$[email=1@ozsrvnegro.ozlan.local...]1@ozsrvnegro.ozlan.local...[/email]
> Hola Ignacio:
>
> Hace un par de semanas te consulte como imprimir cuando se utiliza el
> MemDataSet y me enviaste la solución que transcribo:
>
> REPORT oReport TITLE cTitulo FONT oFont1 PREVIEW
>
> COLUMN OF oReport TITLE "Descripción" DATA ::oMemDataSet1:Descrip
> COLUMN OF oReport TITLE "Cod.Bal." DATA ::oMemDataSet1:CodBal
> COLUMN OF oReport TITLE "Cuenta" DATA ::oMemDataSet1:Cta
>
> oReport:nTitleUpLine := rlSINGLE
> oReport:nGridStyle := rgBOTH
>
>
> oReport:bWhile := {|| ::oMemDataSet1:nRecNo() < ::oMemDataSet1:RecCount()}
> oReport:bSkip := {|| ::oMemDataset1:Skip()}
>
> RUN REPORT oReport
>
> En concreto me aportaste el bWhile y el bSkip y funciona, pero observo el
> mismo error que ya tenía esta clase cuando la utilizaba en FiveWin y es
> que si utilizas:
>
> oReport:bWhile := {|| ::oDS:nRecNo() <= :oDS:RecCount()}
>
> el programa se ralla, mientras que si usas
>
> oReport:bWhile := {|| ::oDS:nRecNo() < :oDS:RecCount()}
>
> funciona pero no te imprime el último elemento del DataSet, esto en
> fivewin lo solucionaba añadiendo un registro vacio al final de la matriz,
> ¿ hay algun modo más elegante de darle solución al tema ?
>
>
> Anticipadamente gracias.
> Emilio Gil.
>
Ignacio Ortiz de Zúñiga
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com
Responder