3、开发面向应用开通服务的界面
你可以钩住用户界面到开通服务模型中,这些界面被开通服务模型中订购事件所触发。
下面描述是为界面提供钩子:
- 组织订购服务
- 用户订购服务
- 组织注销服务
- 用户注销服务
- 开发一个适合用于开通服务的界面。
- 选择一个开始点并点击(用户界面)使用Web服务(Web Services)去创建表单(XForms),未命名用户界面—用户界面应用控制板出现,并且显示表单(XForms)设计界面。
- 创建一个新模型,并提供以下属性:
- 模型名称(Model Name):提供模型名称,这个名称将在开通服务模型中使用;
- 选择“自动/非事务性处理”(Automatic and Non-Transactional);
- 业务对象(BusinessObject):提供业务对象WizardFrameData。
- 使用下述属性添加一个分组盒子(Groupbox)到窗体中(Form):
- 提供一个“ID”,在下面例子代码中,groupbox1用于模型,它选择了事先创建的模型;
- 在分组盒子(Groupbox)中添加几个输入框(XForm控件),每个输入框提供一个引用名称,接着,当开通BPM服务被触发时,输入文(InputDoc)中包含订购数据(SubscriptionData )标签,这个标签包含配置每个引用输入框名字的标签。
- 从窗体属性中,添加一个链接到脚本
/cordys/ucf/js/wizardSubscriptionStep.js
-
添加下述内容到脚本中:
function
Form_Init(eventObject)
{
application.addType(window,
"ucf.library.Utils"
);
}
function
Form_InitDone(eventObject)
{
initModelData();
// Example for a User Application Subscription
if
(currentWizardData && cordys.selectXMLNode(currentWizardData,
".//*\[local-name() = 'UserName'\]"
))
{
var
userName = cordys.getNodeText(currentWizardData,
".//*\[local-name() = 'UserName'\]"
,
""
);
groupbox1.setLabel(
"Enter User Application Subscription Data for user '"
+userName+
"'"
);
}
}
function
Form_BeforeClose(eventObject)
{
storeModelData();
application.removeType(window,
"ucf.library.Utils"
);
}
function
onWizardFrameValidate()
{
return
true
;
}
function
cancelButton_Click(eventObject)
{
cancelButton_Clicked(eventObject);
}
function
saveButton_Click(eventObject)
{
saveButton_Clicked(eventObject);
}
- 当每次请求时,移除或修改groupbox1.setLabel()片段,上面代码是一个用户应用订购样例;
-
链接上述函数到相应的窗体事件:
Event Name
Function Name
Init
Form_Init
Init Done
Form_InitDone
Before Close
Form_BeforeClose
你的界面现在用于应用开通界面,接着,你必须配置界面,去使用他做为服务开通窗体安装向导。
- 配置服务开通界面用于安装向导。
-
- 打开(Open) (全局应用Global Applications),全局应用窗口呈现,显示所有注册应用;
- 选择一个需要开通服务界面(UI)的应用,这个应用的细节显示出来;
- 点击应用开通服务界面标签页(Provisioning UIs tab),所有选择应用的注册开通服务界面 显示出来;
- 使用下面的值添加到新的界面(UI):
- UI Name(界面名称):提供刚刚创建界面(UI)的名称;
- UI Type(界面类型):选择用户订购去设置那种开通服务事件的类型;
- UI ID(界面ID):提供完整的路径给窗体(Form),例如:, /com/cordys/jopl/ccptest/JoplsAddUserApplSubForm.caf
- 以此为基础(For the Model),使用在界面上所创建模型(Model)的名称。
为一个用户应用订购的服务开通界面被建立并被配置去被触发。