2009-07-31 4 views
1

UpdateListItems Webサービスを使用して一部のcriteraに一致するリスト内の項目を削除したい。私は削除したいリスト項目のIDを知らないが、基準を知っている。私は何ができるSQLで例えばIDがわからないときにリスト項目を削除するSharepoint内のバッチ要素

:あなたがこれを行うにはバッチ要素を記述しますどのように

DELETE FROM listName WHERE LastName='Bauer' AND FirstName='Jack' 

更新

それはこのようなものでしょうか?

<Batch PreCalc='TRUE' OnError='Continue'> 
    <Method ID='1' Cmd='Delete'> 
    <Field Name='LastName'>Bauer</Field> 
    <Field Name='FirstName'>Jack</Field> 
    </Method> 
</Batch> 

削除するもののIDまたはIDですか?

更新

私は、次のコードを試してみましたし、返されるエラーは

Invalid URL Parameter 

The URL provided contains an invalid Command or Value. Please check the URL again. 

私の推測は

答えて

1

これは表示されません。

私のやり方は、リストを照会してIDを取得することでした。応答のためのループは、IDを削除し、各IDがそれを削除するメソッドを作成します。

0
... IDなしで行うことは不可能であるということです

私はWebサービスの使用に精通していませんが、検索するものがあると仮定します。 APIを使用すると、SPQueryを作成し、CAMLを使用して削除するリスト項目を取得します。 ChrisBの答えへの追加として

+0

私が取得する必要がCAMLは... – John

2

(コメントでCAMLクエリがうまくていないようでした書式設定)、あなたはこのような何かクエリを作ると思います:

SPQuery query = new SPQuery(); 
query.Query = "<Where><And>"+ 
    "<Eq><FieldRef Name='LastName'/><Value Type='Text'>Bauer</Value></Eq>" 
    "<Eq><FieldRef Name='FirstName'/><Value Type='Text'>Jack</Value></Eq>" 
    "</And></Where>"; 
SPListItemCollection items = list.GetItems(query); 

(これは、オブジェクトモデルでありますWebサービス呼び出しに自然に拡張されます)

次に、リスト項目をループしてバッチを構築します。

+0

あなたは私が私のcriteraすなわちジャックBaure クエリ情報のリストを持っていることを言っているように見えるはずですwhattheで確認していないIDの 私が得るID年代付きバッチスクリプトを作成する 削除するバッチスクリプトを実行する これがどのように機能するのか、最終目標は同じであると思う。 – John

+0

ほぼ実際には、インラインクエリのIDとファイル名の両方が必要です。その後、IDとFileRefフィールドの両方をバッチに入力します。はい、ちょっと精巧ですが、バッチ要素はフィルタリングをサポートしていないため、とにかく2段階のアプローチをとっています。 –

1

同様に、xmlのキーノードのC#対応値で使用できるSharepoint 2010オブジェクトモデルから返されたリストアイテムを取得するには、xmlの位置1に追加された文字を削除する必要があります。

//解読するコードは、SharePoint Server 2010オブジェクトモデルのリストアイテムから返されたXML文字列を解読します。 - 礼儀 - Rajiv Kapoor - idealals.co.in。完全なソリューションについては、を参照してください。

 string sRetVal = ""; 
     string myXMLStr = "​<robot><Key>ConstSigned</Key><Value>Rad Is Signed</Value><Key>CodeAddChangeReqSub</Key><Value>ACRS</Value><Key>CodeAddChangeReqInit</Key><Value>ACRI</Value><Key>CodeSupTaskComp</Key><Value>STC</Value><Key>CodeSupApprComp</Key><Value>SAC</Value><Key>CodeSupRejComp</Key><Value>SAR</Value><Key>CodeOperAppr</Key><Value>OPA</Value><Key>CodeOperRej</Key><Value>OPR</Value><Key>Oper1TaskCreated</Key><Value>OTC</Value><Key>Oper2TaskCreated</Key><Value>QCTC</Value><Key>Oper2TaskAppr</Key><Value>QCRA</Value><Key>Oper2TaskRej</Key><Value>QCRR</Value><Key>ApprPending</Key><Value>Approval Pending</Value><Key>PendingProcessing</Key><Value>Pending Processing</Value><Key>PendingReview</Key><Value>Pending Review</Value><Key>Approved</Key><Value>Approved</Value><Key>GroupOperation</Key><Value>Operation</Value><Key>WorkFlowHistoryList</Key><Value>/Lists/Workflow History</Value><Key>ColInitDateTime</Key><Value>Initiated Date Time</Value><Key>ColWorkFlowHistoryParentInst</Key><Value>Workflow History Parent Instance</Value><Key>ColWorkflowAssId</Key><Value>Workflow Association ID</Value><Key>ColListId</Key><Value>List ID</Value><Key>ColPrimaryItemId</Key><Value>Primary Item ID</Value><Key>ColDate</Key><Value>Date Occurred</Value><Key>ColOutcome</Key><Value>Outcome</Value><Key>ColDesc</Key><Value>Description</Value><Key>ColCreated</Key><Value>Created</Value><Key>ColTaskStatus</Key><Value>TaskStatus</Value><Key>ServiceReqList</Key><Value>Service Request</Value><Key>CAUEventList</Key><Value>Events</Value><Key>ReqStatus1</Key><Value>Request Status</Value><Key>ReqStatCode</Key><Value>Request Status Code</Value><Key>ColumnCode</Key><Value>Code</Value><Key>SuperUser</Key><Value>SuperUser</Value><Key>AssignedTo</Key><Value>AssignedTo</Value><Key>TaskListId</Key><Value>ID</Value><Key>DocLibId</Key><Value>List</Value><Key>WorkflowInstanceId</Key><Value>WorkflowInstanceID</Value><Key>TaskTitle</Key><Value>Title</Value><Key>Priority</Key><Value>Priority</Value><Key>ReqStatusCode</Key><Value>Request Status Code</Value><Key>ServiceRequestList</Key><Value>Service Request</Value><Key>CAUEventList</Key><Value>Events</Value><Key>ColumnDesc</Key><Value>Description</Value><Key>ColumnStatus</Key><Value>Status</Value><Key>Completed</Key><Value>Completed</Value><Key>ReqStatus</Key><Value>Request Status</Value><Key>ColumnTaskStatus</Key><Value>TaskStatus</Value><Key>ColumnPerComp</Key><Value>PercentComplete</Value><Key>Rejected</Key><Value>Rejected</Value><Key>CodeSupTaskCreated</Key><Value>STC</Value><Key>CodeSupTaskInit</Key><Value>SAI</Value><Key>Oper1TaskInit</Key><Value>OPI</Value><Key>Oper2TaskInit</Key><Value>QCRI</Value><Key>ColActedBy</Key><Value>Acted By</Value><Key>WorkFlowCode</Key><Value>Workflow Code</Value><Key>ProcCode</Key><Value>Process Code</Value></robot>"; 
     string myXMLStr1 = myXMLStr; 
     int ln = myXMLStr.Length; 
     int lnMinus1 = ln - 1; 
     char[] myst = { ' ', ' ', ' '};// create a long array enough to fit the xml 
     string mys = ""; 
     object m1 ; 
     string m2 = ""; 

     myXMLStr.CopyTo(0, myst, 0, ln);   m1 = myst.Clone(); 
     m2 = new string(myst);// m1;// ToString(); 
     m2.TrimStart(); 
     m2.TrimEnd(); 
     m2 = m2.Substring(1); 
     sRetVal = GetConfigVal(m2, "ProcCode"); 
     Console.WriteLine("****#*" + sRetVal + "*#******"); 
関連する問題