#InterSystems IRIS for Health

1 Seguidor · 544 Publicaciones

InterSystems IRIS for Health™ es la primera y única plataforma de datos global diseñada específicamente para desarrollar aplicaciones que permitan a los servicios médicos administrar los datos más importantes del mundo. Incluye poderosas funciones listas para utilizarse: procesamiento y análisis de transacciones, un modelo flexible para la información de los servicios médicos, implementación de soluciones basadas en FHIR, soporte para las normas de compatibilidad operativa entre los servicios médicos, y mucho más. Todas estas funciones permiten que los desarrolladores realicen aplicaciones valiosas y novedosas rápidamente. Obtener más información.

Artículo Alberto Fuentes · sep 20, 2023 1m read

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 overloadingo sobrecarga como tal.

0
0 107
InterSystems Official Mario Sanchez Macias · sep 19, 2023

18 de septiembre de 2023

InterSystems ha corregido dos defectos relativos a la conectividad. Estos defectos y sus correcciones son independientes uno de otro.

Esta alerta aborda ambos problemas porque hay point releases que contienen ambas correcciones.

Los dos defectos solo afectan a las versiones 2019.1.4 y 2020.1.4 de:

  • InterSystems IRIS®
  • InterSystems IRIS for Health
  • HealthShare® Health Connect
0
0 115
Artículo Ricardo Paiva · sep 12, 2023 1m read

No se encuentra el método InstallFoundation (IRIS 2023.2+)

Recientemente se lanzó IRIS 2023.2. Esta versión eliminó este método InstallFoundation de esta clase HS.HC.Util.Installer. Este era un método privado y no estaba documentado. Pero la comunidad lo utilizó ampliamente para instalar el servidor FHIR.

Entonces, si encuentramos este error:

<METHOD DOES NOT EXIST> *InstallFoundation,HS.HC.Util.Installer

En una demostración de nuestro propio servidor FHIR, podremos solucionarlo reemplazando esta línea:

  do ##class(HS.HC.Util.Installer).InstallFoundation(namespace)

Por:

  Do ##class(HS.Util.
0
0 79
Artículo Yuri Marx · sep 11, 2023 1m read

Cuando necesitas conocer el impacto de un cambio en tu proyecto, es muy útil ver las dependencias de tus clases en un diagrama de red. El proyecto IRIS Connections te permite verlas.

Instalación de IRIS Connections

Si quieres instalarlo usando ZPM:

zpm:USER>install iris-connections

Si quieres instalarlo usando Docker:

1. Clona/git pull el repositorio en cualquier directorio local:

$ git clone https://github.com/yurimarx/iris-connections.git

2.

0
0 111
InterSystems Official Jose-Tomas Salvador · sep 8, 2023

Las versiones de mantenimiento extendido de InterSystems IRISInterSystems IRIS for Health y HealthShare Health Connect 2023.1.1 ya están disponibles. Esta versión ofrece correcciones de errores de las versiones 2023.1.0 anteriores.

Podéis consultar la lista detallada de cambios y checklists para upgrade en estas páginas:

Cómo obtener el software

El software está disponible tanto como paquetes de instalación clásicos como imágenes de contenedor.

0
0 127
Artículo Luis Angel Pérez Ramos · sep 8, 2023 1m read

InterSystems FAQ

Puedes evitar este error especificando un objeto de tipo stream como argumento de la función %ToJSON usando durante la generación del string JSON desde el objeto dinámico.

A continuación podéis ver un ejemplo.

USER>set temp=##class(%Stream.TmpCharacter).%New()

USER>set jsonobj={}

USER>set jsonobj.pro1=["a","b","c","d"]

USER>set jsonobj.pro2=["あ","い","う","え"]

USER>do jsonobj.%ToJSON(temp)

USER>write temp.Size
51
USER>write temp.Read()
{"pro1":["a","b","c","d"],"pro2":["あ","い","う","え"]}

Podéis consultar la documentación si queréis más detalles al respecto.

0
0 159
InterSystems Official Jose-Tomas Salvador · sep 7, 2023

La versión 23.2 de InterSystems Reports ya está disponible en la página de Distribución de Software de InterSystems, en la sección "Components". Están etiquetados como InterSystems Reports Designer e InterSystems Reports Server, y están disponibles para Mac OSX, Windows o Linux. Este año insightsoftware ha decidido pasar de un plan de versionado numérico incremental a un plan basado en los años, por lo que no existen versiones del 20 al 22; las versiones aumentan desde la versión 19 a la versión 23.

0
0 127
Pregunta Xavier Gracia Aloy · sep 6, 2023

Buenos días, 

Desde IRIS necesitamos poder obtener un fichero DICOM de un PACS a través de su AN.

He revisado un par de post publicados en la comunidad, pero son muy genéricos y no acabo de ver claro como obtener el DICOM pasando su AN al PACS.

¿Alguien ha desarrollado este caso de uso en IRIS? Si es así, ¿me podría ayudar con el código a implementar?

Saludos.

Xavier Gràcia Aloy

1
0 145
Artículo Ricardo Paiva · sep 5, 2023 1m read

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).

0
0 145
Artículo Ricardo Paiva · ago 31, 2023 1m read

Preguntas frecuentes de InterSystems

Podéis ver el espacio libre disponible para la base de datos usando la opción "Free space view" (Ver espacio libre) en el Management Portal: System Operation > Databases.

Y se puede obtener mediante programación a través la consulta FreeSpace de la clase del sistema SYS.Database.

0
0 169
Artículo Ricardo Paiva · ago 25, 2023 1m read

Preguntas frecuentes de InterSystems

Se puede obtener mediante la consulta AllFields de la clase %SYS.ProcessQuery.

Para más detalles, consultad el documento Process (Job)【IRIS】Process (Job).

Un ejemplo de ejecución en el terminal es el siguiente:

USER>set stmt=##class(%SQL.Statement).%New()
USER>set st=stmt.%PrepareClassQuery("%SYS.ProcessQuery","AllFields")
USER>write st   // you can call %Execute() when st = 1
1
USER>set rset=stmt.%Execute()
USER>while rset.%Next() { write rset.%Get("JobNumber"),"-",rset.%Get("Pid"),"-",rset.%Get("OSUserName"),"-",rset.%Get("CurrentDevice"),"-",rset.
0
0 136
Artículo Ricardo Paiva · ago 24, 2023 1m read

Preguntas frecuentes de InterSystems

Si el valor de una variable local es un OREF o no se puede determinar usando $IsObject(). Sea v la variable que desea verificar,

$IsObject(v)=1 // v is an OREF
$IsObject(v)=0 // v is not an OREF
$IsObject(v)=-1 // v is an OREF but does not point to a valid object

Tenga en cuenta que $IsObject(v) dará un error UNDEFINED si v no está definido.

Para evitar errores UNDEFINED, se recomienda utilizar $Get así:

$IsObject($Get(v))
0
0 101
Artículo Ricardo Paiva · ago 22, 2023 8m read

En este artículo, analizo la clase %JSON.Adaptor. Esta clase es extremadamente útil para exportar datos a JSON serializado e importar objetos JSON y guardarlos en un objeto de clase.

Comenzaré con %JSON. Parámetros del adaptador. Los parámetros son una parte crucial de las operaciones de importación y exportación de JSON.

Si el nombre de su propiedad no es el mismo que el nombre de la clave JSON para exportar a un dispositivo externo o cargar los datos en un objeto mediante la importación, debe usar el parámetro %JSONFIELDNAME para definir el nombre del alias.

0
0 153
InterSystems Official Jose-Tomas Salvador · ago 21, 2023

La versión 2023.2 de InterSystems IRIS Data Platform, InterSystems IRIS for Health e InterSystems IRIS Studio ya está disponible de manera general (GA).

ASPECTOS DESTACADOS DE LA NUEVA VERSIÓN

2023.2 es una versión CD (Continuous Delivery). Se han añadido muchas actualizaciones y mejoras:

Servidor Web Privado

Empezando en esta versión:

0
0 111
Artículo Ricardo Paiva · ago 18, 2023 2m read

Preguntas frecuentes de InterSystems

Utilizad este método si queréis comparar bases de datos que se han replicado mediante mirror, shadow o algún otro mecanismo.

Podéis utilizar la utilidad DATACHECK para comparar globals. (Consultad la documentación para más información: Descripción general de DataCheck [IRIS])

***

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

0
0 172
Artículo Ricardo Paiva · ago 17, 2023 5m read

FHIR ha revolucionado la industria de la atención médica al proporcionar un modelo de datos estandarizado para crear aplicaciones y promocionar el intercambio de datos entre diferentes sistemas. El estándar FHIR se basa en enfoques modernos impulsados por APIs, lo que lo hace más accesible para los desarrolladores web y móviles. Sin embargo, interactuar con las API de FHIR aún puede ser un desafío, especialmente cuando se trata de consultar datos usando lenguaje natural.

0
0 226
Artículo Ricardo Paiva · ago 8, 2023 1m read

Preguntas frecuentes de InterSystems

Se pueden configurar páginas de error individuales para los siguientes mensajes de error/respuestas del Web Gateway:

  • Error del servidor
  • Servidor ocupado
  • Servidor no disponible
  • Tiempo límite 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]).

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

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 87
Artículo Ricardo Paiva · ago 7, 2023 2m read

Al crear componentes personalizados, a menudo es necesario agregar propiedades a la clase para configuraciones adicionales que se usarán en la inicialización o en la operación del componente. El nombre de la propiedad en sí no siempre es muy descriptivo, por lo que es una ventaja tener una pantalla de título personalizada con el campo.

En Caché, era bastante sencillo:

TEST> Set ^CacheMsg("EnsColumns","en-us","<property name>") = "<caption>"

Pero implica un poco más de esfuerzo en IRIS...

0
0 105
Artículo Mario Sanchez Macias · ago 4, 2023 19m read

Continuando con la serie de análisis de rendimiento, en este artículo voy a mostrar un método para dimensionar los requisitos de memoria compartida para aplicaciones de base de datos que se ejecutan en plataformas de datos de InterSystems, incluyendo los Global y Routine Buffers, gmheap y locksize. También daré algunos consejos de rendimiento que se deberían tener en cuenta al configurar servidores y al virtualizar aplicaciones de Iris. Como siempre, cuando hablo de Iris o Caché , me refiero a toda la plataforma de datos. Este artículo tiene algunos años pero mantiene su esencia, por lo que me referiré a Iris o Caché indistintamente ya que la teoría es exáctamente igual para todos los productos con kernel Caché/Iris. 

0
0 249
InterSystems Official Mario Sanchez Macias · ago 2, 2023

1 de agosto de 2023

InterSystems ha corregido dos defectos.

El primer defecto puede provocar que un servidor de aplicaciones ECP se bloquee. Este defecto solo es relevante para procesadores ARM e IBM Power; está presente en la versión 2022.1.2 y 2022.1.3 de InterSystems IRIS®, InterSystems IRIS for Health™ y HealthShare® Health Connect. La corrección de identifica como DP-423661. El defecto está controlado en todas las versiones futuras. 

El segundo defecto puede, en circunstancias excepcionales, provocar que el dejournaling se bloquee. Este defecto está presente en las versiones 2020.4, 2021.x, 2022.x y 2023.1 de InterSystems IRIS®, InterSystems IRIS for Health™ y HealthShare® Health Connect. La corrección de identifica como DP-423505. El defecto esta controlado en todas las versiones futuras y ya está corregido en la versión 2023.1.1.

0
0 114
Artículo Daniel Aguilar · jul 3, 2023 2m read

Hola Comunidad!

Voy a explicaros por encima cómo crear test en colecciones de Postman para usarlos en la app IRIS Api Tester.

Ok, pero.. ¿qué es Newman?

Newman es una herramienta de línea de comandos que nos permite ejecutar colecciones de Postman de un modo automático y escalable. Creando test en Newman, puedes asegurar la estabilidad de las colecciones en tus API endpoints. En este artículo, vamos a descubrir como crear test para Newman desde Postman, con unos ejemplos prácticos.

1
0 451
Artículo Alberto Fuentes · jul 4, 2023 2m read

Hoy en día es muy común que los datos que necesitas vengan de diferentes fuentes (e.g. aplicaciones externas e internas, distintas bases de datos y servicios, APIs, etc.). Además, seguro que tienes múltiples tipos de consumidores diferentes (e.g. usuarios finales, otras aplicaciones, servicios que publicas a terceros, etc.) y cada uno necesitará acceder a la información de forma diferente y para distintos objetivos. ¿Cómo construir una capa que de forma sencilla te permita gestionar estas necesidades? Hoy hablamos de Data Fabric 👈.

image

0
0 184
Artículo Daniel Aguilar · jul 3, 2023 3m read

Hola Comunidad!!

Acabo de subir mi última aplicación "IRIS Api Tester" al Open Exchange.

Es un proyecto docker con InterSystems IRIS + Newman que permite lanzar test sobre tus colecciones de Postman de una manera rápida y fácil.

El proyecto viene listo para funcionar, solo debes clonar el repositorio: https://github.com/daniel-aguilar-garcia/irisapitester

Arrancar el fichero docker-compose:

Abrir esta url en tu navegador:

1
0 228
Artículo Daniel Aguilar · jun 12, 2023 3m read

ZPM está diseñado para funcionar con aplicaciones y módulos de InterSystems IRIS. Está formado por dos  componentes: el Cliente ZPM, que es un CLI para gestionar módulos; y El Registro, que es una base de datos de módulos y meta-información. Podemos utilizar ZPM para buscar, instalar, actualizar, eliminar y publicar módulos. Con ZPM se pueden instalar clases de ObjectScript, aplicaciones Frontend, producciones de Interoperabilidad, soluciones de BI de IRIS, conjuntos de datos de IRIS o cualquier otro archivo, como paquetes wheel de Python Embebido. 

En este artículo repasaremos tres secciones:

  1. Instalación de ZPM
  2. Generación del Módulo
  3. Búsqueda, Instalación y Publicación de módulos dentro del Registro
2
0 322
Artículo Pietro Montorfano · jun 16, 2023 3m read

Introducción

Si alguna vez os habéis preguntado cómo depurar algunas solicitudes que se realizan hacia o desde IRIS, este es un pequeño tutorial sobre cómo se hace.

Durante un proyecto complejo, normalmente se obtienen las especificaciones y se implementa la comunicación entre IRIS y otros sistemas basándose en eso. Pero del papel al mundo real normalmente hay un gran trecho y hay que saber por qué se recibe un error en un parámetro o en una cabecera, por qué no se reciben los datos, etc.

Si la conexión es una conexión http sencilla, no hay problema, siempre se puede iniciar tcpdump y capturar el tráfico, pero ¿qué pasa con la comunicación https?

¿Qué tal tener una interfaz web limpia, algo que iniciáis y después el desarrollador puede mirar ese portal cuando quiera?

Si alguna vez habéis estado en esta situación, una solución sencilla es mitm proxy ( https://mitmproxy.org/ ).

Este programa tiene la capacidad de actuar como un proxy (se puede configurar en el Business Operation, por ejemplo), un proxy transparente (lo que me gusta), proxy upstream (proxy transparente que envía la conexión a otro proxy), etc.

0
0 119
InterSystems Official Mario Sanchez Macias · jun 15, 2023

13 de junio de 2023

InterSystems ha corregido un defecto que causaba un aumento en el uso de la memoria de proceso.

Específicamente, el aumento de consumo de la partición de memoria local de proceso occurre cuando se ejecutan $Order, $Query, o Merge en variables locales. Aunque esto no tiene un impacto perjudicial en la mayoría de los entornos en ejecución, entornos que soportan un gran número de procesos o limitan la Memoria Máxima Por Procesode forma muy ajustada, podrían verse afectados. Algunos procesos podrían sufrir errores de tipo <STORE>.

0
0 132
Artículo Alberto Fuentes · jun 14, 2023 11m read

Qué es el Web Scraping:

En términos sencillos, el Web scraping, también conocido como recolección de datos de sitios web o extracción de datos de sitios web es un proceso automatizado que permite la recopilación de grandes volúmenes de datos (no estructurados) de los sitios web. El usuario puede extraer datos de sitios web específicos, según sus necesidades. Los datos recopilados se pueden almacenar en un formato estructurado para su posterior análisis.

¿Qué es el Web Scraping? — James Le

0
0 542