公告 Claire Zheng · 四月 19, 2023 持续火热报名中:欢迎参加InterSystems 中国技术培训认证 为支持医疗信息行业人才发展,InterSystems 为中国市场量身定制了贴近需求、灵活、实操性强的技术认证培训计划,由 InterSystems 资深技术专家亲自授课,帮助用户快速掌握 InterSystems 技术,确保用户从快速发展的 InterSystems 技术中获益,以更好地服务于医院信息化建设。点击此处查看课程详情:InterSystems中国技术培训认证 #开发者社区官方 2 0 1 197
文章 Claire Zheng · 七月 22, 2022 阅读大约需 2 分钟 【精华置顶帖】一文了解关于InterSystems开发者社区的各种玩儿法(包括积分福利)! 这是一个帖子合集,方便你快速了解关于开发者社区的各种积分福利和玩儿法! #其他 3 0 1 281
文章 Michael Lei · 四月 24, 2021 阅读大约需 6 分钟 置顶--InterSystems 中文开发者社区精华文章集锦 欢迎大家将相关的经验在这个讨论区分享。 板块 文章列表 征文大赛作品集锦 2022年首届InterSystems 技术征文大赛集锦 2023年第二届InterSystems 技术征文大赛集锦 官方文档 我司即将推出中文官方文档门户,欢迎大家把需要的官方文档发在评论区,我们会优先发布。谢谢! #Caché #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS for Health #开发者社区官方 1 1 3 864
文章 姚 鑫 · 3 hr 前 阅读大约需 3 分钟 第二十七章 TCP 客户端 服务器通信 - 连接管理 第二十七章 TCP 客户端 服务器通信 - 连接管理 连接管理 服务器一次只维护一个连接。如果第二个客户端在另一个连接打开时尝试连接,则 TCP/IP 将该客户端放入队列中。在队列中时,第二个客户端可以像已连接一样写入端口。第二个客户端写入的数据保留在缓冲区中,直到第一个连接关闭并且第二个客户端连接。 如果第二个客户端在连接存在之前发出 READ,它就会挂起。当第二个客户端在队列中时,第三个客户端的任何连接尝试都会失败。 如果已经打开 TCP 设备的客户端在第一个连接仍然存在时尝试第二次连接,则第二个 OPEN 命令会导致<COMMAND> 错误。将这种情况视为错误而不是 USE 命令可以防止出现意外结果。如果一个错误的程序认为它打开了一个新连接,而实际上它正在重用一个可能具有不同目标或不同参数的现有连接,则可能会出现这种意想不到的结果。 #InterSystems IRIS for Health 0 0 0 2
文章 姚 鑫 · 十一月 19 阅读大约需 2 分钟 第二十六章 TCP 客户端 服务器通信 - $ZB 和 READ 命令 第二十六章 TCP 客户端 服务器通信 - $ZB 和 READ 命令 $ZB 和 READ 命令 $ZB 保存终止读取的字符。该字符可以是以下之一: - 终止字符,例如回车 - 固定长度 READ x#y 的第 y 个字符 - READ *X 的单个字符 - 定时读取过期后的空字符串 - 转义序列 - 请注意,如果一个字符串以 CR LF 结尾,则只有 CR 会放在 $ZB 中。 TCP 设备的 WRITE 命令 在使用 OPEN 和 USE 建立连接后,WRITE 命令将数据从客户端或服务器发送到 TCP 设备。 语法如下: #InterSystems IRIS for Health 0 0 0 3
文章 姚 鑫 · 十一月 18 阅读大约需 2 分钟 第二十五章 TCP 客户端 服务器通信 - TCP 设备的 READ 命令 第二十五章 TCP 客户端 服务器通信 - TCP 设备的 READ 命令 TCP 设备的 READ 命令 从服务器或客户端发出 READ 命令以读取客户端或服务器设置的任何字符。 语法如下: READ var:timeout READ *var:timeout READ var#length:timeout 超时参数虽然是可选的,但强烈建议使用,因为如果指定了超时,则 READ 的成功或失败由 $TEST 特殊变量的值指示。如果在超时到期之前读取尝试成功,则 $TEST 设置为 1;如果超时到期,$TEST 设置为 0。 超时参数支持秒和秒的分数到 1/100 秒。例如,10、10.5、.5、.05。 #InterSystems IRIS 0 0 0 4
文章 姚 鑫 · 十一月 17 阅读大约需 3 分钟 第二十四章 TCP 客户端 服务器通信 - 当前 TCP 设备 第二十四章 TCP 客户端 服务器通信 - 当前 TCP 设备 当前 TCP 设备 可以使用 %SYSTEM.TCPDevice方法返回当前 TCP 设备的 IP 地址和端口号。可以使用 Help() 方法列出这些方法,如下所示: DO $SYSTEM.TCPDevice.Help() 可以通过在 Help() 中指定方法名称来显示有关特定方法的信息,如以下示例所示: #InterSystems IRIS for Health 0 0 0 6
文章 姚 鑫 · 十一月 15 阅读大约需 7 分钟 第二十二章 TCP 客户端 服务器通信 - TCP设备的OPEN和USE命令关键字 第二十二章 TCP 客户端 服务器通信 - TCP设备的OPEN和USE命令关键字 TCP设备的OPEN和USE命令关键字 可以使用位置参数(如上所述)或关键字参数。下表描述了使用OPEN和USE命令控制TCP设备的关键字。还有其他只能在OPEN命令中指定的OPEN-only关键字(本章稍后将描述)。所有关键字参数都是可选的。 #InterSystems IRIS for Health 0 0 0 7
文章 姚 鑫 · 十一月 14 阅读大约需 2 分钟 第二十一章 TCP 客户端 服务器通信 - 客户端OPEN命令 第二十一章 TCP 客户端 服务器通信 - 客户端OPEN命令 客户端OPEN命令 客户端OPEN命令与服务器端OPEN命令只有一个方面的不同:第一个设备参数必须指定要连接的主机。要指定主机,需要包括客户端识别为主机的名称或Internet地址。 一旦建立连接,OPEN开就会成功。此时,可以读取或写入该TCP设备。但是,如果连接的服务器端是另一个IRIS进程,则在使用WRITE命令将一些数据从客户端发送到服务器之前,服务器不会完成其连接端。因此,必须在发出任何读取命令之前发出写入命令。 客户端 OPEN 命令的一些示例是: #InterSystems IRIS for Health 0 0 0 6
文章 姚 鑫 · 十一月 13 阅读大约需 3 分钟 第二十章 TCP 客户端 服务器通信 - 立即发送模式(Q 模式) 第二十章 TCP 客户端 服务器通信 - 立即发送模式(Q 模式) 立即发送模式(Q 模式) 在立即发送模式下,每个 WRITE 命令都作为其自己的数据包输出。如果不使用立即发送模式,则必须包括终止符或发出命令 WRITE *–3 以输出数据包。 通过指定“Q”模式字符或/SENDIMMEDIATE(或/SEN)关键字参数进入此模式。要关闭此选项,请指定以下任一选项: USE TCPDEVICE:(/SEN=0) USE TCPDEVICE:(::"-Q") 要重新打开此选项,请指定以下任一选项: #InterSystems IRIS for Health 0 0 0 9
文章 姚 鑫 · 十一月 12 阅读大约需 3 分钟 第十九章 TCP 客户端 服务器通信 - 数据包模式 第十九章 TCP 客户端 服务器通信 - 数据包模式 数据包模式 如果未指定模式,则默认为数据包模式。如果流模式被禁用,则该模式默认为分组模式。 在分组模式中,只要有一些数据要返回,读取命令就会完成。数据包模式允许在输出缓冲区中构建整个TCP数据段,然后通过发出WRITE*-3或WRITE!命令。 如果在没有要发送的字符的情况下发出WRITE*-1来启动一个TCP发送操作,则会收到一个<WRITE>错误。如果发出WRITE OF空字符串,则会收到<COMMAND>错误。 在分组模式下可以发送的字符串的最大长度为1024个字符。如果在未刷新缓冲区的情况下超过此限制,则会收到<WRITE>错误。 #InterSystems IRIS for Health 0 0 0 9
文章 姚 鑫 · 十一月 11 阅读大约需 4 分钟 第十八章 TCP 客户端 服务器通信 - 使用OPEN命令 - Supported参数 第十八章 TCP 客户端 服务器通信 - 使用OPEN命令 - Supported参数 Supported 参数 parameters 参数可以是以下格式之一: hostname (hostname{:port{:mode{:terminators{:ibufsiz{:obufsiz{:queuesize{:keepalivetime}}}}}}}) parameters 参数中的参数如下: #InterSystems IRIS for Health 0 0 0 11
文章 姚 鑫 · 十一月 10 阅读大约需 3 分钟 第十七章 TCP 客户端 服务器通信 - 使用OPEN命令 第十七章 TCP 客户端 服务器通信 - 使用OPEN命令 使用OPEN命令 OPEN命令保留一个TCP绑定设备供使用。其语法为: #InterSystems IRIS for Health 0 0 0 11
文章 姚 鑫 · 十一月 9 阅读大约需 3 分钟 第十六章 TCP 客户端 服务器通信 第十六章 TCP 客户端/服务器通信 TCP 客户端/服务器通信 本章介绍如何使用 TCP/IP 在 IRIS 数据平台进程之间设置远程通信。 IRIS 支持两种互联网协议 (IP):TCP 和 UDP。这些 Internet 协议允许 IRIS 进程与本地或远程系统上的进程通信,无论这些进程是否正在运行 IRIS。 #InterSystems IRIS for Health 0 0 0 18
文章 姚 鑫 · 十一月 8 阅读大约需 4 分钟 第十五章 IRIS 进程之间的通信 第十五章 IRIS 进程之间的通信 本页介绍如何在两个或多个 IRIS 数据平台进程之间建立通信。 介绍 作业间通信 (IJC) 设备是一组特殊设备编号,可让在两个或多个 IRIS 进程之间传输信息。这些流程可以是作业流程或交互式流程。 IJC 设备成对工作。最多可以有 256 个 IJC 设备对。使用称为接收器的偶数设备来读取数据。使用称为发送器的奇数设备来写入数据。尝试从发送器读取或写入接收器会导致 <NODEV> 错误。 可以向 IJC 设备发出 I/O 命令,就像向任何其他设备一样。向设备发出OPEN和USE命令后,进程可以发出: 向接收器设备读取命令 将命令写入发送器设备 一次只能有一个进程可以打开设备。 对基于 IRIS 设备表中映射的相对顺序,可以使用管理门户的配置选项查看和编辑该表。 #InterSystems IRIS for Health 0 0 0 8
文章 姚 鑫 · 十一月 7 阅读大约需 3 分钟 第十四章 本地进程间通信(管道) - 用于进程间通信的 CLOSE 命令 第十四章 本地进程间通信(管道) - 用于进程间通信的 CLOSE 命令 用于进程间通信的 CLOSE 命令 如果使用带Q (/QUEUE) 参数代码的OPEN创建子进程,则该子进程可能会在设备上的CLOSE操作中继续存在。排队的进程间通信管道的生存能力取决于平台。在 UNIX® 系统上,子进程始终在CLOSE后继续存在。在 Windows 系统上,进程的生存取决于进程的年龄。刚刚启动的子进程不会在CLOSE操作中幸存,但是一旦子进程完全建立,它就会在 CLOSE操作中幸存。 #InterSystems IRIS for Health 0 0 0 9
文章 姚 鑫 · 十一月 6 阅读大约需 2 分钟 第十三章 本地进程间通信(管道) - 用于进程间通信的 READ 命令 第十三章 本地进程间通信(管道) - 用于进程间通信的 READ 命令 用于进程间通信的 READ 命令 语法 READ:pc readargument,... READ 从管道读取数据。 其中reargument可以是: formatting-mode string variable:timeout *variable:timeout variable#n:timeout 将 I格式化模式参数与管道一起使用。 I 参数允许对命名管道发出定时READ,而不会丢失跟随在一个部分记录中的任何数据。错误。当在READ上使用此参数时, READ会忽略消息。 默认情况下,I格式化模式的值处于关闭状态。如果在没有超时的情况下在READ命令中包含此参数,则进程将挂起,直到有数据要处理。 #InterSystems IRIS for Health 0 0 0 10
文章 姚 鑫 · 十一月 5 阅读大约需 2 分钟 第十二章 本地进程间通信(管道) - OPEN 和 USE 命令关键字 第十二章 本地进程间通信(管道) - OPEN 和 USE 命令关键字 OPEN 和 USE 命令关键字 以下列表描述了用于使用OPEN和USE命令控制进程间通信管道的关键字。 /IOTABLE[=name] 默认值:如果未指定名称,则使用设备的默认 I/O 转换表。 对应K\name\参数代码,为设备建立I/O转换表。 /TRANSLATE[=n] 默认值:1 与K参数代码相关。 /TRANSLATE 或 /TRANSLATE= n (对于n的非零值)启用设备的 I/O 转换。 /TRANSLATE= n如果n值为零,则会禁用设备的 I/O 转换。 #InterSystems IRIS for Health 1 0 0 8
文章 姚 鑫 · 十一月 4 阅读大约需 3 分钟 第十一章 本地进程间通信(管道) - OPEN 命令管道示例 第十一章 本地进程间通信(管道) - OPEN 命令管道示例 OPEN 命令管道示例 以下是有效的命令管道OPEN语句。每个示例指定 10 秒的超时: #InterSystems IRIS for Health 0 0 0 10
公告 Michael Lei · 十一月 3 InterSystems 技术视频挑战 各位社区成员,大家好! 我们很高兴推出一种全新的方式让您展示创造力和技能! 这次,我们邀请您参加我们首次发起的视频挑战: 📹 InterSystems 技术视频挑战 📹 请在 2024 年 10 月 21 日到 11 月 10 日提交与 InterSystems IRIS 产品或服务相关的任何主题的视频。 🎁 人人有礼 + 主要奖品! #活动 #视频 #IRIS竞赛 #开发者社区官方 0 0 0 14
文章 姚 鑫 · 十一月 3 阅读大约需 2 分钟 第十章 本地进程间通信(管道) - 用于进程间通信的 OPEN 命令 第十章 本地进程间通信(管道) - 用于进程间通信的 OPEN 命令 用于进程间通信的 OPEN 命令 OPEN命令允许程序与 IRIS 外部的进程进行通信。 OPEN Arguments cpipename 管道名称 仅命令管道— “|CPIPE|”或"|CPIPE|xxxxxx" ,其中xxxxxx表示用户指定的唯一标识符。 program 程序 命令管道可以使用命令 shell 或不使用命令 shell(直接)执行程序。在大多数情况下,首选不使用命令 shell 执行。标准管道使用命令 shell 执行程序。 #InterSystems IRIS for Health 0 0 0 8
文章 姚 鑫 · 十一月 2 阅读大约需 2 分钟 第九章 本地进程间通信(管道) 第九章 本地进程间通信(管道) 本页介绍如何通过管道与 IRIS® 数据平台外部的进程建立通信。 介绍 可以通过管道在 IRIS 进程和外部 UNIX® 或 Windows 进程之间进行通信,就像在 UNIX® 或 Windows 操作系统级别一样。可以将输出发送到管道或从管道接收输入。管道为单向;不能同时读取和写入同一个程序。 当打开另一个程序的管道进行输出时,可以像写入顺序文件一样对其进行写入。然后程序使用编写的内容作为其输入流。当希望 IRIS 进程与外部进程共享资源时,此功能特别有用。 打开 IRIS 实用程序的管道 可以打开通往 IRIS 实用程序以及 UNIX® 或 Windows 进程的管道。在将管道用于实用程序 I/O 之前,系统管理员必须在 IRIS 系统上定义管道设备。 #InterSystems IRIS for Health 0 0 0 9
文章 姚 鑫 · 十一月 1 阅读大约需 2 分钟 第八章 在 I O 命令中指定设备 - 通过 IRIS ID 指定设备 第八章 在 I/O 命令中指定设备 - 通过 IRIS ID 指定设备 通过 IRIS ID 指定设备 为了与其他 产品兼容并方便起见,可以通过设备编号(存储在设备表中)来引用设备。系统管理员可以使用管理门户将这些号码链接到设备。选择“系统管理” 、 “配置” 、 “设备设置” 、 “设备”以创建新设备或编辑现有设备。 系统管理员还可以将一个数字转换为另一个数字。因此,可以发出OPEN 47 , IRIS 会将其转换为OPEN 49 。 下表显示了设备编号。 #InterSystems IRIS for Health 0 0 0 6
公告 Claire Zheng · 十一月 1 开发者社区回顾, 十月 2024 您好,欢迎阅读 十月 2024 开发人员社区通讯。 统计信息 ✓ 十月发布了 43 篇新帖子: – 37篇新文章 – 5个新公告 – 1个新问题 ✓ 十月有 408 位新成员加入✓ 所有时间发布了 2,251 篇帖子✓ 所有时间有 2,431 位成员加入 #摘要 #开发者社区官方 1 0 0 10
问题 yang xin · 十一月 1 在Java环境通过jdbc 执行sql报Parameter list mismatch错误,但是同样的sql使用连接工具可以查询出数据 我们公司在和其他公司合作,需要从Cache2016的数据库中执行sql获取数据 sql的内容是调用存储过程 CALL DHCXXXXice.MKPIQuery_QueryXXXX('K007XXXX.JJR','2024-08-01','2024-08-01') 在java代码中执行会报错误如下 但是通过数据库连接工具却能查询到结果 通过数据库连接工具查询到 该存储过程,可接收参数为8个 #Java #Caché #InterSystems IRIS 0 0 0 19
文章 姚 鑫 · 十月 31 阅读大约需 2 分钟 第七章 在 I O 命令中指定设备 第七章 在 I/O 命令中指定设备 当使用 I/O 命令OPEN 、 USE和CLOSE在除正在使用的设备之外的任何设备上处理 I/O 时,必须指定一个 I/O 设备。可以根据设备类型以三种方式之一指定设备,如下表所示。 #InterSystems IRIS for Health 0 0 0 12
文章 姚 鑫 · 十月 30 阅读大约需 2 分钟 第六章 主设备、当前设备、空设备 第六章 主设备、当前设备、空设备 明确使用主设备 USE 0或USE $principal向进程的主体设备隐式发出OPEN命令。如果另一个进程拥有该设备,则该进程会挂在隐式OPEN上,就像它遇到任何OPEN时一样。 为该进程不拥有的任何其他设备(由于先前的OPEN命令)发出USE命令会产生错误。 仅当进程获取设备时,没有超时的OPEN命令才将控制权返回给进程。可以通过键盘中断命令(如Ctrl-C )中断打开命令。由于保护问题或无效设备名称而无法成功的OPEN将永远挂起。当在OPEN命令中指定超时时, OPEN将在超时到期时将控制权返回给进程。 使用主设备的选项 根据主要设备的性质,可以指定其他特定于设备的参数,这些参数对于管道(进程间通信) 、文件和终端 I/O是不同的。例如,可以使用 TLS 连接打开主设备: #InterSystems IRIS for Health 1 0 0 15
文章 姚 鑫 · 十月 29 阅读大约需 2 分钟 第五章 主设备、当前设备、空设备 第五章 主设备、当前设备、空设备 一个进程拥有一台设备 一次只有一个进程可以拥有一个设备,顺序文件除外。 换句话说,在进程成功向设备发出OPEN命令后,在第一个进程释放该设备之前,其他进程都无法打开该设备。进程通过以下任一方式释放设备: 通过显式发出CLOSE命令。 通过停下来。 每个进程都有一个主设备 每个 IRIS 进程都有一个主要输入设备和一个主要输出设备。默认情况下,这些是同一设备。当您登录终端并激活 IRIS 时,该终端将成为主要设备。由于 IRIS 隐式向该终端发出OPEN和USE命令,因此可以立即向它发出READ和WRITE命令。 IRIS 主设备是操作系统指定为主输入设备的设备。 $PRINCIPAL特殊变量包含主设备的设备 ID。 #InterSystems IRIS for Health 0 0 0 12
文章 姚 鑫 · 十月 28 阅读大约需 2 分钟 第四章 I O 输入输出简介 - Read 命令 第四章 I O 输入输出简介 - Read 命令 Read 命令 该命令从当前设备读取数据。对于某些设备,以星号开头的参数返回 ASCII 数字信息;对于其他人来说,它们表示控制功能。 语法 READ variable:timeout WRITE 命令 该命令将数据写入当前设备。对于某些设备,以星号开头的参数允许使用其 ASCII 数值写入 ASCII 字符;对于其他人来说,它们表示控制功能。对于某些设备,以 # 字符开头的参数指示写入该字符的次数。 #InterSystems IRIS for Health 0 0 0 10
文章 Hao Ma · 十月 28 阅读大约需 4 分钟 配置IRIS Container - CPF merge CPF merge(合并) Automating Configuration of InterSystems IRIS with Configuration Merge CPF merge通过合并一个人工编辑的merge file, 自动的配置新创建的iris instance, 或者修改已有的iris instance。适用于: #新手 #部署 #InterSystems IRIS 1 0 0 14