From 57163af0bf37e41c4a62758241b532b5d5a62b88 Mon Sep 17 00:00:00 2001 From: hieplq Date: Wed, 30 Jul 2014 16:19:17 +0700 Subject: [PATCH] IDEMPIERE-2105:show a dialog to display more info after run a process from info window --- .../org/adempiere/webui/panel/InfoPanel.java | 25 ++++++++++++++++--- 1 file changed, 21 insertions(+), 4 deletions(-) diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/panel/InfoPanel.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/panel/InfoPanel.java index cb9b78b7f7..efb63230ab 100644 --- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/panel/InfoPanel.java +++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/panel/InfoPanel.java @@ -44,6 +44,7 @@ import org.adempiere.webui.component.Button; import org.adempiere.webui.component.Combobox; import org.adempiere.webui.component.ConfirmPanel; import org.adempiere.webui.component.ListModelTable; +import org.adempiere.webui.component.ProcessInfoDialog; import org.adempiere.webui.component.WListItemRenderer; import org.adempiere.webui.component.WListbox; import org.adempiere.webui.component.Window; @@ -69,6 +70,8 @@ import org.compiere.model.MSysConfig; import org.compiere.model.MTable; import org.compiere.model.X_AD_CtxHelp; import org.compiere.process.ProcessInfo; +import org.compiere.process.ProcessInfoLog; +import org.compiere.process.ProcessInfoUtil; import org.compiere.util.CLogger; import org.compiere.util.DB; import org.compiere.util.Env; @@ -1483,12 +1486,26 @@ public abstract class InfoPanel extends Window implements EventListener, enableButtons(); }else if (m_pi.isError()){ // show error info - FDialog.error(p_WindowNo, m_pi.getSummary()); + ProcessInfoUtil.setLogFromDB(m_pi); + ProcessInfoLog m_logs[] = m_pi.getLogs(); + if (m_logs != null && m_logs.length > 0) { + ProcessInfoDialog.showProcessInfo(m_pi, p_WindowNo, InfoPanel.this, false); + }else{ + FDialog.error(p_WindowNo, m_pi.getSummary()); + } // enable or disable control button rely selected record status enableButtons(); - }else if (!m_pi.isError() && m_pi.getSummary() != null && m_pi.getSummary().trim().length() > 0){ - // when success, show summary if exists - FDialog.info(p_WindowNo, null, m_pi.getSummary()); + }else if (!m_pi.isError()){ + ProcessInfoUtil.setLogFromDB(m_pi); + ProcessInfoLog m_logs[] = m_pi.getLogs(); + if (m_logs != null && m_logs.length > 0) { + ProcessInfoDialog.showProcessInfo(m_pi, p_WindowNo, InfoPanel.this, false); + + // when success, show summary if exists + }else if (m_pi.getSummary() != null && m_pi.getSummary().trim().length() > 0){ + FDialog.info(p_WindowNo, null, m_pi.getSummary()); + } + Clients.response(new AuEcho(InfoPanel.this, "onQueryCallback", m_results)); }