#Caché

0 Seguidores · 369 Publicaciones

  

InterSystems Caché es un multi-modelo de DBMS y la aplicación server. See más detalles aquí.

Documentación.

Descargar Evaluación de Caché.

Pregunta Jaume Marcet · nov 5

Tengo el siguiente código, con el que pretendo enviar el fichero pepe.XML que está en mi directorio C:\TEMP:

 httprequest=##class(%Net.HttpRequest).%New()
 httprequest.Username="dfgsdgsd"
 httprequest.Password="sdfbnnb"
 httprequest.Port=2222
 httprequest.Server="https://app.net
 httprequest.SetParam("API-Key","jh2871371naou1b82397"
 httprequest.SetParam("content-type", "application/xml"
 httprequest.Post("C:\TEMP\pepe.XML",2)
 response=httprequest.HttpResponse
 !,response
(Los datos no son reales. Supongo que Username, Password y Port no es necesario)

0
0 0
Artículo Luis Angel Pérez Ramos · oct 30 3m read

Hola comunidad,

Quería compartir mi experiencia trabajando en proyectos con grandes volúmenes de datos. A lo largo de los años, he tenido la oportunidad de manejar enormes cantidades de datos de pacientes, datos de aseguradoras y registros transaccionales mientras trabajaba en la industria hospitalaria. He tenido la oportunidad de crear informes muy extensos que requerían usar lógicas avanzadas para obtener datos de múltiples tablas, cuyos índices no me ayudaban a escribir un código eficiente.

Esto es lo que he aprendido sobre cómo gestionar grandes volúmenes de datos de manera eficiente.

0
0 0
Artículo Ricardo Paiva · oct 8 1m read

gj :: configExplorer es una nueva extensión de VS Code que se integra con Server Manager y aprovecha Structurizr para generar diagramas de configuración de vuestros servidores.

Aquí tenéis un breve video introductorio.

0
0 0
Artículo Vachan C Rannore · oct 2 3m read

Empezar con ObjectScript es realmente emocionante, pero también puede resultar un poco extraño si estáis acostumbrados a otros lenguajes. Muchos principiantes tropiezan con los mismos obstáculos, así que aquí tenéis algunas "trampas” a las que debéis prestar atención. (Y también algunos consejos para evitarlas)

PONER NOMBRES AL AZAR

Todos hemos caído en la tentación de llamar a algo Test1 o MyClass solo para avanzar rápido. Pero una vez que vuestro proyecto crece, esos nombres se convierten en una pesadilla.

0
0 0
Artículo Ricardo Paiva · sep 29 3m read

Todavía recuerdo el primer código que escribí en Object Script

Viniendo de Python, al principio me resultó muy extraño, pero con el tiempo empecé a ver por qué el lenguaje está construido de esa manera.

Si estáis empezando, tened en cuenta que ObjectScript puede parecer un poco de nicho y ligado sobre todo a los productos IRIS, pero la forma de trabajar con él realmente compensa: desarrollo rápido, una base de datos potente y una plataforma sólida para aprender.

A veces se siente como si hubierais entrado en un mundo que es a la vez familiar y diferente.

0
0 0
Artículo Ricardo Paiva · sep 1 3m read

Al comenzar con InterSystems IRIS o Caché, los desarrolladores a menudo se encuentran con tres conceptos fundamentales: Dynamic Objects, Globals y Relational Table. Cada uno tiene su papel en la construcción de soluciones escalables y mantenibles. En este artículo recorreremos ejemplos prácticos de código, destacaremos buenas prácticas y mostraremos cómo estos conceptos se relacionan entre sí.

1. Trabajando con Dynamic Objects:

0
0 0
Artículo Luis Angel Pérez Ramos · ago 21 3m read

ObjectScript puede parecer solo otro lenguaje de programación, pero aquí está el giro:

Vuestro código aquí puede vivir para siempre (sí, incluso después de que os hayáis pasado a otro proyecto). Por eso es importante mantenerlo ordenado, fácil de leer y a salvo de errores misteriosos.

(Una guía para principiantes para mantener vuestro código ordenado, amigable y preparado para el futuro)

Bienvenidos a la jungla de ObjectScript, donde vuestro código puede tener un alcance global y ser persistente por naturaleza.
Mantengamos las cosas limpias, legibles y resistentes a errores.

0
0 0
Artículo Ricardo Paiva · ago 7 1m read

Aquí tenéis un ejemplo práctico de cómo importar datos desde un archivo CSV a InterSystems CACHÉ utilizando ObjectScript.
Suponiendo que vuestro archivo CSV sea simple (por ejemplo, separado por comas y con encabezados), podéis usar `%Stream.FileCharacter` para leerlo línea por línea y analizar los datos.
 

ClassMethod ImportCSV(filePath As %String) As %Status {
    Set stream = ##class(%Stream.FileCharacter).%New()
    Set sc = stream.LinkToFile(filePath)
    If 'sc Quit sc

0
0 0
Artículo Harshitha · ago 5 2m read

Trabajar en TI para el sector salud como un desarrollador joven, especialmente en InterSystems TrakCare, te hace darte cuenta rápidamente de una cosa: no se trata solo de mensajes HL7 o integraciones backend. Una gran parte de lograr que TrakCare funcione sin problemas en los hospitales depende de cómo se configura, personaliza y da soporte desde el lado de la aplicación.

Ahí es donde entramos personas como yo: desarrolladores tecno-funcionales que entendemos tanto la tecnología como su impacto en los flujos de trabajo reales del hospital.

No somos solo técnicos (ni consultores funcionales)

0
0 0
Job Coral Montero · jun 20

¡Hola comunidad de InterSystems!

¡Tenemos una oportunidad increíble para 3 desarrolladores con experiencia en Caché que quieran unirse a nuestro equipo y construir una plataforma innovadora en el sector MedTech!

Lo que ofrecemos:

  • Trabajo híbrido (Barcelona o Madrid)
  • ¡Forma parte de un equipo desde sus inicios, con un impacto directo en la creación de soluciones médicas de vanguardia!
  • Gran oportunidad de crecimiento profesional

Si tienes experiencia con Caché y estás listo para un reto emocionante en una empresa con visión de futuro, ¡esta es tu oportunidad!

0
0 0
Artículo Alberto Fuentes · jun 11 3m read

Si estáis migrando de Oracle a InterSystems IRIS, como muchos de mis clientes, podríais encontraros con patrones SQL específicos de Oracle que necesitan ser traducidos.

Tomad este ejemplo:

SELECT (TO_DATE('2023-05-12','YYYY-MM-DD') - LEVEL + 1) AS gap_date
FROM dual
CONNECT BY LEVEL <= (TO_DATE('2023-05-12','YYYY-MM-DD') - TO_DATE('2023-05-02','YYYY-MM-DD') + 1);

En Oracle:

0
0 0
Artículo Luis Angel Pérez Ramos · mayo 21 2m read

Pregunta:

¿Cómo podéis crear, modificar, etc., configuraciones de seguridad como Usuarios y Roles programáticamente?

Respuesta:

Podéis usar las clases del paquete Security en el NAMESPACE %SYS. Por ejemplo Security.Roles o Security.Users.

Por supuesto, para llevar a cabo estas acciones, necesitaréis la autorización correspondiente.

Aquí tenéis un pequeño ejemplo usando Security.Roles:

0
0 0
Artículo Alberto Fuentes · abr 25 2m read

Recientemente ayudé a investigar un problema en una instalación que surgió después de que actualizaran su instancia de Caché en Windows de la versión 2015.1 a la 2017.1. Una sesión de terminal iniciada desde el icono del cubo del escritorio del servidor no podía ejecutar comandos a nivel del sistema operativo utilizando la función $ZF(-1). Por ejemplo, al tratar de lanzar  el comando "REM" (que no tiene ningún efecto) de la siguiente manera

write $zf(-1,"rem")

devolvía -1, lo que indicaba que el comando de Windows no se podía ejecutar.

0
0 0
Artículo Kurro Lopez · abr 1 1m read

Hola a todos,

Como parte del desarrollo de una API para saber a qué instancia de IRIS está conectada, he encontrado algunos métodos para obtener información sobre el servidor que pueden ser útiles.

Obtener el nombre del servidor: $SYSTEM.INetInfo.LocalHostName()

Obtener la IP del servidor: $SYSTEM.INetInfo.HostNameToAddr($SYSTEM.INetInfo.LocalHostName())

Obtener el nombre de la instancia: $PIECE($SYSTEM,":",2)

Entonces, he creado el siguiente código como clase BS:

0
0 0
InterSystems Official Jose-Tomas Salvador · abr 1 5m read

La interfaz de usuario de Interoperabilidad ahora incluye experiencias modernizadas para las aplicacionesDTL Editory Production Configuration, las cuales están disponibles para su activación en todos los productos de interoperabilidad. Podéis alternar entre las vistas moderna y tradicional. Todas las demás pantallas de interoperabilidad permanecen en la interfaz de usuario estándar. Tenéis que tener en cuenta que los cambios se limitan a estas dos aplicaciones, y a continuación se identifica la funcionalidad que está disponible actualmente.

0
0 0
Job Jorge Ceballos · mar 27

Buenas tardes,

Estamos abriendo posiciones para desarrolladores Intersystems para proyectos en sector Life Sciences. Escenario de transformación, donde ya tenemos otros equipos scrum y planteamiento a largo plazo y marcos de desarrollo de producto incremental.

Buscamos reforzar esta capacidad y abrir un abanico de proyectos de transformación para desarrolladores Intersystems que busquen nuevos retos futuros:

https://www.linkedin.com/jobs/view/4190849428/?capColoOverride=true

Estamos ansiosos de conoceros,
 

0
0 0
Artículo Jose-Tomas Salvador · mar 25 1m read

Rúbrica de preguntas frecuentes de InterSystems

Esto puede hacerse con TRY-CATCH:

#dim ex As%Exception.AbstractExceptionTRY {
    //Code that causes an error
  }
  CATCH ex {
     do ex.Log()
  }

Si utilizáis ^%ETN, llamadlo desde la entrada BACK (BACK^%ETN).

Echad también un vistazo al artículo relacionado: Cómo obtener errores de aplicación (^ERRORS) utilizando un comando

0
0 0
Artículo Jinyao · mar 7 4m read

Motivación

Empecé a programar en 2015, cuando estaba haciendo la carrera de informática. No conocía ObjectScript hasta que empecé en mi nuevo trabajo hace cuatro meses. ObjectScript en realidad no es un lenguaje de programación joven. Comparado con C++, Java y Python, la comunidad no es tan activa, pero queremos hacer que este espacio sea más dinámico, ¿verdad?  

Me he dado cuenta de que a algunos de mis compañeros les cuesta entender las relaciones entre clases en estos proyectos tan enormes. No hay ninguna herramienta moderna y fácil de usar para crear diagramas de clases en ObjectScript.

0
0 0
InterSystems Official Jose-Tomas Salvador · mar 5

A partir de la versión 2025.1 de la plataforma de datos IRIS® de InterSystems, InterSystems deja oficialmente de utilizar MultiValue y lo incluye en la lista de funciones obsoletas y descatalogadas. Aunque InterSystems seguirá dando soporte a los clientes actuales que utilicen MultiValue, no se recomienda para nuevas aplicaciones.

Qué significa esto para vosotros:

0
0 0
Artículo Robert Cemper · feb 3 3m read

Variables de host son una característica de programación bastante común en muchas implementaciones de SQL.
Una pregunta reciente en DC me hizo darme cuenta de que en IRIS, Caché, Ensemble,... 
las variables del host simplemente existen dentro del embedded SQL.

>  You can supply host variables for Embedded SQL queries only. <
Se incluyen ejemplos relacionados en la documentación disponible.

A continuación se incluye una descripción de una solución alternativa si no utiliza o no puede utilizar embedded SQL.

0
0 0
Artículo Jose-Tomas Salvador · ene 7 4m read

Recientemente me encontré con un problema muy antiguo relacionado con el mantenimiento de código:

Tenéis acceso a vuestro servidor IRIS solo a través de ODBC/JDBC:

  • Sin acceso a VSCode
  • Sin acceso a Studio
  • Sin acceso a (Web-)Terminal

¡Pero necesitáis revisar Clases, Rutinas o Globals!

De cualquier forma, SQL es vuestro aliado.

  • Primero, necesitáis una tabla sencilla como almacén temporal de texto.
CREATEGLOBALTEMPORARYTABLE  arcc.txt (line VARCHAR(32000))
  • A continuación, exportad vuestro código a un archivo local e importadlo a vuestra tabla.
0
0 0
Pregunta Bernabé Martín · dic 21, 2024

Saludos Comunidad,

Soy consciente que mis preguntas son irrelevantes en una Comunidad de especialistas en últimas tecnologías.

Estoy jubilado hace tiempo, ya tengo unos años a la espalda, pero sigo utilizando mis antiguos conocimientos para mantener la mente funcionando y hacer mis personales “programillas”, en argot antiguo, y mantener mis bases de datos antiguas.

0
0 0
Pregunta Bernabé Martín · dic 19, 2024

Siguiendo con el hilo de Versión Evolución Cache, por si fuera interesante para alguien.

Instalada última versión de IRIS, tenido en cuenta el renombrando de CACHE.DAT a IRIS.DAT, no funciona. Si que monta correctamente las diferentes bases de datos, supongo que es debido a que es una licencia de la “Comunidad”

Al migrar los datos se ha producido una corrupción en los acentos y las eñes, cambiado el idioma local (enuw -> espw), si entras a la base de datos por el "terminal" del antiguo cubo todo parece normal.

0
0 0
Pregunta Bernabé Martín · dic 15, 2024

Como se puede observar mi versión de Cache ya no esta en la lista de productos.

Hace ya bastante tiempo hice algunas preguntas de una versión aun mas vieja, en esa versión tenia 5 bases de datos, en su momento solo instalé la principal para mí en la versión 2010, estoy intentando migrar las otras cuatro y me encuentro con el siguiente problema:

         - Al montar la base de datos solo la monta "lectura", sin opción de cambiar ni por el "portal de gestión de sistema" ni con ^DATABASE

0
0 0
Artículo Ricardo Paiva · nov 29, 2024 1m read

Rúbrica de preguntas frecuentes de InterSystems

Se puede obtener con una consulta de lista de la clase %SYS.Namespace.  

1. Creáis una rutina como esta:

getnsp
   set statement=##class(%SQL.Statement).%New()
   set status=statement.%PrepareClassQuery("%SYS.Namespace","List")
   set resultset=statement.%Execute()
   while resultset.%Next() {
       write resultset.%Get("Nsp"),!
   }
   quit

2. Ejecutadla en vuestro terminal.

USER>do ^getnsp
%SYS
DOCBOOK
SAMPLES
USER

El método para ejecutar consultas de clase presentado en este artículo se puede aplicar en una variedad de casos.

0
0 0
Artículo Ricardo Paiva · nov 22, 2024 1m read

Rúbrica de Preguntas Frecuentes de InterSystems

La replicación o mirroring solo sincroniza archivos de base de datos.

Para sincronizar otros archivos necesarios para vuestra aplicación (archivos CSP, imágenes, documentos, etc.) entre los dos servidores que forman el conjunto de réplica, seguid uno de los siguientes enfoques:

  1. Colocad esos archivos en un disco compartido introduciendo un NAS u otro dispositivo similar.
  2. O utilizad software de sincronización de archivos para sincronizar los archivos entre los dos servidores.
0
0 0