viernes, 7 de diciembre de 2012

Generar líneas de detalle en reporte

Al crear un reporte en iReport para OpenERP, es necesario agregar la propiedad  OPENERP_RELATIONS para que los campos one2many puedan generarse en el reporte. Por ejemplo, si queremos mostrar el detalle de una factura, en iReport vamos a propiedades del documento para insertar el campo de relación, también se lo puede hacer directamente en el xml.

1. Clic derecho en el nombre del reporte, en la ventana de Report Inspector, ir a Propiedades.


2. Se abre una ventana de diálogo como la que se muestra en la figura, ir a la sección de Más y clic en Propiedades.

3. En la ventana de diálogo clic en add para agregar la nueva propiedad, en Property name llenar con OPENERP_RELATIONS y en property value el campo que relaciona con la tabla de detalle ['invoice_line'].


4. Ahora ya se tiene listo para trabajar en la construcción del reporte, para ello clic derecho en el nombre del reporte, en la ventana de Report Inspector, ir a Edit Query y seleccionar los campos que se desea mostrar.


5. Finalmente se colocan los campos en el reporte. y listo!!


 Para más información: TRESCloud

viernes, 16 de noviembre de 2012

Primer reporte con Jasper Report y OpenERP

-->
Primer reporte en iReport y OpenERP

Una vez integrado el JasperReports con Openerp (http://trescloud.blogspot.com/2012/08/jasper-reports-en-openerp-v61.html) vamos a generar un xml que será el data set para el reporte. 
  1. En OpenERP ir a settings/Personalización/Jasper Reports/Crea plantilla de datos. Esta plantilla es un xml que contiene los campos del objeto al que vamos a realizar el reporte, y será este xml la fuente de datos del iReport.


  2. En la nueva ventana se solicita los siguientes datos:
    - Model: es el nombre del objeto del cual vamos a obtener el conjunto datos.
    - Depth: es un valor numérico que indica el nivel de profundidad de las tablas relacionadas a ese objeto.
    - XML: es un campo no editable, luego de crear la plantilla aparecerá el nombre Template.xml; en el botón Guardar Como, se puede elegir  el directorio donde se guardará la plantilla.


  3.  Ahora estamos listos para crear el primer reporte en iReport. 
Para iniciar el iReport se lo puede hacer desde una terminal o ejecutando directamente el  ireport.sh (en caso de estar en ubuntu como es nuestro caso).

iReport cuenta con un wizard que nos facilita la algunas tareas como la creación de un nuevo reporte y la conexión a la base, como se muestra ern la figura, elegimos un modelo de diseño para el reporte:


La figura siguiente muestra el entorno de iReport, la parte central es el espacio para diseñar el reporte, está dividido en secciones denominadas bandas: título (aparecerá en la primera página unicamente), la cabecera de pagina,  cabecera de columna (se repetirá en cada página), detalle (presenta los datos), pie de columna, pie de página, resumen y la banda no datos (en caso de que la base esté vacia, se mostrará la información de sección); cualquiera de estas bandas puede eliminarse según se requiera.


Antes de iniciar con el diseño del reporte hay que establecer una conexión con el datasource, para ello en la barra herramientas elegir "Reports Datasources"  se nos mostrará una lista de las conexión que hayamos realizado, clic en el botón New para configurar una nueva conexión:



Seleccionar el datasource de origen, en este caso se seleccionar XML file datasource:

Configurar los datos requeridos para la conexión:


Para mas información puedes contactarnos en

    Instalación de OpenERP 6.1 en Ubuntu Server (o Debian)




    Instalación de OpenERP 6.1 en Ubuntu Server (o Debian)

    OpenERP es uno de los gestores de recursos empresariales más importante en la actualidad, esto se debe principalmente a toda la comunidad que aporta en su construcción y mejora continua.

    En este caso, abordaremos uno de los principales procesos antes de poder iniciar a usar esta herramienta, como es su instalación, especificamente en Ubuntu Server. Cabe aclarar que esta guia puede ser usada para instalar OpenERP en Debian sin mayores dificultades (en Debian, ingresar al sistema como usuario root y ejecutar los comandos sin "sudo").

    Iniciemos:

    Lo primero, necesitamos Ubuntu server 10.04 LTS instalado, que por ahora quedará fuera de nuestra explicación.

    Ahora tenemos que actualizar el sistema, esto se hace mediante los siguientes comandos :

    Actualización de los repositorios:
    sudo apt-get update

    Iniciamos la actualización del sistema:
    sudo apt-get upgrade

    A partir de aqui, separaremos la instalacion en dos fases: la primera que se encarga de instalar y configurar la base de datos y la segunda que es la instalacion de OpenERP. La ventaja de hacerlo de esta manera es que podemos usar 2 servidores independientes, así cada uno se encarga de una parte específica.

    Fase 1:

    Instalando PostgreSQL para OpenERP

    Iniciamos creando un usuario de sistema que sera utilizado para el acceso a Postgres, para nuestro ejemplo lo llamaremos "openerp"

    sudo addgroup openerp
    sudo useradd -m -s /bin/bash -g openerp openerp

    Ahora configuramos la contraseña de este usuario, lo hacemos con el siguiente comando:

    sudo passwd openerp

    Aquí el sistema pedirá la nueva contraseña, al igual que la confirmación de la misma.


    Finalizado esto, instalamos Postgres

    sudo apt-get install postgresql

    En este punto debemos crear el usuario o "rol" con el cual accederemos a PostgreSQL:

    (ingresamos como usuario postgres del sistema)
    sudo su postgres

    (Creamos el rol openerp)
    createuser openerp -P

    Nos preguntará:

    La contraseña, que deberemos escribirla 2 veces
    Si queremos que este usuario sea "super usario", pondremos "n"
    Si se le permitirá crear bases de datos, pondremos "s"
    Si se le permitirá crear otros roles, pondremos "n"

    Hay que tomar en cuenta que si la instalación se la hace en inglés deberá responderse en inglés, es decir, en vez de "s" poner "y"

    (salimos del usuario postgres)
    exit

    Que hacer si el servidor es exclusivo para PostgreSQL:

    Es necesario habilitar el acceso a este servidor modificando los archivos de configuración de postgres:


    La mejor manera de ubicarlos archivos de configuración de postgres es utilizando el siguiente comando:

    sudo find / -name postgresql.conf

    En mi caso, el archivo de configuración se encuentra en /etc/postgresql/8.4/main/postgresql.conf

    Por defecto, tu servidor postgres solamente escuchará en localhost, para permitir el acceso a cualquier host modificaremos la siguiente directiva como está a continuación:

    listen_addresses = '*'



    Editar el fichero pg_hba.conf:

    De manera similar, buscamos el archivo pg_hba.conf con la siguiente instrucción:

    sudo find / -name pg_hba.conf
    En mi caso, el archivo de configuración se encuentra en /etc/postgresql/8.4/main/pg_hba.conf

    La idea es agregar una línea al final del archivo que permita el acceso al servidor, la línea es la siguiente:

    host all all 0.0.0.0 0.0.0.0 md5

    Una vez realizados estos pasos, debemos reiniciar el servicio postgres para tener acceso desde otro servidor.


    Fase 2:

    Instalando OpenERP

    Aunque se menciona como instalación, realmente aquí lo que se instalarán son las dependencias que OpenERP requiere para funcionar.

    OpenERP puede ejecutarse directamente gracias a que ocupa un lenguaje interpretado, en este caso python.

    Para comenzar, si estamos trabajando en un servidor diferente al que instalamos postgres, deberemos realizar los siguientes pasos: (si la instalación es en el mismo servidor se puede omitir el paso 1 y 2)


    1._ (Actualización de los repositorios y actualización del sistema)
    sudo apt-get update
    sudo apt-get upgrade

    2._ (Creación del usuario openerp)
    sudo addgroup openerp
    sudo useradd -m -s /bin/bash -g openerp openerp
    passwd openerp (pide ingresar 2 veces la contraseña)

    Ahora Instalamos los requisitos de OpenERP para que pueda funcionar correctamente, esto lo hacemos con el siguiente comando:

    sudo apt-get install python-lxml python-mako python-dateutil python-psycopg2 python-pychart python-pydot python-tz python-reportlab python-yaml python-vobject python-setuptools python-openid python-webdav

    Instalamos el Manager de paquetes para python (pip)

    sudo easy_install pip

    Este nos ayudara a instalar las versiones que OpenERP requiere de los siguientes paquetes:

    (werkzeug)
    sudo pip install werkzeug

    (babel)
    sudo pip install babel

    Descargando OpenERP y ejecutarlo

    Ingresamos como usuario openerp para usar su home como directorio de trabajo

    sudo su - openerp (pedirá la contraseña)

    Descargamos OpenERP desde la página oficial, para este trabajo usamos el comando wget


    wget http://nightly.openerp.com/6.1/releases/openerp-6.1-1.tar.gz

    Lo descomprimimos:

    tar -zxvf openerp-6.1-1.tar.gz

    Ahora, iniciamos OpenERP, hasta este punto si está en el mismo servidor que postgres debería arrancar correctamente, sin embargo, si está instalado en un servidor diferente nos dará un mensaje de error al querer mostrar la lista de bases de datos, esto debido a que no se ha configurado la conexión al servidor de postgres.

    cd openerp-6.1-1
    ./openerp-server


    Configurar OpenERP para conectarse a PostgreSQL

    OpenERP soporta algunos parámetros desde línea de comandos, existe uno que creara un archivo de configuración en el directorio home del usuario (si estamos como usuario openerp será /home/openerp), el parámetro es "-s".

    Pero antes, debemos ingresar como usuario openerp:

    sudo su - openerp
    cd /home/openerp/openerp-6.1-

     ./openerp-server -s



    Una vez ejecutado, se crea el archivo de nombre ".openerp-serverrc".

    Cabe anotar que si no se especifica ninguna opción de archivo de configuración este será el archivo que OpenERP use la siguiente vez que inicie.

    Ahora, editamos este archivo (como usuario openerp)

    nano  /home/openerp/.openerp-serverrc

    y buscamos las siguientes opciones que configuraremos con los valores necesarios para conectarse al servidos Postgres:



    db_user: Indica el nombre de usuario con el que nos conectaremos, en nuestro caso "openerp"

    db_password: La contraseña del usuario que estamos usando, aquí pondremos la contraseña que se configuró al crear el rol para postgres

    db_port: Puerto en el cual esta escuchando postgres, por defecto es el 5432

    db_host: Dirección IP del servidor, esta dirección dependerá de la configuración de red.

    Ejemplo:

    db_user = openerp
    db_password = clave
    db_port = 5432
    db_host = 192.168.0.189

    Y ahora si, ejecutemos OpenERP (debemos estar en /home/openerp/openerp-6.1-1 y acceder como usuario openerp)

    ./openerp-server

    Eso es todo, en caso de error de conexión a la Base de Datos, debe verificarse la configuración del servidor de PostgreSQL y la información del archivo de configuración de OpenERP.

    Espero que este tutorial les sea muy útil!!!

    Si deas más información sobre nosotros puedes ingresar a nuestro portal, www.trescloud.com

    Saludos!!!

    domingo, 4 de noviembre de 2012

    Congreso Nacional de Ingeniería en Sistemas SINAPUCE 2012




    TRESCLOUD estará presente replicando la charla-taller con la que participamos en el Campus-party en el Congreso Nacional de Ingeniería en Sistemas SINAPUCE 2012,

    El Cloud Computing, la Empresa y el Software Libre

    Este taller permitirá de forma breve presentar a los participantes varias herramientas relacionadas al software libre que permiten crear aplicaciones empresariales para Cloud Computing a partir de software de gestión empresarial; en particular se hablará de las siguientes herramientas: Ruby on Rails, OpenERP, GitHub, Heroku. Además, se presentarán algunas de las tecnologías que forman parte de Cloud Computing como Servicios Web, SOAP y HTML5.


    Se explorarán las características y los beneficios de emplear éstas soluciones. Se presentarán soluciones rápidas para desarrollo aplicaciones web empresariales teniendo como  frontend un framework de desarrollo web (Ruby on Rails) y como  backend  a un ERP (OpenERP), y como herramientas viabilizadoras el servicio para almacenamiento de proyectos y manejo de versionamiento GitHub y la plataforma abierta para Cloud Heroku.

    El Congreso Nacional de Ingeniería en Sistemas SINAPUCE 2012, es un evento anual promovido por las Escuelas de Ingeniería en Sistemas que forman parte del Sistema Nacional de Pontificias Universidades Católicas del Ecuador, que reúne investigadores docentes y estudiantes de  las Sedes de Ibarra, Santo Domingo, Esmeraldas, Quito y Ambato  para discutir  los avances obtenidos en la investigación, la docencia y el desarrollo del área de Informática en cada Sede y Región. El  Congreso Nacional del SINAPUCE  2012 comprenderá diversas actividades, incluyendo sesiones técnicas de presentación de trabajos,   talleres 

    prácticos,  paneles de discusión, concurso de tesis y disertaciones, así como conferencias de importantes personalidades del área.



    Para mas información puedes contactarnos en

    viernes, 26 de octubre de 2012

    GITHUB


    ADMINISTRA TU CÓDIGO CON GITHUB

    GITHUB:

    GitHub es un servicio web que permite alojar los desarrollos mediante un sistema de control de versiones Git.
    GitHub ofrece hosting gratuito para repositorios públicos así como contratar diferentes planes para tus proyectos.


    CARACTERÍSTICAS:
    • Una herramienta de revisión de código, donde se pueden añadir anotaciones en cualquier punto de un fichero, y debatir sobre determinados cambios realizados en un commit específico.
    • Un visor de ramas donde se pueden comparar los progresos realizados en las distintas ramas de nuestro repositorio.
    • Puedes clonar el repositorio ajeno, hacer un fork, para que se copie a tu cuenta, efectuar en esta copia los cambios que necesites, y finalizar emitiendo una solicitud de pull al dueño del repositorio original
    • Un visor de ramas donde se pueden comparar los progresos realizados en las distintas ramas de nuestro repositorio.

    FUNCIONES DE REVISIÓN DE CAMBIOS EN EL CÓDIGO

    Además de poder trabajar con tu equipo en el software que estéis construyendo, puedes contribuir a mejorar el software de los demás. Para poder alcanzar esta meta, Github provee de funcionalidades para hacer fork y solicitar pulls
    Funcionan del siguiente modo:
    • Imagina que se te ha ocurrido una funcionalidad, mejora o corrección de un bug de un software que no es tuyo, pero que está alojado en GitHub. 
    • Puedes clonar el repositorio ajeno (hacer un fork) para que se copie a tu cuenta, efectuar en esta copia los cambios que necesites, y finalizar emitiendo una solicitud de pull al dueño del repositorio original.
    •  Éste podrá analizar los cambios que has realizado fácilmente, y si considera interesante tu contribución, hacer un merge de los mismos con el repositorio original en pocos clicks. Y sin que se pierda la autoría de tus commits.
    Para mas información puedes contactarnos en

    viernes, 24 de agosto de 2012

    Jasper Reports en OpenERP v6.1


    Jaspersoft (http://www.jaspersoft.com/es) es un paquete flexible de software para actividades de inteligencia de negocios, como informes, dashboards y análisis altamente interactivos y basados en Web; uno de sus componentes principales es el iReport Designer que viene integrado con JasperReport     y  JasperServer, esta herremienta permite crear fácilmente informes desde cualquier fuente de datos y generarlos en algunos tipos de archivo como pdf, excel, html, xml, entre otros.

    Acontinuación veremos la instalación de Jaspersoft y la integración de JasperReport con OpenERP.

    Instalar Jaspersoft

    1. Descargar paquete jaspersoft:

       http://jasperforge.org/projects/jasperserver

    Este paquete incluye la instalación del ireport (es uno de los últimos pasos del asistente de instalación).

    2. En el directorio donde se instala el Jaspersoft dar permiso de lectura y escritura a todos los usuarios:

       sudo chmod 7777 -R

    3. Descargar el módulo jasper_report 6.1 de:

       bzr branch lp:openobject-jasper-reports/6.1

    4. Copiar la carpeta jasper_report (que se acabó de descargar) en el directorio addons de openerp.

    5. Desde openerp lo instalamos como cualquier módulo: en settings/modules buscar jasper_report e instalar. Esto creará el menú Jasper Reports en settings/customization, el cual muestra dos submenus, uno para la generación de la plantilla del informe y otro para la subida del reporte (el mismo que será deseñado en iReport).
    _________________________________

    Iniciar JasperSoft

    1. Levantar servidor tomcat:
    sudo /home/usuario/jasperreports-server-cp-4.5.0/apache-tomcat/bin/startup.sh

    2. Levantar ireport:
    /home/usuario/jasperreports-server-cp-4.5.0/ireport/bin/ireport

    3. Crear planatilla desde openerp

    4. Subir plantilla en OpenERP Settings/Customization/Jasper Reports/Jasper Reports

    Puedes encontrarnos en www.trescloud.com

    Instalacion Jungledisk en ubuntu

    En el sigiente video se puede ver la configuración de jungledisk


    Este sistema es utilizado para backups con Rackspace


    Para mas información puedes contactarnos en

    viernes, 17 de agosto de 2012

    Cultura Empresarial 2.0 y Bienvenida!

    A nombre de TRESCLOUD les doy la bienvenida a nuestro nuevo blog!, en TRESCLOUD estamos muy emocionados con lo que autodenominamos "cultura empresarial 2.0", y que persigue la interacción y presencia social de nuestra empresa a través de las nuevas tecnologías. Como parte de ésta "cultura empresarial 2.0" mejoraremos nuestro uso corporativo de facebook, twitter, linkedin, g+, foros, nuestra página web, y éste, nuestro nuevo blog.

    Parte de nuestra "cultura empresarial 2.0" será aportar a la comunidad con conocimiento y experiencia, así como nosotros también nos hemos beneficiado del conocimiento colectivo publicado sobre Internet. Pondremos así nuestro granito de arena.

    Estaremos muy gustosos de recibir un retorno (feedback) de parte de ustedes, lo apreciaríamos mucho, y será de inmensa utilidad para toda la comunidad pues la magia de la cooperación es que al compartirla se multiplica.

    Un saludo especial a la comunidad de software libre, a la comunidad de OpenERP, y a la comunidad de Cloud Computing, de las cuales nos consideramos parte.

    Sean bienvenidos,

    Andrés Calle
    Gerente General
    TRESCLOUD Cía Ltda
    www.trescloud.com