#Interoperabilidad

0 Seguidores · 127 Publicaciones

En los servicios médicos, la compatibilidad  operativa es la capacidad que tienen los diferentes sistemas en tecnología de la información y aplicaciones de software para comunicarse, intercambiar datos y utilizar la información que se intercambió.

Pregunta Abel Magana · mayo 29, 2024

Tengo un sistema Scada iFIX que soporta VBA comunicando con IRIS mediante sockets. En el entorno VBA del iFIX empleo el control MSWINSCK.OCX que funciona perfectamente con la versión antigua del iFIX. Al querer pasar a la nueva versión de iFIX este control ya no me funciona, es por eso que quiero intentar solucionar el problema comunicando directamente con el OPC que está debajo del iFIX. La idea es mandarle un bit 1 desde IRIS cuando actualizo unos datos, el OPC debería recibirlo en un TAG y el iFIX podría leer del OPC ese bit.

0
0 0
Artículo Jose-Tomas Salvador · jun 3, 2024 1m read

Añadid una credencial para iniciar sesión en la interfaz REST de FHIR - en este caso considerad sólo una autenticación básica

 

Añadid Registro de Servicios - en este caso considerad sólo una autenticación básica

- Configurad un servicio HTTP

- Introducid la ruta al servidor FHIR

- Introducid la URL del servicio FHIR

- Usad la credencial añadida previamente 

 

Añadid una "HS.FHIRServer.Interop.HTTPOperation"

Elegid el Nombre del Servicio

Probad el cliente FHIR

Rastread/seguid el resultado de la prueba

0
0 0
Artículo Carlos Castro · mayo 19, 2024 10m read

Buenas a todos,

en capítulos anteriores, vimos como "Como controlar el acceso a tus recursos con OAuth2". En este primer artículo explicábamos como preparar un acceso seguro a nuestros recursos utilizando la potente herramienta que nos ofrece Intersytems del servidor de Autenticación. Al finalizar el mismo, comentábamos que si quisiéramos podríamos aplicar un control extra a este acceso y esto nos lleva a este artículo, por lo que seguiremos el siguiente índice:

1.- Introducción

   1.1..- De donde venimos

2.- Problema

   2.1.- ¿Cómo funciona la llave (Token)?

0
0 216
Artículo Alberto Fuentes · mayo 20, 2024 4m read

La especificación OpenAPI (OAS) define una interfaz estándar e independiente del lenguaje para las API HTTP que permite tanto a humanos como a ordenadores descubrir y comprender las capacidades del servicio sin acceso al código fuente, la documentación o mediante la inspección del tráfico de red. Cuando se define correctamente, un consumidor puede entender e interactuar con el servicio remoto con una cantidad mínima de lógica de implementación. Aunque para las API basadas en SOAP existe un asistente especial en InterSystems IRIS que reduce el tiempo de desarrollo de las orquestaciones, no

0
0 113
Artículo Ricardo Paiva · mayo 15, 2024 3m read

Configuración de producción

Esta demostración tiene una producción de interoperabilidad con 16 elementos.

Configuración de producción HL7 + Kafka Producer

La primera parte de esta demostración consiste en enviar un archivo HL7 SIU que será transmitido a los otros 2 flujos HL7 (HTTP y TCP), y transformado y transmitido al servidor Kafka. Los flujos HTTP y TCP transformarán los mensajes HL7 del mismo modo antes de enviarlos también a Kafka.

  • 3 Servicios HL7
  • 1 Enrutador HL7
  • 2 Operaciones HL7
  • 1 Operación de Negocio que envía los mensajes transformados a Kafka

Reglas de negocio

0
0 123
Artículo Ricardo Paiva · mar 4, 2022 11m read

Este artículo es una continuación de esta publicación.

En ese artículo revisamos cómo crear y definir mensajes que se utilizan para enviar y recibir datos entre componentes.

En este artículo, explicaré cómo crear una business operation a partir de los métodos para crear componentes.

Revisaremos rápidamente el código al referirnos a la muestra.。

0
0 426
Artículo Ricardo Paiva · mar 15, 2024 5m read

En este artículo, compartiré el tema que presentamos @Rochael Ribeiro y yo en la Convención Anual (Global Summit) 2023, en la sala "Tech Exchange".

En esa ocasión hablamos de los siguientes temas:

  • Herramientas de Open Exchange para Fast APIs (APIs rápidas)
  • Especificación OpenAPI
  • Desarrollo tradicional vs. Fast API
  • APIs Compuestas (Interoperabilidad)
  • Enfoque Spec-First o Api-First 
  • Gobernanza y Monitorización de APIs
  • Demo (vídeo)
0
0 213
Artículo Kurro Lopez · ene 17, 2024 3m read

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

Surgen diferentes casos, dependiendo de la configuración utilizada en este Business Service.

Primer caso:

Si el Business Service solo usa un KeyFieldName

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.sqlrow":

0
0 104
Artículo Ricardo Paiva · nov 9, 2023 3m read

El problema

En un entorno clínico acelerado, en el que la toma rápida de decisiones es crucial, la falta de sistemas eficientes de almacenamiento y acceso a los documentos plantea varios obstáculos. Aunque existen soluciones de almacenamiento de documentos (por ejemplo, FHIR), el acceso y la búsqueda eficaz de datos específicos de pacientes dentro de esos documentos puede suponer todo un reto.

La motivación

0
0 108
Artículo Luis Angel Pérez Ramos · nov 4, 2023 5m read

Recientemente me comentaron sobre la necesidad de monitorizar desde HealthConnect los registros presentes en una base de datos NoSQL en el Cloud, más en concreto Cloud Firestore, desplegada en Firebase. Con un rápido vistazo pude ver lo sencillo que resultaría crear un Adapter ad-hoc para realizar la conexión aprovechando las capacidades de Embedded Python, así que me puse manos a la obra.

Preparando el entorno

0
0 84
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 84
Artículo Alberto Fuentes · ago 3, 2023 4m read

¡Hola Comunidad!

Como sabéis, las soluciones de Interoperabilidad de InterSystems IRIS contienen diferentes elementos de la solución, como: producciones, reglas de negocio, procesos, transformaciones de datos, mapeos de registros, etc. Y a veces podemos crear y modificar estos elementos con herramientas visuales en la UI. Y por supuesto necesitamos una forma práctica y sólida de controlar el código fuente con los cambios realizados con herramientas de UI.

0
0 147
Artículo Alberto Fuentes · jul 28, 2023 7m read

¡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 76
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 146
Artículo Jose-Tomas Salvador · jun 29, 2023 2m read

¡Hola Comunidad!

Me gustaría compartir con vosotros un ejercicio que he hecho para crear "mi propio" chat con ChatGPT en Telegram.

Ha sido posible gracias a dos componentes de Open Exchange: Telegram Adapter, de @Nikolay Solovyev e IRIS Open-AI, de @Kurro Lopez 

Así que con este ejemplo podréis configurar vuestro propio chat con ChatGPT en Telegram. 

¡Veamos cómo hacerlo funcionar!

0
0 289
Artículo Daniel Aguilar · jun 26, 2023 9m read

 

¡Hola Comunidad!

¿Habéis tenido que conectar alguna vez IRIS con un sistema SAP?

Tuve que enfrentarme al reto de conectar InterSystems IRIS con SAP, y una vez más pude comprobar el gran acierto que hizo InterSystems añadiendo la posibilidad de ejecutar código nativamente de Python desde IRIS.

Esto me hizo la integración muy fácil gracias a la librería pyrfc.

Con esta librería, fui capaz de realizar llamadas a RFC's de SAP (Remote Function Call) desde una clase de IRIS y recibir datos de la base de datos de SAP.

1
0 270
Pregunta Kurro Lopez · jun 1, 2023

Hola a todos,

Me pregunto si es posible llamar a un BO desde una enrutador HL7 de acuerdo con un parámetro del mensaje HL7

Quiero decir,

De acuerdo con la identidad del laboratorio, quiero llamar a otro proceso TCP para recuperar información sobre análisis de sangre.

Estamos creando el BO usando este patrón.

LAB.BO.TCP. + nombre del laboratorio.

El nombre del laboratorio se almacena en la tabla de consulta T_LABORATORIOS

Intenté asignar el nombre a una variable y ponerlo en la instrucción "send", pero no funciona.

1
0 140
Artículo Ricardo Paiva · mayo 25, 2023 1m read

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

0
0 83
Artículo Luis Angel Pérez Ramos · abr 17, 2023 6m read

Comenzamos esta nueva entrega recordando que hicimos en los anteriores artículos de configuración del EMPI:

  • Instalado en modo Standalone el Patient Index sobre una instancia de HealthShare.
  • Configurado los parámetros básicos para empezar a trabajar con el EMPI.
  • Definido los índices y pesos particulares para nuestro proceso NICE.

Muy bien, estamos ya practicamente preparados para echar a rodar nuestro EMPI. Sólo nos queda un detalle, arrancar la producción creada por la instalación para poder empezar a trabajar.

0
1 180
Artículo Luis Angel Pérez Ramos · abr 5, 2023 10m read

Bienvenidos miembros de la comunidad a un nuevo artículo, en esta ocasión trataremos las capacidades de interoperabilidad que nos proporciona IRIS for Health para trabajar con ficheros DICOM.

Para ello vamos a montar un pequeño ejemplo haciendo uso de Docker. Al final del artículo podréis encontrar la URL de acceso a GitHub por si queréis verlo en acción en vuestros propios equipos.

Pero antes de empezar vamos a explicar que es DICOM:

0
0 625
Artículo Luis Angel Pérez Ramos · mar 7, 2023 12m read

Hemos visto como instalar nuestro EMPI en modo standalone y, parafraseando a Fray Luis de León, como decíamos ayer, procederemos a exponer como realizar una configuración básica, sin demasiadas pretensiones, de nuestro EMPI.

Primeramente deberemos realizar la configuración básica inicial, y para ello deberemos acceder a la opción del menú de Configuración de nuestro Registry.

Desde esta opción tendremos acceso a la tabla de configuración básica de nuestro Registry:

En este menú deberemos incluir los siguientes parámetros y actualizar el valor de los que ya estén presentes:

0
0 190
Artículo Luis Angel Pérez Ramos · mar 1, 2023 2m read

Hoy os voy a presentar como configurar uno de los productos disponibles en HealthShare, el Enterprise Master Patient Index o EMPI.

El EMPI proporcionará a cualquier organización un índice maestro de pacientes que permitirá identificar de forma unívoca a cada paciente de nuestra organización. Podéis encontrar más información al respecto en la siguiente url: https://www.intersystems.com/es/plataforma-de-interoperabilidad/patient…

0
0 144
Artículo Alberto Fuentes · mayo 20, 2022 3m read

Si estás desarrollando soluciones en IRIS y quieres utilizar Git, ¡es genial! Sólo tienes que utilizar VSCode con un repositorio git local y enviar los cambios al servidor, así de fácil.

Pero qué sucede si:

  • Colaboras con otros desarrolladores en un entorno de desarrollo remoto compartido y quieres evitar la edición simultánea del mismo archivo
  • Utilizas editores basados en el portal de administración para BPL, DTL, tablas dinámicas, cuadros de mando, etc. y quieres incluir esos elementos en el control de código de forma sencilla.
  • Aún utilizas Studio para realizar algunas cosas y/o ocasionalmente vuelves a usarlo desde VSCode. O tu equipo todavía no ha adoptado completamente VSCode y algunos miembros del equipo todavía quieren utilizar Studio
  • Trabajas en varios proyectos diferentes al mismo tiempo en el mismo namespace - digamos, en varios paquetes definidos mediante InterSystems Package Manager - y quieres trabajar con todos ellos desde una vista de edición de isfs (en vez de en varios proyectos distintos) con los cambios rastreados automáticamente en el repositorio de git apropiado
1
1 263
Artículo Alberto Fuentes · feb 28, 2023 2m read

¡Hola a todos!

Comparto con vosotros una herramienta para la ingestión de datos que hemos utilizado en varios proyectos.

DataPipe es un framework de interoperabilidad para la ingestión de datos de forma flexible con InterSystems IRIS. Te permite recibir datos desde el exterior, normalizar y validar la información y finalmente realizar cualquier operación sobre tus datos.

Modelo

Lo primero que necesitas es definir un modelo. Un modelo es una clase que extiende de DataPipe.Model donde necesitas implementar algunos métodos:

0
0 214
InterSystems Official Jose-Tomas Salvador · feb 22, 2023

Comenzando este año 2023, hemos programado una serie de cursos oficiales sobre InterSystems IRIS que iremos realizando a lo largo del año. Los cursos se impartirán on-line y ya están abiertos para que os podáis registrar si estáis interesados (hasta un máximo de 10 personas por curso, quorum mínimo 5 asistentes). Toda la información está disponible en nuestro sitio web: Formación en el aula virtual | InterSystems

0
0 103
Artículo Pierre-Yves Duquesnoy · jun 16, 2020 26m read

Introducción

InterSystems IRIS 2020.1 incluye PEX (Production EXtension Framework), para facilitar el desarrollo de producciones de Interoperabilidad de IRIS con componentes escritos en Java o .NET.

Gracias a PEX, un desarrollador de integraciones con conocimientos Java o .NET puede beneficiarse de la potencia, escalabilidad y robustez del framework de Interoperabilidad de InterSystems IRIS, y ser productivo en muy poco tiempo.

1
0 595
Artículo Ricardo Paiva · dic 28, 2022 4m read

  

Hace unos meses hablábamos Jose y yo sobre el vídeo Servicios de datos inteligentes (Visión & Demo), realizado por @Amir Samary y, durante la charla, empezamos a preguntarnos qué tipo de características sería bueno incluir en las futuras soluciones de IRIS. 

Una de las funcionalidades con las que sería bueno contar es una solución iPaaS para IRIS, como le pregunté a Amir en este comentario.

Estos últimos meses he tenido la oportunidad de trabajar con diferentes proyectos y tecnologías, así como familiarizarme con aplicaciones como Tray.io o Workato, y ahora puedo ver lo increíble que sería tener una solución iPaaS para IRIS.

0
0 77
Artículo Ricardo Paiva · nov 2, 2022 4m read

¡Hola a todos!

En una reciente actualización de MessageViewer @Henrique Dias y yo propusimos una nueva manera de visualizar mensajes en IRIS Interoperability. En esa actualización, intentamos dar a los usuarios una visualización basada en un diagrama de secuencia UML. Tenéis más information en el artículo anterior.

0
0 443