• 一步步学习微软InfoPath2010和SP2010--第四章节--处理SP列表表单(3)--列表表单域


            InfoPath自定义的SP列表表单中,InfoPath中的域窗格列表与列表设置中存在的栏目一一对应。说到域列表,不仅列表表单和表单库表单界面不同,而且功能上也有主要区别。列表表单继承了扁平结构;因此它们不能像表单库表单一样,拥有层次信息结构。

            这对你意味着什么呢?它意味着表单中不能有重复表或者任何种类的列表。重复表的使用例子是费用报表。在表单的顶部,输入差旅信息,如目的地和部门名。在表单中的表格里,输入所有行的数据(差旅产生的费用)。这个列表可以涵盖一个到尽可能多的项目。在InfoPath中典型使用的是重复表或重复节控件。如果你的表单需要一个像这样的列表,一个SharePoint列表不是最好的选择,一个SharePoint表单库可能会需要的。

            16种不同的控件可以在SharePoint列表中使用,并且它们用独特的图标表示。“文件”选项卡提供了一个可拓展列表的控件。


            点击“控件”部分的右下角的灰色箭头,可以看到完整面板的控件。


            注意:第三章节“表单设计基础:处理InfoPath布局、控件和视图”有更多关于表单空间类型以及用途的信息。

            列表设置中栏目类型名与InfoPath输入控件名不匹配。下面显示了SharePoint中栏目数据类型和InfoPath控件之间的映射关系。


            注意:对象和容器可以在表单上放置和使用,不必创建新域。输入域需要与列表栏目绑定。

            在本章节前面例子中创建的表单里,域被从域窗格拖曳,并放置在有组织的表格结构中。有三种不同的方式从域列表中修改、添加或移除栏目。

    附加:域命名最佳实践
            当在InfoPath中命名域时,最佳实践是在创建时给每个域精确的名字。当控件被添加到表单时,他们默认的名字是域1、域2等等。确定重命名所有域以使其合理。
    1. 从InfoPath
            从可用的输入控件列表(不要与已经创建的域列表弄混),拖拽新的控件到表单。以此以这种方式创建的域名为域1、域2…创建后更名是很重要的。
    2. 从列表设置
            在浏览器中,在列表设置页面,点击创建栏。如果这是在InfoPath自定义表单后做的,需要在设计界面手动添加域。同样的适用于删除的域。必须从表单中手动删掉。
    3. 从SharePoint Designer
            当SharePoint站点在SharePoint Designer中打开时,点进列表和库,所有列表和它的栏目都可以更改。对表单的影响域在设置页面更改栏影响相同。
            注意:在第十章节“InfoPath与SharePoint Designer工作流集成”了解更多关于InfoPath和SharePoint Designer集成的信息。
            域添加到表单,在域窗格显示后,默认是个简单的列表,每个域用一个图标表示其类型。这是域的基本视图,在之前练习第11步可见。在域窗格底部,当高级视图被选中时,你可以看到域在表单库表单中的样子。也有个下拉框,包含其它数据连接。选择任何其它数据连接查看它的域。


    附加:接收数据----数据连接
            数据连接是个动态链接,配置来从表单到另一个位置如SharePoint、Web service或SQL数据库,接收或提交数据。当处理一个有多个数据连接的表单时,特别是多个连接从其他源如SharePoint列表接收数据时,看到在那个源抽取的数据是很有益的。在InfoPath Designer右侧的域窗格中,点击高级视图。点击主下拉框,选择另一个源。包含所有数据域的(源)文件图标可以直接拖拽到表单界面,作为重复表。当表单被预览时,这是“偷窥”表单内容的好办法。
            注意:在第七章节“从SharePoint列表和业务数据连接接收数据”获得更多关于数据连接的信息。
            下面的练习中,你将使用不同方法,添加新域到表单。
            准备:在浏览器中打开SharePoint站点,导航到Travel Requests列表
    1. 在功能区,“列表”选项卡,点击 “创建栏”。
    2. 创建一个货币栏Hotel Per Night,点击确定。


            在SharePoint上添加的新栏,不会动态添加到已存在的自定义表单中
    3. 点击 “自定义表单”
            对话框打开,询问“是否要InfoPath更新可用域集”。
    4. 点击“是”。
    5. 将光标放置在Travel Purpose单元格,点击“在下方插入”
    6. 拖动Hotel Per Night域到新行的左单元格。
    7. 将光标放在右侧单元格。在功能区点击“文件”选项卡,在“控件”列表中点击“文本框”控件。


    8. 双击选中该文本框,在控件工具----属性,重命名为Number of Nights,更改数据类型为数字。


    9. 在该文本框左侧,输入Number of Nights。


    10. 关闭InfoPath,点击 “保存并发布”。
    11. 在浏览器中Travel Requests列表,点击 “添加新项目”,输入信息并保存。
            注意到两个新栏目现在有你填入的hotel和nights的信息了。


  • 相关阅读:
    JavaScript初学者应注意的七个细节
    KindEditor 编辑器使用方法
    有关 JavaScript 的 10 件让人费解的事情
    能说明你的Javascript技术很烂的五个原因
    分享10个便利的HTML5/CSS3框架
    现在就使用HTML5的十大原因
    你应该知道的Node.js扩展模块——Hashish
    C++ Tip: How To Get Array Length | Dev102.com
    MPI for Python — MPI for Python v1.3 documentation
    http://construct.readthedocs.org/en/latest/basics.html
  • 原文地址:https://www.cnblogs.com/crazygolf/p/3856943.html
Copyright © 2020-2023  润新知