From 4fcd450ffd0d9a93e32ae49811d1fb54a49bf600 Mon Sep 17 00:00:00 2001 From: "hieplq@hasuvimex.vn" Date: Sat, 29 Oct 2016 18:26:33 +0700 Subject: [PATCH] IDEMPIERE-3233:process dialog:deduce refresh tab when run a process --- .../adwindow/AbstractADWindowContent.java | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/AbstractADWindowContent.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/AbstractADWindowContent.java index f08789b739..b469e35eb2 100644 --- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/AbstractADWindowContent.java +++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/AbstractADWindowContent.java @@ -90,6 +90,7 @@ import org.compiere.model.GridWindow; import org.compiere.model.GridWindowVO; import org.compiere.model.I_M_Product; import org.compiere.model.MImage; +import org.compiere.model.MPInstance; import org.compiere.model.MProcess; import org.compiere.model.MProjectIssue; import org.compiere.model.MQuery; @@ -1193,9 +1194,16 @@ public abstract class AbstractADWindowContent extends AbstractUIPart implements } else if (event.getTarget() instanceof ProcessModalDialog) { + if (!DialogEvents.ON_WINDOW_CLOSE.equals(event.getName())){ + return; + } + hideBusyMask(); ProcessModalDialog dialog = (ProcessModalDialog) event.getTarget(); - onModalClose(dialog.getProcessInfo()); + ProcessInfo pi = dialog.getProcessInfo(); + + onModalClose(pi); + String s = null; boolean b = false; ProcessInfoLog[] logs = null; @@ -1211,7 +1219,13 @@ public abstract class AbstractADWindowContent extends AbstractUIPart implements b = statusBar.getStatusError(); logs = statusBar.getPLogs(); } - onRefresh(true, false); + + MPInstance instance = new MPInstance(ctx, pi.getAD_PInstance_ID(), "false"); + if (!instance.isRunAsJob()){ + // when run as job, don't expect see its effect when close parameter panel, so don't refresh + onRefresh(true, false); + } + if (getActiveGridTab().isQuickForm) { statusBarQF.setStatusLine(s, b, logs);