zoukankan      html  css  js  c++  java
  • 如何在列表模板中增加一个计算列

    ***********************************************************************************
    *                  版权声明                        
    *         此文章为ocean所有,版权归ocean所有,任何网站
    *和 媒体转载必须包含此段声明,否则将视为侵权,作者将 
    * 保留一切权力。此声明为此文章中不可或缺的一部分。 
    * 作者网名:ocean                                  
    * 作者email:ocean@forever.net.cn                  
    * 作者网站:http://www.oceanstudio.net             
    *                     http://sps.oceanstudio.net             
    * 作者blog:博客园,http://www.cnblogs.com/ocean  
    *                 ocean's blog,http://www.oceanstudio.net/sps/blog 
    * 此文章发表时间:2005年7月19日                     
    * 此文章源:http://ocean.cnblogs.com/archive/2005/07/19/195824.html                                   
    ************************************************************************************

          今天有一个网友询问,如果要在列表模板中增加一个计算列,公式应该写在什么地方。当时我也不知道怎么写,最正点的回答就是查SDK看CAML的语法帮助,当然CAML比较复杂,谁看着谁头疼,所以我就借用前段时间写的属性列表查看器(前段时间写的一个免费WebPart,可以点击此处下载 详细信息)来研究了一下。

          列表模板的定义是在Schema.xml中定义的,要添加一列,只要在<Fields>节内增加一个<Field>即可。但是现在要解决是增加一个计算列。所以首先我想到的是先看看在界面上新建一个计算列时,这个列的schema是什么。

          首先在一个列表中定义了一个计算列,列名为“列14”,定义公式为:标题&"aa"。实际很简单,就是在标题后面加上aa两个字符。然后通过属性列表查看器取这一列的schemaxml,得到如下:


    <Field Type="Calculated" DisplayName="列14" Format="DateOnly" LCID="2052" ResultType="Text" ReadOnly="TRUE" IMEMode="inactive" Name="_x5217_14" ColName="sql_variant1"><Formula>=Title&amp;"aa"</Formula><FieldRefs><FieldRef Name="Title" /></FieldRefs></Field>
          

         也即公式写在<Formula></Formula>之间 即可。这里简要说明一下,DisplayName对应的为Title,Name对应的是InternalName。在<FieldRefs>中对应的为引用的列名。这个列名需要是InternalName。 在sps的界面上自定义列表的时候,添加的栏的栏名为Title,也就是DisplayName,真正的Name是自动生成的,类似_x5217_14。

        

  • 相关阅读:
    November 07th, 2017 Week 45th Tuesday
    November 06th, 2017 Week 45th Monday
    November 05th, 2017 Week 45th Sunday
    November 04th, 2017 Week 44th Saturday
    November 03rd, 2017 Week 44th Friday
    Asp.net core 学习笔记 ( Area and Feature folder structure 文件结构 )
    图片方向 image orientation Exif
    Asp.net core 学习笔记 ( Router 路由 )
    Asp.net core 学习笔记 ( Configuration 配置 )
    qrcode render 二维码扫描读取
  • 原文地址:https://www.cnblogs.com/ocean/p/195824.html
Copyright © 2011-2022 走看看