lunes, 15 de octubre de 2012

Mi viaje a Pomaire, Chile

Era domingo en la mañana, me levante más temprano de lo normal así que me dije, es hora de tomar la mochila y viajar. Quería ir a un lugar cercano donde encontrar algo interesante, pensé en Pomaire. Pomaire es un pueblo pequeño de artesanos alfareros, ubicado a 50 kilómetros al oeste de Santiago. El principal atractivo del lugar es la comida y las artesanías de Barro.

Salí de mi departamento a eso de las 11 am. y me dirigí a la estación de buces "San Borja" en la estación  de metro "La central", ahí conseguí los boletos y a eso de las 12 estaba saliendo a Pomaire, el viaje fue tranquilo, la autopista es recta en su mayoría y demoramos cerca de 40 minutos.

El principal atractivo es la calle principal donde se vende artesanía de barro, comida tipica chilena cómo las empanadas de pino y pastel de choclo.

Las empanas de pino tienen carne de res, cebolla y aceitunas. Odio las aceitunas así que me las como sin ellas.  
El pastel de choclo(maíz) no me gustó, no suelo comer comida dulce, principal motivo por el que odiaba el mole poblano. 
También puedes encontrar dulces típicos chilenos cómo los alfajores y empanaditas, son las culpables de mi aumento de peso.
Me quede con las ganas de traerme varias artesanías por lo que no dudo en regresar un día de estos. Fue agradable convivir con las personas de ese lugar, escuchar sus historias y descubrir el impacto que tiene México en esos lugares pues la mayoría de las personas conocen de nuestra cultura.
















miércoles, 19 de septiembre de 2012

Como crear y empaquetar un modulo en Openbravo ERP

Objetivo
Openbravo ERP 2.50 introdujo el concepto de modularidad. La modularidad proporciona a los desarrolladores los medios para poder desarrollar, empaquetar y distribuir su trabajo de una manera estructurada y controlada.
Para los usuarios de Openbravo ERP 2.50, la modularidad hace posible descargar, instalar y actualizat desarrollos a medida. 
En esta entrada describo cómo crear y empaquetar un nuevo modulo.
Introducción a la modularidad
Los objetivos de la  modularidad son:
* Contribuir más fácilmente al proyecto Openbravo ERP, permitiendo el desarrollo y mantenimiento de caracteristicas opcionales de una manera distribuida y desacoplada.
* Proporcionar a la comunidad un conjunto rico de extensiones para satisfacer las necesidades particulares de su negocio sin tocar el nucleo del producto.
* Acortar los ciclos de implementación al permitir que los integradores de sistemas desarrollen una funcionalidad muy específica para satisfacer las necesidades únicas de un mercado en particular.
Un modulo es una pieza de una funcionalidad adicional que puede ser desarrollado opcionalmente e independiente de Openbravo ERP. Ejemplos de módulos son: reportes adicionales, ventanas adicionales, conectores, paquetes de traducciones, lista de impuestos, categorías de productos, etc,.
Todo nuevo desarrollo debería hacerse cómo parte de un modulo. Sólo los módulos que estén marcados  cómo  En Desarrollo pueden ser usados en el proceso de desarrollo. Un módulo puede consistir de los siguientes artefactos de software:
  • Componentes del diccionario de aplicación: Todo nuevo artefacto del diccionario debe estar asociado a un modulo. Por ejemplo el artefacto Ventana ahora tienen un campo que permite enlazar el componente del Diccionario de Aplicación a un modulo.
  • Recursos de software: Estos artefactos no están definidos en Openbravo ERP en si mismo, por ejemplo, clases Java, librerías, recursos web(imágenes, etc,.), archivos de configuraciones, etc,. Para mantener la relación con el modulo, los recursos de software necesitan estar localizados en el directorio de módulos dentro del projecto de desarrollo de Openbravo ERP. Cada módulo, tiene que estar bajo un directorio único.
  • Datos de Referencia: Los módulos pueden ser distribuidos con datos básicos relacionados al negocio, por ejemplo, categorías de productos, impuestos, etc,. Los datos son definidos en datasets que pueden estar relacionados con un modulo.  
El proceso de desarrollo de un modulo, consta de tres pasos.
  1. Registrar tu módulo en el Diccionario de Aplicación y en el repositorio central (opcional).
  2. Desarrollar los artefactos incluidos en tu modulo. Dependiendo de los requerimientos de tu modulo puede incluir uno o varios tipos de artefactos o una combinación de ellos.
  3. Extraer el archivo .obx de tu modulo y publicarlo en el repositorio central. 
Los pasos 1 y 3 son comunes a todos los tipos de modulos, el paso 2 depende de los requerimientos de tu modulo.

domingo, 19 de agosto de 2012

Funciones Básicas de PgAdminlll

Funciones Básicas de PgAdminlll

PgAdminlll es un cliente gráfico para el gestor de base de datos "Postgresql" nos permite crear Base de Datos, Administrar Usuarios, Administrar Servidores y ejecutar sentencias SQL. Una vez que hemos instalado PostgreSQL y PgAdminlll lo primero que haremos será agregar un servidor. La versión de PgAdmin que tengo es la 1.12.3 No debe haber mucha diferencia con las anteriores.


1. Agregando un servidor.
Si es la primera vez que abrimos PgAdminlll de lado izquierdo tenemos el navegador, ventana que nos muestra en estructura de árbol Servidores, Base de Datos, Tablas, etc,.  Aquí una captura de mi entorno.


Cómo se puede ver mi entorno se encuentra vacío. Agregamos un Servidor para ello pinchamos el botón de agregar servidor cómo se muestra en la siguiente ventana.


Esta acción nos lleva a la ventana de edición.



Especificamos los siguientes datos.
nombre: El nombre de nuestro servidor (arbitrario)
Host: es el equipo donde está instalado el servidor, si está instalado en el mismo pc puedes colocar localhost. 
Puerto: El puerto donde se escuchan las peticiones por defecto suele ser 5432
Maintenance DB: Opcional, por defecto está disponible una bd llamada postgres el cual no es de uso publico.
Username: El nombre del Usuario con el te conectarás, previamente definido, el usuario por defecto es postgres
Password: El password del Usuario especificado anteriormente, si eliges postgres, el password por defecto es postgres. Es posible cambiarlo en el proceso de instalación.
Store password: Si no seleccionas está opción, se te pedirá el password cada vez que ingreses a PgAdminlll. En otro caso, PgAdminlll guardara el password y se conectará automáticamente.

Una vez rellenado todos los campos le damos aceptar.

Y nuestro entorno debe mostrar algo similar a la siguiente imagen.



sábado, 4 de agosto de 2012

Presente Simple y Presente Continuo

El presente Simple es un tiempo verbal que se utiliza para describir acciones habituales que suceden con cierta frecuencia, NO debe usarse para acciones que se están realizando en el momento.

El presente continuo en cambio se usa para describir acciones que están ocurriendo en el momento en que se habla

domingo, 27 de mayo de 2012

El comando Javac

Introducción
Cuando programamos usando un IDE como Netbeans, el proceso de compilación es transparente para nosotros, sin embargo, conocer en detalle el proceso de compilación incrementa tus habilidades de programador, te hace ver las cosas desde otra perspectiva, ademas te da conocimientos que nunca sabes cuando lo necesitarás. Javac es el programa de la plataforma Java para compilar los código fuentes de Java.

Descripción
Javac es el compilador de java, un programa ejecutable que nos permitirá compilar nuestro código fuente. Este programa lee las clases y definición de interfaces escritas en el lenguaje java y los compila generando los  byte codes dentro de los archivos .class.

Uso:
javac [options] [sourcefiles][classes] [argfiles]

El comando javac nos proporciona una lista extensa de opciones, vamos a ir de lo más básico a lo mas complejo.

Cómo podran ver es necesario pasar el path(ruta) de nuestra clase o clases al comando javac, hay dos maneras de pasar los nombres de los archivos de código fuente.

* Para un numero reducido de archivos fuentes, simplemente listar los nombres de archivos.
* Para un gran número de archivos de código fuente, listar los nombres de los archivos fuentes en un archivo de texto separados por espacios en blanco o saltos de linea. A continuación, utilice el nombre del archivo con el comando javac, precedido por un carácter @.
No esta demas recordar que los nombres de archivos de código fuente deben tener la extensión .java y ambos, clase y archivo deben tener el mismo nombre, es decir si mi clase se llama Hola2 entonces mi archivo debe llamarse Hola2.java para despuesde compilar tener un archivo llamado Hola2.class, el cual contiene los bytecodes.
Por defecto el compilador deja los archivos .class en el mismo directorio del archivo fuente, es posible indicarle explicítamente en donde colocarlos, mas adelante lo veremos.

Ejemplos:
Entorno: Ubuntu
Directorio: /home/betito/java
Clases: Hola.java Hola2.java
Abrimos una terminal en java, por defecto nuestra terminal esta posicionada en nuestro directorio home (/home/betito) asi que me muevo al diretorio java.

cd java

ejecutamos el comando javac en la terminal.

javac Hola.java

Despues de esto veremos que en nuestro directorio java tenemos un Hola.class
Ahora veamos como compilar dos clases.
Ejecutamos lo siguiente en la terminal.

javac Hola.java Hola2.java

Por ultimo he creado un archivo llamado filelist.txt con los nombres de las clases. Ejecutamos lo siguiente en nuestra terminal.

javac @filelist.txt