Artículo
· 28 oct, 2024 Lectura de 3 min
Soluciones para los Timeouts en Servicios SOAP

Hola a todos, hoy comentamos con un ejemplo cómo solucionar problemas relacionados con el TimeOut cuando se hacen llamadas a servicios SOAP.

Tomemos como ejemplo aplicaciones que proporcionen servicios SOAP que utilizan consultas SQL basadas en "DSTIME" para devolver registros que han sido añadidos o modificados recientemente. Como estos registros no cambian con frecuencia, estas consultas suelen devolver un número reducido de registros, lo cual implica un tiempo de procesamiento corto.

0 0
0 6

Cuando utilizáis InterSystems IRIS como motor de interoperabilidad, todos sabemos y apreciamos lo fácil que es usar el Visor de Mensajes para revisar las trazas de los mensajes y ver exactamente qué está ocurriendo en vuestra producción. Sin embargo, cuando un sistema maneja millones de mensajes al día, puede que no sepáis por dónde empezar vuestra investigación.

A lo largo de mis años apoyando producciones en IRIS, a menudo me encuentro investigando cosas como...

0 0
0 17
Artículo
· 21 oct, 2024 Lectura de 3 min
De ORU a MDM con mensajes grandes en HL7 v2.

¡Muy buenas a todos! Os paso un ejemplo de resolución de problemas a la hora de implementar transformaciones de datos que es muy interesante: estaba trabajando en un transformación de datos (DTL) de mensajes HL7 pero no paraba de obtener errores del tipo ERROR #5002... MAXSTRING. El problema era que la mayor parte de acciones en la interfaz gráfica de DTL utilizan el tipo de datos %String al trabajar con segmentos de un mensaje HL7.

0 0
0 19
Artículo
· 17 oct, 2024 Lectura de 1 min
Cómo cambiar el nombre de la instancia (configuración)

Rúbrica de preguntas frecuentes de InterSystems

En Windows, esto no se puede cambiar, pero en plataformas tipo Unix, se puede cambiar utilizando el comando iris rename.

iris rename instname(<current instance name>) newname(<new instane name>)

Para obtener más información sobre el comando iris rename, por favor consultad el siguiente documento:

Sobre el comando iris

0 0
0 14

Rúbrica de preguntas frecuentes de InterSystems

Podéis comprobar el espacio libre en disco en cualquier momento usando la clase de utilidad del sistema: SYS.Database y la consulta: FreeSpace.

Aquí tenéis cómo probarlo en el terminal de IRIS (id al espacio de nombres %SYS y luego ejecutadlo):

0 0
0 19

[FAQ] Preguntas frecuentes de InterSystems

El siguiente código descarga https://www.intersystems.com/assets/intersystems-logo.png y guarda el archivo como c:\temp\test.png.

Es necesario definir una configuración SSL llamada SSLTEST antes de ejecutar este código.

0 0
0 30
Artículo
· 29 mayo, 2024 Lectura de 7 min
Optimización de consultas SQL en IRIS

¡Hola a todos los estimados miembros de la comunidad de desarrolladores de InterSystems en español!

Aunque suelo consultar la comunidad de desarrolladores y alguna vez he dejado alguna pregunta por aquí, este será mi primer artículo y qué mejor ocasión para hacerlo que participando en el 3er concurso de artículos técnicos.

3 0
0 134

Revisando los diferentes artículos que he ido publicando he caído en la cuenta de que me faltaba explicar una funcionalidad bastante práctica dentro de nuestro EMPI (Enterprise Master Patient Index) y no es otra que la notificación de altas y vinculaciones a sistemas externos al EMPI.

1 0
0 43
Artículo
· 8 mayo, 2024 Lectura de 1 min
Configuraciones que deben copiarse al migrar el servidor

Preguntas Frecuentes de InterSystems

Si necesita migrar su servidor por algún motivo, se puede reducir el trabajo de configuración del nuevo entorno. Bastará copiar la información de configuración del entorno previo al nuevo entorno.

Se puede migrar la siguiente información de configuración.

0 0
0 75

Preguntas frecuentes de InterSystems

Este error ocurre cuando una instancia de la clase ya está abierta en el momento de la compilación.

Hay dos formas de abordar este problema:

  1. Terminar el proceso o aplicación que tiene la instancia abierta
  2. Opciones de compilación en el menú de compilación de Studio: marque el indicador de compilación "Compilar clases en uso" y compile.

Si desea determinar qué proceso está utilizando la clase, pruebe la rutina de ejemplo siguiente.

0 0
0 74

¿Alguna vez habéis estado editando ficheros en VS Code, pero necesitábais comprobar el valor de un global o ejecutar algunos comandos de ObjectScript? Ahora podéis hacerlo, sin necesidad de configuración! Si tenéis la versión 2.10.0 o posterior de la extensión vscode-objectscript y estáis conectados a InterSystems IRIS 2023.2 o posterior, ahora podéis abrir una conexión del terminal a vuestro servidor, sin importar dónde se encuentre.

Hay tres formas de abrir este nuevo terminal:

0 1
0 195

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 82

Preguntas frecuentes de InterSystems

Si el sistema no se para durante 24 horas, los archivos journal serán eliminados a las 0:30 según la "Configuración de la eliminación de archivos journal".

Una posible causa de que los archivos journal permanezcan más tiempo del establecido en la "Configuración de la eliminación de archivos journal" es que hay transacciones que permanecen abiertas.

0 1
0 82

Preguntas frecuentes de InterSystems

Si se establece una relación y hay una gran cantidad de n en una proporción de 1:n, se puede consumir una gran cantidad de memoria debido al procesamiento secuencial de la relación.

Después de hacer referencia a un objeto de muchos lados en un programa y cambiarlo internamente, simplemente liberar la variable que contiene el OREF (eliminarla, establecer otro valor, etc.) no liberará el objeto de muchos lados ni el objeto de relación. Ésta es la causa.

1 0
0 59

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 68
Artículo
· 7 dic, 2023 Lectura de 1 min
Cómo ejecutar comandos del SO

Preguntas frecuentes de InterSystems

Cuando ejecutéis comandos del SO, utilizad el comando $ZF(-100).

do $ZF(-100,"",program,args) // Execute the Windows command [synchronously].
do $ZF(-100,"/ASYNC",program,args) // Executes a Windows command [asynchronously].

Cuando ejecutéis comandos de la shell del SO, como mkdir o copy, hemos de especificar /SHELL.

do $zf(-100,"/shell /async","mkdir","c:\temp\x")

1 0
0 66

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 76
Artículo
· 4 dic, 2023 Lectura de 2 min
Cómo crear errores definidos por el usuario

Preguntas frecuentes de InterSystems

Para crear un error definido por el usuario, hemos de preparar un XML que describa el código de error y el mensaje correspondiente que desea utilizarse como error definido por el usuario.

Hemos de establecer el código de error como un número entero negativo.

0 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 64
Artículo
· 23 nov, 2023 Lectura de 2 min
Cómo ejecutar un backup online desde un comando

Preguntas frecuentes de InterSystems

Para ejecutar un backup online desde un comando, se puede utilizar la rutina API BACKUP^DBACK.

Este es un ejemplo de realización de un backup completo.

set  status = $$ BACKUP ^DBACK( "" , "F" , "full backup" , "c:\backup\full.cbk" , "Y" , "c:\backup\full-log.log" , " NOINPUT" , "Y" , "Y" , "" , "" )

El valor de retorno es 1 si el backup se realiza con éxito, y 0 si el backup no se realiza correctamente. Por favor, consultad el fichero log para conocer más detalles sobre el fallo.

0 0
0 58
Artículo
· 16 nov, 2023 Lectura de 3 min
Cómo ocultar el programa fuente

Preguntas frecuentes de InterSystems

Para rutinas (*.mac)

Se puede ocultar el código fuente exportando/importando solo el *.obj que se genera después de compilar el programa fuente.

El ejemplo de ejecución de comandos especifica EX1Sample.obj y EX2Sample.obj, que se generan al compilar EX1Sample.mac y EX2Sample.mac, como destinos de exportación y los exporta al segundo archivo de argumentos.

Después de pasarlo a otro namespace, se usa el archivo XML exportado para realizar la importación.

0 0
0 92

Preguntas frecuentes de InterSystems

La información sobre las propiedades definidas en una clase se puede obtener usando las siguientes clases del sistema:

%Dictionary.ClassDefinetion

%Dictionary.PropertyDefinition

El ejemplo de descripción del código es el siguiente.

0 0
0 105

Preguntas Frecuentes de InterSystems

El significado de cada valor de tiempo de espera es el siguiente.

1. [Tiempo de espera de respuesta del servidor]

Si el procesamiento de IRIS/Caché (ejecución de rutina o consulta) no finaliza dentro de este tiempo establecido, el navegador devolverá un error.

Por ejemplo, si este valor es 60 segundos y se necesitan 90 segundos para ejecutar una rutina/método/consulta, se producirá un error.

0 0
0 77

Preguntas frecuentes de InterSystems

Una herramienta (utilidad ^GLOBUFF) está disponible para verificar el uso de la memoria caché de la base de datos para cada global.

La utilidad se puede ejecutar directamente o mediante programación en el namespace %SYS .

Así se ejecutaría directamente:

0 0
0 84

Preguntas frecuentes de InterSystems

ObjectScript permite pasar cualquier número de argumentos utilizando arrays. Se hace añadiendo ... después del nombre del argumento.

Os muestro un ejemplo. En la sentencia del ejemplo, la información del argumento se establece en una variable global (una variable almacenada en la base de datos) para que pueda ser fácilmente verificada después de que se ejecute el método.

0 0
0 84

Preguntas frecuentes de InterSystems

En el siguiente ejemplo, un archivo de imagen se codifica en una cadena Base64 en una propiedad de clase, se guarda, se decodifica la cadena en Base64 y se restaura en otro archivo.

【Classe ejemplo】

Class User.test Extends %Persistent
{
Property pics As %GlobalBinaryStream;
}


【Cuando se importa】

0 0
0 224