zoukankan      html  css  js  c++  java
  • Sharepoint2010之父子表实现

     在Sharepoint的实际运用中会经常使用到父子表来建立2个表之间的关系。通常父表为表头,存储公共的数据项目,子表存储细分的项目。

    例如通过下面2个表实现图书借阅功能,表1为图书的基础信息,表2为图书的借阅记录,采用查阅字段调用表一的图书数据。

    1、先建一个自定表,字段如表1所示。

    表1   图书表                                                                                                               

    2、再建个自定义表,增加查阅字段

    表2   图书借阅记录字段如下

    3、打开建好的表一,新建一条记录,如下所示

    4、选择列表的数据,点击菜单上的“自定义表单”,调用Infopath2010对表单进行定制.

    调整后的表单如下

    图书编号希望采用自动编号功能,编号规则 TS+4位年号+3位序号。序号采用列表ID。增加数据源,采用图书表作为数据源。

    图书编号的属性里增加公式如下,ID为插入辅助数据源的域“ID”。预览一下,可以正常显示了。

    5、回到表1图书表的列表,选择上面菜单“表单web部件”,选择“显示窗体”。

    选择添加web部件,如下所示,添加图书借阅记录表。

    建立2表的连接,点击web部件右上角的小三角,数据发送对象,选择图书借阅记录,配置连接

    完成后选择右上角的停止编辑。点击表一 图书表的列表项目,可以看到效果如下。点击添加记录,可以增加借阅记录。

    6、此方法添加项目,需要手动选择主表的编号,不太方便而且容易出错。下面对表2进行如下改造。用Infopath编辑表2的表单,新建一个字段ID1,用于存储主表ID。

    ID1增加一条规则,当ID1不为空时,设置图书编号=ID1

    图书编号 增加一条格式规则。当图书编号不为空时,禁用此控件。

    7、上传表单到服务器后,进入表2 的表单web部件,(项目)新窗体。向窗体web部件增加一个查询字段URL筛选器

    配置筛选器,筛选字段填写 ID1,停止编辑。配置筛选器web的连接,选择ID1

    8、测试一下 ,浏览器填写表2的新建项目的连接地址  newifs.aspx?ID1=1  ,实现了通过URL传递参数,效果如下。

    9、回到表1,打开表1的表单web部件,显示窗体,添加web部件,选择内容编辑器,编辑HEML源代码。

    添加以下jqurey代码,由于本例采用jqurey,需要集成到Sharepoint内,可参考以下方法集成。

    http://www.cnblogs.com/Sunmoonfire/archive/2012/07/27/2612510.html

    代码如下,获取表1的ID,生成表2的带传递ID参数的地址。

    <script type="text/jscript">
    
    
    
    function test()
    {
    var tt=document.aspnetForm.attributes["action"].value;
    var arr=new Array();
    arr=tt.split('&');
    var ID1=arr[1].substring(3,10);
    var url1 = "http://列表地址/Item/newifs.aspx?ID1="+ ID1;
    return url1;
    }
    function openModalDialog()
    {
    var UURL=test();
    NewItem2(event,UURL);
    }</script>

    10、用 SharePoint Designer 2010 编辑表1的项目显示窗体

    点击添加新项目

    点击下面的标记的小三角,编辑标记

    粘贴下面的代码

    <a class="ms-addnew" href="#" onclick="javascript:openModalDialog();javascript:return false;" target="_self"> 

    保存后退出SPD。至此,大功告成。

    先填写表一,填写后,打开表一的项目,添加新项目,添加子表项目。

    效果如下

  • 相关阅读:
    程序员推荐书籍汇总
    mysql优化之表建设
    curl_setopt用此函数设置上传文件请求的兼容性调整
    VIM使用总结
    HDU3709 Balanced Number (数位dp)
    POJ2796 单调队列
    HDU 4870 Rating (2014 Multi-University Training Contest 1)
    HDU 4869 Turn the pokers (2014 Multi-University Training Contest 1)
    HDU 4864 (2014 Multi-University Training Contest 1 )
    Go Deeper(2010成都现场赛题)(2-sat)
  • 原文地址:https://www.cnblogs.com/cmmnhm/p/3287545.html
Copyright © 2011-2022 走看看