• 用好ProcessBatchData (2)批量创建


    批量创建的格式如下:

    <?xml version="1.0" encoding="UTF-8"?>
    <ows:Batch OnError="Continue">
      <Method ID='0'>
        <SetVar Name="Cmd">Save</SetVar>
        <SetVar Name="ID">New</SetVar>
        <SetList>af653a38-7a6a-455c-a295-1604c4104a61</SetList>
        <SetVar Name="urn:schemas-microsoft-com:office:office#ContentType">Item子类型</SetVar>
        <SetVar Name="urn:schemas-microsoft-com:office:office#Title">Item001</SetVar>
        <SetVar Name="owsfileref">/ProjectCenter/ATP/Lists/Schedules/folderLevel1/Item001</SetVar>
      </Method>
    </ows:Batch>

    上一篇已经以此例做了概述的说明,此处仅补充一些关键的地方

    <SetVar Name="ID">New</SetVar>
    此行是不可少的,表示创建一个新的条目

    <SetVar Name="owsfileref">/ProjectCenter/ATP/Lists/Schedules/folderLevel1/Item001</SetVar>
    此行表示创建到哪个位置下,“/ProjectCenter/ATP/Lists/Schedules/folderLevel1/“是相对于SiteCollection的路径,第一个斜杠“/”不要忘记加上,“Item001”在创建文档时,表示一个文档的文件名,如“mytxt.txt”;创建Item时,界面上是不可看到,也不可编辑,但是必须保证该值是唯一的,否则创建失败。

    自定义的Field,前面必须要加上="urn:schemas-microsoft-com:office:office#“,而且必须是内部值,很多中文的名称变成如下的形式:“_x5de5__x671f_”。

    有些资料上提到的变量“FSObjType”,我试过多次,没有发现有什么用处,有没有它,都能够创建成功。

    创建Item和Folder类型有一定区别:

    1. 在ContentType变量处写上对应的内容类型就可以了,这点Item和Folder类型的ContentType是一样的,如果仅是文件夹本身,甚至直接写上“文件夹”也可以创建成功,也许有更好的办法也未可知。

    2. 创建Folder类型的ContentType时,owsfileref变量最后的Item001默认为Folder的标题,Title可以不需要,但是Item类型的是必须的,否则Title值为空(显示为“无标题”)。

    在打开内容审批的列表下,使用Save是无法给“审批状态”赋值的,此时需要用到Moderate,实际上Moderate也可以给其他变量赋值,比如Title等,具体的区别单独讨论。

  • 相关阅读:
    数组和字符串的一些常用方法
    函数记忆
    实现一个clone函数,对javascript中的5种数据类型进行值复制
    visual studio 2010问题修复
    url模块、path模块、querystring模块
    静态资源文件使用
    路由表机制
    解决Node.js服务器启动后在浏览器访问时中文显示乱码
    Node.js 初步了解
    Node.js 简介与安装
  • 原文地址:https://www.cnblogs.com/poissonnotes/p/1803259.html
Copyright © 2020-2023  润新知