文章 姚 鑫 · 十一月 30, 2021 阅读大约需 1 分钟 第一章 SQL谓词的概述(一) 第一章 SQL谓词的概述(一) 描述计算结果为真或假的逻辑条件。 使用谓词 谓词是一个条件表达式,其计算结果为布尔值(true或false)。 谓词可以如下使用: #SQL #Caché 0 0 0 88
文章 姚 鑫 · 十一月 6, 2021 阅读大约需 4 分钟 第六十八章 SQL命令 SAVEPOINT 第六十八章 SQL命令 SAVEPOINT 在事务中标记一个点。 大纲 SAVEPOINT pointname 参数 pointname - 保存点的名称,指定为标识符。 描述 SAVEPOINT语句标记事务中的一个点。建立保存点使能够执行事务回滚到保存点,撤消在此期间完成的所有工作并释放在此期间获得的所有锁。在长期运行的事务或具有内部控制结构的事务中,通常希望能够回滚事务的一部分,而不撤消在事务期间提交的所有工作。 #SQL #Caché 0 0 0 88
文章 姚 鑫 · 九月 4, 2021 阅读大约需 9 分钟 第六章 SQL命令 CREATE INDEX(一) 第六章 SQL命令 CREATE INDEX(一) 为表创建索引。 #SQL #Caché 0 0 0 88
文章 Claire Zheng · 九月 2, 2021 Caché从零基础到精通-第15讲 间接寻址 //player.bilibili.com/player.html?aid=674371552&bvid=BV1AU4y1H7Wc&cid=374521031&page=1[这是一个嵌入式链接,但由于您拒绝了访问嵌入式内容所需的 Cookie,您无法直接在网站上进行查看。要查看嵌入式内容,您需要在 Cookie 设置中接受所有 Cookie。] #视频 #Caché 0 0 0 88
文章 姚 鑫 · 八月 26, 2021 阅读大约需 2 分钟 Storage关键字IdFunction,IdLocation,IndexLocation,SqlRowIdName 第149章 Storage关键字 - IdFunction 指定使用默认存储为持久类分配新ID值的系统函数。 大纲 <IdFunction>increment</IdFunction> 值 这个元素的值可以是increment(使用$increment函数)或sequence(使用$sequence函数)。 描述 如果持久化类不使用IdKey来确定对象ID值,则该元素允许指定用于分配ID值的函数($increment函数或$sequence函数)。 如果类使用$increment函数,则通过对<IdLocation>元素中定义的全局位置中存储的值进行递增来创建新的id。 #Caché 0 0 0 88
文章 姚 鑫 · 六月 23, 2021 阅读大约需 4 分钟 第十六章 创建或编辑DOM 第十六章 创建或编辑DOM 创建或编辑DOM 要创建DOM或修改现有DOM,请使用%XML.Document的以下方法在: CreateDocument() classmethod CreateDocument(localName As %String, namespace As %String) as %XML.Document 在仅包含根元素的返回%XML.Document新实例。 AppendCharacter() method AppendCharacter(text As %String) 将新的字符数据节点追加到此元素节点的子节点列表中。当前节点指针不变;此节点仍然是追加的子节点的父节点。 #Caché 0 0 0 88
公告 jieliang liu · 二月 26, 2021 2020 年最佳 Open Exchange 应用程序及开发者 大家好! 请查看 2020 年度 Open Exchange 摘要,了解最佳应用程序及其开发者! 欢迎: #Open Exchange 0 0 0 88
文章 Hao Ma · 十月 28, 2024 阅读大约需 1 分钟 安装IRIS docker container - 索引 我在3年前写过同样内容的文章。随着IRIS版本的更新,安装的细节有了些变化,而且,尤其是2024年以后的版本不再使用PWS(Private Web Server), 安装最新版本的IRIS通常同时要安装一个外部的Web服务器,Apache或者nginx。 另外, 大家对自动部署的需要越来越多,因此我也会在下面的内容里面包括自动部署,配置iris, 安装软件等等内容。希望给各位一个基本完整的介绍。 内容列表如下: 基础篇 IRIS images的下载和docker run apache-webgateway container到iris的连接 nginx-webgateway container到iris的连接 iris-main和在container外保存iris数据 配置iris的新方法:CPF merge ... 随时更新 #新手 #部署 #InterSystems IRIS 1 0 0 87
文章 Jingwei Wang · 六月 23, 2024 阅读大约需 8 分钟 用不到150 行代码创建 IRIS 功能齐全的现代后端应用程序 低代码挑战 想象一下那个场景。您正在 Widgets Direct 愉快地工作,这是互联网上首屈一指的小部件和小部件配件零售商。您的老板有一些毁灭性的消息,一些客户可能对他们的小部件不太满意,我们需要一个帮助台应用程序来跟踪这些投诉。为了让事情变得有趣,他希望代码占用非常小,并挑战您使用 InterSystems IRIS 以少于 150 行代码交付应用程序。这可能吗? 免责声明:本文记录了一个非常基本的应用程序的构建,为了简洁起见,省略了安全性和错误处理等细节。该应用程序仅供参考,不得用于任何生产应用。本文使用IRIS 2023.1作为数据平台,并非所描述的所有功能在早期版本中都可用 第 1 步 - 定义数据模型 我们首先定义一个新的干净的命名空间 - 带有代码和数据数据库。虽然所有内容都可以位于 1 个数据库中,但将它们拆分以便于数据刷新。 #Cube #JSON #ObjectScript #REST API #SQL #互操作性 #分析 #数据导入和导出 #管理门户 #InterSystems IRIS 0 0 0 87
文章 Hao Ma · 三月 21, 2024 阅读大约需 1 分钟 IRIS/Caché SQL优化经验分享 - Bitmap Extent Bitmap索引是指对某个,或者某几个字段建立的bit map(位图映射)。如果是对整个表的记录,也就是表的%ID做位图映射,得到的特殊的bitmap索引在IRIS/Caché里被称为Bitmap Extent。 建立Bitmap Extent索引的目的就是加快COUNT(*)的执行。提高了多少呢? 下面两个显示的是最简单的全表查询花费的时间: 不使用Bitmap Extent : 1.3810s 使用Bitmap Extent: 0.0038 相差有几百倍。 #SQL #新手 #InterSystems IRIS 0 0 0 87
文章 姚 鑫 · 七月 5, 2023 阅读大约需 3 分钟 第四十九章 开发Productions - ObjectScript Productions - 使用复杂记录映射器 - 复杂的记录映射类结构 第四十九章 开发Productions - ObjectScript Productions - 使用复杂记录映射器 - 复杂的记录映射类结构 复杂的记录映射类结构 有两个类以类似于描述记录映射的两个类的方式描述复杂的记录映射。描述复杂记录映射的两个类是: 复杂记录映射,描述复杂记录的外部结构并实现复杂记录解析器和编写器。 生成的复杂记录类定义了包含数据的对象的结构。该对象允许在数据转换和路由规则条件中引用数据。 一个复杂的记录映射业务服务读取并解析传入的数据并创建一条消息,该消息是生成的记录类的一个实例。业务流程可以读取、修改或生成生成的复杂记录类的实例。最后,复杂记录映射业务操作使用实例中的数据,使用复杂记录映射作为格式化模板写入输出数据。复杂记录映射类和生成的复杂记录类都具有描述数据的层次结构。复杂记录映射类和生成的复杂记录类具有并行结构。这与 RecordMap 类不同,其中生成的记录类可以具有不同的层次结构。 #InterSystems IRIS for Health 0 0 0 87
文章 姚 鑫 · 六月 17, 2023 阅读大约需 4 分钟 第六十章 镜像中断程序 - 使用主 ISCAgent 的日志数据进行 DR 提升和手动故障转移 第六十章 镜像中断程序 - 使用主 ISCAgent 的日志数据进行 DR 提升和手动故障转移 使用主 ISCAgent 的日志数据进行 DR 提升和手动故障转移 如果 IRIS A 的主机系统正在运行,但 IRIS 实例没有且无法重新启动,您可以使用以下过程在通过升级后使用来自 IRIS A 的最新日志数据更新升级的 IRIS C IRIS A 的 ISCAgent。 #InterSystems IRIS for Health 1 0 0 87
文章 姚 鑫 · 一月 14, 2023 阅读大约需 3 分钟 第四十五章 使用 ^SystemPerformance 监视性能 - Abort ^SystemPerformance 第四十五章 使用 ^SystemPerformance 监视性能 - Abort ^SystemPerformance Abort ^SystemPerformance 如果要停止正在运行的配置文件,可以中止数据收集,并可选择使用 $$Stop^SystemPerformance(runid) 命令删除配置文件的所有 .log 文件。例如,要中止由 runid20111220_1327_12hours 标识的报告的数据收集并删除到目前为止写入的所有 .log 文件,请在终端的 %SYS 命名空间中输入以下命令: do Stop^SystemPerformance("20111220_1327_12hours") 要在不删除日志文件的情况下停止作业并从这些日志文件生成 HTML 性能报告,请输入: #Caché 0 0 0 87
文章 姚 鑫 · 八月 5, 2022 阅读大约需 3 分钟 第十八章 源代码文件 REST API 教程(三) 第十八章 源代码文件 REST API 教程(三) 编译文件 Compile 方法编译传入 JSON 数组中名称指定的源代码文件。例如,要编译 xyz.mac,请发布以下内容: http://localhost:52773/api/atelier/v1/INVENTORY/action/compile 使用以下 JSON 消息: ["xyz.mac"] 该方法返回: #Caché 0 0 0 87
文章 姚 鑫 · 七月 22, 2022 阅读大约需 3 分钟 第四章 使用 %REST.API 类创建 REST 服务 第四章 使用 %REST.API 类创建 REST 服务 本章介绍如何使用 %REST.API 类来创建、更新和删除 REST 服务。 使用 %REST.API 类创建或更新 REST 服务 创建 REST 服务的推荐方法是从 REST 服务的 OpenAPI 2.0 规范开始,并使用它来生成 REST 服务类。要使用 %REST.API 类执行此操作: #REST API #Caché 0 0 0 87
文章 Michael Lei · 五月 15, 2022 阅读大约需 1 分钟 Debug最佳实践: 使用锁来做断点 Hi, 社区! 想和大家分享一下俄罗斯论坛上的一个Debug方法。 假设我想对应用程序进行Debug,我想让它在某一行停止执行。 在代码中加入这一行: l +d,-d 当我想在这一行中开始调试时,我在终端中屏蔽了d USER> l +d 执行该应用程序。 应用程序在这一行停止,让我用Studio调试器连接到它。 为了释放锁,我在终端做了以下工作 USER> l -d 还有其他好的Debug 建议吗? #ObjectScript #调试 #Caché 0 0 0 87
文章 姚 鑫 · 二月 27, 2022 阅读大约需 2 分钟 第六十七章 SQL函数 ISNUMERIC 第六十七章 SQL函数 ISNUMERIC 测试有效数字的数值函数。 大纲 ISNUMERIC(check-expression) 参数 check-expression - 要计算的表达式。 ISNUMERIC返回SMALLINT数据类型。 #SQL #Caché 0 0 0 87
文章 姚 鑫 · 二月 10, 2022 阅读大约需 2 分钟 第五十章 SQL函数 DAYOFWEEK 第五十章 SQL函数 DAYOFWEEK Date函数,它返回日期表达式的整型日期。 参数 date-expression - 日期表达式,它是列名、另一个标量函数的结果或日期或时间戳文字。 描述 DAYOFYEAR返回一个介于1到366之间的整数,该整数对应于给定日期表达式的一年中的第几天。DAYOFYAR计算闰年日期。 根据日期整数、$HOROLOG或$ZTIMESTAMP值、ODBC格式日期字符串或时间戳计算一年中的日期。 日期表达式时间戳可以是数据类型%Library.PosiTime(编码的64位有符号整数)或数据类型%Library.TimeStamp(yyyy-mm-dd hh:mm:ss.fff)。 时间戳的时间部分不计算,可以省略。 #SQL #Caché 0 0 0 87
公告 Claire Zheng · 十一月 18, 2021 召唤创新者们!快来参加2021年欧洲医疗编程马拉松吧! 亲爱的社区开发者们,大家好! 我们欢迎您来参加 2021年欧洲医疗编程马拉松 ,这一赛事时间为2021年11月19日-21日,免费参赛,线上赛道(On-line Track)的申请截止日期延长至11月15日。 我们将有一个InterSystems的挑战:“用FHIR创新”。InterSystems赛道的奖金设置如下: 🥇第一名: 1500 EUR🥈第二名: 1000 EUR🥉第三名: 500 EUR我们为所有参加InterSystems挑战的人准备了奖品!参考下图,了解我们的挑战细节:)你愿意参加吗?请在下面的投票中告诉我们! #FHIR #活动 #竞赛 #InterSystems IRIS #InterSystems IRIS for Health #其他 0 0 0 87
文章 姚 鑫 · 十月 19, 2021 阅读大约需 5 分钟 第五十章 SQL命令 HAVING(一) 第五十章 SQL命令 HAVING(一) 对一组数据值指定一个或多个限制性条件的SELECT子句。 大纲 SELECT field FROM table GROUP BY field HAVING condition-expression SELECT aggregatefunc(field %AFTERHAVING) FROM table [GROUP BY field] HAVING condition-expression 参数 condition-expression - 由一个或多个布尔谓词组成的表达式,用于控制要检索哪些数据值。 描述 可选的HAVING子句出现在FROM子句、可选的WHERE和GROUP BY子句之后,可选的ORDER BY子句之前。 #SQL #Caché 0 0 0 87
文章 姚 鑫 · 九月 29, 2021 阅读大约需 1 分钟 第三十章 SQL命令 DROP AGGREGATE 第三十章 SQL命令 DROP AGGREGATE 删除用户定义的聚合函数。 大纲 DROP AGGREGATE name 参数 name - 要删除的用户定义聚合函数的名称。名称可以是限定的(schema.aggname),也可以是非限定的(aggname)。非限定名称采用默认架构名称。 描述 DROP Aggregate命令删除用户定义的聚合函数(UDAF)。使用CREATE Aggregate命令创建用户定义的聚合函数。 如果尝试删除不存在的UDAF,SQL会发出SQLCODE-428错误,并显示如下消息:User Defined Aggregate Function Sample.SecondHighest does not exist. #SQL #Caché 0 0 0 87
问题 Crys · 七月 14, 2021 打开最近的workspace 刚才好像发了一遍没成功 试用IRIS,关闭了workspace之后;再打开、没有project. 只能从打开最近的workspace中找,怎么回事噢?哈哈哈哈哈 #InterSystems IRIS 0 0 2 87
文章 姚 鑫 · 五月 8, 2021 阅读大约需 7 分钟 第三章 使用多维存储(全局变量)(四) 第三章 使用多维存储(全局变量)(四) 管理事务 InterSystems IRIS提供了使用全局变量实现完整事务处理所需的基本操作。 InterSystems IRIS对象和SQL自动利用这些特性。 如果直接将事务性数据写入全局变量,则可以使用这些操作。 事务命令是TSTART,它定义事务的开始; TCOMMIT,它提交当前事务; 和TROLLBACK,它将中止当前事务,并撤消自事务开始以来对全局变量所做的任何更改。 例如,下面的ObjectScript代码定义了事务的开始,设置了一些全局变量节点,然后根据ok的值提交或回滚事务: #SQL #Caché #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 87
文章 Hao Ma · 三月 6, 2024 阅读大约需 2 分钟 使用USEEXTENTSET减小Journal大小 [翻译文章:大型数据集的存储注意事项]这篇文章其实很有用, 但恐怕注意的人不多,特意写文章介绍一下。 USEEXTENTSET翻译过来就是"使用EXTENT集合“,不够直白,它的工作简单说就是:通过哈希类名,使用更短的Global名字。 #对象数据模型 #新手 #Ensemble #InterSystems IRIS 0 0 0 86
公告 jieliang liu · 二月 22, 2024 [视频] 加州大学戴维斯分校健康中心如何使用 InterSystems API Manager 嘿开发者, 观看此视频,了解 UC Davis Health 如何使用 InterSystems API Manager 来满足业务合作伙伴对访问自定义 API 和 FHIR API 的需求: ⏯加州大学戴维斯分校健康中心如何使用 InterSystems API Manager @ 2023 年全球峰会 //player.bilibili.com/player.html?aid=1450775730&bvid=BV1zv421k7yy&cid=1443790325&p=1[这是一个嵌入式链接,但由于您拒绝了访问嵌入式内容所需的 Cookie,您无法直接在网站上进行查看。要查看嵌入式内容,您需要在 Cookie 设置中接受所有 Cookie。] #API #FHIR #InterSystems API管理器(IAM) #视频 #InterSystems IRIS 0 0 0 86
文章 姚 鑫 · 八月 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 86
公告 Claire Zheng · 四月 10, 2023 创意社区新闻摘要#5 | InterSystems Ideas News#5 Hi 开发者社区的成员们,大家好! 欢迎关注我们第5期 InterSystems Ideas News! 本期分享如下: ✓名人堂 ——创意社区门户的新页面 ✓与 Global Masters 整合——您的每个奇思妙想都可以积分 ✓计划实施的想法清单 #InterSystems 想法门户 1 0 0 86
文章 Michael Lei · 十月 10, 2022 阅读大约需 2 分钟 如何在 CI/CD 里管理InterSystems API Manager (IAM)/ Kong API GATEWAY 配置? Kong提供了一个开源的配置管理工具(用Go语言编写),称为decK(即声明式Kong,declarative Kong)。 #InterSystems API管理器(IAM) #持续交付 #持续集成 #提示和技巧 #InterSystems IRIS #InterSystems IRIS for Health #其他 0 0 0 86
文章 姚 鑫 · 九月 26, 2022 阅读大约需 2 分钟 第四十四章 使用多个 IRIS 实例(四) [toc] 第四十四章 使用多个 IRIS 实例(四) 配置多个 IRIS 实例 可以在一台机器上安装并同时运行多个 IRIS 实例。像单一安装一样安装 IRIS,为每个实例提供唯一的名称、唯一的安装目录以及用于超级服务器、Web 服务器和 Telnet 的唯一端口号。 多个实例的特殊注意事项是: 安装多个实例受到系统上仅存在一个的组件的限制。例如,通常系统上只有一个 Web 服务器;因此 IRIS 安装将 Web Gateway 配置为最新安装。存储在注册表中的 IRIS 客户端组件遇到了同样的问题。 IRIS 将其 ODBC 驱动程序存储在注册表中,每个驱动程序使用一个名称。目前,最后一次安装会更新这些组件以指向最后安装的实例。 努力将通用组件移动到可以在 IRIS 实例之间共享的通用目录中。 #Caché 1 0 0 86