Object Script基础知识(四)
Object Script(四)
面向脚本
-
类
类的主要类型
|
类型 |
适用目的 |
|
Persistent |
持久化对象,够将对象保存到数据库中(写入磁盘),单独存储. |
|
Serial |
在持久化对象内部存储的对象,随持久化对象存储,不单独存储. 在给此对象中的属性赋值之前,不需要调用%New()来创建新的对象。如果此对象的属性包含在一个持久化类中,那么此对象的属性将被存储在持久化类的范围内。 |
|
Registered |
临时的类和对象,不持久化(方法会保存). |
|
Abstract |
当类的属性被设置为abstract的时候,该类即被声明为抽象类,不能被实例化. |
|
Datatype |
数据类型,只包含数据验证和转换的方法. |
|
CSP |
用于处理HTTP事件 |
类成员
|
类型 |
适用目的 |
|
Properties |
一个属性包含类的一个实例的数据. |
|
Methods |
实例方法和类方法(在其他语言中称为静态方法)。在大多数情况下,一个方法是一个子程序 |
|
Class Queries |
类查询定义了可以被类使用的SQL查询,并指定了一个类作为查询的容器。 |
|
Parameters |
参数定义了一个常量值供这个类使用。该值在编译时被设置 |
|
Xdata |
一个XData块是类中一个格式良好的XML文档,供类使用 |
|
Storage |
数据的存储方式 |
-
创建类示例
Studio创建:
打开Studio,点击左上角新建文件。选择General->ClassDefinition->点击OK
选择包名,填入类名->点击Next
根据需要选择你想创建的类的类型->点击Next
Owner和SQL 表名,根据需要填写,也可不填写。
将下段代码填写入建好的类中:
Class HIS.Patient Extends (%Persistent, %XML.Adaptor)
{
Property IDCard As %String;
Property PatNo As %String;
Property Name As %String;
Property Gender As %String;
Property DOB As %Date;
Property Citizenship As %String;
Property PhhoneNumber As %String;
}
Terminal 调用:
set p = ##class(HIS.Patient).%New()setp.PatNo = "234567”setp.Name = "LiXunhuan”setp.Gender = "Male”setp.DOB = $zdh("1980-10-01",3)wp.%Save()w p.%Id()