Object Script(一)
-
概况
ObjectScript是一种用于在InterSystems IRIS数据平台上快速开发编程语言,它是面向对象的弱类型脚本语言,非常适用于各种应用,包括业务逻辑、应用集成和数据处理。
在这里,我将主要介绍ObjectScript的命令脚本,类,方法和Routine等使用方式和语法规范。如有任何疑问,可在InterSystems开发者社区进行深入讨论。
- IDE选择
可以使用InterSystems IRIS内置的Studio或Visual Studio Code(需要安装Object Script扩展)来查看和编辑代码。这里我们使用InterSystems IRIS内置Studio来做示例。
如果你已安装InterSystems IRIS或者InterSystems HS 等任何InterSystems产品,找到右下角的图标 ,单击鼠标右键,点击Studio,如下图所示:
输入用户名和密码(用户名:superuser 密码:安装时自己设置的密码),即可进入到Studio开发环境,如下图所示:
-
Terminal
可以直接打开InterSystems IRIS的终端尝试执行ObjectScript的简单指令。通过右下角的图标 ,单击鼠标右键,点击Terminal,如下图所示:
-
命名空间
启动一个终端会话后,输入用户名和密码(用户名可以使用superuser,密码是安装时自己设置的密码),之后就会显示你在哪个命名空间下,如下图所示,我的就在USRE这个命名空间下。
-
命名空间切换
do ^%CD
set $namespace = "Namespace"
-
Terminal指令语法
在终端中,可以输入各种ObjectScript命令语句。但是不支持多行模式,所以整个命令必须在单行输入。
指令 |
缩写 |
操作 |
语法/示例 |
w |
打印变量 |
write "Hello World!" |
|
W ! |
新行打印变量 |
write !, "This", !, "Is", !, "A", !, "Multi-line", !, "Message!", ! |
|
w ? |
列定位打印变量 |
write !, "This", ?9, "Is", ?18, "A", ?27, "Columnar", ?36, "Message!", ! |
|
w # |
清除屏幕 |
write # |
|
zw |
打印变量的名称和它们的值 |
zwrite |
|
r |
读入字段 |
read x |
|
s |
赋值 |
set x = "Hello World!" |
|
k |
清除变量,慎用(不加参数调用时将清除内存中的所有变量!) |
kill x |
|
q |
|
|
|
d |
调用函数,routine |
do ##class(myclass).[method](…) |
|
|
评估条件,并根据条件来决定运行哪些代码 |
if condition { code } elseif condition {code} else {code} |
|
|
重复代码的部分 |
FOR variable=start:increment:end {…} |
|
|
2. 与for的区别在于条件是在整个代码块之前(While)还是之后(Do/While)被评估 |
do {code} while condition
或者 while condition {code}
|
-
异常错误解读
输入 quit 退出错误
%String, %Status, %Integer, %Double, %DateTime等
- 运算符
关系运算符:= , < ,> ,<= ,>=
算术运算符:+ ,- , * , / 等
逻辑运算符:&& , || , '
连字符:_
运算优先级:严格按照从左到右执行,数学运算没有优先级,但先计算括号内表达式。