検索

Article
· Sept 18 2m de lecture

Adaptador de archivos personalizado - Tabla de búsqueda / Archivos dinámicos

Mi problema era separar mensajes HL7 por tipo de mensaje. Tuve que crear múltiples operaciones de archivo. Así que, con código personalizado, puedo usar 1 adaptador de archivos para 1 interfaz y múltiples tipos de mensaje. Experimenté extrayendo el MSH 4 del contenido en bruto para acceder además a información dinámica, pero eso podría generar la necesidad de comprobaciones de errores más robustas o acciones predeterminadas en la búsqueda.

Uso de la convención de nombres recomendada de "To_FILE_<IntegrationName>"

Decidí usar un nombre de archivo genérico y una ruta genérica en la configuración predeterminada.

Creé una clase personalizada que extendía EnsLib.File.OutboundAdapter, con código personalizado que me permite controlar dinámicamente la ruta del adaptador de archivos específica para cada tipo de mensaje mediante una tabla de búsqueda. Si no tengo un valor, entonces se usará la ruta genérica predeterminada. De lo contrario, mi código sobrescribirá la ruta y el nombre del archivo. El nombre de la tabla de búsqueda puede ser cualquiera; solo necesita coincidir en vuestro código.


 

Código personalizado

//SRC1 Extraer la tercera parte del nombre de la operación de salida "<IntegrationName>"

//SRC2 Extraer la primera parte del nombre del DOCTYPE "ORM" / "ADT" / "ORU" / etc.

// Establecer una nueva variable SRC para concatenar SRC1_SRC2

// Nueva tabla de búsqueda que controlará los nombres de ruta en un solo lugar.

 

Set src1=$PIECE(..%ConfigName,"_",3,3)
Set src2=$PIECE(pDocument.DocTypeName,"_",1,1)
If src=""
{
    Set src=src1_"_"_src2
}

Set pFilename = ..Adapter.CreateFilename(##class(%File).GetFilename(src), $PIECE((##class(Ens.Rule.FunctionSet).Lookup("HL7FileNamePath",src)),"^",2,2)_..Filename) $$$TRACE(pFilename)

//Reset file path to return a file path based on the Lookup and PIECE function(s) 
Set ..Adapter.FilePath =$PIECE((##class(Ens.Rule.FunctionSet).Lookup("HL7FileNamePath",src)),"^",1,1)
$$$TRACE(..Adapter.FilePath)

Set tSC = ..Adapter.open(pFilename) 
Quit:$$$ISERR(tSC) tSC

Set $ZT="Trap"
Use ..Adapter.Device  Set tSC=..OutputFramedToDevice(pDocument,pSeparators,"",0,..IOLogEntry,.pDoFraming) Use ..Adapter.OldIO
Set $ZT=""
Discussion (0)1
Connectez-vous ou inscrivez-vous pour continuer
Article
· Sept 18 1m de lecture

Avaliações no Open Exchange - #55

Se um dos seus pacotes no OEX recebe uma avaliação, você é notificado pelo OEX apenas sobre o seu próprio pacote.
A classificação reflete a experiência do avaliador com o status encontrado no momento da avaliação.
É como uma fotografia instantânea e pode já ter mudado desde então.
As avaliações feitas por outros membros da comunidade são marcadas com * na última coluna.

Também abri vários Pull Requests no GitHub quando encontrei um problema que consegui corrigir.
Alguns foram aceitos e mesclados, e outros simplesmente ignorados.
Portanto, se você fez uma alteração significativa e espera uma revisão atualizada, basta me avisar.

 

# Package Review Stars IPM Docker *
1 potato-analytics Pleasure to run 5.5 y y  
2 Beyond-Server-Limits hidden backdor 5.0   y *
3 csp-fileview-download nice Docker availale IPM ready 5.0 y y  
4 Full-OBJ-Dump nice helper 5.0 y y *
5 TaskScheduler OK, room for improvement 4.8 y y  
6 IRISFHIRServerLogs builds OK 4.6 y y  
7 customer-support-agent-demo IRIS runs fine 4.5   y  
8 MessageLogViz listing filtered text 4.0 y y  
9 iris-mock-server missing some parts 3.5 y y  
1 Comment
Discussion (1)2
Connectez-vous ou inscrivez-vous pour continuer
Annonce
· Sept 18

¡Nos lo quitan de las manos! Webinar "De los datos al conocimiento: Sacando provecho a la Información Clínica con InterSystems e IA"

Hola a todos 😎

Se acerca la fecha... ¿Estáis registrados? ¿No? ¡Y a qué esperáis!

Podemos decir que nos quitan "las entradas de las manos" porque los registros a este webinar están subiendo mucho. Y no es para menos.

 

¿Cuándo? El jueves 02 de octubre, a las 4:00 PM (CEST).

En este webinar veremos cómo un AI Assistant puede transformar la manera en que los profesionales de la salud acceden y comprenden la información clínica de sus pacientes. A través de ejemplos prácticos, veremos cómo el asistente permite generar resúmenes inteligentes de la historia clínica.  

Así que ya sabes, si aún no estás registrado ¡estás perdiendo el tiempo!

🗣 PonenteRodrigo Barahona, Sales Engineer en InterSystems Chile

➡️ Registro >>

Discussion (0)1
Connectez-vous ou inscrivez-vous pour continuer
Article
· Sept 18 5m de lecture

IrisTest – Simplification de la génération des rapports de tests unitaires

IrisTest est un outil léger, puissant et facile à utiliser, conçu pour simplifier la génération de rapports de tests unitaires. Il comprend un interpréteur de commandes interactif et une API pour faciliter la communication, permettant aux développeurs de gérer et de générer facilement des rapports pour leurs tests dans des formats variés. Que vous déboguez ou créiez des rapports détaillés pour analyse, IrisTest rend le processus fluide et efficace!

Discussion (0)1
Connectez-vous ou inscrivez-vous pour continuer
Annonce
· Sept 17

[Video] Explaining Agentic AI Through Automated Bug Fixing

Hey Community!

We're happy to share the next video in the "Code to Care" series on our InterSystems Developers YouTube:

⏯  Explaining Agentic AI Through Automated Bug Fixing

In this video, the presenter introduces the concept of agentic AI using the example of automated bug fixing. He explains how such a system operates by creating a loop between an application, a large language model (such as OpenAI, Claude, or Gemini), and a set of predefined tools. The LLM iteratively selects tools, such as listing, reading, editing, or executing program files, while the framework carries out these actions and returns the results. This process repeats until the model delivers a final fix. Rather than relying on a developer to outline every step, the LLM generates its own sequence of actions, making the approach more flexible and adaptive as language models continue to advance.

🗣 Presenter: @Don Woodlock, Head of Global Healthcare Solutions, InterSystems

Enjoy watching, and subscribe for more videos! 👍

Discussion (0)1
Connectez-vous ou inscrivez-vous pour continuer