¡Hola comunidad!

Esta publicación es una introducción a mi aplicación iris-fhir-client en Open Exchange.

Usando Python embebido y con la ayuda de la librería fhirpy, iris-fhir-client puede conectarse a cualquier servidor FHIR abierto.
Obten información de recursos por terminal y mediante el uso de la aplicación web CSP.

0 0
0 232

¡Hola desarrolladores!

Gracias a todos los que habéis empezado el desarrollo con InterSystems IRIS desde la plantilla de desarrollo básico!

Recientemente, gracias a las contribuciones de @Dmitry Maslennikov, he actualizado el Dockerfile para hacer el desarrollo más sencillo, las imágenes más ligeras y el proceso de construcción más rápido. Y también parece más bonito ;)

Esto es lo que ha cambiado:

1 0
0 125

En este artículo, crearemos una configuración de IRIS con alta disponibilidad utilizando implementaciones en Kubernetes con almacenamiento persistente distribuido en vez del "tradicional" par de mirror de IRIS. Esta implementación sería capaz de tolerar fallos relacionados con la infraestructura, por ejemplo, fallos en los nodos, en el almacenamiento y en la Zona de Disponibilidad. El enfoque descrito reduce en gran medida la complejidad de la implementación, a costa de un Tiempo Objetivo de Recuperación (RTO, Recovery Time Objective) ligeramente mayor.

0 1
0 300
Artículo
· 26 mayo, 2022 Lectura de 1 min
Un vistazo al explorador de ZPM (zpm-explorer)

Un aspecto muy interesante de los datos es que siempre podemos descubrir algo nuevo.

Con esa idea en mente, hemos creado una nueva página para mostrar un poco más del interior de ZPM!

Para publicar una aplicación en ZPM, se necesita el archivo module.xml. Dentro del archivo, tenemos unas pocas etiquetas que ofrecen buena información que puede ser muy útil para nosotros.

Del endpoint https://pm.community.intersystems.com/packages/{package}/{version}/manifest extraemos dos cosas: palabras clave/etiquetas y Dependencias.

0 0
0 128
Artículo
· 25 mayo, 2022 Lectura de 2 min
El explorador de ZPM (zpm-explorer)

¡Hola Comunidad!

@José Pereira y yo queremos presentaros ZPM Explorer, nuestra interfaz gráfica para explorar las excelentes aplicaciones que hay en InterSystems Package Manager.

La idea

La idea de un explorador de ZPM es facilitar a las personas encontrar lo que ZPM ofrece. Cada semana, cada día, una nueva app se une al mundo ZPM, así que... ¿por qué no ayudar a los desarrolladores y no-desarrolladores a aprovechar las ventajas de este increíble mundo?!

0 0
0 133

InterSystems IRIS Business Intelligence te permite mantener actualizados tus modelos analíticos o cubos de varias formas. Este artículo tratará sobre Construir/Generar vs Sincronizar. Hay maneras de actualizar manualmente los cubos, pero son casos muy especiales y casi siempre los cubos se mantienen actualizados por medio de la (Re)construcción o la sincronización.

¿Qué es Construir?

0 1
0 102
Artículo
· 11 ago, 2021 Lectura de 3 min
Cómo aprovechar al máximo $Query

Me encontré con un interesante caso de uso de ObjectScript con una solución general que quería compartir.

Caso de uso:

Tengo una matriz JSON (específicamente, en mi caso, una matriz de problemas de Jira) que quiero agregar en algunos campos, por ejemplo: categoría, prioridad y tipo de problema. Después quiero combinar los agregados en una lista simple con el total de cada uno de los grupos. Por supuesto, para la agregación, tiene sentido utilizar una matriz local en el formulario:

3 1
0 156
Artículo
· 16 mayo, 2022 Lectura de 3 min
¿Cómo de segura es una contraseña?

¿Cómo podemos comprobar si una contraseña es suficientemente segura, para evitar que sea descifrada? ¿Y cómo podemos crear una contraseña segura?

He desarrollado una herramienta que puede ayudar con esto. Puedes encontrarla en OpenExchange. Instálala con zpm

zpm "install passwords-tool"

Este módulo instalará solo una clase caretdev.Passwords, que contiene algunos métodos que pueden ayudarte.

0 0
0 211
Artículo
· 14 ene, 2022 Lectura de 6 min
Configuración del entorno con config-api

Hola desarrolladores,

Escribir un script para el despliegue de una aplicación puede ser muy interesante para garantizar un despliegue rápido sin olvidarse de nada.
config-api es una biblioteca para ayudar a los desarrolladores a escribir scripts de configuración basados en un documento JSON.

Características implementadas:

1 1
0 141

¡Hola desarrolladores!

A veces necesitamos insertar o referir los datos de clases directamente en globals.

Y quizá muchos de vosotros esperáis que la estructura de datos de una global con registros sea:

^Sample.Person(Id)=$listbuild("",col1,col2,...,coln).

Este artículo es un aviso de que esto no siempre es verdad, así que no se debe dar por supuesto!

0 0
0 146
Artículo
· 5 mayo, 2022 Lectura de 2 min
Cómo obtener información de FHIR usando SQL

¡Hola desarrolladores!

En mis artículos anteriores, una de las cosas más interesantes de FHIR que mencioné es el amplio rango de posibilidades que tenemos y no solo para crear algo, sino las maneras de conseguir este objetivo.

En mis artículos estoy compartiendo mi experiencia trabajando con FHIR. Solo usaba los Recursos FHIR aportados por la API. Recuperando y actualizando los Recursos FHIR en el servidor FHIR usando javascript con la ayuda de fhir.js

1 0
0 97
Artículo
· 3 mayo, 2022 Lectura de 14 min
Depuración tradicional en ObjectScript

Encontrar errores en tu código o examinar un comportamiento inesperado es el principal objetivo de la depuración.

Trataré de actualizar las herramientas tradicionales aparte de las ayudas que tienen Studio, VScode, Serenji... Las herramientas básicas que han estado ahí antes de que tu EDI preferido lo utilizara en segundo plano.

1 0
2 140
Artículo
· 27 abr, 2022 Lectura de 3 min
¿Qué o quién está consumiendo mis licencias?

De vez en cuando, recibimos la pregunta anterior en soporte, algo o alguien está usando más licencias de las esperadas y necesitamos encontrar qué está pasando.

Tenemos dos escenarios. El primer escenario es cuando nos damos cuenta que las licencias están agotadas porque la aplicación no funciona o porque intentamos conectarnos a través del terminal y sale el "encantador" mensaje <LICENSE LIMIT EXCEEDED>:

2 0
0 186

Con el lanzamiento de InterSystems IRIS 2021.2 Preview y la nueva funcionalidad LOAD DATA, los conjuntos de datos se pueden añadir con Objectscript Package Manager (ZPM)

Medical Datasets contiene los siguientes 12 conjuntos de datos. Para tablas de conjuntos de datos y detalles de datos, echa un vistazo a la Demo online, usando SuperUser | SYS

0 0
0 54

En este artículo, explicaré el uso de las tablas %SQL_Diag.Result y %SQL_Diag.Message junto con la nueva funcionalidad LOAD DATA.

Se recomienda revisar primero la documentación LOAD DATA.

Después del éxito de una operación, LOAD DATA inserta un registro en la tabla %SQL_Diag.Result y los detalles se insertan en la tabla %SQL_Diag.Message

A continuación se muestra el comando básico cuando la tabla ya está creada y el archivo de origen no contiene una fila de encabezado.

LOAD DATA FROM FILE 'C://TEMP/mydata.txt' 
INTO MyTable

El nombre del archivo debe incluir un sufijo .txt o .csv (valores separados por comas) y tanto el origen como el destino tienen la misma secuencia de columnas de datos.

0 0
0 115

Hace poco he empezado a utilizar más Docker Desktop en mi equipo con Windows 11, sobre todo junto con la extensión Remote - Containers de VS Code y el repositorio iris-python-template de @Guillaume Rongier

A veces el contenedor se inicia sin problemas, pero otras veces falla y reporta que no puede usar un puerto.

Al final, localicé el problema. Aparentemente, el servicio Windows NAT Driver utiliza un OS facility para reservar un gran rango de puertos.

0 0
0 302
Artículo
· 22 abr, 2022 Lectura de 3 min
Cómo actualizar el Recurso Paciente usando fhir.js

¡Hola Comunidad!

Compartí mi experiencia trabajando por primera vez con FHIR en este artículo.

En esa publicación, escribí cómo exploré los recursos FHIR y comenté la información que encontré útil en la documentación FHIR.

La primera versión de mi app solo muestra la información que ofrecen los Recursos FHIR.

Quería hacer que el usuario pudiera actualizar los detalles del paciente, así que busqué un ejemplo de cómo hacerlo.

0 0
0 133

Hay varias maneras de generar ficheros Excel usando tecnología InterSystems: por ejemplo utilizando informes generados con InterSystems Reports, o los antiguos informes ZEN, o incluso haciendo uso de librerías Java de terceros. Las posibilidades son casi infinitas.

Pero, ¿qué pasa si quieres crear una sencilla hoja de cálculo sólo con ObjectScript? (sin aplicaciones de terceros)

En mi caso, necesito generar informes que contengan muchos datos sin procesar (a los financieros les encantan), pero mi antiguo informe ZEN fallaba y me da lo que me gusta llamar un "archivo con cero bytes". Básicamente, Java se queda sin memoria y provoca una sobrecarga en el servidor de informes.

0 0
0 150

Encontré este pequeño artículo de @Brendan Bannon de hace unos años... pero creo que es muy útil para cuando tengamos estructuras de almacenamiento basadas puramente en globals y queramos tener la posibilidad de acceder a ellas desde el punto de vista de Objetos y/o Relacional.

El fichero ZIP adjunto contiene un paquete de ejemplos de mapeos SQL Storage (válido para IRIS y Caché) que he hecho y recopilado a lo largo de estos años.

0 0
0 104
Artículo
· 19 abr, 2022 Lectura de 3 min
Migración de Base de Datos usando SQLgateway

Gracias a @Yuri Marx hemos visto un buen ejemplo de Migración de Bases de datos de Postgres a IRIS.
Mi problema personal es el uso de DBeaver como una herramienta de migración.
En especial, como una de las fortalezas de IRIS (y también Caché) es la disponibilidad de los SQLgateways que permiten el acceso a cualquier base de datos externa, siempre y cuando se puedan acceder usando ODBC/JDBC. Así que he ampliado el paquete para demostrarlo.

1 0
0 180
Artículo
· 18 abr, 2022 Lectura de 2 min
Python Embebido, usando parámetros de salida

Antecedentes

En las versiones de InterSystems IRIS >=2021.2 podemos usar irispython para escribir directamente código python encima de nuestras instancias IRIS. Esto nos permite usar paquetes de python, llamar a métodos, hacer consultas SQL y hacer casi cualquier cosa en Objectscript excepto pythonic.

Por ejemplo, a continuación compruebo si hay un namespace:

0 0
0 147
Artículo
· 5 abr, 2022 Lectura de 5 min
Cómo gestionar la configuración del contenedor

Si estás implementando más de un entorno/región/nube/cliente, inevitablemente te encontrarás con el problema de la gestión de la configuración.

Aunque todas (o solo varias de) tus implementaciones pueden compartir el mismo código fuente, algunas partes, como la configuración (ajustes, contraseñas) son diferentes de una implementación a otra y se deben gestionar de alguna manera.

En este artículo, intentaré ofrecer varios consejos sobre ese tema. Y comentaré principalmente las implementaciones de los contenedores.

0 0
0 128

¿Te suenan OAuth2 / OpenID Connect pero no estás seguro de cómo se utilizan? ¿Has necesitado implementar alguna vez Single Sign On, servicios web seguros basados en tokens? ¿Has necesitado incorporar autenticación / autorización a tus aplicaciones web o servicios y no sabías por dónde empezar?

1 2
0 195
Artículo
· 1 abr, 2022 Lectura de 1 min
$ZTIMESTAMP in hora local

Con el reciente cambio de horario en España me surgió esta duda:

¿Como obtenéis un $ZTIMESTAMP en horario local?.

He encontrado esta forma y funciona:

 Set LocalTimestamp=$ZDATETIMEH($ZTIMESTAMP,-3)

¿Conoces alguna forma mejor de hacerlo?

0 0
0 87

¡Hola desarrolladores!

Para el concurso de Opendataset he desarrollado una aplicación, en formato docker, que utiliza InterSystems IRIS y Openflights Dataset en un contenedor y un segundo contenedor con Apache Zeppelin. Puedes encontrar los detalles aquí: https://github.com/andreas5588/openflights_demo

1 0
0 82