您的位置:首页 > 其它

工作流关联和初始表单 (Office SharePoint Server 2007)

2009-07-20 17:12 471 查看
在开始工作流之前,可以向用户显示关联和初始表单,以便他们可以提前为工作流设置参数和其他信息。当工作流应用于特定的列表、库或内容类型时,关联表单处理工作流;当工作流应用于特定的 SharePoint 项目时,初始表单处理工作流。

还可以在工作流模板定义中包含预关联数据。例如,您可能希望使用默认值预先填充关联表单上的字段。

有关关联和初始表单的更多概念信息,请参阅 Windows SharePoint Services 3.0 SDK 中的工作流关联表单和初始表单 (Windows SharePoint Services)。

指定关联表单

对于所有工作流表单,可以在工作流模板定义 XML 中指定工作流的关联表单。为此,请编辑两个 XML 元素。

Workflow 元素的 AssociationURL 属性的值设置为"_layouts/CstWrkflIP.aspx"。这是随 Office SharePoint Server 2007 提供的 .aspx 页面;此页面包含用于承载 Microsoft Office InfoPath 2007 工作流关联表单的 InfoPath Forms Services Web 部件:
Xml

复制代码

AssociationURL ="_layouts/CstWrkflIP.aspx"


注意:

Office SharePoint Server 2007 在工作流模板定义中支持绝对路径或相对于服务器的路径。您必须按以下格式之一表达所有表单路径 URL。例如,绝对路径(如 "http://site/library/page.aspx";)或相对于服务器的路径(如 "/layouts/page.aspx")。Office SharePoint Server 2007 并不支持在工作流模板定义中修复链接。

Association_FormURN 元素添加到工作流模板定义中的 Metadata 元素。使用此元素可以指定您要用于工作流关联的 Office InfoPath 2007 表单的 URN。例如:
Xml

复制代码

<Association_FormURN>urn:schemas-microsoft-

com:office:infopath:workflow:ReviewRouting-Assoc

</Association_FormURN>

如果您要向关联表单提供自定义数据,您可以在 AssocationData 元素中存储此信息。例如,当显示关联表单时,您可以使用此元素来存储要传递到关联表单中的默认值。AssocationData 元素可以包含任何有效的 XML。

有关工作流定义架构的详细信息,请参阅 Windows SharePoint Services 3.0 SDK 中的工作流程定义架构。

关联表单处理

当管理员选择要与给定的列表、库或内容类型相关联的工作流时,Office SharePoint Server 2007 显示"添加新工作流"页面;在该页面中,管理员可以指定所有工作流通用的设置,如工作流定义、启动条件以及是对项目、文件夹还是同时对这两者运行工作流。

当管理员在此页面上单击"下一步"按钮时,Office SharePoint Server 2007 将在工作流模板定义中检查 Workflow 元素的 AssociationURL 属性,以确定要加载的正确 .aspx 页面。对于 Office InfoPath 2007 表单,开发人员可以将此值设置为 _layouts/CstWrkflIP.aspx。Office SharePoint Server 2007 加载此页面,其中包含用于承载自定义表单的 Office InfoPath Forms Services Web 部件。然后,此页面检查工作流模板定义 XML 的 Association_FormURN 元素,以确定要承载的正确 Office InfoPath 2007 表单。此外,此 Web 部件将 AssocationData 元素中存储的任何数据都传递到 Office InfoPath 2007 表单中。

当管理员提交对表单所做的更改时,CstWrkflIP.aspx 将数据作为 XML 字符串传回到 Office SharePoint Server 2007。此数据存储在表示该工作流关联的 SPWorkflowAssociation 对象的 AssociationData 属性中。

指定初始表单

要指定 Office InfoPath 2007 工作流初始表单,您必须编辑工作流模板定义中的两个元素。

Workflow 元素的 InstantiationURL 属性的值设置为"_layouts/IniWrkflIP.aspx"。这是随 Office SharePoint Server 2007 提供的 .aspx 页面;此页面包含用于承载 Office InfoPath 2007 工作流初始表单的 Office InfoPath Forms Services Web 部件:
Xml

InstantiationURL="_layouts/IniWrkflIP.aspx"


注意:

Office SharePoint Server 2007 在工作流模板定义中支持绝对路径或相对于服务器的路径。必须按以下这些格式之一表达所有表单路径 URL。例如,绝对路径(如 "http://site/library/page.aspx")或相对于服务器的路径(如 "/layouts/page.aspx")。Office SharePoint Server 2007 并不支持在工作流模板定义中修复链接。

Instantiation_FormURN 元素添加到工作流模板定义中的 Metadata 元素。使用此元素可以指定您要用于工作流启动的 Office InfoPath 2007 表单的 URN。例如:
Xml

<Instantiation_FormURN>urn:schemas-microsoft-

com:office:infopath:workflow:ReviewRouting-Init:1033

</Instantiation_FormURN>

初始表单处理

当用户对于给定的项目启动工作流时,Office SharePoint Server 2007 将检查工作流模板定义 XML 中的 Workflow 元素的 InstantiationURL 属性,以确定要加载的正确 .aspx 页面。对于 Office InfoPath 2007 表单,开发人员可以将此值设置为 "_layouts/IniWrkflIP.aspx"。Office SharePoint Server 2007 加载此页面,其中包含用于承载自定义表单的 Office InfoPath Forms Services Web 部件。然后,此页面检查工作流模板定义 XML 的 Instantiation_FormURN 元素以确定要承载的正确 Office InfoPath 2007 表单。此外,此页面将相应 SPWorkflowAssociationAssociationData 属性中存储的关联数据作为 XML 字符串传递到 Office InfoPath 2007 表单中。此数据充当表单的主要数据源。

当用户提交对于表单的更改时,IniWrkflIP.aspx 将数据作为调用 StartWorkflow 方法的一部分传回到 Windows SharePoint Services 对象模型。

Office SharePoint Server 2007 中的工作流管理器在 SharePoint 项目上创建工作流的实例。工作流管理器将使用初始表单收集的数据传递到工作流自身的 OnWorkflowActivated 事件。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: