2017-01-23 95 views
0

在SharePoint任務列表中,我們可以在列表中上移或下移任務。 AllItems.aspx中的Web部件記住了序列。我們如何檢索(使用CAML查詢)這些項目出現的順序?按照它們在任務列表中出現的順序獲取任務

編輯:我試過按日期排序修改,但顯然改變它們出現在任務列表中的順序不影響這個字段。

回答

0

下面的CAML查詢允許,因爲他們已經通過Move Up/Move Down按鈕調整以重新獲得相同的順序:

<Query> 
    <OrderBy> 
     <FieldRef Name="Order" Ascending="TRUE"/> 
    </OrderBy> 
</Query> 

任務列表包含列名爲Order存儲這些設置。

這裏是利用JSOM API的例子:

var ctx = SP.ClientContext.get_current(); 
var web = ctx.get_web(); 
var list = web.get_lists().getByTitle(listTitle); 
var items = list.getItems(createOrderQuery()); 
ctx.load(items); 
ctx.executeQueryAsync(
    function() { 
     //print items 
     items.get_data().forEach(function(item){ 
      console.log(item.get_item('Title')); 
     }); 
    }, 
    function(sender,args){ 
     console.log(args.get_message()); 
    }); 


function createOrderQuery(){ 
    var qry = new SP.CamlQuery(); 
    qry.set_viewXml('<View Scope="RecursiveAll"><Query><OrderBy><FieldRef Name="Order" Ascending="TRUE"/></OrderBy></Query></View>'); 
    return qry; 
} 
+0

是順序列真默認的列?我似乎無法找到它。 –

+0

我可以通過使用get_item('Order')來獲取Order列的值,但有趣的是,在CAML查詢的OrderBy部分中使用Order列似乎不起作用。 –

相關問題