Artículo Dani Fibla · nov 4, 2022 2m read

Según la consultora IDC, el 80% de todos los datos producidos son NoSQL. Mira:

Hay documentos digitales y escaneados, textos online y offline, contenido BLOB (objeto binario grande) en SQL, imágenes, vídeos y audio. ¿Te imaginas una iniciativa de Analítica Corporativa sin todos estos datos para analizar y apoyar las decisiones?

En todo el mundo, muchos proyectos están utilizando tecnologías para transformar estos datos NoSQL en contenido de texto, para poder analizarlo.

0
1 156
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.

Para conseguir los complicados cálculos geométricos necesarios para realizar ese diagrama, usamos mermaid, una extraordinaria librería JavaScript open source. Y lo que me gustaría compartir con vosotros en este artículo es cómo utilizar esa librería. Me centraré solo en el diagrama de secuencia, pero estad seguros de que la librería permite hacer mucho más.

Mermaid utiliza una sintaxis inspirada en Markdown para definir los diagramas. Es super intuitivo, por eso es mejor mostraros un ejemplo en lugar de escribir un montón de texto aburrido:

0
0 534
Artículo Alberto Fuentes · mayo 26, 2022 2m read

¡Hola desarrolladores! ¿habéis tenido que desarrollar alguna integración DICOM alguna vez? Es posible que hayáis buscado ejemplo, o incluso un simulador con el que poder simular ciertas comandos. Aquí os paso un ejemplo que puede seros útil.

DICOM es un protocolo de comunicaciones muy extendido en sanidad en el ámbito de la imagen diagnóstica. Tanto con IRIS For Health como con Health Connect podéis desarrollar integraciones que empleen el protocolo DICOM, aquí tenéis disponible la documentación.

6
0 811
Anuncio Esther Sanchez · oct 20, 2022

¡Hola Comunidad!

Os presentamos la 2ª mesa redonda de la Comunidad - 45 minutos de animada charla sobre el tema: ¿Cuál es el mejor sistema de control de código fuente para desarrollar con InterSystems IRIS?

La idea es juntarse para compartir ideas, experiencias, trucos y consejos. Si tenéis alguna pregunta sobre el tema, podéis escribirla en los comentarios de esta publicación y se responderá durante la mesa redonda.

🗣 Ponente: @Evgeny Shvarov 
🗣 Co-presentadores: @Dmitry Maslennikov y @Timothy Leavitt

📅 Fecha: Jueves 27 de octubre
🕑 Hora: 3:00 PM (CEST)

➡️ Podéis registraros aquí

2
0 126
Artículo Ricardo Paiva · jun 4, 2021 4m read

Durante las últimas semanas, el equipo de Solution Architecture (Soluciones de Arquitectura) ha estado trabajando para terminar la carga de trabajo de 2019: esto incluyó la creación del código abierto de la Demostración de Readmisiones que llevó a cabo HIMSS el año pasado, para poder ponerla a disposición de cualquiera que busque una forma interactiva de explorar las herramientas proporcionadas por IRIS.

Durante el proceso de creación del código abierto de la demostración, nos encontramos de inmediato con un error crítico.

1
0 328
Anuncio Esther Sanchez · nov 1, 2022
Desarrolladores, ¿no habéis podido entrar en la Comunidad todo lo que os gustaría? ¡No os preocupéis! Os traemos un resumen de todo lo que hemos publicado en el mes de octubre: lo más visto, lo más comentado, lo más votado... Seguid leyendo y no os lo perdáis. ⬇️
Estadísticas generales
27 publicaciones nuevas:
    – 12 artículos
    – 13 anuncios
    – 2 preguntas
 
0
0 83
InterSystems Official David Reche · oct 31, 2022

Este es el décimo de una serie de lanzamientos que forman parte del programa de versiones de prueba 2022.2 para desarrolladores. Las próximas versiones de prueba se espera que sean actualizadas cada dos semanas, aproximadamente, y añadiremos funcionalidades según estén listas. Compartid, por favor, vuestro feedback a través de la Comunidad de Desarrolladores, para que entre todos podamos desarrollar un mejor producto.

0
0 108
Artículo Luis Angel Pérez Ramos · oct 28, 2022 8m read

Acceso a Producción Programática

Para editar producciones programáticamente (interfaces) puedes usar una combinación de APIs de Interoperabilidad y consultas SQL.

Namespace actual

Es importante conocer el namespace y la producción en la que estás trabajando.

// Object script 
// El namespace activo se guarda en esta variable
$$$NAMESPACE 
// Imprimir el namespace
Write $$$NAMESPACE
# Python
import iris
# Este método retorna el namespace activo
iris.utils._OriginalNamespace()
# Imprimir el namespace
print(iris.utils.
0
1 184
Artículo Jose-Tomas Salvador · mayo 11, 2022 3m read

Una de las formas más sencillas de configurar entornos de desarrollo repetibles es utilizar contenedores para ellos. Descubrí que cuando cambian rápidamente, era muy conveniente alojar una instancia de vscode dentro de mi contenedor de desarrollo. De este modo, he creado un script de contenedor sencillo que permite añadir en un contenedor IRIS un vscode basado en un navegador. Esto debería funcionar para la mayoría de los contenedores 2021.1 y posteriores.

1
0 165
Artículo Ricardo Paiva · oct 27, 2022 5m read

Este artículo es una continuación de este otro sobre cómo migrar de bases de datos populares (como PostgreSQL y MySQL) a IRIS.

Utilizaremos los mismos procedimientos utilizados para migrar desde PostgreSQL. Sin embargo, verás que es aún más fácil ya que los tipos de datos en MySQL son muy similares a los de IRIS. Por eso no necesitaremos crear reglas de transformación en las columnas.

Obtención de los datos de muestra para realizar el proceso de migración

En Github es posible descargar un proyecto de Docker Compose para crear y ejecutar 2 bases de datos:

  • Source Database (Base de datos de origen): Instancia Docker de la base de datos ejemplo MySQL.
  • Target Database (Base de datos objetivo): Instancia Docker de InterSystems IRIS con un esquema preparado para recibir la base de datos de origen.
0
0 223
Artículo Alberto Fuentes · abr 15, 2021 4m read

Hola a todos! Comentamos hoy una entrada de Timothy Leavitt cuyo equipo (Application Services en InterSystems - encargado de desarrollar y mantener muchas de nuestras aplicaciones internas, y proporcionar herramientas y prácticas recomendadas a otras aplicaciones departamentales), durante el último año, se embarcó en un viaje hacia el desarrollo de interfaces de usuario basadas en Angular/REST, para las aplicaciones existentes construidas originalmente con CSP y/o Zen.

2
0 224
Anuncio Esther Sanchez · oct 27, 2022

¡Hola Comunidad!

Ya podéis entrar en Global Masters para celebrar Halloween con nuevos y terroríficos retos

Completad todos los desafíos de la carpeta "It's a Halloween season 🎃" y participaréis en el sorteo de dos nuevos premios 🎁 - una cálida manta y un moderno escritorio portátil. 

> Ir a Global Masters <

0
0 206
Anuncio Esther Sanchez · oct 25, 2022

¡Hola Comunidad!

Os traigo la última novedad en Global Masters:

Hemos reorganizado los retos en la pestaña "Retos" y ahora todas las pruebas están organizadas en grupos (carpetas). 

Esperamos que ahora sea más fácil encontrar los retos más relevantes para cada uno. La página de inicio de Global Masters no ha cambiado.

¿Queréis ver el cambio?


Si tenéis algún comentario o idea sobre Global Masters, podéis escribirlo en los comentarios de esta publicación.

¿Aún no eres miembro de Global Masters? Puedes darte de alta utilizando tus credenciales de InterSystems.

0
0 90
Pregunta Marta Ventura-Costa · oct 3, 2022

Recibo un query del analizador (QBP^Q11) al que le contesto con un ACK (RSP^K11) y un OML^O33. Hata aquí, todo correcto, pero el analizador me envia un ACK(ORL^O34) al que desde ENSEMBLE, por defecto, se le contesta con otro ACK (ACK^O33). Es este último ACK que yo no quiero enviar, pero no hay manera de quitarlo.

¿Se puede evitar enviar los ACK's por defecto en ENSEMBLE?

Gracias

5
0 209
InterSystems Official David Reche · oct 21, 2022

Este es el noveno de una serie de lanzamientos que forman parte del programa de versiones de prueba 2022.2 para desarrolladores. Las próximas versiones de prueba se espera que sean actualizadas cada dos semanas, aproximadamente, y añadiremos funcionalidades según estén listas. Compartid, por favor, vuestro feedback a través de la Comunidad de Desarrolladores, para que entre todos podamos desarrollar un mejor producto.

0
0 81
Anuncio Luis Angel Pérez Ramos · oct 21, 2022

Quiero anunciar el lanzamiento de algo muy interesante - y revolucionario, de hecho. Puede sonar exagerado, pero no creo que hayáis visto nada como esto, ¡ni si quiera imaginar que sería posible!

Hemos sacado un nuevo módulo JavaScript/Node.js llamado glsdb del que podéis leer todo aquí:

https://github.com/robtweed/glsdb

No obstante, para el propósito de este anuncio, me voy a centrar en una parte de glsdb: sus APIs que abstraen las Clases de IRIS (o Cache) como Objetos JavaScript equivalentes.

Con esto quiero decir que los Objetos de JavaScript serán en realidad ¡Objetos IRIS persistidos en la base de datos! 

0
0 107
Anuncio Esther Sanchez · oct 21, 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!

Alberto Fuentes mostró cómo desplegar arquitecturas de InterSystems IRIS con Alta Disponibilidad utilizando Kubernetes y el IKO (InterSystems Kubernetes Operator), utilizó servicios de AWS (Amazon Web Services) para realizar ejemplos de despliegue, comentó distintas arquitecturas de alta disponibilidad que se pueden montar fácilmente.... ¡y muchas cosas más! Por eso, si utilizáis Kubernetes... ¡no os perdáis el vídeo!

Despliegues en Kubernetes con Alta Disponibilidad

0
1 176
Artículo Ricardo Paiva · ene 29, 2021 8m read

¡Hola Desarroladores!

IRIS External Table es un proyecto de código abierto de la comunidad de InterSystems, que permite utilizar archivos almacenados en el sistema de archivos local y almacenar objetos en la nube como AWS S3 y tablas SQL. IRIS External Table

Se puede encontrar en GitHub https://github.com/intersystems-community/IRIS-ExternalTable Open Exchange https://openexchange.intersystems.com/package/IRIS-External-Table y está incluido en el administrador de paquetes InterSystems Package Manager (ZPM).

Para instalar External Table desde GitHub, utilice:

git clone https://github.com/antonum/IRIS-ExternalTable.
1
0 163
Artículo Ricardo Paiva · oct 20, 2022 2m read

Me gustaría compartir un ejemplo sobre cómo la nueva funcionalidad de Python Embebido en IRIS me ha ayudado en mis rutinas diarias.

Mientras participaba en el proyecto iris-kaggle-socrata-generator con Henrique Dias, tuve que descomprimir conjuntos de datos de Kaggle para poder importarlos.

Conseguí hacerlo fácilmente mediante el uso de la librería zipfile en Python (este código se copió de este stackoverflow):

Method UnZip(pZipFileName As %String, pExtractToDir As %String) As %DynamicArray [ Language = python ]
{
    import zipfile
    import iris
    with zipfile.
0
1 153
Anuncio Esther Sanchez · sep 29, 2022

¡Hola desarrolladores!

Os invitamos a un nuevo webinar en español: "Despliegues en Kubernetes con Alta Disponibilidad", el jueves 20 de octubre, a las 4:00 PM (CEST).

  

El webinar está dirigido a desarrolladores y técnicos DevOps que quieran aprender a automatizar de forma sencilla despliegues de tecnología InterSystems utilizando Kubernetes.

2
1 13781
Artículo Nancy Martínez · oct 18, 2022 1m read

¡Hola desarrolladores!

Para mí, una de las peores cosas de ObjectScript es tener que escribir la sentencia ##class(Class).Method() para llamar a un método de clase en código o en un terminal. Incluso envié una idea para simplificarlo en ObjectScript.

¡Pero! Hay una nueva funcionalidad en VSCode ObjectScript que acaba de ser añadida al plugin - ¡Copy Invocation!

Solo hay que poner el cursor sobre el enlace Copy Invocation que aparece encima de cada método de clase del código, hacer clic en él y la invocación se copia en el buffer:

Pegadlo donde queráis que se ejecute.

USER>w ##class(dc.sample.
0
0 177
Artículo Yaron Munz · sep 23, 2022 5m read

Resumen

Empezamos a usar Azure Service Bus (ASB) como solución de mensajería empresarial hace tres años. La hemos usado para publicar y consumir datos entre muchas aplicaciones de la organización. Como el flujo de datos es complejo, y normalmente se necesitan los datos de una aplicación en muchas otras aplicaciones, el modelo publicador -> múltiples subscriptores resultó muy adecuado. El uso de ASB en la organización es de docenas de millones de mensajes por día, mientras que la plataforma IRIS tiene unos 2-3 millones de mensajes/día.

El problema con ASB

Cuando empezamos con la integración de ASB, encontramos que el protocolo AMQP no tiene la configuración predeterminada para la implementación de IRIS, por lo que estuvimos buscando una solución alternativa para poder comunicar con ASB.

1
1 172
Anuncio Esther Sanchez · oct 18, 2022

¡Hola Comunidad!

El 1er Ideatón (Maratón de ideas) de InterSystems ha terminado. Se han publicado 75 brillantes ideas – ¡ha sido un éxito absoluto! 🤩 

¡Muchísimas gracias a todos los que habéis participado con ideas y/o contribuido con votos y comentarios! 

Ya podemos anunciar los ganadores...

0
0 139
Artículo Luis Angel Pérez Ramos · oct 17, 2022 2m read

Acabo de redactar un ejemplo rápido para ayudar a un colega a cargar datos en IRIS desde R usando RJDBC y pensé que sería útil compartirlo aquí para futuras consultas.

Fue bastante sencillo, aparte de que a IRIS no le gusta el uso de puntos "." en los nombres de las columnas; la solución alternativa es simplemente renombrar las columnas. Alguien con más conocimientos que yo en R seguramente pueda ofrecer un enfoque más amplio smiley

# Es necesario un valor válido para el JAVA_HOME antes de cargar la librería (RJDBC)
Sys.setenv(JAVA_HOME="C:\\Java\\jdk-8.0.322.6-hotspot\\jre")
library(RJDBC)
library(dplyr)

# Conexión a IRIS – se requiere la ruta a la librería JAR de InterSystems JDBC JAR de tu instalación
drv <- JDBC("com.intersystems.jdbc.IRISDriver", "C:\\InterSystems\\IRIS\\dev\\java\\lib\\1.8\\intersystems-jdbc-3.3.0.jar","\"")
conn <- dbConnect(drv, "jdbc:IRIS://localhost:1972/USER", "IRIS Username", "IRIS Password")
dbListTables(conn)

# Para mayor confusión, cargar el dataset de IRIS:)
data(iris)

# A IRIS no le gustan los puntos "." en el nombre de las columnas, así que los renombramos. (Probablemente se pueda codificar de una forma más genérica, pero no soy muy bueno con R.)
iris <- iris %>% rename(sepal_length = Sepal.Length, sepal_width = Sepal.Width, petal_length = Petal.Length, petal_width = Petal.Width)

# dbWriteTable/dbGetQuery/dbReadTable funcionan
dbWriteTable(conn, "iris", iris, overwrite = TRUE)
dbGetQuery(conn, "select count(*) from iris")
d <- dbReadTable(conn, "iris")
0
0 135
Artículo Alberto Fuentes · oct 14, 2022 11m read

Iris-python-template

Proyecto de plantilla con varios códigos Python para ser utilizados con InterSystems IRIS Community Edition con contenedor.

Contenido:

  • Bloc de notas
    • Kernel de Python Embebido
    • Kernel de ObjectScript
    • Kernel de Vanilla Python
  • Python Embebido
    • Ejemplo de código
    • Demostración de Flask
  • API nativas de Python de IRIS
    • Ejemplo de código

Diagrama

0
1 371
Anuncio Esther Sanchez · oct 10, 2022

¡Hola Comunidad!

El día 16 de noviembre por la mañana, de 12:00 a 14:00 h., en el hotel The Westin Valencia, tendrá lugar el Primer Encuentro (Meetup) de los miembros de la Comunidad. Aprovechamos ese día y lugar ya que eI Iberia Summit, la Convención anual de InterSystems Iberia, se celebrará allí los días 16 y 17 de noviembre. 

El Encuentro de Desarrolladores es el evento perfecto para conocer en persona a otros miembros de la Comunidad de Desarrolladores, compartir experiencias, aprender, resolver dudas, conocer trucos, herramientas, recursos... y charlar directamente con los expertos de InterSystems!

El Meetup es abierto e informal. Por lo tanto, está abierto a propuestas y a la asistencia de cualquier miembro de la Comunidad. Y, por supuesto, es gratuito. Todos los asistentes recibirán un presente por su asistencia, que servirá como recuerdo de ese día. Y al final del encuentro tendremos un Kahoot con fantásticos premios para los ganadores. ¡Ah! También tendremos pizza y bebidas, el "alimento" de los desarrolladores 😉

El objetivo del Meetup es aprovechar lo máximo posible el networking con otros desarrolladores, pero también se puede participar activamente, pues cualquier voluntario puede realizar una presentación. ¿Te animas?

    ➡️ ¿Quieres presentar tu trabajo en el Meetup?

    💻 Escribe a david.reche@intersystems.com indicando tu nombre, tu empresa y el tema del que quieres hablar en el Meetup

    1
    0 178
    Artículo Daniel Aguilar · oct 10, 2022 3m read

    Hola desarrolladores!,

    Ya se lo que estáis pensando. " Una mejora para ZEN.proxyObject...??? ¿Ahora...????

    Bueno en España tenemos el dicho de mas vale tarde que nunca.  ;-)

    ¿Alguna vez has necesitado enviar un atributo numérico de un JSON en formato String?

    ¿Te volviste loco casteando objetos de clases con propiedades fijas y tipadas?

    Pues estás de enhorabuena!! porque ahora podrás hacerlo fácilmente!!.

    Con esta nueva mejora os propongo una forma en la que podamos continuar trabajando con nuestros amados objetos

    1
    0 136