公告 Claire Zheng · 八月 28, 2023 2023 SUTA培训报名启动啦! SUTA培训是InterSystems专为SUTA有效期客户提供的原厂产品技术服务,具体包括产品的基础管理、编程管理、高级管理和开发培训等。2023 SUTA培训报名现已启动,汇聚技术专家,与新老客户一起探讨提升InterSystems数据平台基础管理运维的技能和知识: #活动 #其他 0 0 0 38
文章 姚 鑫 · 八月 27, 2023 阅读大约需 1 分钟 第十一章 ObjectScript - 操作符 第十一章 ObjectScript - 操作符 操作符 ObjectScript 中的运算符优先级严格是从左到右;在表达式中,运算按照它们出现的顺序执行。可以在表达式中使用显式括号来强制某些操作先于其他操作执行。 通常,即使并不严格需要括号,也会使用括号。很有用,因为它使代码的意图更加清晰。 Familiar Operators ObjectScript 为常见活动提供以下运算符: #InterSystems IRIS for Health 0 0 0 31
文章 姚 鑫 · 八月 26, 2023 阅读大约需 3 分钟 第十章 ObjectScript - 按值或按引用传递变量 第十章 ObjectScript - 按值或按引用传递变量 按值或按引用传递变量 调用方法时,可以通过值或引用将变量值传递给该方法。在大多数情况下,这些变量是没有下标的局部变量,因此本节首先讨论这些变量。 与其他编程语言一样, IRIS 具有一个存储位置,其中包含每个局部变量的值。变量的名称充当内存位置的地址。 当将没有下标的局部变量传递给方法时,可以按值传递该变量。这意味着系统会复制该值,从而使原始值不受影响。要传递内存地址,请在参数列表中紧邻变量名称之前放置一个句点。 为了演示这一点,请考虑名为 Test.Parameters 的类中的以下方法: ClassMethod Square(input As %Integer) As %Integer { set answer=input*input set input=input + 10 return answer } 假设定义一个变量并将其按值传递给此方法: #InterSystems IRIS for Health 0 0 0 33
文章 Michael Lei · 八月 26, 2023 阅读大约需 3 分钟 从患者端开始,建立全国统一的个人电子病历 今年两会期间,有多名两会委员联名提出了《关于建设全国统一医院电子病历系统的提案》,国家卫健委相关部门也马上给予回应,称正在研究建立全国统一的电子健康档案、电子病历。结合数字中国的主要目标之一,让数据多跑腿,群众少走路,在这一背景下,从患者端开始,建立全国统一的电子病历APP已经变得迫切而重要。这不仅有助于提高医疗服务的效率和质量,还能够让患者更好地参与到医疗决策中,实现信息的共享和整合。 电子病历与患者共享的必要性和重要性 #FHIR #InterSystems IRIS for Health 0 0 0 96
文章 姚 鑫 · 八月 25, 2023 阅读大约需 2 分钟 第九章 ObjectScript - 多维数组 第九章 ObjectScript - 多维数组 多维数组 在 ObjectScript 中,任何变量都可以是多维数组(也称为数组)。多维数组通常用于保存一组以某种方式相关的值。 ObjectScript 提供的命令和函数可以方便、快速地访问值。 可能会也可能不会直接使用多维数组,具体取决于使用的系统类和自己的偏好。当需要一个用于存储相关值集的容器时,IRIS 提供了一种基于类的替代方案。请参阅集合类。 Basics 多维数组由任意数量的节点组成,由下标定义。以下示例设置数组的几个节点,然后打印数组的内容: #InterSystems IRIS for Health 0 0 0 40
文章 姚 鑫 · 八月 24, 2023 阅读大约需 2 分钟 第八章 ObjectScript - 变量的可用性和范围 第八章 ObjectScript - 变量的可用性和范围 变量的可用性和范围 ObjectScript 支持以下程序流程,(在大多数方面)与其他编程语言支持的程序流程类似: 用户可能从用户界面调用方法。 该方法执行一些语句,然后调用另一个方法。 该方法定义了局部变量 A、B 和 C。 变量 A、B 和 C 在此方法的范围内。它们对于该方法是私有的。 该方法还定义了Global ^D。 #InterSystems IRIS for Health 0 0 0 38
文章 姚 鑫 · 八月 23, 2023 阅读大约需 3 分钟 第七章 ObjectScript - Variables 第七章 ObjectScript - Variables Variables 在 ObjectScript 中,有两种变量,按它们保存数据的方式分类: 局部变量可以具有公共或私有范围。 局部变量,在内存中保存数据。 局部变量可以具有公共或私有范围。 Global,在数据库中保存数据。这些也称为全局变量。与Global的所有交互都会立即影响数据库。例如,当设置Global值时,该更改会立即影响存储的内容;没有单独的步骤来存储值。同样,当删除Global时,数据会立即从数据库中删除。 变量名称 变量的命名遵循以下规则: #InterSystems IRIS for Health 0 0 0 32
文章 姚 鑫 · 八月 22, 2023 阅读大约需 3 分钟 第六章 ObjectScript - Routine示例 第六章 ObjectScript - Routine示例 Routine示例 下面显示了一个名为 demoroutine 的示例例程,它是用 ObjectScript 编写的。它包含的过程与上一节示例类中所示的方法执行完全相同的操作。 #InterSystems IRIS for Health 0 0 0 29
文章 姚 鑫 · 八月 21, 2023 阅读大约需 3 分钟 第五章 ObjectScript 第五章 ObjectScript 方法和例程都可以用 ObjectScript 编写,但大多数现代代码都是使用方法编写的。方法包含在类中,这允许将类似的方法分组在一起,在类参考中自动生成文档,以及使用 IRIS 的面向对象功能。 这并不意味着routines 不重要。许多有用的系统实用程序都是作为例程编写的,并且在编译类时会生成例程。 示例类 下面显示了一个名为 User.DemoClass 的示例类,其中包含用 ObjectScript 编写的方法。此示例使我们有机会了解一些常见的 ObjectScript 命令、运算符和函数,并了解代码在方法内的组织方式。 #InterSystems IRIS for Health 0 0 0 39
文章 姚 鑫 · 八月 20, 2023 阅读大约需 2 分钟 第四章 IRIS 编程简介 - Macros 第四章 IRIS 编程简介 - Macros Macros ObjectScript 还支持定义替换的宏。定义可以是一个值、整行代码或(使用 ##continue 指令)多行。使用宏来确保一致性。例如: #define StringMacro "Hello, World!" write $$$StringMacro Include Files 可以在例程中定义宏,并稍后在同一例程中使用它们。更常见的是,在中心位置定义它们。为此,需要创建并使用包含文件。包含文件定义宏并且可以包含其他包含文件。 #InterSystems IRIS for Health 0 0 0 61
文章 姚 鑫 · 八月 19, 2023 阅读大约需 1 分钟 第三章 IRIS 编程简介 - SQL 第三章 IRIS 编程简介 - SQL SQL IRIS 提供了 SQL 的实现,称为 SQL。可以在方法和例程中使用 SQL。 从 ObjectScript 使用 SQL 可以使用以下一种或两种方式从 ObjectScript 执行 SQL: #InterSystems IRIS for Health 1 0 0 57
文章 姚 鑫 · 八月 18, 2023 阅读大约需 2 分钟 第二章 IRIS 编程简介 - 同时使用类和例程 第二章 IRIS 编程简介 - 同时使用类和例程 同时使用类和例程 在IRIS 中,可以使用例程中的类。例如,下面显示了例程的一部分,其中我们引用了 Sample.Employee类: #InterSystems IRIS for Health 0 0 0 39
公告 Michael Lei · 八月 17, 2023 InterSystems 支持的平台更新 Q3-2023 我们经常收到有关 InterSystems IRIS 数据平台支持的平台和框架列表最近和即将发生的更改的问题。此更新旨在分享最近的变化以及我们对即将发生的变化的当前最佳知识,但预测未来是一件棘手的事情,这不应被视为承诺的路线图。 话虽如此,接下来是更新…… IRIS 生产环境操作系统和 CPU 架构 #Caché #InterSystems IRIS 0 0 0 84
文章 姚 鑫 · 八月 17, 2023 阅读大约需 2 分钟 第一章 IRIS 编程简介 第一章 IRIS 编程简介 简介 IRIS 是一个高性能多模型数据平台,具有内置的通用编程语言 ObjectScript,以及对 Python 的内置支持。 IRIS 支持多进程并提供并发控制。每个进程都可以直接、高效地访问数据。 在 IRIS 中,可以根据喜好编写类、例程或它们的组合。在所有情况下,存储的数据最终都包含在称为全局变量的结构中。 IRIS 编程具有以下特点: - 类和例程可以互换使用。 - 类和例程可以互相调用。 - 类提供面向对象的功能。 - 数据库存储已集成到 ObjectScript 和 Python 中。 - 类可以以简化编程的方式保存数据。如果使用持久类,数据可以同时作为对象、SQL 表和全局变量使用。 - 可以直接从类或例程访问全局变量,这意味着可以灵活地按照想要的方式存储和访问数据。 可以选择适合需求的方法。 #InterSystems IRIS for Health 0 0 0 72
文章 Michael Lei · 八月 17, 2023 阅读大约需 1 分钟 使用 CSP 将Globals下载为 XML 受到@Evgeny.Shvarov 的问题和@Ashok.Kumar 的回复的启发我已经创建了一个用于把Global下载成 XML 文件的基础 如何使用:只需调用 http://<your_server>/csp/samples2/dc.Gdown.cls ?GBL=global_name之类的页面gbl-name 不带首字母 ^(插入符号)输出具有默认名称 <global_name>.XML 您可以选择。 已知限制: #CSP #Globals #XML #InterSystems IRIS 0 0 0 83
文章 姚 鑫 · 八月 16, 2023 阅读大约需 4 分钟 第二十四章 参考 - HL7业务服务的设置- 忽略入站 ACK 第二十四章 参考 - HL7业务服务的设置- 忽略入站 ACK 忽略入站 ACK 如果为 True,业务服务将忽略任何入站 ACK 消息,以避免创建 ACK 反馈循环。 Local Facility Application 以冒号分隔的 LocalFacility:LocalApplication 代码,表示通过此业务服务接收 HL7 消息的设施和应用程序。如果此业务服务创建自己的 ACK,则本地设施应用程序会为 ACK 消息提供 SendingFacility:SendingApplication 代码;否则,该设置将被忽略。 #InterSystems IRIS for Health 0 0 0 40
公告 Claire Zheng · 八月 16, 2023 2023 InterSystems开发者竞赛:Python 编程大赛 嗨,开发者, 我们很高兴邀请大家参加新的以 Python 为主题的 InterSystems 在线编程竞赛! 🏆 InterSystems Python 编程大赛🏆 时间: 2023年9月4日至24日(美国东部时间) 奖金池: 14,000 美元 ##嵌入式 Python #Python #活动 #竞赛 #InterSystems IRIS #IRIS竞赛 #Open Exchange 0 0 0 101
文章 姚 鑫 · 八月 15, 2023 阅读大约需 3 分钟 第二十三章 参考 - HL7业务服务的设置- DocTypeResolution 第二十三章 参考 - HL7业务服务的设置- DocTypeResolution DocTypeResolution 指定如何根据 MSH:9 中的消息类型解析 DocType。选择以下选项之一: #InterSystems IRIS for Health 0 0 0 55
文章 姚 鑫 · 八月 14, 2023 阅读大约需 4 分钟 第二十二章 参考 - HL7业务服务的设置 第二十二章 参考 - HL7业务服务的设置 提供HL7业务服务设置的参考信息。 HL7最重要的设置如下: - 池大小-默认值为1,可以支持FIFO(先进先出)处理。在许多情况下,必须按顺序接收多个患者的人口统计更新。例如,许多应用程序在处理订单消息之前需要接收ADT注册消息,在收到结果消息之前必须接收订单消息,等等。 - 类别—此文本标签允许在配置图中对配置项进行排序。 - 追加时间戳-(仅限文件)在存档路径中的文件名追加时间戳。 - 归档路径-(仅限文件和FTP)指定HL7消息归档的位置。 - 呼叫间隔-在寻找更多输入之前等待的秒数。缺省值是5秒。最小值是0.1秒。 Ack Mode 帮助建立发布 HL7 确认消息以响应收到的 HL7 消息的格式和约定。对于业务服务,此设置可以具有下表中显示的值之一。 #InterSystems IRIS 0 0 0 53
文章 Weiwei Gu · 八月 14, 2023 阅读大约需 2 分钟 调试管理门户加载图片失败的原因 在提交的 WRC case中(Intersystems 全球技术支持响应中心),我们经常看到客户提出有关新 Web 网关设置的问题,其中管理门户加载一半,但不显示图像。本文将解释为什么会出现此错误,以及如何修复它。本说明主要针对服务 InterSystems IRIS 实例的 Web 网关,但相同的说明也应适用于服务 Caché 实例的 CSP 网关。 问题: #CSP #Web网关 #InterSystems IRIS 1 0 0 55
文章 Michael Lei · 八月 10, 2023 阅读大约需 2 分钟 如何比较两个数据库中的多个Global和Routines InterSystems 常见问题解答 ※如果您想比较使用Mirror、Shadow或其他机制复制的数据库,请使用此方法。 您可以使用 DATACHECK 实用程序来比较Global。请参阅下面的文档。DataCheck 概述 [IRIS] *** Routines比较使用系统例程 %RCMP 或管理门户。 以下是如何在管理门户中使用它。 #提示和技巧 #系统管理 #Caché #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 88
文章 姚 鑫 · 八月 10, 2023 阅读大约需 3 分钟 第十八章 定义 HL7 搜索表 第十八章 定义 HL7 搜索表 HL7 搜索表类 EnsLib.HL7.SearchTable,自动索引填充的 HL7 属性。 如果需要搜索更多的项,可以创建一个子类。子类继承Identifier属性,以及使搜索表工作的基础结构。具体操作请参见在产品中使用虚拟文档中的“定义搜索表类”。 对于HL7, 支持PropType的附加值。除了在产品中使用虚拟文档中列出的类型之外,还可以使用DateTime:HL7。 创建搜索表时,不要使用保留的包名;参见开发产品中的“保留包名”。 默认索引的属性 当选择EnsLib.HL7。searchtable作为搜索表类,使能够在HL7消息中搜索以下虚拟属性。 MSHTypeName 消息结构名称。为了创建这个字符串,将HL7消息中的以下值连接起来: - MSH消息头段 #InterSystems IRIS for Health 0 0 0 43
文章 姚 鑫 · 八月 8, 2023 阅读大约需 3 分钟 第十六章 定义 HL7 的 DTL 数据转换 - 转换长段字段 第十六章 定义 HL7 的 DTL 数据转换 - 转换长段字段 转换长段字段 DTL 转换使用的 ObjectScript 方法 GetValueAt 将 HL7 段字段截断为 3.6MB。因此,当转换长度超过 3.6MB 的字段时,无法在 DTL 编辑器中使用从左到右的拖动操作。例如,如果 OBX:5 字段超过 3.6MB,则无法使用 DTL 编辑器将源字段拖动到目标,因为它将被截断。同样,如果要转换的字段长度超过 3.6MB,则自定义代码不应调用 GetValueAt。 #InterSystems IRIS for Health 0 0 0 55
文章 Weiwei Gu · 八月 7, 2023 阅读大约需 1 分钟 如何自定义 Web 网关错误消息 InterSystems 常见问题解答标题 您可以为以下 Web Gateway 错误消息/系统响应设置单独的错误页面: 服务器错误 服务器繁忙 服务器无法使用 服务器超时 连接关闭 在 Web Gateway 管理界面上进行设置([Management Portal] > [System Administration] > [Configuration] > [Web Gateway Management] > [Configuration] > [Default Parameters])。 在“默认参数”(Default Parameters )菜单的“错误页面”部分中,设置要显示的 html 页面的文件名或发生错误时要重定向到的 URL。 #CSP #Web网关 #提示和技巧 #InterSystems IRIS #InterSystems IRIS for Health 1 0 0 88
公告 Michael Lei · 八月 7, 2023 开发者圆桌在线论坛:医疗行业中的生成式人工智能用例 大家好, 与我们一起参加 8 月 31 日上午 10 点(美国东部时间)在线开发者圆桌会议,讨论医疗保健中的生成式 AI 使用案例。学习医疗保健领域的用例+参考架构,并观看关于大语言模型的Demo演示。我们将像往常一样有时间进行问答和公开讨论。 通过开发者社区Global Masters报名。 演讲者: @Nicholai Mitchko ,InterSystems 解决方案合作伙伴销售工程师经理 背景: Nicholai 在 InterSystems 管理着一支由 10 名解决方案工程师组成的团队,帮助医疗保健公司大规模设计、开发和交付解决方案。在业余时间,Nicholai 致力于大型语言模型的研究,包括开发自己的模型,这些模型出现在Huggingface OpenLLM 排行榜上。 #AI #活动 #Global Masters 0 0 0 135
文章 姚 鑫 · 八月 6, 2023 阅读大约需 3 分钟 第十四章 定义 HL7 的路由规则集 第十四章 配置Production - 定义 HL7 的路由规则集 为 HL7 接口创建路由规则集时,目标是根据源消息中找到的段告诉production如何处理源消息。有时找到哪些片段很重要;有时,在这些细分中找到哪些值很重要。 在普通规则集中,每个规则都会向调用该规则集的业务流程返回一个值。在路由规则集中,规则通常将 HL7 消息定向到目的地,并可能在发送之前转换 HL7 消息。 创建规则集时,不要使用保留的包名称 #InterSystems IRIS for Health 0 0 0 60
文章 姚 鑫 · 八月 5, 2023 阅读大约需 3 分钟 第十三章 配置Production - 添加HL7业务操作 第十三章 配置Production - 添加HL7业务操作 添加HL7业务操作 要从production中发送HL7消息,必须添加HL7业务操作。要将HL7业务操作添加到production品中,必须创建它,将其集成到production中,并根据需要对其进行配置。以下小节提供详细信息。 创建HL7业务操作 将HL7业务操作添加到production中: #InterSystems IRIS for Health 0 0 0 56
文章 姚 鑫 · 八月 4, 2023 阅读大约需 3 分钟 第十二章 配置Production - 添加HL7序列管理器 第十二章 配置Production - 添加HL7序列管理器 添加HL7序列管理器 HL7消息可能由于各种原因而乱序,特别是在多个处理器处理它们时。在某些情况下,需要确保按照正确的顺序处理HL7消息。在这种情况下,可以将HL7序列管理器添加到production的适当部分。 HL7序列管理器是一个业务流程,它接受传入的HL7消息(可能来自多个源),然后按照消息中的MSH:13 SequenceNumbers字段指定的顺序将消息转发到目标配置项。 序列管理器可以检测重复的消息和消息之间的时间间隔。它还确定顺序消息之间的时间间隔何时大到足以表明问题。它的灵敏度级别可以使用它的配置设置来调整。 要构建用于HL7消息路由生产的HL7序列管理器,必须创建并配置它,然后将其集成到生产中。本主题将解释每个步骤。 #InterSystems IRIS for Health 0 0 0 47
文章 Weiwei Gu · 八月 4, 2023 阅读大约需 3 分钟 在 InterSystems IRIS 中创建具有超过 999 个属性的类/表 InterSystems IRIS 目前将类限制为 999 个属性。 但是,如果您需要为每个对象存储更多数据该怎么办? 本文将回答这个问题(附加了社区 Python 网关的客串以及如何将广泛的数据集传输到 Python 中)。 答案其实很简单 - InterSystems IRIS 目前将类限制为 999 个属性,但不限制 999 个基元(primitives)。 InterSystems IRIS 中的属性可以是具有 999 个属性的对象等等 - 该限制很容易被忽略。 #Globals #Python #SQL #关系表 #对象数据模型 #提示和技巧 #InterSystems IRIS 0 0 0 64
InterSystems 官方 Claire Zheng · 八月 3, 2023 2023 年 8 月 1 日 – 警报:ECP 应用程序服务器挂起和 Dejournaling 挂起 InterSystems 已纠正了两个缺陷。 第一个缺陷可能导致 ECP 应用程序服务器挂起。此缺陷仅与 ARM 和 IBM Power 处理器相关;存在于 InterSystems IRIS®、InterSystems IRIS for Health™ 和 HealthShare® Health Connect 版本2022.1.2和2022.1.3中。该修复被标识为 DP-423661。该缺陷将在所有未来版本中得到解决。 #ECP #版本 #HealthShare #InterSystems IRIS #InterSystems IRIS for Health #InterSystems 官方 0 0 0 51