Hi 开发者社区的成员们,大家好!
欢迎关注我们第4期 InterSystems Ideas News!
我们将分享如下:
- 如何支持你们team的想法和投票。
- 在编程大赛中,用户实践Idea(创意)并获得技术奖励。
- InterSystems 开发者社区的深色主题版本:是或否(Yay or Nay?)?
- 最近添加的Idea(创意)。

Hi 开发者社区的成员们,大家好!
欢迎关注我们第4期 InterSystems Ideas News!
我们将分享如下:

在最近几篇文章中的一些文章中,我谈到了 IRIS 和 Python 之间的类型,很明显,从一侧到另一侧访问对象并不是那么容易。
幸运的是,已经完成了创建SQLAlchemy-iris 的工作(点击链接在 Open Exchange 上查看它),这使得 Python 访问 IRIS 对象的一切变得更加容易,我将展示它的启动器。
要安装,只需打开具有管理员权限的终端并输入
pip install sqlalchemy-iris如果需要,这还将为您安装先决条件。
现在,在 python 文件上,您可以导入模块、连接到数据库并以任何您想要的方式使用 sqlalchemy。如果你觉得舒服,你可以按照以下步骤操作:
本文根据InterSystems中国技术总监乔鹏( @Qiao Peng)的演讲“互联互通套件赋能数据利用与应用创新”整理而成。
.png)
来源HL7:正在到来的挑战
http://hl7.org/fhir/change.html
这是来自HL7官网上的一张图,描述了我们在医疗卫生行业面临的一些挑战,以及信息化建设在应对挑战中发挥的作用。当今,医疗卫生、生物学、信息技术有很强的融合趋势,加之社会变革带来的经济方面的需求,同时构成颠覆传统医疗卫生行业的因素。
这张图显示了从“被动医疗”转向“主动医疗”过程中信息的爆炸式增长,信息共享交换推动了我们对信息的利用,在这一进程中,医疗卫生信息化起着核心作用——而让信息更具价值,赋予信息标准化和互操作能力的过程,这也是InterSystems一直努力的方向,我们在国内支持大量医院实现了互联互通建设。在建设过程中,我们注意到项目的定量部分的建设成本占比是比较高的,很多的工作都花在了合规性和相关管理工具的开发上——应用标准的实施是有成本的,而对于标准的理解在各个项目上水平不尽相同,这就进一步影响了互联互通项目的建设成果。
数字化转型已经颠覆了很多行业,相信医疗卫生信息行业也不会例外。我们希望通过InterSystems IRIS医疗版互联互通套件,以互联互通为基础,让医院信息平台成为医疗卫生行业数字化转型的智能核心。
SSH框架是Java一个的比较有代表性的框架,是多年前比较流行的一个。有struts+spring+hibernate和springMVC+spring+hibernate两种,当然我大学时候使用的是第二种。倘使我能把IRIS作为一个库,联结到Hibernate那么理论上是不是也代表IRIS也可以使用SSH框架开发呢?
工具及环境
JDK 1.8
Maven
Hibernate 5.X.X
IRISHealth-2022.1.3
intellij idea
Windows 10 64位
1、创建数据库
用代码的方式创建几个表
|
Class BKIP.SOA.MonitorScreen.CacheTable.logError Extends %Persistent
{
/// 服务概况缓存表
Property SucNum As %String(MAXLEN = "");
Property failNum As %String(MAXLEN = "");
Property fdateTime As %String(MAXLEN = "");
}
|
如图所示:

2、创建一个Spring的项目
File—New—Project.
你好社区,
在上次激烈的编程比赛之后,我们很高兴宣布下一场 InterSystems 技术文章写作比赛!
✍️技术文章竞赛:InterSystems IRIS 教程✍️
写一篇可以被视为 InterSystems IRIS 教程的文章任何级别的程序员:3月1日至3月31日初级/中级/高级。
🎁 人人有奖:参加比赛的每位作者都可获得一份特别奖品包!
🏆 主要奖品:共有6个奖品可供选择。
.jpg)
InterSystems IRIS 2022.2 具有适用于 Python 的原生 SDK (https://docs.intersystems.com/iris20222/csp/docbook/Doc.View.cls?KEY=PA…;
我们知道如何使用 IRIS Object Script $Order 函数遍历Global数据结构。
SET key= "" FOR { SET key= $ORDER ( ^myglobal (key)) QUIT :key= "" WRITE !, ^myglobal (key) }如何使用 IRIS Native SDK 从 Python 执行相同的操作?这里有一个代码示例:
import iris
args = { 'hostname' : '127.0.0.1' , 'port' : 51772 , 'namespace' : 'USER' , 'username' : '_SYSTEM' , 'password' : 'SYS' }
conn = iris.connect(**args)
# Create an iris object
irispy = iris.本示例会在Production的组件BO(业务操作)中增加自定义的配置信息,例如添加目标系统信息,当然此类信息也可以放在已有的配置”注释“中。
Property 目标服务器 As %String(MAXLEN = 2000, XMLPROJECTION = "ATTRIBUTE");
Parameter SETTINGS = "目标服务器:Info";
.png)
write ##class(Ens.在互操作功能运行过程中,IRIS可以识别异常情况的发生,自动生成告警事件并通过预制的互操作组件将告警转发给干系人;另外,IRIS也内建了告警工作台,可供运维团队基于工作流实现对告警的管理。
在Production级别可以设置对连接异常的告警设置,及告警组件设置

.png)
警报宽限期
.png)
正式名称为Class Query 的意思可以追溯到 Caché 的早期。
使用CLASS是因为它嵌入在 COS 类中。
尽管官方文档中有精确的描述,但它仍然相当抽象。
我的教程应该通过 COS 中的一个简单示例逐步指导您,使您有直观的体会
在这里,您将找到一个在 IRIS 环境中使用 Python 的简单程序,以及另一个在 Python 环境中使用 ObjectScript 的简单程序。另外,我想分享一些我在学习实践时遇到的麻烦。
比方说,您在 IRIS 环境中想要解决一个您认为使用 Python 更容易或更有效的问题。
您可以简单地更改环境:像创建任何其他方法一样创建您的方法,并在其名称和规范的末尾添加 [Language = python]:
.png)
您可以在该方法中使用任何类型的参数,并且要访问它们,您可以执行与在 COS 中完全相同的操作:
假设您有这个 %String 参数 Arg 和一个来自自定义类的参数 OtherArg。这个其他类可能具有标题和作者等属性。您希望像这样访问:
.png)
此方法提供如下输出:
.png)
而且,对于访问类方法,它几乎是一样的。假设我们在 Demo.Books.PD.Books 中有一个名为“CreateString”的方法,它将标题和作者连接成类似于“Title: <Title>; Author: <Author>”的内容。
将其添加到我们的 python 方法的末尾:
.png)
将提供以下输出:
.png)
(要访问该方法,您可以使用 OtherArg.
尽管作为一个没有资金支持的医科专业学生,Case Western Reserve大学的Jane Hinkle最近在不到一周的时间里利用EHR供应商Epic的去识别化病人数据库Cosmos进行了临床研究,还得了奖。
Cosmos是一个HIPAA限定的数据集,整合了超过1.22亿名患者的Epic EHR数据。
"我们围绕Cosmos建立的概念就是我们所说的自助分析,这意味着Cosmos中的大数据被设置为Cosmos的任何用户都可以访问,"Epic的临床信息学家Dave Little博士在采访中告诉EHRIntelligence。"在简的案例中,我们看到一个医科学生能够带着一个有针对性的问题,从1.22亿的患者数据中找到她所需要的数据来回答这个问题。这在研究界历来是闻所未闻的。"
Hinkle的研究发现,儿科病人从COVID-19引发心肌炎的可能性是COVID-19疫苗的三到五倍。她告诉EHRIntelligence,她最初关注的是一项使用大数据工具来分析阻塞性睡眠呼吸暂停的研究。然而,当关于心肌炎是否是COVID-19疫苗接种的不良反应的问题出现时,Hinkle和她的研究导师、公共卫生硕士、医学博士、MetroHealth 公司的首席医疗信息官David Kaelber转移了他们的重点。
我们很高兴地宣布我们的抢先体验计划的最新成员 - Health Data De-ID工具。
该工具将根据 *HIPAA 安全港* 对结构化临床数据进行去标识化处理,并允许在需要时进行重新标识。它使用 InterSystems 的 *SDA* 规范格式,该格式用于我们从一种格式到另一种格式的所有标准转换,例如 *HL7* 到 *CDA*、*HL7* 到 *FHIR* 等。虽然该工具使用 XSLT 转换来提高性能原因,它提供了辅助方法,您不需要成为 XSLT 专家的情况下更轻松地调整开箱即用的去标识化规则。

Health Data De-ID 适用于任何 InterSystems 产品,从 InterSystems IRIS for Health 到 Health Connect 再到 Unified Care Record。
您可以在此处加入抢先体验计划 - [如何注册抢先体验计划 (EAP)]?我们需要您的反馈,因此请在您完成整个过程或遇到任何问题时与我们联系。
这是InterSystems 2022年全球峰会上来自客户 Cognetivity Neuroscience 的分享。InterSystems IRIS 数据平台助力 Cognetivity Neurosciences 打造脑健康管理评估工具CognlCA。CognlCA 能够在正确的时间将数据提供给正确的人,推动脑健康评估、筛查和管理的节点前置,从而促进脑健康管理的普惠化。
嗨,InterSystems 开发人员!
最近我更新了FHIR 开发模板,它发布了一个 IPM 包fhir-server ,使 InterSystems FHIR 服务器的设置成为一个微不足道的手动或自动或编程的程序,只需一条命令。
请参阅下文,了解如何从中受益。

TLDR
USER>zpm "install fhir-server"
以下所有详细信息。
物联网( IoT ,Internet of things )即“万物相连的互联网”,是互联网基础上的延伸和扩展的网络,将各种信息传感设备与网络结合起来而形成的一个巨大网络,实现任何时间、任何地点,人、机、物的互联互通
物联网是新一代信息技术的重要组成部分,IT行业又叫:泛互联,意指物物相连,万物万联。由此,“物联网就是物物相连的互联网”。这有两层意思:第一,物联网的核心和基础仍然是互联网,是在互联网基础上的延伸和扩展的网络;第二,其用户端延伸和扩展到了任何物品与物品之间,进行信息交换和通信。因此,物联网(Internet of Things,简称IoT)是指通过各种信息传感器、射频识别技术、全球定位系统、红外感应器、激光扫描器等各种装置与技术,实时采集任何需要监控、 连接、互动的物体或过程,采集其声、光、热、电、力学、化学、生物、位置等各种需要的信息,通过各类可能的网络接入,实现物与物、物与人的泛在连接,实现对物品和过程的智能化感知、识别和管理。物联网是一个基于互联网、传统电信网等的信息承载体,它让所有能够被独立寻址的普通物理对象形成互联互通的网络在https://baike.baidu.com/item/物联网/7306589?
您好,有没有一种简单的方法可以导出与Production相关的所有内容并在另一个实例中导入?
例如导出Production保存的 db、ns、映射、webapp 相关、资源、角色等
系统:windows 内存:64GB
环境:jdk11 代码:
IRISConnection conn = (IRISConnection)
DriverManager.getConnection
("jdbc:IRIS://localhost:" + superserverPort + "/" + namespace, username, password);
IRIS iris = IRIS.createIRIS(conn);
String getLastFullBackupInfo = iris.classMethodString("Backup.General", "GetLastFullBackupInfo");
System.out.println(getLastFullBackupInfo);
String getAbortStatus = iris.classMethodString("Backup.General", "GetAbortStatus");
System.out.1.在SQL网关通过odbc连接第三方的数据库,第三方的odbc驱动网上只有命令下载的,没有直接的包,这种情况下怎么弄呢 ,jdbc连接的话,jar的类路径怎么填写.png)
您好,我们的客户仍在使用较旧的 cache 2016.1 版本,我们这边需要适配 python 作为 client 连接 cache 进行一些操作。 但是查阅相关文档后发现,需要自行编译安装 python 驱动。
我们手头上只有 windows 版本的 cache 安装包,但是我们python适配的环境是 linux。 所以我想找一下是否有 cache 现有的 python 安装包或者 cache linux 安装版本,我自行安装。
谢谢。
在应用程序开发时,我们使用的大多数开发语言都是面向对象编程 object-oriented programming (OOP)语言,例如大家熟悉的Java、.NET。而TIOBE的2023年2月的最新开发语言流行排行榜上,前5大语言都是面向对象编程语言,连排名第六的Visual Basic都有了越来越多的OO特性:

为什么使用面向对象编程这么流行?因为它有诸多优势:
而这4个优势正是面向对象编程的核心特征。
虽然面向对象编程是绝对的主流,但数据通常被保存到关系型数据库中。关系型数据库的行和列二维关系与复杂的对象并不匹配:
** 2018 年 2 月 12 日修订
虽然本文是关于 InterSystems IRIS 的,但它也适用于 Caché、Ensemble 和 HealthShare 发行版。
介绍
内存以页为单位进行管理。 Linux 系统上的默认页面大小为 4KB。 Red Hat Enterprise Linux 6、SUSE Linux Enterprise Server 11 和 Oracle Linux 6 引入了一种根据系统配置提供 2MB 或 1GB 大小的增加页面大小的方法,称为 HugePages。
起初 HugePages 需要在启动时分配,如果管理或计算不当可能会导致资源浪费。因此,各种 Linux 发行版引入了默认启用 2.6.38 内核的Transparent HugePages。这是一种自动创建、管理和使用 HugePages 的方法。以前的内核版本也可能具有此功能,但可能未标记为 [always] 而是设置为 [madvise]。
Transparent Huge Pages (THP) 是一种 Linux 内存管理系统,它通过使用更大的内存页面来减少在具有大量内存的机器上进行Translation Lookaside Buffer (TLB) 查找的开销。然而,在当前的 Linux 版本中,THP 只能映射单个进程的堆栈空间。
速度、规模和安全性是我们真正热衷的领域,这也正是优秀的E级方程式赛车手所追求的。在InterSystems 2022年全球峰会上,InterSystems 数据平台产品管理总监Jeffery Fried 及其团队分享了InterSystems IRIS数据平台的新功能与产品规划。基于InterSystems IRIS数据平台,我们为用户构建优秀的“赛车”,内置的一系列非凡功能和高效周全的“维修技师”,确保“赛车手”能够在竞争激烈的赛道中心无旁骛地飞速向前!
基于FHIR的数据利用,轻松应对数据共享需求。
InterSystems IRIS数据平台支持列存储,提供更优存储方案,保障系统稳定运行。
开发者您好!
这里向介绍@Lorenzo Scalese的OpenAPI-Suite (一个用于从OpenAPI 3.0生成 ObjectScript 代码的工具集)。这个工具集在 2023 年 InterSystems 开发工具大赛的21 个参赛作品中获得专家提名第三名。
目前 IRIS 最高支持OpenAPI 2.0 ,但是这个工具支持 OpenAPI 3.0 !
提供的功能如下。
关于各个功能的详细介绍,请参考@Lorenzo Scales撰写的文章《 OpenAPI Suite - Part 1 》和《 OpenAPI Suite - Part 2 》。
在本文中,我尝试了 1 个功能。其中,以下的应对方案非常好。
几周前我尝试了 OpenAI GPT 的编码模型,看看它是否可以在医疗保健系统之间进行一些消息转换。它肯定可以,在相当大的程度上。
已经将近 3 周了,对于 ChatGPT 来说是很长很长的时间,所以我想知道它现在成长得有多快,以及它是否可以为我们做一些集成工程师的工作,例如它是否可以创建一个 InterSystems COS DTL将 HL7 转换为 FHIR 信息?
在不到一两分钟的时间内,我立即得到了一些答案。
首先我想测试一下我是在和它背后的正确“人”说话
问题一:如何将HL7 V2.4报文转为FHIR STU3?
ChatGPT:
将 HL7 V2.4 消息转换为 FHIR STU3 涉及多个步骤,因为这两个标准具有不同的数据模型和结构。以下是该过程的高级概述:
各位开发者,大家好!
对我来说,关于 ObjectScript 的最痛苦的一件事是输入 ##class(Class).Method() 以在代码或终端中调用类方法。 为解决这个问题, 我甚至提出了一个在 ObjectScript 中简化它的想法。
但是 VSCode ObjectScript中有一个刚刚引入到插件中的新功能 – 复制调用Copy Invocation!
只需将 **Copy Invocation**(复制调用)链接悬停在代码中的每个类方法上方,点击它,该调用就会被复制到缓冲区:

将其粘贴到想要执行的任何位置!!
USER>w ##class(dc.sample.ObjectScript).Test()就到这儿!
这里是显示其运作方式的[视频]。
非常感谢 VSCode 贡献者!
祝您编程愉快!
InterSystems 产品支持的平台 - 版本更新 (2023 年 2 月
我们经常收到有关 InterSystems IRIS 数据平台支持的平台和框架的问题。此更新旨在分享最近的更改以及我们对即将发生的更改的当前决策。(预测未来是一项棘手的工作,不应将此视为我们对未来支持平台和框架的承诺。)
我们计划大约每 3 个月发布一次此类更新,然后在一年内重新评估。如果您觉得此更新有用,请告诉我们!我们很感激您的建议。
关于更新……
InterSystems 纠正了一个可能导致 InterSystems IRIS® 和 Caché 无法在 Windows 上利用大页共享内存的问题,即使这些产品得到的信息是已分配到了大页内存。这会对系统性能产生不利影响。
该问题是由于 Windows 10 中的一个更改引起的,该更改需要 InterSystems IRIS® 和 Caché做相应的修改。请注意,此问题还会影响所有基于 InterSystems IRIS® 或 Caché 的 InterSystems 产品。以下版本的 Windows 会出现此问题:
Windows 10(版本 1703 及以上)
Windows 11
Windows Server 2019
Windows Server 2022
Windows Server 2016 不受影响。
作为参考,此问题的更正标识为 RJF533。此更正将包含在所有未来的 InterSystems IRIS® 和 Caché 发行版中。该更正也作为受支持产品版本的补丁提供。
InterSystems 建议采取以下措施以避免潜在的严重系统性能下降: