Artículo Luis Angel Pérez Ramos · ago 22, 2023 4m read

Bienvenidos estimados miembros de la Comunidad a la presentación y primera entrega de un pequeño proyecto que demostrará las capacidades de InterSystems IRIS para proporcionar funcionalidades plenas de backup para una aplicación web desarrollada en Angular. Este artículo se limitará a presentar el concepto así como las funcionalidades de InterSystems IRIS utilizadas de un modo general, entrando más en detalle en posteriores artículos.

¡Bienvenidos a QuinielaML!

2
0 677
Artículo Kurro Lopez · abr 16, 2019 3m read

A veces, necesitamos copiar parte de las propiedades de un objeto en otro diferente.

La forma mas facil sería hacer lo siguiente:

Set obj1.FirstName = obj2.FirstName

Set obj1.SecondName = obj2.SecondName

¿Que sucede si el objeto contiene un gran número de propiedades? ¿Y si solo necesitamos extraer un importante grupo de datos, y complementar la información en otro objeto?

Tenemos las siguientes clases:

Class Kurro.PersonalInfo Extends %Library.
0
0 296
Artículo Alberto Fuentes · feb 21, 2024 2m read

Quería compartiros hoy un pequeño truco para personalizar cómo se muestran los mensajes en el Visor de Mensajes. En concreto, cómo mostrar mensajes JSON directamente en el Visor de Mensajes en lugar de serializados como XML.

image

Los mensajes son los objetos que utilizamos para comunicar componentes de una producción de interoperabilidad. En mi caso me había definido un mensaje que utilizaba después para pasar a JSON y enviar a una API. Este mensaje está definido como un mensaje convencional y también como %JSON.Adaptor para poder exportar / importar directamente a JSON.

Class interop.msg.
2
0 325
Anuncio Silvia Schoch Alvarado · ene 14
Os traemos un resumen de todo lo que hemos publicado en 2025 en la Comunidad en español. ¡Seguid leyendo y no os lo perdáis!
Estadísticas generales:
349 contenidos publicados durante el 2025:
190 artículos
142 anuncios
16 preguntas
1 debate

149 miembros se unieron a la Comunidad de desarrolladores durante el 2025
2,306 los mensajes publicados todo el tiempo en total
872 de miembros unidos todo el tiempo en total

0
1 30
Anuncio Esther Sanchez · mar 17, 2021

¡Hola desarrolladores!

Os invitamos a un nuevo webinar en español: "¿Qué necesitas para empezar con InterSystems IRIS y VS Code?", el miércoles 24 de marzo, a las 4:00 PM (CET).

 

“IRIS tiene buena pinta, pero no tengo ni idea... ¿por dónde empiezo?” o “Yo usaba Studio y programaba en Ensemble o Caché, pero esto del VS Code... ¿cómo se hace?”. Si te has hecho alguna de estas preguntas... ¡este es tu webinar!

2
0 262
Artículo Luis Angel Pérez Ramos · jul 21, 2025 3m read

¡Saludos estimados miembros de la comunidad!

Muchos recordaréis las capacidades NLP disponibles en IRIS con el nombre de iKnow y que fueron deprecadas hará no mucho tiempo. Pero...¿Deprecado todo? ¡NO! Una pequeña aldea resiste a la deprecación, ¡los índices iFind!

Y os preguntaréis, ¿para qué valen estos magníficos índices? Pues muy sencillo, sirven para indexar los textos presentes en las columnas de tipo String y Stream y acelerar dramáticamente la velocidad de consulta sobre las mismas.

1
1 67
Artículo Robert Cemper · dic 21, 2019 2m read

Para aquellos expertos que no pueden parar después del concurso "Advent of Code" (AoC2019), he publicado un código bastante antiguo en estilo tradicional para mejorarlo.

Fue escrito en base a una prueba previa en .XLS. Está lejos de ser perfecto. Es más bien un desafío para mejora en todas las direcciones (código, interfaz, ...). Así que cualquiera está invitado a mejorarlo.

0
0 239
Artículo Alberto Fuentes · feb 23, 2023 3m read

Hola a todos!

Durante un proyecto necesitábamos poder definir temas sobre los que publicar mensajes, y crear diferentes subscriptores que recibiesen esos mensajes de forma asíncrona. Necesitábamos además que fuese lo más sencillo posible y que se pudiese utilizar directamente en InterSystems IRIS.

A modo de experimento os paso este iris-pubsub.

Infraestructura

Está construido sobre las funcionalidades de interoperabilidad de InterSystems IRIS, necesita tener una producción en marcha.

La primera vez que lo arranquemos definimos cuántas particiones queremos dedicar para atender mensajes.

2
0 123
Pregunta Laura Blázquez García · jun 10, 2025

He creado un nuevo stack de Docker con WebGateway e IRIS for Health 2025.1. He mapeado los puertos de WebGateway de la siguiente manera:

  • 8743:443
  • 8780:80

Puedo acceder al portal IRIS a través del 8743 sin problemas.

También he creado un repositorio FHIR y puedo acceder a él a través del puerto 8743.

Tengo una aplicación web, en otro servidor con otro dominio, que se conecta a este repositorio de FHIR. He configurado en el endpoint de FHIR el origen permitido para el dominio de esta aplicación.

8
0 71
Anuncio Esther Sanchez · jul 20, 2023

¡Hola Comunidad!

Estamos encantados de invitaros a un nuevo Ideatón, el maratón más creativo e innovador, y que además no exige ninguna forma física:

🎁 2º Ideatón de InterSystems 🎁

Publicad una idea relacionada con el tema del Ideatón, entre el 1 y el 21 de agosto, y ganaréis un premiosolo por participar.

Pueden participar todos los miembros de la Comunidad de Desarrolladores, incluidos los empleados de InterSystems.

1
0 242
Artículo Kurro Lopez · dic 5, 2019 8m read

¡Hola a tod@s!

En las partes anteriores (1, 2) de este artículo, hablamos de Globals como árboles. En esta tercera parte, los veremos como matrices dispersas.

Una matriz dispersa es un tipo de matriz donde la mayoría de los valores asumen un valor idéntico.

En la práctica, a menudo veréis matrices dispersas tan grandes que no tiene sentido ocupar memoria con elementos idénticos. Por lo tanto, tiene sentido organizar matrices dispersas de tal manera que no se desperdicie memoria al almacenar valores duplicados.

En algunos lenguajes de programación, las matrices dispersas son parte del lenguaje (por ejemplo, en J, MATLAB). En otros lenguajes, hay bibliotecas especiales que permiten usarlas. Para C ++, esos serían Eigen y similares.

Los Globals son buenos candidatos para implementar matrices dispersas por las siguientes razones:

0
0 685
Artículo Dmitrii Kuznetsov · sep 19, 2022 17m read

Una sesión simultánea en IRIS: SQL, Objects, REST y GraphQL  

Kazimir Malevich, "Deportistas" (1932)

"¡Pues claro que no lo entiende! ¿Cómo puede una persona que siempre ha viajado en un carruaje tirado por caballos entender los sentimientos e impresiones del viajero expres o del piloto de aviones?"
Kazimir Malevich (1916)

Introducción

Ya hemos abordado el tema de por qué la representación de objetos/clases es superior a la de SQL para implementar modelos de áreas temáticas. Y esas conclusiones y hechos son tan ciertos ahora como lo han sido siempre. Entonces, ¿por qué deberíamos dar un paso atrás y hablar sobre las tecnologías que arrastran las abstracciones de vuelta al nivel global, donde habían estado en la era pre-objetos y pre-clases? ¿Por qué debemos fomentar el uso de "código espagueti", que provoca errores que son difíciles de rastrear y se basa en las habilidades de desarrolladores virtuosos? 

Hay varios argumentos a favor de la transmisión de datos por medio de APIs basadas en SQL/REST/GraphQL en lugar de representarlos como clases/objetos:

0
0 2596
Artículo Alberto Fuentes · oct 29, 2021 2m read

ObjectScript tiene diferentes formas para gestionar errores (códigos %Status, %Exception, SQLCODE, etc). La mayor parte del código de sistema utiliza códigos %Status pero las %Exception son en ocasiones más fáciles de gestionar.

Si tienes que trabajar o mantener aplicaciones con cierto recorrido seguramente acabes lidiando con distintas técnicas de gestión de errores. A continuación os dejo una chuleta u hoja de trucos que puede servir como referencia. ¡Espero que os sea útil!

0
0 132
Artículo Muhammad Waseem · dic 9, 2021 3m read


En este artículo, mostraré los conceptos básicos de la autenticación OAuth2 con la cuenta de GitHub con la ayuda de la demostración online
https://dappsecurity.demo.community.intersystems.com/csp/user/index.csp usando SuperUser | SYS

Recomendaciones:

A continuación, necesitamos 3 pasos:

  • Paso 1: Registrar la aplicación con el servidor de autenticación de GitHub
  • Paso 2: Configurar el cliente OAuth 2.0 desde el portal de administración de InterSystems
  • Paso 3: Llamar a la API para iniciar sesión con una cuenta de GitHub

Así que... ¡empecemos!

0
0 517
Artículo Mathew Lambert · mar 25, 2020 6m read

¡Hola Comunidad!

Creo que hoy en día todo el mundo guarda el código fuente de sus proyectos en repositorios como Github, GitLab, bitbucket, etc. Lo mismo sucede con proyectos de InterSystems IRIS, se pueden ver algunos ejemplos en Open Exchange.

¿Qué hacemos cada vez que empezamos o continuamos nuestro trabajo con un repositorio en particular con la plataforma de datos InterSystems?

1
1 931
Artículo Dani Fibla · jun 5, 2024 4m read

Mi intención es mostrar lo sencillo que es generar una tabla de búsqueda teniendo en cuenta la información que llega en nuestra mensajería HL7, ciertamente la tabla de búsqueda de mensajes HL7 que proporciona IRIS es suficiente para la mayoría de las búsquedas que queremos hacer, pero siempre tenemos aquel campo especial de nuestro HIS, LIS, RIS, etc.

2
1 251
Artículo Kurro Lopez · abr 14, 2025 15m read

Como todos sabemos, InterSystems es una gran empresa.

Sus productos pueden ser tan útiles como complejos.

Sin embargo, a veces nuestro orgullo nos impide admitir que quizá no entendamos algunos conceptos o productos que InterSystems nos ofrece.

Hoy comenzamos una serie de artículos que explican, de forma sencilla y clara, cómo funcionan algunos de los complejos productos de InterSystems.

En este ensayo, aclararé qué es el Machine Learning y cómo aprovecharlo... porque esta vez, SABRÁS con certeza de qué estoy hablando.

0
0 92
Artículo Dani Fibla · feb 26, 2020 1m read

No pretendo decir que esto sea una guía de "buenas prácticas", pero estoy en una situación particular en la que necesito impedir que los usuarios inicien una producción de Ensemble “retirada” en un namespace renombrado. Sigue siendo un namespace activo, por lo que debemos mantenerlo disponible para acceder al visor de mensajes... afortunadamente, solo por un tiempo.

Es un truco …

Abrimos la clase de la Producción en el estudio y añadimos el siguiente ClassMethod:

ClassMethod OnStart() As %Status
{
    Return $system.Status.
0
0 212
Pregunta Robert Cemper · ago 30, 2020

Causado por un conflicto en la asignación del puerto, obtengo esta entrada en messages.log y SMS ya no responde:

08/30/20-12:56:40:714 (15232) 1 [Utility.Event] Private webserver may not start on port 52773, may be in use by another instance
08/30/20-12:56:40:737 (15232) 0 [Utility.Event] Private webserver started on 52773

La primera línea es correcta,
La segunda es solo ilusión. sad "Fake News"

¿Cómo puedo reiniciar mi servidor SMP sin una secuencia de reinicio / parada completa de IRIS? 

¿Principalmente en WINDOWS?

1
0 153
Anuncio Esther Sanchez · nov 18, 2022

¡Hola desarrolladores!

Fue un auténtico placer encontrarnos en persona en el 1er Encuentro de la Comunidad de Desarrolladores. ¡Y fue un honor ver la sala llena! Lo pasamos muy bien y aprendimos muchas cosas. ¡Y os echamos de menos a todos los que no pudisteis venir!

Muchísimas gracias a todos los que estuvisteis y especialmente a nuestros amigos de Roche Diagnostics y Arisnova por las presentaciones tan interesantes que hicieron.

Gracias también a @Anastasia.Dyubayloy @Evgeny Shvarov por acompañarnos.

¡Y enhorabuena a Mario del Pozo, por su premio en el Kahoot! 👏

¡Estamos deseando volver a veros!

Algunas fotos del evento ⬇️

2
0 160
Anuncio Sergio Farago · mar 17, 2025

¡Hola desarrolladores! 

Os invitamos a un nuevo webinar en español: "Conectando sensores con InterSystems IRIS" el jueves 03 de abril, a las 4:00 PM (CEST).

 

En este webinar veremos cómo capturar información de sensores hacia InterSystems IRIS. Gracias a esta recolección de datos se abren numerosas posibilidades que exploraremos de la mano de Jairo Ruiz, uno de nuestros expertos Sales Engineer de Colombia.

Webinar dirigido a Desarrolladores, analistas de integración y todos aquellos interesados en las posibilidades de la tecnología InterSystems :)

¡Os esperamos!

0
0 75
Artículo Jose-Tomas Salvador · mayo 18, 2023 4m read

En este breve artículo me gustaría compartir un par de estrategias para ejecutar el código Objectscript en modo depuración.

Cómo entrar en el modo depuración

Hay dos formas de lanzar el depurador.

Lanzando un comando

Supongamos que tenemos que depurar el siguiente método:

Class Custom.Example Extends %RegisteredObject
{

/// check if a string can be a valid STP code ("STP" + 13 digits)
/// w ##class(Custom.Example).
0
0 114
Artículo Ricardo Paiva · ene 12, 2023 11m read

Visual Studio Code (VS Code) es el editor de códigos más popular del mercado. Fue creado por Microsoft y distribuido como IDE gratuito. VS Code es compatible con docenas de lenguajes de programación, incluido ObjectScript.

Hasta 2018, Atelier (basado en Eclipse), se consideraba una de las principales opciones para desarrollar los productos de InterSystems. Sin embargo, en diciembre de 2018, cuando la Comunidad de Desarrolladores de InterSystems lanzó el soporte para VSCode, una parte relevante de los profesionales de InterSystems comenzaron a utilizar este editor y lo siguen haciendo desde entonces, especialmente los desarrolladores que trabajan con nuevas tecnologías (Docker, Kubernetes, NodeJS, Angular, React, DevOps, Gitlab, etc.).

Algunas de las mejores características de VSCode son las funciones de depuración. Por eso, en este artículo mostraré en detalle cómo depurar un código ObjectScript, incluido el código de clase y el código %CSP.REST.

0
0 395
Artículo Mathew Lambert · feb 28, 2020 2m read

¡Hola Comunidad!

ObjectScript tiene al menos tres formas de manejar errores (códigos de estado, excepciones, SQLCODE, etc...). La mayor parte del código del sistema usa estados, pero las excepciones son más fáciles de manejar por varias razones. Al trabajar con código heredado, se invierte un tiempo en traducir las distintas técnicas. Yo uso mucho estos fragmentos de código como referencia. Espero que también os sean útiles.

///Status from SQLCODE:
set st = $$$ERROR($$$SQLError, SQLCODE, $g(%msg))  //embedded SQL
set st = $$$ERROR($$$SQLError, rs.%SQLCODE, $g(
4
1 426
Artículo Kurro Lopez · mayo 21, 2024 10m read

Siguiendo con la serie de artículos sobre gestión de archivos de voz, vamos a ver cómo podemos convertir texto en audio y recibir el archivo con la voz elegida.
También exploraremos cómo un servicio de OpenAI puede ayudarnos a analizar un texto y determinar el estado de ánimo expresado en él.
Analicemos cómo puedes crear tu propio archivo de voz y cómo puede "leer" tus sentimientos.

0
0 129
Artículo Alberto Fuentes · dic 17, 2025 3m read

🚀 Un ejemplo práctico integrando REST, CSV, bases de datos y servicios SOAP

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í:

0
0 59