Artículo Ricardo Paiva · feb 18 7m read

En este artículo, pretendo demostrar un par de métodos para añadir fácilmente validación a las APIs REST en InterSystems IRIS Data Platform. Creo que un enfoque specification-first es una idea excelente para el desarrollo de APIs. IRIS ya dispone de funcionalidades para generar un esqueleto de implementación a partir de una especificación y publicar esa especificación para desarrolladores externos (usadlo junto con iris-web-swagger-ui para obtener los mejores resultados). Lo único importante que aún no está implementado en la plataforma es el validador de solicitudes. ¡Vamos a solucionarlo!

0
0 21
Artículo Alberto Fuentes · feb 17 3m read

PEP 578 añadió hooks de auditoría de Python. Una gran variedad de eventos (carga de módulos, interacciones con el sistema operativo, etc.) generan eventos de auditoría a los que podéis suscribiros.

Así es como se hace. Primero, cread un hook de Python embebido:

Class User.Python
{

/// do ##class(User.Python).Audit()
ClassMethod Audit() [ Language = python ]
{
import sys
import time
def logger(event,args):
     if event=='import':
        module = args[0]
        print(f"Loading {module}")
        if module == "numpy":
            print(f"Module {module} forbidden.
0
0 38
Pregunta Bismar Vargas Arias · feb 14

En este video les comparto un pequeño laboratorio donde integramos la potencia de una Base de Datos Vectorial nativa con la inteligencia de GPT-4. 🛠️ ¿Qué estamos viendo en acción?
Almacenamiento Vectorial Nativo: Guardamos documentos y sus "embeddings" directamente en IRIS, permitiendo búsquedas de similitud matemática ultra eficientes.
SQL Estándar: Ejecutamos consultas complejas que combinan datos relacionales con vectores, manteniendo la simplicidad del lenguaje que ya conocemos.

0
0 25
Artículo Ricardo Paiva · feb 13 7m read

 

¡Hola!

En mi último artículo, hice una guía paso a paso sobre cómo podéis probar a desplegar InterSystems IRIS Community Edition, o IRIS for Health Community Edition, gratis en AWS. En este seguimiento, os mostraré lo mismo para el siguiente mayor proveedor de nube, Microsoft Azure.

Al igual que con AWS, Azure también ofrece una opción gratuita al registraros, aunque es un poco menos generosa: recibís 200 $ de crédito gratis para gastar en el primer mes.

0
0 19
InterSystems Official Jose-Tomas Salvador · feb 11

Las versiones de mantenimiento 2025.1.3 de la plataforma de datos InterSystems IRIS®, InterSystems IRIS®for Health™ y HealthShare®Health Connect ya están disponibles de manera general (GA).

0
0 40
InterSystems Official Jose-Tomas Salvador · feb 10

La tercera vista previa para desarrolladores de la plataforma de datos InterSystems IRIS®, InterSystems IRIS® for Health y HealthShare® Health Connect 2026.1 se ha publicado en el sitio de vistas previas para desarrolladores WRC. Los contenedores se pueden encontrar en nuestro registro de contenedores y están etiquetados como latest-preview.

Estas vistas previas para desarrolladores incluyen la eliminación del soporte para Mac Intel a partir de la versión 2026.1.0, y la reincorporación del soporte para Windows Server 2019 en la versión 2026.1.0.

0
0 23
Artículo Alberto Fuentes · feb 9 21m read

A medida que las aplicaciones crecen, todas las bases de datos acaban alcanzando límites de escalado. Ya sea por capacidad de almacenamiento, usuarios concurrentes, rendimiento de las consultas o ancho de banda de E/S, las arquitecturas de un solo servidor tienen limitaciones inherentes. Esta guía explica los enfoques fundamentales para la escalabilidad de bases de datos y muestra cómo InterSystems IRIS implementa estos patrones para dar soporte a cargas de trabajo a escala empresarial.

Exploraremos dos estrategias de escalado complementarias: escalado horizontal para el volumen de usuarios (distribuyendo la carga computacional) y sharding para el volumen de datos (particionando los conjuntos de datos). Comprender los principios generales que hay detrás de estos enfoques os ayudará a tomar decisiones fundamentadas sobre cuándo y cómo escalar vuestras aplicaciones IRIS.

Los ejemplos de esta guía utilizan InterSystems IRIS en contenedores Docker.

0
0 25
Artículo Pierre-Yves Duquesnoy · feb 9 4m read

¿Qué son los parámetros variádicos?

ObjectScript permite definir métodos que aceptan un número variable de argumentos usando la sintaxis `args...`. En lugar de fijar cuántos parámetros recibe un método, dejas que el llamante decida cuántos enviar.

Se pueden invocar de dos formas:

1. Con argumentos individuales: `metodo(val1, val2, val3)`

2. Expandiendo un array: `metodo(args...)`

 


 

Crea tus propios métodos variádicos

Puedes definir un método con un parámetro fijo y un número variable de extras:

ClassMethod MiMetodo(fijo As %String,
0
0 40
Artículo Bismar Vargas Arias · feb 8 1m read

Laboratorio de Integración con InterSystems IRIS, Wear OS y Ollama En los últimos días estuve trabajando en un proyecto personal para gestionar la creación de pacientes desde un dispositivo Wear OS conectado a mi servidor local de InterSystems IRIS Community. La aplicación funciona de la siguiente forma:
✅ Desde el reloj inteligente envío la información del paciente mediante voz o texto.
✅ Un servidor local procesa la solicitud usando Ollama y el modelo Qwen, que interpreta el texto y genera el JSON estructurado con los datos del paciente.

0
0 19
Artículo Bismar Vargas Arias · feb 8 1m read

🚀 Migración de Datos Clínicos: InterSystems IRIS + Google Cloud Healthcare
En mi laboratorio de integración, he logrado vincular InterSystems IRIS con la API de Google Cloud Healthcare para habilitar un flujo completo de migración y almacenamiento de datos clínicos en formato FHIR R4.
🔹 Pasos clave del proceso:
1️⃣ Creación de proyecto y habilitación de facturación en Google Cloud.
2️⃣ Activación de la API de Cloud Healthcare.
3️⃣ Creación de un dataset y un FHIR Store (iris-fhir-store) en us-central1.
4️⃣ Configuración de permisos IAM e implementación de una Service Account exclusiva para IRIS.

0
0 27
Artículo Bismar Vargas Arias · feb 8 1m read

Control gestual sobre InterSystems IRIS Community: 3D y UI sin contacto 🧩 Hoy muestro un laboratorio/prototipo donde uso InterSystems IRIS Community como interfaz base y un overlay transparente que me permite operar el sistema únicamente moviendo las manos frente a la webcam.
La idea: que el/la profesional explique y navegue modelos virtuales (no análogos) y la propia UI… sin tocar nada.
¿Qué hace?
✅ Puntero por gestos: la mano mueve el cursor con suavizado para que no “salte”.
✅ Acciones naturales: click, doble-click y arrastre con el índice/pinza.

0
0 23
Artículo Bismar Vargas Arias · feb 8 1m read

🚀Laboratorio: InterSystems IRIS Community + PHP (Laravel) vía ODBC
Esta semana estuve trabajando en un laboratorio personal donde integré InterSystems IRIS Community con PHP Laravel utilizando conexión ODBC, y lo llevé un paso más allá: construí un paquete de instalación tipo “wizard” guiado para que cualquier usuario pueda configurar el entorno de forma sencilla (sin pelear con drivers, DSN, variables y ajustes). ✅¿Qué logré en este laboratorio?

0
0 24
Anuncio Silvia Schoch Alvarado · feb 3

Hola comunidad de InterSystems EHR,

InterSystems Certification está desarrollando actualmente un examen de certificación para usuarios de CCR Tier 2, y si coinciden con la descripción del candidato a continuación, ¡nos gustaría que realizaran la prueba beta del examen! El examen estará disponible para pruebas beta a partir del 27 de enero de 2026.

Las pruebas beta se completarán el 28 de marzo de 2026.

¿Cuáles son mis responsabilidades como probador beta?

Como probador beta, le pedimos que programe y realice el examen antes del 28 de marzo de 2026.

0
0 26
Artículo Pierre-Yves Duquesnoy · feb 2 12m read

Desde IRIS 2024, InterSystems IRIS soporta el protocolo XOAuth2, una extensión a OAuth2 que permite autenticación con OAuth2 para enviar y recibir mensajes de email. Google Mail y Google Workspace (el uso empresarial del mail de google con una dirección de empresa) requieren el uso de XOAuth2 si se desea integrar las funciones de correo desde una aplicación externa. 

En este ejemplo, me centraré en una aplicación IRIS que usa el Gmail empresarial para el envio de correos.

0
1 21
Artículo Ricardo Paiva · ene 29 3m read

Durante el último año, el equipo de desarrollo de CCR ha priorizado cambios en la aplicación CCR para mostrar y fomentar mejores prácticas en su uso. Este artículo destaca algunas de las áreas en las que nos hemos centrado:

  • Panel de organización
  • Alertas del sistema
  • Higiene de ramas

En cada una de estas áreas, hemos aumentado la visibilidad de posibles problemas en el uso de CCR y proporcionado herramientas para que los usuarios los aborden de manera proactiva.

Panel de organización

Hemos seguido ampliando la información disponible en la página de detalles de la organización.

0
0 20
Artículo Luis Angel Pérez Ramos · ene 29 3m read

Embeddedpy-bridge: Un kit de herramientas para Embedded Python

Visión general

Embedded Python es un cambio radical para InterSystems IRIS, ya que ofrece acceso al vasto ecosistema de Python directamente dentro de la base de datos. Sin embargo, salvar la brecha entre ObjectScript y Python a veces puede parecer bastante complicado.

Para hacer que esta transición sea fluida, podéis usar embeddedpy-bridge.

0
0 30
Artículo Luis Angel Pérez Ramos · ene 28 5m read

¿Cuantas veces habéis tenido que recibir o generar un JSON y habéis añorado el poder trabajar sobre él haciendo uso de DTLs y sin tener que ir manejando DynamicObjects intentando recordar cual era el nombre de cada campo?

¿Deseas trocear y hacer más digerible tu gigantesco JSON?

En mi caso, nunca, pero he pensado que a alguien le podría resultar de utilidad una funcionalidad que capture tu JSON y lo descomponga en una serie de clases de ObjectScript con las que puedas trabajar de forma más cómoda y sencilla.

Pues bien...¡contemplad el JSON2Class en toda su gloria!

¿Cómo funciona

0
0 38
Artículo Jose-Tomas Salvador · ene 28 1m read

Si uno de vuestros paquetes en OEX recibe una reseña, OEX os notificará únicamente sobre vuestro propio paquete. La valoración refleja la experiencia del revisor con el estado del paquete en el momento de la reseña.
Es como una “fotografía” del estado en ese momento y podría haber cambiado desde entonces. Las reseñas realizadas por otros miembros de la comunidad se marcan con un * en la última columna.

Además, el revisor puede enviar Pull Requests en GitHub cuando encuentra un problema que se puede solucionar. Algunas puden ser aceptadas y fusionadas, y otras simplemente ignoradas.

0
0 29
Artículo Jose-Tomas Salvador · ene 27 2m read

Si uno de vuestros paquetes en OEX recibe una reseña, OEX os notificará únicamente sobre vuestro propio paquete. La valoración refleja la experiencia del revisor con el estado del paquete en el momento de la reseña.
Es como una “fotografía” del estado en ese momento y podría haber cambiado desde entonces. Las reseñas realizadas por otros miembros de la comunidad se marcan con un * en la última columna.

Además, el revisor puede enviar Pull Requests en GitHub cuando encuentra un problema que se puede solucionar. Algunas puden ser aceptadas y fusionadas, y otras simplemente ignoradas.

1
0 29
Anuncio Silvia Schoch Alvarado · ene 26

Hola Comunidad,

Estamos emocionados de invitaros a participar en la creación de la próxima generación de herramientas de desarrollo para ObjectScript. Estamos trabajando en un asistente de codificación en ObjectScript potenciado por IA, diseñado específicamente para desarrolladores de IRIS. No es una IA genérica adaptada a ObjectScript, sino una solución construida desde cero para entender los modismos de ObjectScript, las APIs de IRIS, producciones de interoperabilidad y los flujos de trabajo reales de los desarrolladores.

Para asegurarnos de construir algo realmente útil, necesitamos vuestra opinión.

👉 Encuesta para desarrolladores del Agente de Codificación en ObjectScript 👈

0
1 26
Artículo Robert Cemper · ene 26 2m read

Durante los últimos 9 años, he publicado más de 90 paquetes en OEX.
Y durante todo este tiempo, las condiciones y los entornos cambiaron.
Al principio, 

  • no había Docker
  • no había PM/ZPM
  • no había Python embebido, no había AI
  • el Caché, Ensemble, CSP, ZEN, ... dominaban

A medida que pasó el tiempo, también cambiaron las versiones de los productos y los lenguajes externos.
Ajustar unos pocos paquetes no era un problema al principio,
y era una cuestión de calidad de soporte para vuestros “consumidores”.

Con el volumen actual, no veo forma de mantener este objetivo para todos mis

1
0 25
Artículo Vachan C Rannore · ene 22 1m read

SETasigna un valor a la variable en TIEMPO DE EJECUCIÓN.

#DIM declara la variable y su tipo de datos en TIEMPO DE COMPILACIÓN.







SET #DIM

Hace que las variables sean dinámicas.

Mejora la legibilidad.

Sin declaración de tipo de datos.

Permite la autocompletación en el IDE.

Tiempo de ejecución

Útil para referencias a objetos.


#DIM name As %String
Set name = "Micheal Scott"
#DIM age As %Numeric
Set age = 36
#DIM employer As App.Employer               ; compile time
Set employer = ##class(App.Employer).%New() ; runtime 

 

SET #DIM?

0
0 33