Artículo
· 1 ago, 2019 Lectura de 7 min
Extensiones de lenguaje

¡Hola a tod@s!

En este artículo trataré una característica particular de Caché, muy útil, pero que probablemente no se conoce ni se usa bien. Me refiero a la función de Extensiones de lenguaje.

Esta característica permite extender los comandos, variables especiales y funciones disponibles en Caché Object Script con comandos, variables especiales y funciones propias. Esta funcionalidad también se aplica a otros idiomas que Caché admite en el servidor, incluidos Caché Basic y Multivalue Basic.

¿Por qué necesitaría o querría agregar nuevos comandos?

1 0
0 225

¡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
Artículo
· 24 feb, 2020 Lectura de 6 min
Escribir bucles más eficientes en Caché ObjectScript

El tema del rendimiento de los bucles for/while en Caché ObjectScript surgió recientemente en una discusión, y me gustaría compartir algunas ideas/prácticas recomendadas con el resto de la comunidad. Aunque este es un tema básico por sí mismo, es útil conocer con cuales se obtiene un mayor rendimiento.

1 1
0 316

Preguntas frecuentes de InterSystems

Se pueden configurar páginas de error individuales para los siguientes mensajes de error/respuestas del Web Gateway:

  • Error del servidor
  • Servidor ocupado
  • Servidor no disponible
  • Tiempo límite de espera del servidor
  • Conexión cerrada

Los ajustes se realizan en la pantalla Administración del Portal de Gestión ([Administración] > [Configuración] > [Gestión del Web Gateway] > [Configuración] > [Parámetros predeterminados]).

1 0
0 58
Artículo
· 22 abr, 2021 Lectura de 1 min
Truco: Ctrl+C y Ctrl+V en el terminal de IRIS

¡Hola! ¿Sabéis que se puede habilitar Ctrl+C y Ctrl+V en el terminal de IRIS para Windows?

Para hacerlo, hay que abrir el Terminal, seleccionar Edit > User Settings y habilitar Widows Edit accelerators.

Esta opción especifica si el Terminal habilita atajos de teclado habituales en Windows (Ctrl+C, Ctrl+V, Ctrl+Shift+V) además de los atajos típicos del Terminal básico (Ctrl+Insert, Shift+Insert).

1 1
0 89

¡Hola a todos!

Como seguramente ya sabréis, ya está disponible en Docker Hub una versión totalmente gratuita de InterSystems IRIS for Health (I4H). Se trata de la versión Community y, como digo, es totalmente gratuita y funcional. Ya se ha hablado de ella en algunos artículos y posts,... así que hoy no va de eso. Aquí vamos a ver el "misterioso caso de la desaparición o, mejor, ausencia de mis datos persistentes cuando arranco el contenedor con la opción durable" (no he encontrado la fuente de letra terrorífica para darle más suspense... el editor de posts da para lo que da smiley ) .

1 0
0 413
Artículo
· 3 nov, 2021 Lectura de 1 min
Ruta de aprendizaje para principiantes

¡Hola Comunidad!

La página web de formación de InterSystems (InterSystems Learning Website) tiene muchos cursos interactivos. Si quieres aprender más o empezar a trabajar con InterSystems, este es el camino que debes seguir:

Resumen:

Conceptos básicos:

1 0
0 107

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.

1 0
0 60

En Studio, podías abrir una clase directamente usando su nombre, sin tener que recorrer completamente el árbol de paquetes con un montón de clics hasta llegar a la clase deseada.

Con Ctrl + O o (File -> Open) podías escribir el nombre de la clase de forma sencilla, por ejemplo:

Pulsabas Enter y voilà!, la clase se abría.

¿Cómo se logra esto en VSCode?

1 0
0 650
Artículo
· 18 ago, 2023 Lectura de 2 min
Cómo comparar globals y rutinas en dos bases de datos

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.

1 0
0 78
Artículo
· 25 nov, 2023 Lectura de 1 min
Como reducir la base de datos IRISTemp

Preguntas frecuentes de InterSystems

Puedes establecer el tamaño máximo de la base de datos IRISTemp en el arranque de IRIS configurando el parámetro MaxIRISTempSizeAtStart.

Después de configurarlo, el sistema truncará IRISTemp al valor establecido (MB) en el siguiente inicio de IRIS. Si el tamaño actual es inferior al especificado MaxIRISTempSizeAtStart, no realizará el truncado. Si se especifica el valor 0 no se realizará el truncado nunca.

Puedes configurarlo en el siguiente menú.

1 1
0 51
¡Hola Comunidad!
Esta es una explicación acerca de:
  • por qué es importante obtener el $zv (el POR QUÉ),
  • qué significan los componentes de $zv (el QUE),
  • y cómo recopilar $zv (el CÓMO).

(La guía definitiva sobre $zv para la galaxia ISC en palabras sencillas y entendibles).

0 0
0 183

Una de nuestras apps utiliza una consulta de clase para un informe ZEN y funciona perfectamente en ese informe, produciendo los resultados esperados. Hemos migrado a InterSystems Reports y nos hemos dado cuenta de que, para un informe que utiliza la misma consulta de clase, aparecen en la parte de abajo más de 100 filas extra con los mismos valores en las columnas.

Descartamos InterSystems Reports como fuente del problema reproduciendo el problema de "filas extra" con una hoja de cálculo de Excel que llama a la misma consulta de clase utilizando un procedimiento almacenado.

¿Cuál era el problema? Cuando llamábamos al procedimiento almacenado desde el antiguo ZEN Report o desde la función SQL Query en el Portal de Administración, no veíamos estas filas adicionales.

0 0
0 134

Preguntas frecuentes de InterSystems

Las definiciones de clases creadas por los usuarios se almacenan en clases de definición de clases. Estas se pueden utilizar para obtener una lista de definiciones de clases desde un programa.

Nota: Las clases de definición de clase se refieren a todas las clases contenidas en el paquete %Dictionary.

0 0
0 46
Artículo
· 9 jun, 2021 Lectura de 3 min
Cómo mostrar globals por SQL SELECT
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      
¡NO está soportado por el servicio de soporte de InterSystems!   

Los globals en Caché, Ensemble e IRIS normalmente son invisibles a través de SQL.
En este ejemplo se muestra cómo verlos desde SQL.

0 0
0 126

¡Hola desarrolladores!

Como probablemente sabéis, en IRIS 2021 los nombres de los globals son aleatorios.

Y si creas clases de IRIS con DDL y quieres estar seguro de qué global se creó, seguramente te gustaría darle un nombre.

De hecho, se puede hacer.

Usa WITH %CLASSPARAMETER DEFAULTGLOBAL='^GLobalName' en la Tabla CREATE para que funcione. Documentación. Mirad este ejemplo:

0 0
0 116

Preguntas frecuentes de InterSystems

La cache de las consultas SQL puede ser purgada mediante programación usando el método Purge* de la clase %SYSTEM.SQL.

*Para ver el detalle de cada uno de los métodos, por favor consulta los siguientes enlaces:

%SYSTEM.SQL class【IRIS】

0 0
0 47
Artículo
· 24 jul, 2020 Lectura de 2 min
Herramienta de compresión tar en ObjectScript

¡Hola desarrolladores!

Estoy seguro de que la mayoría de vosotros ya conoceis la posibilidad de usar GZIP en los productos de InterSystems. Pero el problema es que GZIP trabaja con un único archivo o flujo de datos, y no admite carpetas. Al trabajar con sistemas Unix, es posible solucionarlo con la herramienta de compresión tar, incluida en cada sistema Linux de forma predeterminada. Pero ¿qué hacer si debemos trabajar también en Windows, que no lo incluye?

Me alegra poder enseñaros el nuevo proyecto, isc-tar, que os ayudará a no preocuparos del sistema operativo y os permitirá gestionar los archivos tar en cualquier sitio.

0 0
0 83

Servir el café: Cómo crear y programar una tarea

¿No te gustaría que una taza de café caliente te esperara justo al llegar a la oficina? ¡Vamos a automatizar eso!

Cache e IRIS incorporan un Administrador de tareas, que debería resultar familiar a quienes estén acostumbrados a utilizar el programador de tareas de Windows o a usar cron en Linux. Tu cuenta de usuario requerirá tener acceso al recurso %Admin_Task para utilizarlo, y puedes acceder a él desde el portal de administración en System Operation -> Task Manager. Cuando se instala por primera vez, hay aproximadamente 20 tipos de tareas que puedes programar.

Si quieres añadir tus propias tareas, empieza creando una clase que extienda %SYS.Task.Definition. Como mínimo, debes sobreescribir el método OnTask, que tiene una firma de Method OnTask() As %Status. El código de ese método se ejecutará cada vez que se lance la tarea. De hecho, si tu tarea arroja "Error #5003: No implementado (Error #5003: Not Implemented)" cada vez que se ejecuta, es porque este método no se sobreescribió correctamente. De manera muy básica, podría ser:

0 0
0 193

¡Hola desarrolladores!

A veces necesitamos publicar la imagen Docker de la solución InterSystems IRIS en la que estamos trabajando. Existen diferentes posibilidades, por ejemplo:

  1. Usar la imagen en un cluster de Kubernetes.
  2. Que un compañero ejecute la imagen desde un repositorio público sin tener que generarla.

La mejor solución es subir la imagen al Registro Hub de Docker o al Registro de Github.

En este breve artículo, propongo una forma de hacerlo automáticamente cada vez que subas (usando git push) cambios a tu repositorio GitHub.

0 0
0 94

Preguntas frecuentes de InterSystems

Para resolver el error <PROTECT>, hay que eliminar el atributo de solo lectura de la base de datos de la biblioteca de todo el sistema (IRISLIB para InterSystems IRIS, CACHELIB para Caché/Ensemble/HealthShare (basado en Caché))

0 0
0 59
Artículo
· 3 jul, 2020 Lectura de 5 min
Guía para solucionar problemas en DeepSee

El objetivo de esta "Guía para solucionar problemas en DeepSee" es ayudar a localizar y solucionar los problemas en un proyecto en DeepSee.

Si el problema no puede solucionarse siguiendo estas recomendaciones, al menos tendrás suficiente información para reportar el problema al Centro de Soporte Internacional (WRC) y proporcionarnos todas la información, para que podamos continuar la investigación juntos y resolverlo más rápido!

0 1
0 170