文章 姚 鑫 · 六月 24, 2023 阅读大约需 2 分钟 第三十八章 ObjectScript Productions - Defining Business Metrics - 业务指标中的其他选项 第三十八章 开发Productions - ObjectScript Productions - Defining Business Metrics - 业务指标中的其他选项 业务指标中的其他选项 本节介绍业务指标类中的其他选项。 定义在仪表板中使用的操作 业务指标类可以定义操作,可以将这些操作公开为仪表板中的用户选项。一个操作可以执行客户端活动(例如过滤和刷新仪表板)和服务器端活动(例如调用您自己的 API)的组合。作用机制很一般。 要定义操作,请实施业务指标类的 %OnGetActionList() 和 %OnDashboardAction() 方法。有关这些方法的信息,请参阅实施 商业智能中的定义自定义操作。 #InterSystems IRIS for Health 0 0 0 89
文章 Nicky Zhu · 九月 23, 2024 阅读大约需 2 分钟 基于向量搜索的患者相似度匹配示例程序 演示程序 使用向量搜索在 IRIS for Health 上运行的病人相似性比较演示。 使用向量搜索计算相似度,在向量基础上比较不同病人之间的个人属性,如姓名、出生日期、地址等。得分越高,被比较的病人越有可能是同一个人。 本演示程序使用 sentence-transformers model 将文本转换为向量,然后使用 IRIS 向量函数来存储、读取和比较向量。 流程原理 #InterSystems IRIS for Health Open Exchange app 1 0 0 89
文章 姚 鑫 · 二月 22, 2021 阅读大约需 7 分钟 第四十四章 Caché 变量大全 $ZTRAP 变量 第四十四章 Caché 变量大全 $ZTRAP 变量 包含当前错误陷阱处理程序的名称。 大纲 $ZTRAP $ZT 描述 $ZTRAP包含当前错误陷阱处理程序的行标签名和/或例程名。有三种方法可以设置$ZTRAP: SET $ZTRAP=“location” SET $ZTRAP=“*location” SET $ZTRAP=“^%ET” or “^%ETN” 在这里,位置可以指定为标签(当前例程中的行标签)、^routine(指定外部例程的开始)或label^routine(指定外部例程中的指定标签)。 #Caché #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 87
文章 Michael Lei · 七月 7, 2024 阅读大约需 2 分钟 InterSystems 常见问题系列如何从FTP 服务器上传/下载影像文件 InterSystems 常见问题系列FAQ 流程如下 1. 上传到 FTP server #ObjectScript #提示和技巧 #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 87
文章 jieliang liu · 四月 17, 2024 阅读大约需 1 分钟 [视频]了解HL7 FHIR 资源(Resources)的架构 各位开发者好 欢迎观看InterSystems Bilibili官方频道的最新视频 InterSystems Developers Bilibili: ⏯ Understanding the Structure of HL7 FHIR Resources //player.bilibili.com/player.html?aid=1953056184&bvid=BV1iC411G74J&cid=1506782787&p=1[这是一个嵌入式链接,但由于您拒绝了访问嵌入式内容所需的 Cookie,您无法直接在网站上进行查看。要查看嵌入式内容,您需要在 Cookie 设置中接受所有 Cookie。] #FHIR #HL7 #视频 #InterSystems IRIS for Health 0 0 0 86
文章 姚 鑫 · 八月 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 86
文章 姚 鑫 · 五月 5, 2021 阅读大约需 6 分钟 第三章 使用多维存储(全局变量)(一) 第三章 使用多维存储(全局变量)(一) 本章描述了使用多维存储(全局变量)可以执行的各种操作。 以全局变量存储数据 在全局节点中存储数据很简单:像对待任何其他变量一样对待全局变量。 区别在于对全局变量的操作是自动写入数据库的。 创建全局变量 创建新的全局变量不需要设置工作;只需将数据设置为全局变量即可隐式创建新的全局结构。可以创建全局变量(或全局变量下标)并通过单个操作将数据放入其中,也可以创建全局变量(或下标)并通过将其设置为空字符串将其保留为空。在ObjectScript中,这些操作是使用SET命令完成的。 下面的例子定义了一个名为Color(如果还不存在)的全局变量,并将值“Red”与之关联。 如果已经存在一个名为Color的全局变量,那么这些示例将其修改为包含新信息。 在ObjectScript中: #SQL #Caché #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 86
文章 姚 鑫 · 五月 13, 2021 阅读大约需 4 分钟 第五章 管理全局变量(二) 第五章 管理全局变量(二) 在全局变量中查找值 “查找全局变量字符串”页使可以在下标或选定全局变量的值中查找给定的字符串。 要访问和使用此页,请执行以下操作: 显示“全局变量”页。 选择要使用的全局变量。为此,请参阅“全局页简介”一节中的步骤2和3。 单击查找按钮。 对于查找内容,输入要搜索的字符串。 (可选)清除大小写匹配。默认情况下,搜索区分大小写。 单击Find First或Find All。 然后,页面显示选定全局变量中下标或值包含给定字符串的第一个节点或所有节点。该表左侧显示了节点下标,右侧显示了相应的值。 如果使用的是Find First,请根据需要单击Find Next以查看下一个节点。 完成后,单击关闭窗口。 执行批量更换 注意:在进行任何编辑之前,请确保知道IRIS使用哪个全局系统,以及应用程序使用哪个全局系统;参见“一般建议”此选项会永久更改数据。不建议在生产系统中使用。 #SQL #Caché #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 86
文章 姚 鑫 · 八月 4, 2024 阅读大约需 2 分钟 第十二章 在 Web 服务中定义自定义处理 - 实现 ProcessBody() [toc] 第十二章 在 Web 服务中定义自定义处理 - 实现 ProcessBody() 实现 ProcessBody() ProcessBody() 方法具有以下签名: #InterSystems IRIS for Health 0 0 0 86
文章 姚 鑫 · 二月 9, 2021 阅读大约需 9 分钟 第二十九章 Caché 变量大全 $ZERROR 变量 第二十九章 Caché 变量大全 $ZERROR 变量 包含上一个错误的名称和位置。 大纲 $ZERROR $ZE 描述 $ZERROR包含最新错误的名称,最新错误的位置(在适用的情况下)以及(对于某些错误代码而言)有关导致错误的原因的其他信息。 $ZERROR始终包含相应语言模式的最新错误。 $ZERROR值旨在错误后立即使用。由于$ZERROR值可能不会在例程调用中保留,因此希望保留$ZERROR值以供以后使用的用户应将其复制到变量中。强烈建议用户在使用后立即将$ZERROR设置为空字符串(“”)。 $ZERROR中包含的字符串可以是以下任何一种形式: #Caché #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 86
文章 姚 鑫 · 七月 26, 2023 阅读大约需 3 分钟 第三章 HL7 架构和可用工具 - 使用 HL7 架构结构页面 第三章 HL7 架构和可用工具 - 使用 HL7 架构结构页面 使用 HL7 架构结构页面 通过 HL7 架构页面,可以导入和查看 HL7 版本 2 架构规范。要显示此页面,请从主页中选择互操作性 > 互操作 > HL7 v2.x > HL7 v2.x 架构结构。有关使用此页面的一般信息,请参阅在产品中使用虚拟文档中的“使用架构结构页面”。 HL7 模式页面提供了一个附加选项卡:消息类型。此选项卡将两个消息结构标识为请求/响应对。 查看文档类型列表 要列出某个类别中的所有文档类型结构,请首先选择该类别,然后单击“DocType 结构”选项卡。 #InterSystems IRIS for Health 1 0 0 86
文章 Louis Lu · 十一月 16, 2021 阅读大约需 2 分钟 如何为 JSON 对象中的某个属性创建索引 内容摘自英文社区,原文见这里。主要解答了如何对于JSON对象中的某个字段创建索引。 在解答中Robert Cemper给出了下面示例 主要思路是将%Stream --> %DynamicObject --> 提取索引字段内容保存到计算字段内 #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 85
文章 姚 鑫 · 九月 9, 2023 阅读大约需 2 分钟 第二十三章 Classes - 属性 第二十三章 Classes - 属性 形式上 IRIS 有两种属性: 属性,保存值。该值可以是以下任意值: 单个文字值,通常基于数据类型。 对象值(包括集合对象和流对象)。 多维数组。这种情况不太常见。 属性一词通常仅指作为properties的attributes,而不是指具有关联的属性。 关系,保持对象之间的关联。 可以在包含 ObjectScript 方法、Python 方法或两者组合的类中定义属性。但是,无法从 Python 方法访问关系。本节展示了一个示例类,其中包含显示以下一些变体的属性定义: #InterSystems IRIS for Health 0 0 0 85
文章 姚 鑫 · 七月 20, 2023 阅读大约需 3 分钟 第六十四章 开发Productions - ObjectScript Productions - Production品及其零部件的生命周期 第六十四章 开发Productions - ObjectScript Productions - Production品及其零部件的生命周期 此页面描述了Production及其组成部分的生命周期,以供参考。 Production的生命周期 Production启动 当Production开始时,动作顺序如下: #InterSystems IRIS for Health 0 0 0 85
文章 姚 鑫 · 八月 28, 2023 阅读大约需 3 分钟 第十二章 ObjectScript - 命令 第十二章 ObjectScript - 命令 命令 本节概述了在 ObjectScript 常用命令。其中包括与其他语言中的命令相似的命令,以及其他语言中没有等效项的其他命令。 命令名称不区分大小写,尽管按照惯例它们在运行文本中显示为全大写。 熟悉的命令 ObjectScript 提供命令来执行熟悉的任务,如下所示: - 要定义变量,请使用 SET(如前所示)。 - 要删除变量,请使用 KILL,如前所示。 - 要控制逻辑流程,请使用以下命令: - IF、ELSEIF 和 ELSE 一起工作 - FOR - WHILE,可以单独使用 - DO 和 WHILE 可以一起使用 - QUIT,也可以返回一个值 #InterSystems IRIS for Health 0 0 0 85
文章 姚 鑫 · 二月 10, 2021 阅读大约需 1 分钟 第三十章 Caché 变量大全 $ZHOROLOG 变量 第三十章 Caché 变量大全 $ZHOROLOG 变量 包含自Caché启动以来经过的秒数。 大纲 $ZHOROLOG $ZH 描述 $ZHOROLOG包含自最近的Caché启动以来经过的秒数。这是一个计数,与时钟变化和日期范围无关。该值表示为浮点数,表示秒和秒的分数。小数位数与平台有关。 $ZHOROLOG在此小数部分截断尾随零。 不能使用SET命令修改此特殊变量。尝试这样做会导致<SYNTAX>错误。 注意:由于Windows操作系统的限制,使Windows系统进入休眠或待机模式可能会导致$ZHOROLOG返回不可预测的值。此问题不会影响$HOROLOG或$ZTIMESTAMP值。 示例 本示例输出当前的$ZHOROLOG值。 #Caché #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 85
文章 姚 鑫 · 九月 28, 2022 阅读大约需 3 分钟 第四十六章 功能跟踪器收集使用统计信息 [toc] 第四十六章 功能跟踪器收集使用统计信息 作为 不断努力改进其产品以满足客户需求的一部分, 在 IRIS® 数据平台中包含一个名为 Feature Tracker 的软件实用程序,该软件实用程序收集软件模块使用情况的统计数据。本主题介绍特征跟踪器。 为什么 InterSystems 收集统计数据 Feature Tracker 收集的统计数据记录软件模块是否存在并在给定的 IRIS 实例中使用。 Feature Tracker 每周通过 https 将此信息发送给 InterSystems。这些统计数据有助于 InterSystems 规划开发和支持。 收集的信息不包括任何应用程序数据。 #InterSystems IRIS for Health 2 0 0 84
文章 Nicky Zhu · 十月 10, 2024 阅读大约需 7 分钟 FHIRValidation - 用IRIS验证你自己的FHIR IG 本演示程序用于展示如何采用自定义FHIR profile来验证数据合规性。自定义FHIR实施指南基于FHIR R4版本开发,在本例中实现了对Organization资源的扩展并用于验证数据的合规性。 #Docker #FHIR #Git #GitHub #HL7 #JSON #REST API #InterSystems IRIS for Health Open Exchange app 1 0 0 84
文章 姚 鑫 · 八月 29, 2023 阅读大约需 4 分钟 第十三章 ObjectScript - 特殊变量 第十三章 ObjectScript - 特殊变量 特殊变量 一些特殊变量提供有关代码运行环境的信息。其中包括以下内容: - $HOROLOG,包含操作系统给出的当前进程的日期和时间。请参阅日期和时间值。 - $USERNAME 和 $ROLES,包含有关当前使用的用户名以及该用户所属角色的信息。 write "You are logged in as: ", $USERNAME, !, "And you belong to these roles: ",$ROLES $ZVERSION,其中包含标识当前运行的 IRIS 版本的字符串。 其他包括 $JOB、$ZTIMEZONE、$IO 和 $ZDEVICE。 #InterSystems IRIS for Health 0 0 0 84
文章 姚 鑫 · 九月 18, 2023 阅读大约需 2 分钟 第三十一章 Classes - 继承规则= 第三十一章 Classes - 继承规则 继承规则 与其他基于类的语言一样,可以通过继承组合多个类定义。 类定义可以扩展(或继承)多个其他类。这些类又可以扩展其他类。 请注意,类不能继承 Python 中定义的类(即 .py 文件中包含的类定义),反之亦然。 以下小节提供了中类继承的基本规则。 继承顺序 使用以下继承顺序规则: 默认情况下,如果在多个超类中定义了给定名称的类成员,则子类将从超类列表中最左边的类中获取定义。 如果类定义包含 Inheritance = right,则子类从超类列表中最右侧的类中获取定义。 由于历史原因,大多数类都包含 Inheritance = right。 主要的超类 任何扩展其他类的类都有一个主要超类。 无论类使用哪种继承顺序,主超类都是第一个,从左到右阅读。 对于任何类级编译器关键字,给定类使用其主超类中指定的值。 对于持久化类来说,主超类尤其重要。 #InterSystems IRIS for Health 1 0 0 84
文章 姚 鑫 · 六月 18, 2023 阅读大约需 6 分钟 第六十一章 镜像中断程序 - 计划故障转移到提升的 DR 异步 第六十一章 镜像中断程序 - 计划故障转移到提升的 DR 异步 计划故障转移到提升的 DR 异步 如果在镜像中包含一个或多个 DR 异步以提供灾难恢复功能,则最好通过计划的故障转移到每个 DR 异步来定期测试此功能。要执行此测试,或者当出于任何其他原因(例如包含故障转移成员的数据中心计划停电)而想要故障转移到 DR 异步时,请使用以下过程: 将 IRIS C 提升为故障转移成员;因为 IRIS A 可用,所以不会要求您选择故障转移伙伴。 IRIS C 成为备份, IRIS B(如果存在)降级为 DR 异步。 注意:如果镜像仅包含一个故障转移成员,则过程相同;不需要选择故障转移伙伴, IRIS C 成为备份,因此镜像现在有两个故障转移成员。 #InterSystems IRIS for Health 1 0 1 84
文章 姚 鑫 · 七月 15, 2023 阅读大约需 3 分钟 第五十九章 开发Productions - ObjectScript Productions - 从管理门户进行测试 第五十九章 开发Productions - ObjectScript Productions - 测试和调试Production - 从管理门户进行测试 从管理门户进行测试 可以使用管理门户在开发、测试和调试Production时执行多项任务: 能够查看和修改系统配置。 能够启动和停止Production。 能够查看队列及其内容;消息及其详细信息;适配器和参与者及其状态;业务流程及其状态;配置项的代码和图形表示。 能够查看、排序和有选择地清除事件日志条目。 能够暂停(并稍后重新发送)连接暂时被阻止的消息。 能够使用图形用户界面或通过输入 SQL SELECT 命令,按类别或消息内容过滤和搜索消息仓库中的特定消息。 能够使用图形用户界面直观地跟踪消息活动。 能够创建和查看统计报告。 对于开发人员来说,最有用的门户功能是不断收集运行时数据的监视服务、可用于向正在开发的产品发出模拟请求的测试服务以及记录业务主机发出的状态消息的事件日志。同时使用这些功能来生成测试数据并研究结果。 #InterSystems IRIS for Health 0 0 0 83
文章 Michael Lei · 一月 15, 2024 阅读大约需 2 分钟 FAQ 关于当前通用内存堆(gmheap)和最大可获得锁表(locksiz)大小 作为针对数据导入处理性能和错误(锁定表已满)的衡量标准,可能需要调整常规内存堆 (gmheap) 和锁定表大小 (locksiz) 参数。 事实上,您可以使用终端和管理门户来检查当前分配了多少通用内存堆。 ★终端用 // 一般メモリヒープサマリUSER> w $system .Config.SharedMemoryHeap.GetUsageSummary() 4992226 , 6029312 , 59441152 通用内存堆摘要以使用量、分配量和配置量(字节)的形式显示返回值。 #提示和技巧 #系统管理 #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 83
文章 姚 鑫 · 七月 21, 2023 阅读大约需 3 分钟 第六十五章 开发Productions - ObjectScript Productions - Production品及其零部件的生命周期 - Runtime 第六十五章 开发Productions - ObjectScript Productions - Production品及其零部件的生命周期 - Runtime Runtime 当Production运行时,业务服务会重复调用入站适配器的 OnTask() 方法。此 OnTask 循环由业务服务的 CallInterval 设置和 %WaitForNextCallInterval 属性控制,如下所示: #InterSystems IRIS for Health 0 0 0 83
文章 姚 鑫 · 九月 8, 2024 阅读大约需 3 分钟 第二十章 加密 SOAP 主体 第二十章 加密 SOAP 主体 本主题介绍如何加密 IRIS Web 服务和 Web 客户端发送的 SOAP 消息正文。 主题“加密安全标头元素”和“使用派生密钥令牌进行加密和签名”描述了如何加密安全标头元素以及加密 SOAP 主体的其他方法。 加密概述 IRIS 对 SOAP 消息加密的支持基于 WS-Security 1.1。反过来,WS-Security 遵循 XML 加密规范。根据后者规范,要加密 XML 文档: 生成一个对称密钥以供临时使用。 可以使用它来加密文档(或文档的选定部分)。 使用包含内容加密版本的 <EncryptedData> 元素替换文档的这些部分。 #InterSystems IRIS for Health 1 0 0 83
文章 姚 鑫 · 二月 15, 2021 阅读大约需 3 分钟 第三十五章 Caché 变量大全 $ZNSPACE 变量 第三十五章 Caché 变量大全 $ZNSPACE 变量 包含当前命名空间名称。 大纲 $ZNSPACE 描述 $ZNSPACE包含当前命名空间的名称。通过设置$ZNSPACE,可以更改当前名称空间。 要获取当前命名空间名称,请执行以下操作: DHC-APP>SET ns=$ZNSPACE DHC-APP>WRITE ns DHC-APP 还可以通过调用%SYSTEM.SYS类的Namespace()方法来获取当前命名空间的名称,如下所示: #Caché #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 82
文章 姚 鑫 · 七月 18, 2022 阅读大约需 6 分钟 第九章 使用嵌入式 Python (六) 第九章 使用嵌入式 Python (六) 异常处理 IRIS 异常处理程序可以处理 Python 异常并将它们无缝传递给 ObjectScript。在前面的 Python 库示例的基础上,如果尝试使用不存在的文件调用 canvas.drawImage(),并在 ObjectScript 中捕获异常,会看到以下内容: ##嵌入式 Python #InterSystems IRIS for Health 0 0 0 82
文章 姚 鑫 · 二月 18, 2021 阅读大约需 6 分钟 第四十章 Caché 变量大全 $ZREFERENCE 变量 第四十章 Caché 变量大全 $ZREFERENCE 变量 包含当前全局变量global引用。 大纲 $ZREFERENCE $ZR 描述 $ZREFERENCE包含上次全局引用的名称和下标。这就是所谓裸指针。 注意:最后一个全局引用是最近访问的全局节点。通常,这是对全局的最新显式引用。但是,某些命令可能在内部使用$ORDER函数遍历全局下标(ZWRITE命令就是一个例子),或者它们可能在内部引用其他全局脚本。发生这种情况时,$ZREFERENCE包含上次访问的全局节点,该节点可能不是为命令指定的全局节点。 #Caché #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 82
文章 姚 鑫 · 二月 19, 2021 阅读大约需 2 分钟 第四十一章 Caché 变量大全 $ZSTORAGE 变量 第四十一章 Caché 变量大全 $ZSTORAGE 变量 包含进程的最大可用内存。 大纲 $ZSTORAGE $ZS 描述 $ZSTORAGE包含JOB的进程私有内存的最大内存量(以KB为单位)。此内存可用于局部变量、堆栈和其他表。此内存限制不包括例程目标代码的空间。此内存根据需要分配给进程,例如在分配数组时。 一旦将此内存分配给进程,通常在该进程退出之前不会释放它。但是,当大量内存被使用(例如,大于32MB)然后被释放时,系统间IRIS会尝试在可能的情况下将释放的内存释放回操作系统。 还可以使用$ZSTORAGE设置最大内存大小。例如,以下语句将作业的最大进程专用内存设置为524288 KB: #Caché #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 82
文章 姚 鑫 · 八月 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 82