Hola Comunidad:
En este artículo, enumero 5 funciones bastánte útiles de SQL, con sus explicaciones y algunos ejemplos de consultas👇🏻
Las 5 funciones son:
- COALESCE
- RANK
- DENSE_RANK
- ROW_NUMBER
- Función para obtener totales acumulados
¡Empezamos!
Hola Comunidad:
En este artículo, enumero 5 funciones bastánte útiles de SQL, con sus explicaciones y algunos ejemplos de consultas👇🏻
Las 5 funciones son:
¡Empezamos!
Hola comunidad.
Hemos desarrollado una nueva versión de una producción, todo el código es nuevo y ha cambiado BP. Esta aplicación carga información para algunas marcas y la almacena en la base de datos.
El cliente quiere implementar los cambios solo para algunas marcas porque quiere verificar las marcas pequeñas antes de implementarlos para todas las marcas.
Mi propuesta es crear un nuevo namespace, con el nuevo código, y deshabilitar todas las marcas excepto la marca que quiere probar.
Me pregunto cuál es la mejor manera de clonar el namespace.
Tenemos un conjunto de datos bastante apetecible con recetas escritas por múltiples usuarios de Reddit, sin embargo, la mayor parte de la información está en texto libre en forma de título y descripción de un mensaje. Vamos a averiguar cómo podemos, de forma muy sencilla, cargar los datos, extraer algunas características y analizarlos empleando funcionalidades de LLM (Large Language Model) de OpenAI desde Python Embebido y el framework Langchain.
¡Hola desarrolladores!
Os invitamos a un nuevo webinar en español: "OAuth 2.0, OpenID Connect y LDAP: Cómo controlar el acceso a los recursos FHIR", el jueves 1 de febrero, a las 4:00 PM (CET).
¡Hola Comunidad!
Ya hay más de 800 aplicaciones disponibles para descargar en Open Exchange.
Y ha llegado el momento de anunciar las apps más descargadas y los mejores desarrolladores de 2023!
.jpg)
Estos son los héroes y sus apps:
¡Hola Comunidad!
Estamos encantados de anunciar que hemos creado en Global Masters un nuevo grupo de retos llamado "Global Masters en español" 👏
En el nuevo grupo encontraréis contenido relacionado con la tecnología de InterSystems: artículos, noticias, vídeos, preguntas tipo "Trivial"... todo en castellano.
Para entrar en él, solo tenéis que acceder a Global Masters desde el menú de la página de inicio de la Comunidad:
Una vez allí, id al apartado "Retos" en el menú y veréis la nueva carpeta:
Nueva jornada de la Quiniela, vamos con los partidos que entran este fin de semana:
.png)
Veamos cuales son las probabilidades de cada resultado para la Primera División:
.png)
Y para Segunda División:
.png)
Así que esta es nuestra apuesta para esta jornada:
.png)
Seguramente todos habéis oido hablar de FHIR como la panacea y solución a todos los problemas de interoperabilidad y compatibilidad entre sistemas. Aquí mismo podemos ver a uno de sus clásicos defensores sujetando un recurso FHIR con su mano y disfrutando desaforadamente:
.png)
Pero para el resto de los mortales vamos a hacer una pequeña introducción.
Para resolver el error <PROTECT>, hay que eliminar el atributo de solo lectura de la base de datos de la biblioteca de todo el sistema (IRISLIB para InterSystems IRIS, CACHELIB para Caché/Ensemble/HealthShare (basado en Caché))
Una vez se haya terminado de importar la rutina, hay que acordarse de volver a cambiarla a solo lectura.
[Versión 2013.1 y superior]
[Portal de Gestión] > [Administración] > [Configuración] > [Configuración de Sistema] > [Bases de Datos Local] Desmarcad "Mount Read-Only" (Montar solo lectura) en el enlace del nombre de la base de datos.
.png)
Si el sistema no se para durante 24 horas, los archivos journal serán eliminados a las 0:30 según la "Configuración de la eliminación de archivos journal".
Una posible causa de que los archivos journal permanezcan más tiempo del establecido en la "Configuración de la eliminación de archivos journal" es que hay transacciones que permanecen abiertas.
En ese caso, se podrá eliminar el archivo journal buscando procesos que estén ejecutando transacciones y finalizando las transacciones.
¿Sabíais que se pueden obtener datos JSON directamente de las tablas SQL?
Dejadme que os presente dos útiles funciones de SQL, que se utilizan para recuperar datos JSON de consultas SQL - JSON_ARRAY y JSON_OBJECT.
Podéis usar esas funciones en la sentencia SELECT con otros tipos de elementos de selección, y se pueden especificar en otras ubicaciones en las que se puede utilizar una función SQL, como en una condición WHERE.
La función JSON_ARRAY toma una lista de expresiones separadas por comas y devuelve una matriz JSON conteniendo esos valores.
Para vuestra comodidad, InterSystems está publicando los pasos de instalación característicos de los sistemas operativos que son compatibles con InterSystems IRIS.
Para Microsoft Windows, consultad por favor la documentación de producto de InterSystems.
El instalador de IRIS detectará si hay un servidor web instalado en la misma máquina, lo que da la opción de tener configurado automáticamente el servidor web.
Todas las instalaciones de Apache requerirán permiso de sudo (recomendado) o de root para instalar el servidor web. Este requisito es compatible con las mejores prácticas recomendadas.
¡Hola Comunidad!
Ya podemos anunciar los Mejores Colaboradores de la Comunidad de Desarrolladores en 2023 🎉
Dividimos en cuatro categorías a los autores más activos en el total de Comunidades (EN, ES, PT, JP, CN y FR):
.jpg)
Creo que ésta es una forma bastante interesante de instalar un terminal web en un entorno en el que puedes acceder al Portal de Gestión/Visual Studio Code, pero no al terminal.
En este caso, zpm ya estaba presente. En caso contrario, se puede instalar también en la misma clase.
Si os habéis fijado nuevos propósitos de formación para 2024, aseguraos de no perderos nuestros cursos más populares de 2023!

¡Hola Comunidad!
Estamos muy contentos de compartir por primera vez las Estadísticas Anuales y los Mejores Colaboradores del Portal de Ideas de InterSystems durante 2023 🌟
.jpg)
¡Hola desarrolladores!
Ya tenemos el listado de vídeos más vistos durante 2023 en el canal de YouTube de la Comunidad de Desarrolladores en español.
¿Los habéis visto todos? ¡Mirad el "top 5" por número de visualizaciones y por tiempo de visualización! ⬇️
| Top 5 vídeos por visualizaciones | ||
| № | Vídeo | Visualizaciones |
| 1 | Webinar 5: Comienza a trabajar con FHIR | 1 438 |
| 2 | Tutorial 3: Trabajando con contenedores Docker y VS Code | 252 |
| 3 | Webinar 19: Despliegues en Kubernetes con Alta Disponibilidad | 194 |
| 4 | Tutorial 1: Cómo arrancar un contenedor de InterSystems IRIS en Docker | 170 |
| 5 | Webinar 21: Validación de perfiles FHIR con InteSystems IRIS for Health | 139 |
| Top 5 vídeos por tiempo de visualización | ||
| № | Vídeo | WT (horas) |
| 1 | Webinar 5: Comienza a trabajar con FHIR | 214,2 |
| 2 | Webinar 4: Implementar integraciones con NET o Java sobre InterSystems IRIS | 20,9 |
| 3 | Webinar 19: Despliegues en Kubernetes con Alta Disponibilidad | 17,8 |
| 4 | Webinar 9: ¿Qué necesitas para empezar con InterSystems IRIS y VS Code? | 17,5 |
| 5 | Webinar 3: Interoperabilidad - Herramientas de productividad HL7 | 14,7 |
Actualmente, muchos artistas digitales utilizan la tecnología de IA generativa como soporte para acelerar la entrega de sus trabajos. Hoy en día es posible generar una imagen correspondiente a partir de una frase de texto. Existen varias soluciones en el mercado para esto, incluidas algunas disponibles para ser utilizadas a través de API. Mira algunos en este enlace: https://www.analyticsvidhya.com/blog/2023/08/ai-image-generators/.
Creé una nueva aplicación para usar en IRIS aprovechando una de estas API. Elegí la API Imagine.
Hola comunidad,
Cuando utilizamos un Business Servicio de tipo SQL, puede suceder que necesitemos replicar ciertas filas de la tabla original.
Tomemos como ejemplo el Business Service "from customer SQL" usando la clase genérica EnsLib.SQL.Service.GenericService
.png)
Surgen diferentes casos, dependiendo de la configuración utilizada en este Business Service.
Primer caso:
Si el Business Service solo usa un KeyFieldName
.png)
.png)
En este caso, para reprocesar los IDs 123,456 y 789, bastará con eliminarlos de la variable global ^Ens.AppData del Business Service correspondiente en la referencia "adaptor.
Si se establece una relación y hay una gran cantidad de n en una proporción de 1:n, se puede consumir una gran cantidad de memoria debido al procesamiento secuencial de la relación.
Después de hacer referencia a un objeto de muchos lados en un programa y cambiarlo internamente, simplemente liberar la variable que contiene el OREF (eliminarla, establecer otro valor, etc.) no liberará el objeto de muchos lados ni el objeto de relación. Ésta es la causa.
La base de datos documental de InterSystems IRIS (DocDB) ofrece un enfoque flexible y dinámico para gestionar datos. DocDB aprovecha el poder de JSON (JavaScript Object Notation), proporcionando un entorno sin esquemas para el almacenamiento y la recuperación de datos.
Es una herramienta poderosa que permite a los desarrolladores evitar un montón de código repetitivo cuando se interactúra con aplicaciones existentes, serialización, paginación e integración. La sencillez del uso de DocDB con los servicios y operaciones API REST permite mejorar en la producción y gestión de APIs.
Aquí podéis revisar la documentación oficial. En este artículo mostraremos un caso de uso en el que DocDB encaja perfectamente.
La invención y popularización de LLMs (Large Language Models) como GPT-4 de OpenAI ha desencadenado una ola de soluciones innovadoras que permiten aprovechar grandes volúmenes de datos no estructurados, que eran prácticamente imposibles de procesar manualmente hasta hace poco. Estas aplicaciones pueden incluir la recuperación de datos (echad un vistazo al curso sobre ML301 de Don Woodlock, con una excelente introducción a la Generación Aumentada de Recuperación), el análisis de sentimientos, e incluso agentes de IA totalmente autónomos, por nombrar sólo algunos ejemplos!
En este artículo, quiero demostrar cómo la funcionalidad de Python Embebido de IRIS puede ser utilizada para interactuar directamente con la librería Python de OpenAI, a través de la creación de una sencilla aplicación de etiquetado de datos que asignará automáticamente palabras clave a los registros que metamos en una tabla de IRIS. Estas palabras clave pueden después ser usadas para buscar y categorizar los datos, así como para analítica de datos. Utilizaré reseñas de productos realizadas por clientes como ejemplo de caso de uso.
InterSystems se complace en anunciar la disponibilidad general de InterSystems IRIS Cloud SQL e InterSystems IRIS Cloud IntegratedML, dos servicios fundamentales para el desarrollo de soluciones nativas en la nube, con la fiabilidad y el rendimiento probado y de primer nivel de la tecnología de InterSystems IRIS.
InterSystems IRIS Cloud SQL es un servicio en la nube completamente administrado que acerca, a un amplio público de desarrolladores de aplicaciones y profesionales de datos, la potencia de las capacidades de InterSystems IRIS como base de datos relacional, usada por miles de organizaciones. InterSystems IRIS Cloud IntegratedML es una opción de "base de datos como servicio" (DBaaS), que ofrece un acceso sencillo a potentes funcionalidades de Machine Learning de forma nativa SQL, mediante un conjunto de sencillos comandos SQL que se pueden integrar fácilmente en el código de las aplicaciones para enriquecerlas con modelos de ML que se ejecutan cerca de los datos.
Retomamos con el nuevo año las predicciones de la Quiniela, siendo este fin de semana las jornadas correspondientes a la 20ª de Primera División y a la 22ª de Segunda División.
Los partidos que conforman la Quiniela son los siguientes:
.png)
Las predicciones para la Primera División son las siguientes:
.png)
Y para la Segunda División:
.png)
Por lo que la predicción de la Quiniela es esta:
.png)
Y para los que juguéis con apuestas dobles:
Mallorca - Celta: 1X
Sporting - Huesca: 12
Andorra - Leganés: 12
¡Hola desarrolladores!
Os invitamos a un nuevo concurso de programación de InterSystems, dedicado a todo lo relacionado con la salud.
🏆 InterSystems FHIR e Interoperabilidad en Salud Digital 🏆
Duración: 15 enero - 5 febrero, 2023
Total en premios: $14,000
Al empezar el desarrollo con IRIS tenemos un kit de distribución o, en el caso de Docker, obtenemos la imagen Docker y después a menudo tenemos que iniciarla y configurar el entorno de desarrollo. Puede que necesitemos crear bases de datos, namespaces, activar/desactivar algunos servicios, crear recursos. Muchas veces necesitamos importar el código y los datos a la instancia de IRIS y ejecutar algún código personalizado para iniciar la solución.
![]()
Parece que fue ayer cuando hicimos un pequeño proyecto en Java para probar el rendimiento de IRIS, PostgreSQL y MySQL (podéis revisar el artículo que escribimos allá por Junio al final de este artículo). Si recordáis IRIS se mostró superior a PostgreSQL y claramente superior a MySQL en las inserciones, no habiendo gran diferencia en las consultas.
Poco después @Dmitry Maslennikov me dijo "¿Por qué no pruebas desde un proyecto en Python?" pues bien, aquí está la versión en Python de las pruebas que realizamos mediante las conexiones JDBC previamente.