La nueva apariencia de EasyReport

User avatar
cnavarro
Posts: 5792
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: La nueva apariencia de EasyReport

Post by cnavarro »

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?
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.
User avatar
mastintin
Posts: 1502
Joined: Thu May 27, 2010 2:06 pm

Re: La nueva apariencia de EasyReport

Post by mastintin »

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 .
User avatar
cnavarro
Posts: 5792
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: La nueva apariencia de EasyReport

Post by cnavarro »

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 .
Mi opinion:
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.
User avatar
mastintin
Posts: 1502
Joined: Thu May 27, 2010 2:06 pm

Re: La nueva apariencia de EasyReport

Post by mastintin »

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.
User avatar
cnavarro
Posts: 5792
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: La nueva apariencia de EasyReport

Post by cnavarro »

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.
User avatar
mastintin
Posts: 1502
Joined: Thu May 27, 2010 2:06 pm

Re: La nueva apariencia de EasyReport

Post by mastintin »

cnavarro wrote:Por mi Ok
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 .
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


 
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: La nueva apariencia de EasyReport

Post by Antonio Linares »

Manuel, Cristobal,

Excelente trabajo!

Muchas gracias y gracias en nombre de todos los usuarios a los que les va a ser de tanta utilidad :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
FiveWiDi
Posts: 910
Joined: Mon Oct 10, 2005 2:38 pm

Re: La nueva apariencia de EasyReport

Post by FiveWiDi »

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 :-)
Me uno a los agradecimientos de Antonio.
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
User avatar
cnavarro
Posts: 5792
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: La nueva apariencia de EasyReport

Post by cnavarro »

Manuel,
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.
User avatar
mastintin
Posts: 1502
Joined: Thu May 27, 2010 2:06 pm

Re: La nueva apariencia de EasyReport

Post by mastintin »

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 ...
User avatar
cnavarro
Posts: 5792
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: La nueva apariencia de EasyReport

Post by cnavarro »

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
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.
User avatar
mastintin
Posts: 1502
Joined: Thu May 27, 2010 2:06 pm

Re: La nueva apariencia de EasyReport

Post by mastintin »

Ya permite crear nuevos archivos con el nuevo formato . :-) . Desde botón Nuevo Archivo .
User avatar
mastintin
Posts: 1502
Joined: Thu May 27, 2010 2:06 pm

Re: La nueva apariencia de EasyReport

Post by mastintin »

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()
User avatar
mastintin
Posts: 1502
Joined: Thu May 27, 2010 2:06 pm

Re: La nueva apariencia de EasyReport

Post by mastintin »

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.
User avatar
cnavarro
Posts: 5792
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: La nueva apariencia de EasyReport

Post by cnavarro »

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
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.
Post Reply