#InterSystems IRIS

4 Seguidores · 1.4K Publicaciones

InterSystems IRIS es una Plataforma completa de datos.
InterSystems IRIS le proporciona todo lo que necesita para capturar, compartir, comprender y actuar sobre el activo más valioso de su organización, sus datos.
Dado que es una plataforma completa, InterSystems IRIS elimina la necesidad de integrar varias tecnologías de desarrollo. Las aplicaciones necesitan una menor cantidad de código, menos recursos del sistema y poco mantenimiento.

Anuncio Jose-Tomas Salvador · sep 19, 2023

De vez en cuando InterSystems debe volver a lanzar una versión para corregir 1o 2 problemas muy específicos. Este proceso genera nuevos kits llamados "Point Releases".

Una Point Release es diferente de las versiones de mantenimiento o las versiones mayores con nuevas funcionalidades (Extended Releases) . Su objetivo es corregir de forma rápida y precisaun problema urgente en producción.  

Cómo identificar una point release

0
0 105
Artículo Luis Angel Pérez Ramos · sep 15, 2023 1m read

Como bien sabréis los que seguís habitualmente las publicaciones de nuestra Comunidad, disponemos de una aplicación desarrollada con Angular e IRIS que nos permite obtener estimaciones sobre los resultados de Primera y Segunda División del fútbol español llamada QuinielaML. Pues bien, ¡pongámosla a prueba!

Estos son los partidos que entran en la Quiniela de la 7ª jornada:

Veamos las estimaciones para Primera División de nuestra aplicación:

Y ahora para Segunda División:

¡Ale! Ya lo tenéis todo para haceros millonarios. El martes repasaremos los resultados y veremos cómo de fiables so

1
0 251
Artículo Pierre-Yves Duquesnoy · sep 18, 2023 10m read

Power BI

Conectar a una Fuente de Datos

Para conectarse a AtScale, utilizaremos la base de datos de SQL Server Analysis Services. Vamos a abrirla en el editor de Power Query. Para hacerlo, hay que seleccionar Transform Data en la pestaña Home.

En la ventana que aparece, id a Home,New Source y seleccionad Analysis Services.

1
0 319
Anuncio Esther Sanchez · sep 18, 2023

Si estáis pensando en empezar con SQL en InterSystems IRIS o queréis hacer vuestras consultas más eficientes, podéis completar uno de estos breves ejercicios de formación online! (en inglés)

SQL Exercise 

Ambos ejercicios ponen a vuestra disposición una instancia de IRIS en la nube (o learning lab) por lo que no necesitaréis realizar ninguna instalación previa en vuestros equipos

0
0 197
Artículo Jose-Tomas Salvador · sep 15, 2023 42m read

Este artículo ha sido actualizado con respecto al original en inglés (más antiguo). Los ejemplos que se presentan aquí han sido validados con la última versión de IAM, actualmente la 3.2.1.0-4, y la versión más reciente de InterSystems IRIS, la 2023.2, que es la primera en que ya no se instala por defecto un servidor web.

Este artículo contiene los materiales, ejemplos y ejercicios necesarios para aprender los conceptos básicos de IAM.

Todos los recursos están disponibles en este git: https://github.com/grongierisc/iam-training.

Las soluciones están en esta rama.

0
2 336
InterSystems Official Jose-Tomas Salvador · sep 14, 2023

La versión 3.6 de InterSystems Kubernetes Operator (IKO) ya está disponible de manera general (GA).  IKO 3.6 añade nuevas funcionalidad significativas, así como la corrección de varios errores. A destacar:

0
0 91
Artículo Yuri Marx · sep 11, 2023 1m read

Cuando necesitas conocer el impacto de un cambio en tu proyecto, es muy útil ver las dependencias de tus clases en un diagrama de red. El proyecto IRIS Connections te permite verlas.

Instalación de IRIS Connections

Si quieres instalarlo usando ZPM:

zpm:USER>install iris-connections

Si quieres instalarlo usando Docker:

1. Clona/git pull el repositorio en cualquier directorio local:

$ git clone https://github.com/yurimarx/iris-connections.git

2. Abre el terminal en este directorio y ejecuta:

$ docker-compose up -d --build

Analiza las dependencias de clases:

Abre en tu navegador:

loc

0
0 110
Comentarios Luis Angel Pérez Ramos · sep 11, 2023

Habitualmente recibimos quejas desde nuestros clientes a cerca de los refrescos automáticos de las páginas web de diseño de BPL y DTL. Esto suele ser un problema común no sólo de usuarios novatos, sino que también de programadores veteranos, es algo común que se olviden de grabar regularmente sus cambios y al cerrarse la sesión o recargarse automáticamente la página se pierda todo el trabajo realizado.

Implementar un sistema de auto-guardado en dichas páginas puede ayudar a solucionar este problema que genera un profundo sentimiento de odio y rencor hacía la tecnología de InterSystems por par

3
0 86
InterSystems Official Jose-Tomas Salvador · sep 8, 2023

Las versiones de mantenimiento extendido de InterSystems IRISInterSystems IRIS for Health y HealthShare Health Connect 2023.1.1 ya están disponibles. Esta versión ofrece correcciones de errores de las versiones 2023.1.0 anteriores.

Podéis consultar la lista detallada de cambios y checklists para upgrade en estas páginas:

Cómo obtener el software

El software está disponible tanto como paquetes de instalación clásicos como imágenes de contenedor. Para un listado completo de instaladores disponibles e imágenes

0
0 121
Artículo Luis Angel Pérez Ramos · sep 8, 2023 1m read

InterSystems FAQ

Puedes evitar este error especificando un objeto de tipo stream como argumento de la función %ToJSON usando durante la generación del string JSON desde el objeto dinámico.

A continuación podéis ver un ejemplo.

USER>set temp=##class(%Stream.TmpCharacter).%New()

USER>set jsonobj={}

USER>set jsonobj.pro1=["a","b","c","d"]

USER>set jsonobj.pro2=["あ","い","う","え"]

USER>do jsonobj.%ToJSON(temp)

USER>write temp.Size
51
USER>write temp.Read()
{"pro1":["a","b","c","d"],"pro2":["あ","い","う","え"]}

Podéis consultar la documentación si queréis más detalles al respecto.

0
0 151
InterSystems Official Jose-Tomas Salvador · sep 7, 2023

La versión 23.2 de InterSystems Reports ya está disponible en la página de Distribución de Software de InterSystems, en la sección "Components". Están etiquetados como InterSystems Reports Designer e InterSystems Reports Server, y están disponibles para Mac OSX, Windows o Linux. Este año insightsoftware ha decidido pasar de un plan de versionado numérico incremental a un plan basado en los años, por lo que no existen versiones del 20 al 22; las versiones aumentan desde la versión 19 a la versión 23. Tened en cuenta que la imagen Docker del Reports Server estará disponible más adelante en el Re

0
0 116
Artículo Luis Angel Pérez Ramos · ago 22, 2023 4m read

Bienvenidos estimados miembros de la Comunidad a la presentación y primera entrega de un pequeño proyecto que demostrará las capacidades de InterSystems IRIS para proporcionar funcionalidades plenas de backup para una aplicación web desarrollada en Angular. Este artículo se limitará a presentar el concepto así como las funcionalidades de InterSystems IRIS utilizadas de un modo general, entrando más en detalle en posteriores artículos.

¡Bienvenidos a QuinielaML!

Introducción

Es posible que ya hayais oído hablar de funcionalidades de InterSystems IRIS como Embedded Python e IntegratedML, pe

2
0 638
Artículo Ricardo Paiva · sep 5, 2023 1m read

Preguntas frecuentes de InterSystems

De cara a la reconstrucción de los índices de una clase persistente/tabla, hay que utilizar el método %BuildIndices(), proporcionado por dicha clase. Para ello hay que especificar los valores de inicio y fin de los ID para los cuales se quieren reconstruir índices en los argumentos del método. 

Por ejemplo, para reconstruir el índice NameIDX y el índice ZipCode en la clase Sample.Person sólo para ID=10 a 20, ejecutad el siguiente código (el rango de ID se especifica en los argumentos quinto y sexto).

0
0 139
Artículo Luis Angel Pérez Ramos · sep 5, 2023 12m read

Continuamos con la serie de artículos relativos a la aplicación de QuinielaML. En este artículo vamos a tratar cómo preparamos los datos en crudo que hemos capturado mediante la funcionalidad de Embedded Python.

¡Bienvenidos a todos!

Introducción

Si recordáis el artículo anterior hemos capturado mediante Embedded Python los datos de los resultados de fútbol de Primera y Segunda División de los últimos 23 años desde una página web externa. Pues bien, ahora que tenemos los datos en crudo deberemos transformarlos y prepararlos para ayudar tanto al mantenimiento de la aplicación como a nuestr

Boxing Memes on X: "Golovkin's fellow country man reacts to his victory...  #GolovkinGeale http://t.co/MDW6F5eJlz" / X

0
0 188
InterSystems Official Jose-Tomas Salvador · sep 5, 2023

La versión 2023.2 de InterSystems IRIS Adaptive Analytics ya está disponible desde la página de Distribución de Software de InterSystems. Esta nueva versión incluye importantes mejoras, incluidas en la versión 2023.2 de nuestro partner AtScale, entre ellas:

  • Mayor compartición de objetos entre cubos para hacer más sencillo el desarrollo de modelos de datos virtuales
  • Una forma simplificada de crear elementos de modelo comunes, pero complejos, como medidas relacionadas con el tiempo, dimensiones inteligentes y grupos de cálculo
  • Conector mejorado para Microsoft PowerBI
  • Incluye un panel de mé
0
0 113
Artículo Ricardo Paiva · ago 31, 2023 1m read

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.

0
0 162
Artículo Luis Angel Pérez Ramos · ago 29, 2023 8m read

Proseguimos con la serie de artículos basados en la aplicación QuinielaML.

En el artículo de hoy describiré como trabajar con la funcionalidad de Embedded Python disponible en los productos de InterSystems.

Embedded Python nos permite la utilización de Python como lenguaje de programación dentro de nuestras producciones, pudiendo sacar provecho de todas las funcionalidades disponibles en Python. Aquí podéis ampliar información al respecto.

Antes de nada recordemos cómo es el diseñor de la arquitectura de nuestro proyecto:

Problemática

En nuestro caso necesitamos obtener los resultados

0
0 187
Artículo Ricardo Paiva · ago 29, 2023 7m read

En este artículo, analizaremos las complejidades de configurar tablas y gráficos para mejorar la legibilidad de los datos.

Logi ofrece una amplia gama de herramientas de visualización de datos. Se puuede encontrar de todo, desde una amplia variedad de plantillas de gráficos hasta estilos CSS personalizados. Comprender la variedad de configuraciones y opciones puede resultar bastante difícil. Primero, crearemos un gráfico y una tabla con la configuración predeterminada y les daremos un aspecto presentable utilizando InterSystems Reports (basado en tecnología de Logi Report).

0
0 162
Artículo Ricardo Paiva · ago 28, 2023 3m read

Como se señaló en el artículo anterior, la API nativa tiene algunos límites. Así que investigué un poco sobre una interfaz más parecida a una Terminal. De manera a permitirme una consola al estilo terminal de IRIS para permitir $QUERY y otros comandos útiles que no son compatibles/mapeados a la API nativa para ObjectScript.

Las herramientas básicas están bien preparadas y disponibles

  • Connection()crea una partición estable y completamente operativa
  • Function()permite llamar a cualquier rutina o método que necesite
  • ClassMethodValue y ClassMethodVoid similares

Simplemente no existe un m

1
0 128
Artículo Ricardo Paiva · ago 25, 2023 1m read

Preguntas frecuentes de InterSystems

Se puede obtener mediante la consulta AllFields de la clase %SYS.ProcessQuery.

Para más detalles, consultad el documento Process (Job)【IRIS】Process (Job).

Un ejemplo de ejecución en el terminal es el siguiente:

USER>set stmt=##class(%SQL.Statement).%New()
USER>set st=stmt.%PrepareClassQuery("%SYS.ProcessQuery","AllFields")
USER>write st   // you can call %Execute() when st = 11
USER>set rset=stmt.%Execute()
USER>while rset.%Next() { write rset.%Get("JobNumber"),"-",rset.%Get("Pid"),"-",rset.%Get("OSUserName"),"-",rset.%Get("CurrentDevice"),"-",rs
0
0 131
Artículo Luis Angel Pérez Ramos · ago 25, 2023 4m read

Aprovechando la aplicación de Quiniela ML y como indicamos en el artículo anterior vamos a explicar como podemos realizar una autenticación JWT entre nuestro frontend desarrollado en Angular y nuestro backend desarrollado en InterSystems IRIS.

Os recuerdo como es la arquitectura de nuestro proyecto de QuinielaML:

Habitualmente es un proceso bastante engorroso en las aplicaciones web el desarrollo de la administración y gestión de acceso de los usuarios, pero en nuestro caso InterSystems IRIS nos simplifica el proceso al proporcionarnos toda la infraestructura que necesitamos.

JSON Web Tok

0
0 243
Artículo Ricardo Paiva · ago 24, 2023 1m read

Preguntas frecuentes de InterSystems

Si el valor de una variable local es un OREF o no se puede determinar usando $IsObject(). Sea v la variable que desea verificar,

$IsObject(v)=1// v is an OREF$IsObject(v)=0// v is not an OREF$IsObject(v)=-1// v is an OREF but does not point to a valid object

Tenga en cuenta que $IsObject(v) dará un error UNDEFINED si v no está definido.

Para evitar errores UNDEFINED, se recomienda utilizar $Get así:

$IsObject($Get(v))
0
0 96
Artículo Alberto Fuentes · ago 21, 2023 1m read

Una característica muy potente en Studio es utilizar snippets o fragmentos de código.

Podemos hacer lo mismo también en VS Code de la siguiente manera:

Aquí tienes las instrucciones genéricas.

1. Vete a Code > Settings ... > Configure User Snippets y selecciona objectscript.

2. Añade tu fragmento de código, aquí tienes un ejemplo:

"SQL Statement": {
    "prefix": ["sql"],
    "body": ["#dim rs As %SQL.ISelectResult",
            "set rs = ##class(%SQL.Statement).%ExecDirect(,\"SELECT * FROM\")",
            "while rs.%Next() {",
            "\twrite rs.ID, !",
            "}"]
}

D

1
1 192
Artículo Ricardo Paiva · ago 23, 2023 3m read

Esta pregunta apareció originalmente en los comentarios de la publicación: Descargar globales desde un servidor en particular

Este artículo se inspiró en una pregunta reciente de @Evgeny.Shvarov.

Descargar globales desde un servidor en particular
No es un código de hacer clic y ejecutar, sino un borrador que requiere ajustes para cubrir las necesidades de cada caso de uso. Para ello debe agregar:

  • credenciales para acceder al servidor
  • nivel de control de errores
  • nombre del global
  • el primer conjunto de subíndices como %LB() bloque default=""
  • el último conjunto de subíndices como bloque %
1
0 121
Artículo Ricardo Paiva · ago 22, 2023 8m read

En este artículo, analizo la clase %JSON.Adaptor. Esta clase es extremadamente útil para exportar datos a JSON serializado e importar objetos JSON y guardarlos en un objeto de clase.

Comenzaré con %JSON. Parámetros del adaptador. Los parámetros son una parte crucial de las operaciones de importación y exportación de JSON.

Si el nombre de su propiedad no es el mismo que el nombre de la clave JSON para exportar a un dispositivo externo o cargar los datos en un objeto mediante la importación, debe usar el parámetro %JSONFIELDNAME para definir el nombre del alias. Si no es así, se produce un "ca

0
0 142
Artículo Ricardo Paiva · ago 21, 2023 2m read

Hice una pregunta por correo electrónico y obtuve algunas respuestas de colegas.

Pergunta:

No he podido cambiar la zona horaria en el ultimo container (Ubuntu) de IRIS. Motivos:

  • Soy irisowner y no root

  • No dispongo del comando sudo

En mi Dockerfile he usado los comandos en adjunto de manera a cambiar la zona horaria - a la hora de crearme un nuevo image docker. Sin embargo, estos comandos no me funcionan con un usuario no root.

FROM $IRIS_IMAGE:$IRIS_VERSION
USER root
RUN export DEBIAN_FRONTEND=noninteractive; \
    export DEBCONF_NONINTERACTIVE_SEEN=true; \
    echo 'tzdata tzdata/Area
0
0 149
InterSystems Official Jose-Tomas Salvador · ago 21, 2023

La versión 2023.2 de InterSystems IRIS Data Platform, InterSystems IRIS for Health e InterSystems IRIS Studio ya está disponible de manera general (GA).

ASPECTOS DESTACADOS DE LA NUEVA VERSIÓN

2023.2 es una versión CD (Continuous Delivery). Se han añadido muchas actualizaciones y mejoras:

Servidor Web Privado

Empezando en esta versión:

0
0 110
Artículo Ricardo Paiva · ago 18, 2023 2m read

Preguntas frecuentes de InterSystems

Utilizad este método si queréis comparar bases de datos que se han replicado mediante mirror, shadow o algún otro mecanismo.

Podéis utilizar la utilidad DATACHECK para comparar globals. (Consultad la documentación para más información: Descripción general de DataCheck [IRIS])

***

Las comparaciones de rutinas usan la rutina del sistema %RCMP o el Portal de Administración.

0
0 164
Artículo Ricardo Paiva · ago 16, 2023 3m read

InterSystems IRIS actualmente limita sus clases a 999 propiedades.

Pero, ¿qué hacer si necesita almacenar más datos por objeto?

Este artículo respondería a esta pregunta (con el apunte adicional de Community Python Gateway y cómo transferir conjuntos de datos amplios a Python).

En realidad, la respuesta es muy simple: InterSystems IRIS actualmente limita las clases a 999 propiedades, pero no a 999 primitivas. La propiedad en InterSystems IRIS puede ser un objeto con 999 propiedades y así sucesivamente; el límite se puede ignorar fácilmente.

0
0 136