文章 Michael Lei · 四月 12, 2022 阅读大约需 7 分钟 几个程序化实现互操作性的示例 程序化访问 Production 要用程序编辑Production(界面),你可以使用互操作性API和SQL查询的组合。 现有的命名空间 从顶层了解你目前正在工作的命名空间和生产是很重要的。 ##嵌入式 Python #ObjectScript #互操作性 #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 285
文章 Michael Lei · 四月 20, 2022 阅读大约需 1 分钟 老外做的Cache SQL 存储映射 附件中的压缩文件包含了一些我多年来所做的Cache SQL Storage映射的例子。 如果你有现有的globals,并且想通过Objects或SQL暴露它们,你需要设置Cache SQL Storage映射。 如果你没有看到对你的情况有帮助的例子,请给我发一个例子,我可以帮你解决。 下载附件:https://community.intersystems.com/sites/default/files/post-associated-d... #Code Snippet #系统管理 #Caché 0 0 0 116
文章 姚 鑫 · 四月 25, 2022 阅读大约需 2 分钟 第123章 SQL函数 SEARCH_INDEX 第123章 SQL函数 SEARCH_INDEX 从索引的 Find() 方法返回一组值的函数。 #SQL #Caché 0 0 0 81
文章 姚 鑫 · 五月 5, 2022 阅读大约需 3 分钟 第133章 SQL函数 STRING 第133章 SQL函数 STRING 将表达式转换并连接成字符串的函数。 大纲 STRING(string1[,string2][,...][,stringN]) 参数 string - 表达式,可以是字段名称、字符串文字、数字或另一个函数的结果,其中基础数据类型可以表示为任何字符类型(例如 CHAR 或 VARCHAR)。如果指定了字段名称,则使用逻辑值。 描述 STRING 将一个或多个字符串转换为 STRING 格式,然后将这些字符串连接成一个字符串。不执行大小写转换。 STRING 在字符串转换之前将数字转换为其规范形式。因此,它执行算术运算,从数字中删除前导和尾随零以及前导加号。 #SQL #Caché 0 0 0 129
文章 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 98
文章 姚 鑫 · 五月 24, 2022 阅读大约需 1 分钟 第152章 SQL函数 $TSQL_NEWID 第152章 SQL函数 $TSQL_NEWID 大纲 $TSQL_NEWID() 描述 $TSQL_NEWID 返回一个全局唯一 ID (GUID)。 GUID 用于在偶尔连接的系统上同步数据库。 GUID 是一个 36 个字符的字符串,由 32 个十六进制数字组成,由连字符分成五组。它的数据类型是 %Library.UniqueIdentifier。 在 SQL 中提供了 $TSQL_NEWID 以支持Transact-SQL (TSQL)。对应的 TSQL 函数是 NEWID。 $TSQL_NEWID 函数不接受任何参数。请注意,参数括号是必需的。 #SQL #Caché 0 0 0 102
文章 姚 鑫 · 六月 1, 2022 阅读大约需 6 分钟 第159章 SQL函数 XMLELEMENT 第159章 SQL函数 XMLELEMENT 一种格式化 XML 标记标记以包含一个或多个表达式值的函数。 #SQL #Caché 0 0 0 139
文章 姚 鑫 · 六月 12, 2022 阅读大约需 5 分钟 第七章 日期和时间构造 第七章 日期和时间构造 验证和转换 ODBC 日期、时间或时间戳。 大纲 {d 'yyyy-mm-dd'} {d nnnnnn} {t 'hh:mm:ss[.fff]'} {t nnnnn.nnn} {ts 'yyyy-mm-dd [hh:mm:ss.fff]'} {ts 'mm/dd/yyyy [hh:mm:ss.fff]'} {ts nnnnnn} 描述 这些构造采用 ODBC 日期、时间或时间戳格式的整数或字符串,并将其转换为相应的 IRIS 日期、时间或时间戳格式。他们执行数据输入以及值和范围检查。 #SQL #Caché 0 0 0 197
文章 Lilian Huang · 六月 23, 2022 阅读大约需 2 分钟 InterSystems 许可证信息和查询支持Tips InterSystems许可证是指InterSystems #Caché #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS BI (DeepSee) #InterSystems IRIS for Health 0 0 0 434
文章 姚 鑫 · 七月 2, 2022 阅读大约需 5 分钟 第十六章 字符串本地化和消息字典(二) 第十六章 字符串本地化和消息字典(二) XML 消息文件 XML 消息文件是消息字典的导出。这也是希望导入的任何消息的必需格式。 只要有可能,XML 消息文件应该使用 UTF-8 编码。但是,在某些情况下,开发人员或翻译人员可能会使用本地平台编码,例如 shift-jis,以便于编辑 XML 消息文件。无论 XML 文件使用何种编码,应用程序的语言环境都必须支持它,并且它必须能够表达该语言的消息。 XML 消息文件可能包含一种语言和多个域的消息。 Element <MsgFile> 元素是 XML 消息文件的顶级容器,每个文件只有一个 <MsgFile>元素。 #SQL #Caché 0 0 0 81
文章 Lilian Huang · 七月 13, 2022 阅读大约需 5 分钟 用 Python 的 Native API 调用类方法 InterSystems Native SDK for Python ##嵌入式 Python #Python #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 369
文章 Michael Lei · 七月 20, 2022 阅读大约需 1 分钟 如何将IRIS的启动/停止状态输出到一个文件中 IRIS 命令qlist或list可以用来把输出结果输出到一个文件。 qlist的结果以文本格式输出,以^为分隔符。 第三部分,以^为界,包含运行状态数据。 $ iris qlist IRIS > iris.log $ cat iris.log IRIS^/Applications/iris^2022.1.0.164.0^running, since Thu Apr 7 16:37:03 2022^iris.cpf^1972^52773^0^alert^IRIS^^^/Applications/iris 在列表的情况下,以status:为前缀的一行包含运行状态数据。 对于基于Unix的操作系统 $ iris list IRIS > iris.log $ cat iris.log #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 192
文章 Frank Ma · 七月 28, 2022 阅读大约需 2 分钟 华山论剑-应用集成平台 应用集成平台市场上产品众多,商家专家观点纷纭,莫衷一是。Gartner公司从用户角度出发,搭建了Peer Insight “大众点评”平台,让用户能够为自己使用的产品发声,对各个产品打分。以下是来自用户的声音,供参考。 第一款产品是微软的BizTalk,综合得分3.9。 第二款产品是InterSystems的Ensemble,综合得分4.6。 第三款产品是IBM的WebSphere Enterprise Service Bus,综合得分3.8。 #Ensemble #InterSystems IRIS for Health 0 0 0 120
文章 姚 鑫 · 八月 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 90
文章 姚 鑫 · 八月 20, 2022 阅读大约需 3 分钟 第七章 配置命名空间(二) 第七章 配置命名空间(二) 将全局、例程和包映射添加到命名空间 除了可以访问映射数据库中的全局变量和例程之外,还可以映射来自相同或不同系统上的其他数据库的全局变量、例程和类包。这允许对可以存在于任何地方的数据进行简单引用,并且是命名空间的主要特征。可以映射整个全局变量或全局变量;此功能允许数据轻松跨磁盘。 注意:映射按字母顺序排序;如果指定了下标,则按名称和下标排序。 单击适当的选项开始映射: Global Mappings Routine Mappings Package Mappings Mapping Data to All Namespaces 以下是映射如何在示例航空公司预订应用程序中工作的示意图: 数据和程序存储在数据库数据库中,即物理存储位置,并由名称空间引用,即逻辑引用。 #Caché 0 0 0 99
文章 姚 鑫 · 八月 31, 2022 阅读大约需 4 分钟 第十八章 维护本地数据库(三) 第十八章 维护本地数据库(三) 截断数据库 截断数据库会将数据库末尾的可用空间返回到底层文件系统。数据库在压缩后通常会被截断,这会将可用空间移动到数据库的末尾。 截断数据库时,指定数据库的目标大小。如果在数据库末尾有足够的可用空间,则该操作会删除足够的空间以将数据库减小到目标大小;如果没有,它会删除所有可以删除的内容。 (要了解数据库的可用空间到底有多少,请压缩数据库;无需完成显示当前总可用空间和末尾数量的操作。) 注意:此功能不适用于具有原始卷的数据库。 #Caché 0 0 0 70
文章 Michael Lei · 九月 15, 2022 阅读大约需 6 分钟 创建 QEWD 微服务 如果你读了我之前介绍QEWD微服务的文章,希望你会渴望了解如何使用它们。 所以在这篇文章中,我将解释你需要知道的东西,以便开始使用。 如果你在QEWD资源库中,你会发现目录: https://github.com/robtweed/qewd/blob/master/example/jwt 在我之前关于JSON网络令牌(JWTs)和QEWD的文章中,我用这个示例应用程序来解释如何使用JWTs。 这个示例应用程序还演示了如何设置一个简单的微服务,在这种情况下是一个处理用户认证的服务。 所以,现在让我深入了解一下这个例子应用程序的这方面内容。 如果你想使用QEWD微服务,你也必须使用JWTs--它们提供了一种方法,用户的认证和会话可以被多个独立的QEWD服务器交叉通信和处理。 因此,请看一下启动文件: #JavaScript #JSON #前端 #微服务 #Caché #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 158
文章 姚 鑫 · 九月 19, 2022 阅读大约需 3 分钟 第三十七章 在 UNIX®、Linux 和 macOS 上使用 IRIS(二) 第三十七章 在 UNIX®、Linux 和 macOS 上使用 IRIS(二) 在 UNIX® 上启动 IRIS 实例使用以下资源来控制启动、停止和创建新进程: install-dir\mgr 目录中的 iris.ids 文件。 共享内存。 守护进程资源锁 IRIS 使用建议文件锁定来防止同一实例在不同机器上的多次启动。使用咨询文件锁定,单个锁定文件(在本例中为 install-dir/mgr 目录中的文件 ilock)可用于独占锁定多个资源。控制进程、写入守护进程和日志守护进程分别锁定锁定文件的一个单独部分。如果 ilock 文件的这一部分已被锁定,则启动将终止。不同守护进程持有的锁称为守护进程资源锁。 文件锁由进程持有,直到进程终止。因此,如果持有任何锁,则表明某个节点上的某个守护进程正在运行。但是,它并不表示实例是否健康并正常运行。 #Caché 2 0 0 158
文章 姚 鑫 · 九月 24, 2022 阅读大约需 14 分钟 第四十二章 使用多个 IRIS 实例(二) 第四十二章 使用多个 IRIS 实例(二) 控制 IRIS 实例 iris 命令支持终端以外的许多功能,并以 iris function instname arguments 格式调用,其中 instname 是在安装期间选择的实例名称,参数取决于函数。 重要提示: iris help 命令显示所有命令函数和参数; IRISHelp.html 文件位于 install-dir\Help 目录中。 iris 命令的某些功能在本文档中没有列出,但在帮助显示中显示。 #Caché 1 0 0 184
文章 姚 鑫 · 九月 30, 2022 阅读大约需 2 分钟 第二章 Caché 服务器页面简介 - 你应该知道 第二章 Caché 服务器页面简介 - 你应该知道 你应该知道什么 要高效使用 CSP,应该熟悉以下内容: Caché objects and ObjectScript HTML JavaScript SQL CSP Samples Caché 附带一组示例CSP 页面。要查看这些: #CSP #Caché 2 0 0 156
文章 姚 鑫 · 十月 10, 2022 阅读大约需 3 分钟 第十二章 CSP 中的 HTTP 请求 - CSP 运行时环境 第十二章 CSP 中的 HTTP 请求 - CSP 运行时环境 CSP 的主要任务是提供动态内容以响应传入的 HTTP(超文本传输协议)请求。本节介绍 CSP 如何处理 HTTP 请求的基础知识。 HTTP 是一种简单的协议,其中客户端向服务器发出请求。 HTTP 是一种无状态协议;客户端和服务器之间的连接只持续为服务请求所需的时间。每个 HTTP 请求都包含一个请求标头,该标头指定请求类型(例如 GET 或 POST)、一个 URL 和一个版本号。请求还可能包含附加信息。 CSP 自动确定它应该处理哪些 HTTP 请求,将它们分派到运行在 Caché 服务器上的适当类,并将请求信息打包成易于使用的对象(例如对象中的 %CSP.Request)。 #CSP #Caché 1 0 0 112
文章 Qiao Peng · 十月 20, 2022 阅读大约需 5 分钟 在集成产品中压缩解压文件 在InterSystems IRIS医疗版里有一个文件压缩解压的适配器HS.Util.Zip.Adapter和对应的文件压缩解压业务操作HS.Util.Zip.Operations。集成产品可以使用它们进行文件的压缩和解压操作。这2个类的联机文档说明较少,这里介绍它们的使用方法。 1. 基础配置 InterSystems IRIS使用操作系统的压缩和解压缩能力,因此需要注册操作系统执行压缩解压的命令。 在管理门户的Health标签页下,选中配置注册(Configuration Registry): 在其中增加2个注册项目: \ZipUtility\UnZipCommand 和\ZipUtility\ZipCommand,分别代表解压和压缩命令。适配器HS.Util.Zip.Adapter会检查这2个注册项并得到相应的命令。各个操作系统的命令并不一样,示例如下: #开发运维 #提示和技巧 #InterSystems IRIS #InterSystems IRIS for Health 3 0 1 103
文章 YuHao Wan · 十一月 5, 2022 阅读大约需 7 分钟 Caché实现SM4分组密码算法 0. 算法概述 SM4算法是一种分组密码算法。其分组长度为128bit,密钥长度也为128bit。加密算法与密钥扩展算法均采用32轮非线性迭代结构,以字(32位)为单位进行加密运算,每一次迭代运算均为一轮变换函数F。SM4算法加/解密算法的结构相同,只是使用轮密钥相反,其中解密轮密钥是加密轮密钥的逆序。 1. 密钥及轮密钥 密钥长度为128比特,表示为MK=(MK(0),MK(1),MK(2),MK(3)),其中MKi(i=0,1,2,3)为字。 轮密钥表示为(rk(0),rk(1),...,rk(31)),其中rk(i)(i=0,...,31)为32比特字。轮密钥由秘钥生成。 #加密 #Caché 2 0 0 520
文章 jieliang liu · 五月 15 阅读大约需 1 分钟 一些 FHIR 互操作性适配器示例 各位开发者,大家好! 或许您不得不实现一些场景,这些场景不需要 FHIR 仓库但需要转发 FHIR 请求、管理响应,并且可能运行转换或在两者之间提取一些值。 在这里,您会找到一些可以使用 InterSystems IRIS For Health 或 HealthShare Health Connect 实现的示例。 在这些示例中,我使用了具有 FHIR 互操作性适配器和 HS.FHIRServer.Interop.Request 消息的互操作性生产配置。 第一个场景从头开始构建 FHIR 请求(可以来自文件,也可以来自 SQL 查询),然后将其发送到外部 FHIR 服务。 #FHIR #互操作性 #InterSystems IRIS for Health Open Exchange app 0 0 0 40
文章 姚 鑫 · 十二月 25, 2022 阅读大约需 2 分钟 第二十四章 使用系统监视器 - 使用 ^%SYSMONMGR 管理运行状况监视器 第二十四章 使用系统监视器 - 使用 ^%SYSMONMGR 管理运行状况监视器 如使用 ^%SYSMONMGR 实用程序中所述,^%SYSMONMGR 实用程序允许管理和配置系统监视器,包括运行状况监视器。要管理 Health Monitor,请在终端中切换到 %SYS 命名空间,然后输入以下命令: #Caché 0 0 0 136
文章 Hao Ma · 一月 12, 2023 阅读大约需 10 分钟 IRIS, Caché监控指导 - 诊断报告和性能报告 InterSystems公司的技术支持中心WRC(World Response Center)提供的服务包括故障报修,升级和数据迁移支持等等。当客户报告了系统故障或性能问题给WRC时, 会被要求收集以下的两份报告,以了解系统的运行情况和性能表现,它们是:诊断报告(Diagnostic Report)和系统性能报告。 诊断报告(Diagnostic Report) 有关诊断报告,您需要知道: 诊断报告是当前系统的运行状况的数据收集。 是给InterSystems技术支持工程师的,维护人员基本不需要读它。 当出现紧急故障需要重启系统时,先做一次诊断报告的收集,会对WRC在故障过后分析故障原因提供极大的便利。 报告收集的步骤 进入管理门户页面,“系统管理>诊断报告”(System Operation > Diagnostic Reports),点击运行。 #系统管理 #InterSystems IRIS 0 0 0 246
文章 姚 鑫 · 一月 25, 2023 阅读大约需 3 分钟 第五十六章 历史监视器 - 基本指标 第五十六章 历史监视器 History Monitor 维护性能和系统使用指标的历史数据库。其主要目的是: 提供性能基准并帮助分析性能问题。 帮助分析一段时间内的系统使用情况以进行容量规划。 该数据库在 SYS.History 类包中定义并保存在 %SYS 命名空间中。数据库结构的所有细节都在那里发布,并且可以通过 SQL 或正常的持久对象访问访问数据。 SYS.History 中的类文档还包含对所有可用的单个属性、方法和查询的描述。 #Caché 0 0 0 74
文章 Michael Lei · 二月 5, 2023 阅读大约需 1 分钟 IRIS小工具--如何以最简单的方式部署生产系统 通常,如果你想部署一个解决方案,你需要手动添加项目、配置你的查找表和默认配置。如果您拥有执行这些操作的所有权限,那也没关系。如果您想部署到客户的生产服务器,但您没有权限,则需要在文档中指明系统部署必须执行的所有步骤。 #部署 #Ensemble #InterSystems IRIS #Open Exchange Open Exchange app 0 0 0 181
文章 Tete Zhang · 二月 20, 2023 阅读大约需 11 分钟 OpenAPI-Suite(从 OpenAPI 3.0 生成 ObjectScript 代码的工具集):介绍 InterSystems 开发人员工具大赛 2023 获奖者 开发者您好! 这里向介绍@Lorenzo Scalese的OpenAPI-Suite (一个用于从OpenAPI 3.0生成 ObjectScript 代码的工具集)。这个工具集在 2023 年 InterSystems 开发工具大赛的21 个参赛作品中获得专家提名第三名。 #REST API #开发环境 #InterSystems IRIS #InterSystems IRIS for Health 3 0 1 314
文章 Claire Zheng · 三月 14, 2023 阅读大约需 10 分钟 医疗行业的生态创新:如何实现数据利用和应用创新 本文根据InterSystems中国技术总监乔鹏( @Qiao Peng )的演讲“互联互通套件赋能数据利用与应用创新”整理而成。 IRIS医疗版互联互通套件的缘起与发展演进 来源HL7:正在到来的挑战 http://hl7.org/fhir/change.html 这是来自HL7官网上的一张图,描述了我们在医疗卫生行业面临的一些挑战,以及信息化建设在应对挑战中发挥的作用。当今,医疗卫生、生物学、信息技术有很强的融合趋势,加之社会变革带来的经济方面的需求,同时构成颠覆传统医疗卫生行业的因素。 这张图显示了从“被动医疗”转向“主动医疗”过程中信息的爆炸式增长,信息共享交换推动了我们对信息的利用,在这一进程中,医疗卫生信息化起着核心作用——而让信息更具价值,赋予信息标准化和互操作能力的过程,这也是InterSystems一直努力的方向,我们在国内支持大量医院实现了互联互通建设。在建设过程中,我们注意到项目的定量部分的建设成本占比是比较高的,很多的工作都花在了合规性和相关管理工具的开发上——应用标准的实施是有成本的,而对于标准的理解在各个项目上水平不尽相同,这就进一步影响了互联互通项目的建设成果。 #InterSystems IRIS for Health 1 0 0 291