zoukankan      html  css  js  c++  java
  • 用好ProcessBatchData (3)批量更新

    批量更新的格式如下:

    <?xml version="1.0" encoding="UTF-8"?>
    <ows:Batch OnError="Continue">
      <Method ID='0'>
        <SetVar Name="Cmd">Save</SetVar>
        <SetVar Name="ID">14796</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">MyItem002</SetVar>
        //<SetVar Name="owsfileref">/ProjectCenter/ATP/Lists/Schedules/folderLevel1/MyItem002</SetVar>
      </Method>
    </ows:Batch>

    上面的操作实际上就是更新一下Item对象的Title值,比较一下前面批量创建的脚本,会发现实际上也就是“New”变成了对应的ID值“14796”,就成为更新操作了,非常简单。

    其他设置,比如自定义属性值什么的,都是一样的。是不是很简单呀,不过马上你就会发现上更新还是存在一些不怎么被我们关注的玄机的,假设我们现在的列表“内容审批”没有打开,现在你把该选项打开,再执行一下上面的脚本,看看还能成功吗?

    image

    答案是能,那你再更新执行一次,还能成功吗?

    答案是不能,你会得到一个错误:

    <Results>
      <Result ID=\"0\" Code=\"-2130239095\">
        <ErrorText>操作失败,由于发生意外错误。(结果代码: 0x81072189)</ErrorText>
      </Result>
    </Results>

    或者你再重新创建一个新的条目,然后,再把New改成创建好的Item ID,你又会得到一个错误:

    <Results>
      <Result ID=\"0\" Code=\"-2130575338\">
        <ErrorText>项目不存在\n\n所选的网页包含一个不存在的项目。该项目可能已被其他用户删除。</ErrorText>
      </Result>
    </Results>

  • 相关阅读:
    百度网盘免费下载加速
    linux docker 知识点总结
    openwrt 支持 EC200T
    openwrt 如何添加新设备支持
    openwrt DEPEND
    menuconfig kconfig
    golang 汇编
    按值传递
    YAPI认证用户利用Mock功能远程代码执行事件通告
    携程持久化KV存储实践
  • 原文地址:https://www.cnblogs.com/poissonnotes/p/1803260.html
Copyright © 2011-2022 走看看