我有一個顯示可用聯繫人列表的dijit。所選聯繫人隨後顯示在通過局部刷新更新的視圖面板中,直到我添加了一些代碼以檢查未選擇重複聯繫人。現在面板不會刷新。有任何想法嗎?Xpages部分刷新停止工作
這是檢查duplciates的SSJS。對不起,如果我沒有正確地解釋這個問題,或者如果有一個非常簡單的解決方案來解決這個問題 - 在這裏完全沒有問題。
var viewPanel=getComponent("viewPanel1");
var docIDs=viewPanel.getSelectedIds();
for(i=0 ; i < docIDs.length ; i++){
var docId = docIDs[i];
var doc:NotesDocument = database.getDocumentByID(docId);
// Get Contact Details from document
var FName = doc.getItemValueString("Org_Con_FirstName");
var LName = doc.getItemValueString("Org_Con_SurName");
var FullName = FName + " " + LName;
var Phone = doc.getItemValueString("Org_Con_Phone");
var Email = doc.getItemValueString("Org_Con_Email");
var Unid = doc.getUniversalID();
var checkView = database.getView("oppContacts");
var checkCollection = checkView.getAllDocumentsByKey(sessionScope.oppKey);
var checkCount = checkCollection.getCount();
var counter = 0;
if(checkCount != 0){
var checkDoc = checkCollection.getFirstDocument();
while(checkDoc!=null){
var checkEmail = checkDoc.getItemValueString("Email")
if(checkEmail==Email) counter = counter + 1;
var tempDoc = checkCollection.getNextDocument();
checkDoc.recycle();
checkDoc = tempDoc;
}
}
if(counter==0){
var oppContact = database.createDocument();
oppContact.replaceItemValue("Form","oppContact");
oppContact.appendItemValue("ContactName",FullName);
oppContact.appendItemValue("Email", Email);
oppContact.appendItemValue("Phone", Phone);
oppContact.appendItemValue("FullContact",Unid);
oppContact.appendItemValue("OpportunityKey", sessionScope.oppKey);
oppContact.save();
}
}
我會做的第一件事是圍繞該代碼添加一個try/catch塊來查看它是否不會引發任何錯誤。 –
它沒有拋出任何錯誤。代碼是添加聯繫人,但我需要執行兩次或刷新瀏覽器來更新視圖,並將按鈕設置爲完全更新不起作用:-( – brtweed
我從'var checkView = database'中刪除了所有內容'if(counter)....' - 部分刷新工作。我放棄:-( – brtweed