QuickFlow只不过是SharePoint默认工作流功能的一个扩展,QuickFlow系列教程中没有涉及的内容,一般都是MOSS默认的功能,比如WF跟InfoPath表单的交互。

 <亮剑>一书中详细讲述了WF和InfoPath表单的交互方法,工作流这章可以免费试读:

http://book.csdn.net/bookfiles/936/10093629438.shtml

 

工作流代码不能直接给表单域赋值,给表单域赋值必须借助于辅助数据源来进行。

以下是添加辅助数据源的步骤.

Step1 新建ItemMetadata.xml文件

新建一个文本文件,改名为ItemMetadata.xml,添加以下内容:

<z:row xmlns:z="#RowsetSchema"

ows_comments="" />

ows开头的属性是辅助数据源中的字段,工作流代码可以控制这些字段的值,按照需要可以添加多个字段,但是要注意字段命名的格式:以ows_开头。

Step2 添加数据连接

单击工具菜单中的数据连接菜单

clip_image002

图 9-1 数据连接菜单

在数据链接窗口单击添加按钮。如图9-58所示。选择新建链接,仅接受数据。单击下一步。

clip_image004

图 9-2 添加数据连接

选择从XML文档接收数据。如图9-56所示。单击下一步。

clip_image006

图 9-3

选择Step1中新建的ItemMetadata.xml文件作为数据文件。如图9-60所示。

clip_image008

图 9-4

确认选中图9-61所示的选项。

clip_image010

图 9-5

输入数据连接名称为ItemMetadata,单击完成。如图9-62所示。

clip_image012

图 9-6

添加好辅助数据源之后,需要将辅助数据源中的属性和表单域关联起来。

工作流代码可以控制辅助数据源中字段的值,但是默认情况下,辅助数据源是不会显示到表单上的,我们一般设置表单域的默认值为辅助数据源中字段的值,这样表单加载的时候即可显示辅助数据源中的字段数据。

假设我们要在任务表单显示的时候,审批意见框默认显示辅助数据源中ows_comments字段的值,操作步骤如下:

Step1 单击主数据源中的comments域,弹出如图9-63所示的属性编辑窗口。

clip_image014

图 9-7

Step2 单击默认值区域中的编辑按钮,在插入公式窗口单击选择域或组按钮。如图9-64所示。

clip_image016

图 9-8

Step3 在选择域或组窗口,切换到ItemMetadata辅助数据源,选择ows_comments域,单击确定按钮,如图9-65所示。

clip_image018

图 9-9 选择域

Step3 单击所有确定按钮,返回域或组属性编辑窗口,如图9-66所示。单击确定。

clip_image020

图 9-10 设置初始值

表单修改好之后,需要重新发布表单到工作流项目所在的目录。

最后,我们来修改工作流代码,来给辅助数据源中的ows_comments域赋值。

修改Task的TaskCreating事件处理方法如下:

private void task1_TaskCreating(object sender, QuickFlow.TaskEventArgs e)

{

e.TaskProperties.ExtendedProperties["comments"] = Comments1;

}

通过SPWorkflowTaskProperties类的ExtendedProperties属性可以控制辅助数据源的值。注意,尽管辅助数据源中的域全部是以ows_开头,但是代码访问的时候是不需要带ows_的。

posted on 2010-04-01 21:20  jianyi  阅读(2458)  评论(5编辑  收藏  举报