文章 姚 鑫 · 四月 8, 2023 阅读大约需 3 分钟 第二十二章 配置镜像 - 镜像配置指导原则 第二十二章 配置镜像 - 镜像配置指导原则 为了提供强大、经济的HA解决方案,镜像设计为可适应各种系统配置和体系结构。但是,建议遵循以下一般配置准则: #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 64
文章 姚 鑫 · 十二月 16, 2023 阅读大约需 1 分钟 第三十六章 XML 模式的高级选项 - 创建子类型的替换组 第三十六章 XML 模式的高级选项 - 创建子类型的替换组 创建子类型的替换组 XML 模式规范还允许定义替换组,这可以是创建选择的替代方法。语法有些不同。无需制作明确的集中类型列表,而是注释可能的替代项,如下所示: #InterSystems IRIS for Health 0 0 0 63
文章 姚 鑫 · 八月 31, 2023 阅读大约需 2 分钟 第十四章 ObjectScript - 系统函数 第十四章 ObjectScript - 系统函数 系统函数 本节重点介绍 ObjectScript 中一些最常用的系统函数。 这些函数的名称不区分大小写。 类库还提供了大量实用方法,可以像使用函数一样使用它们。 Value Choice 在给定一些输入的情况下,可以使用以下函数来选择一个值: - $CASE 将给定的测试表达式与一组比较值进行比较,然后返回与匹配的比较值关联的返回值。例如: #InterSystems IRIS for Health 0 0 0 62
文章 姚 鑫 · 七月 13, 2023 阅读大约需 3 分钟 第五十七章 开发Productions - ObjectScript Productions - 不常见的任务 - 以编程方式使用查找表 第五十七章 开发Productions - ObjectScript Productions - 不常见的任务 - 以编程方式使用查找表 IRIS 提供了名为 Lookup() 的实用函数,以便可以轻松地从业务规则或 DTL 数据转换中执行表查找。此功能仅在创建至少一个查找表并用适当的数据填充后才起作用。 有关定义查找表的信息,请参阅配置产品中的定义数据查找表。 如果需要比管理门户提供的更直接的查找表操作,请在类中使用 Ens.Util.LookupTable。此类公开查找表以通过对象或 SQL 进行访问。此外,它还提供类方法来清除表、将数据导出为 XML 以及从 XML 导入数据。 Ens.Util.LookupTable提供以下字符串属性: #InterSystems IRIS for Health 0 0 0 62
文章 姚 鑫 · 七月 14, 2023 阅读大约需 2 分钟 第五十八章 开发Productions - ObjectScript Productions - 测试和调试Production 第五十八章 开发Productions - ObjectScript Productions - 测试和调试Production 本主题介绍可用于测试和调试产品的工具。该信息对于故障排除和调整企业已在使用的Production软件也很有用。 纠正Production问题状态 如果Production暂停或出现问题,请阅读本节。 暂停Production 当Production在队列中的所有异步消息可以被处理之前停止时,就会发生暂停Production。如果不手动清除这些异步消息,它们会在Production开始备份时自动处理。如果希望处理消息,则在开始暂停Production之前不需要其他步骤。 #InterSystems IRIS for Health 0 0 0 62
文章 姚 鑫 · 八月 21, 2023 阅读大约需 3 分钟 第五章 ObjectScript 第五章 ObjectScript 方法和例程都可以用 ObjectScript 编写,但大多数现代代码都是使用方法编写的。方法包含在类中,这允许将类似的方法分组在一起,在类参考中自动生成文档,以及使用 IRIS 的面向对象功能。 这并不意味着routines 不重要。许多有用的系统实用程序都是作为例程编写的,并且在编译类时会生成例程。 示例类 下面显示了一个名为 User.DemoClass 的示例类,其中包含用 ObjectScript 编写的方法。此示例使我们有机会了解一些常见的 ObjectScript 命令、运算符和函数,并了解代码在方法内的组织方式。 #InterSystems IRIS for Health 0 0 0 62
公告 Michael Lei · 三月 19 重磅发布!!!InterSystems 宣布 InterSystems IRIS, InterSystems IRIS for Health 和 HealthShare Health Connect 2024.1 全面上市 InterSystems IRIS ®,InterSystems IRIS ® for Health TM和HealthShare ® Health Connect 2024.1版现已全面上市 (GA)。 发布亮点 在此版本中,您可以期待许多令人兴奋的更新,包括: #版本 #HealthShare #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 62
文章 姚 鑫 · 七月 12, 2023 阅读大约需 3 分钟 第五十六章 开发Productions - ObjectScript Productions - 不常见的任务 - 在适配器类中包含凭据 第五十六章 开发Productions - ObjectScript Productions - 不常见的任务 - 在适配器类中包含凭据 在适配器类中包含凭据 要在适配器类中包含生产凭证,请在类定义中执行以下操作: 包括名为 Credentials 的设置。 定义一个名为 CredentialsSet() 的方法,该方法使用 Credentials 设置的值作为键来查找 Credentials 表中的用户名和密码。然后实例化一个包含用户名和密码的凭据对象。 覆盖Production凭证 虽然Production凭证系统集中管理并将登录数据保留在源代码之外,但有时需要编写代码以从其他来源获取凭证。例如,代码可能会从 Web 表单或 cookie 中检索用户名和密码,然后将它们与 HTTP 出站适配器一起使用以连接到其他站点。 #InterSystems IRIS for Health 0 0 0 62
文章 姚 鑫 · 八月 18, 2023 阅读大约需 2 分钟 第二章 IRIS 编程简介 - 同时使用类和例程 第二章 IRIS 编程简介 - 同时使用类和例程 同时使用类和例程 在IRIS 中,可以使用例程中的类。例如,下面显示了例程的一部分,其中我们引用了 Sample.Employee类: #InterSystems IRIS for Health 0 0 0 61
文章 姚 鑫 · 十二月 23, 2023 阅读大约需 3 分钟 第三章 使用$ZF(-100)运行程序或系统命令 第三章 使用$ZF(-100)运行程序或系统命令 $ZF(-100)函数允许 IRIS 进程调用可执行程序或主机操作系统的命令。这是唯一可以在没有特殊的Callout共享库的情况下使用的$ZF函数。 $ZF(-100)的语法和功能概述。 程序执行-程序可以选择异步运行或在操作系统外壳中运行。 记录命令和重定向输出——可选设置可以记录命令或重定向I/O。 添加%System_Callout:USE特权—使用$ZF(-100)需要此特权。 注意:$ZF(-100)取代了已弃用的函数$ZF(-1)和$ZF(-2),在所有情况下都应优先使用。 #InterSystems IRIS for Health 0 0 0 61
文章 姚 鑫 · 二月 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 61
文章 姚 鑫 · 九月 28, 2022 阅读大约需 3 分钟 第四十六章 功能跟踪器收集使用统计信息 [toc] 第四十六章 功能跟踪器收集使用统计信息 作为 不断努力改进其产品以满足客户需求的一部分, 在 IRIS® 数据平台中包含一个名为 Feature Tracker 的软件实用程序,该软件实用程序收集软件模块使用情况的统计数据。本主题介绍特征跟踪器。 为什么 InterSystems 收集统计数据 Feature Tracker 收集的统计数据记录软件模块是否存在并在给定的 IRIS 实例中使用。 Feature Tracker 每周通过 https 将此信息发送给 InterSystems。这些统计数据有助于 InterSystems 规划开发和支持。 收集的信息不包括任何应用程序数据。 #InterSystems IRIS for Health 2 0 0 60
公告 jieliang liu · 五月 21, 2021 Java业务主机现在已经不再使用 随着InterSystems IRIS 2020.1和InterSystems IRIS for Health 2020.1中PEX的发布,客户有了比Java Business Host更好的方式来构建Java的产品。PEX为构建互操作性组件提供了一套完整的API,并有Java和.NET两种版本。 #Java #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 60
文章 姚 鑫 · 七月 6, 2023 阅读大约需 3 分钟 第五十章 开发Productions - ObjectScript Productions - 高效处理批量记录 第五十章 开发Productions - ObjectScript Productions - 高效处理批量记录 高效处理批量记录 RecordMap 功能一次导入一条记录,但如果正在导入或导出大量记录,则可以通过使用 RecordMap Batch 获得显着的效率提升。 RecordMap Batch 功能处理同类记录并一次处理一批中的所有记录。可以选择在批次之前加上一个标题记录,然后跟一个尾部记录。 要创建 RecordMap 批处理,需要实现一个继承自中的 %Persistent 和 EnsLib.RecordMap.Batch的类。 Batch 类包含处理解析和写出与特定批次关联的任何标头和尾部的方法。必须提供解析和编写标头的代码。对于简单的表头和表尾,可以使用类中的 EnsLib.RecordMap.SimpleBatch,它继承自 Batch 类,并提供处理简单表头和表尾的代码。如果需要处理更复杂的标头和尾数据,可以扩展这两个批处理实现中的任何一个。 #InterSystems IRIS for Health 0 0 0 60
文章 Michael Lei · 一月 15 阅读大约需 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 60
文章 Michael Lei · 三月 21 阅读大约需 2 分钟 IRIS 向量搜索 这是在 IRIS 中完全运行向量搜索演示的尝试。没有外部工具,您需要的只是终端/控制台和管理门户。特别感谢Alvin Ryanputra作为他的软件包iris-vector-search的基础灵感和测试数据的来源。我的软件包基于 IRIS 2024.1 版本,需要注意您的处理器功能。 我尝试用纯 ObjectScript 编写演示。仅描述向量的计算是在嵌入式Python中完成的计算 2247 个记录的 384 维向量需要时间。在我的 Docker 容器中,它正在运行 01:53:14 来完全生成它们。 ##嵌入式 Python #CSV #Docker #GitHub #ObjectScript #Python #Vector Search #InterSystems IRIS #InterSystems IRIS for Health Open Exchange app 1 1 0 60
文章 姚 鑫 · 七月 18, 2022 阅读大约需 6 分钟 第九章 使用嵌入式 Python (六) 第九章 使用嵌入式 Python (六) 异常处理 IRIS 异常处理程序可以处理 Python 异常并将它们无缝传递给 ObjectScript。在前面的 Python 库示例的基础上,如果尝试使用不存在的文件调用 canvas.drawImage(),并在 ObjectScript 中捕获异常,会看到以下内容: ##嵌入式 Python #InterSystems IRIS for Health 0 0 0 60
文章 姚 鑫 · 九月 3, 2023 阅读大约需 2 分钟 第十七章 ObjectScript - 使用宏和包含文件include file 第十七章 ObjectScript - 使用宏和包含文件 使用宏和包含文件 如前所述,可以定义宏并稍后在同一类或例程中使用它们。更常见的是,在包含文件中定义它们。 Macros ObjectScript 支持定义替换的宏。定义可以是一个值、整行代码或(使用 ##continue 指令)多行。 要定义宏,请使用#define 指令或其他预处理器指令。例如: #define macroname <definition> 要引用宏,请使用以下语法: $$$macroname 或者: $$$macroname(arguments) 使用宏来确保一致性。例如: #InterSystems IRIS for Health 0 0 0 59
文章 姚 鑫 · 八月 24, 2023 阅读大约需 2 分钟 第八章 ObjectScript - 变量的可用性和范围 第八章 ObjectScript - 变量的可用性和范围 变量的可用性和范围 ObjectScript 支持以下程序流程,(在大多数方面)与其他编程语言支持的程序流程类似: 用户可能从用户界面调用方法。 该方法执行一些语句,然后调用另一个方法。 该方法定义了局部变量 A、B 和 C。 变量 A、B 和 C 在此方法的范围内。它们对于该方法是私有的。 该方法还定义了Global ^D。 #InterSystems IRIS for Health 0 0 0 59
文章 Weiwei Gu · 九月 13, 2023 阅读大约需 1 分钟 去掉了 InstallFoundation 的方法 (IRIS 2023.2+ ) 我们最近发布了 IRIS 2023.2版本。 此版本从此类“HS.HC.Util.Installer”中删除了“InstallFoundation”。 这是一个没有记录在官方文档中的私有的方法,但它被社区广泛用来安装 FHIR 服务器。 所以如果你遇到这个错误:<METHOD DOES NOT EXIST> *InstallFoundation,HS.HC.Util.Installer 在构建我们自己的 FHIR 服务器的演示时,您可以通过替换此行来修复它: 把do ##class(HS.HC.Util.Installer).InstallFoundation (namespace) 替换成 Do ##class(HS.Util.Installer.Foundation).Install(namespace) ` #FHIR #InterSystems IRIS for Health 0 0 0 59
文章 jieliang liu · 四月 17 阅读大约需 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 58
文章 姚 鑫 · 十二月 26, 2023 阅读大约需 4 分钟 第六章 创建Callout Library 第六章 创建Callout Library Callout library 库是一个共享库,其中包含自定义Callout函数和允许 IRIS使用它们的启用代码。本章描述如何创建Callout库并在运行时访问它。 - Callout library 简介-描述如何创建和访问Callout library 。 - ZFEntry链接选项 - 提供了决定如何传递函数参数的链接选项的详细描述。 - 兼容语言和编译器-描述如何使用C以外的语言创建Callout库。 - Callout Library运行和运行函数-描述两个可选函数,可将其设置为在加载或卸载标注库时自动运行。 - 故障排除和错误处理-列出了一些应该避免的编码实践,并描述了处理UNIX信号处理错误的特殊函数。 #InterSystems IRIS for Health 0 0 0 58
文章 姚 鑫 · 十二月 14, 2023 阅读大约需 2 分钟 第三十五章 XML 模式的高级选项 - 创建子类型的选择列表 第三十五章 XML 模式的高级选项 - 创建子类型的选择列表 创建子类型的选择列表 根据 XML Schema 规范,复杂类型可以由类型(特别是相关类型)的选择列表组成。假设我们希望架构允许使用 <Person>, <Patient>, or <Employee> 元素,而不是 <Person> 元素。要定义这样的架构,我们会将 Person 属性的 XMLTYPECONSTRAINT 属性参数设置为等于“CHOICE”,如下所示: #InterSystems IRIS for Health 0 0 0 58
InterSystems 官方 Claire Zheng · 四月 24 InterSystems IRIS、IRIS for Health和HealthShare HealthConnect的维护版本2022.1.5 & 2023.1.4现已发布 InterSystems IRIS、IRIS for Health和HealthShare HealthConnect的维护版本2022.1.5 & 2023.1.4现已发布 #版本 #Health Connect #InterSystems IRIS #InterSystems IRIS for Health #InterSystems 官方 0 0 0 56
文章 姚 鑫 · 八月 25, 2023 阅读大约需 2 分钟 第九章 ObjectScript - 多维数组 第九章 ObjectScript - 多维数组 多维数组 在 ObjectScript 中,任何变量都可以是多维数组(也称为数组)。多维数组通常用于保存一组以某种方式相关的值。 ObjectScript 提供的命令和函数可以方便、快速地访问值。 可能会也可能不会直接使用多维数组,具体取决于使用的系统类和自己的偏好。当需要一个用于存储相关值集的容器时,IRIS 提供了一种基于类的替代方案。请参阅集合类。 Basics 多维数组由任意数量的节点组成,由下标定义。以下示例设置数组的几个节点,然后打印数组的内容: #InterSystems IRIS for Health 0 0 0 56
文章 Claire Zheng · 六月 12 阅读大约需 7 分钟 CHIMA访谈:青岛大学附属医院医院信息系统升级记 “一根筷子易折断,十根筷子抱成团”,这句话在青岛大学附属医院(以下简称“青大附院”)的医院信息系统升级换代中得到了淋漓尽致的体现。 #业务服务 #业务运营 #数据库 #最佳实践 #InterSystems IRIS for Health 1 0 0 56
文章 Louis Lu · 四月 23 阅读大约需 2 分钟 BPL 中动态设置 <call>的目标 当我们在设计一个需要重复使用的BP时候,往往需要开发一个可配置<call>的对象的组件,我们将call的target 设置为 @process.TargetConfigName 即可实现。 下面是完整代码: #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 55
文章 姚 鑫 · 八月 23, 2023 阅读大约需 3 分钟 第七章 ObjectScript - Variables 第七章 ObjectScript - Variables Variables 在 ObjectScript 中,有两种变量,按它们保存数据的方式分类: 局部变量可以具有公共或私有范围。 局部变量,在内存中保存数据。 局部变量可以具有公共或私有范围。 Global,在数据库中保存数据。这些也称为全局变量。与Global的所有交互都会立即影响数据库。例如,当设置Global值时,该更改会立即影响存储的内容;没有单独的步骤来存储值。同样,当删除Global时,数据会立即从数据库中删除。 变量名称 变量的命名遵循以下规则: #InterSystems IRIS for Health 0 0 0 55
文章 姚 鑫 · 十二月 25, 2023 阅读大约需 2 分钟 第五章 使用$ZF(-100)运行程序或系统命令 - 增加权限 第五章 使用$ZF(-100)运行程序或系统命令 - 增加权限 增加%System_Callout:USE权限 $ZF(-100)需要%System_Callout:USE权限。如果安全设置高于最小值,则可能会禁用此特权。下面的过程描述了如何在%Developer角色中启用它: #InterSystems IRIS for Health 0 0 0 54
文章 姚 鑫 · 一月 4 阅读大约需 2 分钟 第十五章 创建Callout Library - 处理 UNIX 信号处理错误 第十五章 创建Callout Library - 处理 UNIX 信号处理错误 处理 UNIX 信号处理错误 在 UNIX 及相关操作系统下运行时,如果进程收到信号,某些系统调用可能会失败,最常见的是打开、读取、写入、关闭、ioctl 和暂停。如果函数使用任何这些系统调用,代码必须能够区分真正的错误、Ctrl-C 和应重新启动的调用。 以下函数允许检查异步事件并在 $ZF 中设置新的警报处理程序。函数声明包含在 iris-cdzf.h 中: sigrtclr() int sigrtclr(); — 清除重试标志。应在使用 sigrtchk() 之前调用一次。 dzfalarm() int dzfalarm(); — 建立新的 `SIGALRM 处理程序。 进入 $ZF 时,会自动保存先前的处理程序。退出时会自动恢复。用户程序不应改变任何其他信号的处理。 #InterSystems IRIS for Health 0 0 0 54