I have a vf page in lightning which opens up on button click from the case detail page. The vf page will close the case upon save. I have an oncomplete method in vf page which navigates to the case detail page once database update is done. The case detail is not getting refreshed. How can i refresh the page?
Can any one help me in this regard.
I tried using page reference without using on complete, even in there the page is not getting refreshed.
vf page with on complete
function refreshpage() {
alert("method invoked 1");
var caseId='{!record.Id}';
if (sforce.console.isInConsole()) {
window.top.location = '{!JSENCODE($CurrentPage.parameters.parent_domain)}/console';
}if({!$User.UITheme == 'Theme4d'}){
alert('Lightning-->'+caseId);
sforce.one.navigateToURL('/one/one.app#/sObject/'+caseId+'/view',true);
}
else {
window.top.location = '/{!$CurrentPage.parameters.id}';
}
<apex:commandButton value="Save" action="{!save}" rendered="{!displayItems}" oncomplete="refreshpage();"/>
Controller with page reference
public PageReference save()
{
update record;
PageReference pageRef = new PageReference('/' + record.Id);
return pageRef;
//return controller.view();
}
I have tried all the below possibilities nothing seems to be working.
//window.open(window.location.origin+'/one/one.app#/sObject/'+caseId+'/view','_parent');
//sforce.one.navigateToSObject(caseId);
//window.location.href='/one/one.app#/sObject/'+caseId+'/view';
// window.top.location = '/{!$CurrentPage.parameters.id}';
// $A.get('e.force:refreshView').fire();
//Sfdc.canvas.publisher.publish({ name : "publisher.refresh", payload : { feed:true }});
//Sfdc.canvas.publisher.publish({name : 'publisher.refresh', payload : {feed: true, objectFields: true,
objectRelatedLists: {}}});
//window.reload(true);
//window.close();
//sforce.one.navigateToURL('/one/one.app#/sObject/'+caseId+'/view',true);
Best Answer
As per salesforce this seems to be a know issue. Intermittent fix will be released in spring 18.