Estimados,
Espero se encuentren todos bien.
Toda mi vida me he pasado haciendo informes a la "antigua", recorriendo tablas "a pedal" por código y utilizando @ fil, col say "....." y así, he resuelto centenares de listados sin problema, incluso algunos muy complejos, siempre sobre DBF's y para impresoras de matriz de puntos. El hecho es que ahora pretendo hacerlo trayendo datos de tablas MySQl y estoy totalmente perdido y no se por donde empezar.
Tal vez haya muchas formas de encarar este tema, pero me siento totalmente ignorante y es por eso que consulto si alguien puede darme alguna referencia de ejemplos, manuales, documentación, para poder estudiar.
Desde ya muchas gracias
Saludos
Daniel
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 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.
Informes con Xailer
Re: Informes con Xailer
Daniel,
Veo que no soy el único que utilizo "a mi manera" la impresión de informes, facturas, listados...
Yo utilizo la clase TPrinter. En un .ini tengo las coordenadas, texto, fuente, tamaño... las guardo/recupero para utilizarlas cuando las necesito
Texto, Valores, imágenes, líneas, cuadros, memos...
algo así...
De esta manera, lo estoy utilizando, y no me interfiere la base de datos que esten guardados ya sea DBFs o MariaDB
Veo que no soy el único que utilizo "a mi manera" la impresión de informes, facturas, listados...
Yo utilizo la clase TPrinter. En un .ini tengo las coordenadas, texto, fuente, tamaño... las guardo/recupero para utilizarlas cuando las necesito
Texto, Valores, imágenes, líneas, cuadros, memos...
algo así...
Código: Seleccionar todo
ini...
Text1=70.0,635.0,"A L B A R À","Arial",18,0,800,0,0
Text2=100.0,710.0,"Número","Arial",9,0,400,0,0
Text3=300.0,710.0,"Data","Arial",9,0,400,0,0
Text4=575.0,710.0,"C/Client","Arial",9,0,400,0,0
Text5=800.0,710.0,"Pàg.","Arial",9,0,400,0,0
Text6=1200.0,795.0,"N.I.F.:","Arial",9,0,400,0,0
Nom=1200,430,800,35,1,"Arial",10,0,800,0
Adreca=1200,500,800,50,1,"Arial",10,0,400,0
Poblacio=1200,550,800,50,1,"Arial",10,0,400,0
prg...
//Texte normal
For n:=1 to Len( aText )
If !(aText[n,1] = 0 .and. aText[n,2] = 0)
Printer:oCanvas:oFont := TFont():Create( aText[n,4], aText[n,5], aText[n,6], aText[n,7] )
If Len( aText[n] ) >= 9
Printer:oCanvas:oFont:nOrientation := aText[n,9]
EndIf
Printer:oCanvas:TextOut( aText[n,1], aText[n,2], aText[n,3],, aText[n,8] )
Printer:oCanvas:oFont := Nil
EndIf
Next
...
aNom := { &(oIni:GetEntry( cTipus, "Nom", "0,0" )) }
aAdreca := { &(oIni:GetEntry( cTipus, "Adreca", "0,0" )) }
aPoblacio := { &(oIni:GetEntry( cTipus, "Poblacio", "0,0" )) }
...
If !(aNom[1] = 0 .and. aNom[2] = 0)
Printer:oCanvas:oFont := TFont():Create( aNom[6], aNom[7], aNom[8], aNom[9] )
PrinterDrawText( aClient[2], { aNom[1]/10, aNom[2]/10, (aNom[1]+aNom[3])/10, (aNom[2]+aNom[4])/10 }, xAlignment( aNom[5] ), aNom[10] )
Printer:oCanvas:oFont := Nil
EndIf
If !(aAdreca[1] = 0 .and. aAdreca[2] = 0)
Printer:oCanvas:oFont := TFont():Create( aAdreca[6], aAdreca[7], aAdreca[8], aAdreca[9] )
PrinterDrawText( aClient[5], { aAdreca[1]/10, aAdreca[2]/10, (aAdreca[1]+aAdreca[3])/10, (aAdreca[2]+aAdreca[4])/10 }, xAlignment( aAdreca[5] ), aAdreca[10] )
Printer:oCanvas:oFont := Nil
EndIf
If !(aPoblacio[1] = 0 .and. aPoblacio[2] = 0)
Printer:oCanvas:oFont := TFont():Create( aPoblacio[6], aPoblacio[7], aPoblacio[8], aPoblacio[9] )
PrinterDrawText( aClient[13], { aPoblacio[1]/10, aPoblacio[2]/10, (aPoblacio[1]+aPoblacio[3])/10, (aPoblacio[2]+aPoblacio[4])/10 }, xAlignment( aPoblacio[5] ), aPoblacio[10] )
Printer:oCanvas:oFont := Nil
EndIf
Un Saludo,
Xevi.
Xevi.
-
- Mensajes: 36
- Registrado: Mié Jul 23, 2014 10:26 am
Re: Informes con Xailer
Buenas, un buen ejemplo lo tienes en la impresión de facturas: \Xailer\Samples\DataControls\DBFData6\Source\PrnDoc.Prg . Con ese módulo de impresión de facturas sacas cualquier informe o documento que quieras imprimir.
Ya es cuestión de que te lo parametrices para poder cambiar coordenadas y textos sin tener que tocar los fuentes como hace XeviComas.
Espero que te sirva.
Saludos
Ya es cuestión de que te lo parametrices para poder cambiar coordenadas y textos sin tener que tocar los fuentes como hace XeviComas.
Espero que te sirva.
Saludos
Re: Informes con Xailer
Javier,
Muchas gracias por el dato, lo voy a ver ya.
Saludos
Daniel
Muchas gracias por el dato, lo voy a ver ya.
Saludos
Daniel
JavierCantarero escribió:Buenas, un buen ejemplo lo tienes en la impresión de facturas: \Xailer\Samples\DataControls\DBFData6\Source\PrnDoc.Prg . Con ese módulo de impresión de facturas sacas cualquier informe o documento que quieras imprimir.
Ya es cuestión de que te lo parametrices para poder cambiar coordenadas y textos sin tener que tocar los fuentes como hace XeviComas.
Espero que te sirva.
Saludos
Re: Informes con Xailer
Hola Foro,
De nuevo por aquí por este tema.
Antes que nada muchas gracias por su ayuda.
Les cuento que pude generar mi primer listado usando REPORT oReport ... y les quiero hacer una consulta breve ¿es posible hacer que la ventana que aparece cuando usamos la cláusula PREVIEW aparezca con el ancho total de "la hoja" o que podamos definir el tamaño de dicha ventana?
Un saludos y nuevamente gracias
Daniel
De nuevo por aquí por este tema.
Antes que nada muchas gracias por su ayuda.
Les cuento que pude generar mi primer listado usando REPORT oReport ... y les quiero hacer una consulta breve ¿es posible hacer que la ventana que aparece cuando usamos la cláusula PREVIEW aparezca con el ancho total de "la hoja" o que podamos definir el tamaño de dicha ventana?
Un saludos y nuevamente gracias
Daniel