开发第一个SharePiont工作流: HelloWorldSequential 的注意事项
HelloWorldSequential是一个入门级的SharePoint工作流,基本上照着MSDN的教程一步一步来就可以了 ,我写这篇文字的主要目的是将其中一些重要的步骤列举出来,这些步骤的错误处理将直接导致工作流失败 .
准备
HelloWorldSequential的开发环境如下,请确保您的开发环境与此相同或相兼容:
已部署好的可用的SharePoint Server 2007
.Net Framework 3.0(下载)
Visual Studio 2005 Extensions for Windows Workflow Foundation (下载)
ECM starter kit for Visual Studio 2005(下载)
Office InfoPath 2007 RTM 中文版
安装ECM starter kit之后如果出现项目模板丢失的情况请参考我的另外一篇文章<< Visual Studio.net 2005 新建项目对话框中项目模版消失的解决方案>>
添加SharePoint Workflow Actions到工具箱时选择Microsoft.SharePoint.WorkflowActions命名空间 下的控件.
Visual Studio项目
项目模板是SharePoint Server 下的 SharePoint Sequential Workflow Library.
添加并配置工作流活动时请注意所有活动都有一个Correlation Token属性,值得注意的是工作流本身 (Workflow),任务(Task)和修改(Modification)需要不同的Correlation Token.
创建强命名的程序集,因为您的程序集是要加入GAC的.
InfoPath表单
创建空白表单模板时要勾选仅启用浏览器兼容性功能.
在表单选项的安全和信任中,将表单的信任级别设置为域或者完全信任.
用于设置接收参数的xml文件中,接受参数总是以”ows_”开头.
修改组的名称,组的名称默认是MyFields,如果您想要为此表单生成类文件,那么类的名字就是组的名字 ,所以建议修改默认的名称(尤其当您的工作流项目中包含多张需要生成类文件的表单时).
为简单起见,将表单发布到项目文件夹内,否则在部署时需要特别注意.
发布表单时将可访问路径留空,否则安装工作流时会失败
部署
Feature.xml和Workflow.xml可以用插入代码段(Snippet)的方法生成内容,如果您发现您没有相关的代 码段,请参照我的另外一篇文章<< Visual Studio 2005中代码段丢失的解决方案>>.
Feature的ID和Workflow的ID是两个不同的GUID.
Install.bat文件中, 请用可以作为文件夹名称的字符串来替换MyFeature,最好不要包含空格,否则需 要手动将Install.bat文件中的路径前后加引号.
调试
更改了Feature.xml,Workflow.xml和表单文件之后需要重新安装工作流并重启IIS.
如果只是更改了程序集,只需要用新的程序集替换旧的,然后重启IIS就可以了.