全部时间
文章
· 九月 4, 2023 阅读大约需 3 分钟
第十八章 ObjectScript - 使用例程

第十八章 ObjectScript - 使用例程

例程

可以将例程视为 ObjectScript 程序。例程可以从头开始编写,也可以在编译类时自动生成。

Procedures, Functions, and Subroutines 过程、函数和子程序

ObjectScript 例程中,标签定义以下代码单元之一的起点:

  • Procedures过程(可选地返回一个值)。过程中定义的变量是该过程私有的,这意味着它们不可用于其他代码。对于函数和子例程来说,情况并非如此。

过程也称为过程块。

  • 函数(返回值)。
  • 子例程(不返回值)。

建议使用过程Procedures,因为这可以简化控制变量范围的任务。然而,在现有代码中,可能还会看到函数和子例程,并且能够识别它们非常有用。以下列表显示了所有这些形式的代码的外观。

0 0
0 120
InterSystems 开发者社区汇聚了 25,433 位出色的开发者
InterSystems IRIS 程序员可以在这里学习、分享、了解最新动态、成长,以及收获快乐!
文章
· 八月 10, 2023 阅读大约需 3 分钟
第十八章 定义 HL7 搜索表

第十八章 定义 HL7 搜索表

HL7 搜索表类 EnsLib.HL7.SearchTable,自动索引填充的 HL7 属性。

如果需要搜索更多的项,可以创建一个子类。子类继承Identifier属性,以及使搜索表工作的基础结构。具体操作请参见在产品中使用虚拟文档中的“定义搜索表类”。

对于HL7, 支持PropType的附加值。除了在产品中使用虚拟文档中列出的类型之外,还可以使用DateTime:HL7

创建搜索表时,不要使用保留的包名;参见开发产品中的“保留包名”。

默认索引的属性

当选择EnsLib.HL7。searchtable作为搜索表类,使能够在HL7消息中搜索以下虚拟属性。

  • MSHTypeName

消息结构名称。为了创建这个字符串,将HL7消息中的以下值连接起来:
- MSH消息头段

0 0
0 120

第三十八章 开发Productions - ObjectScript Productions - Defining Business Metrics - 业务指标中的其他选项

业务指标中的其他选项

本节介绍业务指标类中的其他选项。

定义在仪表板中使用的操作

业务指标类可以定义操作,可以将这些操作公开为仪表板中的用户选项。一个操作可以执行客户端活动(例如过滤和刷新仪表板)和服务器端活动(例如调用您自己的 API)的组合。作用机制很一般。

要定义操作,请实施业务指标类的 %OnGetActionList()%OnDashboardAction() 方法。有关这些方法的信息,请参阅实施 商业智能中的定义自定义操作。

0 0
0 120
文章
· 十月 11, 2022 阅读大约需 3 分钟
第十三章 CSP 中的 HTTP 请求 - CSP 服务器 URL 和类名称解析

第十三章 CSP 中的 HTTP 请求 - CSP 服务器事件流

CSP 服务器收到来自 CSP 网关的请求时,它会确定该请求是针对静态页面还是针对 CSP 类的。如果是静态页面,它会立即将页面发回。如果是针对 CSP 类,它会执行以下操作:

  1. 确定此请求属于哪个会话。如果没有,它会启动一个新会话。
  2. 确保在正确的 Caché 命名空间中处理请求。
  3. 确保对象中正确的 %CSP.Session可用,并根据 HTTP 请求中包含的信息在对象中创建 %CSP.Request 的实例。如果需要任何解密,它也会这样做。
  4. 构造 %CSP.Response 对象以允许应用程序修改响应标头。
  5. 确定应由哪个类处理请求并调用其 Page 方法(该方法又调用 OnPage 回调方法)。

CSP 服务器 URL 和类名称解析

0 0
0 120
文章
· 十月 4, 2022 阅读大约需 3 分钟
第六章 CSP 架构 - 静态文件

第六章 CSP 架构 - 静态文件

静态文件

数据库服务器为所有 CSP 提供服务。 数据库服务器还可以通过 CSP 网关为 Web 应用程序提供任何类型的静态文件。在标准 Web 应用程序中,Web 服务器通常提供静态内容。要在 Caché 上运行 Zen 应用程序,必须配置 Web 服务器以允许服务器通过 CSP 网关提供所有静态文件。

注意:要运行基于 Zen 的应用程序,请启用“服务文件”选项并配置 Web 服务器以允许 Caché 服务器提供静态文件。然后 Zen 框架将能够提供依赖图像和 JavaScript 帮助文档。

1 0
0 120
文章
· 九月 8, 2022 阅读大约需 2 分钟
第二十六章 使用任务管理器(四)

第二十六章 使用任务管理器(四)

导入任务

导入任务页面(系统操作 > 任务管理器 > 导入任务)允许通过浏览到先前导出的任务文件,然后单击立即执行操作来导入和运行任务。

注意:任务只能从运行相同版本的 IRIS 的实例导入或导出。

使用 ^TASKMGR

^TASKMGR 例程允许使用终端配置任务管理器。除非另有说明,^TASKMGR 和管理门户包含用于配置任务的相同选。

  1. 打开终端。
  2. 输入 set $namespace = "%SYS" 以更改为 %SYS 命名空间。
  3. 输入do ^TASKMGR

具体类 %SYS.Task

image

1 0
0 120

开发者们,大家好!

在此向您介绍开发者社区的一个新特性—— InterSystems开发者关键问题(Key Questions).

我们增加了一个新的 #Key Question 标签(#关键问题),用以显著标识与InterSystems数据平台有关的、影响重大的提问/问题。

每个月,InterSystems专家会选择一些这类问题,提出这些问题的社区成员将被授予荣誉奖励!

有哪些荣誉呢?详情如下!

0 0
0 120
文章
· 七月 28, 2022 阅读大约需 4 分钟
第十章 发现和记录 REST API

第十章 发现和记录 REST API

本章讨论如何发现实例上可用的 REST 服务以及如何为 REST 服务生成文档。

使用 /api/mgmnt 服务发现 REST 服务

/api/mgmnt 服务包括可用于发现 REST 服务类和启用 RESTWeb 应用程序的调用。

发现 REST 服务

要使用 /api/mgmnt 服务来发现实例上可用的 REST 服务,请使用以下 REST 调用:

0 0
0 120
文章
· 五月 23, 2022 阅读大约需 2 分钟
第151章 SQL函数 %TRUNCATE

[toc]

第151章 SQL函数 %TRUNCATE

将字符串截断为指定长度并应用 EXACT 排序规则的排序规则函数。

大纲

%TRUNCATE(expression[,length])

参数

  • expression - 字符串表达式,可以是列名、字符串文字或另一个函数的结果,其中基础数据类型可以表示为任何字符类型(例如 CHARVARCHAR2)。表达式可以是子查询。
  • length - 可选 — 截断长度,指定为整数。返回表达式的初始长度字符。如果省略长度,则 %TRUNCATE 排序规则与 %EXACT 排序规则相同。可以用双括号将长度括起来以抑制文字替换:((length))。

描述

%TRUNCATE 将表达式截断为指定的长度,然后在 EXACT 排序规则序列中返回它。

0 0
0 120
文章
· 三月 3, 2022 阅读大约需 4 分钟
第七十章 SQL函数 $JUSTIFY

第七十章 SQL函数 $JUSTIFY

在指定宽度内右对齐值的函数,可以选择舍入到指定的小数位数。

大纲

$JUSTIFY(expression,width[,decimal])

参数

  • expression - 要右对齐的值。它可以是数字值、字符串文字或解析为数字或字符串的表达式。
  • width - 表达式要在其中右对齐的字符数。正整数或计算结果为正整数的表达式。
  • decimal - 可选-小数位数。正整数或计算结果为正整数的表达式。将表达式中的小数位数四舍五入或填充到此值。如果指定DECIMAL,会将表达式视为数字。

描述

$JUSTIFY返回在指定宽度内右对齐的表达式指定的值。可以包括小数参数以在宽度内小数对齐数字。

0 0
0 120

如果想快速查看锁表空间的使用情况,可以通过GetLockSpaceInfo()方法来获得。

%SYS>w ##class(SYS.Lock).GetLockSpaceInfo()
4717392,4712512,1200

返回值是 "AvailableSpace,UsableSpace,UsedSpace",每个值的单位都是Byte。

AvailableSpace:锁表的总空间减去已用空间的大小(UsedSpace)。
UsableSpace:预估的可用空间。AvailableSpace里有一些空间是系统内部保留的,所以UsableSpace比AvailableSpace要小。UsableSpace是用户在锁表中可用的自由空间的数量。
UsedSpace:已经使用的空间。

1 0
0 120
文章
· 九月 3, 2021 阅读大约需 3 分钟
第五章 SQL命令 BUILD INDEX

第五章 SQL命令 BUILD INDEX

用数据填充一个或多个索引。

大纲

BUILD INDEX [%NOLOCK] [%NOJOURN] FOR TABLE table-name [INDEX index-name [,index-name]]

BUILD INDEX [%NOLOCK] [%NOJOURN] FOR SCHEMA schema-name

BUILD INDEX [%NOLOCK] [%NOJOURN] FOR ALL

参数

  • FOR TABLE table-name - 已存在表的名称。
    表名可以是限定的(schema.table),也可以是非限定的(table)。
    非限定表名接受默认模式名。
0 0
0 120
文章
· 七月 30, 2021 阅读大约需 3 分钟
外键关键字Internal,NoCheck,OnDelete,OnUpdate

第四十一章 外键关键字 - Internal

指定此外键定义是否为内部定义(不显示在类文档中)。

用法

要将此外键定义标记为内部,请使用以下语法:

ForeignKey keyname(key_props) References pkg.class(ref_index) [ Internal ];

否则,省略此关键字或将单词Not放在关键字的前面。

详解

内部类成员不会显示在类文档中。如果想让用户看到一个类,但不看到它的所有成员,这个关键字很有用。

默认

如果省略此关键字,此外键定义将显示在类文档中。

第四十二章 外键关键字 - NoCheck

指定是否应该检查这个外键约束。

用法

要防止检查该外键定义的约束,请使用以下语法:

0 0
0 120
文章
· 五月 15, 2021 阅读大约需 4 分钟
第一章 单元测试概述

第一章 单元测试概述

本教程的第一部分概述了单元测试。完成本教程的这一部分后,将能够:
- 定义单元测试并区分单元测试和集成测试
- 列出单元测试的几个好处
- 描述InterSystems IRIS %UnitTest包和xUnit测试框架之间的相似性。
- 列出软件开发中测试优先方法经常声称的几个好处。

什么是单元测试?

单元测试是对单个代码模块的正确性的测试,例如,方法或类的测试。通常,开发人员在开发代码时为其代码创建单元测试。典型的单元测试是一种执行方法的方法,该方法测试并验证该方法是否为给定的一组输入生成了正确的输出。

单元测试不同于集成测试。集成测试验证了一组代码模块交互的正确性。单元测试仅单独验证代码模块的正确性。一组代码模块的集成测试可能会失败,即使每个模块都通过了单元测试。

为什么要进行单元测试?

单元测试提供了许多好处,包括:

0 0
0 120
文章
· 九月 23, 2024 阅读大约需 2 分钟
基于向量搜索的患者相似度匹配示例程序

演示程序

使用向量搜索在 IRIS for Health 上运行的病人相似性比较演示。
使用向量搜索计算相似度,在向量基础上比较不同病人之间的个人属性,如姓名、出生日期、地址等。得分越高,被比较的病人越有可能是同一个人。
本演示程序使用 sentence-transformers model 将文本转换为向量,然后使用 IRIS 向量函数来存储、读取和比较向量。

流程原理

image

1 0
0 119

第二十章 开发Productions - ObjectScript Productions - 指定设置的默认值

当定义业务主机类(可能还有适配器类)时,应该考虑如何控制这些项目的任何设置的默认值。 IRIS 可以从三个来源之一获取设置的默认值:
- production定义。
- 为 IRIS 实例定义的值,但存储在production定义之外。有关信息,请参阅配置制作中的定义制作默认值。
- 主机类中定义的属性的默认值。在这种情况下,默认值由 InitialExpression 属性关键字确定。

某些设置取决于环境,例如 TCP/IP 地址或文件路径;通常,将这些设置配置为在生产之外提供它们的源,而其他设置(例如 ReplyCodeActions)是设计决策,并且很可能开发应用程序以从生产定义中检索这些设置。

可以开发作品,使配置设置来自不同的来源。主要目的是更轻松地将制作从一个 IRIS 实例转移到另一个实例,例如从测试转移到现场。

0 0
0 119
文章
· 八月 24, 2022 阅读大约需 5 分钟
第十一章 配置数据库(三)

# 第十一章 配置数据库(三)

## 编辑本地数据库的属性

显示的信息取决于数据库是否被镜像。本节确定以下字段:

### 部分编辑非镜像本地数据库属性

单击非镜像数据库的名称可查看以下数据库属性并更改其中一些属性。 (“创建本地数据库”部分描述了其中的许多字段。)

0 0
0 119
文章
· 八月 4, 2022 阅读大约需 3 分钟
第十七章 源代码文件 REST API 教程(二)

第十七章 源代码文件 REST API 教程(二)

获取在命名空间中定义的源代码文件

要获取有关命名空间中源代码文件的信息:
- 首先,使用 GetDocNames 方法获取文件的名称。
- 然后用GetDoc 方法获取一个文件的内容,也可以用GetDocs 方法获取多个文件的内容。
- 如果要提高应用程序的网络效率,可以保留源代码文件的名称和内容的本地缓存,并使用 GetModifiedDocNames 方法仅获取内容发生变化的源代码文件的名称或使用带有 If-None-Match HTTP 标头的 GetDoc 方法。

GetDocNames 方法返回映射到命名空间的所有数据库中的所有源代码文件的名称。

0 0
0 119
文章
· 七月 17, 2022 阅读大约需 4 分钟
第八章 使用嵌入式 Python (五)

第八章 使用嵌入式 Python (五)

通过引用传递参数

ObjectScript 编写的方法中的参数可以通过值或引用传递。在下面的方法中,签名中第二个和第三个参数前面的 ByRef 关键字表示它们打算通过引用传递。

ClassMethod SandwichSwitch(bread As %String, ByRef filling1 As %String, ByRef filling2 As %String)
{
    set bread = "whole wheat"
    set filling1 = "almond butter"
    set filling2 = "cherry preserves"
}

ObjectScript 调用方法时,在参数前放置一个句点以通过引用传递它,如下所示:

0 0
0 119
文章
· 六月 22, 2022 阅读大约需 4 分钟
第七章 操作位和位串(三)

第七章 操作位和位串(三)

操作位串

要创建新的位串,请使用 $bit 函数将所需位设置为 1

kill bitstring

set $bit(bitstring, 3) = 1

set $bit(bitstring, 6) = 1

set $bit(bitstring, 11) = 1

使用 $bit 将现有位串中的位设置为 1

set $bit(bitstring, 5) = 1

使用 $bit 将现有位串中的位设置为 0

set $bit(bitstring, 5) = 0

由于位串中的第一位是位 1,因此尝试设置位 0 会返回错误:

0 0
0 119
文章
· 六月 8, 2022 阅读大约需 4 分钟
第三章 数据类型(二)

第三章 数据类型(二)

SQL 系统数据类型映射

上表中为 DDL 和 IRIS 数据类型表达式显示的语法是为 SQL.SystemDataTypes 配置的默认映射。对于提供的系统数据类型和用户数据类型,有单独的映射表可用。

要查看和修改当前数据类型映射,请转到管理门户,选择系统管理、配置、SQL 和对象设置、系统 DDL 映射。

了解 DDL 数据类型映射

将数据类型从 DDL 映射到 IRIS 时,常规参数和函数参数遵循以下规则:

  • 常规参数 - 这些在 DDL 数据类型和 IRIS 数据类型中以 %# 格式标识。例如:
     VARCHAR(%1)

映射到:

     %String(MAXLEN=%1)

因此,DDL 数据类型为:

     VARCHAR(10)

映射到:

0 0
0 119
文章
· 四月 20, 2022 阅读大约需 2 分钟
第118章 SQL函数 REVERSE

第118章 SQL函数 REVERSE

标量字符串函数,它以相反的字符顺序返回一个字符串。

大纲

REVERSE(string-expression)

参数

  • string-expression - 要反转的字符串表达式。表达式可以是列名、字符串文字、数字或另一个标量函数的结果,其中基础数据类型可以表示为任何字符类型(例如 CHARVARCHAR)。

描述

REVERSE 返回字符顺序颠倒的字符串表达式。例如 'Hello World!' 返回为 '!dlroW olleH'。这是一个简单的字符串顺序反转,没有额外的处理。

返回的字符串是数据类型 VARCHAR,与输入值的数据类型无关。数字转换为规范形式,数字字符串在反转之前不会转换为规范形式。

前导和尾随空白不受反转的影响。

反转 NULL 值会导致 NULL

0 0
0 119

第四十章 创建安全对话 - 启用 IRIS Web 服务以支持 WS-SecureConversation

启用 IRIS Web 服务以支持 WS-SecureConversation

Web 客户端向 Web 服务发送请求安全对话的消息时,安全对话就开始了。作为响应,Web 服务发送双方都可以使用的 <SecurityContextToken>

要使 IRIS Web 服务能够使用此令牌进行响应,请重写 Web 服务的 OnStartSecureConversation() 方法。此方法具有以下签名:

1 0
0 118

在这一系列文章中,我想向大家介绍并探讨使用 InterSystems 技术和 GitLab 进行软件开发可以采用的几种方式。 我将介绍以下主题:

  • Git 101
  • Git 流程(开发流程)
  • GitLab 安装
  • GitLab 工作流
  • 持续交付
  • GitLab 安装和配置
  • GitLab CI/CD
  • 为何使用容器?
  • 容器基础架构
  • 使用容器的 CD
  • 使用 ICM 的 CD
  • 容器架构

在本文中,我们将讨论如何构建并部署您自己的容器。

0 0
0 118
文章
· 七月 31, 2023 阅读大约需 2 分钟
第八章 HL7 架构和可用工具 - 测试转换

第八章 HL7 架构和可用工具 - 测试转换

显示段地址

要显示段地址,请将光标悬停在阴影列中的段名称上。工具提示显示以下内容:
- 在虚拟属性路径中使用的段地址
- 该段的描述性名称

显示字段地址

要显示字段地址,请将光标悬停在消息结构中的字段上。工具提示显示以下内容:
- 在虚拟属性路径中使用的字段地址(作为数字)
- 在虚拟属性路径中使用的字段地址(作为名称)
- 指示该字段的语法规则的字符。字符可以这样开头:

0 0
0 118