사용할 수있는 연락처 목록을 표시하는 dijit가 있습니다. 선택된 연락처가 중복 된 연락처가 선택되지 않았는지 확인하기 위해 일부 코드를 추가 할 때까지 부분 새로 고침을 통해 업데이트하는보기 패널에 표시되었습니다. 이제 패널이 새로 고침되지 않습니다. 어떤 아이디어?Xpages 부분 새로 고침이 작동을 멈췄습니다.
다음은 중복을 확인하는 SSJS입니다. 죄송합니다. 내가이 properlly를 설명하지 못했거나이 '문제'에 대한 정말로 간단한 해결책이 있다면 - 여기에 멍청한 놈입니다.
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