第113章 属性关键字 - SqlComputeOnChange

此关键字控制何时重新计算属性。仅适用于触发的计算属性。

用法

要指定何时重新计算属性,请使用以下语法:

Property name As classname [ SqlComputed, SqlComputeCode=sqlcomputecode, SqlComputeOnChange = propertynames ];

其中sqlcomputecodeSqlComputeCode中描述,propertyname是单个属性名或以逗号分隔的属性名列表。该值还可以包括值%%INSERT%%UPDATE

请注意,必须使用实际的属性名,而不是SqlFieldname给出的值。

0 0
0 92
InterSystems 开发者社区汇聚了 17,854 位出色的开发者
InterSystems IRIS 程序员可以在这里学习、分享、了解最新动态、成长,以及收获快乐!
文章
· 七月 4, 2022 阅读大约需 11 分钟
IRIS/HealthConnect 高可用机制

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

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

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

0 0
0 92
文章
· 六月 17, 2021 阅读大约需 5 分钟
第十章 XML元素和属性

第十章 XML元素和属性

检查必需的元素和属性

默认情况下,next()方法不检查是否存在与标记为必需的属性相对应的元素和属性。要使读取器检查此类元素和属性是否存在,请在调用Next()之前将读取器的CheckRequired属性设置为1。出于兼容性原因,此属性的默认值为0。

如果将CheckRequired设置为1,并且调用next(),而导入的XML缺少必需的元素或属性,则next()方法会将sc参数设置为错误代码。例如:

0 0
0 92
文章
· 六月 19, 2021 阅读大约需 5 分钟
第十二章 XML其他示例

第十二章 XML其他示例

其他示例

Flexible Reader类

/// desc:灵活读取类
ClassMethod Read(mydir, myfile, class, element)
{
    set reader=##class(%XML.Reader).%New()
    if $extract(mydir,$length(mydir))'="/" {set mydir=mydir_"/"}
    set file=mydir_myfile
    set status=reader.OpenFile(file)
    if $$$ISERR(status) {do $System.Status.DisplayError(status)}

    do reader.Correlate(element,class)

    while reader.Next(.object,.status)
    {
        if $$$ISERR(status) {do $System.Status.DisplayError(status)}
        set status=object.%Save()
0 0
0 92
文章
· 八月 10, 2023 阅读大约需 2 分钟
如何比较两个数据库中的多个Global和Routines

InterSystems 常见问题解答

※如果您想比较使用Mirror、Shadow或其他机制复制的数据库,请使用此方法。

您可以使用 DATACHECK 实用程序来比较Global。请参阅下面的文档。
DataCheck 概述 [IRIS]

***

Routines比较使用系统例程 %RCMP 或管理门户。

以下是如何在管理门户中使用它。

0 0
0 92
文章
· 七月 27, 2021 阅读大约需 5 分钟
类关键字PropertyClass,ServerOnly,Sharded,SoapBindingStyle

第二十九章 类关键字 - PropertyClass

向该类添加属性参数。

用法

要向该类添加属性参数,请使用以下语法:

Class PropClass.MyClass Extends %RegisteredObject [ PropertyClass = PropClass.MyPropertyClass ] { //class members }

其中·propertyclasslist·是下列之一:

[ PropertyClass = PropClass.MyPropertyClass ]
  • 用逗号分隔的类名列表,用括号括起来。

详情

如果需要添加自定义属性参数,请执行以下操作:

0 0
0 92

注意:下面内存设置数值仅限参考,具体内存数值的设置是否合适,依赖于更多实际使用情况决定。

主要需要设置下面几个内存相关配置:

(下面比例适用于服务器仅运行单实例InterSystems IRIS)
数据库缓存Database cache:
建议小于64G内存设置总内存50%,大于等于64G内存设置70%总内存
程序缓存routine cache:
建议设置1023MB
gmheap:
建议设置1048576KB(1024MB)
LockSize:
建议最少设置134217728 Bytes (128MB),如果在系统日志中提示locksize相关错误或警报,应相应增加。

1 0
0 92

第三十九章 配置镜像 - 配置 ISCAgent - 在 UNIX Linux 和 macOS 系统上为非根实例启动 ISCAgent

UNIX®/Linux 和 macOS 系统上为非根实例启动 ISCAgent

尽管 IRIS 通常以根用户身份安装,但在 UNIX®/LinuxmacOS 系统上,实例可能会被其他用户安装和运行。

非根实例的 ISCAgent 由安装用户在后台运行 ISCAgentUser 脚本启动,该脚本位于 IRISSYS 环境变量定义的目录中,例如:

0 0
0 92
文章
· 七月 19, 2023 阅读大约需 8 分钟
单机模式下 EMPI 的安装和适配 - FHIR之配置篇

在之前的文章中,我们已经了解了如何配置和自定义我们的 EMPI,我们已经了解了如何通过 HL7 消息传递将新患者纳入我们的系统中,但当然,并不是所有的东西都是 HL7 v.2!我们如何配置 EMPI 实例以使用 FHIR 消息传递?

什么是FHIR?

对于那些不太熟悉 FHIR 这个术语的人,只需指出它们是Fast Healthcare Interoperability Resource的首字母缩写即可。 FHIR是HL7制定的医疗保健互操作性标准,基于JSON格式和REST通信,建立了一系列不同类型信息(患者数据、医院中心、诊断、医疗预约......)的“资源”。您可以在他们的官方页面上查看所有这些资源

0 0
0 92

我在 InterSystems 工作了 35 年,期间见证了许多客户与我们共同成长。我们热忱地帮助客户取得成功——无论他们衡量成功的标准是什么——而成功的基石就是我们提供的技术。我们的名字现在通常与我们的 InterSystems IRIS 数据平台联系在一起,因为它实际上是我们经过验证的下一代数据管理软件。

0 0
0 91

IRIS Interoperability互操作性/HealthConnect(前身是Ensemble)有许多内置的适配器。但是没有一个接收邮件的服务或适配器。我洗的了一个电子邮件服务,通过SMTP接收邮件,这些邮件可以被传递到电子邮件操作。

现在我想对一个使用电子邮件操作向外部邮件服务器发送邮件的Production进行负载测试。邮件服务器团队不希望我向他们发送成千上万的信息。

我创建了iris-mail应用程序来替代邮件服务器。我更新了电子邮件操作中的服务器和端口设置。外发的邮件被发送到替代的邮件服务器,我能够计算出iris-mail中收到的邮件数量,并将其与邮件操作发送的邮件数量进行比较。

应用程序的源代码:https://openexchange.intersystems.com/package/iris-mail

0 0
0 91
文章
· 六月 26, 2021 阅读大约需 6 分钟
第十九章 使用%XML.TextReader

第十九章 使用%XML.TextReader

%XML.TextReader类提供了一种简单、容易的方法来读取可能直接映射到InterSystems IRIS对象,也可能不直接映射到InterSystems IRIS对象的任意XML文档。具体地说,该类提供了导航格式良好的XML文档并查看其中信息(元素、属性、注释、名称空间URI等)的方法。该类还基于DTDXML架构提供完整的文档验证。但是,与%XML.Reader不同的是,%XML.TextReader不提供返回DOM的方法。如果需要DOM,请参阅前面的“将XML导入对象”一章。

注意:使用的任何XML文档的XML声明都应该指明该文档的字符编码,并且文档应该按照声明的方式进行编码。如果未声明字符编码,InterSystems IRIS将使用前面的“输入和输出的字符编码”中描述的默认值。如果这些默认值不正确,请修改XML声明,使其指定实际使用的字符集。

0 0
0 91
文章
· 六月 28, 2021 阅读大约需 6 分钟
第二十一章 使用%XML.TextReader 导航文档

第二十一章 使用%XML.TextReader 导航文档

导航文档

要在文档中导航,请使用文本阅读器的以下方法:Read()ReadStartElement()MoveToAttributeIndex()MoveToAttributeName()MoveToElement()MoveToContent()Rewind()

导航到下一个节点

要移动到文档中的下一个节点,请使用read()方法。Read()方法返回TRUE值,直到没有更多节点可读为止(即,直到到达文档末尾)。前面的示例在如下所示的循环中使用了此方法:

0 0
0 91
文章
· 八月 31, 2023 阅读大约需 1 分钟
常见问题--如何根据ID重建索引

InterSystems 常见问题解答

通过在持久类(=table)定义中提供的%BuildIndices() 方法的参数中指定要重建索引的 ID 的开始值和结束值,您可以仅重建该范围内的索引。

例如,要仅针对 ID=10 到 20 重建 Sample.Person 类中的 NameIDX 索引和 ZipCode 索引,请执行以下代码(ID 范围在第 5 个和第 6 个参数中指定)。

0 0
0 91

InterSystemsIRIS® 数据平台在性能、分析/搜索和事务等标准中获得最高分

转载自Forester 报告:

InterSystems是一个高性能的数据平台,具有强大的支持和可靠性。InterSystems的IRIS数据平台支持关系型、对象型、文档型、键值型、立方体和多维数组,但它没有原生的图形功能。该平台不需要整合多种技术栈,从而减少了代码、系统资源和维护。客户用它来支持客户分析、物联网、支持AI/ML的应用程序、风险分析和垂直特定的用例,如医疗保健应用程序和洞察力。InterSystems的愿景侧重于一个统一的平台,以支持各种应用和洞察力。该解决方案在性能、分析、搜索和交易方面得分很高。参考客户对InterSystems很满意;一个客户说:"他们的客户支持总是超级好。"另一个客户说他们 "在一个关键任务的应用中使用了10多年,对性能和功能以及可靠性总体上很满意。"

0 0
0 91
//迭代取值
IRISIterator subscriptIter = irisNative.getIRISIterator("^liubo.clazz.personD");
System.out.println("================迭代开始===================");
while (subscriptIter.hasNext()) {
    String subscript = subscriptIter.next();
    //此处怎么获取此节点的字符串进行解析呢,另外java可以直接访问ensemble的global么

    System.out.println(node);

}
0 3
0 91
文章
· 二月 4, 2021 阅读大约需 5 分钟
第二十四章 Caché 变量大全 $ZA 变量

# <center> 第二十四章 Caché 变量大全 $ZA 变量

包含当前设备上最后一次读取的状态。

# 大纲

```java
$ZA
```

# 描述

`$ZA`包含当前设备上最后一次读取的状态。

不能使用`SET`命令修改此特殊变量。尝试这样做会导致`<SYNTAX>`错误。

# 注意

## `$ZA`,带终端I / O

`$ZA`被实现为一系列位标志,每个位表示一条特定的信息。下表显示了可能的值、它们的含义,以及如何使用模(`#`)和整数除(`\`)运算符测试它们:

0 0
0 90
文章
· 三月 25, 2021 阅读大约需 7 分钟
为什么 COVID-19 对机器学习也有危险? (Part II)

上一部分,现在要利用 IntegratedML VALIDATION MODEL 语句提供信息以监视您的 ML 模型。 您可以在此处观看实际运作。

此处所示代码衍生自 InterSystems IntegragedML 模板IRIS 文档提供的示例,我主要是把代码混合了起来。 这是一个简单的示例,目的是为进一步讨论和未来工作提供一个起点。

0 0
0 90
文章
· 六月 18, 2023 阅读大约需 3 分钟
医疗行业的未来--数据与人的融合

在数字化时代,数据的重要性无可置疑。数据作为新型生产要素,不仅在宏观政策层面得到党和政府的大力推动,也是医院高质量发展的关键和改变医疗行业的驱动力。随着医疗信息化的迅猛发展,我们正迈向一个数据随处可及、人人可用易用的医疗信息化时代。这一时代将数据与人的需求相结合,致力于让数据能“主动”找到需要他们的医护人员和患者,每一个行业从业者,都应致力于为医护人员和患者提供简单易用的软件解决方案,减少工作量,提高效率,推动医疗行业的进步。

数据与人的融合是实现医疗行业数字化转型的核心。当然,医疗数据的收集、存储和管理对于提供高质量的医疗服务至关重要。然而,仅仅有大量的数据并不足够,我们需要将数据与人的需求紧密结合起来。这意味着我们应该让更多的数据关联起来,并且能服务于更多的人群,让患者能够随时随地访问他们的电子病历,让医生和科研人员也能及时有效地获取病人在医院围墙内外进行治疗和健康管理的数据,并且以直观易懂的方式呈现给医护人员和患者,使他们能够快速、准确地获取所需的信息。数据的融合还包括将不同来源的数据整合起来,为医护人员提供全面、完整的视图,同时基于医疗诊断的规则,不管是通过CDSS的形式,还是通过ChatBot(聊天机器人),帮助他们做出更好的决策。

1 0
0 90

第三十一章 配置镜像 - 删除镜像成员时删除镜像数据库属性

删除镜像成员时删除镜像数据库属性

当从镜像中删除成员时,始终可以选择从属于该镜像的镜像数据库中删除镜像属性。后果如下:

  • 如果保留镜像属性并稍后将 IRIS 实例恢复到镜像,数据库将自动添加到镜像,但必须先激活它们,然后才能赶上并同步(请参阅激活和赶上镜像数据库)。

但是,如果保留镜像属性,则除非先执行以下操作之一,否则无法删除该数据库:

将成员恢复到从中删除它的同一个镜像。 (如果该成员是主故障转移成员,这不是一个选项,因为镜像不再存在。)然后可以从镜像中删除一个或多个数据库(请参阅从镜像中删除镜像数据库)并在以下情况下删除它们你希望。

  • 使用 ^MIRROR 例程的删除一个或多个镜像数据库选项(请参阅使用 ^MIRROR 例程)从一个或多个数据库中删除镜像属性,然后根据需要删除它们。

0 0
0 90

🏆InterSystems开发者社区中文版第二届技术征文大赛🏆(点击链接进入参赛页面,浏览所有参赛文章)获奖名单已公布!

11月24日19:00-20:00,InterSystems开发者社区将举办“InterSystems第二届技术征文大赛线上分享会”,邀请参赛作者进行作品分享&点评、探讨热门话题,同期还将送出多份幸运奖品,欢迎参会!

0 0
0 90