次の方法で共有


Views.UpdateView メソッド (websvcViews)

指定したリストの指定したビューを変更します。

名前空間: websvcViews
アセンブリ: STSSOAP (stssoap.dll 内)

構文

'宣言
<SoapDocumentMethodAttribute("https://schemas.microsoft.com/sharepoint/soap/UpdateView", RequestNamespace:="https://schemas.microsoft.com/sharepoint/soap/", ResponseNamespace:="https://schemas.microsoft.com/sharepoint/soap/", Use:=SoapBindingUse.Literal, ParameterStyle:=SoapParameterStyle.Wrapped)> _
Public Function UpdateView ( _
    listName As String, _
    viewName As String, _
    viewProperties As XmlNode, _
    query As XmlNode, _
    viewFields As XmlNode, _
    aggregations As XmlNode, _
    formats As XmlNode, _
    rowLimit As XmlNode _
) As XmlNode
'使用
Dim instance As Views
Dim listName As String
Dim viewName As String
Dim viewProperties As XmlNode
Dim query As XmlNode
Dim viewFields As XmlNode
Dim aggregations As XmlNode
Dim formats As XmlNode
Dim rowLimit As XmlNode
Dim returnValue As XmlNode

returnValue = instance.UpdateView(listName, viewName, viewProperties, query, viewFields, aggregations, formats, rowLimit)
[SoapDocumentMethodAttribute("https://schemas.microsoft.com/sharepoint/soap/UpdateView", RequestNamespace="https://schemas.microsoft.com/sharepoint/soap/", ResponseNamespace="https://schemas.microsoft.com/sharepoint/soap/", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Wrapped)] 
public XmlNode UpdateView (
    string listName,
    string viewName,
    XmlNode viewProperties,
    XmlNode query,
    XmlNode viewFields,
    XmlNode aggregations,
    XmlNode formats,
    XmlNode rowLimit
)

パラメータ

  • listName
    リストの内部名を含む文字列。
  • viewName
    ビューの GUID を含む文字列。
  • viewProperties
    すべてのビューレベルのプロパティを属性として含む XML フラグメント。EditorHiddenReadOnlyTitle など。
  • query
    返すレコードとその順序を決定するクエリを含む、System.Xml.XmlNode オブジェクトに割り当てることができる Query 要素。以下の例では、ID フィールドが 3 より小さい場合にクエリを実行し、アイテムをそのタイトル順に表示します。

    <Query>
      <Where>
        <Lt>
         <FieldRef Name="ID" />
         <Value Type="Counter">3</Value>
        </Lt>
      </Where>
      <OrderBy>
        <FieldRef Name="Title" />
      </OrderBy>
    </Query>
    
  • viewFields
    以下の例のような、クエリで返すフィールドを指定し、System.Xml.XmlNode オブジェクトに割り当てることができる ViewFields 要素。

    <ViewFields>
      <FieldRef Name="Title" />
      <FieldRef Name="ID" />
    </ViewFields>
    
  • aggregations
    以下の例のような、集約するフィールドを指定し、System.Xml.XmlNode オブジェクトに割り当てることができる Aggregations 要素。

    <Aggregations Value="On">
      <FieldRef Name="Title" Type="Count">
      <FieldRef Name="Number" Type="Sum">
    </Aggregations>
    
  • formats
    以下の例のような、列のグリッド書式設定を定義し、System.Xml.XmlNode オブジェクトに割り当てることができる Formats 要素。

    <Formats>
      <FormatDef Type="RowHeight" Value="67" />
      <Format Name="Attachments">
        <FormatDef Type="ColWidth" Value="75" />
      </Format>
      <Format Name="LinkTitle">
        <FormatDef Type="WrapText" Value="1" />
        <FormatDef Type="ColWidth" Value="236" />
      </Format>
       ...
    </Formats>
    
  • rowLimit
    ページングが開始される前にページ上に表示するアイテム数または行を指定する、System.Xml.XmlNode オブジェクトに割り当てることができる RowLimit 要素。フラグメントに Paged 属性を含めて、ビューがページ内のリスト アイテムを返すことを指定することができます。以下の例では、ページあたりのアイテム数の上限を 100 に設定します。

    <RowLimit Paged="True">100</RowLimit>
    

戻り値

以下の形式の、更新されたビュー スキーマを含む、System.Xml.XmlNode オブジェクトに割り当てることができる CAML (Collaborative Application Markup Language) の概要 フラグメント。

<UpdateViewResult>
  <View Name="{B5C3250A-1974-49E9-9F61-180F86704434}" DefaultView="TRUE" Type="HTML" 
    DisplayName="All Contacts" Url="Lists/Contacts/AllItems.htm" BaseViewID="1" > 
    <ViewFields>
      <FieldRef Name="LinkTitle" />
      <FieldRef Name="FirstName" />
      <FieldRef Name="Company" />
      <FieldRef Name="WorkPhone" />
      <FieldRef Name="HomePhone" />
      <FieldRef Name="Email" />
    </ViewFields>
    <Query>
      <OrderBy>
        <FieldRef Name="Title" />
        <FieldRef Name="FirstName" />
      </OrderBy>
      <Where>
        <Lt>
          <FieldRef Name="DueDate"/>
          <Value Type="DateTime">Today + 1</Value>
        </Lt>
      </Where>
    </Query>
    <Aggregations>
      <FieldRef Name=”Column1” Type=”Minimum”>
    </Aggregations>
    <RowLimit Paged="TRUE">100</RowLimit>
  </View>
</UpdateViewResult>

以下のコード例では、DateTime フィールドおよび Number フィールドの値が指定した値を超えるアイテムを返して、リストのビュー内のクエリ、行数の上限、およびビュー フィールドを変更します。この例では、using (C#) または Imports (Microsoft Visual Basic) ディレクティブが System.Xml 名前空間に含まれている必要があります。

Dim viewService As New Web_Reference_Folder.Views()
viewService.Credentials = System.Net.CredentialCache.DefaultCredentials

Dim strQuery As String = "<Where><And><Gt>" + _
    "<FieldRef Name="Date_Field" />" + _
    "<Value Type="DateTime">2003-6-10T12:00:00Z</Value></Gt>" + _
    "<Gt><FieldRef Name="Number_Field" />" + _
    "<Value Type="Number">200</Value></Gt>" + _
    "</And></Where>" + _ 
    "<OrderBy><FieldRef Name="Title" /></OrderBy>"

Dim strRowLimit As String = "50"
Dim strViewFields As String = "<FieldRef Name="Title" />" + _
    "<FieldRef Name="Date_Field" />" + _
    "<FieldRef Name="Number_Field" />"

Dim xmlDoc = New System.Xml.XmlDocument()

Dim ndQuery As XmlNode = xmlDoc.CreateNode(XmlNodeType.Element, "Query", "")
Dim ndRowLimit As XmlNode = xmlDoc.CreateNode(XmlNodeType.Element, "RowLimit", "")
Dim ndViewFields As XmlNode = xmlDoc.CreateNode(XmlNodeType.Element, "ViewFields", "")

ndQuery.InnerXml = strQuery
ndRowLimit.InnerXml = strRowLimit
ndViewFields.InnerXml = strViewFields

Dim retNode As XmlNode = viewService.UpdateView("List_Name", _
    "9781bd25-1f68-481f-81d3-1e4f3f9216dd", Nothing, ndQuery, ndViewFields, Nothing, Nothing, ndRowLimit)
Web_Reference_Folder_Name.Views viewService = new Web_Reference_Folder_Name.Views();
viewService.Credentials= System.Net.CredentialCache.DefaultCredentials;

string strQuery = "<Where><And><Gt><FieldRef Name=\"Date_Field\" />" +
    "<Value Type=\"DateTime\">2003-6-10T12:00:00Z</Value></Gt>" +
    "<Gt><FieldRef Name=\"Number_Field\" />" +
    "<Value Type=\"Number\">200</Value></Gt></And></Where>" +
    "<OrderBy><FieldRef Name=\"Title\" /></OrderBy>";

string strRowLimit = "50";

string strViewFields = "<FieldRef Name=\"Title\" />" +
   "<FieldRef Name=\"Date_Field\" />" + 
   "<FieldRef Name=\"Number_Field\" />";

XmlDocument xmlDoc = new System.Xml.XmlDocument();

XmlNode ndQuery = xmlDoc.CreateNode(XmlNodeType.Element,"Query","");
XmlNode ndRowLimit = xmlDoc.CreateNode(XmlNodeType.Element,"RowLimit","");
XmlNode ndViewFields = xmlDoc.CreateNode(XmlNodeType.Element,"ViewFields","");

ndQuery.InnerXml = strQuery;
ndRowLimit.InnerXml = strRowLimit;
ndViewFields.InnerXml = strViewFields;

XmlNode retNode = viewService.UpdateView("List_Name",
    "9781bd25-1f68-481f-81d3-1e4f3f9216dd", null, ndQuery, ndViewFields, 
    null, null, ndRowLimit);

関連項目

参照

Views クラス
Views メンバ
websvcViews 名前空間