csp-log-tutorial

Requisitos previos

Aseguraos de tener git instalado.

Creé una carpeta git dentro del directorio mgr de IRIS. Hice clic derecho en la carpeta git y elegí "Git Bash Here" en el menú contextual.

git clone https://github.com/oliverwilms/csp-log-tutorial.git

Clonad mi repositorio de GitHub csp-log-tutorial si queréis probarlo vosotros mismos.

1 0
0 44

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.

0 0
0 43

¡Hola Comunidad!

Sabemos que a veces buscáis personas con conocimientos en la tecnología de InterSystems. Por eso hemos preparado este breve tutorial sobre cómo publicar anuncios de empleo en la Comunidad, para que atraigáis a los mejores trabajadores!

En primer lugar, tenéis que crear una nueva publicación y elegir el tipo: Anuncio

Después, debajo de la descripción, en el campo "Grupo", tenéis que añadir la etiqueta "Oferta de empleo".

2 0
0 43
Artículo
· 16 ene, 2024 Lectura de 9 min
Base de datos documental de IRIS (DocDB)

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.

0 0
0 42
Artículo
· 23 nov, 2023 Lectura de 2 min
Cómo ejecutar un backup online desde un comando

Preguntas frecuentes de InterSystems

Para ejecutar un backup online desde un comando, se puede utilizar la rutina API BACKUP^DBACK.

Este es un ejemplo de realización de un backup completo.

set  status = $$ BACKUP ^DBACK( "" , "F" , "full backup" , "c:\backup\full.cbk" , "Y" , "c:\backup\full-log.log" , " NOINPUT" , "Y" , "Y" , "" , "" )

El valor de retorno es 1 si el backup se realiza con éxito, y 0 si el backup no se realiza correctamente. Por favor, consultad el fichero log para conocer más detalles sobre el fallo.

0 0
0 42

Introducción

A InterSystems le gustaría optimizar IRIS para aprovechar las modernas extensiones del conjunto de instrucciones de la CPU. Eso está genial para el rendimiento del producto, pero ¿cómo sabéis si vuestra CPU seguirá siendo compatible con las nuevas versiones de IRIS? En este artículo os explico cómo saber la familia de microarquitectura de la CPU, y cómo averiguar las extensiones específicas del conjunto de instrucciones de la CPU.

0 0
0 41
Artículo
· 21 nov, 2023 Lectura de 1 min
Más sobre los Grupos y las Etiquetas

¡Hola Comunidad!

Os contamos un par de cosas más sobre cómo funcionan los Grupos y las Etiquetas en la Comunidad de Desarrollares.

En primer lugar, si tenéis curiosidad sobre dónde encontrar una lista con todos los Grupos y Etiquetas, la podéis ver haciendo clic en el menú de la esquina superior izquierda, y después en Publicaciones: Menú -> Publicaciones -> Etiquetas

0 0
0 40

¡Hola Comunidad!

Me gustaría presentaros una nueva utilidad para importar CSV a IRIS - ¡csvgenpy!

Instalación

USER>zpm "install csvgenpy"

Uso:

do ##class(shvarov.csvgenpy.csv).Generate("file or url","table","schema")

Ejemplo:

USER>do ##class(shvarov.csvgenpy.csv).Generate("https://raw.githubusercontent.com/datasciencedojo/datasets/master/titanic.csv","titanic","data")

Esto creará la tabla y la clase data.titanic en IRIS y a continuación cargará los datos. Podéis probarlo con:

2 0
0 40

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 39

¡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 38

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:

1 0
0 38
         Cómo incluir IRIS Data en vuestro almacén de datos de Google Big Query y en vuestras exploraciones de datos de Data Studio. En este artículo utilizaremos Google Cloud Dataflow para conectarnos a nuestro Servicio de InterSystems Cloud SQL y crear un trabajo para persistir los resultados de una consulta de IRIS en Big Query en un intervalo. 

Si tuvisteis la suerte de obtener acceso a Cloud SQL en el Global Summit 2022, como se menciona en "InterSystems IRIS: What's New, What's Next" (InterSystems IRIS: Lo nuevo, lo siguiente), el ejemplo será pan comido, pero se puede realizar con cualquier punto de acceso público o vpc que hayáis provisionado.
0 0
0 37

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.

Lajos Simicska declares war on Viktor Orban: "It's either him or me!" - The  Budapest Beacon

0 0
0 36

Hola!

Aquí les dejo un video que hice para mostrar cómo se configura la alta disponibilidad (mirroring) en IRIS en un ambiente docker, el video esta completamente en español y los archivos necesarios estarán en mi Github.

El video en YouTube en https://youtu.be/rBdiTxavWmU

https://github.com/I-am-seven/iris-mirroring-video

Espero les sea de Utilidad!

Joel

0 0
1 35

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 32

Preguntas frecuentes de InterSystems

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.

1 0
0 31

SSH es un framework relativamente representativo de Java, que fue popular hace muchos años. Están Struts+Spring+hibernate y Spring MVC+Spring+hibernate. Por supuesto, utilicé la segunda en la universidad. Si puedo conectar IRIS a Hibernate como librería, ¿significa también que, en teoría, IRIS puede ser desarrollado utilizando el framework SSH?

Herramientas y entorno

JDK 1.8

Maven

Hibernate 5.X.X

IRISHealth-2022.1.3

intellij idea

Windows 10 64

0 0
0 31

Necesitaba averiguar en tiempo de ejecución si el último test había fallado o no.

Después de investigar un poco, aquí está el código:

ClassMethod isLastTestOk() As %Boolean
{
  set in = ##class(%UnitTest.Result.TestInstance).%OpenId(^UnitTest.Result)
  for i=1:1:in.TestSuites.Count() {
    #dim suite As %UnitTest.Result.TestSuite
    set suite = in.TestSuites.GetAt(i)
    return:suite.Status=0 $$$NO
  }
  quit $$$YES
}

0 0
0 25
Artículo
· 26 abr, 2024 Lectura de 4 min
Comprobación de Versión en objetos. "ERROR:5800"

Si tenéis tablas de sistema que implementan la funcionalidad "VERSIONPROPERTY", podéis encontraros con el error 5800. Este artículo explica cómo se produce este error y proporciona soluciones para resolver el problema.

Cuando se implementa la comprobación de versiones, la propiedad especificada por VERSIONPROPERTY se incrementa automáticamente cada vez que se actualiza una instancia de la clase (ya sea mediante objetos o SQL).

Por ejemplo:

1 0
0 12

¡Hola, amigos!

A menudo, cuando desarrollamos soluciones comerciales, existe la necesidad de desplegar soluciones sin código fuente, por ejemplo, para preservar la propiedad intelectual.

Una de las formas de conseguirlo es utilizar InterSystems Package Manager.

Aquí he pedido a Midjourney que pinte una propiedad intelectual de software:

¿Cómo se puede lograr esto con IPM?

De hecho, es muy sencillo; basta con añadir la cláusula Deploy="true" en el elemento Resource del manifiesto module.xml. Ver Documentación.

He decidido pasaros el ejemplo más simple posible para ilustrar cómo funciona y también para daros una plantilla de entorno de desarrollo que os permita empezar a construir y desplegar vuestros propios módulos sin código fuente. ¡Allá vamos!

2 0
0 10