Artículo
· 27 ene, 2025 Lectura de 5 min
IoP: Soporte DTL para Mensajes y JsonSchema

Me alegra anunciar la nueva versión de IoP, que, por cierto, no es solo una línea de comandos. Lo digo porque el nuevo motor de búsqueda con IA aún cree que IoP es solo una línea de comandos. Pero no lo es. Es todo un framework para construir aplicaciones sobre las funcionalidades de interoperabilidad de IRIS con un enfoque Python.

La nueva versión de IoP: 3.2.0 viene con muchas características nuevas, pero la más importante es el soporte para DTL . 🥳

Tanto para mensajes de IoP como para jsonschema. 🎉

image

Soporte para DTL

A partir de la versión 3.2.0, IoP admite transformaciones DTL.

DTL es la Capa de Transformación de Datos (Data Transformation Layer) en interoperabilidad de IRIS.

Las transformaciones DTL se utilizan para convertir datos de un formato a otro mediante un editor gráfico.
También es compatible con estructuras de jsonschema.

0 0
0 11

Cuando desplegáis código desde un repositorio, la eliminación de clases (archivos) podría no reflejarse en vuestro sistema CICD. Por ejemplo si en vuestro repositorio elimináis una clase y queréis que se refleje en el código desplegado.

Aquí tenéis un sencillo comando de una sola línea para eliminar automáticamente todas las clases en un paquete específico que no hayan sido importadas. Se puede ajustar fácilmente para una variedad de tareas adicionales:

set packages = "USER.*,MyCustomPackage.*"
set dir = "C:\InterSystems\src\"
set sc = $SYSTEM.OBJ.LoadDir(dir,"ck", .err, 1, .loaded)
set sc = $SYSTEM.OBJ.Delete(packages _ ",'" _ $LTS($LI($LFS(loaded_",",".cls,"), 1, *-1), ",'"),, .err2)

El primer comando compila las clases y también devuelve una lista de las clases cargadas.
El segundo comando elimina todas las clases de los paquetes especificados, excepto las clases que se cargaron justo antes en el paso anterior.

1 0
0 19

La auditoría es una capacidad fundamental para garantizar la seguridad de vuestro servidor, y desde hace un tiempo hemos incluido la posibilidad de auditar las sentencias SQL ejecutadas en el servidor.

Con la versión 2024.3 ya disponible, ahora ofrecemos opciones más detalladas para definir los eventos que se auditarán.

0 0
0 21

La capacidad de reenviar mensajes fácilmente siempre ha sido una de las características más destacadas de nuestras capacidades de interoperabilidad.

Con la versión 2024.3 que se lanzará pronto (ya disponible como Developer Preview), ¡lo hemos hecho aún más sencillo!

0 0
0 30
Artículo
· 28 oct, 2024 Lectura de 3 min
Soluciones para los Timeouts en Servicios SOAP

Hola a todos, hoy comentamos con un ejemplo cómo solucionar problemas relacionados con el TimeOut cuando se hacen llamadas a servicios SOAP.

Tomemos como ejemplo aplicaciones que proporcionen servicios SOAP que utilizan consultas SQL basadas en "DSTIME" para devolver registros que han sido añadidos o modificados recientemente. Como estos registros no cambian con frecuencia, estas consultas suelen devolver un número reducido de registros, lo cual implica un tiempo de procesamiento corto.

1 0
0 49
Artículo
· 21 oct, 2024 Lectura de 3 min
De ORU a MDM con mensajes grandes en HL7 v2.

¡Muy buenas a todos! Os paso un ejemplo de resolución de problemas a la hora de implementar transformaciones de datos que es muy interesante: estaba trabajando en un transformación de datos (DTL) de mensajes HL7 pero no paraba de obtener errores del tipo ERROR #5002... MAXSTRING. El problema era que la mayor parte de acciones en la interfaz gráfica de DTL utilizan el tipo de datos %String al trabajar con segmentos de un mensaje HL7.

0 0
0 41
Artículo
· 23 sep, 2024 Lectura de 8 min
DataPipe2 - Implementar un pipe de datos

¡Hola, desarrolladores!

En esta serie de artículos hemos hablado del framework iris-datapipe, de cómo nos ayuda a crear "pipes" de datos para la ingesta y procesamiento, y de cómo instalarlo. Vamos a profundizar en cómo implementar uno de esos "pipes" paso a paso.

3 0
0 46

Hola Comunidad,

Este artículo tiene como objetivo guiaros a través del proceso de configuración y utilización de la Funcionalidad de Entorno de Ejecución Flexible de Python para Python embebido. Antes de la versión 2024.2, el instalador de Intersystems IRIS para Windows incluía una versión pre-instalada de Python. Podíais encontrar las bibliotecas de Python y los archivos de la aplicación ubicados en el directorio \lib\python dentro de la carpeta de instalación de IRIS (por ejemplo, C:\InterSystems\IRIS20242\lib\python).

0 0
0 42
Artículo
· 30 ago, 2024 Lectura de 2 min
Recorrer roles de forma recursiva

Recientemente me encontré en una situación en la que un usuario tenía algunos roles, que le otorgaban roles adicionales, y así sucesivamente.

Como no entendía de dónde venía un permiso en particular, escribí este código que obtiene un conjunto inicial de roles y los recorre recursivamente, teniendo en cuenta cualquier repetición.

0 0
0 28

Una buena característica que se ha añadido recientemente a la versión 2.12.6 de la extensión ObjectScript de VS Code está controlada por esta nueva configuración:

objectscript.serverSourceControl.respectEditableStatus

Cuando se establece true en JSON, o se marca en el Settings Editor (o Editor de Configuración), un documento del lado del servidor será de sólo lectura si la clase de control de código fuente para el namespace informa que no es editable.

0 0
0 36
Artículo
· 20 ago, 2024 Lectura de 1 min
Primera búsqueda vectorial en IRIS

Hay un montón de grandes artículos de la comunidad con respecto a la «búsqueda de vectores en IRIS», y ejemplos en OpenExchange. Cada vez que los veo, ¡me encanta saber que tantos desarrolladores ya prueban los vectores en IRIS!

Pero si todavía no has probado los vectores en IRIS, dame un minuto y lo vemos 😄: creamos una clase IRIS y con eso ya es suficiente para ver cómo pones datos vectoriales en tu base de datos IRIS y cómo los comparas en tu aplicación.

0 0
0 47

image

Hola Comunidad,

En este artículo, voy a presentar mi aplicación iris-RAG-Gen .

Iris-RAG-Gen es una aplicación generativa AI Retrieval-Augmented Generation (RAG) que aprovecha la funcionalidad de IRIS Vector Search para personalizar ChatGPT con la ayuda del framework web Streamlit, LangChain, y OpenAI. La aplicación utiliza IRIS como almacén de vectores.

Características de la aplicación

  • Ingesta de documentos (PDF o TXT) en IRIS
  • Chatear con el documento ingerido seleccionado
  • Borrar Documentos ingerido
  • OpenAI ChatGPT

0 0
0 49

Hacía mucho tiempo que no escribía un post de actualización en IoP (Interoperabilidad en Python).

image

¿Qué hay de nuevo desde el lanzamiento de la interfaz de línea de comandos de IoP?

Dos nuevas grandes características se han añadido a IoP:
- Rebranding: el módulo grongier.pex fue renombrado a iop para reflejar el nuevo nombre del proyecto.
- Soporte asíncrono**: IoP ahora soporta funciones asíncronas y corrutinas.

0 0
0 36
Artículo
· 16 jul, 2024 Lectura de 4 min
Introducción al soporte WSGI

wsgi_logo

Contexto

La Interfaz de Pasarela de Servidor Web (WSGI, por sus siglas en inglés) es una convención de llamada para que los servidores web puedan reenviar solicitudes a aplicaciones o frameworks web escritos en el lenguaje de programación Python. WSGI es un estándar de Python descrito en detalle en PEP 3333.

🤔 Ok, gran definición, ¿y qué tiene que ver con IRIS?

2 1
0 154

Por razones prácticas, muchas veces necesitamos que tras un reinicio de un servidor Linux, la instancia IRIS que tengamos instalada se inicie automáticamente.

A continuación encontraréis los pasos a seguir para automatizar el arranque de IRIS durante un reinicio de Linux, a través de systemd :

1. Cread un archivo iris.service en /etc/systemd/system/iris.service que contenga la siguiente información

2 0
0 158