
El viernes 7 de Mayo estuvo Fernando da Rosa como invitado al programa "No toquen nada" de Oceano FM. Fernando da Rosa es un referente en el Uruguay en temas de Software Libre y en esta entrevista explica muy sencillamente que es el Software Libre para aquellos que no conocen del tema.
Pueden escucharlo en formato MP3 o en formato OGG.
Fuente: Blog de Fernando da Rosa
Entrevista a Fernando da Rosa
Etiquetas: Entrevista, SoftwareLibre 0 comentariosPublicado por Diego Rostagnol en 8:11 Enlaces a esta entrada
Upgrade or not Upgrade
Etiquetas: Artech, GeneXus, SoftwareLibre, Upgrade 0 comentariosÚltimamente me ha pasado de encontrar errores en el generador JAVA U3 de GeneXus que están corregidos en el U4. El problema es que hace un tiempo instalé el U4 pero muchas cosas que funcionan con el U3 ya no funcionan con el U4, así que tuve que volver a instalar el U3. Decidí esto ya que al menos los problemas que tenía con el U3 los he solucionado de una u otra manera aunque aun no consigo solución para algunos errores que he encontrado durante el último mes.
Lo que me pregunto es si siempre vamos a estar en la misma, siempre con errores en GeneXus que no tenemos la posibilidad de corregir.
Sinceramente creo que este tema tiene una solución muy sencilla y es liberar el código fuente de los generadores, de esta manera podríamos corregir (o al menos intentarlo) los errores que encontramos.
Lamentablemente creo que Artech nunca hará algo semejante y la mayoría de la comunidad GeneXus tampoco es de ayuda para que esto suceda ya que por lo que he visto la mayoría tienen en su cabeza el modelo de negocios “tipo Microsoft”, y no conciben que se pueda hacer un producto rentable liberando el código fuente del mismo, lo que me parece totalmente equivocado y pruebas de ello sobran.
No digo que los generadores se liberen con una licencia tipo GPL, solo una licencia que nos permita corregir en la medida de lo posible los errores que estos tengan, nada mas que eso. Es mas, la compra y el costo de las licencias no tiene porqué variar, se puede seguir como hasta ahora, exigiendo la compra de una licencia del generador por puesto de trabajo.
Creo que esto es bueno tanto para Artech como para sus clientes. Imaginen, toda la comunidad colaborando con el equipo de desarrollo de Artech !!! y gratis !!!, que alguien por favor me diga cual es la desventaja para Artech con esto porque a mi no se me ocurre.
Lamentablemente, como dije antes, no creo que esto suceda ya que Artech no siente ninguna presión sobre el tema y veo a la comunidad GeneXus muy poco interesada en querer ejercer esa presión, cada uno en su pequeño mundo y su negocio sin importarle lo que le pasa al de al lado o pensar en lo mejor para todos.
Publicado por Diego Rostagnol en 8:42 Enlaces a esta entrada
"Silent Printing" en GeneXus para reportes PDF en el generador JAVA ambiente WIN
Etiquetas: GeneXus, impresión, JAVA, PDF 0 comentariosQuería que el primer post (en realidad el segundo) de este blog sea sobre algo productivo, por eso decidí publicar una solución para un problema que tuve hace algún tiempo con GeneXus y que quizas le pueda servir a otros.
El problema era que al setear la propiedad "Report Output" de un reporte PDF a "Only to printer", al enviar a imprimir un reporte se abría Acrobat Reader y no era muy cómodo para la impresión de facturas.
Al consultar con el soporte de Artech, me dijeron que la funcionalidad era así y no había solución ya que la impresión se hacía mediante Acrobat Reader.
Buscando en google encontré una librería desarrollada en JAVA llamada PDFBox que sirve para imprimir archivos PDF desde JAVA entre otras funcionalidades. Usando esta librería escribí una clase externa en JAVA que permite enviar a imprimir un archivo PDF a una impresora cualquiera sin abrir ninguna ventana.
Dicha clase también lee el archivo gxprn.ini para saber a que impresora debe enviar a imprimir el archivo PDF.
La versión de PDFBox usada para implementar esta clase es un Night Build del momento en que la hice ya que aunque existía un metodo llamado "silentPrint" que recibía como parámetro la impresora a la cual debía enviarse a imprimir el archivo PDF, el mismo no estaba correctamente implementado por lo cual no funcionaba. Gracias a dios esta librería es Open Source.
También usé una librería Open Source llamada IniEditor para la lectura del archivo gxprn.ini. Dicha librería también tuvo que ser modificada pues tenía algunos bugs cuando había secciones en blanco dentro del archivo ini.
Lamentablemente la utilización de esta clase no es de lo mas cómodo ya que hay que setear la propiedad "Report Output" del reporte a "Only to File" y luego hacer la llamada al procedimiento que envía a imprimir el archivo PDF, pero al menos es una solución aceptables para casos como el mío.
Su utilización es muy sencilla, aquí describo los pasos a seguir.
En el modelo:
- Agregar al classpath los archivos PDFBox-0.7.4.jar e IniEditor.jar
- Compilar el archivo pimprimopdf.java y copiar el .class resultante a la carpeta del modelo correspondiente
En el Reporte:
- Setear la propiedad "Report Output" en "Only to file"
- escribir las siguientes reglas:
parm(&nombredearchivopdf);
Output_File(&nombredearchivopdf,'PDF');
- Escribir las siguientes lineas.
&nombrearchivopdf = 'archivopdf.pdf')
call(RMiReportePDF,&nombrearchivopdf)
call('pimprimopdf',&nombrearchivopdf,'Facturas')
Subí el proyecto a GxOpen para que quien quiera pueda usarlo y mejorarlo. Se puede descargar desde aquí.
Hay varias cosas que se pueden mejorar, por ahora la única propiedad del archivo gxprn.ini que se toma en cuenta es la impresora a la cual enviar a imprimir el archivo, habría que tomar en cuenta las demas propiedades.
Como corresponde segun las licencias de las librerías usadas dejo los links a los códigos fuentes con las modificaciones.
El código fuente modificado de PDFBox lo pueden descargar desde aquí.
El código fuente modificado de IniEditor lo pueden descargar desde aquí
Publicado por Diego Rostagnol en 8:58 Enlaces a esta entrada
Primer post, ¿ De que tratará este blog ?
0 comentariosLa creación de este blog surgió a partir de la necesidad de tener un lugar donde expresar mi opiniones y escribir de lo que a mi me interesa sin necesidad de dar explicaciones a nadie.
Planeo escribir principalmente sobre programación en general, GeneXus, Software Libre y demás noticias sobre tecnología, aunque seguramente habrá tópicos que escapen a estos temas.
Quisiera desde este lugar poder aprender nuevas cosas a partir de los comentarios, criticas y correcciones que otras personas deseen aportar. A su vez planeo escribir algún que otro post describiendo problemas con los que me he encontrado trabajando con GeneXus y sus correspondientes soluciones para que quizás otra persona pueda beneficiarse de ello.
También es seguro que será mi lugar predilecto para criticar tanto a empresas como a personas.
Publicado por Diego Rostagnol en 13:58 Enlaces a esta entrada
Diseño e iconos por N.Design Studio | A Blogger por Blog and Web