jueves, 2 de enero de 2014

Los 10 mandamientos de un programador humilde


Estos mandamientos son un extracto de un libro de Gerald Weinberg, ¡publicado en 1971!:
"The Psychology of Computer Programming".
Y de lo que encontré en mis fuentes, quiero presentar un consolidado de éstas:

martes, 7 de mayo de 2013

[Oracle BPM Studio] 2 minutos para modificar un campo en los Web Presentation


Trabajar con Oracle BPM Studio podría llegar a ser una pesadilla (Al menos, con BPM Studio 10.3).
Y es que frecuentemente aquí publico algunos trucos y soluciones a errores que ocurren en BPM y que no son fáciles de detectar, ni de manejarlos una vez identificados. Y definitivamente uno de sus mayores defectos fue es la pésima asignación/administración de memoria.
Me tomé la molestia de hacerle un vídeo a mi workspace, yo intentando hacer algo tan sencillo como agregar campos mientras edito una pantalla (un web presentation).

Spoiler alert: el Studio se cuelga, no realiza los cambios, si los realiza no los visualiza, o por cada pequeño cambio aparece un mensaje para cancelar ("Stop script") o seguir esperando su ejecución.

viernes, 12 de abril de 2013

[Oracle BPM Studio] Error: La tarea no se ha podido ejecutar correctamente


Para los que todavía desarrollamos en Oracle BPM Studio 10.3, hay mensajes de error que no son nada fáciles de identificar sin la correcta ayuda.
Es un error en tiempo de ejecución a.k.a. "en caliente":
Sea en el workspace local para pruebas -obviamente- locales o en la publicación en los servidores de prueba para testeos oficiales, o ya en producción para el usuario final;
El escenario es el siguiente:
Al aparecer este error, se pierde la actividad y aparece un frame rojo con el mensaje:
"La tarea (nombre de la tarea e id) no se ha podido ejecutar correctamente".
Y al darle clic al botón "Detalles", el mensaje:
"Consulte el archivo de registro para obtener más información [Código de error: workspace-XXXX]" donde XXXX es un valor numérico asignado, y corresponde a una descripción del error que será descrita a continuación...

viernes, 4 de enero de 2013

[SQL Server] No se permite guardar los cambios (a tablas)


Cuando necesitas modificar una tabla y requieras agregar nuevos campos e insertarlos entre los campos ya existentes, la configuración por defecto del SQL Server Studio no te lo permitirá.

Esta configuración no permite modificar tablas cuando éstas requieran ser eliminadas (drop table) y creadas nuevamente.
Y -para dejarlo más claro- si necesitas insertar campos entre otros ya existentes, el SQL automáticamente ejecutará un script para crear una tabla temporal con la nueva disposición, migrará los valores a esta nueva tabla temporal, eliminará la tabla "anterior", y renombrará esta temporal con el nombre "oficial". Básicamente es eso, aunque existe más lógica interna (eliminar restricciones y foreign keys, reasignar primary keys, etc)

La solución es sencilla, y está explicada en las siguientes imágenes...

lunes, 25 de junio de 2012

[Oracle BPM Studio] Aumentar el tamaño de memoria de Java



O mejor dicho, de la máquina virtual en Java (JVM)

La siguiente publicación explica como asignarle memoria a Java, en base a 2 criterios: 

Según Memoria Heap y No-heap (PermGen);
y según el tamaño inicial y el tamaño máximo que podrá ocupar la máquina virtual.
Si por defecto, nos basamos en 128MB de memoria, la asignación sería como sigue:

sábado, 2 de junio de 2012

[Oracle BPM Studio] UnsupportedClassVersionError al compilar


La raíz del problema es simple: "UnsupportedClassVersionError" es decir, el JDK que utilizo en el Oracle BPM Studio es una versión inferior al que utilicé en JDeveloper.

Error: 'java.lang.UnsupportedClassVersionError: Bad version number in .class file'.
La solución típica es, editar el archivo eclipse.ini, agregando una línea de código indicando que JDK utilizar (como indiqué en éste post);
Y es que parece que los chicos de Oracle no tienen ni idea del concepto "amigable con el usuario",  dado que habría sido mejor si dentro del menú del BPM Studio hubiesen incorporado una opción para elegir, agregar o descartar el JDK a usar... en fin...

El verdadero problema (como me ocurrió en este caso) fue cuando el BPM ignora dicha línea de código recién agregada, forzando a usar su JDK por defecto (y que no permite modificar al instalar).