1

所以我对共享点列表网络服务的使用有疑问。

我需要为 Sharepoint 批处理脚本获取正确的语法以插入新项目。除了多选字段类型外,一切都很好。

我插入数据,但不管我怎么做,它会显示在 SP 列表项详细信息上 OK,但是当尝试在 SP 中编辑项目时,我看到,SP 已将我发送到该字段的值作为文本字符串,并且不检查我保存为选中的项目。

现在的脚本如下:

<?xml version="1.0" encoding="UTF-8"?>
<Batch OnError="Return">
<Method ID='1' Cmd='New'>
<Field Name='SecurityCheckpoints'>1st checkpoint;2nd checkpoint</Field>
</Method>
</Batch>

该字段的定义如下:

  <Field Type="MultiChoice" 
         DisplayName="Checkpoints allowed" 
         Required="TRUE" 
         FillInChoice="FALSE" 
         ID="{guid-guid-guid-guid-guid}" 
         SourceID="{guid-guid-guid-guid-guid}" 
         StaticName="SecurityCheckpoints" 
         Name="SecurityCheckpoints" 
         ColName="ntext2" 
         RowOrdinal="0" 
         Version="4">
          <CHOICES>
            <CHOICE>1st checkpoint</CHOICE>
            <CHOICE>2nd checkpoint</CHOICE>
            <CHOICE>3rd checkpoint</CHOICE>
          </CHOICES>
          <Default>1st checkpoint</Default>
        </Field>

我必须在不同用途的silverlight应用程序中为sharepoint实现自定义UI之类的东西,所以我使用自己的网络服务作为SP和SL之间的代理,我检索SP列表定义并动态构建UI控件,因此用户可以填写表格。

我如何形成脚本,因此在 SP 中选择(勾选)项目而不是 SP 将它们保存为字符串值?

如果我只使用一个项目(“第一个检查点”)的脚本,SP 可以处理它,它有很多,数据保存为文本字符串?

我做错了什么?我如何正确分隔多个值?

我搜索了高低,但没有找到包含多选示例的 SP 更新脚本示例。

先感谢您!

4

2 回答 2

2

我找到了解决方案 - 这太容易了:

不是使用分号“;”分隔选择值,而是必须使用“;#”分隔选择值,并将其放在整个列表的前面和后面。

所以不要使用这个: 第一个检查点;第二个检查点

<?xml version="1.0" encoding="UTF-8"?>
<Batch OnError="Return">
<Method ID='1' Cmd='New'>
<Field Name='SecurityCheckpoints'>1st checkpoint;2nd checkpoint</Field>
</Method>
</Batch>

必须这样做: ;#1st checkpoint;#2nd checkpoint;#

<?xml version="1.0" encoding="UTF-8"?>
<Batch OnError="Return">
<Method ID='1' Cmd='New'>
<Field Name='SecurityCheckpoints'>;#1st checkpoint;#2nd checkpoint;#</Field>
</Method>
</Batch>

PS:我不知道这样做是否正确,但我回答了我自己的问题。只是为了让别人知道。

于 2012-12-05T06:54:04.277 回答
0

我成功运行下面的代码。

<?xml version="1.0" encoding="UTF-8"?><ows:Batch OnError="Return">
<Method ID="0"><SetList>3933c528-5747-4fc7-bdec-6465294997dd</SetList>
<SetVar Name="Cmd">Save</SetVar>
<SetVar Name="ID">New</SetVar>
<SetVar Name="urn:schemas-microsoft-com:office:office#Temp_UNID">8D8DE35CFFE9EEEAC12570920052A8FD</SetVar>
<SetVar Name="urn:schemas-microsoft-com:office:office#Title"> - Birch Data Exchange Specification</SetVar>
<SetVar Name="urn:schemas-microsoft-com:office:office#C0370A_Agora_DocNum">8AL020210178ZZASB</SetVar>
<SetVar Name="urn:schemas-microsoft-com:office:office#C0370A_Agora_Phase"></SetVar>
<SetVar Name="urn:schemas-microsoft-com:office:office#C0370A_Agora_Author">Jerome BOURGER</SetVar>
<SetVar Name="urn:schemas-microsoft-com:office:office#C0370A_Agora_ServicesOri">  </SetVar>    
<SetVar Name="urn:schemas-microsoft-com:office:office#C0370A_Agora_Type">;#3 - Quality Plan;#Objectives;#Progress Plan;#Follow-up;#Reports;#</SetVar>
<SetVar Name="urn:schemas-microsoft-com:office:office#C0370A_Agora_Keywords"></SetVar>     </Method></ows:Batch>
于 2013-07-23T08:03:44.173 回答