一步步学习微软InfoPath2010和SP2010--第六章节--发布并提交表单数据(1)--发布方法

        在之前的章节,你学会了如何创建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. 申请时间被捕获以后,你不想让域中的数据在下次表单打开时改变,所以清空“重新计算公式时刷新值”复选框,点击确定。

        小贴士: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域上的下拉箭头,点击“文本框”。


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表单。点击“添加文档”来填写新的表单。
        注意,这个基本的表单还有许多可以补充的。需要做几个重大改进。我们在本章节将会谈到,最明显的问题,表单没有提交按钮,且没有验证。
原文地址:https://www.cnblogs.com/crazygolf/p/3856626.html