From 803979d9258de3ddc0b0b83618a09bbe6d6a6b35 Mon Sep 17 00:00:00 2001 From: Carlos Ruiz Date: Mon, 30 May 2016 21:46:23 -0500 Subject: [PATCH 1/8] IDEMPIERE-3073 improve set of max text lenght on grid panel / thanks to Eduardo Gil and Dirk Niemeyer --- .../i3.1/oracle/20160523170239_IDEMPIERE-3073.sql | 11 +++++++++++ .../i3.1/postgresql/20160523170239_IDEMPIERE-3073.sql | 8 ++++++++ .../src/org/compiere/model/MSysConfig.java | 6 ++++-- .../adempiere/webui/adwindow/GridTabRowRenderer.java | 4 +++- 4 files changed, 26 insertions(+), 3 deletions(-) create mode 100644 migration/i3.1/oracle/20160523170239_IDEMPIERE-3073.sql create mode 100644 migration/i3.1/postgresql/20160523170239_IDEMPIERE-3073.sql diff --git a/migration/i3.1/oracle/20160523170239_IDEMPIERE-3073.sql b/migration/i3.1/oracle/20160523170239_IDEMPIERE-3073.sql new file mode 100644 index 0000000000..eae1f0f1c2 --- /dev/null +++ b/migration/i3.1/oracle/20160523170239_IDEMPIERE-3073.sql @@ -0,0 +1,11 @@ +SET SQLBLANKLINES ON +SET DEFINE OFF + +-- IDEMPIERE-3073 improve set of max text lenght on grid panel +-- May 23, 2016 5:02:39 PM CEST +INSERT INTO AD_SysConfig (AD_SysConfig_ID,AD_Client_ID,AD_Org_ID,Created,Updated,CreatedBy,UpdatedBy,IsActive,Name,Value,Description,EntityType,ConfigurationLevel,AD_SysConfig_UU) VALUES (200077,0,0,TO_DATE('2016-05-23 17:02:39','YYYY-MM-DD HH24:MI:SS'),TO_DATE('2016-05-23 17:02:39','YYYY-MM-DD HH24:MI:SS'),100,100,'Y','MAX_TEXT_LENGTH_ON_GRID_VIEW','60','Max length of a text in grid view after wihich it is cut off (IDEMPIERE-3073)','D','C','092aeedc-22d9-4a70-9c90-d27aa68d47e7') +; + +SELECT register_migration_script('20160523170239_IDEMPIERE-3073.sql') FROM dual +; + diff --git a/migration/i3.1/postgresql/20160523170239_IDEMPIERE-3073.sql b/migration/i3.1/postgresql/20160523170239_IDEMPIERE-3073.sql new file mode 100644 index 0000000000..795cde4c0c --- /dev/null +++ b/migration/i3.1/postgresql/20160523170239_IDEMPIERE-3073.sql @@ -0,0 +1,8 @@ +-- IDEMPIERE-3073 improve set of max text lenght on grid panel +-- May 23, 2016 5:02:39 PM CEST +INSERT INTO AD_SysConfig (AD_SysConfig_ID,AD_Client_ID,AD_Org_ID,Created,Updated,CreatedBy,UpdatedBy,IsActive,Name,Value,Description,EntityType,ConfigurationLevel,AD_SysConfig_UU) VALUES (200077,0,0,TO_TIMESTAMP('2016-05-23 17:02:39','YYYY-MM-DD HH24:MI:SS'),TO_TIMESTAMP('2016-05-23 17:02:39','YYYY-MM-DD HH24:MI:SS'),100,100,'Y','MAX_TEXT_LENGTH_ON_GRID_VIEW','60','Max length of a text in grid view after wihich it is cut off (IDEMPIERE-3073)','D','C','092aeedc-22d9-4a70-9c90-d27aa68d47e7') +; + +SELECT register_migration_script('20160523170239_IDEMPIERE-3073.sql') FROM dual +; + diff --git a/org.adempiere.base/src/org/compiere/model/MSysConfig.java b/org.adempiere.base/src/org/compiere/model/MSysConfig.java index 79b5764038..7240006485 100644 --- a/org.adempiere.base/src/org/compiere/model/MSysConfig.java +++ b/org.adempiere.base/src/org/compiere/model/MSysConfig.java @@ -39,11 +39,12 @@ import org.compiere.util.DisplayType; */ public class MSysConfig extends X_AD_SysConfig { + /** * */ - private static final long serialVersionUID = 5139119853639605887L; - + private static final long serialVersionUID = -2568590773996678544L; + public static final String ADDRESS_VALIDATION = "ADDRESS_VALIDATION"; public static final String ALERT_SEND_ATTACHMENT_AS_XLS = "ALERT_SEND_ATTACHMENT_AS_XLS"; public static final String ALLOCATION_DESCRIPTION = "ALLOCATION_DESCRIPTION"; @@ -100,6 +101,7 @@ public class MSysConfig extends X_AD_SysConfig public static final String MAIL_SEND_CREDENTIALS = "MAIL_SEND_CREDENTIALS"; public static final String MAX_ACTIVITIES_IN_LIST = "MAX_ACTIVITIES_IN_LIST"; public static final String MAX_RESULTS_PER_SEARCH_IN_DOCUMENT_CONTROLLER = "MAX_RESULTS_PER_SEARCH_IN_DOCUMENT_CONTROLLER"; + public static final String MAX_TEXT_LENGTH_ON_GRID_VIEW = "MAX_TEXT_LENGTH_ON_GRID_VIEW"; public static final String MENU_INFOUPDATER_SLEEP_MS = "MENU_INFOUPDATER_SLEEP_MS"; public static final String MFG_ValidateCostsDifferenceOnCreate = "MFG_ValidateCostsDifferenceOnCreate"; public static final String MFG_ValidateCostsOnCreate = "MFG_ValidateCostsOnCreate"; diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/GridTabRowRenderer.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/GridTabRowRenderer.java index 51aa385ea0..6022f1f13e 100644 --- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/GridTabRowRenderer.java +++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/GridTabRowRenderer.java @@ -42,6 +42,7 @@ import org.adempiere.webui.util.GridTabDataBinder; import org.compiere.model.GridField; import org.compiere.model.GridTab; import org.compiere.model.MStyle; +import org.compiere.model.MSysConfig; import org.compiere.model.X_AD_StyleLine; import org.compiere.util.DisplayType; import org.compiere.util.Env; @@ -82,7 +83,7 @@ public class GridTabRowRenderer implements RowRenderer, RowRendererExt private static final String CELL_DIV_STYLE_ALIGN_CENTER = CELL_DIV_STYLE + "text-align:center; "; private static final String CELL_DIV_STYLE_ALIGN_RIGHT = CELL_DIV_STYLE + "text-align:right; "; - private static final int MAX_TEXT_LENGTH = 60; + private static final int MAX_TEXT_LENGTH_DEFAULT = 60; private GridTab gridTab; private int windowNo; private GridTabDataBinder dataBinder; @@ -306,6 +307,7 @@ public class GridTabRowRenderer implements RowRenderer, RowRendererExt */ private void setLabelText(String text, Label label) { String display = text; + final int MAX_TEXT_LENGTH = MSysConfig.getIntValue(MSysConfig.MAX_TEXT_LENGTH_ON_GRID_VIEW,MAX_TEXT_LENGTH_DEFAULT,Env.getAD_Client_ID(Env.getCtx())); if (text != null && text.length() > MAX_TEXT_LENGTH) display = text.substring(0, MAX_TEXT_LENGTH - 3) + "..."; // since 5.0.8, the org.zkoss.zhtml.Text is encoded by default From 367f50673bdf28566744f5722e92caa1054fa7d2 Mon Sep 17 00:00:00 2001 From: Carlos Ruiz Date: Mon, 30 May 2016 22:29:09 -0500 Subject: [PATCH 2/8] IDEMPIERE-3078 IDEMPIERE-1770 created code for a non-existing column --- org.adempiere.base/src/org/compiere/model/MInOut.java | 7 ++----- .../src/org/compiere/model/MInOutLineMA.java | 8 +++----- 2 files changed, 5 insertions(+), 10 deletions(-) diff --git a/org.adempiere.base/src/org/compiere/model/MInOut.java b/org.adempiere.base/src/org/compiere/model/MInOut.java index c1bc584936..ab20a57dfd 100644 --- a/org.adempiere.base/src/org/compiere/model/MInOut.java +++ b/org.adempiere.base/src/org/compiere/model/MInOut.java @@ -1851,11 +1851,8 @@ public class MInOut extends X_M_InOut implements DocAction for(MInOutLineMA sMA : shipmentMAS){ BigDecimal lineMAQty = qtyToReturn; - BigDecimal qtyReturnable = (BigDecimal)sMA.get_Value(MInOutLineMA.COLUMNNAME_ReturnedQty); - if (qtyReturnable == null) - qtyReturnable = Env.ZERO; - if(lineMAQty.compareTo(qtyReturnable)>0){ - lineMAQty = qtyReturnable; + if(lineMAQty.compareTo(Env.ZERO)>0){ + lineMAQty = Env.ZERO; } MInOutLineMA ma = MInOutLineMA.addOrCreate(line, sMA.getM_AttributeSetInstance_ID(), lineMAQty, sMA.getDateMaterialPolicy(),true); diff --git a/org.adempiere.base/src/org/compiere/model/MInOutLineMA.java b/org.adempiere.base/src/org/compiere/model/MInOutLineMA.java index 71f879543c..8aa3526801 100644 --- a/org.adempiere.base/src/org/compiere/model/MInOutLineMA.java +++ b/org.adempiere.base/src/org/compiere/model/MInOutLineMA.java @@ -43,12 +43,11 @@ public class MInOutLineMA extends X_M_InOutLineMA /** * */ - private static final long serialVersionUID = -4131812777103744727L; - + private static final long serialVersionUID = -2610075295914545809L; + /** Log */ private static CLogger s_log = CLogger.getCLogger (MInOutLineMA.class); - public static String COLUMNNAME_ReturnedQty ="returnedQty"; - + /** * Get Material Allocations for Line * @param ctx context @@ -237,7 +236,6 @@ public class MInOutLineMA extends X_M_InOutLineMA while (rs.next()) { MInOutLineMA lineMA = new MInOutLineMA(ctx, rs, trxName); - lineMA.set_Value(COLUMNNAME_ReturnedQty, rs.getBigDecimal(COLUMNNAME_ReturnedQty)); list.add(lineMA); } From d8278975ed3b7adf5587d08acfa608b2f0b67b56 Mon Sep 17 00:00:00 2001 From: igorpojzl Date: Wed, 18 May 2016 11:20:22 +0200 Subject: [PATCH 3/8] IDEMPIERE-3107 Production (Light) system enable to complete production without end product --- .../src/org/compiere/model/MProduction.java | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/org.adempiere.base/src/org/compiere/model/MProduction.java b/org.adempiere.base/src/org/compiere/model/MProduction.java index 31df16dc80..a4abcb63e0 100644 --- a/org.adempiere.base/src/org/compiere/model/MProduction.java +++ b/org.adempiere.base/src/org/compiere/model/MProduction.java @@ -102,7 +102,13 @@ public class MProduction extends X_M_Production implements DocAction { StringBuilder errors = new StringBuilder(); int processed = 0; - + + //IDEMPIERE-3107 Check if End Product in Production Lines exist + if(!isHaveEndProduct(getLines())) { + m_processMsg = "Production does not contain End Product"; + return DocAction.STATUS_Invalid; + } + if (!isUseProductionPlan()) { MProductionLine[] lines = getLines(); errors.append(processLines(lines)); @@ -142,6 +148,15 @@ public class MProduction extends X_M_Production implements DocAction { return DocAction.STATUS_Completed; } + private boolean isHaveEndProduct(MProductionLine[] lines) { + + for(MProductionLine line : lines) { + if(line.isEndProduct()) + return true; + } + return false; + } + private Object processLines(MProductionLine[] lines) { StringBuilder errors = new StringBuilder(); for ( int i = 0; i Date: Wed, 18 May 2016 01:42:03 +0700 Subject: [PATCH 4/8] IDEMPIERE-3106:RequestEmailProcessor does not set values during CheckInputParameter --- .../src/org/compiere/process/RequestEMailProcessor.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/org.adempiere.base.process/src/org/compiere/process/RequestEMailProcessor.java b/org.adempiere.base.process/src/org/compiere/process/RequestEMailProcessor.java index 58d5066125..bcafcf39b9 100644 --- a/org.adempiere.base.process/src/org/compiere/process/RequestEMailProcessor.java +++ b/org.adempiere.base.process/src/org/compiere/process/RequestEMailProcessor.java @@ -143,6 +143,8 @@ public class RequestEMailProcessor extends SvrProcess implements ProcessEmailHan */ protected String doIt() throws Exception { + parseParameter(); + EmailSrv emailSrv = new EmailSrv(p_IMAPHost, p_IMAPUser, p_IMAPPwd, p_IMAPPort); checkInputParameter (emailSrv); @@ -155,7 +157,7 @@ public class RequestEMailProcessor extends SvrProcess implements ProcessEmailHan return msgreturn.toString(); } // doIt - protected void checkInputParameter (EmailSrv emailSrv) throws MessagingException, Exception { + protected void parseParameter() { // === check input parameter === int portStartIndex = p_IMAPHost.lastIndexOf(":"); if (portStartIndex > 0){ @@ -169,6 +171,9 @@ public class RequestEMailProcessor extends SvrProcess implements ProcessEmailHan }else if (p_IMAPHost.startsWith("imap.gmail.com")){ p_IMAPPort = 993; } + } + + protected void checkInputParameter (EmailSrv emailSrv) throws MessagingException, Exception { if (log.isLoggable(Level.INFO)) log.info("doIt - IMAPHost=" + p_IMAPHost + " IMAPPort=" + p_IMAPPort + " IMAPUser=" + p_IMAPUser + From d1c38adc54e1a2b9e605f952c3a4885b18cfda9d Mon Sep 17 00:00:00 2001 From: Gabriel S Schneider Date: Sat, 21 May 2016 13:00:50 -0300 Subject: [PATCH 5/8] IDEMPIERE-3112 - Problems when used in reference to a ColumnSQL --- .../org/compiere/model/MLookupFactory.java | 28 ++++++++++++++----- 1 file changed, 21 insertions(+), 7 deletions(-) diff --git a/org.adempiere.base/src/org/compiere/model/MLookupFactory.java b/org.adempiere.base/src/org/compiere/model/MLookupFactory.java index e922b9f2da..be79425bae 100644 --- a/org.adempiere.base/src/org/compiere/model/MLookupFactory.java +++ b/org.adempiere.base/src/org/compiere/model/MLookupFactory.java @@ -629,7 +629,7 @@ public class MLookupFactory String BaseColumn, String BaseTable, int AD_Reference_Value_ID) { String sql = "SELECT t.TableName,ck.ColumnName AS KeyColumn," - + "cd.ColumnName AS DisplayColumn,rt.isValueDisplayed,cd.IsTranslated " + + "cd.ColumnName AS DisplayColumn,rt.isValueDisplayed,cd.IsTranslated, cd.AD_Column_ID AS columnDisplay_ID " + "FROM AD_Ref_Table rt" + " INNER JOIN AD_Table t ON (rt.AD_Table_ID=t.AD_Table_ID)" + " INNER JOIN AD_Column ck ON (rt.AD_Key=ck.AD_Column_ID)" @@ -639,6 +639,7 @@ public class MLookupFactory // String KeyColumn, DisplayColumn, TableName, TableNameAlias; boolean IsTranslated, isValueDisplayed; + Integer columnDisplay_ID = 0; PreparedStatement pstmt = null; ResultSet rs = null; @@ -659,6 +660,7 @@ public class MLookupFactory DisplayColumn = rs.getString(3); isValueDisplayed = rs.getString(4).equals("Y"); IsTranslated = rs.getString(5).equals("Y"); + columnDisplay_ID = rs.getInt(6); } catch (SQLException e) @@ -682,15 +684,26 @@ public class MLookupFactory } StringBuilder embedSQL = new StringBuilder("SELECT "); + + if (isValueDisplayed) + embedSQL.append(TableNameAlias).append(".Value||'-'||"); + + MColumn columnDisplay = new MColumn(Env.getCtx(), columnDisplay_ID, null); + boolean translated = false; // Translated if (IsTranslated && !Env.isBaseLanguage(language, TableName)) { translated = true; - if (isValueDisplayed) - embedSQL.append(TableNameAlias).append(".Value||'-'||"); + + if (columnDisplay.isVirtualColumn()) + { + s_log.warning("Column SQL should not be Translated"); + return null; + } + else embedSQL.append(TableName).append("_Trl.").append(DisplayColumn); - // + embedSQL.append(" FROM ").append(TableName).append(" ").append(TableNameAlias) .append(" INNER JOIN ").append(TableName).append("_TRL ON (") .append(TableNameAlias).append(".").append(KeyColumn) @@ -701,10 +714,11 @@ public class MLookupFactory // Not Translated else { - if (isValueDisplayed) - embedSQL.append(TableNameAlias).append(".Value||'-'||"); + if (columnDisplay.isVirtualColumn()) + embedSQL.append(columnDisplay.getColumnSQL()).append(" AS ").append(KeyColumn); + else embedSQL.append(TableNameAlias).append(".").append(DisplayColumn); - // + embedSQL.append(" FROM ").append(TableName).append(" ").append(TableNameAlias); } From d5e390c829867c855871036392954264602521aa Mon Sep 17 00:00:00 2001 From: Carlos Ruiz Date: Mon, 30 May 2016 23:24:51 -0500 Subject: [PATCH 6/8] IDEMPIERE-3023 Update Dead Sessions when Server Shutdown --- .../unix/DebianInstaller/etc/init.d/idempiere | 35 ++++++++++------- .../utils.unix/unix/idempiere_Debian.sh | 37 +++++++++++------- .../utils.unix/unix/idempiere_RedHat.sh | 37 +++++++++++------- .../utils.unix/unix/idempiere_Suse.sh | 39 +++++++++++-------- 4 files changed, 88 insertions(+), 60 deletions(-) diff --git a/org.adempiere.server-feature/utils.unix/unix/DebianInstaller/etc/init.d/idempiere b/org.adempiere.server-feature/utils.unix/unix/DebianInstaller/etc/init.d/idempiere index 0f1188ef3d..eeb90d5fa6 100755 --- a/org.adempiere.server-feature/utils.unix/unix/DebianInstaller/etc/init.d/idempiere +++ b/org.adempiere.server-feature/utils.unix/unix/DebianInstaller/etc/init.d/idempiere @@ -618,23 +618,30 @@ stop () { fi echo -n "Stopping iDempiere ERP: " cd $IDEMPIERE_HOME/utils - log_warning_msg "Trying direct kill with signal -15" - # try direct kill with signal 15, then signal 9 - kill -15 -`ps ax o pgid,command | grep -v grep | grep $IDEMPIERE_HOME | sed -e 's/^ *//g' | cut -f 1 -d " " | sort -u` - sleep 5 + # try shutdown from OSGi console, then direct kill with signal 15, then signal 9 + log_warning_msg "Trying shutdown from OSGi console" + ( echo exit; echo y; sleep 5 ) | telnet localhost 12612 > /dev/null 2>&1 getidempierestatus if [ $IDEMPIERESTATUS -ne 0 ] ; then - log_success_msg "Service stopped with kill -15" + log_success_msg "Service stopped with OSGi shutdown" else - echo "Trying direct kill with signal -9" - kill -9 -`ps ax o pgid,command | grep -v grep | grep $IDEMPIERE_HOME | sed -e 's/^ *//g' | cut -f 1 -d " " | sort -u` - sleep 5 - getidempierestatus - if [ $IDEMPIERESTATUS -ne 0 ] ; then - log_success_msg "Service stopped with kill -9" - else - log_warning_msg "Service hasn't stopped" - fi + log_warning_msg "Trying direct kill with signal -15" + kill -15 -`ps ax o pgid,command | grep -v grep | grep $IDEMPIERE_HOME | sed -e 's/^ *//g' | cut -f 1 -d " " | sort -u` + sleep 5 + getidempierestatus + if [ $IDEMPIERESTATUS -ne 0 ] ; then + log_success_msg "Service stopped with kill -15" + else + echo "Trying direct kill with signal -9" + kill -9 -`ps ax o pgid,command | grep -v grep | grep $IDEMPIERE_HOME | sed -e 's/^ *//g' | cut -f 1 -d " " | sort -u` + sleep 5 + getidempierestatus + if [ $IDEMPIERESTATUS -ne 0 ] ; then + log_success_msg "Service stopped with kill -9" + else + log_warning_msg "Service hasn't stopped" + fi + fi fi return $RETVAL } diff --git a/org.adempiere.server-feature/utils.unix/unix/idempiere_Debian.sh b/org.adempiere.server-feature/utils.unix/unix/idempiere_Debian.sh index 431a703d7b..fe77f58b75 100644 --- a/org.adempiere.server-feature/utils.unix/unix/idempiere_Debian.sh +++ b/org.adempiere.server-feature/utils.unix/unix/idempiere_Debian.sh @@ -87,24 +87,31 @@ stop () { fi echo -n "Stopping iDempiere ERP: " cd $IDEMPIERE_HOME/utils - . $ENVFILE - log_warning_msg "Trying direct kill with signal -15" - # try direct kill with signal 15, then signal 9 - kill -15 -`ps ax o pgid,command | grep -v grep | grep $IDEMPIERE_HOME | sed -e 's/^ *//g' | cut -f 1 -d " " | sort -u` - sleep 5 + . $ENVFILE + # try shutdown from OSGi console, then direct kill with signal 15, then signal 9 + log_warning_msg "Trying shutdown from OSGi console" + ( echo exit; echo y; sleep 5 ) | telnet localhost 12612 > /dev/null 2>&1 getidempierestatus if [ $IDEMPIERESTATUS -ne 0 ] ; then - log_success_msg "Service stopped with kill -15" + log_success_msg "Service stopped with OSGi shutdown" else - echo "Trying direct kill with signal -9" - kill -9 -`ps ax o pgid,command | grep -v grep | grep $IDEMPIERE_HOME | sed -e 's/^ *//g' | cut -f 1 -d " " | sort -u` - sleep 5 - getidempierestatus - if [ $IDEMPIERESTATUS -ne 0 ] ; then - log_success_msg "Service stopped with kill -9" - else - log_warning_msg "Service hasn't stopped" - fi + log_warning_msg "Trying direct kill with signal -15" + kill -15 -`ps ax o pgid,command | grep -v grep | grep $IDEMPIERE_HOME | sed -e 's/^ *//g' | cut -f 1 -d " " | sort -u` + sleep 5 + getidempierestatus + if [ $IDEMPIERESTATUS -ne 0 ] ; then + log_success_msg "Service stopped with kill -15" + else + echo "Trying direct kill with signal -9" + kill -9 -`ps ax o pgid,command | grep -v grep | grep $IDEMPIERE_HOME | sed -e 's/^ *//g' | cut -f 1 -d " " | sort -u` + sleep 5 + getidempierestatus + if [ $IDEMPIERESTATUS -ne 0 ] ; then + log_success_msg "Service stopped with kill -9" + else + log_warning_msg "Service hasn't stopped" + fi + fi fi return $RETVAL } diff --git a/org.adempiere.server-feature/utils.unix/unix/idempiere_RedHat.sh b/org.adempiere.server-feature/utils.unix/unix/idempiere_RedHat.sh index 7d193968ae..1cc8d34e76 100644 --- a/org.adempiere.server-feature/utils.unix/unix/idempiere_RedHat.sh +++ b/org.adempiere.server-feature/utils.unix/unix/idempiere_RedHat.sh @@ -83,24 +83,31 @@ stop () { fi echo -n "Stopping iDempiere ERP: " cd $IDEMPIERE_HOME/utils - source $ENVFILE - echo "Trying direct kill with signal -15" - # iDempiere didn't finish - try direct kill with signal 15, then signal 9 - kill -15 -`ps ax o pgid,command | grep -v grep | grep $IDEMPIERE_HOME | sed -e 's/^ *//g' | cut -f 1 -d " " | sort -u` - sleep 5 + source $ENVFILE + # try shutdown from OSGi console, then direct kill with signal 15, then signal 9 + log_warning_msg "Trying shutdown from OSGi console" + ( echo exit; echo y; sleep 5 ) | telnet localhost 12612 > /dev/null 2>&1 getidempierestatus if [ $IDEMPIERESTATUS -ne 0 ] ; then - echo_success + echo_success else - echo "Trying direct kill with signal -9" - kill -9 -`ps ax o pgid,command | grep -v grep | grep $IDEMPIERE_HOME | sed -e 's/^ *//g' | cut -f 1 -d " " | sort -u` - sleep 5 - getidempierestatus - if [ $IDEMPIERESTATUS -ne 0 ] ; then - echo_success - else - echo_warning - fi + log_warning_msg "Trying direct kill with signal -15" + kill -15 -`ps ax o pgid,command | grep -v grep | grep $IDEMPIERE_HOME | sed -e 's/^ *//g' | cut -f 1 -d " " | sort -u` + sleep 5 + getidempierestatus + if [ $IDEMPIERESTATUS -ne 0 ] ; then + echo_success + else + echo "Trying direct kill with signal -9" + kill -9 -`ps ax o pgid,command | grep -v grep | grep $IDEMPIERE_HOME | sed -e 's/^ *//g' | cut -f 1 -d " " | sort -u` + sleep 5 + getidempierestatus + if [ $IDEMPIERESTATUS -ne 0 ] ; then + echo_success + else + echo_warning + fi + fi fi RETVAL=$? return $RETVAL diff --git a/org.adempiere.server-feature/utils.unix/unix/idempiere_Suse.sh b/org.adempiere.server-feature/utils.unix/unix/idempiere_Suse.sh index 14b63b532f..ed5ca0a404 100644 --- a/org.adempiere.server-feature/utils.unix/unix/idempiere_Suse.sh +++ b/org.adempiere.server-feature/utils.unix/unix/idempiere_Suse.sh @@ -114,25 +114,32 @@ stop () { fi echo -n "Stopping iDempiere ERP: " cd $IDEMPIERE_HOME/utils - . $ENVFILE - echo "Trying direct kill with signal -15" - # try direct kill with signal 15, then signal 9 - kill -15 -`ps ax o pgid,command | grep -v grep | grep $IDEMPIERE_HOME | sed -e 's/^ *//g' | cut -f 1 -d " " | sort -u` - sleep 5 + . $ENVFILE + # try shutdown from OSGi console, then direct kill with signal 15, then signal 9 + log_warning_msg "Trying shutdown from OSGi console" + ( echo exit; echo y; sleep 5 ) | telnet localhost 12612 > /dev/null 2>&1 getidempierestatus if [ $IDEMPIERESTATUS -ne 0 ] ; then - echo "Service stopped with kill -15" + echo "Service stopped with OSGi shutdown" else - echo "Trying direct kill with signal -9" - kill -9 -`ps ax o pgid,command | grep -v grep | grep $IDEMPIERE_HOME | sed -e 's/^ *//g' | cut -f 1 -d " " | sort -u` - sleep 5 - getidempierestatus - if [ $IDEMPIERESTATUS -ne 0 ] ; then - echo "Service stopped with kill -9" - else - echo "Service hasn't stopped" - rc_failed 1 - fi + echo "Trying direct kill with signal -15" + kill -15 -`ps ax o pgid,command | grep -v grep | grep $IDEMPIERE_HOME | sed -e 's/^ *//g' | cut -f 1 -d " " | sort -u` + sleep 5 + getidempierestatus + if [ $IDEMPIERESTATUS -ne 0 ] ; then + echo "Service stopped with kill -15" + else + echo "Trying direct kill with signal -9" + kill -9 -`ps ax o pgid,command | grep -v grep | grep $IDEMPIERE_HOME | sed -e 's/^ *//g' | cut -f 1 -d " " | sort -u` + sleep 5 + getidempierestatus + if [ $IDEMPIERESTATUS -ne 0 ] ; then + echo "Service stopped with kill -9" + else + echo "Service hasn't stopped" + rc_failed 1 + fi + fi fi rc_status -v } From 1d1a920a275aade2556ffe9028b682a2ff5f9f81 Mon Sep 17 00:00:00 2001 From: Carlos Ruiz Date: Mon, 30 May 2016 23:32:35 -0500 Subject: [PATCH 7/8] IDEMPIERE-3088 Frequent timeout exception on Webui --- .../jettyhome/etc/jetty-ssl-template.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.adempiere.server-feature/jettyhome/etc/jetty-ssl-template.xml b/org.adempiere.server-feature/jettyhome/etc/jetty-ssl-template.xml index 4c14c60687..18c5acebc9 100644 --- a/org.adempiere.server-feature/jettyhome/etc/jetty-ssl-template.xml +++ b/org.adempiere.server-feature/jettyhome/etc/jetty-ssl-template.xml @@ -24,7 +24,7 @@ - + From c11aa3e5129941ceec496e75846d54d6e64fedd5 Mon Sep 17 00:00:00 2001 From: Carlos Ruiz Date: Mon, 30 May 2016 23:38:44 -0500 Subject: [PATCH 8/8] 1006003 UI - add conditional styles for fields. / IDEMPIERE-3115 --- .../i3.1/oracle/201605061800_Ticket_1006003.sql | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/migration/i3.1/oracle/201605061800_Ticket_1006003.sql b/migration/i3.1/oracle/201605061800_Ticket_1006003.sql index ca8a5989ba..7afcbcf546 100644 --- a/migration/i3.1/oracle/201605061800_Ticket_1006003.sql +++ b/migration/i3.1/oracle/201605061800_Ticket_1006003.sql @@ -157,9 +157,9 @@ value := strings or numbers
logic operators := AND or OR with the previous result from left to right
operand := eq{=}, gt{>}, le{<}, not{~^!}
Examples:
-@AD_Table_ID@=14 | @Language@!GERGER
-@PriceLimit@>10 | @PriceList@>@PriceActual@
-@Name@>J
+'||chr(64)||'AD_Table_ID@=14 | @Language@!GERGER
+'||chr(64)||'PriceLimit@>10 | @PriceList@>@PriceActual@
+'||chr(64)||'Name@>J
Strings may be in single quotes (optional)','Display Logic','Y','Y',100,100,'N','N',0,0,TO_DATE('2016-05-05 17:22:49','YYYY-MM-DD HH24:MI:SS'),'D','N','N',283,14,200208) ; @@ -303,9 +303,9 @@ value := strings or numbers
logic operators := AND or OR with the previous result from left to right
operand := eq{=}, gt{>}, le{<}, not{~^!}
Examples:
-@AD_Table_ID@=14 | @Language@!GERGER
-@PriceLimit@>10 | @PriceList@>@PriceActual@
-@Name@>J
+'||chr(64)||'AD_Table_ID@=14 | @Language@!GERGER
+'||chr(64)||'PriceLimit@>10 | @PriceList@>@PriceActual@
+'||chr(64)||'Name@>J
Strings may be in single quotes (optional)',0,TO_DATE('2016-05-05 17:50:50','YYYY-MM-DD HH24:MI:SS'),'If the Field is displayed, the result determines if the field is actually displayed','Display Logic','7deca1bb-f53f-4585-ad4c-92ed64a9f73e','Y','N',100,100,'Y',0,TO_DATE('2016-05-05 17:50:50','YYYY-MM-DD HH24:MI:SS'),5,3,212749,'D',200214) ;