¡Hola desarrolladores!

Solo quiero compartir con vosotros mi conocimiento, es decir, experiencia en algo que os puede hacer ahorrar unas cuantas horas algún día.

Si estás creando una REST API con IRIS que contiene más de un nivel de "/", por ejemplo: '/patients/all', no te olvides de añadir el parámetro 'recurse=1' en tu script de despliegue en %Installer. Si no, todas las entradas de nivel secundario y de mayor profundidad no funcionarán. Y todas las entradas de nivel primario funcionarán.

/patients

- funcionará, pero

/patients/all

- no funcionará.

Este es un ejemplo de sección CSPApplication que arregla el problema y que puede que quieras usar en tu clase %Installer:

    <CSPApplication Url="${CSPAPP}"
      Recurse="1"
      Directory="${CSPAPPDIR}"
      Grant="${RESOURCE},%SQL"
      AuthenticationMethods="96"
      />

0 0
0 42

¡Hola desarrolladores!

El desarrollo de una aplicación web Full-Stack en JavaScript con Caché requiere que juntes los bloques correctos para construirla. En la primera parte de este artículo, creamos una aplicación básica para desarrollar el frontal de usuario (front-end) en React. En esta segunda parte, mostraré cómo elegir la tecnología más adecuada para desarrollar la parte servidora (back-end) de tu aplicación. Verás que Caché te permite utilizar diferentes enfoques para vincular tu front-end con tu servidor de Caché, dependiendo de las necesidades de tu aplicación. También configuraremos un back-end mediante Node.js/QEWD y CSP/REST. En la siguiente parte, vamos a mejorar nuestra aplicación básica web y la conectaremos a Caché usando estas tecnologías.

0 0
0 1,486

InterSystems IRIS ofrece la posibilidad de crear interfaces REST con el enfoque spec-first, esto es, partiendo de las especificaciones de la API.

Puedes echarle un vistazo a este artículo para más información al respecto : https://es.community.intersystems.com/post/cómo-desarrollar-una-api-rest-con-un-enfoque-spec-first.

0 0
0 127

La aplicación Carbon Footprint Counter utiliza el GHG Protocol para medir las emisiones de carbono en las empresas. El Protocolo de Gases de Efecto Invernadero (GHG Protocol) establece marcos estandarizados globales integrales para medir y gestionar las emisiones de gases de efecto invernadero (GHG) de las operaciones del sector público y privado, las cadenas de valor y las acciones de mitigación.

Sobre la base de una asociación de 20 años entre el Instituto de Recursos Mundiales (WRI) y el Consejo Empresarial Mundial para el Desarrollo Sostenible (WBCSD), el GHG Protocol trabaja con gobiernos, asociaciones industriales, ONGs, empresas y otras organizaciones. (fuente: https://ghgprotocol.org/about-us).

La aplicación Carbon Footprint Counter utiliza InterSystems IRIS para implementar APIs REST y la base de datos SQL para administrar el inventario de emisiones de carbono en las empresas. La interfaz es Angular 12 con el framework PrimeNG (líder de código abierto para Angular).

0 0
0 40

Resulta que un día estás trabajando en Widgets Direct, distribuidor líder de widgets y accesorios, y tu jefe te pide que desarrolles un nuevo portal dedicado a los clientes, el cual permita que la cartera de clientes tenga acceso a la siguiente generación de widgets... y él quiere que utilices Angular 1.x para comunicarte con el servidor Caché del departamento.

Solamente hay un problema: Nunca has utilizado Angular y no sabes cómo hacer que se comunique con Caché (o IRIS).

En esta guía veremos cómo se realiza todo el proceso de configuración de un conjunto de subsistemas en Angular, el cual se comunica con un backend de Caché utilizando JSON para llamar un API REST.


0 0
0 918

Como ayuda para aquellos que quieren utilizar las funciones de la Base de datos documental (DocDB) dentro de InterSystems IRIS, y específicamente la API REST que proporciona, reuní una Colección Postman que ofrece muestras para varias llamadas básicas.

Por ejemplo:

0 0
0 131
Artículo
Luis Angel Pére... · 14 dic, 2022 Lectura de 2 min
Cómo subir y descargar archivos a través de HTTP

En este artículo, mostraré cómo subir y descargar archivos vía http desde los productos de InterSystems.

A menudo desde la comunidad surgen preguntas sobre como trabajar con archivos a través de http y normalmente os emplazamos a revisar el proyecto FileServer, que muestra la subida/descarga de archivos. Pero me gustaría hablar un poco más de cómo podemos enviar y recibir archivos desde los productos de InterSystems.

0 1
0 41

Comenzamos con la primera parte de esta serie de artículos que describe cómo desarrollar un Backend de servicios REST con Caché.

Parte 1 - Configuración

Para empezar desde cero, crearemos un Namespace para nuestra nueva aplicación: WIDGETDIRECT, y la configuraremos con bases de datos que incluyan Códigos, Datos y las funciones de Seguridad que sean apropiadas.

Nuestro siguiente paso es configurar 2 aplicaciones para que presenten el contenido en la web, una para el contenido de la web en Angular y otra que proporcione el contenido de la Transferencia de Estado Representacional (REST).

0 0
0 233

Hola a todos,

con este artículo, me gustaría mostrar lo fácil y dinámicamente que puede ser configurada nuestra herramienta de Alerta y Monitorización de Sistema (SAM, del inglés System Alerting and Monitoring). El caso de uso podría ser el de un flujo de aprovisionamiento CI/CD ágil y rápido, donde queráis ejecutar vuestros tests unitarios y de estrés, y podáis ver rápidamente si los tests tuvieron éxito o cómo están estresando el sistema y tu aplicación ( el API de SAM en el backend de InterSystems IRIS es extensible para tu implementación APM).

0 0
0 161

InterSystems API Manager (IAM) es una nueva función de InterSystems IRIS que permite monitorizar, controlar y dirigir el tráfico hacia y desde las APIs web dentro de su infraestructura de TI. Si te perdiste el anuncio de su lanzamiento, puedes leerlo aquí. También puedes consultar este otro artículo.

En esta publicación, utilizaremos InterSystems API Manager para balancear la carga de una API.

En nuestro caso, tenemos 2 instancias de InterSystems IRIS con /api/atelier API REST que queremos publicar para nuestros clientes.

Hay muchas razones diferentes por las que podríamos querer hacer eso, como:

  • Equilibrio de carga para distribuir la carga de trabajo entre los servidores
  • Implementación azul-verde: tenemos dos servidores, uno "prod", otro "dev" y es posible que queramos cambiar entre ellos
  • Implementación de Canary: podríamos publicar la nueva versión solo en un servidor y mover el 1% de los clientes allí
  • Configuración de alta disponibilidad
  • etc.
0 0
0 73
Artículo
Ricardo Paiva · 12 dic, 2022 Lectura de 4 min
Aplicación IRIS RAD Studio

@José Roberto Pereira y yo hemos creado un proyecto del que queremos hablar en este artículo.

¿Qué es IRIS RAD Studio?

IRIS RAD Studio es nuestra idea de una solución low-code para hacer más fácil la vida del desarrollador.

¿Por qué?

¿Y por qué no? Las aplicaciones low-code se han hecho muy populares últimamente. La imagen de abajo muestra el "Cuadrante mágico" ofrecido por la consultora Gartner para plataformas de aplicaciones low-code empresariales, y que muestra lo interesante que es este mercado.

0 0
0 46

"Así que su jefe le gritó por enviarle una página web con un "Hello World" sin formato"

Nuestra lección anterior terminó cuando proporcionamos un valor para el Mensaje desde Caché a un servicio REST para el cliente, y utilizamos Angular interfaz de usuario. Aunque hay muchas partes móviles involucradas en el proceso, la página no es especialmente emocionante en este momento. Antes de que empecemos a añadir nuevas funciones, deberíamos retroceder un poco y revisar nuestras herramientas.


0 0
0 346

La interoperabilidad en la asistencia sanitaria es esencial para mejorar la atención a los pacientes, reducir los costes de los proveedores de atención médica y ofrecer una imagen más precisa a los proveedores. Pero con tantos sistemas diferentes, los datos se presentan en diferentes formatos. Se han creado muchos estándares para tratar de resolver este problema, incluyendo HL7v2, HL7v3 y CDA, pero cada una tiene sus limitaciones.

0 0
1 254

En la primera parte de esta serie de artículos, hablamos sobre cómo leer un fragmento "grande" de datos del contenido sin procesar de un método HTTP POST y guardarlo en una base de datos como una propiedad de flujo de una clase. Ahora veremos cómo guardar esos datos y metadatos en formato JSON.

Desafortunadamente, Advanced REST Client no permite configurar objetos JSON con datos binarios como valor de una clave (o quizá simplemente no he descubierto cómo hacerlo), así que decidí escribir un cliente simple en ObjectScript para enviar datos al servidor.

Creé una nueva clase llamada RestTransfer.Client y le añadí los parámetros Server = "localhost" y Port = 52773 para describir mi servidor web. Y creé un método de clases GetLink en el que creo una nueva instancia de la clase %Net.HttpRequest y establezco sus propiedades con los parámetros mencionados anteriormente.

0 0
0 252
Artículo
David Reche · 27 ago, 2019 Lectura de 11 min
Presentación de InterSystems API Manager

¡Hola a tod@s!

Como posiblemente haya oído, acabamos de presentar InterSystems API Manager (IAM); una nueva característica de InterSystems IRIS Data Platform™, que permite monitorizar, controlar y gobernar el trafico desde y hacia APIs basadas en web, dentro de su infraestructura de TI. En caso de que se lo haya perdido, aquí está el enlace al anuncio.

En este artículo, mostraré como habilitar IAM y resaltar algunas de las muchas capacidades a las que IAM permite sacar provecho.

0 0
0 411

¡Hola Comunidad!

Se acaba de lanzar OpenAPI-Client Gen, una aplicación para crear una producción cliente de interoperabilidad de IRIS a partir de la especificación Swagger 2.0.

En vez de la herramienta existente ^%REST que crea una aplicación REST del lado del servidor, OpenAPI-Client Gen crea una plantilla completa de producción cliente de interoperabilidad REST.

0 0
0 201
Artículo
Ariel Arias · 23 nov, 2021 Lectura de 6 min
API REST, a una producción, un ejemplo rápido

Bajo el escenario que ya tenemos una API REST, funcionando, y queremos incorporarla a una producción para contar con trazabilidad y todas las ventajas que ofrece IRIS para interoperar, dejo este artículo para cambiar una API existente que responde un JSON, para responder el mismo JSON pero dejando sus trazas en una producción de la misma instancia.

Lo primero, ya contamos con una aplicación creada, llamada /restapi y que tiene como DispatchClass: Testing.REST.ApiDisp (o la clase que tenemos en nuestra instancia).

0 0
0 153

Para aquellos a los que, en un momento dado, necesitan probar cómo va eso del ECP para escalabilidad horizontal (cómputo y/o concurrencia de usuarios y procesos), pero les da pereza o no tienen tiempo de montar el entorno, configurar los nodos, etc..., acabo de publicar en Open Exchange la aplicación/ejemplo OPNEx-ECP Deployment .

0 0
0 93

Hola Comunidad!
Aprovechando la publicación de la nueva versión IRIS 2021.1 y también de IAM 2.3 os paso los ejercicios de un taller (workshop) sobre desarrollo de APIs REST y gestión de las mismas utilizando InterSystems API Manager.

Contiene ejercicios paso a paso para:

  • Crear APIs REST desde sus especificaciones OpenAPI.
  • Añadir, opcionalmente, la API creada a una producción de interoperabilidad.
  • Gestión básica de la API en InterSystems API Manager (consumidores, limitación, autenticación).
  • Planteamiento de algunos escenarios más complejos en InterSystems API Manager como balanceo de carga, o enrutamiento por cabecera.

Lo tenéis todo en la aplicación de Open Exchange vinculada.

0 0
0 93
Artículo
Alberto Fuentes · 7 feb, 2022 Lectura de 1 min
Devolver un fichero para descargar en tu API REST

Si tu API REST necesita retornar un fichero para que el cliente lo descargue, puedes utilizar lo siguiente (extraído de la pregunta https://community.intersystems.com/post/download-file-rest y sus respuestas):

Set %response.ContentType = "image/jpeg"
Do %response.SetHeader("Content-Disposition","attachment;filename=""test.jpg""")
Set %response.NoCharSetConvert=1
Set %response.Headers("Access-Control-Allow-Origin")="*"

 

Set stream=##class(%Stream.FileBinary).%New()
Set sc=stream.LinkToFile("/opt/irisbuild/output/test.jpg")
Do stream.OutputToDevice()

 

Set tSC=$$$OK
0 0
0 167
Artículo
Joel Espinoza · 28 oct, 2019 Lectura de 4 min
Cómo reenviar solicitudes en un servicio REST

¡Hola Comunidad!

Una función útil de nuestra estructura REST es la capacidad que tienen las clases de Dispatch para identificar los prefijos de una solicitud y redireccionarlos a otra clase de Dispatch. Este enfoque permite mejorar el orden y la lectura del código, permite mantener separadas las versiones de una interfaz fácilmente y ofrece una forma de proteger llamadas a APIs a las que solo ciertos usuarios podrán acceder.

0 1
0 168

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.

0 0
0 73

¡Hola desarrolladores!

Supón que tienes una clase persistente con datos y quieres tener una interfaz de usuario Angular sencilla, para ver los datos y llevar a cabo operaciones CRUD.

En este artículo describíamos cómo desarrollar una interfaz de usuario Angular para InterSystems IRIS utilizando RESTForms2.

A continuación vamos a explicar cómo conseguir una interfaz de usuario Angular sencilla que permita realizar operaciones CRUD y ver automáticamente los datos de tu clase de InterSystems IRIS en menos de 5 minutos.

¡Vamos!

0 1
0 141

¡Hola comunidad!

Esta publicación es una introducción a mi aplicación iris-fhir-client en Open Exchange.

Usando Python embebido y con la ayuda de la librería fhirpy, iris-fhir-client puede conectarse a cualquier servidor FHIR abierto.
Obten información de recursos por terminal y mediante el uso de la aplicación web CSP.

0 0
0 104