Procedimiento para actualización de entorno 6.1.2

Comprobaciones antes de aplicar el entorno:

  • Abstenerse de actualizar entorno si la versión de Oracle es anterior a la 10. Hablar con responsable del entorno en ese caso para ver alternativas.
  • MUY IMPORTANTE: Las sqls únicamente se pueden pasar usando un sqlplus de versión 10 o superior, por tanto si, al ejecutar el sql en la cabecera pone “SQL*Plus: Release 8.0.6.0.0 – Production”, NO PASAR LAS SQLS, lo ideal es tener instalado el cliente de Oracle de versión 10g ó 11g o usar el de la propia base de datos en el caso de estar en un Windows.

Pantalla de Sql*Plus con el que no se puede actualizar entorno

  • En instalaciones arrancadas hay que hacer una copia de seguridad de la carpeta L y de la base de datos. Nunca ha sido necesario echar atrás una actualización de entorno, pero si fuese necesario es de ayuda disponer de esa copia.
  • En caso de que esté parametrizado ver procesos en menú y usarse el menú integrado con CRM hay que actualizar también el CRM.
  • Asegurarse que no hay nadie conectado a LIBRA, si hay alguien conectado puede ser que la actualización quede incompleta, en ese caso se puede volver a pasar la actualización completa sin problemas.
  • Asegurarse de disponer de un equipo con Forms Builder, esto es totalmente necesario para que en caso de producirse algún problema podamos detectarlo en el menor tiempo posible.
  • Comprobar que en el raíz del directorio donde se encuentren los programas de Libra (normalmente L:\) no se encuentre ningún archivo que comience por menu, si existe se debe de borrar.
  • En caso de que en el cliente también utilice Libra en Forms11g asegurarse que se tienen los programas para la versión de entorno que se va a instalar compilados en Forms11g.
  • En caso de que en el cliente también utilice Libra en puestos que estén configurados en UTF8 asegurarse que se tienen los programas para la versión de entorno que se va a instalar compilados en UTF8.
  • MUY IMPORTANTE: Comprobar que no existan filas de menús con padres mal creados (si las hay, se deben de arreglar):
    • SELECT * FROM menus WHERE cod_padre = codigo;
    • SELECT * FROM menus_perfiles WHERE cod_padre = codigo;
  • En caso de usarse el módulo de alertas se debe de parar el Job antes de aplicar la actualización.

 

Pasos

  • Crear carpeta c:\temp\libra
  • Descomprimir archivo en c:\temp\libra, comprobar que las sqls se encuentren en c:\temp\libra\sqls, si no se encuentran ahí quiere decir que está mal.
  • Conectar con sqlplus al usuario de Oracle que contiene LIBRA
  • Pasar la sql c:\temp\libra\fichero.sql de la siguiente forma: @c:\temp\libra\fichero.sql
  • Copiar las carpetas fmxs, iconos, jars, lv_fmbs, mmxs, plls, plxs en el directorio en que se encuentren los programas de Libra y sobreescribir los objetos existentes.
  • Si la base de datos es un Oracle 10 hay que pasar las siguientes sqls a mayores:
    • @c:\temp\libra\sqls\workaround\pk_xml_oracle10g.sql
    • @c:\temp\libra\sqls\workaround\pkalrt_oracle10g.sql
    • @c:\temp\libra\sqls\workaround\pkxlsbd_oracle10g.sql
  • Si la base de datos es un Oracle 9 hay que pasar el compila3_clasico.sql para que compilen bien las vistas: compila3_clasico.zip

Pasos específicos para Cliente / Servidor

  • Hay que descargar (OJO: sólo descargar, no hace falta descomprimir) en la carpeta en donde se encuentran los archivos .jar (normalmente L:\jar) el siguiente archivo: jre.zip
  • A partir de la versión 6.0.8, se requiere para la generación de Excel la versión de Java 1.6.0_31 y nuevos archivos jar en el CLASSPATH, para que Libra configure de forma automática los LIBRA6.INI se debe de realizar lo siguiente en los parámetros generales de menú (U_MPRMEN), en la pestaña “Ajustar libra6.ini”
    • Cubrir el campo “Ruta a archivos .jar”, normalmente será L:\jars
    • En “Lista de archivos .jar necesarios” se cubre automáticamente, lo normal es dejar los valores por defecto.
    • En “Archivo Password Conexión B.D.” es opcional, se usa para indicar que se desea migrar la contraseña de la base de datos a un archivo cifrado, en ese caso hay que indicar la ruta en la que se encuentra el archivo cifrado con la contraseña.
    • En “Actualizar Java si la versión es anterior a”, ya propondrá el valor “1.6.0_31”, lo normal es dejar ese valor por defecto.

Pasos específicos para versión en Forms 11g

  • Hay que actualizar los iconos de Libra y las librerías de Java a la última versión (las librerías ya están firmadas por EDISA por lo que no es necesario volver a firmarlas), para ello hay que hacer lo siguiente:
    • cd $ORACLE_HOME/forms/java
    • rm libraiconos.jar*
    • rm libra612.jar*
    • rm libracsweb612.jar*
    • rm laf_11112.jar*
    • rm jacob.jar*
    • rm extrusioniconos.jar*
    • rm libralpt.jar*
    • rm RXTXcomm.jar*
    • rm qtjava.jar*
    • wget --no-check-certificate https://googledrive.com/host/0B4ft2CuJaF7nREpiY0NYMlVBcVk -O libraiconos.jar
    • wget --no-check-certificate https://googledrive.com/host/0B4ft2CuJaF7nSjlhbExvUWx3Q00 -O libra612.jar
    • wget --no-check-certificate https://googledrive.com/host/0B4ft2CuJaF7nZjIyWXRHNGlOU1U -O libracsweb612.jar
    • wget --no-check-certificate https://googledrive.com/host/0B4ft2CuJaF7nSzBRZVNkaUdVWVk -O laf_11112.jar
    • wget --no-check-certificate https://googledrive.com/host/0B4ft2CuJaF7nUVAwZzMxY0NBN0E -O jacob.jar
    • wget --no-check-certificate https://googledrive.com/host/0B4ft2CuJaF7nU0JzT05ZY3VJaWc -O extrusioniconos.jar
    • wget --no-check-certificate https://googledrive.com/host/0B4ft2CuJaF7nZ1ZISVdlMHdsV0k -O libralpt.jar
    • wget --no-check-certificate https://googledrive.com/host/0B4ft2CuJaF7nOWlQQnlqNHUwb0U -O RXTXcomm.jar
    • wget --no-check-certificate https://googledrive.com/host/0B4ft2CuJaF7nWjBtZWFOYlQwa1U -O qtjava.jar
  • En el entorno 6.0.8 cambian las librerías de Java necesarias:
    • Editar el archivo $DOMAIN_HOME/config/fmwconfig/servers/WLS_FORMS/applications/formsapp_11.1.2/config/libra.env
      • En la configuración de la variable CLASSPATH:
        • cambiar: /libra/jars/poi.jar:/libra/jars/poi-contrib.jar:/libra/jars/poi-scratchpad.jar
        • por: /libra/jars/poi.jar:/libra/jars/poi-ooxml.jar:/libra/jars/ojdbc6.jar:/libra/jars/xmlbeans.jar:/libra/jars/poi-ooxml-schemas.jar:/libra/jars/dom4j.jar:/libra/jars/libracs.jar
    • Editar el archivo $DOMAIN_HOME/config/fmwconfig/servers/WLS_FORMS/applications/formsapp_11.1.2/config/formsweb.cfg
      • En las configuraciones [xxxx] cambiar en “WebUtilArchive=xxx”, el archivo libra.jar ó libraXXX.jar por libra612.jar, añadir también el archivo libracsweb612.jar
      • En “archive=xxx” si está el archivo QTJava.zip hay que quitarlo y hay que añadir (si no lo está) el archivo qtjava.jar

Pasos posteriores a la actualización.

  • Al actualizar a entorno 6.0.8:
    • Es necesario obtener un código de licencia que será suministrado por el distribuidor de Libra, sin ese código de activación Libra funcionará con limitaciones.
    • Si se actualiza desde una versión anterior a la 6.0.5, se deshabilita por defecto el envío a Excel usando Rep2excel, el cliente debe de ser consciente de que Rep2excel es un producto externo a Libra y que debe de tener licencias de él para poder usarlo, para habilitarlo hay que ir al mantenimiento de Parámetros de Menú (U_MPRMEN) y activar la check “Habilitar rep2excel”.
    • Si se actualiza desde una versión anterior a la 6.0.5, cambian los iconos, por lo que hay que meter los iconos nuevos en la tabla ICONOS_LIBRA, para ello hay pasar la sql: iconos_libra.zip

Posibles problemas.

  • ORA-01007 al entrar en Libra.
    • Hay que abrir con el forms builder y recompilar la pklibpnt.pll contra la base de datos del cliente, generar la plx y copiar la pll y plx recompilada en L:\plls y L:\plxs
  • ORA-04062 o al entrar en Libra.
    • Si el menú que se usa es el menú con integración con CRM, asegurarse que se ha actualizado también el módulo CRM.
    • Si después del paso anterior sigue pasando abrir con el forms builder y recompilar las librerías pklibpnt.pll y pklibmenu.pll contra la base de datos del cliente, generar las plxs y copiar las plls y plxs recompiladas en L:\plls y L:\plxs
  • ORA-01436 al entrar en los programas. Quiere decir que hay menus que son padres de si mismos, hay que borrarlos:
    • DELETE FROM menus_perfiles WHERE cod_padre = codigo;
    • DELETE FROM menus_perfiles mp WHERE EXISTS (SELECT 1 FROM menus m WHERE m.codigo = mp.codigo_menus AND m.codigo = m.cod_padre);
    • DELETE FROM menus WHERE codigo = cod_padre;
  • Si después de actualizar entorno a algún usuario no le valida la password puede ser pensase que tiene una password de más de 10 caracteres, pero en versiones antiguas del entorno la password estaba limitada a 10 caracteres y como el usuario al escribirla veía únicamente * no se daba cuenta que se estaba truncando. Por ejemplo, si su password era 123456789012345, para entrar tiene que teclear únicamente los 1234567890. Más adelante cuando actualice versión completa recibirá un mantenimiento de usuarios en el que se puede introducir passwords de más de 10 caracteres.
  • Al pulsar en el botón “Soporte Edisa (www.edisa.com)” no hace nada: Meter en Parámetros generales del menú (programa U_MPRMEN) en el campo COMANDO_EJECUTA lo siguiente (cambiar <ruta> por el valor correspondiente, normalmente L:\): <ruta>\ejecuta.exe. También se podría indicar puesto por puesto modificando el archivo LIBRA6.INI la siguiente entrada: COMANDO_EJECUTA=<ruta>\ejecuta.exe
  • No compila la vista V_ARCHIVOS_ERP_BUSQUEDA. No está instalado Oracle Text. Hay que pasar la vista: @c:\temp\libra\sqls\workaround\v_archivos_erp_busqueda_no_oracle_text.sql
  • No compila el paquete PKENCRIPTA. Hay que dar permisos de ejecución sobre DBMS_CRYPTO: GRANT EXECUTE ON DBMS_CRYPTO TO <usuario>; (Ejemplo: GRANT EXECUTE ON DBMS_CRYPTO TO LIBRA;).