|
5#
楼主 |
发表于 2004-9-14 18:57:56
|
只看该作者
定制一个Schema
在该课程中,你将学习如何做以下的事情:
•添加一个新的field
•定义状态转换
•测试并保存schema的变更
•对用户数据库应用schema的变更
添加一个新的field
注释:如果使用的是TeamTest版本的ClearQuest,你不能在schema中增加一个field。你只能自定义已经存在的fields。
在接下来的练习中,你将完成以下操作:
1.检出一个schema。
ClearQuest在schema储存库中存储着已有schemas的所有版本,你必须从schema储存库中检出schema的最新的版本。
2.创建field。
在ClearQuest中,你可以对一个已有的或新的schema增加、删除或者修改fields。
3.为field增加一个hook(分支代码)。
Hooks are entry points for pieces of code that execute automatically at specified times (triggers), that extend ClearQuest functionality.
分支代码是在指定时间(触发器)自动执行的代码部分的进入点,它扩展了ClearQuest的功能。
4.在记录窗体中增加field。
ClearQuest通过使用窗体来联系一个记录类型并显示相关信息。ClearQuest也允许用户使用窗体来提交新的相应的记录。
检出一个schema
ClearQuest在schema储存库中存储着已有schemas的所有版本,为了更改一个schema,你必须从schema储存库中检出schema的最后的版本。
在这个练习中,你将检出your-username_schema。该课程的所有练习都将使用这个被检出的schema。
1.在ClearQuest Designer中,选择File > Open Schema 打开Open Schema窗体。
2.选择Checkout a schema to edit。
注释:在Open Schema窗体中如果选择了View a version of an existing schema ,你将不能修改这个schema。
3.选择your-username_schema, version 1 ,单击Next。
4.在备注中输入Adding defect record field to the record form and a new state and action。
5.单击Finish。
ClearQuest Designer窗口左侧显示your-username_schema的工作区间。请注意你所工作的your-username_schema的版本号为版本2。当你打开一个schema进行编辑时,ClearQuest Designer为这个schema自动创建一个新版本。
增加一个新的Field
注释:如果使用的是TeamTest版本的ClearQuest并且没有一个完整的ClearQuest许可证,你就不能在schema中增加一个field。你只能自定义已经存在的fields就像增加一个field分支代码。
在这个练习中,你将编辑your-username_schema schema,通过创建一个新的field,允许用户在缺陷记录中输入用户编号。
1.在工作区,展开Record Types > Defect 并且双击Fields 显示Fields网格。
Fields网格显示了记录中的所有fields。每个field列显示其属性,包括field名称,类型,缺省值,权限,有效性等等。
2.选择Edit > Add Field,打开Field Properties对话窗口,选择General标签,在Field Name中输入User_number。在Type中选择INT,因为该字段包含整数。
缺省的数据类型是SHORT_STRING。
DB Column Name的默认值与field名称相同。
作为默认选项,选择项Visible in query 已被选择。
3.In the Help Text tab, as Enter your user number type a number between 1 and 100. 在Help Text标签项,as Enter your user number type a number between 1 and 100。
该字段必须为1-100之间的整数。当用户在ClearQuest客户端通过快捷菜单使用帮助时将看到该帮助信息。
4.关闭Field Properties对话窗口。
请注意,这时类型为I NT 的User_number field显示在Fields网格中的底部。
创建一个Field分支代码
注释:如果使用的是TeamTest版本的ClearQuest并且没有一个完整的ClearQuest许可证,你就不能在schema中增加一个field。你只能自定义已经存在的fields。
你可以编辑functionality of fields,操作和为记录指定的分支代码。当ClearQuest客户端用户执行了一个操作或一个field中输入了一个值,ClearQuest运行指定的分支程序代码。
在这个练习中,你将为上一练习中生成的User_number field添加一个validation hook,这个分支代码用来验证User_number field的值。
1.展开Record Types > Defect项,双击Fields。
2.在Fields网格中,点击User_number field 中的Validation单元格,然后点击下拉箭头。
选择SCRIPTS > BASIC 打开脚本编辑器。脚本编辑器以灰色输出行的形式提供一个Visual Basic脚本框架。
脚本编辑器的顶部,Fields选项显示User_number,并且Hook Types选项显示FIELD_VALIDATION。如果显示的不是这些,通过滚动选中这些选项。
3.Copy下面的示例代码并粘贴到脚本编辑器中注释行的下面:
REM End If
Dim value_info
Set value_info=GetFieldValue(fieldname)
If Not IsNumeric(value_info.GetValue) Then
User_number_Validation=”Must be an integer between 1 and 100”
ElseIf (value_info.Getvalue<1) or (value_info.Getvalue>100) Then
User_number_Validation=”Must be between 1 and 100”
End If
这个例子中,当用户在field中输入一个数字,ClearQuest客户端运行相应的验证分支代码。
如果验证分支代码返回一个非空字符串,用户将被提示该field中包含无效值。
4.选择Hooks > Compile。编译脚本并检测确定没有语法错误。如果没有错误,在Script Errors 框中将会显示No error(s) found 。
5.关闭脚本编辑器。
注释:分支代码能够影响field的状态,因此在发布它们之前,你必须慎重的计划并测试这些代码。例如,ClearQuest设置未初始化的整数为0。练习中添加的分支代码检测这个field的值,如果发现小于1或大于100,则返回错误信息。这就使得User_number field成为强制性的field,因为0不能通过有效性检测。
然而,如果你看User_number field的属性(展开 Record Types > Defect > States and Actions 并双击Behaviors),该field被定义为可选field。因此,这个验证分支代码实际上改变了这个field的属性。 |
|