Me gustaría compartir algunas funciones de almacenamiento que también existen en Caché y que son prácticamente desconocidas y en su mayoría no se utilizan. Por supuesto, están disponibles en IRIS y son más relevantes con arquitecturas de almacenamiento extensas y distribuidas.

0 0
0 133
Artículo
· 2 mar, 2021 Lectura de 1 min
Análisis de errores de aplicación

¡Hola, desarrolladores!

Como sabeis, los errores de la aplicación están en el global ^ERRORS. Aparecen si los llamas:

d e.Log() 

en la sección Catch de Try-Catch.

Con la propuesta de @Robert Cemper, ahora se puede utilizar SQL para examinarlo.

Inspirado por el módulo de Robert, presenté un módulo simple de IRIS Analytics que muestra estos errores en un dashboard:

1 0
0 132
Artículo
· 12 ago, 2021 Lectura de 3 min
Escaneo y división de globals
Este es un ejemplo de código que funciona en IRIS 2020.1 y en Caché 2018.1.3 
No se mantendrá sincronizado con las nuevas versiones.      
Y NO cuenta con el servicio de soporte de InterSystems.

En la mayoría de los casos, un global que se utiliza como almacenamiento predeterminado tiene solo 1 nivel de subíndice que representa el IDKEY.
Para un índice de globals podemos ver 2 o más niveles de subíndices.
Las matrices, las relaciones de herencia padre hijo o las clases persistentes que extienden una clase base, son ejemplos en los que vemos más niveles. Aunque todos estos globals son bastante uniformes.

1 0
0 132
Artículo
· 7 jul, 2021 Lectura de 1 min
Importación de datos a IRIS de forma sencilla

A veces necesitas importar datos a IRIS de forma rápida y sencilla. Por eso se ha desarrollado un gestor de importación en IRIS.

Esta aplicación permite importar datos en formato JSON y también ofrece una interfaz muy sencilla para transferir datos desde colecciones en MongoDB a globals en IRIS. Nunca ha sido más fácil.

Vamos a ver unos ejemplos.

Importación de JSON

0 0
0 131
Artículo
· 24 dic, 2021 Lectura de 4 min
Probar los paquetes que desarrollamos con ZPM

¡Hola desarrolladores!

Como sabéis, es muy fácil publicar un paquete en el repositorio de la Comunidad de Desarrolladores.

Pero, ¿cómo se puede probar antes de publicarlo? ¿Cómo se puede garantizar que todo lo que se introdujo en module.xml funciona correctamente?

¡Seguid leyendo las instrucciones que os detallo a continuación!

0 0
0 128
Artículo
· 9 jun, 2021 Lectura de 3 min
Cómo mostrar globals por SQL SELECT
Este es un ejemplo de código que funciona en IRIS 2020.1 y en Caché 2018.1.3 
No se mantendrá sincronizado con las nuevas versiones      
¡NO está soportado por el servicio de soporte de InterSystems!   

Los globals en Caché, Ensemble e IRIS normalmente son invisibles a través de SQL.
En este ejemplo se muestra cómo verlos desde SQL.

0 0
0 126
Artículo
· 22 nov, 2021 Lectura de 3 min
CALL asíncronicas dinámicas y sentencia SYNC

En algún momento, puede surgir la necesidad de llamar (sentencia CALL en BPL) de manera dinámica, porque hay mucha lógica de negocio compartida por distintos orígenes de datos, que da pie a que esa lógica se comparta y no se individualice cada llamada (CALL).

Esto tiene ventajas a nivel de mantenimiento de la lógica definida, catch de errores y administrar los hilos de ejecución de manera centralizada.

Entonces lo normal es que se defina una sentencia FOREACH que ejecute la sentencia CALL según cada ítem que se necesite.

0 0
0 126

A veces es necesario ejecutar comandos desde la consola del sistema operativo del servidor, en el que se localiza tu programa ObjectScript, para lanzar programas, servicios de sistema operativo, programar tareas cron... entre otras actividades. Para ello, el lenguaje tiene una función llamada $ZF(-100). Se usa así:

0 0
0 123

¡Hola desarrolladores!

El Administrador de paquetes ZPM se está haciendo muy popular y por ello la librería de paquetes está creciendo.

Así, algunas soluciones o muestras pueden crearse con InterSystems IRIS y uno o dos paquetes instalados.

Me gustaría compartir con vosotros iris-docker-zpm-usage-template - una plantilla que se puede utilizar exactamente con esa finalidad.

0 0
0 123
Artículo
· 13 mayo, 2021 Lectura de 13 min
Compilaciones en InterSystems IRIS

El orden es una necesidad para todos, pero no todos lo entienden de la misma manera (Fausto Cercignani)

Nota de traducción: este articulo se publicó originalmente basado en Caché. Para esta traducción se revisó todo el contenido usando InterSystems IRIS.

Descargo de responsabilidad: En este artículo se utilizan el ruso y el alfabeto cirílico como ejemplos, pero esto solamente es importante para las personas que utilizan InterSystems IRIS en lugares en los que no se habla inglés. Ten en cuenta que este artículo se refiere principalmente a las compilaciones de NLS, que son diferentes a las compilaciones de SQL. Las compilaciones en SQL (por ejemplo, SQLUPPER, SQLSTRING, EXACT que significa que no hay compilación, TRUNCATE, etc.) son funciones reales que se aplican de manera explícita a algunos valores, y cuyos resultados a veces se almacenan explícitamente en los subíndices de los *globals. De hecho, cuando se almacenan en subíndices, de forma natural estos valores seguirían la compilación de NLS (“Compilaciones de SQL y NLS”).*

0 0
0 120

Hola Comunidad!
Aprovechando la publicación de la nueva versión IRIS 2021.1 y también de IAM 2.3 os paso los ejercicios de un taller (workshop) sobre desarrollo de APIs REST y gestión de las mismas utilizando InterSystems API Manager.

Contiene ejercicios paso a paso para:

  • Crear APIs REST desde sus especificaciones OpenAPI.
  • Añadir, opcionalmente, la API creada a una producción de interoperabilidad.
  • Gestión básica de la API en InterSystems API Manager (consumidores, limitación, autenticación).
  • Planteamiento de algunos escenarios más complejos en InterSystems API Manager como balanceo de carga, o enrutamiento por cabecera.

Lo tenéis todo en la aplicación de Open Exchange vinculada.

0 0
0 120

InterSystems API Manager (IAM) es una nueva función de InterSystems IRIS que permite monitorizar, controlar y dirigir el tráfico hacia y desde las APIs web dentro de su infraestructura de TI. Si te perdiste el anuncio de su lanzamiento, puedes leerlo aquí. También puedes consultar este otro artículo.

En esta publicación, utilizaremos InterSystems API Manager para balancear la carga de una API.

En nuestro caso, tenemos 2 instancias de InterSystems IRIS con /api/atelier API REST que queremos publicar para nuestros clientes.

Hay muchas razones diferentes por las que podríamos querer hacer eso, como:

  • Equilibrio de carga para distribuir la carga de trabajo entre los servidores
  • Implementación azul-verde: tenemos dos servidores, uno "prod", otro "dev" y es posible que queramos cambiar entre ellos
  • Implementación de Canary: podríamos publicar la nueva versión solo en un servidor y mover el 1% de los clientes allí
  • Configuración de alta disponibilidad
  • etc.
0 0
0 116

La cobertura del código y su optmización del rendimiento ya han surgido muchas veces, así que la mayoría de vosotors seguro que ya conocéis la herramienta SYS.MONLBL.

A menudo, un enfoque visual para revisar el código es mucho más intuitivo que los números puros. Este es principalmente el objetivo de esta serie de artículos. Esta vez vamos a hacer una pequeña excursión lejos de Python y sus herramientas, y vamos a explorar la generación de mapas de calor de los informes ^%SYS.MONLBL.

0 0
0 115

Servidor Externo de Lenguaje Python en un contenedor

La primera vez que se intenta iniciar un servidor externo de lenguaje Python (de aquí en adelante Gateway de Python), en la versión en contenedor, intenta ejecutar cierto código para detectar si está instalado el paquete python3-venv.

La imagen que está en containers.intersystems.com:

0 0
0 114
Artículo
· 7 sep, 2021 Lectura de 3 min
ObjectScript sobre ODBC
Este es un ejemplo de código que funciona en IRIS 2020.1 y en Caché 2018.1.3 
No se mantendrá sincronizado con las nuevas versiones.  
Y NO cuenta con el servicio de soporte de InterSystems.
De vez en cuando, puedes encontrarte una situación en la que, por diferentes razones, ODBC es la única opción para acceder a un sistema remoto. Lo cual es suficiente mientras necesites examinar o cambiar tablas. Pero no puedes ejecutar directamente algunos comandos o cambiar algunos globals.
0 0
0 114

¡Hola amigos!

A veces necesitamos importar datos a InterSystems IRIS desde archivos de tipo CSV. Esto puede hacerse, por ejemplo, mediante la herramienta csvgen, que genera una clase e importa todos los datos a ella.

Pero, ¿qué pasa si tienes tu propia clase y quieres importar datos desde un archivo CSV a una tabla que ya existe previamente?

Hay varias formas de hacerlo, ¡pero puedes utilizar csvgen (o csvgen-ui) otra vez! Preparé un ejemplo y estoy encantado de compartirlo con todos. ¡Vamos allá!

0 0
0 109
Artículo
· 31 ago, 2021 Lectura de 2 min
FOREACH para ObjectScript

Como sabes, ObjectScript no tiene un comando o función de sistema FOREACH.
Pero tiene un amplio margen para la creatividad.

Pero la tarea es recorrer una matriz global o local y hacer algo PARA CADA elemento.

Hay dos posibles soluciones:

  • Crear una macro que genere las secuencias de código requeridas
  • Crear un comando extendido para realizar la acción.

0 0
0 109
Artículo
· 23 sep, 2021 Lectura de 1 min
Almacenamiento global: Todo lo que querías saber y más.

En el núcleo de IRIS y Caché hay una arquitectura de base de datos muy interesante a la que, en M/Gateway Developments, nos referimos como "Almacenamiento Global". Si alguna vez quisiste saber más sobre los fundamentos y las funciones de esta base de datos oculta, te interesará leer un completo análisis que hemos elaborado:

https://github.com/robtweed/global_storage

Entre otras cosas, descubrirás que:

0 0
0 109

Actualización: se añadió soporte para el modelo de regresión
¡Hola a todos!

En este breve artículo, os mostraré cómo escribir un adaptador para utilizar la interoperabilidad de IRIS con los modelos de Machine Learning (ML) administrados por IntegratedML de IRIS.

0 0
0 107

El lenguaje ObjectScript de InterSystems IRIS tiene un motor de metadatos muy potente llamado XData. Esta característica permite crear definiciones de metadatos para tus clases, que serán utilizadas por el compilador o por los programas para ampliar las características estándar del lenguaje, basándose en las definiciones XData de su campo de acción.

Un ejemplo es IRIS Publisher, una aplicación de código abierto de la Comunidad, capaz de recopilar todas las definiciones de XData en formato HTML y/o Markdown, y que puede generar un Portal web con todos los documentos de la aplicación, recopilados a partir de estos elementos XData.

0 0
0 106

Tengo algunos modelos analíticos y numerosos paneles de control, y estoy listo para implementarlos en nuestros usuarios finales y administradores. ¿Cómo configurar DeepSee para que los usuarios no alteren las áreas de los demás y se les restrinja el uso de funciones específicas para los desarrolladores?

0 1
0 106
Artículo
· 23 jun, 2021 Lectura de 6 min
OCR y PLN juntos en InterSystems IRIS

Según la consultora IDC, más del 80% de la información es de tipo NoSQL, especialmente texto en documentos. Cuando los servicios o aplicaciones digitales no procesan toda esta información, la empresa pierde. Para resolver este desafío, es posible utilizar la tecnología OCR. El Reconocimiento Óptico de Caracteres (OCR) utiliza la tecnología de machine learning y/o el reconocimiento de patrones en imágenes para transformar los pixeles de las imágenes en texto.

0 0
0 105
Artículo
· 4 jun, 2021 Lectura de 3 min
Gestión de fraudes con InterSystems IRIS

Según un informe de 2020 de la Asociación de Examinadores de Fraude Certificados, se estima que las organizaciones de todo el mundo pierden un 5% de sus ingresos anuales debido al fraude.

La forma más eficiente de reducir el fraude es recopilar y unificar las transacciones, los activos y los datos de destino para identificar patrones, producir informes antifraude y algoritmos para validar las transacciones posteriores. En resumen, tenemos que seguir algunos de estos principios:

0 0
0 104