¡Hola Comunidad!

A menudo, las soluciones con InterSystems IRIS BI pueden convertirse en soluciones bastante grandes con docenas de tablas dinámicas y cuadros de mando.

Con cada nueva versión de IRIS BI podemos añadir cambios que pueden influir en el comportamiento de las tablas dinámicas y cuadros de mando existentes y que dejen de funcionar. Por ejemplo, si cambiamos el nombre de una medida o dimensión, olvidamos desplegar cubos o realizamos reestructuraciones con cambios masivos del nombre de los cubos y sus elementos, algunos widgets podrían dejar de funcionar.

La solución es probar (¿manualmente?) cada widget en cada cuadro de mando para asegurarnos de que las consultas MDX están funcionando.

Hoy quiero presentaros una herramienta para probar automáticamente todas las tablas dinámicas y los cuadros de mando.

1 0
0 26
Artículo
· 1 jun, 2023 Lectura de 5 min
Memoria ocupada por las tablas de IRIS

Introducción

Entre las diversas soluciones que desarrollamos en Innovatium, un desafío habitual es la necesidad de acceder al tamaño de las bases de datos. Entonces me di cuenta de que eso no es algo tan trivial en IRIS. Ese tipo de información es importante para mantener un control del flujo de datos y del coste en gigabytes de un sistema para implementar. Sin embargo, lo que realmente me llamó la atención fue la necesidad de eso para algo muy importante: la migración a la nube. Al final, ¿quién no quiere migrar sus sistemas a la nube hoy en día?

0 0
0 26

Preguntas frecuentes de InterSystems

Cómo configurar las páginas de error individuales para los siguientes mensajes de error/respuestas del Web Gateway:

  • Error del Servidor
  • Servidor ocupado
  • Servidor no disponible
  • Tiempo de espera del servidor
  • Conexión cerrada

Los ajustes se realizan en la pantalla Administración del Portal de Gestión ([Administración] > [Configuración] > [Gestión del Web Gateway] > [Configuración] > [Parámetros predeterminados]).

1 0
0 25
Artículo
· 25 ago, 2023 Lectura de 4 min
QuinielaML - Usando autenticación JWT

Aprovechando la aplicación de Quiniela ML y como indicamos en el artículo anterior vamos a explicar como podemos realizar una autenticación JWT entre nuestro frontend desarrollado en Angular y nuestro backend desarrollado en InterSystems IRIS.

Os recuerdo como es la arquitectura de nuestro proyecto de QuinielaML:

1 0
0 24

¡Hola Comunidad!

Me alegra anunciar la nueva versión de iris-pex-embedded-python (v2.3.1) con una nueva interfaz de línea de comandos.

Esta línea de comandos se llama iop por Interoperability On Python.

Primero me gustaría presentar los principales cambios del proyecto desde la versión 1.

Breve historia del proyecto

La versión 1.0 fue una prueba de concepto para mostrar cómo el framework de interoperabilidad de IRIS se puede utilizar con un enfoque python first mientras sigue siendo compatible con cualquier código existente de ObjectScript.

¿Qué significa eso? Significa que cualquier desarrollador Python puede usar el framework de interoperabilidad de IRIS sin ningún conocimiento de ObjectScript.

Ejemplo:

from grongier.pex import BusinessOperation

class MyBusinessOperation(BusinessOperation):

    def on_message(self, request):
        self.log.info("Received request")

Genial, ¿cierto?

0 0
0 24
Artículo
· 18 ago, 2023 Lectura de 2 min
Cómo comparar globales y rutinas en dos bases de datos

Preguntas frecuentes de InterSystems

Utilice este método si desea comparar bases de datos que se han replicado mediante mirror, shadow o algún otro mecanismo

Puede utilizar la utilidad DATACHECK para comparar variables globales. Consulte el documento a continuación.

Descripción general de DataCheck [IRIS]

***

Las comparaciones de rutinas usan la rutina del sistema %RCMP o el Portal de administración.

1 0
0 24
Artículo
· 20 sep, 2023 Lectura de 1 min
Cómo sobrecargar métodos en ObjectScript

Preguntas frecuentes de InterSystems

El lenguaje ObjectScript de InterSystems no permite definir métodos con el mismo nombre pero utilizando diferentes argumentos.

En general, se suele clasificar Objectscript como un lenguaje de programación dinámico. En ObjectScript se puede controlar libremente qué argumentos se utilizan cuando se ejecuta un método, así que a diferencia de otros lenguajes como Java, que no son lenguajes de programación dinámicos, no es necesario distinguir estrictamente los métodos por el número de argumentos en la fase de compilación.

El lenguaje ObjectScript, por tanto, no contiene la característica conocida como overloading o sobrecarga como tal.

0 0
0 24
Artículo
· 25 mayo, 2023 Lectura de 1 min
Configuraciones de producción

Cuando se desarrollan producciones de interoperabilidad, puede ser útil tener configuraciones fuera de un Business Host. La razón principal es cuando necesitas una configuración que afecte a varios Business Hosts diferentes y quieres garantizar que el valor es el mismo. Aunque las Configuraciones Predeterminadas del Sistema (CPS) pueden ser usadas para propagar configuraciones para Business Hosts, pueden ser cambiadas al anular el valor a nivel de BH (aunque la ventaja de las configuraciones del Business Host definidas a través de las CPS es que no requieren código personalizado, que sí es requerido por nuestro enfoque actual).

Otra razón es cuando necesitas afectar partes no configuradas de la configuración del Business Host (PoolSize, Enabled, etc.)

Añadiremos una configuración env a una producción.

0 0
0 24

Hola de nuevo a todos.

En nuestro artículo anterior vimos como configurar nuestro EMPI para recibir mensajería FHIR. Para ello instalábamos el Adaptador FHIR que InterSystems pone a nuestra disposición que configuraba un endpoint REST al que podíamos enviar nuestro mensaje FHIR. A continuación obteníamos el mensaje y lo transformábamos a un %String que enviábamos vía TCP a la producción de nuestro EMPI configurada en nuestro namespace HSPIDATA.

0 0
0 23
Artículo
· 19 jul, 2023 Lectura de 1 min
Qué es el SSO de InterSystems y cómo se utiliza

¡Hola Comunidad!

Probablemente habéis visto la abreviatura SSO en diferentes sitios web de InterSystems: la Comunidad, el Portal de Formación, Global Masters, etc. Significa Single Sign-On (Inscripción Única), es decir, que necesitáis un único nombre de usuario y contraseña para acceder a todos los recursos del Ecosistema para el Desarrollador de InterSystems.

0 0
0 23

¡Hola Comunidad!

Sabemos que a veces necesitáis encontrar información o a una persona en la Comunidad de Desarrolladores. Para haceros la búsqueda más fácil, os explicamos cómo usar los distintos tipos de búsquedas:

  • Buscar algo en la Comunidad
  • Buscar algo en vuestras publicaciones
  • Buscar a un miembro de la Comunidad por su nombre

0 0
0 23
Artículo
· 25 mayo, 2023 Lectura de 9 min
Descripción de FHIRaaS

Introducción

El propósito de este artículo es ofrecer una visión general de InterSystems IRIS FHIR Accelerator Service (FHIRaaS), motivado por la implementación de la aplicación iris-on-fhir, disponible en OEX y desarrollada para el concurso FHIRaaS.

Es un tutorial básico que os guiará en la configuración de una función para la implementación de FHIRaaS, incluyendo una clave API y un servidor OAuth 2.0.

También mostraré brevemente una librería para utilizar recursos FHIR a través de FHIRaaS.

0 0
0 23

iris-docker-multi-stage-script

Os presentamos un script en Python para mantener a punto tus imágenes de IRIS en Docker ;-)

Sin necesidad de cambiar tu dockerfile o tu código, puedes reducir el tamaño de tu imagen en un 50% o más!

TL;DR

Nombra a tu imagen builder como builder y a la imagen final final y añade esto al final de tu Dockerfile:

Modifica tu Dockerfile para usar un build multi-stage:

ARG IMAGE=intersystemsdc/irishealth-community:latest
FROM $IMAGE as builder

Añade esto al final de tu Dockerfile:

FROM $IMAGE as final

ADD --chown=${ISC_PACKAGE_MGRUSER}:${ISC_PACKAGE_IRISGROUP} https://github.com/grongierisc/iris-docker-multi-stage-script/releases/latest/download/copy-data.py /irisdev/app/copy-data.py

RUN --mount=type=bind,source=/,target=/builder/root,from=builder \
    cp -f /builder/root/usr/irissys/iris.cpf /usr/irissys/iris.cpf && \
    python3 /irisdev/app/copy-data.py -c /usr/irissys/iris.cpf -d /builder/root/ 

¡Boom! ¡Ya está listo!

0 0
0 22
Artículo
· 14 ago, 2023 Lectura de 2 min
Usando la utilidad Populate de IRIS para generar datos

Hola desarrolladores, actualmente estoy haciendo una demostración sobre la creación de una interfaz de usuario haciendo análisis de datos y configurando una prueba de rendimiento con objetos de datos. Por lo tanto, usar la "Utilidad de generación/población" podría ayudarme a generar automáticamente algunos datos de muestra con los que puedo jugar.

1 0
0 21

InterSystems FAQ

Puedes buscar variables globales específicas en el archivo de journals usando la consulta ByTimeReverseOrder de la clase %SYS.Journal.File y la consulta List de la clase %SYS.Journal.Record

El funcionamiento de cada consulta es el siguiente:

0 0
0 20

¡Hola a tod@s!

Sabemos que os unisteis a la Comunidad para conectar con otras personas, aprender, compartir vuestro conocimiento y resolver vuestras dudas. Pero también podéis aprovechar este foro para conocer a otros magníficos profesionales y para daros a conocer vosotros... ¿no os parece una buena idea? Por ello os queríamos preguntar si podríais completar vuestro perfil añadiendo información sobre vosotros en la biografía.

1 0
0 17

¡Volvemos al ataque con nuestro EMPI!

En artículos anteriores hemos visto como configurar y personalizar nuestro EMPI, hemos visto como podemos como podemos incluir nuevos pacientes en nuestro sistema mediante mensajería HL7, pero claro, ¡no todo es HL7 v.2 en esta vida! ¿Cómo podríamos configurar nuestra instancia del EMPI para trabajar con mensajería FHIR?

0 0
0 16
Artículo
· 5 sep, 2023 Lectura de 1 min
Cómo reconstruir el índice por ID

Preguntas frecuentes de InterSystems

De cara a la reconstrucción de los índices de una clase persistente/tabla, hay que utilizar el método %BuildIndices(), proporcionado por dicha clase. Para ello hay que especificar los valores de inicio y fin de los ID para los cuales se quieren reconstruir índices en los argumentos del método.

Por ejemplo, para reconstruir el índice NameIDX y el índice ZipCode en la clase Sample.Person sólo para ID=10 a 20, ejecutad el siguiente código (el rango de ID se especifica en los argumentos quinto y sexto).

1 0
0 15
Artículo
· 4 ago, 2023 Lectura de 2 min
Cómo monitorizar vuestra actividad en la Comunidad

¡Hola Comunidad!

Si queréis saber cómo os va en la Comunidad y ver vuestras estadísticas, no hace falta que vayáis a vuestro perfil y os desplacéis por todas vuestras publicaciones (aunque también es posible). Para mayor comodidad, podéis utilizar el Panel de Estadísticas.

En él podéis ver las estadísticas detalladas de vuestras publicaciones, para los últimos 7 días (pestaña "Semana"), los últimos 30 días (pestaña "Mes") y desde siempre (pestaña "Siempre"), incluyendo:

  • número de visualizaciones, likes, comentarios y seguidores conseguidos
  • gráficos temporales con el número de visualizaciones, likes, acciones en vuestras publicaciones y comentarios
  • una tabla con información sobre visualizaciones, comentarios y likes de cada una de vuestras publicaciones

      1 0
      0 15