InfoPath表单Web部件插入到SharePoint页面后,Web部件设置用来进一步配置它。不仅可以选中来自网站特定的表单,而且也可以选中表单视图,以及更多关于表单显示和行为的自定义。
本部分将描述每个Web部件设置。下面展示添加到页面上的InfoPath表单Web部件属性的Web部件工具窗格的例子。
1. 列表或库
这个选项允许选择之前发布到网站的表单。列表中存在的表单名,需要满足以下条件
A. 当前站点SharePoint列表使用InfoPath表单自定义,而不是默认列表表单。
B. 一个表单直接发布到当前站点的表单库。
C. 作为内容类型或经管理员核准的表单模板发布的表单,被作为内容类型添加到当前站点至少一个库。
2. 内容类型
如果被选列表或库中存在不止一个表单内容类型,选择要显示在此Web部件中的指定内容类型名称。
3. 显示只读表单(仅列表)
只有当选中表单和SharePoint列表(而不是库)关联,此选项才可用。如果表单只需要显示在页面而不需要填写,就选中它。
4. 显示InfoPath功能区或工具栏
当选中此复选框时,上下文功能区被启用。这意味着当表单被填写或选中时,浏览器窗口顶部功能区显示与表单提交相关的上下文。下图展示了当基于列表的表单被填写时,上下文工具栏的例子。
小贴士:当选中此复选框时,页面上界面有点古怪,特别是如果InfoPath表单Web部件远离页面顶部的话。当表单被填写时,站点访问者可能需要看页面顶部,功能区的“编辑”选项卡,来找到“保存”或“提交”按钮,以提交表单。为了在表单提交过程中避免疑惑,你可以清除“显示InfoPath功能区或工具栏”复选框。这样,提交按钮将需要添加到表单上。
5. 页面加载时发送数据到连接的Web部件
这个复选框只有当Web部件连接被用来与InfoPath表单Web部件关联时,才是有意义的。当筛选器数据被从一个Web部件发送到另一个时,页面第一次加载时表单中存在的任何默认值都被发送到连接的Web部件。这导致consumer(接收)Web部件自动被筛选来显示表单中的默认值。
6. 选择默认显示的表单视图
选择在Web部件中显示的表单时图。在第三章节“表单设计基础:使用InfoPath布局、控件和视图”查看更多视图方面的信息。
小贴士:因为此Web部件以原始尺寸显示选中的表单视图,更小的视图将特别地被创建在此Web部件中。在表单中,创建一个新视图,并通过收缩表格和移除多余空白来减小其尺寸。
7. 提交行为
你可以选择表单被填写并提交后执行的操作:
A. 关闭表单
表单被填写后,表单被灰色文本“表单已关闭”代替。
B. 打开新表单
表单提交后,马上出现新的空白表单。
C. 保持表单打开
表单被提交到列表或库,但是它仍然保持打开状态,没有任何显示数据已提交。网站访问者可能多次提交相同表单(如果表单提交发生的不明显的话)。
小贴士:如果表单库表单中提交选项被禁用,提交行为下拉框也会被禁用。那样的话,将应用表单提交按钮规则后的操作。
下面的练习中,你将创建一个新的SharePoint2010样本站点,和简单的表单库表单(用来捕获网站访问者的网站反馈)。这个表单将在本章节剩余的练习中使用。
准备:在浏览器中打开SharePoint站点,以新建子网站。
1. 点击“网站操作”,选择“新网站”,然后使用“文档工作区”模板创建网站Test Feedback。
2. 打开InfoPath Designer2010.新建“SharePoint表单库”。
3. 点击“设计表单”。
4. 在右侧“域”窗格,右击“myFields”,选择添加。
5. 创建下列域,其中Subject为必填域。
6. 在表单主要区域,点击Ctrl+A,删除所有,然后点击Delete删除表单内容,这样表单完全空白。
7. 在功能区“插入”选项卡,点击展开查看更多表格,选择“单列堆积2”。
8. 表头输入Feedback Form。
9. 在“布局”选项卡,点击“宽度”按钮收缩整个表格宽度到410px,点击“确定”。
10. 从“域”窗格,拖拽Subject域到表格下一行,表头之下。
11. 拖拽Feedback Comments域到下一行,双击选中“Feedback Comments”文本框,在“属性”选项卡,该变其高度为50px。
12. 点击“控件属性”按钮,在“显示”选项卡,选择“多行”复选框,点击“确定”。
这保证了如果输入多行文本时,框会拓展来适应更多文本。
13. 拖拽Category域到最后一行。
14. 右击此文本框,选择“改变控件”,选择“下拉列表框”。
15. 选中此下拉列表框,按下Alt+Enter快速打开属性。
16. 点击“添加”,添加两个选项:Suggestion和Complaint,点击“确定”。
17. 在功能区,点击“文件”选项卡,选择“发布”,然后选择“SharePoint服务器”。
18. 发布表单到步骤1创建的站点上的新的SharePoint表单库Feedback Form。
请到第六章节“发布和提交表单数据”获得更多发布过程的详细信息。确保记住保存XSN文件的地方。在想到的“属性提升”页,添加表单中全部三个域。
现在基本的feedback表单已被创建,它可以用来手机反馈信息。然而,表单还没有任何提交功能。下一步是创建数据连接,这样表单可以被填写和提交到SharePoint。
下面练习中,你将创建数据连接,然后添加InfoPath表单Web部件到站点首页,这样对用户来说填写表单变得直观且容易。
1. 在InfoPath中“数据”选项卡,点击“到SharePoint库”。
2. 创建提交连接到Feedback Form库。(在第七章节“从SharePoint列表和BCS接收数据”查看更多关于数据连接的详细信息)。在“数据连接向导”中,确保选择默认设置“设置为默认提交连接”。
3. 在“数据”选项卡,点击“提交选项”按钮。
4. 点击“高级”按钮,选中“如果表单提交成功则显示此信息”。“提交后”下拉框,改为“打开新表单”,点击“确定”。
5. “快速发布”最近修改。
6. 在Test Feedback站点首页,点击“网站操作”,选择“编辑页面”。
7. 在页面右边区域,点击“添加Web部件”。
8. 选择“表单”类别,在右侧选中“InfoPath表单Web部件”,点击“添加”。
9. 现在Web部件已经被添加到页面,它需要配置来显示发布到网站的Feedback表单。点击“单击此处可打开工具窗格”链接。
10. 在右侧的“列表或库”下拉框,选择“Feedback Form”。“内容类型”域只有一个默认值“表单”,因为它是库中唯一内容类型。
11. 核实已选中“显示InfoPath功能区或工具栏”复选框,“视图”下拉框默认“视图1”,因为它是表单中唯一视图。在“提交行为”下拉框,选择“打开新表单”。
12. 展开“外观”部分,在“标题”框中输入Feedback Form。点击“确定”。
现在表单被创建并作为Web部件插入到首页。填写相同的测试信息,点击“提交”(屏幕左上角浏览器的功能区)。
当表单必须使用工具栏默认的提交按钮提交时,它变得很令人困惑。下面的练习中,表单将被修改,这样提交按钮在表单上,而不是在功能区。
1. 在InfoPath表单上,在Category下拉框右边,点击Tab键创建一个新的单元格。
2. 在“文件”选项卡上点击“按钮”对象,插入按钮到表单。
3. 选中此按钮,使之居中。
4. 双击按钮,打开“属性”选项卡,在“操作”下拉框中选择“提交“。
5. 点击“快速发布”。
6. 现在表单被修改且发布了。在浏览器中刷新页面。点击Feedback Form Web部件右上角下拉框,选择“编辑Web部件”。
7. 在Web部件工具窗格,清除“显示InfoPath功能区或工具栏”复选框,点击“确定”。
注意到现在当填写表单时,你有明显的提交按钮可以单击。当表单被填写且提交时,数据将保存在Feedback Form表单库中。