Hola, comunidad,
Disfrutad del nuevo vídeo en el canal de YouTube de InterSystems Developers:
InterSystems IRIS es una Plataforma completa de datos.
InterSystems IRIS le proporciona todo lo que necesita para capturar, compartir, comprender y actuar sobre el activo más valioso de su organización, sus datos.
Dado que es una plataforma completa, InterSystems IRIS elimina la necesidad de integrar varias tecnologías de desarrollo. Las aplicaciones necesitan una menor cantidad de código, menos recursos del sistema y poco mantenimiento.
Hola, comunidad,
Disfrutad del nuevo vídeo en el canal de YouTube de InterSystems Developers:
Las capacidades integradas de búsqueda vectorial de InterSystems IRIS nos permiten buscar datos no estructurados y semiestructurados. Los datos se convierten en vectores (también llamados “embeddings”) y luego se almacenan e indexan en InterSystems IRIS para búsqueda semántica, generación aumentada por recuperación (RAG), análisis de texto, motores de recomendación y otros casos de uso.
Esta es una demostración sencilla de IRIS siendo utilizado como una base de datos vectorial y para búsquedas por similitud en IRIS.
Requisitos previos:
Este código muestra los elementos de producción configurados e indica si están habilitados o deshabilitados.
Include (Ensemble, EnsUI, EnsUtil)
Class Test.ProductionConfig
{
Fue alentador ver a más personas creando extensiones de VS Code para el concurso reciente. Sin embargo, noté que de las tres extensiones que requieren credenciales para realizar sus conexiones, solo la de @John Murray, gj :: dataLoader, aprovecha la extensión InterSystems Server Manager, ampliamente establecida y oficialmente soportada, para obtener las definiciones de conexión y gestionar las credenciales de manera segura.
.png)
La idea más votada en el InterSystems Ideas Portal —con 74 votos— pide una versión ligera de IRIS. Aunque la plataforma ha crecido hasta convertirse en un potente motor de datos, muchos proyectos solo necesitan sus capacidades de base de datos SQL. Este artículo muestra cómo crear una imagen no oficial y compacta de IRIS Community Edition centrada únicamente en la funcionalidad básica de base de datos, reduciendo el tamaño de la imagen en más de un 80%.
Este proyecto genera una imagen no oficial y experimental de InterSystems IRIS Community Edition.
Aunque IRIS incluye hoy funciones muy completas —interoperabilidad, analítica, machine learning, gestión del sistema, etc.— muchos proyectos solo requieren sus capacidades SQL básicas. La imagen oficial Docker de Community Edition ocupa aproximadamente:
IRIS Light reduce eso a:
Esto lo hace adecuado para:
En el día a día de cualquier organización, la información fluye entre aplicaciones, servicios y sistemas muy distintos entre sí. Integrarlos de forma eficiente puede ser un reto... a menos que uses InterSystems IRIS.
En este nuevo vídeo te muestro cómo construir un flujo completo de integración combinando múltiples tecnologías —APIs REST, ficheros CSV, bases de datos y servicios SOAP— todo dentro del entorno visual que ofrece el motor de interoperabilidad de IRIS.
👉 Puedes ver el vídeo aquí:
<iframe width="560" height="315" src="https://www.youtube.com/embed/82xA51nThqQ?si=CzRfwyLSwcKvOGGH" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>Hola a todos.
Tengo una duda con respecto a la prioridad a la hora de aplicar una configuración por defecto.
Tengo unos Business Services que utilizan la misma clase, por lo que quiero que todos ellos tengan una configuración de "Schedule" común.
Pero hay uno de ellos que no quiero que se le aplique esta configuración por defecto, por lo que he intentado ponerle el valor vacío de Schedule para ese elemento por el nombre:
En este caso, tengo los elementos que utilicen la clase Kurro.BS.SFTP.Marca tengan por defecto el valor CargaFicheros
Hola a todos. De nuevo, me gustaría compartir lo que estoy estudiando recientemente: crear tablas externas usando SQL a través de JDBC.
Como estoy aprendiendo sobre IRIS BI al mismo tiempo, empecé con este entorno docker de Sample-BI.
https://github.com/intersystems/Samples-BI
Después de iniciar el entorno, iniciad sesión en el portal de administración en http://localhost:52773/csp/sys/UtilHome.csp con el usuario Superuser.
Cambiad el namespace a IRISAPP.
Para ejecutar SQL en la terminal, usad $system.SQL.Shell().
Consultad el siguiente ejemplo.
Hay un patrón con el que me he encontrado varias veces en el que necesito usar un archivo o carpeta temporal y que se limpie en algún momento más adelante.
Lo natural aquí es seguir los patrones de "Robust Error Handling and Cleanup in ObjectScript" usando un try/catch/pseudo-finally o un objeto registrado para gestionar la limpieza en el destructor. %Stream.File* también tiene una propiedad “RemoveOnClose” que podéis activar… pero usadla con cuidado, porque podríais eliminar accidentalmente un archivo importante, y este indicador se reinicia al llamar a %Save(), así que tendréis que volver a ponerlo a 1 después de hacerlo.
Pero hay un caso complicado: imaginad que necesitáis que el archivo temporal sobreviva en un nivel de pila superior. Por ejemplo:
Simplemente instalo intersystems iris en un pc cliente la opción cliente
Toda la instalació no da ningun error pero luego el telnet no funciona
Saludos y gracias
César Arasa
Me complace anunciar la publicación de gj :: dataLoader, una nueva extensión de VS Code que simplifica la tarea de cargar datos desde archivos CSV locales en tablas SQL de vuestros servidores InterSystems IRIS.
Aquí tenéis un vídeo introductorio:
gj :: dataLoader ya está disponible en Marketplace para su instalación directa en VS Code. Es mi propuesta para el concurso “Bringing Ideas to Reality” 2025 y lleva a la práctica esta idea: https://ideas.intersystems.com/ideas/DPI-I-667
Se agradecen vuestros comentarios.
Al exportar usando el método Export() de la clase %Library.Global, si el formato de exportación (cuarto argumento: OutputFormat) está establecido en 7, “Block format/Caché block format (%GOF)”, no se pueden exportar globals mapeadas (solo se exportan las globals de la base de datos global predeterminada del espacio de nombres). Para exportar globals mapeadas en “Block format/Caché block format (%GOF)”, especificad el directorio de la base de datos a la que queréis mapearlas en el primer parámetro de %Library.Global.Export().
Hace ya un tiempo hice un pequeño ejemplo para poder desplegar rápidamente utilizando Docker instancias de InterSystems IRIS conectadas vía ECP. Ha pasado el tiempo y, como todo, necesitaba algo de chapa y pintura...
El proyecto de interfaz de usuario de Interoperabilidad ha continuado desde 2025.1 y ha incorporado muchos de los elementos que vosotros, nuestros clientes y socios, habéis sugerido y observado. Seguimos invirtiendo en vuestro feedback y actualizando esta importante experiencia de usuario. En la última versión, 2025.3 para IRIS, IRIS for Health, Health Connect y Health Connect Cloud, las aplicaciones del Editor DTL y de Configuración de Producción están disponibles para activarlas si lo deseáis.
NOTA:
Hola, desarrolladores:
Disfrutad del nuevo vídeo en el canal de YouTube de InterSystems Developers.
⏯ Integración de agentes de IA en InterSystems IRIS: patrones y técnicas @ READY 2025
Hola,
Cuando abrimos un terminal en IRIS, entramos en el shell de ObjectScript. Dentro de este shell, podemos ejecutar comandos de IRIS, como:
En otras palabras, el comando ObjectScript se ejecuta en el shell actual. Pero siempre es bueno recordar que IRIS tiene otros shells.
Un aspecto muy interesante son los atajos. Podemos acceder a estos shells mediante sus llamadas o a través de atajos, como se muestra en la tabla siguiente:
Hola comunidad,
¡Buenas noticias para los desarrolladores que acabáis de empezar a trabajar con InterSystems IRIS! Tenemos tutoriales interactivos y prácticos disponibles a través de la plataforma Instruqt. Son perfectos para poneros al día rápidamente, practicar en entornos reales y ganar confianza en el desarrollo con IRIS.
.png)
La versión 2025.3 de la plataforma de datos InterSystems IRIS, InterSystems IRIS for Health y HealthShare Health Connect ya está disponible de forma general. Esta es una versión de entrega continua o CD (Continuous Delivery).
Aspectos destacados de la versión:
Como desarrollador que usa IRIS como base de datos en un par de proyectos, uso APIs REST todo el tiempo. En mi opinión, saber cómo consumir un recurso de una API REST es crucial para poder utilizar APIs REST externas con %Net.HttpRequest, porque permite la integración con aplicaciones y servicios web modernos, y es una habilidad esencial para un desarrollador backend que ama y utiliza IRIS como base de datos.
¿Qué es y para quién sirve %Net.HttpRequest?
Cuando comencé mi trayectoria con InterSystems IRIS, especialmente en el área de Interoperabilidad, una de las preguntas iniciales y más comunes que tuve fue: ¿cómo puedo ejecutar algo en intervalos o según una programación? En este artículo quiero compartir dos clases sencillas que abordan este problema. Me sorprende que no haya clases similares ubicadas en algún lugar de EnsLib. ¿O quizá no busqué bien? En cualquier caso, este artículo no pretende ser un excesivamente complejo, sino una muestra de un par de fragmentos para principiantes.
En mi artículo anterior en el que presentaba gj :: configExplorer señalé cómo un aparente error en los elementos de Windows de la API nativa para Node.js hace que actualmente no sea posible ejecutarlo en VS Code en un escritorio Windows. En un comentario a ese artículo ofrecí una solución alternativa, pero esta requiere un host Linux con Docker al que podáis conectaros por SSH.
Si no tenéis un destino adecuado, ahora es posible aprovechar vuestro Docker Desktop local de Windows. Aquí os explico cómo:
Hola Comunidad:
Disfrutad del nuevo video en el canal de YouTube de InterSystems Developers:
⏯ Operaciones y escalabilidad con InterSystems IRIS: From Zero to Hero @ Ready 2025
Resumen
Esta versión introduce el FHIR Server 2025.10.0, que ofrece las últimas mejoras en cumplimiento de estándares y rendimiento. También mejora el proceso de actualización de Health Connect Cloud (HCC) para una mayor fiabilidad y añade nueva flexibilidad a Network Connect mediante la compatibilidad con listas de prefijos en las configuraciones de VPN.
Nuevas características y mejoras
Seguramente queríais usar la especificación OpenAPI (OAS) en formato JSON que utilizasteis para vuestra clase spec en el paquete iris-web-swagger-ui de IRIS.
La OAS generada por el método ##class(%REST.API).GetWebRESTApplication(...) es muy básica, sin descripciones de los parámetros ni de la estructura esperada de las respuestas.
Así que, después de crear vuestra aplicación REST a partir de una OAS, deberíais tener:
Hola comunidad,
Tengo un servicio que utiliza EnsLib.RecordMap.Service.FTPService para capturar ficheros en un directorio FTP.
Necesitaría que en lugar de cargarlos todos a la vez, los hiciera de uno en uno.
Tengo una clase que extiende de esta clase porque hace procesos previos, lo guarda todo en la clase RecordMap y luego los procesa todos los registros a la vez.
Cuando invoco al BP, lo hace a través del método set tStatus = ..SendRequest(message, 1)
He puesto el flag SynchronousSend = 1, pero sigue procesando todos a la vez.
¡Hola, comunidad!
Nos alegra compartir un nuevo vídeo en nuestro canal de YouTube de InterSystems Developers:
Hola a todos,
Primero quiero reconocer a @Theo Stolker y @Rupert Young, porque me ayudaron con la solución.
Cuando usáis EnsLib.SQL.Snapshot como una propiedad en el mensaje de respuesta para devolver datos de Snapshot (por ejemplo, desde una Business Operation a un Business Process), los datos del Snapshot no se limpian con la tarea/servicio de depuración de mensajes.
Class ResponseMessage Extends Ens.Response
{
Property SnapshotProp As EnsLib.SQL.Snapshot;
}
¡Sí sí! ¡Adelante! No os habéis equivocado, estáis en vuestra querida Comunidad de Desarrolladores de InterSystems en español.
Os preguntaréis a qué viene el título de este artículo, pues muy sencillo, hoy estamos aquí reunidos para honrar al Inquisidor y elogiar la gran labor desempeñada por el mismo.

Ejecutad InterSystems IRIS dentro de Home Assistant, como un complemento. Antes de que descartéis este artículo pensando que se trata solo de una curiosidad, os invito a deteneros un momento y ver lo fácil que es lanzar aplicaciones basadas en IRIS usando esta plataforma. Si echáis un vistazo a Open Exchange, veréis decenas y decenas de aplicaciones que merecen ser utilizadas, pero que en la práctica quedan abandonadas como simples proyectos en Git, y que solo pueden ejecutarse si estáis dispuestos a enfrascaros en una batalla con containerd o Docker. Con un simple repositorio de Git y una especificación, ahora podéis construir vuestra aplicación en IRIS y hacer que se ejecute a través de un marketplace, reduciendo al mínimo las complicaciones para vuestros usuarios finales. Ejecutadla junto a Ollama y las implementaciones de LLM/LAM, exponed cualquier elemento de IRIS como un sensor o cread un endpoint para que vuestra aplicación en IRIS interactúe con cualquier cosa que tengáis conectada a HAOS. ¿Queréis reiniciar una producción de IRIS con solo accionar un interruptor físico o mediante una IA asistida? Podéis hacerlo con este complemento, o con uno propio, justo al lado de los entusiastas de la automatización del hogar.