La nueva apariencia de EasyReport
Re: La nueva apariencia de EasyReport
Manuel, es configurable el directorio (carpeta) donde tenemos almacenados los reportes?
Quiero decir si existe ya un item en el fichero de configuracion donde ya se almacena?
Quiero decir si existe ya un item en el fichero de configuracion donde ya se almacena?
C. Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
Re: La nueva apariencia de EasyReport
Que yo sepa no.
Realmente tenemos dos referencias indirectas ....
1.- MRU -> donde se guardan los unltimos reportes abiertos ( con todo su path ).
2.- Dentro del ficheros vrd ( reporte.vrd ) existe una propiedad llamada AreaFilesDir . donde guarda el directorio donde se encuentran los ficheros de áreas ( v01,v02,v03 ) .
Realmente aqui es donde deberíamos crear un cambio importante con la nueva versión.
DEberiamos crear un nuevo tipo de archivo contenedor , reporte.erp por poner una extensión nueva ( o cualquier otra ) que sea un fichero con auto contenido de los ficheros de área ( todo en único archivo ) . la nueva versión del programa manteniendria soporte para la vieja extructura de ficheros y tendría que leerlo sin problema y grabar en uno u otro según gusto del usuario .
Lo que ya no tengo tan claro es si lo suyo seria mantener el fichero de texto tipo "ini" o pasarse a xml . El problema de pasarse a xml es las diferencias de harbour y xharbour y la cantidad de cambios a introducir , así que yo seguiría con ini .
Realmente tenemos dos referencias indirectas ....
1.- MRU -> donde se guardan los unltimos reportes abiertos ( con todo su path ).
2.- Dentro del ficheros vrd ( reporte.vrd ) existe una propiedad llamada AreaFilesDir . donde guarda el directorio donde se encuentran los ficheros de áreas ( v01,v02,v03 ) .
Realmente aqui es donde deberíamos crear un cambio importante con la nueva versión.
DEberiamos crear un nuevo tipo de archivo contenedor , reporte.erp por poner una extensión nueva ( o cualquier otra ) que sea un fichero con auto contenido de los ficheros de área ( todo en único archivo ) . la nueva versión del programa manteniendria soporte para la vieja extructura de ficheros y tendría que leerlo sin problema y grabar en uno u otro según gusto del usuario .
Lo que ya no tengo tan claro es si lo suyo seria mantener el fichero de texto tipo "ini" o pasarse a xml . El problema de pasarse a xml es las diferencias de harbour y xharbour y la cantidad de cambios a introducir , así que yo seguiría con ini .
Re: La nueva apariencia de EasyReport
Mi opinion:mastintin wrote:Que yo sepa no.
Realmente tenemos dos referencias indirectas ....
1.- MRU -> donde se guardan los unltimos reportes abiertos ( con todo su path ).
2.- Dentro del ficheros vrd ( reporte.vrd ) existe una propiedad llamada AreaFilesDir . donde guarda el directorio donde se encuentran los ficheros de áreas ( v01,v02,v03 ) .
Realmente aqui es donde deberíamos crear un cambio importante con la nueva versión.
DEberiamos crear un nuevo tipo de archivo contenedor , reporte.erp por poner una extensión nueva ( o cualquier otra ) que sea un fichero con auto contenido de los ficheros de área ( todo en único archivo ) . la nueva versión del programa manteniendria soporte para la vieja extructura de ficheros y tendría que leerlo sin problema y grabar en uno u otro según gusto del usuario .
Lo que ya no tengo tan claro es si lo suyo seria mantener el fichero de texto tipo "ini" o pasarse a xml . El problema de pasarse a xml es las diferencias de harbour y xharbour y la cantidad de cambios a introducir , así que yo seguiría con ini .
1.- Referencia en el .INI de la ubicacion donde guardar/abrir los reportes (para no tener que desplazarnos hasta la carpeta seleccionada cada vez que abrimos la aplicacion). Creo que nos va a hacer falta, o usar AreaFilesDir para todo.
2.- Efectivamente, por los motivos que comentas, conservar los ficheros .INI,, aunque la idea de pasarlos a .XML me gusta mucho.
3.- Unico fichero con los datos de las Areas,
C. Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
Re: La nueva apariencia de EasyReport
Una idea de posibilidad de archivo ....
reporte.rep
Extructura interna :
[General]
.....
[Fonts]
......
[Colors]
......
[Infos]
.....
[Databases]
.....
[Areas]
1=1Area
2=2Area
3=3Area
4=4Area
...
[ 1AreaGeneral]
......
[1AreaItems]
.....
[2AreaGeneral]
....
[2AreaItems]
.....
etc.
reporte.rep
Extructura interna :
[General]
.....
[Fonts]
......
[Colors]
......
[Infos]
.....
[Databases]
.....
[Areas]
1=1Area
2=2Area
3=3Area
4=4Area
...
[ 1AreaGeneral]
......
[1AreaItems]
.....
[2AreaGeneral]
....
[2AreaItems]
.....
etc.
Re: La nueva apariencia de EasyReport
Por mi Ok
C. Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
Re: La nueva apariencia de EasyReport
He empezado la implementación a ver como va. Por ahora solo abre el archivo *.erd y lo lee , coloca los áreas los lee , etc .Aun no graba ni cambia ítems y por supuesto el motor vrd no está aún adaptado .cnavarro wrote:Por mi Ok
He creado un archivo ( a mano ) para probarlo :
copiar el contenido en un fichero con extensión erd
Code: Select all
[General]
EditProperties=1
EditAreaProperties=1
EditLanguage=1
DeveloperMode=1
InsertMode=1
Title=Compex-Report
Measure=1
GridWidth=1
GridHeight=1
ShowGrid=0
TopMargin=10
LeftMargin=10
Expressions=1
GeneralExpressions=EasyReport General.dbf
UserExpressions=EasyReport User.dbf
DataExpressions=EasyReport Database.dbf
PageBreak=260
Orientation=1
ShowInfoMsg=1
PrintIDs=1
Group=Test
AreaFilesDir=.\EXAMPLES\
Standalone=1
PaperSize=9
PaperWidth=0
PaperHeight=0
[Fonts]
1=Arial| 0| -12| 0| 0| 0| 0| 0
2=Arial| 0| -26| 1| 0| 0| 0| 0
3=Arial| 0| -11| 0| 0| 0| 0| 0| 0| 0
4=Courier| 5| -12| 0| 1| 1| 0| 0
5=Arial| 0| -18| 1| 1| 1| 0| 200
6=Arial| 0| -8| 0| 0| 0| 0| 0
7=Arial| 0| -12| 0| 0| 0| 0| 0
[Colors]
1=10485760
2=16777215
3=0
4=4227072
5=8421376
6=65535
7=12039936
[Infos]
Author=
Company=
Comment=
Revision=367
SaveDate=12.10.2014
SaveTime=17:32:27
[Databases]
Separator=;
DelQuotations=1
Unix2Windows=1
//1=.\examples\compex.txt|compex|VAL( cRec ) <> 0|Artikelnr;PE;ME;Bezeichnung;Lagerlänge;Preis|1-9;10-13;14-18;19-53;115-123;124-133
1=.\examples\compex.txt|compex|VAL( cRec ) <> 0|Artikelnr;PE;ME;Bezeichnung;Lagerlänge;Preis|1-9;10-13;14-18;19-53;115-123;124-133
2=||||
3=||||
4=||||
5=||||
6=||||
7=||||
8=||||
9=||||
10=||||
11=||||
12=||||
[Areas]
1=1COMPEXREPORT1
2=2COMPEXREPORT1
4=4COMPEXREPORT1
[1COMPEXREPORT1General]
Title=Seitenkopf
Width=200
Height=24
Top1=20
Top2=20
TopVariable=0
Condition=1
DelEmptySpace=0
BreakBefore=0
BreakAfter=0
PrintBeforeBreak=1
PrintAfterBreak=0
ControlDBF=none
Formula1=
Formula2=
Formula3=
Formula4=
Formula5=
Formula6=
Formula7=
Formula8=
Formula9=
Formula10=
Formula11=
Formula12=
TopMinimum=0
Formula13=
[1COMPEXREPORT1Items]
2=Text|Price |102| 0|0|1|3|168|23|6|3|2|7|3|0|0|
3=Text| Unit|103| 0|1|1|3|150|18|6|3|2|7|1|0|0|
4=TEXT| Artikelnr.|104|1|1|1|18|8|48|5|3|2|7|1|0|0||0||||||||||||||0
5=TEXT| Lagerlänge|105|1|1|1|18|136|26|5|3|2|7|3|0|0||0||||||||||||||0
6=TEXT| Bezeichnung|106|1|1|1|18|56|80|5|3|2|7|1|0|0||0||||||||||||
1=TEXT|Preis |105|1|1|1|18|162|29|5|3|2|7|3|0|0||0||||||||||||||0
400=TEXT|Seite|-1|1|1|1|1|140|51|5|3|3|2|3|0|0|"Seite " + alltrim(str( oPrn:nPage )) + " von " + alltrim(str( oInfo:nPages ))|0||||||||||||||0
401=TEXT|Reportname|-1|1|1|1|1|8|85|5|3|3|2|1|0|0|oVRD:GetText( ".\examples\compex.txt", 1, 16, 56 ) + " (" + oVRD:GetText( ".\examples\compex.txt", 1, 1, 10 ) + ")"|0||||||||||||||0
402=TEXT|Bearbeiter|-1|1|1|1|6|8|85|5|3|3|2|1|0|0|oVRD:GetText( ".\examples\compex.txt", 1, 91, 113 )|0||||||||||||||0
403=TEXT|Datum/Uhrzeit|-1|1|1|1|11|8|85|5|3|3|2|1|0|0|oVRD:GetText( ".\examples\compex.txt", 2, 92, 125 )|0||||||||||||||0
[2COMPEXREPORT1General]
Title=Positionen
Width=200
Height=7
Top1=44
Top2=44
TopVariable=1
Condition=1
BreakBefore=0
BreakAfter=0
DelEmptySpace=1
PrintBeforeBreak=0
PrintAfterBreak=0
ControlDBF=compex
Formula1=
Formula2=
Formula3=
Formula4=
Formula5=
Formula6=
Formula7=
Formula8=
Formula9=
Formula10=
Formula11=
Formula12=
TopMinimum=36
Formula13=
[2COMPEXREPORT1Items]
401=TEXT|[compex:Artikelnr]|-1|1|1|1|0|8|20|5|3|3|2|1|0|0||0||||||||||||||0
402=TEXT|[compex:Bezeichnung]|-1|1|1|1|0|56|80|5|1|3|2|1|0|0||0||||||||||||||0
403=TEXT|Lagerlänge|-1|1|1|1|0|136|26|5|3|3|2|3|0|0|[compex:Lagerlänge]|0||||||||||||||0
4=Text|Unit|104| 0|1|1|2|151|16|6|3|3|2|1|0|0|example3->unit
5=Text|Price|105| 0|0|1|2|168|23|6|3|3|2|3|0|0|ALLTRIM(STR( EXAMPLE3->PRICE, 12, 2 ))
400=TEXT|[compex:Preis]|-1|1|1|1|0|162|29|5|3|3|2|3|0|0||0||||||||||||||0
404=BARCODE|[compex:Artikelnr]|-1|1|1|1|0|29|31|5|3|3|2|1|1|0.20|||||||||||
[4COMPEXREPORT1General]
Title=Seitenfuß
Width=200
Height=10
Top1=264
Top2=264
TopVariable=0
Condition=1
BreakBefore=0
BreakAfter=0
DelEmptySpace=0
PrintBeforeBreak=1
PrintAfterBreak=0
ControlDBF=none
Formula1=
Formula2=
Formula3=
Formula4=
Formula5=
Formula6=
Formula7=
Formula8=
Formula9=
Formula10=
Formula11=
Formula12=
TopMinimum=0
Formula13=
[4COMPEXREPORT1Items]
5=TEXT|Schüt-Duis - Aurich|101|1|1|1|2|113|78|5|3|3|2|3|0|0||0||||||||||||||0
400=LineHorizontal|Line horizontal|-1|1|1|1|1|8|183|2|3|2|1|1|0|0
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
Re: La nueva apariencia de EasyReport
Manuel, Cristobal,
Excelente trabajo!
Muchas gracias y gracias en nombre de todos los usuarios a los que les va a ser de tanta utilidad
Excelente trabajo!
Muchas gracias y gracias en nombre de todos los usuarios a los que les va a ser de tanta utilidad
Re: La nueva apariencia de EasyReport
Me uno a los agradecimientos de Antonio.Antonio Linares wrote:Manuel, Cristobal,
Excelente trabajo!
Muchas gracias y gracias en nombre de todos los usuarios a los que les va a ser de tanta utilidad
Escribo poco pero os leo bastante a menudo.
Muchas gracias por vuestro esfuerzo y dedicación.
Un Saludo
Carlos G.
FiveWin 19.06 + Harbour 3.2, BCC 7 Windows 10
Carlos G.
FiveWin 19.06 + Harbour 3.2, BCC 7 Windows 10
Re: La nueva apariencia de EasyReport
Manuel,
Lo de la DATA lNewFormat (un gran aporte)
Lo de la DATA lNewFormat (un gran aporte)
C. Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
Re: La nueva apariencia de EasyReport
Cristobal por hoy y lo dejo aquí .
Ya ve las áreas, los objetos, y permite editar el texto ( no arrastrar ) . He metido algo de código en el motor vrd , pero aún no permite la impresión. Falta bastante pero he creado funciones que permiten cambiar poco el código , solo sustituyendo unas funciones por otras ...
Ya ve las áreas, los objetos, y permite editar el texto ( no arrastrar ) . He metido algo de código en el motor vrd , pero aún no permite la impresión. Falta bastante pero he creado funciones que permiten cambiar poco el código , solo sustituyendo unas funciones por otras ...
Re: La nueva apariencia de EasyReport
Manuel, cuando puedas, comentamos lo del path de inicio del programa (carpeta de reportes), a ver como te parece que se quede implementado, me hace falta para un tema que estoy desarrollando
He dejado un comentario en el repositorio
------------- EDITADO -------------------
Con tu último aporte ya está solucionado lo que te comentaba en el repositorio
He dejado un comentario en el repositorio
------------- EDITADO -------------------
Con tu último aporte ya está solucionado lo que te comentaba en el repositorio
C. Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
Re: La nueva apariencia de EasyReport
Ya permite crear nuevos archivos con el nuevo formato . . Desde botón Nuevo Archivo .
Re: La nueva apariencia de EasyReport
Falta probar en profundidad , pero parece que ya imprime , ya admite cambios en el elemento texto y los graba , falta hacer cosas con ellos para ir viendo bugs .... no guarda cuando arrastras aún.
Cristobal , me pasa una cosa extraña en una parte del código ....
Me ha tenido loco buscando donde estaba todo el problema de impresión durante toda la mañana y era todo por esto , no cogía el formato nuevo al no reconocer la extensión....
He tenido que hacer trampa , porque cReportName me dice que tiene una extensión con longitud 4 y aunque le hago alltrim() sigue con esa extensión , el carácter cuarto no se ve en un msginfo(substr( xExtension, 4,1) pero existe.
¿ Cual es el problema ?
En vrd.prg al principio del Metodo New() linea 228 mas o menos ...
::cReportName = cReportName
xExtension := AllTrim(Upper(cFileExt( cReportName )))
IF Len(xExtension )> 3
xExtension := Left(xExtension,3)
ENDIF
::lNewFormat := IF( xExtension == "ERD" , .T., .F. )
::oInfo := VRD_NewStructure()
Cristobal , me pasa una cosa extraña en una parte del código ....
Me ha tenido loco buscando donde estaba todo el problema de impresión durante toda la mañana y era todo por esto , no cogía el formato nuevo al no reconocer la extensión....
He tenido que hacer trampa , porque cReportName me dice que tiene una extensión con longitud 4 y aunque le hago alltrim() sigue con esa extensión , el carácter cuarto no se ve en un msginfo(substr( xExtension, 4,1) pero existe.
¿ Cual es el problema ?
En vrd.prg al principio del Metodo New() linea 228 mas o menos ...
::cReportName = cReportName
xExtension := AllTrim(Upper(cFileExt( cReportName )))
IF Len(xExtension )> 3
xExtension := Left(xExtension,3)
ENDIF
::lNewFormat := IF( xExtension == "ERD" , .T., .F. )
::oInfo := VRD_NewStructure()
Re: La nueva apariencia de EasyReport
pasa lo mismo que el mensaje anterior en openfile ...
Teniamos un bug al borrar un area que quedaba en pantalla ... ahora mato las ventanas antes de reabrir el reporte pero marca otro error . Por hoy así queda.
Teniamos un bug al borrar un area que quedaba en pantalla ... ahora mato las ventanas antes de reabrir el reporte pero marca otro error . Por hoy así queda.
Re: La nueva apariencia de EasyReport
Una curiosidad, que editor usas?
Porque en las actualizaciones me aparecen muchas lineas con diferencias en los saltos de linea
Ahora me pondré a echarle un vistazo
Porque en las actualizaciones me aparecen muchas lineas con diferencias en los saltos de linea
Ahora me pondré a echarle un vistazo
C. Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.