He desarrollado una aplicación para importar de forma dinámica 12 conjuntos de datos junto con 43 tablas usando el comando LOAD DATA, que carga los datos de una fuente a una tabla SQL de IRIS.
Lista de los conjuntos de datos
InterSystems Package Manager (IPM): una herramienta para implementar los paquetes y soluciones en InterSystems IRIS con dependencias.
Descargar el cliente de Package Manager.
He desarrollado una aplicación para importar de forma dinámica 12 conjuntos de datos junto con 43 tablas usando el comando LOAD DATA, que carga los datos de una fuente a una tabla SQL de IRIS.
Lista de los conjuntos de datos
Hola desarrolladores!
Este es otro artículo para simplificar la vida de los desarrolladores. Hablamos de hacer que GitHub ejecute tus pruebas unitarias (unittest) con cada push que hagas a tu repositorio simplemente añadiendo un fichero. Gratis :). En GitHub Cloud. Suena genial, ¿no?
Es factible, y además muy sencillo. El mérito es para @Dmitry Maslennikov (y su repo), el gestor de paquetes ZPM y las GitHub Actions. Vamos a ver cómo funciona todo en conjunto.

¡Hola desarrolladores!
A veces, cuando desarrollamos una maqueta o una Prueba de Concepto (PoC), necesitamos una interfaz sencilla que proporcione datos en IRIS en JSON contra consultas SQL.
Y recientemente contribuí con un sencillo módulo que hace exactamente eso:
acepta una sentencia SQL y devuelve JSON.
¿Cómo se instala? Solo llama:
zpm "install sql-rest"
Si lo instalas en un namespace X, configurará un endpoint /sql en tu sistema, que aceptará solicitudes POST con una sentencia SQL y te devolverá el resultado para los datos disponibles en el namespace X.
¡Hola desarrolladores!
Supón que tienes una clase persistente con datos y quieres tener una interfaz de usuario Angular sencilla, para ver los datos y llevar a cabo operaciones CRUD.
En este artículo describíamos cómo desarrollar una interfaz de usuario Angular para InterSystems IRIS utilizando RESTForms2.
A continuación vamos a explicar cómo conseguir una interfaz de usuario Angular sencilla que permita realizar operaciones CRUD y ver automáticamente los datos de tu clase de InterSystems IRIS en menos de 5 minutos.
¡Vamos!
¡Hola Comunidad!
Me gustaría compartir con vosotros un ejercicio que he hecho para crear "mi propio" chat con ChatGPT en Telegram.
Ha sido posible gracias a dos componentes de Open Exchange: Telegram Adapter, de @Nikolay Solovyev e IRIS Open-AI, de @Kurro Lopez 
Así que con este ejemplo podréis configurar vuestro propio chat con ChatGPT en Telegram.
¡Veamos cómo hacerlo funcionar!
¡Hola Comunidad!
Recientemente tuve que configurar un servidor FHIR local usando IRIS for Health y creo que encontré la forma más sencilla y simple de hacerlo.
Simplemente ejecuta estas dos líneas en el terminal:
docker run --rm --name my-iris -d --publish 9091:1972 --publish 9092:52773 intersystemsdc/irishealth-communityy
docker exec -it my-iris iris session iris -U "USER" '##class(%ZPM.PackageManager).Shell("install fhir-server")'Y tendrás un servidor FHIR ejecutándose localmente en http://localhost:9092/fhir/r4.
¡Y eso es todo!
El servidor FHIR usará la última versión de InterSystems IRIS for Health Community Edition y desplegará el servidor FHIR desde esta app a través del paquete IPM en el namespace FHIRSERVER.
¡Hola comunidad!
Esta publicación es una introducción a mi aplicación iris-fhir-client en Open Exchange.
Usando Python embebido y con la ayuda de la librería fhirpy, iris-fhir-client puede conectarse a cualquier servidor FHIR abierto.
Obten información de recursos por terminal y mediante el uso de la aplicación web CSP.
ZPM está diseñado para funcionar con aplicaciones y módulos de InterSystems IRIS. Está formado por dos componentes: el Cliente ZPM, que es un CLI para gestionar módulos; y El Registro, que es una base de datos de módulos y meta-información. Podemos utilizar ZPM para buscar, instalar, actualizar, eliminar y publicar módulos. Con ZPM se pueden instalar clases de ObjectScript, aplicaciones Frontend, producciones de Interoperabilidad, soluciones de BI de IRIS, conjuntos de datos de IRIS o cualquier otro archivo, como paquetes wheel de Python Embebido.
En este artículo repasaremos tres secciones:
Si estás desarrollando soluciones en IRIS y quieres utilizar Git, ¡es genial! Sólo tienes que utilizar VSCode con un repositorio git local y enviar los cambios al servidor, así de fácil.
Pero qué sucede si:
¡Hola Comunidad!
El gestor de paquetes InterSystems Package Manager (ZPM) es una gran herramienta, pero es aún mejor si la puedes usar directamente en lugar de tener que instalarla.
Hay varias formas de hacer esto, a continuación veremos una forma de tener un contenedor IRIS con ZPM instalado a través del Dockerfile.
Hemos preparado un ejemplo con algunas líneas en el Dockerfile que se ocupan de la descarga e instalación de la última versión de ZPM.
Añade estas líneas a tu Dockerfile estándar que utiliza el IRIS Community y tendrás ZPM instalado y listo para usar.
Para descargar la última versión del cliente ZPM:
¡Hola desarrolladores!
Cuando desarrollas con ObjectScript Package Manager, un aspecto crucial es la versión del paquete, que situamos en el fichero module.xml. Cuando añadimos cambios al paquete y estamos listos para publicar una nueva versión del paquete en el registro, también necesitamos aumentar el número de versión. Esto está claro, pero es un poco molesto, y a menudo podemos olvidarnos de hacerlo.
Este breve artículo os ayudará a automatizar ese proceso.

¡Hola desarrolladores!
A veces necesitamos importar datos CSV de forma programática en InterSystems IRIS desde un fichero o una URL. Y esperamos además que automáticamente se genere una clase con los tipos de datos adecuados y los datos importados.
Echadle un ojo al módulo csvgen en Open Exchange que hace exactamente eso que hemos descrito.
Si necesitas importar un fichero CSV en IRIS puedes hacer esto:
USER>do ##class(community.csvgen).Generate("/usr/data/titanic.csv",,"Data.Titanic")
Class name: Data.¡Hola desarrolladores!
Siempre que desarrollamos una biblioteca, herramienta, paquete o lo que sea en InterSystems ObjectScript, nos surge una pregunta: ¿cómo desplegar este paquete en la máquina destino?
Adicionalmente, en muchas ocasiones se supone que debe haber otras bibliotecas instaladas de las que depende nuestro código y a menudo de una versión particular de las mismas.
Cuando uno programa en javascript, python, etc., el rol de despliegue de paquetes con gestión de dependencias se realiza por el package manager o gestor de paquetes.
Por eso, me complace anunciar que ya está disponible nuestro administrador de paquetes, el InterSystems ObjectScript Package Manager .
¡Hola desarrolladores!
Recientemente anunciamos la versión de prueba con Python embebido en InterSystems IRIS - echad un vistazo a este vídeo en inglés de @Robert.Kuszewski.
Python embebido ofrece la posibilidad de cargar y ejecutar el código Python en el servidor de InterSystems IRIS. Podéis utilizar módulos de librerías de Python instalándolos con pip, como NumPy, Pandas, etc., o podéis escribir vuestros propios módulos de Python como archivos .py independientes.
Bien, pero una vez que ya estáis satisfechos con el desarrollo de vuestra solución de Python embebida en IRIS, hay otra cuestión muy importante: cómo desplegar la solución.
Una de las opciones que podéis considerar es utilizar el Administrador de paquetes ZPM, que os voy a describir en este artículo.
¡Hola desarrolladores!
Hace un tiempo lanzamos InterSystems Package Manager - ZPM. Uno de los objetivos de ZPM es permitir empaquetar soluciones y enviarlas al registro de ZPM para que su implementación sea tan sencilla como el comando "install tu-paquete".
Para ello es necesario introducir el archivo module.xml en tu repositorio, que describe en qué consiste tu paquete de InterSystems IRIS.
En este artículo se describen las diferentes partes de module.xml, que te ayudarán a configurar el tuyo.
Comenzaré por el paquete samples-objectscript, que instala en IRIS la aplicación Sample ObjectScript y se puede instalar mediante:
zpm: USER>install samples-objectscript
Este es probablemente el paquete más sencillo y aquí está el archivo module.xml, que describe el paquete:
<?xml version="1.0" encoding="UTF-8"?>
<Export generator="Cache" version="25">
<Document name="samples-objectscript.ZPM">
<Module>
<Name>samples-objectscript</Name>
<Version>1.0.0</Version>
<Packaging>module</Packaging>
<SourcesRoot>src</SourcesRoot>
<Resource Name="ObjectScript.PKG"/>
</Module>
</Document>
</Export>
¡Hola desarrolladores!
Como sabéis, en el segundo concurso, introdujimos unos bonus tecnológicos. Aquí podéis ver la publicación >>
Se puede ver qué aplicaciones han obtenido bonus en el menú de Bonus Tecnológicos:
Y aquí quiero compartir con todos las aplicaciones que obtuvieron los bonus. ¡Veámoslas!
ZPM Module Bonus
Para obtener el bonus ZPM, los concursantes deberían haber publicado un módulo en el Community Package Manager.
Cada vez es más común ver coloridas insignias o badges en el archivo README.MD, con información útil sobre un proyecto en repositorios como GitHub, GitLab y otros.
Por ejemplo:

Incluso la iniciativa sobre calidad del código que está en marcha en la comunidad actualmente también ofrece su propia insignia. Esta insignia muestra el estado de validación de código del proyecto.
Para incluirla, debes añadir la siguiente línea en el README.MD:
[
Recomiendo leer mi primer artículo sobre esta aplicación y ver el vídeo de Youtube antes de continuar.
¡Empezamos!
Me alegra anunciar un nuevo hito en el ciclo de vida de ObjectScript Package Manager (ZPM). El gestor de paquetes ha ofrecido a los desarrolladores la posibilidad de empaquetar de forma clara y sencilla el código de ObjectScript y la configuración de sus parámetros de despliegue, así como la información de la versión. Durante los últimos años ha evolucionado mucho, convirtiéndose en una parte fundamental de muchos workflows de desarrollo.
Si tuvieras la oportunidad de cambiar algo en el Visualizador de Mensajes de Interoperabilidad en IRIS, ¿qué harías?
¡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:

¡Hola, amigos!
A menudo, cuando desarrollamos soluciones comerciales, existe la necesidad de desplegar soluciones sin código fuente, por ejemplo, para preservar la propiedad intelectual.
Una de las formas de conseguirlo es utilizar InterSystems Package Manager.
Aquí he pedido a Midjourney que pinte una propiedad intelectual de software:

¿Cómo se puede lograr esto con IPM?
De hecho, es muy sencillo; basta con añadir la cláusula Deploy="true" en el elemento Resource del manifiesto module.xml. Ver Documentación.
He decidido pasaros el ejemplo más simple posible para ilustrar cómo funciona y también para daros una plantilla de entorno de desarrollo que os permita empezar a construir y desplegar vuestros propios módulos sin código fuente. ¡Allá vamos!
Con IRIS 2024+, los usuarios podéis alojar aplicaciones WSGI utilizando Security.Applications. Como ejemplo, un usuario puede hacer algo como esto
zn "%SYS"
Kill props
Set props("Description") = "Sample WSGI Application"
Set props("MatchRoles") = ":%All"
Set props("WSGIAppLocation") = "/path/to/flaskapp"
Set props("WSGIAppName") = "myapp"
Set props("WSGICallable") = "app"
Set props("DispatchClass") = "%SYS.Python.WSGI" // important, otherwise will be recognized as CSP application
Set sc = ##class(Security.Applications).En este artículo describiré los procesos para ejecutar pruebas unitarias mediante ObjectScript Package Manager (consulta https://openexchange.intersystems.com/package/ObjectScript-Package-Manager-2), incluyendo el cálculo de la Cobertura de pruebas (mediante https://openexchange.intersystems.com/package/Test-Coverage-Tool).
Ya hay mucha documentación sobre cómo escribir pruebas unitarias en ObjectScript, por lo que no repetiré nada de eso. Puedes consultar el Tutorial de Pruebas Unitarias aquí: https://docs.intersystems.com/irislatest/csp/docbook/Doc.View.cls?
¡Hola a tod@s!
Como sabéis, durante el Global Summit de este año en Boston celebramos una Reunión de Desarrolladores de InterSystems. ¡Y ya podéis descubrir qué desarrollos sobre InterSystems IRIS se discutieron!
El vídeo de la reunión está disponible en el Canal de YouTube de la Comunidad de Desarrolladores en inglés:
⏯ Reunión de Desarrolladores de InterSystems - Global Summit 2019
¡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.
Se ha publicado una nueva versión del ZPM - ZPM 0.3.2.
Novedades en esta versión:
output de la ayuda
AfterInstallMessage en module.InterSystems anuncia que el componente central de InterSystems Supply Chain Orchestrator™, la versión 2023.1 de InterSystems IRIS for Supply Chain, está disponible de manera general (GA).
InterSystems Supply Chain Orchestrator está construido sobre InterSystems IRIS®, nuestra plataforma de datos más completa para entornos on-premise, en nube e híbridos, que posibilita una arquitectura de smart data fabric para hacer más fácil la creación e implementación de aplicaciones de alto rendimiento, que hacen uso de técnicas de machine learning y que permiten conectar silos de aplicaciones y datos. Combina la potencia de InterSystems IRIS con aceleradores y frameworks específicos de la cadena de suministro, para ofrecer soluciones optimizadas para la orquestación de la cadena de suministro, percepción de demanda y previsión, compleción de ordenes y reempaquetado de productos que han de moverse rápidamente.
¡Bienvenidos, estimados miembros de la Comunidad!
En este artículo vamos a presentar un ejemplo de un proyecto de implementación de una solución basada en FHIR. Este proyecto se basará en el proyecto nacional (nacional de España), conocido como ÚNICAS.
.png)
Usando sus propias palabras:
Un proyecto cuyo objetivo es crear un ecosistema de alianzas para mejorar la atención sanitaria de pacientes pediátricos con enfermedades minoritarias (EEMM) complejas.