La Comunidad de desarrolladores de InterSystems es una comunidad de 17,943 desarrolladores increíbles
¡Somos un lugar donde los programadores de InterSystems IRIS aprenden y comparten, se mantienen actualizados, crecen juntos y se divierten!
Artículo
· 25 nov, 2020 Lectura de 17 min
Objetos de proxy remoto mediante despacho dinámico

Este artículo fue creado como efecto secundario de las preparaciones para un conjunto más extendido de artículos sobre la simple, pero útil, implementación de MapReduce en Caché. Estaba buscando una forma relativamente fácil de pasar argumentos a (potencialmente) múltiples objetivos mediante mecanismos de invocación remota. Y tras varios intentos, me di cuenta de que en el ObjectScript de Caché contamos con mecanismos muy potentes que podrían ser de utilidad para esto: dynamix dispatching para métodos y propiedades.

1 0
1 119

¡Hola a todos!

¿Cuándo una publicación en la Comunidad de Desarrolladores no es una publicación en la Comunidad de Desarrolladores? ¡Cuando es solo un grupo de frases envolviendo un enlace a la Documentación de InterSystems! Y qué mejor manera de empezar 2022 que mostrándoos algo muy chulo que ha estado disponible desde la versión 2020.3??:

Cómo repetir comandos anteriores

¡Creo que os encantará! Y contadme vuestro alias favorito en los comentarios. ¡Feliz año nuevo!

0 0
0 119

¡Hola desarrolladores!

Os traemos el cuarto videotutorial de la serie de vídeos de iniciación a ObjectScript que ha realizado nuestro compañero @Jose Tomas Salvador, de InterSystems Iberia.

Capítulo 3: Mi contexto de ejecución

https://www.youtube.com/embed/rYPzP3UQAD4
[Este es un enlace integrado, pero no puede ver el contenido integrado directamente en el sitio porque rechazó las cookies que se necesitan para acceder a él. Para ver el contenido integrado, debe aceptar todas las cookies desde la Configuración de cookies]

1 0
0 119

¡Hola desarrolladores!

Os traemos el séptimo y último videotutorial de la serie de vídeos de iniciación a ObjectScript que ha realizado nuestro compañero @Jose Tomas Salvador, de InterSystems Iberia.

Capítulo 6: ¿Y cómo trabajo con SQL?

https://www.youtube.com/embed/13eLTwEmOaQ
[Este es un enlace integrado, pero no puede ver el contenido integrado directamente en el sitio porque rechazó las cookies que se necesitan para acceder a él. Para ver el contenido integrado, debe aceptar todas las cookies desde la Configuración de cookies]

1 0
0 119

¡Hola desarrolladores!

Solo quiero compartir una antigua pero muy relevante buena práctica en el cambio de namespaces que @Dmitry Maslennikov compartió conmigo.

Consideremos el método:

classmethod DoSomethingInSYS() as %Status

{

set sc=$$$OK

set ns=$namespace

zn "%SYS"

// try-catch in case there will be an error

try {

// do something, e.g. config change

}

catch {}

 zn ns    ; returning back to the namespace we came in the routine

return sc

}

1 0
0 119

¡Hola Comunidad!

Este artículo muestra cómo crear Pacientes y Recursos de Observación de Pacientes mediante el uso de la aplicación iris-fhir-client.
image

Recomiendo leer mi primer artículo sobre esta aplicación y ver el vídeo de Youtube antes de continuar.

¡Empezamos!

0 0
0 119

¡Hola a todos!

Hoy es miércoles y por eso tenemos un nuevo video en nuestro Canal de YouTube, grabado en un nuevo formato, "Coding Talks":

https://www.youtube.com/embed/L77K9oAgexQ
[Este es un enlace integrado, pero no puede ver el contenido integrado directamente en el sitio porque rechazó las cookies que se necesitan para acceder a él. Para ver el contenido integrado, debe aceptar todas las cookies desde la Configuración de cookies]

Autor del vídeo: @Evgeny Shvarov

Objetivo del vídeo: Cómo implementar una solución sobre InterSystems IRIS mediante ObjectScript utilizando Docker, con un ejemplo de un repositorio de código dockerizado.

1 0
0 119

Esta es la cuarta parte de una serie de artículos sobre migración desde las principales bases de datos del mercado a InterSystems IRIS. En esta parte, explicaré los pasos para migrar desde Microsoft SQL Server.

Como describí en los anteriores artículos, actualmente hay varias opciones para hacer la migración. Sin embargo, las dos opciones más populares incluyen el uso de DBeaver (https://openexchange.intersystems.com/package/DBeaver) o SQLGateway. Explicaremos la primera opción aquí. La segunda opción fue explicada por Robert Cemper en un excelente artículo: Migración de base de datos usando SQLgateway.

1 0
0 119

¡Hola Comunidad!

Tenemos un nuevo video en el Canal de YouTube de la Developer Community:

InterSystems IRIS con Spark, hasta el resultado final

https://www.youtube.com/embed/W53PSUkiuS0
[Este es un enlace integrado, pero no puede ver el contenido integrado directamente en el sitio porque rechazó las cookies que se necesitan para acceder a él. Para ver el contenido integrado, debe aceptar todas las cookies desde la Configuración de cookies]

0 0
0 118

Por qué he decidido escribir esto

Recientemente tuve el reto de crear un método de autenticación seguro para autorizar el acceso a algunos datos, pero desafortunadamente no tenía ninguna experiencia con esas configuraciones de seguridad y sentí que me faltaban algunos conceptos básicos para entender mejor la documentación oficial.

Después de estudiar y lograr entregar las clases que me pidieron hacer, me gustaría compartir un poco de mi nuevo conocimiento, que me ayudó a seguir los temas de la documentación.

Empezando por lo básico: la santísima trinidad de los servidores

Primero, es importante entender de qué estamos hablando exactamente. En general, tenemos datos que pueden ser sensibles, o por cualquier razón necesitan protección. Hay personas (usuarios) que podrán verlos, otras podrán cambiarlos y otras no tendrán ningún tipo de acceso. Para ocuparse de los usuarios, el acceso y los datos, tendremos tres servidores: el del cliente, el de recursos y el de autorización.

0 0
0 118

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
0 118

¡Hola desarrolladores!

Últimamente nos han preguntado varias personas cómo participar en la Comunidad y ser un miembro activo y útil en ella.

Es muy sencillo. Podéis:

1. Responder preguntas

Hay muchas preguntas sin respuesta y también preguntas sin una respuesta aceptada. Todos los miembros de la Comunidad pueden responder a las preguntas, compartir su conocimiento y ayudar a otros.

2. Publicar artículos

Todos los miembros de la Comunidad pueden escribir artículos que describan su experiencia con la tecnología de InterSystems: la solución que utilizan, su conocimiento, trucos...

Hay muchos ejemplos de artículos que han sido y siguen siendo muy útiles para la Comunidad.

También se pueden traducir artículos a español, portugués, inglés o japonés.

3. Contribuir en Open Exchange

Todos los miembros de la Comunidad pueden compartir librerías, soluciones y herramientas en Open Exchange - a través de Github, Gitlab o cualquier otro repositorio público.

1 2
0 118

¡Hola desarrolladores!

Si os gustan los famosos concursos de Adviento "Advent of Code", con sus retos de programación diarios hasta el día de Navidad, os encantará nuestra versión.

➡️ Participad en el Advent of Code 2022 de InterSystems y podréis ganar alguno de los premios en metálico que hay para los ganadores. ¡Animaos a poner a prueba vuestros conocimientos de ObjectScript! 😄

0 1
0 118

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 118

Recientemente me encontré con un HS Caché que no arranca informando que la Collation 30 no está disponible, pero no he encontrado una manera fácil de saber qué colación es 30.

Ejecutando el siguiente comando devuelve las Collations de la locale actual, pero no de todas ellas

Set Rset = ##class(%ResultSet).%New("%Library.Collate:CollationList")

d Rset.Execute()

While (Rset.Next()) {zw Rset.Number_": "_Rset.Name}

Gracias

0 1
0 118

¡Hola desarrolladores!

Os traemos el sexto y último tutorial grabado por @David Reche, y disponible en el canal de YouTube de la Comunidad de Desarrolladores en español: Persistencia de Objetos con InterSystems IRIS.

En este tutorial de siete minutos, David nos explicará la persistencia de objetos con InterSystems IRIS.

Tutorial 6: Persistencia de objetos con InterSystems IRIS

https://www.youtube.com/embed/VAXxQWhOcow
[Este es un enlace integrado, pero no puede ver el contenido integrado directamente en el sitio porque rechazó las cookies que se necesitan para acceder a él. Para ver el contenido integrado, debe aceptar todas las cookies desde la Configuración de cookies]

0 0
0 118

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

En el pasado artículo presentamos la arquitectura de nuestro proyecto de SMART On FHIR, así que es hora de meternos en harina y empezar a configurar todos los elementos que vamos a necesitar.

Primeramente comenzaremos con Auth0.

Configuración de AUTH0

Comenzaremos creando una cuenta de Auth0 con un correo válido, una vez dados de alta deberemos crear nuestra primera aplicación, y lo haremos desde el menú de la izquieda:

1 0
0 118

¡Hola desarrolladores!

Nos complace anunciaros que vamos a ofrecer una convocatoria gratuita para un examen de certificación de InterSystems a todas las personas inscritas en el Global Summit 2022. El precio habitual de estos exámenes es de 150$ por examen.

Los exámenes deberán realizarse durante una de las 7 sesiones vigiladas que habrá durante la Convención.

0 0
0 118

¡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
0 117

¡Hola desarrolladores!

Os traemos un nuevo vídeo, disponible en el canal de YouTube de la Comunidad de Desarrolladores en inglés, que muestra cómo desarrollar con InterSystems ObjectScript usando el plug-in de Visual Studio Code.

Cómo usar Visual Studio Code y ObjectScript

https://www.youtube.com/embed/swmkF0EIcS8
[Este es un enlace integrado, pero no puede ver el contenido integrado directamente en el sitio porque rechazó las cookies que se necesitan para acceder a él. Para ver el contenido integrado, debe aceptar todas las cookies desde la Configuración de cookies]

0 0
0 117
Artículo
· 7 sep, 2021 Lectura de 3 min
ObjectScript sobre ODBC
Este es un ejemplo de código que funciona en IRIS 2020.1 y en Caché 2018.1.3 
No se mantendrá sincronizado con las nuevas versiones.  
Y NO cuenta con el servicio de soporte de InterSystems.
De vez en cuando, puedes encontrarte una situación en la que, por diferentes razones, ODBC es la única opción para acceder a un sistema remoto. Lo cual es suficiente mientras necesites examinar o cambiar tablas. Pero no puedes ejecutar directamente algunos comandos o cambiar algunos globals.
0 0
0 117

¡Volvemos al ataque con la Quiniela! 8ª jornada en Primera y Segunda División y con la QuinielaML deseando resarcirse de los 4 aciertos del pasado fin de semana. Aquí tenemos el boleto de esta jornada:

Y estas son las predicciones para Primera División:

Y ahora para Segunda División:

1 1
0 117

Estoy utilizando RestForms2 para disponer de una API Rest sobre unas tablas de forma rápida.

El caso es que he añadido un trigger a las tablas para que, cada vez que se inserte/actualice/borre un registro, registre en una tabla de históricos los cambios, pudiendo ver el valor original y el nuevo de cada propiedad.

Pero el trigger solamente salta si la inserción se realiza mediante SQL. No salta creando un nuevo objeto.

0 2
0 117

¡Hola desarrolladores!

Hemos creado una serie de Concursos de Programación en InterSystems IRIS para todo el año.

En marzo ya empezamos con ObjectScript CLI y los temas para los próximos meses son los siguientes:

  • Abril - InterSystems IRIS con REST-API
  • Mayo - InterSystems IRIS Native API application: uso de API nativas de Python, JS, .NET, Java en una aplicación IRIS.
  • Junio/julio - InterSystems IRIS AI/ML solutions. IntegratedML como bonus.
  • Agosto - InterSystems IRIS for Health FHIR application
  • Septiembre - InterSystems IRIS Full-stack application: IRIS como servidor y UI en cualquier framework y en cualquier forma: web, desktop, mobile UI.
  • Octubre - Interoperability Adapters for InterSystems IRIS and InterSystems IRIS for Health
  • Noviembre - Multi-model solution using InterSystems IRIS
  • Diciembre - Interoperability Solution using InterSystems IRIS

Todas las aplicaciones deben ser ejecutables con InterSystems IRIS en un contenedor docker.

0 0
0 117