文章 Jingwei Wang · 七月 14, 2022 阅读大约需 13 分钟 InterSystems SQL 的使用 - 第三部分 - 表 创建表 可以通过以下方式定义表: 通过DDL定义表 使用任意数据库管理工具执行DDL(使用ODBC,JDBC连接) MyApp.Person表可以使用DDL CREATE TABLE语句来定义,指定SQL schema.table名称。成功执行这个SQL语句会生成一个相应的持久化类,包名MyApp,类名Person。当使用DDL命令定义一个表时,你不需要指定USEEXTENTSET或创建一个位图范围索引。InterSystems SQL会自动应用这些设置,并将它们包含在预测的持久化类中。默认情况下,CREATE TABLE在相应的类定义中指定了Final类的关键字,表示它不能有子类。 #SQL #InterSystems IRIS for Health 0 0 0 361
文章 Jingwei Wang · 七月 14, 2022 阅读大约需 6 分钟 InterSystems SQL 的使用 - 第二部分 - 基础介绍 本文概述了InterSystems SQL的特点,特别是那些没有被SQL标准所涵盖或与InterSystems IRIS 数据平台的统一数据架构有关的特点。假定你已有SQL的知识,本文不是SQL概念或语法的介绍。 表 在InterSystems SQL中,数据是在表内呈现的。每个表都被定义为包含若干列。一个表可以包含零个或多个数据值的行。以下术语大致上是等同的。 #SQL #InterSystems IRIS for Health 0 0 0 496
文章 Jingwei Wang · 七月 14, 2022 阅读大约需 6 分钟 精华文章 InterSystems SQL 的使用 - 第一部分 - 架构及特性介绍 InterSystems SQL为存储在IRIS数据库中的数据提供不折不扣的、标准的关系型访问。 InterSystems SQL具有以下优点。 高性能和可扩展性 - InterSystems SQL的性能和可扩展性优于其他关系型数据库产品。 与IRIS对象技术的集成 - InterSystems SQL与IRIS对象技术紧密集成。你可以混合使用关系型和对象型的数据访问,而不牺牲任何一种方法的性能。 低维护 - 与其他关系型数据库不同,IRIS应用程序不需要在部署的应用程序中重建索引和压缩表。 支持标准SQL查询 - InterSystems SQL支持SQL-92标准语法和命令。 #SQL #InterSystems IRIS for Health 0 0 0 263
文章 Lilian Huang · 七月 13, 2022 阅读大约需 5 分钟 用 Python 的 Native API 调用类方法 InterSystems Native SDK for Python ##嵌入式 Python #Python #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 334
文章 Jingwei Wang · 七月 8, 2022 阅读大约需 6 分钟 Production组件及远程代码调试 本片文章主要介绍两种Production debug的方式, 使用管理门户测试Production 组件 使用VS Code来对远程production代码进行debug #调试 #Ensemble #InterSystems IRIS for Health 1 0 0 174
文章 Jingwei Wang · 七月 4, 2022 阅读大约需 11 分钟 IRIS/HealthConnect 高可用机制 高可用性(HA)指的是使系统或应用程序在很高比例的时间内保持运行,最大限度地减少计划内和计划外的停机时间。 维持系统高可用性的主要机制被称为故障转移。在这种方法下,一个故障的主系统被一个备份系统所取代;也就是说,生产系统故障转移到备份系统上。许多HA配置还提供了灾难恢复(DR)的机制,即在HA机制无法保持系统的可用性时,也能及时恢复系统的可用性。 本文简要讨论了可用于基于InterSystems IRIS的应用程序的HA策略机制,提供了HA解决方案的功能比较,并讨论了使用分布式缓存的故障转移策略。 #高可用性 #Caché #InterSystems IRIS for Health 0 0 0 149
文章 Michael Lei · 七月 2, 2022 阅读大约需 4 分钟 使用嵌入式 python 访问管理门户仪表盘并在网页上显示 cache 表数据 Hi 社区, 在这篇文章中,我将解释如何通过使用嵌入式python访问管理门户系统的仪表盘信息和表数据。 ##嵌入式 Python #SQL #管理门户 #InterSystems IRIS for Health 0 0 0 232
文章 Michael Lei · 七月 1, 2022 阅读大约需 10 分钟 原创文章--医院数字化转型之数智底座建设思路(在陕西省数字医学数字化转型论坛上的分享) 各位领导、老师大家好。非常荣幸有机会参加这次由中国数字医学杂志社组织的陕西省医院数字化转型研讨会。 IT这个行业很有意思,就是大家都很喜欢造词。这几年有一个词特别火,叫做数智化底座,很多厂商都先后推出了自己的数智化底座解决方案。结合最近对整个行业的一些观察,今天借这个机会,跟各位领导和老师探讨一下,医疗行业的数字化有什么特点,到底什么样的底座或者平台比较符合我们医疗行业,以及我们在建设数智化底座的时候需要考虑哪些问题。结合我们最近的一些观察和思考,有不当之处,欢迎各位老师批评、指正。 首先一点就是我们做任何工作,首先要解决“为什么”的问题?第一个核心思路,我想数字化转型是为智慧医院服务的,归根结底,还是要通过数字化的手段,来实现医院的高质量发展。针对这一目标,国家卫健委制定了智慧医院发展的三大目标,就是智慧医疗、智慧管理和智慧服务,我想说白了,无非就是让医院、医护人员以及我们的患者过的更好,提高我们治疗和护理水平、降本增效,同时能够让我们的患者得到更好的服务。所有的数字化建设,不管是平台还是应用,都应该围绕这一核心目标。 #InterSystems 业务解决方案和架构 #数据模型 #InterSystems IRIS for Health 2 0 0 283
文章 Michael Lei · 六月 26, 2022 阅读大约需 5 分钟 跟踪数据更改 - 审计日志 - 下篇 在前一篇文章中,我已经演示了一种简单的方法来记录数据的变化。在这个时候,我改变了负责记录审计数据的 "审计抽象类 "和记录审计日志的数据结构。 我已经将数据结构改为父子结构,其中将有两个表来记录 "交易 "和在该交易中改变的 "字段的值"。 看一下新的数据模型: 看看从 "审计类 "改变的代码吧: #对象数据模型 #ObjectScript #Caché #InterSystems IRIS for Health 0 0 0 159
文章 Michael Lei · 六月 26, 2022 阅读大约需 3 分钟 从Web 应用端用代码实现OAuth2 和基础认证、鉴权和审计 在这篇文章中,我将解释如何通过使用CSP Web应用程序以及启用/禁用和认证/取消认证任何Web应用程序的代码来进行认证、授权和审计。 在线 Demo -- https://dappsecurity.demo.community.intersystems.com/csp/user/index.csp (SuperUser | SYS) 推荐大家看下这个视频: https://www.youtube.com/watch?v=qFRa3njqDcA 应用层 #OAuth2 #安全 #访问控制 #认证 #身份认证 #InterSystems IRIS #InterSystems IRIS for Health Open Exchange app 0 0 0 121
文章 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 386
文章 Jingwei Wang · 六月 20, 2022 阅读大约需 8 分钟 IRIS/HealthConnect 高可用机制 Mirror 的配置 安装Arbiter 为了将自动故障转移扩展到尽可能广泛的故障情况,InterSystems建议你为每个镜像配置一个仲裁机。 要充当仲裁者,系统必须有一个正在运行的ISCAgent进程。由于ISCAgent是与InterSystems IRIS一起安装的,任何承载一个或多个InterSystems IRIS实例的系统都符合这一要求,可以被配置为仲裁者而无需进一步准备;但是,承载一个或多个故障转移或DR异步镜像成员的系统不应该被配置为该镜像的仲裁者。 没有托管InterSystems IRIS实例的系统可以通过安装Arbiter方式的作为仲裁者。请从InterSystems公司下载适合你的仲裁者系统平台的ISCAgent安装包,然后,安装ISCAgent。 注意:Arbiter的版本要和InterSystems IRIS安装版本保持一致。 #镜像 #高可用性 #Caché #HealthShare #InterSystems IRIS for Health 0 0 1 557
问题 Michael Lei · 六月 14, 2022 如何转化 json 到 SDA 并写到文件里? 问: 我有一个专有的JSON,需要转换为SDA并保存到一个SDA文件。 如何将json转化为SDA并写入文件? 谢谢 #互操作性 #InterSystems IRIS for Health 0 1 0 143
文章 Lilian Huang · 六月 14, 2022 阅读大约需 3 分钟 [首次使用InterSystems IRIS] 互操作性: Message消息 这篇文章是上一篇文章的延续https://cn.community.intersystems.com/post/首次使用intersystems-iris-互操作性-一个production是什么? #API #HL7 #InterSystems 业务解决方案和架构 #Caché #HealthShare #InterSystems IRIS #InterSystems IRIS for Health #学习门户 0 0 0 191
文章 姚 鑫 · 五月 12, 2021 阅读大约需 4 分钟 第五章 管理全局变量(一) 第五章 管理全局变量(一) 管理门户提供管理全局变量的工具,系统类提供执行某些相同任务的方法。本章介绍如何使用这些工具。 一般建议 与ObjectScript命令SET、MERGE、KILL和其他命令一样,这里描述的工具提供了直接访问操作全局变量的权限。如果通过全局访问删除或修改,则会绕过所有对象和SQL完整性检查,并且没有撤消选项。因此,在执行这些任务时要非常小心,这一点很重要。(查看和导出不会影响数据库,并且是安全活动。) 使用本章中介绍的工具时,请确保以下事项: IRIS使用哪些全局变量。并不是所有这些都被视为“系统”全局变量-也就是说,即使没有选中“系统”复选框,它们中的一些也是可见的。其中一些全局变量存储代码,包括的代码。 确保知道应用程序使用哪些全局变量。 即使应用程序从不执行任何直接全局访问,应用程序也会使用全局变量。请记住,如果创建持久类,则它们的数据和任何索引都存储在全局变量中,全局变量的名称基于类名(默认情况下)。 #SQL #Caché #InterSystems IRIS #InterSystems IRIS for Health 0 1 0 110
文章 Michael Lei · 六月 11, 2022 阅读大约需 2 分钟 InterSystems 最佳实践系列文章--系统性能组件SystemPerformance (原 pButtons) API和UI示例 在检查我们的^pButtons(在IRIS中改名为^SystemPerformance)性能监控工具的文档时,一位客户告诉我。"我理解所有内容,但我希望它能更简单......更容易定义配置文件,管理它们等等"。 在这次会议之后,我认为尝试为其提供一些更简单的人机界面是一个不错的试验。 这方面的第一步是在现有的pButtons例程上包裹一个基于类的API。 我还能够添加一些更多的 "功能",比如显示当前正在运行的配置文件,它们剩余的运行时间,以前运行的进程等等。 下一步是在这个API的基础上添加一个REST API类。 有了这个工件(pButtons REST API),人们就可以在上面建立一个比较时髦的用户界面。 举个🌰: - #Angular #API #REST API #性能 #Caché #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS for Health Open Exchange app 0 0 0 130
文章 Qiao Peng · 六月 8, 2022 阅读大约需 7 分钟 数字孪生医院:一个围绕着智慧医院决策的建模、管理和行动闭环的全新方式 01 智慧医院的本质 什么是智慧医院? #InterSystems 业务解决方案和架构 #InterSystems IRIS #InterSystems IRIS for Health #其他 0 0 0 658
文章 Michael Lei · 六月 7, 2022 阅读大约需 3 分钟 绕过ODBC使用ObjectScript访问远程系统 绕过ODBC使用ObjectScript访问远程系统 这是一个在 IRIS 2020.1 和 Caché 2018.1.3 上工作的代码示例 不会与新版本保持同步 也不会获得 InterSystems 提供的支持服务! 我们经常会遇到这样的情况,由于各种原因ODBC是访问一个远程系统的唯一选择。如果你只需要检查或改变表,这就足够了。但你不能直接执行一些命令或改变一些Global。 特别感谢@Anna.Golitsyna 启发我发表此文。 这个例子提供了3种 SQLprocedure 方法来实现访问远程系统这个目的,如果其他的访问方式被阻止,通常是被一些防火墙阻止。 #ObjectScript #ODBC #SQL #Globals #Caché #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 114
文章 Jingwei Wang · 六月 6, 2022 阅读大约需 1 分钟 windows版Intersystems IRIS安装步骤 双击安装文件 #InterSystems IRIS for Health 0 0 0 407
文章 Michael Lei · 六月 1, 2022 阅读大约需 1 分钟 部分IRIS 2022 年度编程大奖赛作品展示——FHIR 病人查看器 大家好! 在这里跟大家分享一下我在大奖赛上的项目 :) FHIR病人查看器是一个建立在Vue.js上的单页、反应式渲染工具,它以对人友好的方式显示从对InterSystems FHIR服务器的/Patient/{id}/$everything调用返回的数据。在自述文件中,包括3个主要内容: 1. 一个视频演示,将FHIR患者浏览器连接到一个沙盒IRIS FHIR服务器上(这是测试它的最快方法); 2.第二个视频显示我如何在生产环境中使用FHIR患者浏览器(使用一个定制的后端来处理API调用,在我的例子中用PHP/Laravel编写,但可以转移到其他语言/框架); 3.修改组件的说明,创建你自己版本的工具,并建立你自己的dist文件。 谢谢大家! 本次大赛的参赛作品质量很好! Dan #FHIR #JavaScript #前端 #可视化 #InterSystems IRIS for Health Open Exchange app 0 0 0 79
文章 Michael Lei · 五月 30, 2022 阅读大约需 1 分钟 部分IRIS 2022 年度编程大奖赛作品展示——FHIR 匿名化代理软件(实现FHIR数据动态匿名化) 你好,我很高兴地宣布向OpenExchange和目前的比赛提交的一个作品,即FHIR匿名化代理。FHIR匿名化代理为任何现有的FHIR服务器增加了一个透明的匿名化层,使客户能够在FHIR服务器上进行查询--其中可能包含个人识别信息--并收到一个即时的匿名化数据版本。 代理机制是通过互操作性Production、BPLs和DTLs以及FHIR互操作性适配器在IRIS for Health平台上实现的。匿名化包括所有身份ID和个人数据,并可通过DTLs进行配置。 OpenExchange的演示应用程序带有一个内置的FHIR endpoint,并以会填充一些示例数据。试一下,或者将你自己的FHIR服务器配置为代理目标亲自测试一下 #数据转换语言(DTL) #FHIR #业务流程 (BPL) #互操作性 #InterSystems IRIS for Health Open Exchange app 0 0 0 87
文章 Michael Lei · 五月 26, 2022 阅读大约需 1 分钟 互操作性的例子--DICOM production 与模拟器 Hi,大家好! 您曾经实施过DICOM集成吗?也许您已经百度了一些样例,甚至是模拟器。希望本文的例子能给您带来帮助。 DICOM 是一个广泛用于医疗诊断影像的消息标准。您可以使用IRIS For Health或者Health Connect在互操作性Production中使用DICOM标准,在这里您可以找到文档. 在很多情况下,当您开发一个DICOM集成时,您可以运行一个模拟器来扮演一些外部系统(如PACS),可以在连接到一个真正的系统之前充分测试您想要实现的流程,这一点真的很有用。 在这里您可以找到一个使用IRIS For Health的DICOM整合例子,还有一个叫做dcm4che的模拟器 在这个例子里, 实现了两个不同的场景: #互操作性 #InterSystems IRIS for Health Open Exchange app 0 0 0 125
文章 Lilian Huang · 五月 26, 2022 阅读大约需 2 分钟 在线用Demo服务器工具的重要性- 引自“Importance of the Online Demo Server facility” #Open Exchange 您可能已经看到邀请分享您的 Open Exchange 应用程序的演示:Share a Demo of Your Open Exchange Application它背后的服务——InterSystems Online Demo Server (ODS)——这不是什么新事物 #InterSystems 业务解决方案和架构 #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 107
文章 Qiao Peng · 一月 24, 2021 阅读大约需 3 分钟 解决SQL适配器连接到字符集为US7ASCII的Oracle数据库的中文乱码问题 在使用xDBC连接到字符集为US7ASCII的Oracle数据库时,大家可能遇到过中文的乱码问题,尤其是使用Oracle自己的xDBC驱动的时候。 字符集为US7ASCII的Oracle数据库虽然可以保存中文数据,但给客户端带来了很多麻烦,需要对获取和提交的数据进行转码。 在Ensemble/Health Connect/InterSystems IRIS 中使用SQL适配器连接到这样的Oracle数据库时,可以使用$ZCVT函数进行转码。 1. $ZCVT函数 $ZCVT函数是广泛使用的字符串转换函数,可以做大小写转换、编码转换、URL 和 URI 转换等。我们用其编码转换能力来解决字符集转码问题。 2. 获取的SQL结果集数据有中文时 #ODBC #SQL #互操作性 #Ensemble #HealthShare #InterSystems IRIS for Health 6 2 0 863
公告 Claire Zheng · 五月 19, 2022 5月27日 | 极客俱乐部:集成平台赋能业务流程再造与创新 在集成平台建设如火如荼的今天,如何能最大程度发挥集成平台价值,让集成平台不再止步于业务系统接口的打通,而是真正作为医院的IT基础架构,释放出更大价值?5月27日,InterSystems技术总监乔鹏 ( @Qiao.Peng )和InterSystems销售工程师王菁伟( @Jingwei Wang )将针对集成平台建成后的应用价值,围绕“业务流程再造”角度,探讨以低代码方式梳理并再造业务闭环流程、从而赋能业务创新并促进医院精细化管理和高质量发展。点击链接或扫描报名。 #活动 #HealthShare #InterSystems IRIS for Health 0 0 0 250
公告 Michael Lei · 五月 18, 2022 IRIS 和 IRIS for Health 社区版和企业版现在可以下载预览了! 所有人现在可以在 https://evaluation.intersystems.com下载IRIS和IRIS for Health社区和企业版 。 客户以及潜在客户都可以尝试我们最新最强的功能,包括一些还没有发布的新特性。 如何访问: 对于潜在客户,只要选择名称中带有"(预览)"的选项,就可以下载预览软件。 对于客户和InterSystems员工--只需拨动预览复选框,这将包括可用版本菜单下拉中的预览软件: #HealthShare #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 233
文章 Qiao Peng · 五月 15, 2022 阅读大约需 9 分钟 InterSystems互操作进阶 - 第二篇:规则引擎 (第一部分) 在软件开发和业务集成中,规则无处不在:会员折扣的计算规则、根据消息类型和内容将其路由到不同目标系统的路由规则。还有一个规则发挥重要作用的地方- 辅助决策规则,例如临床知识库和医疗质量指标规则。 规则经常需要随业务调整和知识积累进行调整,而规则的调整是业务和行业专家定的。如果规则是以代码硬编码的,这些调整需要程序员改动,一来不直观、需要业务专家与程序员大量的沟通成本,二来硬编码改动会对应用伤筋动骨,甚至带来风险,三来没法控制新规则生效的时间 – 总不能让程序员在新规则生效的那一刻去编译和部署吧。 #业务规则 #持续集成 #提示和技巧 #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS for Health 2 0 0 408
公告 Michael Lei · 五月 11, 2022 InterSystems Kubernetes Operator 3.3 发布! InterSystems Kubernetes Operation(IKO)3.3版现已通过WRC下载页面和InterSystems容器注册中心提供。IKO通过提供一个易于使用的irisCluster资源定义,简化了在Kubernetes中使用InterSystems IRIS或InterSystems IRIS for Health的工作。完整的功能清单见IKO文档,包括轻松的分片、镜像和ECP的配置。 IKO 3.3 亮点: 支持InterSystems IRIS和InterSystems IRIS for Health 2021.2 以及 2022.1版本 支持 Kuberentes 1.21 将常见的系统警报和监控(SAM)配置作为irisCluster的一部分进行部署 InterSystems API Manager(IAM)现在也可以作为 irisCluster的一部分进行部署和管理 自动标记Mirror对的活跃端,因此服务可以始终指向激活的镜像成员 #Kubernetes #容器化 #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 85
文章 Lilian Huang · 五月 10, 2022 阅读大约需 2 分钟 关于自适应分析Adaptive Analytics 示例模式操作! InterSystems IRIS 2021.1 的发布引入了自适应分析(Adaptive Analytics)的介绍。 为了开始使用和熟悉 InterSystems IRIS BI cube示例,我们创建了一个用于自适应分析的 HoleFoods 应用程序示例模版。 此示例应用程序可在 Open Exchange 上获得, 还有一个学习服务课程learning services course 可用于了解有关自适应分析的更多信息。 #自适应分析(Adaptive Analytics) #InterSystems 业务解决方案和架构 #分析 #InterSystems IRIS #InterSystems IRIS BI (DeepSee) #InterSystems IRIS for Health Open Exchange app 0 0 0 118
文章 Nicky Zhu · 五月 7, 2022 阅读大约需 3 分钟 一个新库引发的血案 我们的一位客户五一期间向使用IRIS搭建的数据流推送一家三甲医院数年的历史数据,导致实施的同事们经历了一系列噩梦,包括但不限与: 1. 由于未通知实施团队有这样规模的数据推送,数据推送过程与全库备份任务重叠。尽管实例和数据流正常运行,但备份任务与数据流争抢IO,导致备份任务不能在预期时间内完成,实施童鞋五一加班处理问题。 2. 为了节省磁盘空间,服务器上部署了定期删除IRIS备份文件的任务,原本能够保持一周的全备+增量备份,但在本次数据暴增的情况下,新的备份尚未完成而旧的全备已被删除,导致问题发生时没有可用于恢复的备份。 3. 由于这次数据推送前未进行数据质量校验,推送的数据全部不合规,但已经历了较长的数据流进行处理全部入库;同时由于备份文件已被删除,无法通过恢复数据库的方法回滚,导致实施童鞋不得不逐条从生产环境三个库的数百张表中挑出问题数据逐一删除,从五一放假结束至今还未完成善后工作。大家可以设想一下,如果备份还在,那么恢复备份就可以了。 因此,我们希望再次提醒各位在前线奋斗的亲们: 1. 善待你的备份。尽管对于大型医院或医疗集团来说,两周的全备+增量备份策略下,备份文件会占据数个TB的存储空间。但在需要回滚时,这几个T的空间能救命。 #InterSystems IRIS for Health 3 1 0 117