文章 姚 鑫 · 六月 18, 2021 阅读大约需 6 分钟 第十一章 重新定义读取器处理相关对象的方式 第十一章 重新定义读取器处理相关对象的方式 重新定义读取器处理相关对象的方式 当%XML.Reader找到与启用了XML的类相关的XML元素时,读取器会调用该类的XMLNew()方法,后者又会在默认情况下调用%New()。也就是说,当读取器找到相关元素时,它会创建相关类的新对象。新对象由从XML文档读取的数据填充。 可以通过在启用XML的类中(或在自己的自定义XML适配器中)重新定义XMLNew()来自定义此行为。例如,此方法可以改为打开该类的现有实例。然后,现有实例接收从XML文档读取的数据。 以下示例显示如何修改XMLNew()以使用XML文档中的新数据更新现有实例。 在这两个示例中,为简单起见,我们假设XML文档中的一个节点包含一个ID,我们可以将该ID与类的范围中的ID进行比较。当然,我们可以用其他方式将XML文档与现有对象进行比较。 #Caché 0 0 0 86
问题 tie yu · 六月 17, 2021 为Caché 进行 Prometheus 监控时,配置好application /metrics后, Prometheus 连接报错“server returned HTTP status 404 Not Found”是什么原因 为Caché 进行 Prometheus 监控时,配置好应用程序/metrics, Prometheus配置文件配置完成后,抓取不到cache监控数据,提示“server returned HTTP status 404 Not Found”。请问是什么原因? #System Alerting and Monitoring (SAM) #Caché 0 1 0 493
文章 姚 鑫 · 六月 17, 2021 阅读大约需 5 分钟 第十章 XML元素和属性 第十章 XML元素和属性 检查必需的元素和属性 默认情况下,next()方法不检查是否存在与标记为必需的属性相对应的元素和属性。要使读取器检查此类元素和属性是否存在,请在调用Next()之前将读取器的CheckRequired属性设置为1。出于兼容性原因,此属性的默认值为0。 如果将CheckRequired设置为1,并且调用next(),而导入的XML缺少必需的元素或属性,则next()方法会将sc参数设置为错误代码。例如: #Caché #InterSystems IRIS 0 0 0 121
问题 e e · 六月 17, 2021 cache的webservice soap不会消耗license,csp要怎样也能不消耗license? cache的webservice soap不会消耗license,csp要怎样也能不消耗license? #CSP #SOAP #Caché 0 0 0 185
文章 Michael Lei · 六月 16, 2021 阅读大约需 1 分钟 几个有意思的IRIS树莓派应用 https://openexchange.intersystems.com/package/sql-rest-api https://openexchange.intersystems.com/package/ObjectScript-Package-Manager (ZPM is the most useful tool for installing Open Exchange Applications https://openexchange.intersystems.com/package/zpm-registry This will show you a list of OEX apps that are zpm ready #InterSystems IRIS #Open Exchange 0 0 0 94
文章 姚 鑫 · 六月 16, 2021 阅读大约需 7 分钟 第九章 将XML导入到对象中 第九章 将XML导入到对象中 本章介绍如何使用%XML.Reader将XML文档导入到 IRIS对象中。 注意:使用的任何XML文档的XML声明都应该指明该文档的字符编码,并且文档应该按照声明的方式进行编码。如果未声明字符编码, IRIS将使用前面的“输入和输出的字符编码”中描述的默认值。如果这些默认值不正确,请修改XML声明,使其指定实际使用的字符集。 还可以使用%XML.Reader读取任意XML文档并返回DOM(文档对象模型)。 创建XML读取器概述 IRIS提供了一些工具,用于读取XML文档并创建与该文档的元素相对应的启用XML的 IRIS对象的一个或多个实例。基本要求如下: 该对象的类定义必须扩展%XML.Adaptor。除了少数例外,该对象引用的类还必须扩展%XML.Adaptor。 提示:如果相应的XML模式可用,可以使用它来生成类(以及任何支持的类)。 #Caché #InterSystems IRIS 0 0 0 156
公告 Claire Zheng · 六月 16, 2021 6月19日直播报名 | 国内外互联互通标准解读与实践 为了解国内外最新的互联互通标准,共同助推我国卫生信息互联互通标准化成熟度测评工作,指导各地医院信息平台的建设,《中国卫生信息管理杂志》社决定召开国内外互联互通标准解读与实践线上交流会。会议由《中国卫生信息管理杂志》社主办,InterSystems中国协办,欢迎报名参会! #活动 #其他 0 0 0 115
问题 Yufeng Li · 六月 14, 2021 IRISHealth-2019.1.0.510.4 能在 CentOS 7.5上部署吗? IRISHealth-2019.1.0.510.4 能在 CentOS 7.5上部署吗? #InterSystems IRIS for Health 0 1 0 114
公告 jieliang liu · 六月 15, 2021 InterSystems IRIS、IRIS for Health和HealthShare Health Connect 2021.1现已正式发布。 InterSystems非常高兴地宣布,InterSystems IRIS数据平台、InterSystems IRIS for Health和HealthShare Health Connect的2021.1版本现已向我们的客户和合作伙伴全面开放。 这个版本的为开发者提供了更大的自由度,使他们可以用自己选择的编程语言在服务器端和客户端建立快速和强大的应用程序。这个版本还使用户能够通过新的和更快的分析能力更有效地消费大量的信息。 #版本 #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 214
文章 姚 鑫 · 六月 15, 2021 阅读大约需 5 分钟 第八章 Other Options of the Writer 第八章 Other Options of the Writer Other Options of the Writer Canonicalize() 方法的作用是:以规范化的形式编写XML节点。此方法具有以下签名: #Caché #InterSystems IRIS 0 0 0 96
文章 Michael Lei · 六月 15, 2021 阅读大约需 8 分钟 InterSystems 最佳实践之--LVM PE 条带化使超融合存储吞吐量最大化 本帖概述了通过为 InterSystems 数据平台(InterSystems IRIS、Caché 和 Ensemble)上的数据库磁盘创建 LVM 物理盘区 (PE) 条带来实现低延迟存储 IO 的最佳实践配置,并提供了有用链接。 一致的低延迟存储是获得最佳数据库应用程序性能的关键。 例如,对于在 Linux 上运行的应用程序,经常在数据库磁盘中使用逻辑卷管理器 (LVM) ,因为它能够扩展卷和文件系统,或者为在线备份创建快照。 对于数据库应用程序,在使用 LVM PE 条带化逻辑卷的情况下,并行写入还可提高数据 I/O 的效率,从而有助于提高大规模连续读取和写入的性能。 #InterSystems 业务解决方案和架构 #Red Hat Enterprise Linux (RHEL) #平台 #系统管理 #部署 #Caché #InterSystems IRIS 0 0 0 412
文章 姚 鑫 · 六月 13, 2021 阅读大约需 6 分钟 第六章 控制名称空间的使用 第六章 控制名称空间的使用 控制名称空间的使用 如将对象投射到XML中所述,可以将类分配给名称空间,以便相应的XML元素属于该名称空间,还可以控制类的属性是否也属于该名称空间。 将类中的对象导出为XML时,%XML.Write提供其他选项,例如指定元素是否为其父级的本地元素。本节包括以下主题: 默认情况下,%XML.Writer如何处理命名空间 如何指定本地元素是否合格 如何指定元素是否为其父元素的本地元素 如何指定属性是否合格 命名空间分配方式的摘要 注意:在InterSystems IRIS XML支持中,可以按类指定名称空间。通常,每个类都有自己的命名空间声明;但是,通常只需要一个或少量的命名空间。还可以在逐个类的基础上指定相关信息(而不是以某种全局方式)。这包括控制元素是否为其父元素的本地元素以及子元素是否合格的设置。为简单起见,建议使用一致的方法。 #Caché #InterSystems IRIS 0 0 0 129
文章 姚 鑫 · 六月 12, 2021 阅读大约需 6 分钟 第五章 生成XML元素 第五章 生成XML元素 生成XML元素 如果使用RootElement()启动文档的根元素,则负责生成该根元素内的每个元素。有三个选择: 将对象生成为元素 可以从InterSystems IRIS对象生成输出作为元素。在本例中,使用object()方法,该方法写入支持XML的对象。输出包括该对象中包含的所有对象引用。可以指定此元素的名称,也可以使用在对象中定义的默认值。 只能在RootElement()和EndRootElement()方法之间使用object()方法。 此示例为给定启用XML的类的所有已保存实例生成输出: #Caché #InterSystems IRIS 0 0 0 110
文章 姚 鑫 · 六月 11, 2021 阅读大约需 4 分钟 第四章 添加命名空间声明 第四章 添加命名空间声明 添加命名空间声明 默认行为 在%XML.Writer会自动插入命名空间声明,生成命名空间前缀,并在适当的地方应用前缀。例如,以下类定义: Class Sample.Person Extends (%Persistent, %Populate, %XML.Adaptor) { Parameter NAMESPACE = "http://www.yaoxin.com"; } 如果导出此类的多个对象,则会看到类似以下内容: #Caché #InterSystems IRIS 0 0 0 138
文章 姚 鑫 · 六月 10, 2021 阅读大约需 4 分钟 第三章 指定输出的字符集 第三章 指定输出的字符集 指定输出的字符集 若要指定要在输出文档中使用的字符集,可以设置Writer实例的Charset属性。选项包括“UTF-8”、“UTF-16”以及InterSystems IRIS支持的其他字符集。 Writing the Prolog XML文件的序言(根元素之前的部分)可以包含文档类型声明、处理指令和注释。 影响Prolog的属性 在writer实例中,以下属性会影响prolog: Charset 控制两件事:XML声明中的字符集声明和(相应的)输出中使用的字符集编码。 NoXmlDeclaration 控制输出是否包含XML声明。在大多数情况下,默认值是0,这意味着已经编写了声明。如果没有指定字符集,并且输出定向到字符串或字符流,则默认为1,并且不写入任何声明。 #Caché #InterSystems IRIS 0 0 0 197
问题 kun an · 六月 9, 2021 cache server是什么,是数据库管理系统还是什么 请问cahce中所有的数据库访问都是通过cache server完成的吗,比如使用终端访问数据库、studio开发的应用、使用第三方库使用代码都是先访问cache server,然后通过cache server对数据进行存取的吗?使用studio开发的应用程序也是跑在cache server中吗? 如果是的话studio开发的应用程序(比如web程序)如何跟cache server分开部署呢? #API #开发环境 #教程 #数据库 #Caché #文档 0 4 0 169
问题 Michael Lei · 六月 8, 2021 来自海外社区的问题:是否有办法通过管理门户将Global以XML形式导出? Hi colleagues! Is there a way to export globals in XML if I have the access to Management Portal or any other web app? Currently, it gives the option to export into gof format only. Hi 同事们好! 是否有办法通过管理门户或任何其他的web app以XML的形式导出globals? 目前,它只提供了导出为gof格式的选项。 #Globals #管理门户 #InterSystems IRIS 0 1 0 128
文章 Qianzhu Liu · 六月 9, 2021 阅读大约需 7 分钟 临床医生与信息系统的“爱恨情愁”之三:我的工作站我做主 门诊医生工作站是帮助医生规范和高效的完成日常处方、病历书写、结果查询、会诊转诊等一系列诊疗行为的综合应用平台。该平台以电子病历为中心,内置常用模版和术语库;与医嘱系统、实验室系统、影像系统等相联通,为医生提供便捷、快速的辅助工具。 #TrakCare 0 0 0 250
文章 姚 鑫 · 六月 9, 2021 阅读大约需 6 分钟 第二章 从对象写入XML输出 第二章 从对象写入XML输出 本章介绍如何从InterSystems IRIS对象生成XML输出。 创建XML编写器概述 InterSystems IRIS提供了用于为InterSystems IRIS对象生成XML输出的工具。可以指定XML投影的详细信息,如将对象投影到XML中所述。然后创建一个Writer方法,该方法指定XML输出的整体结构:字符编码、对象的显示顺序、是否包括处理指令等。 基本要求如下: 如果需要特定对象的输出,则该对象的类定义必须扩展%XML.Adaptor。除了少数例外,该对象引用的类还必须扩展%XML.Adaptor。 输出方法必须创建%XML.Writer的实例,然后使用该实例的方法。 下面的终端会话显示了一个简单的示例,在该示例中,我们访问启用了XML的对象并为其生成输出: #Caché #InterSystems IRIS 1 0 1 142
文章 姚 鑫 · 六月 8, 2021 阅读大约需 8 分钟 第一章 InterSystems XML工具简介 第一章 InterSystems XML工具简介 介绍了如何使用 IRIS XML工具。 InterSystems IRIS为XML处理带来了对象的力量--可以使用对象作为XML文档的直接表示,反之亦然。由于InterSystems IRIS包括本机对象数据库,因此可以将此类对象直接用于数据库。此外,InterSystems IRIS提供了用于处理XML文档和DOM(文档对象模型)的工具,即使它们与任何InterSystems IRIS类无关。 用XML表示对象数据 有些InterSystems IRIS XML工具主要用于支持XML的类。要为类启用XML,需要将%XML.Adaptor添加到其超类列表中。%XML.Adaptor类使能够将该类的实例表示为XML文档。可以添加类参数和属性参数来微调投影。 #XML #Caché #InterSystems IRIS 0 0 0 215
文章 Lele Yang · 六月 8, 2021 阅读大约需 1 分钟 FAQ 常见问题系列--应用篇 升级系统后打开管理门户SMP报错5001 如果您在升级了系统之后,打开SMP时看到如下报错,ERROR #5001: 对象的服务器版本与客户端发送的版本不一致: %ZEN.Component.vgroup 一般情况下,这个报错是由浏览器缓存中残留的过期信息造成的,可以通过清除浏览器缓存来解决。 如果清除浏览器缓存之后仍然未能解决此问题,请您前往系统安装目录, 如:d:\InterSystems\IRIS\CSP\broker,查看css/js文件的时间戳在本次更新安装之后是否并没有相应地更新,如果没有,请您做以下尝试,1)在IRIS中更改数据库IRISLIB, 之前的版本是CACHELIB, 取消只读装载,方法如下,打开管理门户SMP, 系统管理->配置->本地数据库,选择要更改的数据库,取消"只读方式挂载",点击【保存】。2)重新编译%Zen组件,w ##class(%SYSTEM.OBJ).Compile("%ZEN.Component.vgroup")此时,再次前往,d:\InterSystems\IRIS\CSP\broker,会看到相关的css/js文件时间戳已经更新。3)恢复上述数据库的只读装载。 #ZEN 1 0 0 246
文章 Michael Lei · 六月 7, 2021 阅读大约需 1 分钟 翻译文章:用IRIS来建立数据服务Build a digital service with IRIS 这是一个系列的第一篇文章。我将使用bpmn符号提供细节,如何开发、部署、保护、运营和消费IRIS数字服务,并与IRIS文档相联系。每一个子流程都将用一个单独的bpmn图来描述。这就是宏观过程。 Documentation links: #InterSystems 业务解决方案和架构 #InterSystems IRIS 0 0 0 101
问题 wenjie zhao · 五月 22, 2021 新安装的cache在本地可以连接terminal,外部电脑连接不上 新安装的cache在本地可以连接terminal,外部主机连接不上,网络通畅,可以连接studio,端口telnet 23端口不通 #Caché 0 5 0 309
文章 姚 鑫 · 六月 6, 2021 阅读大约需 2 分钟 Caché 网络实用工具 Caché 网络实用工具 第一章 发送HTTP请求☆☆☆☆☆ 第二章 设置和获取HTTP标头☆☆☆☆☆ 第三章 发送HTTP请求☆☆☆☆☆ 第四章 收发电子邮件☆ 第五章 向邮件添加附件☆ #Caché 0 0 0 107
文章 姚 鑫 · 六月 5, 2021 阅读大约需 5 分钟 第七章 Caché JSON %JSON快速参考 第七章 Caché JSON %JSON快速参考 %JSON快速参考 本节提供本章中讨论的%JSON方法、属性和参数的快速参考。 %JSON.Adaptor方法 这些方法提供了从JSON序列化和序列化到JSON的能力。 %JSONExport() %JSON.Adaptor.%JSONExport()将启用JSON的类序列化为JSON文档,并将其写入当前设备。 #JSON #Caché #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 199
文章 姚 鑫 · 六月 5, 2021 阅读大约需 7 分钟 第六章 Caché JSON 使用JSON适配器 第六章 Caché JSON 使用JSON适配器 JSON适配器是一种将ObjectScript对象(registered, serial or persistent)映射到JSON文本或动态实体的方法。本章涵盖以下主题: #JSON #Caché #Ensemble #InterSystems IRIS 0 0 0 170
文章 Hao Ma · 六月 4, 2021 阅读大约需 3 分钟 JSON in IRIS (1) - Dynamic Object 之所以称为Dynamic,是说这个对象在代码编译的时候可以不定义对象的属性和结构,在runtime时才根据装入的数据来产生对象定义。IRIS里用Dynamic Object来处理JSON数据。简单说: 先定义一个Dynamic Object, 把JSON数据装进去,然后用对象的方式处理JSON文档。 让我们看看是它是怎么工作的。 创建一个Dynamic Object很简单, 标准而且啰嗦的写法是: set dynObject1 = ##class(%DynamicObject).%New() 大家通常用简单的写法,像这样用一个{}来定义Dynamic Object: #JSON #新手 #InterSystems IRIS 0 0 0 246
文章 姚 鑫 · 六月 3, 2021 阅读大约需 10 分钟 第十五章 Caché WebSocket 第十五章 Caché WebSocket 使用WebSockets (RFC 6455) web是围绕请求/响应范例构建的:客户机向服务器发送请求,服务器通过向客户机发送响应进行响应。此范式和HTTP本身不允许此通信协议的反向形式,即服务器与客户机启动请求/响应周期。已经开发了许多技术来解决了这个问题,即服务器可以启动与客户机的对话。这些技术通常被称为基于推送或 comet-based的技术,它们都存在不适合在web基础设施上进行全面部署的问题。目前使用的三种主要技术如下所述。 Short Polling 短轮询 使用这种技术,客户端定期发送HTTP请求来检测服务器状态的变化,服务器被编程为立即响应。空响应表示没有变化。 #Caché #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 109
文章 姚 鑫 · 六月 2, 2021 阅读大约需 2 分钟 第十四章 其他InterSystems %Net工具 第十四章 其他InterSystems %Net工具 下面是%Net中其他一些有用类的简短列表: %Net.URLParser InterSystems IRIS提供了一个实用程序类%Net.URLParser,可以使用它将URL字符串解析为其组成部分。例如,当您重定向HTTP请求时,这很有用。 该类包含一个类方法Parse(),它接受一个包含URL值的字符串,并通过引用返回一个包含URL各部分的数组。例如: #Caché #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 97