InterSystems 开发者社区汇聚了 17,819 位出色的开发者
InterSystems IRIS 程序员可以在这里学习、分享、了解最新动态、成长,以及收获快乐!
文章
· 五月 26, 2022 阅读大约需 1 分钟
互操作性的例子--DICOM production 与模拟器

Hi,大家好!

您曾经实施过DICOM集成吗?也许您已经百度了一些样例,甚至是模拟器。希望本文的例子能给您带来帮助。

DICOM 是一个广泛用于医疗诊断影像的消息标准。您可以使用IRIS For Health或者Health Connect在互操作性Production中使用DICOM标准,在这里您可以找到文档.

在很多情况下,当您开发一个DICOM集成时,您可以运行一个模拟器来扮演一些外部系统(如PACS),可以在连接到一个真正的系统之前充分测试您想要实现的流程,这一点真的很有用。

在这里您可以找到一个使用IRIS For Health的DICOM整合例子,还有一个叫做dcm4che的模拟器

在这个例子里, 实现了两个不同的场景:

0 0
0 66
文章
· 六月 26, 2022 阅读大约需 7 分钟
第十一章 信号(一)- 概念

第十一章 信号(一) - 概念

背景

维基百科对信号量有这样的定义:“在计算机科学中,特别是在操作系统中,信号量是一种变量或抽象数据类型,用于控制多个进程在并行编程或多用户环境中对公共资源的访问。”信号量不同于互斥体(或锁)。互斥锁最常用于管理竞争进程对单个资源的访问。当一个资源有多个相同的副本并且这些副本中的每一个都可以由单独的进程同时使用时,就会使用信号量。

考虑一个办公用品商店。它可能有几台复印机供其客户使用,但每台复印机一次只能由一个客户使用。为了控制这一点,有一组键可以启用机器并记录使用情况。当客户想要复印文件时,他们向职员索取钥匙,使用机器,然后归还钥匙,并支付使用费。如果所有机器都在使用,客户必须等到钥匙归还。保存键的位置用作信号量。

该示例可以进一步推广到包括不同类型的复印机,也许可以通过它们可以制作的副本的大小来区分。在这种情况下,将有多个信号量,如果复制者在复制的大小上有任何重叠,那么希望复制共同大小的客户将有两个资源可供提取。

0 0
0 69
文章
· 七月 4, 2022 阅读大约需 11 分钟
IRIS/HealthConnect 高可用机制

高可用性(HA)指的是使系统或应用程序在很高比例的时间内保持运行,最大限度地减少计划内和计划外的停机时间。

维持系统高可用性的主要机制被称为故障转移。在这种方法下,一个故障的主系统被一个备份系统所取代;也就是说,生产系统故障转移到备份系统上。许多HA配置还提供了灾难恢复(DR)的机制,即在HA机制无法保持系统的可用性时,也能及时恢复系统的可用性。

本文简要讨论了可用于基于InterSystems IRIS的应用程序的HA策略机制,提供了HA解决方案的功能比较,并讨论了使用分布式缓存的故障转移策略。

0 0
0 91
文章
· 七月 11, 2022 阅读大约需 5 分钟
DeepSee 的使用 - 第一部分 - 基础介绍

InterSystems DeepSee的目的是使你能够将BI嵌入到你的应用程序中,这样你的用户就可以对他们的数据提出和回答复杂的问题。你的应用程序可以包括仪表盘,它包含图形部件。这些部件用来显示数据,由透视表和KPIs(关键绩效指标)驱动。对于一个透视表,用户可以显示一个列表,用其显示源值。

透视表、KPIs和列表是查询,在运行时执行。

数据透视表可以对运行时的输入作出反应,如用户的过滤器选择。在内部,它使用一个MDX(MultiDimensional eXpressions)查询,与DeepSee cube进行通信。一个cube由一个事实表和其索引组成。一个事实表由一组事实(行)组成,每个事实对应于一个基本记录。例如,这些事实可以代表病人或部门。DeepSee还生成了一组维度表(level tables)。所有的表都是动态维护的,根据你的配置和实现,DeepSee检测你的事务表的变化,并传播到事实表。当用户在分析器中创建透视表时,DeepSee会自动生成一个MDX查询。

0 0
0 216
文章
· 八月 2, 2022 阅读大约需 3 分钟
第十五章 源代码文件 REST API 简介

第十五章 源代码文件 REST API 简介

源代码文件 REST API 简介

REST API 提供对源代码文件的访问。我们开发此 API 是为了允许 Atelier(我们基于 EclipseIDE)访问 IRIS 服务器上的 IRIS 代码文件。可以使用 API 执行访问 IRIS 代码文件所需的操作。这些行动包括:
- 获取 IRIS 实例上可用的命名空间
- 查找命名空间中定义的类定义和例程
- 获取类和例程的文本定义
- 更新类定义或例程
- 创建新的类定义或例程
- 删除类定义或例程
- 编译 IRIS 类或例程
- 通过对表执行 SQL 查询来发现 IRIS 环境的属性

0 0
0 55
文章
· 八月 9, 2022 阅读大约需 1 分钟
一个更有用的对象Object Dump

在测试你的代码时,你经常会遇到需要检查对象的实际内容。无论是使用 ZWRITE 还是 $system.OBJ.Dump()

你会得到一个简单的属性图片,"--- 属性值---"

而 "--- swizzled references ---" 更容易让人混淆

用“--- calculated references ---" 你只是被留在了后面。

0 0
0 232
文章
· 八月 11, 2022 阅读大约需 4 分钟
第二十四章 源代码文件 REST API 参考(六)

第二十四章 源代码文件 REST API 参考(六)

Compile

此方法编译源代码文件。它允许一次编译多个源代码文件。它返回一个对应源代码文件对象的数组。

要编译的文件列表作为 JSON 数组在 http 请求的正文中传递。例如,[ "%Api.DocDB.cls", ... ]

有关示例和其他详细信息,请参阅本手册教程章节中的编译文件。

URL

POST http://server:port/api/atelier/v1/namespace/action/compile

此调用需要标头 Content-Type application/json

URL Parameters

  • 可以传递 URL 参数“flags”(默认为“cuk”),该参数将传递给编译器。

0 0
0 130
文章
· 八月 20, 2022 阅读大约需 3 分钟
第七章 配置命名空间(二)

第七章 配置命名空间(二)

将全局、例程和包映射添加到命名空间

除了可以访问映射数据库中的全局变量和例程之外,还可以映射来自相同或不同系统上的其他数据库的全局变量、例程和类包。这允许对可以存在于任何地方的数据进行简单引用,并且是命名空间的主要特征。可以映射整个全局变量或全局变量;此功能允许数据轻松跨磁盘。

注意:映射按字母顺序排序;如果指定了下标,则按名称和下标排序。

单击适当的选项开始映射:

  • Global Mappings
  • Routine Mappings
  • Package Mappings
  • Mapping Data to All Namespaces

以下是映射如何在示例航空公司预订应用程序中工作的示意图:

数据和程序存储在数据库数据库中,即物理存储位置,并由名称空间引用,即逻辑引用。

0 0
0 51
文章
· 八月 26, 2022 阅读大约需 2 分钟
第十三章 配置任务管理器电子邮件设置

第十三章 配置任务管理器电子邮件设置

可以将任务管理器设置为在任务完成时发送电子邮件通知,在任务管理器电子邮件设置页面(系统管理 > 配置 > 其他设置 > 任务管理器电子邮件),可以配置通知设置:

  • SMTP 服务器和端口

发送 SMTP(简单邮件传输协议)邮件服务器的地址和端口

  • SSL Config

如果要使用 SSL/TLS 加密电子邮件,则要使用的 SSL 配置。如果实例上没有 SSL 配置,或者想创建一个新配置,请参阅创建或编辑 TLS 配置。如果您不选择 SSL 配置,则不会使用 SSL/TLS

0 0
0 45

Hi 大家好,

我最近开始学习InterSystems IRIS 的互操作性,我发现官方文档对理解它的工作原理很有帮助,尽管我自己在实现它时仍有一些困难。在我的同事的帮助下,我成功地创建了一个系统的Demo,并从实践中学习。因此,我决定写一下文章,分享我得到的帮助,来帮助更多的其他人。

0 0
0 65
文章
· 九月 23, 2022 阅读大约需 1 分钟
HTTPS 客户端

1、使用HTTPS前,需要在系统 > 安全管理 > SSL/TLS 配置 添加客户端的凭据

2、代码

1 0
0 108
文章
· 十月 4, 2022 阅读大约需 3 分钟
第六章 CSP 架构 - 静态文件

第六章 CSP 架构 - 静态文件

静态文件

数据库服务器为所有 CSP 提供服务。 数据库服务器还可以通过 CSP 网关为 Web 应用程序提供任何类型的静态文件。在标准 Web 应用程序中,Web 服务器通常提供静态内容。要在 Caché 上运行 Zen 应用程序,必须配置 Web 服务器以允许服务器通过 CSP 网关提供所有静态文件。

注意:要运行基于 Zen 的应用程序,请启用“服务文件”选项并配置 Web 服务器以允许 Caché 服务器提供静态文件。然后 Zen 框架将能够提供依赖图像和 JavaScript 帮助文档。

1 0
0 65
文章
· 十月 20, 2022 阅读大约需 4 分钟
第二十二章 CSP Session 管理 - Private Pages

第二十二章 CSP Session 管理 - Private Pages

CSP 提供了私有页面的概念。只能从同一 CSP 会话中的另一个页面导航到私有页面。私有页面对于想要限制对某些页面的访问的应用程序很有用。

例如,假设有一个名为 private.csp 的私有页面(CSP 示例页面之一)。用户无法直接导航到 private.csp(例如,通过输入其 URL)。用户只能从另一个 CSP 页面中包含的链接导航到 private.csp。引用 CSP 页面中包含的链接不能是绝对 URL,以 http:// 开头。只有相对于引用页面的路径才被私有页面方法正确加密/标记。即:下面的前两个链接将相同的令牌传递给目标私有页面 test2.csp

0 0
0 46

众说周知,EPIC 是电子病历厂商中当之无愧的领导者,本文让我们看看EPIC是如何玩转FHIR的,并进一步了解其互操作性方法、资源和API工具。

几十年来,EPIC和其他主要的EHR供应商一直在围绕着互操作性作斗争,有时候互相容忍,有时也得接受(开放接口)。

今天,大多数电子病历厂商已经针对市场和监管的压力采取了行动,采用FHIR API标准,扩大病人对医疗记录的访问。

但在早期,EPIC和其他竞争对手争先恐后地抢占市场份额,为了成为院内系统的主导者,与其他厂商分享数据、给别人提供数据访问似乎是自我毁灭。

那么今天,EPIC在FHIR API、SMART on FHIR 应用市场、患者访问和互操作性战略方面的立场如何? 以下是关于EPIC在FHIR API和互操作性上提供的简单介绍和链接。


EPIC 在FHIR API和互操作性上的战略和资源

EPIC互操作性的方法和选择

大多数EPIC集成的重点是通过EPIC系统提供扩展访问,但不一定与其他厂商共享。

0 0
0 278
文章
· 一月 17, 2023 阅读大约需 3 分钟
HTAP 数据平台插入和查询速度测试

每秒插入大量记录,同时同步进行实时查询的能力称为混合事务分析处理 (HTAP)。 它也被称为 Transactional analytics 或 Transanalytics 或 Translytics,当存在来自工业物联网传感器的持续实时数据流或股票市场的波动数据时,它是非常有用的技术,并且允许实时或接近实时地查询这些数据集。

在本文中我将分享我在不同平台上运行带有测试流数据的演示,同时进行持续插入和持续查询,看看每个平台上有何不同反应,如在每个平台上输入和输出数据的速度以及它们的性能。 我在本演示中试验的平台包括:InterSystems IRIS、MariaDB 和 MySQL。

试验结果

20秒的测试时间里:

0 0
0 76

第二十六章 使用系统监视器 - 使用 ^%SYSMONMGR 管理应用程序监视器

如使用 ^%SYSMONMGR 实用程序中所述,^%SYSMONMGR 实用程序允许管理和配置系统监视器,包括应用程序监视器。该实用程序可以在任何名称空间中执行,使用它所做的更改只会影响启动它的名称空间。必须通过在该命名空间中启动 ^%SYSMONMGR 来为配置的每个启动命名空间维护单独的应用程序监视器配置。

注意:在对应用程序监视器配置进行任何更改(例如激活类)之后,必须在进行更改的名称空间中重新启动系统监视器以使更改生效。

要管理应用程序监视器,请在终端中输入以下命令:

%SYS>do ^%SYSMONMGR

然后为管理应用程序监视器输入 5。显示以下菜单:

0 0
0 100
文章
· 一月 8, 2023 阅读大约需 3 分钟
第三十八章 使用^%SYS.MONLBL检查例程性能

第三十八章 使用^%SYS.MONLBL检查例程性能

例程^%SYS.MONLBL为监视器工具提供用户界面。该实用程序提供了一种方法来诊断在例程中执行选定代码所花费的时间,从而帮助识别特别耗费资源的代码行。它是现有监视器实用程序的扩展,可通过^PerfMon%Monitor系统程序包类访问。由于这些实用程序共享相同的内存分配,因此一次只能在IRIS实例上运行其中一个实用程序。

调用逐行监视例程

如果在调用^%SYS.MONLBL时监视器没有运行,则例程会显示一条警告消息,并提供启动监视器或检查内存要求的选项。例如:

0 0
0 65
文章
· 一月 19, 2023 阅读大约需 6 分钟
使用嵌入式 Python 创建存储过程

Python 已成为世界上使用最广泛的编程语言(来源:https://www.tiobe.com/tiobe-index/),SQL 作为数据库语言继续引领潮流。 Python 和 SQL 一起工作以提供 SQL 单独无法提供的新功能不是很好吗?毕竟,Python 拥有超过 380,000 个已发布的库(来源:https://pypi.org/),它们具有非常有趣的功能,可以在 Python 中扩展您的 SQL 查询。本文详细介绍了如何使用嵌入式 Python 在 InterSystems IRIS 数据库中创建新的 SQL 存储过程。

用作示例的 Python 库

本文将使用两个非常有用的库:Geopy 和 Chronyk。

Geopy 是一个用于将地理编码(地址和地理坐标的限定)应用于地址数据的库。有了它,就可以从街道名称中获取邮局格式的邮政编码和完整地址。非常有用,因为许多记录都有地址。

0 0
0 67
文章
· 一月 27, 2023 阅读大约需 4 分钟
第五十八章 使用 ^BLKCOL 监视块冲突

第五十八章 使用 ^BLKCOL 监视块冲突

当一个进程被迫等待访问一个块时,就会发生块冲突。过多的块冲突会降低应用程序性能。

Using ^BLKCOL

IRIS® 数据平台中,^BLKCOL 实用程序对指定时间段(默认为 10 秒)内的块碰撞进行采样,记录这段时间内指定时间间隔(默认为 10 毫秒)内的最新块碰撞。对于每个记录的冲突,^BLKCOL 不仅标识块,还标识涉及的全局及其在块中的第一个和最后一个引用,以及创建试图访问块的进程的例程和行。

注意:irisstat -D 选项,如本指南附录“使用 irisstat 实用程序监视 IRIS”中的使用选项运行 irisstat 中所述,也对块冲突进行采样,但仅识别涉及的块。

0 0
0 62

第六十六章 使用 Web 服务监控 IRIS - IRIS 对 WS-Monitoring 的支持概述

本附录介绍并简要描述了如何使用 IRIS® 数据平台支持 WS-Management 规范,它使能够通过 SOAP 远程监控 IRIS 实例。

IRIS 对 WS-Monitoring 的支持概述

按照 WS-Management 规范,SYS.WSMon 包提供了一个 Web 服务,可以使用它来远程监控 IRIS 实例。它在功能上类似于 SNMP 接口(请参阅本指南的“使用 SNMP 监控 IRIS”附录),但使用内置的 IRIS 网络服务支持。

WS-Management 的支持包括以下元素:

0 0
0 110