¡Hola a tod@s!

En este artículo voy a hablar sobre los Globals, esas espadas mágicas para almacenar datos, que han estado con nosotros desde hace tiempo, pero no mucha gente las utiliza de forma eficiente o realmente conoce esta súper herramienta.

Si se utilizan globals para realizar las tareas en donde realmente brillan, los resultados pueden ser sorprendentes, ya sea en términos de un mayor rendimiento o en una simplificación drástica de la solución en general (1, 2).

Globals ofrecen una forma especial de almacenar y procesar datos, la cual es completamente diferente de las tablas SQL. Se introdujeron por primera vez en 1966 con el lenguaje de programación M(UMPS), donde inicialmente se utilizaron en las bases de datos médicas. Todavía se usan de la misma manera, pero también fueron adoptados por otras industrias donde la confiabilidad y el alto rendimiento son la máxima prioridad (como en las finanzas, las operaciones comerciales, etc.)

1 0
1 207

¡Hola Comunidad!

Voy a empezar a traducir los artículos de mi compañero Murray sobre rendimiento, pues son muy interesantes y merece la pena echarles un vistazo. Aprovecho para comentar que si tenéis preguntas y /o problemas de rendimiento os animéis a escribir y entre todos trataremos de ayudaros. Empecemos...

Tu aplicación está implementada y todo funciona bien. ¡Genial, enhorabuena! Pero, de repente, el teléfono empieza a sonar sin parar: son usuarios que se quejan de que la aplicación a veces se vuelve "lenta". Pero... ¿qué quiere decir eso? ¿A veces? ¿De qué herramientas dispones y a qué estadísticas deberías prestar atención para encontrar y resolver la lentitud? ¿La infraestructura de tu sistema está a la altura de la carga de usuarios? ¿Qué preguntas de diseño de infraestructura deberías haber hecho antes de haber pasado a producción? ¿Cómo puedes hacer la planificación de capacidad para nuevo hardware con confianza y sin gastar en más hardware del necesario? ¿Cómo hacer que el teléfono deje de sonar? ¿Cómo podrías haber evitado que sonara desde un principio?

1 0
0 223

¡Hola a tod@s!

El desarrollo completo en JavaScript (Full-Stack) permite crear aplicaciones de última generación con Caché. En cualquiera de las aplicaciones (web) que se desarrollan hoy en día, hay que tomar muchas decisiones estructurales y debemos saber cuales son las decisiones correctas. Con el conector Node.js disponible para Caché, se puede crear un potente servidor de aplicaciones, que permitirá utilizar la última tecnología de JavaScript y marcos de aplicaciones (frameworks) tanto del lado del cliente como del servidor.

Con todas estas nuevas tecnologías, lo más importante es integrarlas de la manera más eficiente posible y que permitan generar una experiencia de desarrollo muy productiva. Este artículo pretende introducirte paso a paso en la tecnología Node.js.

1 0
0 519

Si os habéis pasado de Studio a VSCode recientemente tal vez os hayáis dado cuenta de que en el Explorador faltan algunos elementos.
Por ejemplo, cuando se crea una API REST a partir de sus especificaciones, se generan 3 clases: <api>.impl, <api>.disp y <api>.spec, sin embargo la clase <api>.disp no se muestra por defecto en el Explorador.

1 0
0 66
Artículo
· 12 nov, 2021 Lectura de 21 min
Curso de formación sobre Ensemble / Interoperabilidad

Este curso de formación está dirigido a todas las personas interesadas en conocer el framework de Interoperabilidad de IRIS. Utilizaremos Docker y VSCode.

GitHub: https://github.com/grongierisc/formation-template

1. Formación en Ensemble/Interoperabilidad

El objetivo de esta formación es aprender el framework de interoperabilidad de InterSystems, y en particular el uso de:
* Producciones
* Mensajes
* Business Operations
* Adaptadores
* Business Processes
* Business Services
* Operaciones y servicios REST

1 0
0 225
Artículo
· 8 feb, 2023 Lectura de 3 min
Leyendo archivos Excel usando Python Embedded

Python Embedded es una gran herramienta considerando la simpleza y gran cantidad de librerías disponibles, así como una gran comunidad de desarrolladores con toneladas de ejemplos y documentación.

En el siguiente ejemplo les presento una solución para un problema común utilizando Python y ObjectScript.

Un caso de uso muy común es recuperar data desde planillas excel y poblar un objeto persistente en nuestro modelo en IRIS.

para esto utilizaremos pandas, una popular librería Python que nos permite trabajar con DataFrames

1 0
0 173

Hemos visto como instalar nuestro EMPI en modo standalone y, parafraseando a Fray Luis de León, como decíamos ayer, procederemos a exponer como realizar una configuración básica, sin demasiadas pretensiones, de nuestro EMPI.

Primeramente deberemos realizar la configuración básica inicial, y para ello deberemos acceder a la opción del menú de Configuración de nuestro Registry.

1 0
0 126

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 47

Interactuar con usuarios en la terminal: una guía para usar %Library.Prompt en IRIS

¿Alguna vez te has preguntado cómo comandos como ^DATABASE atraen a los usuarios en la terminal? O tal vez esté escribiendo una rutina de automatización y desee formas de especificar opciones directamente desde la terminal. Afortunadamente, la clase %Library.Prompt en IRIS ofrece una forma sencilla de hacerlo.

1 0
0 99
Artículo
· 2 mar, 2021 Lectura de 1 min
Análisis de errores de aplicación

¡Hola, desarrolladores!

Como sabeis, los errores de la aplicación están en el global ^ERRORS. Aparecen si los llamas:

d e.Log() 

en la sección Catch de Try-Catch.

Con la propuesta de @Robert Cemper, ahora se puede utilizar SQL para examinarlo.

Inspirado por el módulo de Robert, presenté un módulo simple de IRIS Analytics que muestra estos errores en un dashboard:

1 0
0 133
Artículo
· 14 ene, 2022 Lectura de 6 min
Configuración del entorno con config-api

Hola desarrolladores,

Escribir un script para el despliegue de una aplicación puede ser muy interesante para garantizar un despliegue rápido sin olvidarse de nada.
config-api es una biblioteca para ayudar a los desarrolladores a escribir scripts de configuración basados en un documento JSON.

Características implementadas:

1 1
0 141

¡Hola Comunidad!

Me gustaría anunciaros brevemente tres nuevos paquetes, disponibles en Open Exchange / a través de ZPM, que pueden realmente ayudaros a acelerar el desarrollo en IRIS de aplicaciones full-stack modernas. Todo esto se anunció la semana pasada en una sesión del Global Summit, pero muchos no pudisteis asistir. Además, me acabo de enterar de que justo ahora está en marcha un concurso de desarrollo de aplicaciones full-stack!

1 0
0 105
Artículo
· 22 sep, 2022 Lectura de 5 min
¿Cómo encontrar el conjunto de datos que necesitas?

¡Hola Comunidad!

Durante años he trabajado en muchos proyectos diferentes y he podido encontrar muchos datos interesantes.

Pero la mayoría de las veces el conjunto de datos con el que trabajaba era de los clientes. Cuando hace un par de años empecé a participar en los Concursos de Programación de InterSystems, comencé a buscar conjuntos de datos web específicos.

Yo mismo he ido seleccionando algunos datos, pero he pensado: "¿Este conjunto de datos es suficiente para ayudar a otras personas?"

1 0
1 73
Artículo
· 22 nov, 2022 Lectura de 6 min
Linked Tables + Analítica

Caso de Uso: tenemos acceso a datos remotos; vía JDBC o vía ODBC desde IRIS, y queremos presentar la información en un Dashboard, pero no deseamos o no podemos migrar dicha información a IRIS.

Alternativa: Tomamos ventaja de la conexión al origen de Datos, usamos "Linked Tables" de IRIS, luego podemos realizar el análisis a estos datos y presentarlos finalmente en un Dashboard.

Para este ejemplo vamos a realizarlo en este escenario:

1 0
1 100

Comenzamos esta nueva entrega recordando que hicimos en los anteriores artículos de configuración del EMPI:

  • Instalado en modo Standalone el Patient Index sobre una instancia de HealthShare.
  • Configurado los parámetros básicos para empezar a trabajar con el EMPI.
  • Definido los índices y pesos particulares para nuestro proceso NICE.

Muy bien, estamos ya practicamente preparados para echar a rodar nuestro EMPI. Sólo nos queda un detalle, arrancar la producción creada por la instalación para poder empezar a trabajar.

1 0
1 107
Artículo
· 11 abr, 2023 Lectura de 3 min
Tutorial rápido para crear bases de datos de ejemplo

Introducción

Este es un sencillo tutorial sobre la manera más rápida que conozco para crear una base de datos de ejemplo para cualquier propósito, como hacer pruebas, hacer ejemplos para tutoriales, etc.

Creando un namespace

  1. Abre el terminal
  2. Escribe "D $SYSTEM.SQL.Shell()"
  3. Escribe "CREATE DATABASE " y el nombre que quieres para tu namespace.

Ahora tienes un nuevo namespace de una manera más rápida que creándolo desde el Portal de Gestión - que por supuesto ofrece más opciones de configuración.

1 0
0 162

Preguntas frecuentes de InterSystems

Podéis ver el espacio libre disponible para la base de datos usando la opción "Free space view" (Ver espacio libre) en el Management Portal: System Operation > Databases.

Y se puede obtener mediante programación a través la consulta FreeSpace de la clase del sistema SYS.Database.

1 0
0 76

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

Desde hace un tiempo tenía pendiente hacer algún tipo de prueba de concepto con la funcionalidad de Workflow, la cual, como tantas otras funcionalidades presentes en IRIS, suele pasar bastante desapercibida para nuestros clientes (y por lo cual entono el mea culpa). Por ello me decidí hace unos días a desarrollar un ejemplo de cómo configurar y explotar esta funcionalidad conectándola con una interfaz de usuario desarrollada en Angular.

1 0
0 16
Artículo
· 7 mayo, 2020 Lectura de 6 min
Python Gateway. Parte I: Introducción

Esta serie de artículos describe el uso del Python Gateway para InterSystems IRIS. Python Gateway permite acceder a toda la potencia de las librerías Python y las herramientas de Aprendizaje máquina (IAML) desde InterSystems IRIS y:

  • Ejecutar cualquier código Python
  • Transferir datos de forma transparente desde IRIS a Python
  • Construir procesos de interoperabilidad inteligente con el Adaptador de Python
  • Guardar, revisar, modificar y restaurar el contexto de Python desde InterSystems IRIS

1 0
0 333

Introducción: nuestra pequeña pero muy ambiciosa empresa llamada “Black Mushroom Studio” tuvo una idea para desarrollar un proyecto de comercio electrónico, y una aplicación móvil que permitiría a los usuarios pagar por ciertos bienes/servicios mediante un agregador de pagos.

Lo que teníamos inicialmente: un esqueleto para la aplicación en Android que, por supuesto, prefería la comunicación mediante HTTP y JSON, y un sistema de pago con una API, es decir, servicios web con contenido SOAP.

Objetivo: hacer que todo funcionara de manera conjunta.

1 0
0 150