sábado, 1 de enero de 2011

Instalación de parches de GLOBALQSS en ADempiere

  1. Descargar los parches de GLOBALQSS:
    $ wget -O patches_360lts_20101231_GlobalQSS.tgz "http://sourceforge.net/projects/adempiere/files/GlobalQSS_Patches/360lts/patches_360lts_20101231_GlobalQSS.tgz/download"
    $ wget -O patches_360lts_20101231_GlobalQSS.tgz.MD5 "http://sourceforge.net/projects/adempiere/files/GlobalQSS_Patches/360lts/patches_360lts_20101231_GlobalQSS.tgz.MD5/download"
    $ wget -O patches_360lts_20101231_GlobalQSS_migra.tgz "http://sourceforge.net/projects/adempiere/files/GlobalQSS_Patches/360lts/patches_360lts_20101231_GlobalQSS_migra.tgz/download"
    $ wget -O patches_360lts_20101231_GlobalQSS_migra.tgz.MD5 "http://sourceforge.net/projects/adempiere/files/GlobalQSS_Patches/360lts/patches_360lts_20101231_GlobalQSS_migra.tgz.MD5/download"
  2. Chequeamos la integridad de los ficheros
    $ md5sum -c patches_360lts_20101231_GlobalQSS.tgz.MD5
    $ md5sum -c patches_360lts_20101231_GlobalQSS_migra.tgz.MD5
  3. Detenemos do servidor de adempiere
    $ sudo ./RUN_Server2Stop.sh
  4. Respaldamos la base de datos
    $ sudo ./RUN_DBExport.sh
  5. Respaldamos el directorio de adempiere
    $ cd /opt/
    $ sudo cp -r Adempiere/ bak_Adempiere
  6. Descomprimo patches_360lts_20101231_GlobalQSS.tgz y copio en el directorio de la instalación, haciendo un respaldo de los archivos que cambian
    $ cd /home/beremisedc/Descargas/
    $ sudo cp --backup Adempiere/lib/* /opt/Adempiere/lib/
    $ sudo cp --backup Adempiere/packages/liberoHR/lib/liberoHR.jar /opt/Adempiere/packages/liberoHR/lib/
    $ sudo cp --backup Adempiere/packages/liberoMFG/lib/liberoMFG.jar /opt/Adempiere/packages/liberoMFG/lib
    $ sudo cp -r Adempiere/packages/poi/ /opt/Adempiere/packages/
    $ sudo cp --backup Adempiere/zkpackages/liberoMFG/lib/liberozkMFG.jar /opt/Adempiere/zkpackages/liberoMFG/lib
  7. Configuramos adempiere
    $ sudo ./RUN_silentsetup.sh
  8. Descomprimimos el archivo patches_360lts_20101231_GlobalQSS_migra.tgz
    $ tar -xvf patches_360lts_20101231_GlobalQSS_migra.tgz
  9. Aplicamos los scripts (* Se recomienda llevar un registro de los scripts aplicados, para futuras actualizaciones ** Debe tomar acción sobre cualquier error que aparezca al ejecutar el script, pueden preguntar aquí).
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 738_AddZoomToUsedIn.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 739_FixReleaseNoLength.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 740_FixCaptureSequenceBrazil.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 741_PayrollDictionaryFixes.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 742_FR2878276_ImportPayroll.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 742v_patchversion2010-10-15.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 743_FixOrderLineTaxVT.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 744_FixFR2897194_Adv_Zoom.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 744v_patchversion2010-11-05.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 745_FixWrongEntityTypes.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 746_FR3090719.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 747_FixAccountNames.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 748_BF3110938.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 749_BF3116131.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 749v_patchversion2010-11-24.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 750_BF2904321.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 751_DisallowNegativeInventory.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 752_FR3123769_Role_AmtApprovalAccum.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 753_FixTypoInDemoData.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 754_TranslateDashboardTitles.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 755_BF3063575.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 756_EnableVendorBreakForSales.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 757_FR3132033.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 758_FR3132075.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 759_FS01_FR3132687.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 760_FR3132797.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 762_Fix1913092.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 763_ScheduleWithRecordID.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 764_TranslateZkReportViewer.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 765_FixZkMessage.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 766_738_FR3016592_SpecifySelectionColumns.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 767_745_FR3016592_SpecifySelectionColumns.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 768_741_BF3018013_FixSystemColorWindow.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 769_749_BF3075201_PP_RV_MRP.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 770_750_BF3016214_PrintMO.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 771_772_BF3137399_DateTimeforParameter.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 771v_patchversion2010-12-16.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 772_BF3139066.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 773_756_FR3039241_RussianRegions.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 774_FR3039241_RussianRegionsFix.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 774v_patchversion2010-12-18.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 775_DisallowNegativeInventory.sql
  10. Realizamos el proceso post-migration
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 01_add_missing_translations.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 02_SynchronizeTerminology.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 03_update_sequences.sql
    $ sudo /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere -f 04_role_access_update.sql
  11. Iniciamos el servidor
    $ cd /opt/Adempiere/utils/
    $ sudo ./RUN_Server2.sh &

Referencias:
http://www.adempiere.com/index.php/Migration
https://sourceforge.net/projects/adempiere/forums/forum/610548/topic/3880506/index/page/2

P.D. Agradecimiento especial a Carlos Ruiz por sus acertadas direcciones y aportes.

viernes, 17 de diciembre de 2010

Instalar el servidor de aplicaciones de ADempiere como un servicio

Si hay la necesidad de arrancar el servidor de aplicaciones para ADempiere desde el inicio, es necesario hacer algunos cambios para que el script original (adempiere_Debian.sh) funcione en Ubuntu.

Como condición necesaria para aplicar estas instrucciones es haber instalado satisfactoriamente ADempiere.

  1. Abrimos un terminal y hacemos una copia del archivo original (para preservar el original en caso de emergencia):

    $ cd $ADEMPIERE_HOME/utils/unix
    $ sudo cp adempiere_Debian.sh /etc/init.d/adempiere
  2. Editamos el archivo adempiere para habilitarlo en Ubuntu 10.10

    $ cd /etc/init.d
    $ sudo gedit adempiere


    Hacer los siguientes cambios:

    EXECDIR=/opt/adempiere (directorio donde se instaló ADempiere)
    ADEMPIEREUSER=root (evita problemas de permiso al inicializar)
    # ENVFILE=/home/adempiere/.bashrc (comentar esta línea con #)
    su $ADEMPIEREUSER -c "cd $EXECDIR/utils;$EXECDIR/utils/RUN_Server2Stop.sh &> /dev/null &" a su $ADEMPIEREUSER -c "cd $EXECDIR/utils;$EXECDIR/utils/RUN_Server2Stop.sh &> $LASTLOG &" (evita errores al apagar)
    MAXITERATIONS=90 # 2 seconds every iteration, max wait 2 minutes) (incrementa el tiempo para el arranque/parada del servidor)
  3. Crear los enlaces de nivel
    $ sudo update-rc.d adempiere defaults
  4. Los siguientes comandos le ayudarán a administrar esta utilidad desde el terminal. $ sudo /etc/init.d/adempiere [start|stop|restart|status|condrestart]  
    Referencias:
    Install-adempiere-erp-on-ubuntu-karmic-koala 

miércoles, 15 de diciembre de 2010

Instalar ADempiere en Ubuntu 10.10

Estas instrucciones permiten la instalación de ADempiere 3.60 sobre Ubuntu 10.10 apoyado en openjdk-6 y Postgres 8.4.
  1. Instalar openjdk, Postgres y subversion
  2. $ sudo aptitude install openjdk-6-jdk openjdk-6-jre icedtea6-plugin postgresql subversion
  3. Configurar JAVA_HOME para que Postgres pueda encontrar la máquina virtual de Java (jvm)
  4. $ export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk/
  5. Ahora tenemos que permitir a los usuarios acceder a la base de datos como el usuario postgres, que es el usuario del sistema de la base de datos y que será utilizado por el script RUN_ImportAdempiere.sh para importar los datos de base de datos.
    $ sudo gedit /etc/postgresql/8.4/data/pg_hba.conf
    Se puede cambiar el ip por el ip externo.
    # Database administrative login by UNIX sockets
    local all postgres trust

    # TYPE DATABASE USER CIDR-ADDRESS METHOD

    # "local" is for Unix domain socket connections only
    local all all trust

    # IPv4 local connections for user postgres:
    host all postgres 192.168.1.100/24 trust
    # IPv4 local connections for user adempiere:
    host all adempiere 192.168.1.100/24 trust
    # IPv6 local connections:
    host all all ::1/128 trust
  6. Reiniciamos Postgres para que se apliquen los cambios
    $ sudo /etc/init.d/postgresql-8.4 restart
  7. Descargar y construir(build) ADempiere desde SVN
    $ svn co https://adempiere.svn.sourceforge.net/svnroot/adempiere/trunk ~/svnworkdir/adempiere
    $ cd ~/svnworkdir/adempiere/utils_dev
    $ ./RUN_build.sh
  8. Instalamos ADempiere
    $ sudo unzip ~/svnworkdir/adempiere/install/build/Adempiere_360LTS.zip -d /opt
    $ cd /opt
    $ sudo mv Adempiere adempiere-360LTS
    $ sudo ln -sf adempiere-360LTS adempiere
    $ export ADEMPIERE_HOME="/opt/adempiere"
    Ahora veremos algo así:
    $ ls -l /opt
    $ total 4
    $ lrwxrwxrwx 1 root root 15 Oct 18 19:22 adempiere -> adempiere-360LTS
    $ drwxr-xr-x 10 root root 4096 Oct 18 19:11 adempiere-360LTS
  9. Creamos la base de datos
    ubuntu:/opt$ sudo su - postgres
    postgres@ubuntu:~$ /etc/postgresql/8.4/bin/createdb adempiere
    postgres@ubuntu:~$
    /etc/postgresql/8.4/bin/createuser adempiere
    Shall the new role be a superuser? (y/n) y
    Configurar el password para la base de datos
    postgres@ubuntu:~$ echo "ALTER USER adempiere WITH PASSWORD 'tu-password';" | /etc/postgresql/8.4/bin/psql
  10. Verificamos la creación de la base de datos
    postgres@ubuntu:~$ echo "select * from pg_user; select * from pg_roles;" | /etc/postgresql/8.4/bin/psql
      usename  | usesysid | usecreatedb | usesuper | usecatupd |  passwd  | valuntil | useconfig
    -----------+----------+-------------+----------+-----------+----------+----------+-----------
     postgres  |       10 | t           | t        | t         | ******** |          |
     adempiere |    16396 | t           | t        | t         | ******** |          |
    (2 rows)
    
      rolname  | rolsuper | rolinherit | rolcreaterole | rolcreatedb | rolcatupdate | rolcanlogin | rolconnlimit | rolpassword | rolvaliduntil | rolconfig |  oid
    -----------+----------+------------+---------------+-------------+--------------+-------------+--------------+-------------+---------------+-----------+-------
     postgres  | t        | t          | t             | t           | t            | t           |           -1 | ********    |               |           |    10
     adempiere | t        | t          | t             | t           | t            | t           |           -1 | ********    |               |           | 163896 (2 rows)
    
    postgres@ubuntu:~$ exit
  11. Cargar la base de datos
    $ export ADEMPIERE_HOME="/opt/adempiere"
    $
    /etc/postgresql/8.4/bin/psql -h localhost -d adempiere -U adempiere < $ADEMPIERE_HOME/data/Adempiere_pg.dmp
  12. Configurar ADempiere
    $ cd $ADEMPIERE_HOME
    $ sudo chmod +x *.sh
    $ sudo ./RUN_setup.sh
    En la pantalla que aparecerá debarán cambiar el Nombre de la Base de Datos a adempiere y el Tipo de Base de Datos a postgresql, configurar el Servidor de Correo. Podemos configurar el Servidor Base de Datos a localhost si el hostname no funciona.
  13. Migrar a Head
    $ cd ~/svnworkdir/adempiere/migration
    $ chmod +x *.sh
    $ ./migrate_postgresql.sh 360lts-release commit | /etc/postgresql/8.4/bin/psql -U adempiere -d adempiere >  360lts-release.lst
  14. Iniciar el servidor de aplicaciones JBoss
    $ cd $ADEMPIERE_HOME/utils
    $ sudo nohup ./RUN_Server2.sh &
    $ sudo tail -f nohup.out
    La inicialización puede tomar 1 minuto (dependiendo del procesador), sin embargo el site puede tardar un poco más en estar habilitado.
  15. Abrimos un navegador para instalar ADempiere del lado del cliente, para ello abrimos la correspondiente dirección http://tu_direccion_ip/admin/
  16. Opcional: Instalar el servicio desde el inicio (init.d)
    # ./RUN_Server2Stop.sh
    # sudo cp unix/adempiere_Debian.sh /etc/init.d/adempiere
    # /etc/init.d/adempiere start

Referencias:
Installing adempiere on debian lenny
Install on Ubuntu_8.10
ADempiere with Postgresql on Ubuntu_9.04 Jaunty
Como cambiar la contraseña de postgres
Si el servidor no arranca...

miércoles, 1 de diciembre de 2010

Terminal Multiusuario Debian-Ubuntu

Tenía la necesidad de hacer ciertas configuraciones a ADempiere sobre la computadora de mi esposa mientras ella seguía trabajando, así que me decidí a buscar la manera de hacerlo para optimizar el tiempo de los dos.

La idea básica es usar la máquina de mi esposa (Ubuntu) como un servidor, yo ingreso desde mi computadora (Debian) como cliente (esto gracias a que linux es multiusuario).

La aplicación que me permite hacer esto es openssh.

Lo que hice fue lo siguiente:

  1. Instalar openssh-server (openssh-client viene instalada por defecto).
  2. $ sudo aptitude install openssh-server
  3. Configurar seguridades para restringir accesos no autorizados y habilitar la visualización de aplicaciones gráficas en el cliente. Para ello editamos el archivo de configuración del servidor ssh /etc/ssh/sshd_conf y añadimos las siguientes líneas:
    • Para permitir el acceso: AllowUsers usuarioYYY (Mi Debian)
    • Para visualizar aplicaciones (verificar si no está previamente configurada): X11Forwarding yes
      $ sudo gedit /etc/ssh/sshd_config
    1. Reiniciar el servidor ssh.
    2. $ sudo /etc/init.d/ssh restart
    3. Se crea un nuevo usuario en Ubuntu (si no estuvo creado previamente)
    4. $ sudo adduser usuarioYYY
    5. En el cliente (Mi Debian) abrir el terminal y abrir ssh colocando el ip del servidor (Ubuntu).
    6. $ ssh -X usuarioYYY@192.168.1.100
    7. Ejecutamos la aplicación gráfica (ej. epiphany).
    8. $ epiphany
    Referencias:
    cmo-instalar-servidor-ssh-en-ubuntu
    servidor-de-terminales

    martes, 23 de noviembre de 2010

    A este paso en 2 años libre

    La posición fue un IRON CONDOR en el RUT fue ajustada y estuvo abierta 66 días.
     

    Ganancia Potencial Costo Cierre Ganancia Real Días ROI ROI Anualizado ROI Ponderado
    $110.00 $5.00 $105.00 46 11.80% 93.61% 37.81%
    $35.00 $5.00 $30.00 66 3.11% 17.19% 1.98%
    $130.00 $5.00 $125.00 20 14.37% 262.21% 126.06%


    $260.00


    165.85%