在以前的章节,你学会了如何建立InfoPath表单,如何添加布局和控件,甚至如何建立简单的SharePoint列表表单。由于本章节主要致力于发布方法,咱们将建立简单的表单,重点在发布和提交过程。你学到的方法和最佳实践将应用到建立的全部表单,除了SharePoint列表表单。在第四章节“处理SharePoint列表表单”,你可能已经注意到,数据 链接的建立和发布方法的选择不被要求,由于它们都是自动内置的。下面是三种不一样的发布选择:
1.
表单库
当表单须要填写并只能发布到单一位置时,发布到SharePoint表单库。当表单被发布到表单库时,表单模板的XSN文件变成了库的模板。典型地,当发布到库时,表单也会提交到相同库。
2.
网站内容类型
当表单须要在多个库中使用时发布到内容类型。当表单以这种方式发布时,新表单内容类型能够添加到站点的许多不一样库中。看成为内容类型发布到网站集的顶层时,内容类型能够在网站集中全部的站点和库中使用。
3.
经管理员核准的表单模板
当表单须要跨越场全局部署时,或者包含自定义的代码,做为经管理员核准的表单模板发布。当这种类型的表单被发布时,不像使用其余两种方法,它不自动部署到SharePoint中。这种方法建立一个XSN文件做为输出,它而后必须被服务器管理员上载到InfoPath Forms Service中。
既然如今你对三种不一样的发布方法有了基本的理解,是时候开始一些练习了。在Contoso,每一个员工将导航到SharePoint内相同的表单库,在那儿,每一个请假请求都被收集在SharePoint表单库中。当收集时,全部的公司时间请求能够被排序筛选,多个视图能够被建立。由于全部的表单必须放置在一个位置,以便进一步作报表和传播,因此单一一个表单库就够了。
在下面的练习中,你将建立一个公司请假申请表单。这个表单将用在本章中的每一个练习中。
准备:在浏览器中打开SharePoint站点,这样能够建立新列表。在你的电脑中建立一个新的文件夹C:\InfoPath Files。
1.
打开InfoPath Designer 2010
2. 在经常使用表单模板部分,点击选择SharePoint表单库。而后点击右侧的“设计表单”。浏览器

3. 在咱们添加控件到表单前,一些域能够在域窗格建立。右击“myFields”,而后点击“添加”打开“添加域或组”对话框。服务器

4.
在“名称”框中输入EmployeeInfo,“类型”输入“Group”,并点击肯定。
目标是用组来组织全部域,到逻辑节中。
小贴士:建立和保持域被组织好对于表单建立者是有益的。这是你的工做变得简单,特别是对于超过50个域的表单。表单在生产环境使用以前,确保域组织是完整的。过后从新安排域会引发数据丢失。
5.
在myFields节,使用相同方法建立另外一个组RequestInfo,点击肯定。
6. 右击EmployeeInfo点击添加域FirstName,类型为域(元素),数据类型为文本(字符串),点击肯定。函数

7. 使用下面的表重复步骤6,建立剩下的域。布局


小贴士:若是任何域在结构中错误的位置建立,右击域可查看额外选项如移动、下移或上移。
8.
双击RequestDate域,而后点击默认值边上的公式按钮
9. 点击“插入函数”按钮,选择“日期和时间”类别,在“函数”部分,选择“now”,点击肯定。网站

10. 申请时间被捕获之后,你不想让域中的数据在下次表单打开时改变,因此清空“从新计算公式时刷新值”复选框,点击肯定。spa

小贴士:now()函数能够被使用,是由于RequestDate域做为日期时间域被建立。若是域只是做为日期域被建立,那么相应地是today()函数可使用。本例中,咱们想要对于每一个表单RequestDate老是惟一的。所以,捕获日期和时间到秒确保了域值惟一。
11. 如今咱们须要添加一些文本到布局。点击表单的“单击此处添加标题”,输入Time-Off Request Form。点击第一个“单击此处可添加标题”域,输入Employee Information;在第二个“单击此处可添加标题”域,输入Request Information。设计

12.
拖动FirstName和LastName域到Employee Information节的第一行。
13.
Request Date域有点不一样。它将被设置为只读。由于日期和时间选取器不能设置为只读,它将做为文本域被插入。在Employee Information节第二行最左边的单元格,输入Request Date:(包含冒号)。
14. 按下Tab键,这样光标在第二行的第二个单元格中。在右侧的域列表,点击RequestDate域上的下拉箭头,点击“文本框”。orm

15.
双击表单上的Request Date文本框,在功能区,“属性”选项卡,选择“只读”复选框。
16.
拖动Department域到相同节的第二行。选中第三行,删除整行。
17. 在Request Information节,放置LeaveDate域到第一行,ReturnDate域到第二行,Reason域到第三行。合并第三行的两个单元格。排序

如今表单被建立了,它将做为本章节其他练习的基础被使用。
下面的练习中,请假申请单将做为表单库发布到SharePoint。
准备:在浏览器中打开SharePoint站点。浏览以前建立的Time Off Request表单。若是Time Off Request表单当前不是在InfoPath Designer 2010中打开的话,导航到该文件,右击选择设计。
1.
点击“文件”菜单,点击“发布”,而后点击SharePoint服务器。
“保存为”屏幕出现,要求你保存XSN文件。这个XSN文件时新的InfoPath表单的模板文件。保存地址是文件的一个backup拷贝。
2.
选择C:\InfoP Files,命名文件为TimeOff.xsn。打开发布向导。
注意:稍后处理XSN文件时,能够简单右击保存的XSN文件,选择设计。
3. 在发布向导第一页,输入SharePoint站点URL,点击“下一步”。开发

4. 在建立新表单时,默认兼容级别是基于浏览器的。由于表单只会在一个表单库使用,在浏览器中填写,默认设置能够保持不变,点击“下一步”。

小贴士:若是表单的兼容想须要改变(发布期间除外),点击文件,选择窗体选项。有个兼容性节,那儿有更多设置。
5. 由于这是表单第一次发布,选择“新建表单库”选项,点击“下一步”。

6. 输入Time Off Form做为表单库名,描述域输入This is the time-off request form,点击“下一步”。

7.
你的域能够被提高为SharePoint库的栏。如今,栏将为空,直到下个练习,因此简单点击“下一步”。
小贴士:屏幕下半部分是添加参数的地方。第八章节“使用InfoPath表单Web部件”,会讨论InfoPath表单Web部件,它包含了关于参数的部分,以及如何使用参数的例子。
8. 在最后一页,检查表单信息的总结,点击“发布”。 9. 打开浏览器,导航到第三步用的URL,在左侧导航面板“库”部分,点击Time Off表单。点击“添加文档”来填写新的表单。 注意,这个基本的表单还有许多能够补充的。须要作几个重大改进。咱们在本章节将会谈到,最明显的问题,表单没有提交按钮,且没有验证。