新しい投稿

検索

お知らせ
· 2026年1月19日

2025.3 实现互操作性用户体验现代化

互操作性用户界面项目从 2025.1 版继续 进行,并纳入了许多我们的客户和合作伙伴建议和观察到的项目。 我们将继续投资于反馈和更新这一重要的用户体验。在最新发布的 2025.3 版(适用于 IRISIRIS for HealthHealthConnect 和 Health Connect Cloud) DTL 编辑器生产配置 应用程序可选择
NOTE

  • 您可以在现代化和标准体验之间切换。
  • 所有其他互操作性屏幕仍保留在标准用户界面中。
  • 由于新的用户界面将提供新的工作流程,我们希望在这项工作继续进行的同时提供两种体验。

 

生产配置——配置任务介绍
  • 现在每个生产配置主机上都会显示池大小 数量。
  • 现在可以在主机的类别字段中直接输入命名约定来创建新类别
  • 生产配置中现在支持浏览器级控制查找
  • 生产配置主机项目现在具有测试主机功能
  • 在新的 "设置面板 "中,出现了 X 取消图标以取消操作。
  • 较长的类工具提示 说明根据类文档格式化。
      • 增强了配置项描述的显示,以尊重较长结构化描述的标记。
  • 如果不在主机项目或生产的上下文中,操作项目会显示为灰色
  • 创建主机时可自动创建路由器和角色。
  • 在支持的情况下,现在可以选择更新和恢复生产
  • 现在可以 通过新的用户界面创建产品
  • 编辑主机类别时,允许查看连接
  • 所有规则集上的视图图标 可打开规则编辑器分割面板中的特定规则集
  • 在主机的信息图标中添加了主机 状态图例
  • 现在可搜索"主机属性",并添加了 "展开全部 "部分
  • 现在可 在生产配置过滤栏中搜索 IP 地址和端口号
  • 还有更多
DTL 编辑器——DTL 工具介绍
  • 数据转换功能下拉菜单现在可搜索,并仅限于子类中定义的功能。
  • DTL 图形编辑器现在包含一个按钮,可在将鼠标悬停在段上时复制 HL7 字段路径
  • 在设置 DTL 语句目标字段和源字段时,设置序号或路径表达式或同时设置这两种表达式 输入相同的表达式设置
  • 用于复制或添加映射的 "悬停 "段图标更易于访问
  • 添加映射时,将鼠标悬停在段上现在会显示复制图标
  • 滚动时,DTL 编辑器分屏标题和工具栏都保持不变
  • 还有更多
规则编辑器——业务规则介绍
  • 不再可以重命名规则。以前,这种行为会导致活动规则的更改出现混乱。要创建新规则,请使用 "另存为(Save As)"
  • 规则编辑器现在支持浏览器级控制查找
📣 行动呼吁 📣

ディスカッション (0)1
続けるにはログインするか新規登録を行ってください
記事
· 2026年1月19日 1m read

Importando CSV no CACHÉ

Aqui está um exemplo prático de como importar dados de um arquivo CSV para o Intersystems CACHÉ usando ObjectScript. Supondo que seu arquivo CSV seja simples (por exemplo, separado por vírgulas e com cabeçalhos), você pode usar %Stream.FileCharacter para lê-lo linha por linha e analisar os dados.


 

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

    While 'stream.AtEnd {
        Set line = stream.ReadLine()
        Set fields = $ListFromString(line, ",")
        // Example: Save to a persistent class
        Set obj = ##class(MyApp.Data).%New()
        Set obj.Name = $List(fields,1)
        Set obj.Age = $List(fields,2)
        Set obj.Email = $List(fields,3)
        Do obj.%Save()
    }
    Quit $$$OK
}

ディスカッション (0)1
続けるにはログインするか新規登録を行ってください
Job
· 2026年1月19日

Now Hiring - Senior InterSystems Engineer | 100% W2 Contract

We are hiring!  100% Remote W2 Contract | 3-6+ Months (numerous extensions likely)

Two Roles:
🔹InterSystems Engineer
🔹Epic Bridges Certified/InterSystems Engineer  

Having solid experience with the below: 

  • Interface Development: Building and configuring message routes, business processes, and transformations using components like IRIS, Ensemble, or HealthShare.
  • Interoperability Standards: Implementing and supporting workflows for healthcare standards including HL7 (v2/v3), FHIR, etc.
  • System Integration: Connecting disparate health information systems to EMR like Epic Bridges, clinical applications, and HIE partners.
  • Data Transformation: Develop DTL (Data Transformation Language) and XSLTs to convert messages between various formats, such as converting HL7 to InterSystems FHIR or SDA.
  • Support & Monitoring: Troubleshoot message flows, perform performance tuning, and monitor system health using built-in dashboards and alerts.
  • Migration Projects: Leading or assisting in migrating interfaces from other engines, such as Cloverleaf or Mirth, to InterSystems Health Connect Cloud
ディスカッション (0)1
続けるにはログインするか新規登録を行ってください
ダイジェスト
· 2026年1月19日
記事
· 2026年1月19日 4m read

Namespaces e bancos de dados: fundamentos do funcionamento interno do InterSystems IRIS

O InterSystems IRIS é construído sobre uma arquitetura que separa a organização lógica dos dados (namespaces) de seu local de armazenamento físico (bancos de dados). Compreender essa separação e a distinção entre Namespaces e Bancos de Dados é crucial para uma gestão de dados eficaz, segurança e, especialmente, para o compartilhamento de dados de alta performance.

Neste artigo, discutirei esses componentes fundamentais e fornecerei um guia prático sobre como aproveitar os mapeamentos de globals para compartilhar estruturas de dados nativas (globals) entre diferentes ambientes lógicos.

Bancos de Dados: A Realidade Física

Um banco de dados representa a realidade física de onde os dados estão armazenados no disco. Antes de tudo, é um arquivo em um sistema de arquivos chamado IRIS.dat (por exemplo, <Pasta de instalação>\mgr\user\IRIS.DAT). O tamanho máximo deste arquivo é de 32TB. Ele é o contêiner para todos os dados reais e o código. Os bancos de dados são gerenciados pelo kernel do IRIS, que lida com cache, journaling e registro de transações no nível do arquivo físico.

Quando você instala o DBMS InterSystems IRIS, os seguintes bancos de dados são instalados automaticamente:

Quando você está trabalhando em um ambiente de produção, é fortemente recomendado que você crie um banco de dados dedicado separado ou vários para armazenar seus dados e código.

Para criar um novo banco de dados, vá em System > Configuration > Local Databases > Create New Database e forneça um nome e um diretório onde ele deve ser armazenado:

Namespaces: Sandbox Lógica

Um namespace no InterSystems IRIS representa um ambiente de trabalho lógico e autocontido. Ele é análogo a um schema em um banco de dados relacional ou a um workspace de projeto. Ele define o escopo de todos os elementos da aplicação: classes persistentes (objetos), rotinas (código) e, mais importante, globals (estruturas de dados nativas). Além disso, as aplicações que rodam em um namespace são logicamente isoladas daquelas em outro. Isso evita conflitos entre diferentes aplicações ou ambientes de desenvolvimento (ex: Desenvolvimento, Staging, Produção). Do ponto de vista do desenvolvedor, tudo — dados e código — reside dentro dos limites do namespace ao qual ele está conectado. Cada processo de aplicação IRIS roda em um namespace. Se você deseja acessar dados/código em outro namespace, precisa alterá-lo explicitamente.

Quando você instala o DBMS InterSystems IRIS, os seguintes namespaces são configurados automaticamente:

  • %SYS
  • USER

Mapeando a Lógica para a Física

O link entre um Namespace e um Banco de Dados é estabelecido através de um Mapeamento. Cada Namespace possui um conjunto definido de mapeamentos que especificam qual banco de dados físico (ou bancos) deve ser usado para armazenar seus elementos.

Por exemplo, temos vários bancos de dados:

  • Clients – contém dados sobre clientes
  • Finances – contém dados financeiros que permitem trabalhar tanto com clientes quanto com fornecedores
  • Vendors – contém dados sobre fornecedores

e dois namespaces:

  • Billing – possui mapeamento para clients e parte ou todas as informações de finances, permitindo que as aplicações que trabalham com este namespace obtenham todas as informações necessárias para lidar com clientes
  • Purchasing – possui mapeamento para vendors e parte ou todas as informações de finances, permitindo que as aplicações que trabalham com este namespace obtenham todas as informações necessárias para lidar com fornecedores

Ao mesmo tempo, cada namespace possui um banco de dados padrão para dados e código.

Neste exemplo, poderia ser:

Você define qual banco de dados deve ser o padrão para o namespace quando você cria um namespace (System > Configuration > Namespaces > New Namespace):

O banco de dados para armazenamento temporário será o IRISTEMP por padrão.

O banco de dados para Globals armazena dados, enquanto o banco de dados para Routines armazena código e descrições de classes.

Se você deseja adicionar mais mapeamentos de dados para outros bancos de dados, vá em System > Configuration > Namespaces > (Escolha o namespace) > Global Mappings > New e adicione um novo mapeamento:

Como você pode ver, é possível configurar o acesso em detalhes minuciosos – incluindo os subscripts (subscritos) de globals específicas.

O mesmo pode ser feito para mapeamentos de Rotinas (Routine mappings).

Além dos mapeamentos definidos pelo usuário, também existem mapeamentos de sistema. Códigos e dados de nível de sistema (como definições de classes de sistema, rotinas e globals específicas de sistema começando com ^%) são mapeados para bancos de dados de sistema (ex: IRISLIB, IRISSYS). Isso garante que os dados da aplicação não interfiram nos componentes principais do sistema.


Ao separar o Namespace lógico do Banco de Dados físico, e ao utilizar mapeamentos, você ganha controle refinado sobre a localização dos dados, segurança e performance.

ディスカッション (0)1
続けるにはログインするか新規登録を行ってください