Обновить элемент списка SharePoint с помощью Caml Query (используя заголовок элемента) - Не работает - Нет ошибок - PullRequest
0 голосов
/ 28 февраля 2019

Я пытаюсь обновить свой элемент списка SharePoint на основе «заголовка» (не идентификатора).Я использую Caml Query для этой цели.Ниже приведен код, он не работает.Пожалуйста, помогите.

    function updateTowerStatus(title, tower, status, comments)
{
    var targetSiteUrl = "https://office2.bt.com/sites/GBA-"+tower;
    var targetProductListName = tower+"Products";
    ClientContext = new SP.ClientContext(targetSiteUrl);
    var oList = ClientContext.get_web().get_lists().getByTitle(targetProductListName);

    var camlQuery = new SP.CamlQuery();
    camlQuery.set_viewXml('<View><Query><Where><Eq><FieldRef Name="Title"/><Value Type="Text">'+title+'</Value></Eq></Where></Query></View>');   

    this.collListItem = oList.getItems(camlQuery);   
    ClientContext.load(oList);
    ClientContext.load(collListItem);
    ClientContext.executeQueryAsync(onQuerySucceeded, onQueryFailed);
}
    function onQuerySucceeded() {   
    var listItemEnumerator = collListItem.getEnumerator();
    while (listItemEnumerator.moveNext()) 
    {   
        var item = listItemEnumerator.get_current(); 
        item.set_item(tower+'ApprovalStatusOpenreach', status);
        item.set_item(tower+'CommentsOpenreach', comments);    
        item.update();
        ClientContext.load(item);
        ClientContext.executeQueryAsync(Function.createDelegate(this, this.onUpdateSucceeded), Function.createDelegate(this, this.onQueryFailed));

    }
}
    function onQueryFailed(sender, args) {
       alert('Request failed. ' + args.get_message() + '\n' + args.get_stackTrace());
    }

Любые другие альтернативные решения для работы также приветствуются.Сценарий: мне нужно обновить статус одного списка, когда элемент в другом списке с таким же заголовком утвержден / отклонен.Я могу просто сохранить идентификатор и сделать это.Но как мне сохранить идентификатор создаваемого предмета?

1 Ответ

0 голосов
/ 14 мая 2019

переменная башня недоступна в методе onQuerySucceeded ().это часть updateTowerStatus ()

...