Artículo Eduardo Anglada · abr 5, 2022 5m read

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 190
Anuncio David Reche · abr 5, 2022

Me complace anunciar el lanzamiento de la versión 1.4.4 de la extensión VS Code, que contiene las siguientes mejoras y correcciones de fallos. Los enlaces que llevan a las issues de GitHub han sido corregidos. Como siempre, si ya tienes la extensión instalada, VS Code debería actualizar automáticamente tu extensión. Si no la tienes instalada, sigue estas instrucciones para empezar. 

Registro de cambios

0
0 142
Anuncio Esther Sanchez · abr 5, 2022

🎉 🎉 🎉 

¡Gracias a todos los que compartís vuestras aplicaciones en Open Exchange!

Y sois más que bienvenidos a visitarlo si aún no lo conocéis.

Open Exchange es una galería de aplicaciones, conectores y librerías, que los desarrolladores de InterSystems publican para compartir formas de trabajar, enfoques y hacer negocio. Todas las aplicaciones están o construidas con InterSystems Data Platform o pensadas para ser usadas en desarrollos con nuestra tecnología.

 

0
0 106
Artículo Alberto Fuentes · abr 5, 2022 2m read

¿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?

¿Que te parecería poder configurar paso a paso un servidor de autorización, un cliente y un servidor de recursos? Aquí tenéis un ejemplo donde se configuran instancias Intersystems IRIS para actuar como cada uno de esos roles de OAuth2.

2
0 361
Pregunta Eduard Lebedyuk · mar 17, 2022

He definido una clase con una propiedad de objeto dinámico:

 

Mi clase

Class test.Dyn Extends %Persistent
{

Property json As %DynamicObject;

/// do ##class(test.Dyn).test()
ClassMethod test()
{
  do ..%KillExtent()
  for len = 100, $$$MaxStringLength - 1, $$$MaxStringLength, $$$MaxStringLength+1, $$$MaxStringLength *2 {
    set sc = ..save(len)
    write "Len: ",len, " Result: ",$case($$$ISERR(sc), $$$YES: $System.Status.GetErrorText(sc), : "OK"),!
  }
}

ClassMethod save(len)
{
  set json = {}
  set stream = ..getStream(len-8) // -8 because {"a":""}
  do json.%Set("a", stream, "stream")
 
  set obj = ..%New()
  set obj.json = json
  quit obj.%Save()
}

ClassMethod getStream(len)
{
  set stream = ##class(%Stream.TmpCharacter).%New()
 
  if len<$$$MaxStringLength {
    do stream.Write($tr($j("",len)," ","A"))
  } else {
    for i=1:$$$MaxStringLength:len {
      do stream.Write($tr($j("",$$$MaxStringLength)," ","A"))
    }
    do stream.Write($tr($j("",len-i)," ","A"))
  }
  quit stream
}
}

El problema que me encuentro es que si la longitud de una propiedad json serializada es de más de 3641144 símbolos, el objeto no puede guardarla, con el siguiente error (MAXSTRING o STRINGSTACK):

Length: 100 Result: OK
Length: 3641143 Result: OK
Length: 3641144 Result: OK
Length: 3641145 Result: ERROR #5002: ObjectScript error: <MAXSTRING>%GetSerial+1^%Library.DynamicAbstractObject.1
Length: 7282288 Result: ERROR #5002: ObjectScript error: <STRINGSTACK>%GetSerial+1^%Library.DynamicAbstractObject.1

¿Hay algún método alternativo? Necesito almacenar jsons relativamente grandes (10-15 Mb) y las propiedades de objetos dinámicos permiten un acceso muy práctico.

$ZSTORAGE está establecido en -1.

2
0 166
Pregunta Kurro Lopez · oct 29, 2021

Hola a todos.

Estoy intentando crear una regla de enrutamiento para llamar a un web service según el valor de un parámetro de un mensaje.

Mi primer intento es el siguiente:

Tengo una clase común con toda la información, BuscarHuecoRequest, y comprubea cual es el valor de la propiedad "CodigoProveedor".

La tabla T_PROVEEDOR contiene la lista de códigos de los proveedores, si es F, llama a WSF, si es C, llama WSC, etc... Usando un transformador para convertir los valores para este proveedor.

Lanza un error, porque no la propiedad CodigoProveedor no

1
0 110
Anuncio Esther Sanchez · abr 1, 2022

Desarrolladores... ¡vuelve el Global Summit! 

Después de dos años de videoconferencias y encuentros virtuales, estamos felices de poder reunirnos con todos nuestros clientes y partners de forma presencial en la nueva Convención Anual de InterSystems (Global Summit 2022). Es el primer evento en persona desde que empezó la pandemia y en la conferencia principal contaremos con la presencia de líderes y desarrolladores a la vanguardia de sus sectores. ¡Ya está abierto el plazo de inscripción!

➡️ Global Summit 2022

🗓 Fecha: 20-23 de junio, 2022

📍 Ubicación: Seattle, WA, Estados Unidos

0
0 163
Anuncio Esther Sanchez · abr 1, 2022

¡Hola desarrolladores!

Hemos hecho algunos cambios en los sitios web de las Comunidades de Desarrolladores de InterSystems:

  • Nueva función de búsqueda
  • Estadísticas generales de la Comunidad
  • Conexión con el perfil de Facebook
  • Cambios en las páginas de las publicaciones: etiquetas, información del autor, resaltado del borrador

Vamos a explicar en detalle cada uno de ellos. 

0
0 102
Pregunta Yone Moreno · mar 30, 2022

Buenos días,

Primero, ante todo, muchas gracias de antemano por leernos y responder

Además, agradecer cualquier apoyo, porque es un alivio, apoyo, aporte, auxilio contar con personas con más entendimiento, conocimiento y práctica.

 

Existe la siguiente necesidad:

Se dispone de 2 circuitos:

1º Circuito DICOM de "Studio" ( Servicio clásico )

Servicio: clase: DICOM.BS.QueryService

Proceso: clase: DICOM.BP.QueryProcess

Operacion: clase:  EnsLib.DICOM.Operation.TCP

Probamos desde la "Salida" del "Studio" mediante:

do ##class(DICOM.BS.QueryService).
3
0 267
Anuncio Esther Sanchez · mar 25, 2022

¡Hola desarrolladores!

Ya hemos realizado el sorteo entre todas las personas que propusieron un nombre al exoplaneta descubierto en la ruta.

Y el ganador ha sido @Daniel Mory. ¡Enhorabuena!! 🎉🎉

¡Muchas gracias a todos los que habéis participado!

Aquí podéis ver el vídeo del sorteo entre todos los participantes.


  

3
0 148
Anuncio Esther Sanchez · mar 31, 2022

¡Hola Comunidad!

Hemos grabado el webinar que hicimos ayer y lo hemos subido al canal de YouTube de la Comunidad de Desarrolladores en español. Si os perdisteis el webinar o lo queréis volver a ver con más detalle, ya está disponible la grabación!

Eduardo Anglada mostró toda la potencia de Python, el nuevo lenguaje de programación añadido a IRIS. Explicó cómo crear datos anónimos, desarrollar cuadros de mando interactivos... ¡y muchas cosas más! Por eso, si queréis conocer la nueva funcionalidad de InterSystems IRIS, ¡no os perdáis el vídeo!

Explorando las nuevas funcionalidades de IRIS: Python Embebido

0
0 151
Artículo Eduardo Anglada · mar 30, 2022 1m read

¡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

Con esto, se puede consultar el conjunto de datos de Opendflights desde Apache Zepplin sin necesidad de realizar ninguna configuración. Los contenedores están en hub.docker por lo que se puede utilizar de forma muy sencilla.

0
0 115
Artículo Muhammad Waseem · mar 29, 2022 5m read

 

He desarrollado una aplicación para importar de forma dinámica 12 conjuntos de datos junto con 43 tablas usando el comando LOAD DATA, que carga los datos de una fuente a una tabla SQL de IRIS. 

Lista de los conjuntos de datos

0
0 698
Artículo Eduardo Anglada · mar 29, 2022 2m read

¡Hola a todos!

Hoy quiero hablar sobre nuestro proyecto y utilizar el tema del conjunto de datos para el concurso.

Nuestra intención nunca fue ser unos gestores de datos, sobre todo porque a veces nuestros preciosos datos significan mucho para nosotros, pero no para el resto del mundo.

Mi Tesoro

Queremos ir un paso más allá y permitir que los usuarios encuentren el conjunto de datos perfecto para satisfacer sus necesidades.

Nuestro proyecto es un puente entre la comunidad de la Ciencia de Datos y la Comunidad de Desarrolladores, utilizando InterSystems IRIS para lograr esta misión.

0
0 315
Pregunta Yone Moreno · mar 28, 2022

Buenos días,

Agradeceríamos el apoyo de ustedes:

 

Desarrollando una integración para realizar un circuito "Query / Retrieve" con estudios de imágenes médicas DICOM, necesitaríamos lo siguiente:

Opciones de invocación del servicio DICOM TCP que se ha publicado para esta integración, alternativas a la opción por linea de comando

En concreto hemos leído: Recibir documento DICOM con un PDF embebido y metadatos

Adaptando el ejemplo, empleamos la línea:

/storescu -b VNAPRE -c ESBPRE@10.136.4.XYZ:19ABC ./embeddedpdf.
1
0 297
Anuncio Esther Sanchez · mar 11, 2022

¡Hola desarrolladores!

Os invitamos a un nuevo webinar en español: "Explorando las nuevas funcionalidades de IRIS: Python Embebido", el miércoles 30 de marzo, a las 4:00 PM (CEST).

 

El webinar está dirigido a cualquier desarrollador Python o científico de datos.

Durante el webinar, descubriremos la potencia de Python, el nuevo lenguaje de programación añadido a IRIS. Python es un lenguaje en auge, cuya popularidad aumenta año tras año y que ya cuenta con más de un millón y medio de programadores en el mundo y con miles de librerías a su disposición.

2
0 1970
Anuncio Esther Sanchez · mar 19, 2022

¡Hola desarrolladores!

Estamos muy contentos de anunciaros que InterSystems Iberia va a ser uno de los patrocinadores de la conferencia Internacional "J On The Beach" que tendrá lugar en Málaga los días 28-29 de abril.

¡Y queremos invitaros a uno de vosotros al evento! (*)

El primer día de la Conferencia @David Reche y @Eduardo Anglada darán una ponencia titulada "Capitán Kirk, descubierto un exoplaneta en la ruta usando AutoML". Por ello, para conseguir la entrada gratis (valorada en 250€), tenéis que responder a la siguiente pregunta:

¿Qué nombre le pondrías al exoplaneta descubierto en la ruta?

  

5
0 470
Artículo Ricardo Paiva · mar 24, 2022 9m read

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

En ese artículo, analizamos el desarrollo de business processes, que forman parte de los componentes necesarios para la integración del sistema y sirven como coordinadores de la producción.

En este artículo mostraremos la creación de un business service, que es la ventana de entrada de información para la producción.

Y, finalmente, llegamos al último artículo de "¡Utilicemos la interoperabilidad!

0
0 243
Anuncio Esther Sanchez · mar 23, 2022

¡Hola desarrolladores!

Ha llegado el momento para todos los usuarios de nuestra comunidad que hablan francés.

Estamos encantados de anunciar el lanzamiento oficial de la Comunidad de Desarrolladores de InterSystems en francés! 🎉 

Y os presentamos a @Guillaume Rongier, @Robert Bira e @Irène Mykhailova, las personas que gestionarán la nueva Comunidad de Desarrolladores.

0
0 125
Artículo Eduardo Anglada · mar 23, 2022 2m read

¡Hola desarrolladores!

A veces necesitamos publicar la imagen Docker de la solución InterSystems IRIS en la que estamos trabajando. Existen diferentes posibilidades, por ejemplo:

  1. Usar la imagen en un cluster de Kubernetes.
  2. Que un compañero  ejecute la imagen desde un repositorio público sin tener que generarla.

La mejor solución es subir la imagen al Registro Hub de Docker o al Registro de Github.

En este breve artículo, propongo una forma de hacerlo automáticamente cada vez que subas (usando git push) cambios a tu repositorio GitHub.

0
0 127
Artículo Mario Sanchez Macias · mar 21, 2022 2m read

Soporte te está ayudando a resolver una incidencia con un informe y necesitan reproducir el problema en su sistema local. ¡Es una pena que no puedan ejecutar el informe porque la conexión JDBC al origen de datos fallará! O... ¿hay alguna forma?

Hay una forma de ejecutar un informe offline sin acceso a la base de datos origen. Debes proporcionar los resultados de una query cacheada exportada desde Designer. Es un fichero que contiene los datos de la query. Soporte lo usará para evitar el origen de datos del informe. Cuando ejecuten el informe, cogerá los datos del fichero, no de la conexión JDBC. 

0
0 159
Anuncio Ricardo Paiva · mar 18, 2022

Iris Healthtoolkit Service

Video

Fácil de usar HL7v2 a FHIR, CDA a FHIR, FHIR a HL7v2 como un Servicio.

El objetivo de este proyecto es ofrecer una API REST que pueda convertir fácilmente varios formatos de salud. Publica el formato deseado en el cuerpo REST, obtén la respuesta en el nuevo formato.

Instalación

Clona este repositorio

git clone https://github.com/grongierisc/iris-healthtoolkit-service.
0
0 322
InterSystems Official David Reche · mar 16, 2022

La versión 3.3 de InterSystems Kubernetes Operator (IKO) ya está disponible a través de la página de descargas del Centro de Soporte Internacional (WRC) y del Registro de Contenedores de InterSystems.

IKO simplifica el trabajo de InterSystems IRIS e InterSystems IRIS for Health en Kubernetes, al ofrecer una sencilla definición del recurso irisCluster. Consulta la documentación para conocer la lista detallada de funcionalidades, incluyendo sharding sencillo, mirroring y configuración de ECP.

A destacar en IKO 3.3:

  • Soporte a las versiones 2021.2 y 2022.1 de InterSystems IRIS & IRIS for Health
  • Supporte de Kuberentes 1.21
  • Implementación de las configuraciones comunes de System Alerting and Monitoring (SAM) como parte de irisCluster
  • InterSystems API Manager (IAM) ahora también puede ser implementado y gestionado como parte de irisCluster
  • Etiquetado automático del lado activo de la pareja del mirror, de manera que un servicio siempre apunta al miembro del mirror activo
0
0 153
InterSystems Official Mario Sanchez Macias · mar 15, 2022

15 de marzo de 2022

InterSystems ha corregido un defecto que provoca la compilación incorrecta de rutinas de ObjectScript.

Este defecto solo ocurre en la versión 2021.1.1, recientemente liberada, de:

            InterSystems IRIS Data Platform

            InterSystems IRIS for Health

            HealthShare Health Connect

0
0 108
Anuncio Angelo Bruno Braga · mar 7, 2022

Hola desarrolladores,

Estamos preparando con mucho cariño nuestro primer 🏆 Concurso de Artículos Técnicos en Portugués de InterSystems 🏆.

Como el concurso se lanzará oficialmente la próxima semana, aproveche esta semana para elegir su tema o, si es nuevo en la tecnología de InterSystems, ¡aproveche la oportunidad de aprender un poco más sobre la tecnología en este período para poder participar!

2
0 145
Anuncio Esther Sanchez · mar 14, 2022

¡Hola desarrolladores!

Hoy lanzamos el 🏆 1er Concurso de Artículos Técnicos en Portugués 🏆 

Todos los seguidores de la Comunidad en español que habláis portugués podéis escribir un artículo en la Comunidad de Desarrolladores en Portugués, sobre cualquier tema relacionado con la tecnología de InterSystems.

Duración: del 14 de marzo al 14 de abril de 2022

Premios para todos los participantes: Todas las personas que publiquen un artículo en portugués durante la vigencia del concurso recibirán un premio

   

También pueden participar varias personas de forma conjunta, publicando un artículo en equipo. Habrá un bonus para los artículos presentados por equipos. 

0
0 152