文章 Hao Ma · 十一月 22, 2022 阅读大约需 3 分钟 ObjectScript的命名规范 命名规范,英文叫"name convention", 是对写代码取名字的一些”共识“。也就是说, 你可以不遵守,但大家都选择了遵守,照者一个规范来。为什么呢?因为有社区,大家要共享代码, 你不照着规矩来, 别人会鄙视你, 懒的用你的代码。 ObjectScript以前没什么社区,大家各写各的, 使用ObjectScript的大公司也没谁把自己的代码拿出来共享。因此,个人开发者基本就是参考官方InterSystems的命名规范。举个例子, 比如以下的代码: Class Ens.Util.ResponseBodyMethods { property NoFailWhileDisconnected as %Boolean; property FirstName as %String; parameter SETTINGS = "ReplyCodeActions"; method OnKeepalive(pAdapterStatus As %Status) as %String { return "okay" } } 我来简单总结一下: #开源 #其他 1 2 0 248
文章 Hao Ma · 十一月 26, 2022 阅读大约需 4 分钟 ZPM介绍(3) 建立私服(Porxy-Registry) 这张图解释了您的私服是怎么工作的, 整篇文章在这里: Proxy-Registry 搭建私服 您需要有一台自己的的服务器, 在上面安装IRIS, zpm, 然后用zpm去下载另一个软件包“zpm-registry"。象这样 #教程 #新手 #文档 2 0 0 196
文章 he hf · 十月 8, 2022 阅读大约需 6 分钟 10分钟快速开发一个连接到InterSystems IRIS数据库的C#应用 安装InterSystems IRIS数据库的ODBC驱动,在Windows系统中配置数据源后,可以使用Microsoft Visual Studio 开发工具 中的服务器资源管理器很方便地连接到InterSystems IRIS数据库服务器,利用数据库连接的可视化视图,可以非常方便快捷地进行连接到InterSystems IRIS数据库的应用开发。本文将展示一个利用以上方式实现的例子,开发工具为Microsoft Visual Studio 2019,开发语言为C#,10分钟快速开发实现一个连接到InterSystems IRIS数据库的C#应用,在本例子中,可以通过选择日期和科室,查询指定日期和科室的就诊日志。 1、在成功安装InterSystems IRIS数据库的ODBC驱动后,从Windows的“控制面板”中选择“管理工具”,在“管理工具”中选择“ODBC数据源”。 #.NET #ODBC #SQL #开发环境 #数据库 #Caché #InterSystems IRIS 17 6 4 1.3K
公告 Claire Zheng · 十一月 17, 2022 创意社区新闻摘要 | InterSystems Ideas News! Hi 开发者社区的成员们,大家好! 欢迎关注我们第一期 InterSystems Ideas News! #InterSystems 想法门户 0 0 0 104
文章 王喆 👀 · 十一月 17, 2022 阅读大约需 5 分钟 使用VSCode开发IRIS 经过一段时间的学习和使用本文总结了一些使用VsCode开发的使用方法,本文偏向于应用但会对少量的我知晓的原理进行一部分解释。 参考教程链接:https://cn.community.intersystems.com/node/488611 #ObjectScript #InterSystems IRIS 0 6 2 978
文章 Hao Ma · 十一月 14, 2022 阅读大约需 7 分钟 ZPM介绍(1) ZPM介绍 有Developer听闻了InterSystems的包管理器ZPM, 希望我能介绍一下。正好刚刚看到一个开发者论坛的新闻: Open Exchange ZPM is now InterSystems Package Manager , 觉得更有必要了。 zpm是什么 简单说:zpm, 全称InterSystems ObjectScript Package Manager, 是一个包管理器, 开发者是Nikolay Soloviev和Dmitry Maslennikov。它先是在开发者社区里得到认可,以至于InterSystems开发者社区最近的一些比赛,要求参赛作品用zpm打包。然后就有了上面的链接的内容:InterSystems决定把它做为自己官方的打包工具, 将它改名字叫IPM(InterSystems Package Manager),同时保持它的开源状况不变。 #开发环境 #VSCode #其他 3 1 0 287
公告 Claire Zheng · 十一月 2, 2022 礼品全部寄出,大赛落下帷幕!一起期待下一次InterSystems开发者社区精彩活动! 各位开发者社区的同学们,大家好! 在各位社区同学的大力支持下,我们的“首届技术征文大赛”圆满完赛!在过去一周多的时间里,我们整理了各类奖项及礼品,目前已经全部寄出! 最新寄出的是开发者征文大赛获奖者的奖品,请以下同学留意查收,如未收到快递信息,请及时与我们联系: @Zhe Wang @姚 鑫 #开发者社区官方 2 3 0 120
文章 Cryze Zhang · 十一月 10, 2022 阅读大约需 6 分钟 Caché 字符编码自动判断 Caché 字符编码自动判断 先说几个场景: 使用文件字符流打开一个文本文档,但是我不确定是以UTF8编码的还是GB18030,所以就无法准确设置TranslateTable,就导致了中文乱码问题。 有一个文件下载的csp,其中文件名参数可能是中文,如果在一个UTF8编码的界面直接调用时,后台取到的文件名就会是乱码。 接收到字节流后需要转成字符流读取内容,但是无法确定编码格式,就无法准确的转成字符。 以上几个场景虽然大多都可以提前做好约定解决,但是可能有历史原因或者种种情况,需要我们自己能够解决,于是就有了下面的故事。 基础 首先我方系统使用GB18030编码,然后碰到的情况大多都是对方可能是UTF8编码,所以主要来解决识别字节流是不是UTF8编码的。 然后查了一个UTF8编码格式 #Caché 1 0 0 335
公告 Claire Zheng · 十一月 8, 2022 欢迎第500名社区会员! Hi!大家好! 我们迎来了第500名开发者社区会员!欢迎 @Min Lu!请关注站内私信,领取你的幸运礼品哟(^U^)ノ~YO #开发者社区官方 0 0 0 85
文章 Claire Zheng · 十一月 7, 2022 阅读大约需 3 分钟 InterSystems开发者关系主管Dean:集成FHIR,改变游戏规则 作为开发者社区的一员,多年来我亲眼目睹了访问和共享数据的障碍是如何阻碍创新的。在与医疗科技领域的初创公司和大企业合作时,我看到了封闭的数据是如何阻碍了我们的合作,那种我们都意识到的对提供高质量医疗服务至关重要的合作。 #FHIR #其他 0 0 0 125
文章 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 523
公告 Claire Zheng · 十一月 2, 2022 广而告之!寻找第500名InterSystems开发者社区(中文版)会员! Hi!大家好! 截至11月3日中午,我们的开发者社区会员共495人!我们准备了一份惊喜礼品,准备送给第500名开发者社区会员! 那么,谁是第500名幸运的开发者社区成员呢?我们拭目以待!(*^▽^*) #开发者社区官方 1 0 0 156
文章 John Pan · 九月 9, 2022 阅读大约需 5 分钟 论集成标准的选择对医院信息集成平台建设的影响 集成平台的关键在于解决系统之间的互联互通和互操作性的问题,是一个多厂商、多协议的体系结构。医院在集成平台实施的过程中,面临的第一件重要的事情就是交互标准的选择,目前的建设中,分为两队:非标准队和标准队。非标准队一般采用视图抓取、xml格式、json等等的自定义格式,标准队一般采用HL7 V3、HL7 V2、FHIR、DICOM等医疗领域标准,下面会简单介绍一下各种方式以及实施落地的难易程度。(以下内容中将以难易程度总分5★来表示,星数量越多代表难度越高) 1、非标准队 与其说非标准,不如定义为院内交互标准,交互仅限于院内,是一种很有限的互操作,而且定制程度很高,需要很好地把握系统的内部知识。方案缺乏通用性,难以规模推广。但由于其技术门槛较低,学习成本较低,在集成系统数量较少时不失为一种经济快速的方法。 #FHIR #HL7 #文档 23 2 1 448
文章 YuHao Wan · 十一月 1, 2022 阅读大约需 4 分钟 Caché实现SM3密码杂凑算法 0. 算法概述 SM3密码杂凑算法是中国国家密码管理局2010年公布的中国商用密码杂凑算法标准。该算法于2012年发布为密码行业标准(GM/T 0004-2012),2016年发布为国家密码杂凑算法标准(GB/T 32905-2016)。 SM3适用于商用密码应用中的数字签名和验证,是在[SHA-256]基础上改进实现的一种算法,其安全性和SHA-256相当。SM3和MD5的迭代过程类似,也采用Merkle-Damgard结构。消息分组长度为512位,摘要值长度为256位。 整个算法的执行过程可以概括成四个步骤:消息填充、消息扩展、迭代压缩、输出结果。 1. 消息填充 SM3的消息扩展步骤是以512位的数据分组作为输入的。因此,我们需要在一开始就把数据长度填充至512位的倍数。具体步骤如下: 1、先填充一个“1”,后面加上k个“0”。其中k是满足(n+1+k) mod 512 = 448的最小正整数。 2、追加64位的数据长度。 #加密 #Caché 1 2 0 389
文章 Chang Liu · 九月 22, 2022 阅读大约需 2 分钟 在国产系统上安装Healthconnect2021 1,准备 本次安装环境:Kylin-Server-10-SP2-Release-Build09-20210524-x86_64.iso 安装系统适配的对应版本:HealthConnect-2021.1.2.338.0-lnxubuntux64.tar.gz;ISCAgent-2021.1.2.338.0-lnxubuntux64.tar.gz 系统语言选择:English(必要) #新手 #部署 #文档 19 8 0 390
文章 Michael Lei · 十一月 2, 2022 阅读大约需 1 分钟 InterSystems IRIS医疗版的“专精特新” 门为医疗行业打造,深度整合国内外医疗行业标准,专有技术服务医疗行业44年,可能是全球最早从事医疗信息化的公司; 耕细做打磨数十年的稳定、可靠、易用、可扩展的数据平台; 色鲜明,不唯技术、终生负责、以解决客户问题为核心的特色企业文化; #InterSystems 业务解决方案和架构 #InterSystems IRIS for Health 0 0 0 64
公告 Claire Zheng · 十一月 2, 2022 【动画视频】要想运维功夫硬,日常应该怎么做? 构建系统夯基础,日常运维是保障。运维工作杂又细,业务连续是关键。等保评级都看它,日常练兵保安全。日常运维很重要,想要干好不容易。要想运维功夫硬,日常应该怎么做? #视频 #InterSystems IRIS for Health 1 0 0 101
文章 Claire Zheng · 十一月 1, 2022 阅读大约需 1 分钟 【动画视频】医院需要什么样的互联互通平台? 医院管理者、信息中心、业务骨干,每个角色都有独特的业务诉求,InterSystems IRIS医疗版互联互通套件专为国内用户设计,截至2021年,InterSystems技术已助力一百余家医院通过四级及以上医院信息互联互通标准化成熟度评级,其中,五乙用户占全国30%以上。 #视频 #InterSystems IRIS for Health 0 0 0 91
文章 Michael Lei · 十月 31, 2022 阅读大约需 3 分钟 行业前沿系列翻译文章--EPIC 电子病历系统: FHIR, API, 互操作性和资源 众说周知,EPIC 是电子病历厂商中当之无愧的领导者,本文让我们看看EPIC是如何玩转FHIR的,并进一步了解其互操作性方法、资源和API工具。 几十年来,EPIC和其他主要的EHR供应商一直在围绕着互操作性作斗争,有时候互相容忍,有时也得接受(开放接口)。 今天,大多数电子病历厂商已经针对市场和监管的压力采取了行动,采用FHIR API标准,扩大病人对医疗记录的访问。 但在早期,EPIC和其他竞争对手争先恐后地抢占市场份额,为了成为院内系统的主导者,与其他厂商分享数据、给别人提供数据访问似乎是自我毁灭。 那么今天,EPIC在FHIR API、SMART on FHIR 应用市场、患者访问和互操作性战略方面的立场如何? 以下是关于EPIC在FHIR API和互操作性上提供的简单介绍和链接。 EPIC 在FHIR API和互操作性上的战略和资源 EPIC互操作性的方法和选择 大多数EPIC集成的重点是通过EPIC系统提供扩展访问,但不一定与其他厂商共享。 #InterSystems 业务解决方案和架构 #InterSystems IRIS for Health 0 0 0 535
文章 Louis Lu · 九月 21, 2022 阅读大约需 2 分钟 Production 中调用 web service 组件时有关超时参数的设置 我在这里和大家分享下在 Interoperability 的接口开发中,调用Web Service接口的几个超时参数的设置经验。 赶时间的同学可以直接拉到文章最下面看结论就好。 1.实验过程 首先我设计了一个Web service的服务器端,强制在接收到请求后 8s 返回结果。 在客户端我设置了响应超时7s, 重试间隔5s, 故障超时23s,如图: 在客户端、服务器端均设置了SOAP Log 记录接收和发送的内容 #InterSystems IRIS 1 1 0 127
文章 Tete Zhang · 十月 26, 2022 阅读大约需 3 分钟 运行池大小配置的解读 “池大小”(PoolSize)设置的值决定了一个组件的作业的量和启动方式。在这篇文章中我们将具体讨论对于不同类型的组件来说“池大小”设置的可能值和这些值所代表的含义。 Pool Size = 1 对于所有的组件来说,运行池大小为1的含义都是一样的: 该组件有且只有一个作业,单独运行该组件的代码,顺序处理发送到该组件的消息(FIFO)。 Pool Size > 1 对于业务进程(BP)和业务操作(BO)来说,当运行池大小大于1时,该组件将运行多个作业(作业数=运行池大小设置数)。每个作业都只运行该组件的代码,但消息处理的顺序将被打乱。将运行池的大小设为大于1的值可以在一定程度上提升组件处理消息的性能,但是每个作业的性能还是受限于系统资源的,所以并不是说组件的性能可以随着运行池的大小增加而无限提升。 对于轮询类业务服务(Polling BS)来说,当运行池大小大于1时,该服务也将运行多个作业(作业数=运行池大小设置数)。但这种配置会导致多个进程对轮询结果产生竞争(race condition),所以一般情况下轮询服务不应将运行池大小设为大于1的数值。 #FTP #REST API #SOAP #开发运维 #调试 #Ensemble #InterSystems IRIS for Health 1 1 0 240
问题 Luo Haimianbaobao · 十月 28, 2022 cache数据库建表的时候关于字段长度MAXLEN的问题 在Cache数据库建表的时候,在定义字段长度的时候,长度设置为1000和长度设置为2000在存储一个长度为1000的值的时候占用的存储空间是否一致。是否在建表的时候建议把字段长度设置为MAXLEN="" #Caché 0 1 0 173
文章 Michael Lei · 十月 27, 2022 阅读大约需 1 分钟 2022最新第三方性能测试报告摘要! WinterCorp 性能测试报告摘要 InterSystems的性能测试方法用来衡量 "许多运行状态下数据库应用的关键构件 "是有效的。 与AWS Aurora MySQL、MariaDB、Microsoft SQL Server、Oracle和PostgreSQL相比,InterSystems IRIS显示出 "巨大的性能优势"。 InterSystems IRIS的插入速度是其他系统的1.7到9倍。InterSystems IRIS的数据速率是1.1到600倍。在插入率和查询率的组合上,没有其他系统在性能上能接近于InterSystems IRIS。 InterSystems IRIS的效率是AWS Aurora MySQL的2.7到3.1倍,而且随着集群中节点数量的增加,效率优势也越来越大。 #性能 #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 126
文章 Tete Zhang · 十月 26, 2022 阅读大约需 2 分钟 如何导出导入集成平台组件和production? 上线一个新的集成平台production或者组件是需要很多精力的,用户常常需要对每一个组件所满足的需求和所能提供的功能,使用到的协议,以及组件对系统资源的调用有深入细致的了解。在配置好一个production之后,您可能需要将这个production推送到测试或者正式环境,或者需要将一个写好的组件代码应用到不同的项目上。这些时候,production的导出功能可以方便您传输production或组件的配置和代码。 导出 需要导出production时,您可以移步到管理门户 - Interoperability - 相应的命名空间 - 列表 - Production 页面,选择您需要导出的production,再点击页面上的导出键进行导出。如下图1所示: 在弹出的对话框中,您可以选择在导出文件中您想包括的内容。如下图2所示: #开发运维 #数据导入和导出 #系统管理 #部署 #Ensemble #InterSystems IRIS for Health 0 0 1 185
公告 Claire Zheng · 十月 25, 2022 【重要】恭喜1024活动中奖者!请获奖者及时提交信息,以便我们及时与您沟通奖品领取 各位开发者社区的同学们,大家好! 10月24日晚,我们成功举办了“首届技术征文大赛线上分享会”,我们在这次活动中邀请了多位征文大赛的参赛同学分享技术心得,同期举办了多轮抽奖,以下是各个奖品的获奖名单,我们恭喜这些获奖者,同时提醒获奖者请务必通过二维码登记奖品领取信息(如已登记请忽视)。 #开发者社区官方 0 0 0 116
文章 water huang · 九月 21, 2022 阅读大约需 4 分钟 对 %XML.PropertyParameters类的探索 日常工作中,我们使用xml 应该是比较多的,早期的ensemble或者cache,对JSON的支持不是很好,但是对xml支持比较好。因此早期的接口方式中,webservice+xml的方式很常用。而对象导出为xml最简单的方式就是类继承 %XML.Adaptor。继承该类后,就可以使用很多xml的特性,以满足各种需求。虽然看不到对象转为xml的具体实现,但是配置了参数,就可以实现更多的效果。那么想自定义一些参数呢?如果有人打开过它的定义,可以看到类上面有个 “ PropertyClass = %XML.PropertyParameters”,那么我们其实在需要xml参数的同时,又要自定义参数,就可以自己写个属性类,继承于%XML.PropertyParameters。 #API #Caché #Ensemble 15 4 0 209
公告 Claire Zheng · 十月 24, 2022 获奖名单公布!一起来关注InterSystems开发者社区中文版首届技术征文大赛 各位开发者社区的同学们,大家好! 我们的🏆InterSystems开发者社区中文版首届技术征文大赛🏆(←点击链接进入参赛页面,浏览所有参赛文章)已经结束,此次大赛收到了来自20名参赛者的30篇参赛文章,感谢大家的积极参与! 以下是获奖名单! #IRIS竞赛 #开发者社区官方 0 0 0 205
文章 Lilian Huang · 十月 24, 2022 阅读大约需 8 分钟 自动部署自适应分析Adaptive Analytics 当我们使用IRIS时,我们通常有能力快速的部署一个现成使用的BI基础模块(数据、分析立方体和IRIS BI仪表盘)。当我们开始使用Adaptive Analytics时,我们通常希望有同样的功能。Adaptive Analytics拥有我们需要的所有工具。文档中包含了对如何使用开放的网络API的描述。用户界面和引擎之间的所有交互也都是通过内部的Web API发生的,并且可以被发射出来。 有必要将这两个过程自动化:在容器中部署Adaptive Analytics和直接部署到服务器系统。为此,最简单的方法是使用bash脚本来处理API。我们唯一需要的第三方应用程序是一个名为jq的JSON文件解析器。你可以使用以下命令来安装它: #自适应分析(Adaptive Analytics) #InterSystems IRIS #InterSystems IRIS BI (DeepSee) #InterSystems IRIS for Health #InterSystems 想法门户 1 0 0 135
公告 Claire Zheng · 十月 23, 2022 Happy 1024!欢迎参加“首届技术征文大赛线上分享会” 开发者社区的同学们,1024快乐! 今晚19:30,我们将通过“InterSystems首届技术征文大赛线上分享会”发布获奖名单、进行征文作品分享&点评、探讨热门话题,同期还将举办多轮抽奖!欢迎参会,锁定#腾讯会议 #IRIS竞赛 #开发者社区官方 0 0 0 76