如何自动化将InfoPath表单部署到SharePoint Server 2007的过程?
将我的InfoPath 2007表单从设计器部署到我们开发环境的SharePoint服务器中确实是一个痛苦。我们所有的表格都需要"完全信任",因为它们包括用C#编写的业务逻辑。以下是手动步骤:
1)在InfoPath中运行"发布表单"向导,指定要发布到的目标站点以及保存xsn文件的位置。
2)从网站集功能中停用表单的现有版本(如果存在较旧的版本)。
3)登录到开发服务器上的Central Admin。导航到"应用程序管理"->"管理表单模板",然后上传xsn文件。
4)将表单激活为网站集功能。
有谁知道如何将其自动化?也许通过stsadm?
解决方案
我们可以将InfoPath表单打包在SharePoint解决方案(WSP文件)中。这些可以通过使用STSADM进行部署。欲获得更多信息:
- http://blogs.importchaos.com/alonsorobles/2008/06/04/creating-a-sharepoint-solution-for-an-infopath-form-template-deployment/#comments
- http://www.crsw.com/mark/Lists/Posts/Post.aspx?ID=37
- http://blah.winsmarts.com/2008-8-Deploying_InfoPath_2007_Forms_to_Forms_Server_-and-ndash_Properly.aspx
我们可以构建自己的服务,以在共享点服务器中部署InfoPath表单。我已经开发了解决我的问题的服务。
我已经使用STSADM命令来部署InfoPath表单。我们必须了解STSADM语法,以便可以构建脚本来部署InfoPath表单。
在这里,我总结了我的所作所为。这可能对我们很有用。
我开发了Web服务,该服务将使用STSADM构造脚本并将其另存为bat文件,并使用C#中可用的Process命令运行批处理文件。
另外两个选项是:
1)运行"发布表单"向导后,请按照以下博客文章使用带有stsadm命令的批处理文件:
http://sharenotes.wordpress.com/2008/03/18/using-stsadm-to-deploy-upgrade-update-infopath-forms-templates-with-managed-code-behind/
2)使用Codeplex上的InfoPath Form部署工具(或者我们可以简单地使用该工具生成批处理文件):
http://www.codeplex.com/InfoPathFormsInstall