diff --git a/migration/i6.2/oracle/201809191200_Ticket_AP2-580.sql b/migration/i6.2/oracle/201809191200_Ticket_AP2-580.sql
new file mode 100644
index 0000000000..0c57bdc270
--- /dev/null
+++ b/migration/i6.2/oracle/201809191200_Ticket_AP2-580.sql
@@ -0,0 +1,11 @@
+SET SQLBLANKLINES ON
+SET DEFINE OFF
+
+-- Sep 19, 2018 3:29:19 PM MYT
+-- AP2-580 remove mandatory location on BP quick entry on OFX Transaction
+INSERT INTO AD_SysConfig (AD_SysConfig_ID,EntityType,ConfigurationLevel,Updated,Description,AD_SysConfig_UU,IsActive,Name,Created,CreatedBy,UpdatedBy,AD_Client_ID,Value,AD_Org_ID) VALUES (200145,'D','S',TO_DATE('2018-09-19 15:29:13','YYYY-MM-DD HH24:MI:SS'),'Comma separated list of tables where business partner location is optional for quick entry of business partner record','17facb7e-bab8-4c92-a6c6-e7db0ae427a1','Y','BPARTNER_QUICK_ENTRY_OPTIONAL_LOCATION_TABLES',TO_DATE('2018-09-19 15:29:13','YYYY-MM-DD HH24:MI:SS'),100,100,0,'C_Payment',0)
+;
+
+SELECT register_migration_script('201809191200_Ticket_AP2-580.sql') FROM dual
+;
+
diff --git a/migration/i6.2/oracle/201902221447_IDEMPIERE-3851.sql b/migration/i6.2/oracle/201902221447_IDEMPIERE-3851.sql
deleted file mode 100644
index 6a4373d04e..0000000000
--- a/migration/i6.2/oracle/201902221447_IDEMPIERE-3851.sql
+++ /dev/null
@@ -1,5 +0,0 @@
-UPDATE ad_column SET isautocomplete='Y' WHERE ad_reference_id IN (17,18,19) AND isautocomplete!='Y';
-
-SELECT register_migration_script('201902221447_IDEMPIERE-3851.sql') FROM dual
-;
-
diff --git a/migration/i6.2/oracle/201902271329_IDEMPIERE-3903.sql b/migration/i6.2/oracle/201902271329_IDEMPIERE-3903.sql
new file mode 100644
index 0000000000..559e5a8328
--- /dev/null
+++ b/migration/i6.2/oracle/201902271329_IDEMPIERE-3903.sql
@@ -0,0 +1,19 @@
+SET SQLBLANKLINES ON
+SET DEFINE OFF
+
+-- IDEMPIERE-3903 Notification Type tries to default to Email
+-- Feb 27, 2019, 1:26:46 PM CET
+UPDATE AD_Column SET DefaultValue='X',Updated=TO_DATE('2019-02-27 13:26:46','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=13773
+;
+
+-- Feb 27, 2019, 1:26:48 PM CET
+ALTER TABLE AD_User MODIFY NotificationType CHAR(1) DEFAULT 'X'
+;
+
+-- Feb 27, 2019, 1:26:48 PM CET
+UPDATE AD_User SET NotificationType='X' WHERE NotificationType IS NULL
+;
+
+SELECT register_migration_script('201902271329_IDEMPIERE-3903.sql') FROM dual
+;
+
diff --git a/migration/i6.2/oracle/201902271334_IDEMPIERE-3698.sql b/migration/i6.2/oracle/201902271334_IDEMPIERE-3698.sql
new file mode 100644
index 0000000000..16eeca1bbd
--- /dev/null
+++ b/migration/i6.2/oracle/201902271334_IDEMPIERE-3698.sql
@@ -0,0 +1,18 @@
+SET SQLBLANKLINES ON
+SET DEFINE OFF
+
+-- IDEMPIERE-3698 Change datatype R_MailText.MailText to CLOB
+-- Feb 27, 2019, 1:33:51 PM CET
+UPDATE AD_Column SET FieldLength=0, AD_Reference_ID=36,Updated=TO_DATE('2019-02-27 13:33:51','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=14615
+;
+
+-- Feb 27, 2019, 1:33:53 PM CET
+--ALTER TABLE R_MailText_Trl MODIFY MailText CLOB;
+ALTER TABLE R_MailText_Trl ADD Tmp_MailText CLOB;
+UPDATE R_MailText_Trl SET Tmp_MailText = TO_CHAR(MailText);
+ALTER TABLE R_MailText_Trl DROP COLUMN MailText;
+ALTER TABLE R_MailText_Trl RENAME COLUMN Tmp_MailText TO MailText;
+
+SELECT register_migration_script('201902271334_IDEMPIERE-3698.sql') FROM dual
+;
+
diff --git a/migration/i6.2/oracle/201902281146_IDEMPIERE-3850.sql b/migration/i6.2/oracle/201902281146_IDEMPIERE-3850.sql
new file mode 100644
index 0000000000..2214b7146c
--- /dev/null
+++ b/migration/i6.2/oracle/201902281146_IDEMPIERE-3850.sql
@@ -0,0 +1,5 @@
+-- IDEMPIERE-3850 AP2-4 1008281 - not required for oracle
+
+SELECT register_migration_script('201902281146_IDEMPIERE-3850.sql') FROM dual
+;
+
diff --git a/migration/i6.2/oracle/201902281415_IDEMPIERE-3906.sql b/migration/i6.2/oracle/201902281415_IDEMPIERE-3906.sql
new file mode 100644
index 0000000000..d6fab38efc
--- /dev/null
+++ b/migration/i6.2/oracle/201902281415_IDEMPIERE-3906.sql
@@ -0,0 +1,11 @@
+SET SQLBLANKLINES ON
+SET DEFINE OFF
+
+-- Sep 19, 2018 3:29:19 PM MYT
+-- AP2-580 remove mandatory location on BP quick entry on OFX Transaction
+UPDATE AD_SysConfig SET ConfigurationLevel='C' WHERE AD_SysConfig_ID=200145
+;
+
+SELECT register_migration_script('201902281415_IDEMPIERE-3906.sql') FROM dual
+;
+
diff --git a/migration/i6.2/postgresql/201809191200_Ticket_AP2-580.sql b/migration/i6.2/postgresql/201809191200_Ticket_AP2-580.sql
new file mode 100644
index 0000000000..fd5c7bd4ae
--- /dev/null
+++ b/migration/i6.2/postgresql/201809191200_Ticket_AP2-580.sql
@@ -0,0 +1,8 @@
+-- Sep 19, 2018 3:29:19 PM MYT
+-- AP2-580 remove mandatory location on BP quick entry on OFX Transaction
+INSERT INTO AD_SysConfig (AD_SysConfig_ID,EntityType,ConfigurationLevel,Updated,Description,AD_SysConfig_UU,IsActive,Name,Created,CreatedBy,UpdatedBy,AD_Client_ID,Value,AD_Org_ID) VALUES (200145,'D','S',TO_TIMESTAMP('2018-09-19 15:29:13','YYYY-MM-DD HH24:MI:SS'),'Comma separated list of tables where business partner location is optional for quick entry of business partner record','17facb7e-bab8-4c92-a6c6-e7db0ae427a1','Y','BPARTNER_QUICK_ENTRY_OPTIONAL_LOCATION_TABLES',TO_TIMESTAMP('2018-09-19 15:29:13','YYYY-MM-DD HH24:MI:SS'),100,100,0,'C_Payment',0)
+;
+
+SELECT register_migration_script('201809191200_Ticket_AP2-580.sql') FROM dual
+;
+
diff --git a/migration/i6.2/postgresql/201902221447_IDEMPIERE-3851.sql b/migration/i6.2/postgresql/201902221447_IDEMPIERE-3851.sql
deleted file mode 100644
index 6a4373d04e..0000000000
--- a/migration/i6.2/postgresql/201902221447_IDEMPIERE-3851.sql
+++ /dev/null
@@ -1,5 +0,0 @@
-UPDATE ad_column SET isautocomplete='Y' WHERE ad_reference_id IN (17,18,19) AND isautocomplete!='Y';
-
-SELECT register_migration_script('201902221447_IDEMPIERE-3851.sql') FROM dual
-;
-
diff --git a/migration/i6.2/postgresql/201902271329_IDEMPIERE-3903.sql b/migration/i6.2/postgresql/201902271329_IDEMPIERE-3903.sql
new file mode 100644
index 0000000000..377cb28322
--- /dev/null
+++ b/migration/i6.2/postgresql/201902271329_IDEMPIERE-3903.sql
@@ -0,0 +1,16 @@
+-- IDEMPIERE-3903 Notification Type tries to default to Email
+-- Feb 27, 2019, 1:26:46 PM CET
+UPDATE AD_Column SET DefaultValue='X',Updated=TO_TIMESTAMP('2019-02-27 13:26:46','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=13773
+;
+
+-- Feb 27, 2019, 1:26:48 PM CET
+INSERT INTO t_alter_column values('ad_user','NotificationType','CHAR(1)',null,'X')
+;
+
+-- Feb 27, 2019, 1:26:48 PM CET
+UPDATE AD_User SET NotificationType='X' WHERE NotificationType IS NULL
+;
+
+SELECT register_migration_script('201902271329_IDEMPIERE-3903.sql') FROM dual
+;
+
diff --git a/migration/i6.2/postgresql/201902271334_IDEMPIERE-3698.sql b/migration/i6.2/postgresql/201902271334_IDEMPIERE-3698.sql
new file mode 100644
index 0000000000..a1226a7f8c
--- /dev/null
+++ b/migration/i6.2/postgresql/201902271334_IDEMPIERE-3698.sql
@@ -0,0 +1,12 @@
+-- IDEMPIERE-3698 Change datatype R_MailText.MailText to CLOB
+-- Feb 27, 2019, 1:33:51 PM CET
+UPDATE AD_Column SET FieldLength=0, AD_Reference_ID=36,Updated=TO_TIMESTAMP('2019-02-27 13:33:51','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=14615
+;
+
+-- Feb 27, 2019, 1:33:53 PM CET
+INSERT INTO t_alter_column values('r_mailtext_trl','MailText','TEXT',null,null)
+;
+
+SELECT register_migration_script('201902271334_IDEMPIERE-3698.sql') FROM dual
+;
+
diff --git a/migration/i6.2/postgresql/201902281146_IDEMPIERE-3850.sql b/migration/i6.2/postgresql/201902281146_IDEMPIERE-3850.sql
new file mode 100644
index 0000000000..d56d026927
--- /dev/null
+++ b/migration/i6.2/postgresql/201902281146_IDEMPIERE-3850.sql
@@ -0,0 +1,9 @@
+-- IDEMPIERE-3850 AP2-4 1008281 - Implement reporting from read-only replica
+
+CREATE OR REPLACE RULE insert_dbreplicasyncverifier AS ON INSERT TO dbreplicasyncverifier DO INSTEAD NOTHING;
+
+CREATE OR REPLACE RULE delete_dbreplicasyncverifier AS ON DELETE TO dbreplicasyncverifier DO INSTEAD NOTHING;
+
+SELECT register_migration_script('201902281146_IDEMPIERE-3850.sql') FROM dual
+;
+
diff --git a/migration/i6.2/postgresql/201902281415_IDEMPIERE-3906.sql b/migration/i6.2/postgresql/201902281415_IDEMPIERE-3906.sql
new file mode 100644
index 0000000000..e25147ae49
--- /dev/null
+++ b/migration/i6.2/postgresql/201902281415_IDEMPIERE-3906.sql
@@ -0,0 +1,8 @@
+-- Sep 19, 2018 3:29:19 PM MYT
+-- AP2-580 remove mandatory location on BP quick entry on OFX Transaction
+UPDATE AD_SysConfig SET ConfigurationLevel='C' WHERE AD_SysConfig_ID=200145
+;
+
+SELECT register_migration_script('201902281415_IDEMPIERE-3906.sql') FROM dual
+;
+
diff --git a/org.adempiere.base.callout/META-INF/MANIFEST.MF b/org.adempiere.base.callout/META-INF/MANIFEST.MF
index a9cc9fc9b0..3384d40b35 100644
--- a/org.adempiere.base.callout/META-INF/MANIFEST.MF
+++ b/org.adempiere.base.callout/META-INF/MANIFEST.MF
@@ -7,7 +7,7 @@ Comment: Bundle-RequiredExecutionEnvironment: JavaSE-11
Require-Capability: osgi.ee;filter:="(&(osgi.ee=JavaSE)(version>=1.11))"
Require-Bundle: org.adempiere.base;bundle-version="0.0.0"
Eclipse-RegisterBuddy: org.adempiere.base
-Service-Component: OSGI-INF/costadjustmentcalloutfactory.xml, OSGI-INF/bpartnerquickentrycalloutFactory.xml
+Service-Component: OSGI-INF/*.xml
Bundle-ActivationPolicy: lazy
Export-Package: org.compiere.model
Bundle-ClassPath: .
diff --git a/org.adempiere.base.callout/src/org/adempiere/model/CalloutBPartnerLocation.java b/org.adempiere.base.callout/src/org/adempiere/model/CalloutBPartnerLocation.java
index 090b9d10f0..fc311faa91 100644
--- a/org.adempiere.base.callout/src/org/adempiere/model/CalloutBPartnerLocation.java
+++ b/org.adempiere.base.callout/src/org/adempiere/model/CalloutBPartnerLocation.java
@@ -23,9 +23,12 @@ import org.compiere.model.GridField;
import org.compiere.model.GridTab;
import org.compiere.model.MBPartnerLocation;
import org.compiere.model.MColumn;
+import org.compiere.model.MSysConfig;
+import org.compiere.model.MTable;
import org.compiere.util.DB;
import org.compiere.util.Env;
import org.compiere.util.Msg;
+import org.compiere.util.Util;
/**
* BPartnerLocation Callouts.
@@ -88,6 +91,31 @@ public class CalloutBPartnerLocation extends CalloutEngine
{
// this callout is just for quick entry window
if ("Y".equals(Env.getContext(ctx, WindowNo, "_QUICK_ENTRY_MODE_"))) {
+
+ String optionals = MSysConfig.getValue(MSysConfig.BPARTNER_QUICK_ENTRY_OPTIONAL_LOCATION_TABLES, Env.getAD_Client_ID(ctx));
+ String[] tables = null;
+ if (!Util.isEmpty(optionals, true)) {
+ tables = optionals.split("[,]");
+ }
+ if (tables != null && tables.length > 0) {
+ int parent_windowNo = Integer.parseInt(Env.getContext(ctx, WindowNo, "_QUICK_ENTRY_CALLER_WINDOW_"));
+ int parent_tabNo = Integer.parseInt(Env.getContext(ctx, WindowNo, "_QUICK_ENTRY_CALLER_TAB_"));
+ //Search the table ID of the first tab
+ int AD_Table_ID = Env.getContextAsInt(ctx, parent_windowNo, parent_tabNo + "|_TabInfo_AD_Table_ID", false);
+
+ //If the new business partner is being created from payment - let the address be null
+ //AP2-413 Remove mandatory flag from location on BP quick entry
+ String tableName = MTable.getTableName(ctx, AD_Table_ID);
+ if (!Util.isEmpty(tableName, true))
+ {
+ for(String table : tables)
+ {
+ if (tableName.equalsIgnoreCase(table.trim()))
+ return "";
+ }
+ }
+ }
+
if (value == null) {
return Msg.getMsg(ctx, "FillMandatory") + " " + Msg.getElement(ctx, mField.getColumnName());
}
diff --git a/org.adempiere.base/src/org/compiere/model/MAccount.java b/org.adempiere.base/src/org/compiere/model/MAccount.java
index c9ae5587d5..c60e311d7c 100644
--- a/org.adempiere.base/src/org/compiere/model/MAccount.java
+++ b/org.adempiere.base/src/org/compiere/model/MAccount.java
@@ -32,8 +32,6 @@ import org.compiere.util.Env;
* @author Jorg Janke
* @author victor.perez@e-evolution.com, www.e-evolution.com
*
RF [ 2214883 ] Remove SQL code and Replace for Query http://sourceforge.net/tracker/index.php?func=detail&aid=2214883&group_id=176962&atid=879335
- * @author Teo Sarca, www.arhipac.ro
- * FR [ 2694043 ] Query. first/firstOnly usage best practice
* @version $Id: MAccount.java,v 1.4 2006/07/30 00:58:04 jjanke Exp $
*/
public class MAccount extends X_C_ValidCombination
@@ -217,7 +215,7 @@ public class MAccount extends X_C_ValidCombination
MAccount existingAccount = new Query(ctx, MAccount.Table_Name, whereClause.toString(), trxName)
.setParameters(params)
.setOnlyActiveRecords(true)
- .firstOnly();
+ .first();
// Existing
if (existingAccount != null)
@@ -265,7 +263,7 @@ public class MAccount extends X_C_ValidCombination
final String whereClause = "C_AcctSchema_ID=? AND Alias=?";
MAccount retValue = new Query(ctx,I_C_ValidCombination.Table_Name,whereClause,null)
.setParameters(C_AcctSchema_ID,alias)
- .firstOnly();
+ .first();
return retValue;
} // get
diff --git a/org.adempiere.base/src/org/compiere/model/MAcctSchemaElement.java b/org.adempiere.base/src/org/compiere/model/MAcctSchemaElement.java
index a978dd1a98..314b4aa6ba 100644
--- a/org.adempiere.base/src/org/compiere/model/MAcctSchemaElement.java
+++ b/org.adempiere.base/src/org/compiere/model/MAcctSchemaElement.java
@@ -520,9 +520,6 @@ public class MAcctSchemaElement extends X_C_AcctSchema_Element
*/
private void updateData (String element, int id)
{
- StringBuilder msguvd = new StringBuilder(element).append("=").append(id);
- MAccount.updateValueDescription(getCtx(),msguvd.toString(), get_TrxName());
- //
StringBuilder sql = new StringBuilder("UPDATE C_ValidCombination SET ").append(element).append("=").append(id)
.append(" WHERE ").append(element).append(" IS NULL AND AD_Client_ID=").append(getAD_Client_ID());
int noC = DB.executeUpdate(sql.toString(), get_TrxName());
@@ -532,6 +529,9 @@ public class MAcctSchemaElement extends X_C_AcctSchema_Element
int noF = DB.executeUpdate(sql.toString(), get_TrxName());
//
if (log.isLoggable(Level.FINE)) log.fine("ValidCombination=" + noC + ", Fact=" + noF);
+ //
+ StringBuilder msguvd = new StringBuilder(element).append("=").append(id);
+ MAccount.updateValueDescription(getCtx(),msguvd.toString(), get_TrxName());
} // updateData
@Override
diff --git a/org.adempiere.base/src/org/compiere/model/MColumn.java b/org.adempiere.base/src/org/compiere/model/MColumn.java
index f90633e7d7..4d29a2d258 100644
--- a/org.adempiere.base/src/org/compiere/model/MColumn.java
+++ b/org.adempiere.base/src/org/compiere/model/MColumn.java
@@ -275,6 +275,9 @@ public class MColumn extends X_AD_Column
}
}
+ /* IDEMPIERE-3509, IDEMPIERE-3902
+ * removing this validation
+ * it affects adversely PackIn process that can create the table later
if ( displayType == DisplayType.TableDir ||
(displayType == DisplayType.Search && getAD_Reference_Value_ID() <= 0))
{
@@ -286,6 +289,7 @@ public class MColumn extends X_AD_Column
return false;
}
}
+ */
if (displayType == DisplayType.Table && getAD_Reference_Value_ID() <= 0)
{
diff --git a/org.adempiere.base/src/org/compiere/model/MSysConfig.java b/org.adempiere.base/src/org/compiere/model/MSysConfig.java
index 4e24f676fa..273464d002 100644
--- a/org.adempiere.base/src/org/compiere/model/MSysConfig.java
+++ b/org.adempiere.base/src/org/compiere/model/MSysConfig.java
@@ -42,7 +42,7 @@ public class MSysConfig extends X_AD_SysConfig
/**
*
*/
- private static final long serialVersionUID = -1401329788730986024L;
+ private static final long serialVersionUID = 8922763368373540965L;
public static final String ADDRESS_VALIDATION = "ADDRESS_VALIDATION";
public static final String ALERT_SEND_ATTACHMENT_AS_XLS = "ALERT_SEND_ATTACHMENT_AS_XLS";
@@ -73,6 +73,7 @@ public class MSysConfig extends X_AD_SysConfig
public static final String BACKGROUND_JOB_MAX_IN_SYSTEM = "BACKGROUND_JOB_MAX_IN_SYSTEM";
public static final String BACKGROUND_JOB_MAX_PER_CLIENT = "BACKGROUND_JOB_MAX_PER_CLIENT";
public static final String BACKGROUND_JOB_MAX_PER_USER = "BACKGROUND_JOB_MAX_PER_USER";
+ public static final String BPARTNER_QUICK_ENTRY_OPTIONAL_LOCATION_TABLES = "BPARTNER_QUICK_ENTRY_OPTIONAL_LOCATION_TABLES";
public static final String CALENDAR_ALTERNATE_TIMEZONE = "CALENDAR_ALTERNATE_TIMEZONE";
public static final String CASH_AS_PAYMENT = "CASH_AS_PAYMENT";
public static final String CHANGE_PASSWORD_MUST_DIFFER = "CHANGE_PASSWORD_MUST_DIFFER";
diff --git a/org.adempiere.base/src/org/compiere/model/MUser.java b/org.adempiere.base/src/org/compiere/model/MUser.java
index 21555e5d8e..cf85f3b2bd 100644
--- a/org.adempiere.base/src/org/compiere/model/MUser.java
+++ b/org.adempiere.base/src/org/compiere/model/MUser.java
@@ -277,7 +277,7 @@ public class MUser extends X_AD_User
if (AD_User_ID == 0)
{
setIsFullBPAccess (true);
- setNotificationType(NOTIFICATIONTYPE_EMail);
+ setNotificationType(NOTIFICATIONTYPE_None);
}
} // MUser
diff --git a/org.adempiere.pipo/META-INF/MANIFEST.MF b/org.adempiere.pipo/META-INF/MANIFEST.MF
index a112eda010..d50049584b 100644
--- a/org.adempiere.pipo/META-INF/MANIFEST.MF
+++ b/org.adempiere.pipo/META-INF/MANIFEST.MF
@@ -16,7 +16,7 @@ Export-Package: org.adempiere.pipo.srv,
org.adempiere.pipo2.exception
Require-Bundle: org.adempiere.base;bundle-version="0.0.0",
org.adempiere.plugin.utils;bundle-version="0.0.0"
-Service-Component: OSGI-INF/dictionaryservice.xml
+Service-Component: OSGI-INF/*.xml
Bundle-Activator: org.adempiere.plugin.utils.PackInApplicationActivator
Bundle-ClassPath: .
Automatic-Module-Name: org.adempiere.pipo
diff --git a/org.adempiere.replication.server/META-INF/MANIFEST.MF b/org.adempiere.replication.server/META-INF/MANIFEST.MF
index 9b263277c5..0577bb08c3 100644
--- a/org.adempiere.replication.server/META-INF/MANIFEST.MF
+++ b/org.adempiere.replication.server/META-INF/MANIFEST.MF
@@ -10,7 +10,7 @@ Require-Bundle: org.adempiere.server;bundle-version="0.0.0",
org.adempiere.base;bundle-version="0.0.0"
Import-Package: javax.jms;version="1.1.0",
org.apache.activemq
-Service-Component: OSGI-INF/serverfactory.xml
+Service-Component: OSGI-INF/*.xml
Bundle-ActivationPolicy: lazy
Bundle-ClassPath: .
Automatic-Module-Name: org.adempiere.replication.server
diff --git a/org.adempiere.report.jasper.swing/META-INF/MANIFEST.MF b/org.adempiere.report.jasper.swing/META-INF/MANIFEST.MF
index e691efc3dc..05c3205af3 100644
--- a/org.adempiere.report.jasper.swing/META-INF/MANIFEST.MF
+++ b/org.adempiere.report.jasper.swing/META-INF/MANIFEST.MF
@@ -14,7 +14,7 @@ Import-Package: net.sf.jasperreports.engine,
net.sf.jasperreports.view,
org.adempiere.report.jasper,
org.osgi.framework
-Service-Component: OSGI-INF/jrviewerprovider.xml
+Service-Component: OSGI-INF/*.xml
Bundle-ActivationPolicy: lazy
Bundle-ClassPath: .
Automatic-Module-Name: org.adempiere.report.jasper.swing
diff --git a/org.adempiere.report.jasper/META-INF/MANIFEST.MF b/org.adempiere.report.jasper/META-INF/MANIFEST.MF
index 6682ffd491..5ef8e66564 100644
--- a/org.adempiere.report.jasper/META-INF/MANIFEST.MF
+++ b/org.adempiere.report.jasper/META-INF/MANIFEST.MF
@@ -13,7 +13,7 @@ Import-Package: net.sourceforge.barbecue,
org.osgi.service.event
Require-Bundle: org.adempiere.base;bundle-version="0.0.0",
net.sf.jasperreports.engine;bundle-version="6.3.1"
-Service-Component: OSGI-INF/processfactory.xml
+Service-Component: OSGI-INF/*.xml
Export-Package: org.adempiere.report.jasper
Bundle-ActivationPolicy: lazy
Bundle-ClassPath: .
diff --git a/org.adempiere.server/META-INF/MANIFEST.MF b/org.adempiere.server/META-INF/MANIFEST.MF
index d1cd0a7dda..7bb8a08575 100644
--- a/org.adempiere.server/META-INF/MANIFEST.MF
+++ b/org.adempiere.server/META-INF/MANIFEST.MF
@@ -39,7 +39,7 @@ Export-Package: org.adempiere.server,
org.compiere.server,
org.idempiere.server.factory
Bundle-ActivationPolicy: lazy
-Service-Component: OSGI-INF/acctprocessorfactory.xml, OSGI-INF/alertprocessorfactory.xml, OSGI-INF/ldapprocessorfactory.xml, OSGI-INF/requestprocessorfactory.xml, OSGI-INF/schedulerfactory.xml, OSGI-INF/workflowprocessorfactory.xml
+Service-Component: OSGI-INF/*.xml
Bundle-Activator: org.adempiere.server.AdempiereServerActivator
Automatic-Module-Name: org.adempiere.server
Bundle-Vendor: iDempiere Community
diff --git a/org.adempiere.ui.zk/META-INF/MANIFEST.MF b/org.adempiere.ui.zk/META-INF/MANIFEST.MF
index 9ad7554d40..6376ff9d1f 100644
--- a/org.adempiere.ui.zk/META-INF/MANIFEST.MF
+++ b/org.adempiere.ui.zk/META-INF/MANIFEST.MF
@@ -164,7 +164,7 @@ Require-Bundle: org.adempiere.base;bundle-version="0.0.0",
Bundle-Activator: org.adempiere.webui.WebUIActivator
Eclipse-ExtensibleAPI: true
Web-ContextPath: webui
-Service-Component: OSGI-INF/reportviewerprovider.xml, OSGI-INF/defaultinfofactory.xml, OSGI-INF/defaulteditorfactory.xml, OSGI-INF/jrviewerprovider.xml, OSGI-INF/resourcefinder.xml, OSGI-INF/defaultpaymentformfactory.xml, OSGI-INF/processfactory.xml, OSGI-INF/defaultprintshippinglabel.xml, OSGI-INF/defaultcreatefromfactory.xml, OSGI-INF/defaultformfactory.xml, OSGI-INF/feedbackservice.xml, OSGI-INF/zulgadgetfactory.xml, OSGI-INF/jfgchartrenderer.xml
+Service-Component: OSGI-INF/*.xml
Bundle-ActivationPolicy: lazy
Automatic-Module-Name: org.adempiere.ui.zk
Bundle-Vendor: iDempiere Community
diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/apps/form/WCreateFromWindow.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/apps/form/WCreateFromWindow.java
index af1deabadf..fb4436aa50 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/apps/form/WCreateFromWindow.java
+++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/apps/form/WCreateFromWindow.java
@@ -246,6 +246,16 @@ public class WCreateFromWindow extends Window implements EventListener, W
confirmPanel.getOKButton().setEnabled(selectedRowCount > 0);
}
+ public StatusBarPanel getStatusBar()
+ {
+ return statusBar;
+ }
+
+ public void setStatusBar(StatusBarPanel statusBar)
+ {
+ this.statusBar = statusBar;
+ }
+
public WListbox getWListbox()
{
return dataTable;
diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/editor/WSearchEditor.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/editor/WSearchEditor.java
index 3d9f9a966e..3291908dcb 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/editor/WSearchEditor.java
+++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/editor/WSearchEditor.java
@@ -498,7 +498,8 @@ public class WSearchEditor extends WEditor implements ContextMenuListener, Value
zoomWindowId = gridField != null ? lookup.getZoom(Env.isSOTrx(Env.getCtx(), gridField.getWindowNo())) : lookup.getZoom(Env.isSOTrx(Env.getCtx()));
}
- final WQuickEntry vqe = new WQuickEntry (lookup.getWindowNo(), zoomWindowId);
+ int tabNo = gridField != null && gridField.getGridTab() != null ? gridField.getGridTab().getTabNo() : 0;
+ final WQuickEntry vqe = new WQuickEntry(lookup.getWindowNo(), tabNo, zoomWindowId);
if (vqe.getQuickFields()<=0)
return;
vqe.loadRecord (Record_ID);
diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/editor/WTableDirEditor.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/editor/WTableDirEditor.java
index 0b4a5e0b27..aaac7923c8 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/editor/WTableDirEditor.java
+++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/editor/WTableDirEditor.java
@@ -599,7 +599,8 @@ ContextMenuListener, IZoomableEditor
if(!getComponent().isEnabled())
return;
- final WQuickEntry vqe = new WQuickEntry (lookup.getWindowNo(), lookup.getZoom());
+ int tabNo = gridField != null && gridField.getGridTab() != null ? gridField.getGridTab().getTabNo() : 0;
+ final WQuickEntry vqe = new WQuickEntry(lookup.getWindowNo(), tabNo, lookup.getZoom());
int Record_ID = 0;
Object value = getValue();
diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/grid/WQuickEntry.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/grid/WQuickEntry.java
index 29e64fbeb7..d3535c5ee2 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/grid/WQuickEntry.java
+++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/grid/WQuickEntry.java
@@ -66,15 +66,17 @@ public class WQuickEntry extends Window implements EventListener, ValueCh
/**
*
*/
- private static final long serialVersionUID = -1397302187339942732L;
+ private static final long serialVersionUID = -6385383768870354870L;
public static final String QUICK_ENTRY_MODE = "_QUICK_ENTRY_MODE_";
public static final String QUICK_ENTRY_CALLER_WINDOW = "_QUICK_ENTRY_CALLER_WINDOW_";
+ public static final String QUICK_ENTRY_CALLER_TAB = "_QUICK_ENTRY_CALLER_TAB_";
private static CLogger log = CLogger.getCLogger(WQuickEntry.class);
protected int m_WindowNo;
private int parent_WindowNo;
+ private int parent_TabNo;
List quickFields = new ArrayList();
protected List quickEditors = new ArrayList();
@@ -94,19 +96,25 @@ public class WQuickEntry extends Window implements EventListener, ValueCh
private boolean isHasField = false;
private String orientation;
+
+ public WQuickEntry(int WindowNo, int AD_Window_ID)
+ {
+ this(WindowNo, 0, AD_Window_ID);
+ }
+
/**
* Constructor.
* Requires call loadRecord
* @param WindowNo Window No
* @param AD_Window_ID
*/
-
- public WQuickEntry(int WindowNo, int AD_Window_ID)
+ public WQuickEntry(int WindowNo, int TabNo, int AD_Window_ID)
{
super();
m_AD_Window_ID = AD_Window_ID;
parent_WindowNo = WindowNo;
+ parent_TabNo = TabNo;
m_WindowNo = SessionManager.getAppDesktop().registerWindow(this);
log.info("R/O=" + m_readOnly);
@@ -121,6 +129,7 @@ public class WQuickEntry extends Window implements EventListener, ValueCh
Env.setContext(Env.getCtx(), m_WindowNo, QUICK_ENTRY_MODE, "Y");
Env.setContext(Env.getCtx(), m_WindowNo, QUICK_ENTRY_CALLER_WINDOW, parent_WindowNo);
+ Env.setContext(Env.getCtx(), m_WindowNo, QUICK_ENTRY_CALLER_TAB, parent_TabNo);
initPOs();
} // WQuickEntry
@@ -252,6 +261,7 @@ public class WQuickEntry extends Window implements EventListener, ValueCh
}
Component field = editor.getComponent();
Hlayout layout = new Hlayout();
+ layout.setValign("middle");
ZKUpdateUtil.setHflex(layout, "10");
@@ -347,6 +357,7 @@ public class WQuickEntry extends Window implements EventListener, ValueCh
initialValues.add(editor.getValue());
}
dynamicDisplay();
+ updateStyleTab(quickTabs.get(0));
return true;
}
@@ -366,13 +377,12 @@ public class WQuickEntry extends Window implements EventListener, ValueCh
if (value != null) {
editor.setValue(value);
field.setValue(value, false);
- } else {
- editor.dynamicDisplay();
}
initialValues.add(editor.getValue());
}
dynamicDisplay();
+ updateStyleTab(quickTabs.get(0));
return true;
} // loadRecord
@@ -561,6 +571,7 @@ public class WQuickEntry extends Window implements EventListener, ValueCh
}
}
dynamicDisplay();
+ updateStyleTab(gridTab);
}
}
}
@@ -583,6 +594,17 @@ public class WQuickEntry extends Window implements EventListener, ValueCh
editor.setVisible(field.isDisplayed(true));
}
} // dynamicDisplay
+
+ private void updateStyleTab(GridTab tab) {
+ for (int idxf = 0; idxf < quickFields.size(); idxf++) {
+ GridField field = quickFields.get(idxf);
+ GridTab gridTab = field.getGridTab();
+ if (tab == gridTab) {
+ WEditor editor = quickEditors.get(idxf);
+ editor.updateStyle();
+ }
+ }
+ }
/**
* get size quickfields
diff --git a/org.adempiere.ui.zk/js/report.js b/org.adempiere.ui.zk/js/report.js
index c5226f1e84..5da788df2c 100644
--- a/org.adempiere.ui.zk/js/report.js
+++ b/org.adempiere.ui.zk/js/report.js
@@ -40,13 +40,13 @@ function showColumnMenu(e, columnName, row) {
d.style.left = posx;
d.style.display = "block";
- setTimeout("getMenu ().style.display='none'", 3000);
+ setTimeout("getMenu().style.display='none'", 3000);
}
var contextMenu;
function getMenu (componentId, foreignColumnName, value){
- if (contextMenu == null){
+ if (componentId != null){
//menu div
var menu = document.createElement("div");
@@ -70,9 +70,7 @@ function getMenu (componentId, foreignColumnName, value){
href.style.textDecoration = "none";
href.style.verticalAlign = "middle";
href.href = "javascript:void(0)";
- href.setAttribute("onclick", "parent.zoom(contextMenu.getAttribute ('componentId'), " +
- "contextMenu.getAttribute ('foreignColumnName'), " +
- "contextMenu.getAttribute ('value'))");
+ href.setAttribute("onclick", "parent.zoom('" + componentId + "','" + foreignColumnName + "','" + value + "')");
windowMenu.appendChild(href);
menu.appendChild(windowMenu);
@@ -96,9 +94,7 @@ function getMenu (componentId, foreignColumnName, value){
reportHref.style.textDecoration = "none";
reportHref.style.fontSize = "11px";
reportHref.style.verticalAlign = "middle";
- reportHref.setAttribute("onclick", "parent.drillDown(contextMenu.getAttribute ('componentId'), " +
- "contextMenu.getAttribute ('foreignColumnName'), " +
- "contextMenu.getAttribute ('value'))");
+ reportHref.setAttribute("onclick", "parent.drillDown('" + componentId + "','" + foreignColumnName + "','" + value + "')");
report.appendChild(reportHref);
menu.appendChild(report);
diff --git a/org.compiere.db.oracle.provider/META-INF/MANIFEST.MF b/org.compiere.db.oracle.provider/META-INF/MANIFEST.MF
index c3291094a6..d275b68eef 100644
--- a/org.compiere.db.oracle.provider/META-INF/MANIFEST.MF
+++ b/org.compiere.db.oracle.provider/META-INF/MANIFEST.MF
@@ -17,6 +17,6 @@ Import-Package: org.jfree.io;version="1.0.23",
org.slf4j;version="1.7.2"
Bundle-ActivationPolicy: lazy
Bundle-Activator: org.adempiere.db.oracle.OracleBundleActivator
-Service-Component: OSGI-INF/oracleprovider.xml
+Service-Component: OSGI-INF/*.xml
Automatic-Module-Name: org.compiere.db.oracle.provider
Bundle-Vendor: iDempiere Community
diff --git a/org.compiere.db.postgresql.provider/META-INF/MANIFEST.MF b/org.compiere.db.postgresql.provider/META-INF/MANIFEST.MF
index 639ac8a37a..f171c52929 100644
--- a/org.compiere.db.postgresql.provider/META-INF/MANIFEST.MF
+++ b/org.compiere.db.postgresql.provider/META-INF/MANIFEST.MF
@@ -18,6 +18,6 @@ Import-Package: junit.framework;version="3.8.2",
org.slf4j;version="1.7.2"
Bundle-ActivationPolicy: lazy
Bundle-Activator: org.adempiere.db.postgresql.PostgreSQLBundleActivator
-Service-Component: OSGI-INF/pgprovider.xml
+Service-Component: OSGI-INF/*.xml
Automatic-Module-Name: org.compiere.db.postgresql.provider
Bundle-Vendor: iDempiere Community
diff --git a/org.idempiere.felix.webconsole/META-INF/MANIFEST.MF b/org.idempiere.felix.webconsole/META-INF/MANIFEST.MF
index edb61ed8bd..a4efe14646 100644
--- a/org.idempiere.felix.webconsole/META-INF/MANIFEST.MF
+++ b/org.idempiere.felix.webconsole/META-INF/MANIFEST.MF
@@ -27,7 +27,7 @@ Import-Package: javax.servlet;version="2.5.0",
org.osgi.framework;version="1.6.0",
org.osgi.service.http;version="1.2.1"
Web-ContextPath: osgi
-Service-Component: OSGI-INF/securityprovider.xml
+Service-Component: OSGI-INF/*.xml
Bundle-ClassPath: .
Automatic-Module-Name: org.idempiere.felix.webconsole
Bundle-Vendor: iDempiere Community
diff --git a/org.idempiere.fitnesse.fixture/META-INF/MANIFEST.MF b/org.idempiere.fitnesse.fixture/META-INF/MANIFEST.MF
index dc1202fd88..97bffcd834 100644
--- a/org.idempiere.fitnesse.fixture/META-INF/MANIFEST.MF
+++ b/org.idempiere.fitnesse.fixture/META-INF/MANIFEST.MF
@@ -62,7 +62,7 @@ Import-Package: fit,
org.idempiere.fitnesse.server.fit,
org.idempiere.fitnesse.server.slim,
org.osgi.framework;version="1.3.0"
-Service-Component: OSGI-INF/fitfixturefactory.xml, OSGI-INF/slimfixturefactory.xml
+Service-Component: OSGI-INF/*.xml
Export-Package: org.idempiere.fitnesse.fixture
Bundle-ClassPath: .
Automatic-Module-Name: org.idempiere.fitnesse.fixture
diff --git a/org.idempiere.hazelcast.service/META-INF/MANIFEST.MF b/org.idempiere.hazelcast.service/META-INF/MANIFEST.MF
index ed5aac2d86..0a16059b47 100644
--- a/org.idempiere.hazelcast.service/META-INF/MANIFEST.MF
+++ b/org.idempiere.hazelcast.service/META-INF/MANIFEST.MF
@@ -29,7 +29,7 @@ DynamicImport-Package: org.*, com.*, javax.*
Bundle-ClassPath: .,
lib/hazelcast-aws.jar,
lib/hazelcast.jar
-Service-Component: OSGI-INF/clusterservice.xml, OSGI-INF/cacheservice.xml, OSGI-INF/messageservice.xml
+Service-Component: OSGI-INF/*.xml
Comment: Bundle-RequiredExecutionEnvironment: JavaSE-11
Require-Capability: osgi.ee;filter:="(&(osgi.ee=JavaSE)(version>=1.11))"
Require-Bundle: org.eclipse.osgi
diff --git a/org.idempiere.ui.zk.selenium/META-INF/MANIFEST.MF b/org.idempiere.ui.zk.selenium/META-INF/MANIFEST.MF
index 700c493456..4dc14d5c93 100644
--- a/org.idempiere.ui.zk.selenium/META-INF/MANIFEST.MF
+++ b/org.idempiere.ui.zk.selenium/META-INF/MANIFEST.MF
@@ -341,7 +341,7 @@ Import-Package: fit,
org.w3c.dom.traversal,
org.w3c.dom.views,
org.w3c.dom.xpath
-Service-Component: OSGI-INF/fitfixturefactory.xml
+Service-Component: OSGI-INF/*.xml
Bundle-ClassPath: .
Automatic-Module-Name: org.idempiere.ui.zk.selenium
Bundle-Vendor: iDempiere Community
diff --git a/org.idempiere.webservices/META-INF/MANIFEST.MF b/org.idempiere.webservices/META-INF/MANIFEST.MF
index fac91afbf5..b436dc804c 100644
--- a/org.idempiere.webservices/META-INF/MANIFEST.MF
+++ b/org.idempiere.webservices/META-INF/MANIFEST.MF
@@ -6,7 +6,7 @@ Bundle-Version: 6.2.0.qualifier
Bundle-Activator: org.idempiere.webservices.Activator
Comment: Bundle-RequiredExecutionEnvironment: JavaSE-11
Require-Capability: osgi.ee;filter:="(&(osgi.ee=JavaSE)(version>=1.11))"
-Service-Component: OSGI-INF/ws_modelfactory.xml
+Service-Component: OSGI-INF/*.xml
Import-Package: javax.activation,
javax.jws;version="1.1.0",
javax.jws.soap;version="1.1.0",