13 febrero 2012

Aula de Formación Omnis Studio en Castellano


¡Por fin!



¿Habías pensado aluna vez en tener un Aula de Formación Omnis Studio? y... ¿Si fuera en lengua castellana?  y... ¿Si fuera completamente gratis?

y... ¿Si tuviese los siguientes contenidos?:

  1. Vídeo-Tutoriales
  2. Formularios, documentos, manuales y notas técnicas (en castellano)
  3. Presentaciones explicativas (por ejemplo: Programación OO con Omnis Studio, etc)
  4. Grupo de desarrolladores
  5. La ayuda de un tutor las 24 horas
  6. Librerías con ejemplos
  7. Casos prácticos documentados
  8. Enlaces de interés (Cómo este blog)
  9. Anuncios, calendario del curso, guía de aprendizaje
  10. Asignación de tareas
  11. Noticias
  12. y otros...
Entiendes ahora el porqué, del enunciado, pues... SÍ, gracias a la inestimable colaboración del nuevo distribuidor de Omnis Studio para España y Portugal (http://www.omnisstudio.es), nos llega un nuevo espacio donde (tras inscribirnos) podremos disfrutar de todos los contenidos mencionados.


Se trata de un espacio aún en construcción y al que se irán añadiendo nuevos contenidos día a día, pero sin duda un lugar donde todo desarrollador Omnis Studio de lengua castellana quisiera estar.

Es un placer para mi, poderos presentar su aparición y os animo a que dejéis vuestra opinión al respecto, como comentario en éste mismo anuncio.

06 febrero 2012

Error. Code # 801: , in worng place


El título de ésta entrada, obedece a un problema que se presenta cuando usamos OMSQLDAM, consultando una tabla, que contiene a su vez una columna numérica con decimales (usando "," como separador de decimales) y al ejecutar sobre ella la sentencia SQL indicada a continuación desde la ventana del "Interactive SQL":

SELECT SUM(ColumnaDecimal) FROM Tabla

El resultado de ésta consulta es el descrito, como título de ésta entrada ¿Cuál es la solución?

En un principio podría pensarse, que cambiando el parámetro de sesión $sqldecimalseparator sería suficiente, pero cual será nuestra sorpresa al ver que, tras cambiar éste parámetro obtenemos el mismo mensaje de error.

La solución nos llega por gentileza de un avezado desarrollador Omnis, Elías Gil de Caceres (España), la solución reside en el uso del método $root.$prefs.$separators.

Este método nos permite conocer o fijar los caracteres de separación que OMNIS deberá usar, su único parámetro será una cadena de 5 caracteres (dp,thou,func,imdp,imsep), si se omite el parámetro el método nos devolverá su estado actual, de otro modo se fijaran los que especifiquemos.

Método: $separators([cSeps])

Parámetro:

Carácter 1 (dp): carácter usado como separador de decimales
Carácter 2 (thou): carácter usado como separador de miles
Carácter 3 (func): carácter usado como separador entre los parámetros de una función 
Carácter 4 (imdp): carácter usado a la hora de importar/exportar cifras decimales 
Carácter 5 (imsep): carácter usado como delimitador durante una importación/exportación


De modo que: $root.$prefs.$separators('.,,.,') nos permitirá, fijar el modo de uso anglosajón y evitar así que se produzca el error ya mencionado. Usaríamos: $root.$prefs.$separators(',.,,,') para fijar de nuevo el modo español, donde la "," es usada como separador de decimales.


Los argumentos de éste método serán guardados en el archivo omnis.cfg, desde el cual Omnis tomará su estado inicial. Damos las gracias, en especial a Elías Gil de Caceres (España) por su aportación a éste blog.