hg merge release-3.1 (merge release3.1 into development)
This commit is contained in:
commit
059a9ee240
|
@ -306,6 +306,7 @@ AS
|
||||||
ON il.c_charge_id = c.c_charge_id
|
ON il.c_charge_id = c.c_charge_id
|
||||||
LEFT JOIN c_charge_trl ct
|
LEFT JOIN c_charge_trl ct
|
||||||
ON il.c_charge_id = ct.c_charge_id
|
ON il.c_charge_id = ct.c_charge_id
|
||||||
|
AND uomt.ad_language = ct.ad_language
|
||||||
LEFT JOIN c_bpartner_product pp
|
LEFT JOIN c_bpartner_product pp
|
||||||
ON il.m_product_id = pp.m_product_id
|
ON il.m_product_id = pp.m_product_id
|
||||||
AND i.c_bpartner_id = pp.c_bpartner_id
|
AND i.c_bpartner_id = pp.c_bpartner_id
|
||||||
|
|
|
@ -233,6 +233,7 @@ AS
|
||||||
ON iol.c_charge_id = c.c_charge_id
|
ON iol.c_charge_id = c.c_charge_id
|
||||||
LEFT JOIN c_charge_trl ct
|
LEFT JOIN c_charge_trl ct
|
||||||
ON iol.c_charge_id = ct.c_charge_id
|
ON iol.c_charge_id = ct.c_charge_id
|
||||||
|
AND uomt.ad_language = ct.ad_language
|
||||||
UNION
|
UNION
|
||||||
SELECT iol.ad_client_id,
|
SELECT iol.ad_client_id,
|
||||||
iol.ad_org_id,
|
iol.ad_org_id,
|
||||||
|
|
|
@ -264,7 +264,7 @@ CREATE OR REPLACE VIEW c_invoice_linetax_vt AS
|
||||||
LEFT JOIN c_charge c
|
LEFT JOIN c_charge c
|
||||||
ON il.c_charge_id = c.c_charge_id
|
ON il.c_charge_id = c.c_charge_id
|
||||||
LEFT JOIN c_charge_trl ct
|
LEFT JOIN c_charge_trl ct
|
||||||
ON il.c_charge_id = ct.c_charge_id
|
ON il.c_charge_id = ct.c_charge_id AND uomt.ad_language = ct.ad_language
|
||||||
LEFT JOIN c_bpartner_product pp
|
LEFT JOIN c_bpartner_product pp
|
||||||
ON il.m_product_id = pp.m_product_id AND i.c_bpartner_id = pp.c_bpartner_id
|
ON il.m_product_id = pp.m_product_id AND i.c_bpartner_id = pp.c_bpartner_id
|
||||||
LEFT JOIN m_product_trl pt
|
LEFT JOIN m_product_trl pt
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
DROP VIEW m_inout_line_vt;
|
DROP VIEW m_inout_line_vt;
|
||||||
|
|
||||||
CREATE OR REPLACE VIEW m_inout_line_vt AS
|
CREATE OR REPLACE VIEW m_inout_line_vt AS
|
||||||
SELECT iol.ad_client_id,
|
SELECT iol.ad_client_id,
|
||||||
|
@ -214,7 +214,7 @@ FROM m_inoutline iol
|
||||||
LEFT JOIN c_charge c
|
LEFT JOIN c_charge c
|
||||||
ON iol.c_charge_id = c.c_charge_id
|
ON iol.c_charge_id = c.c_charge_id
|
||||||
LEFT JOIN c_charge_trl ct
|
LEFT JOIN c_charge_trl ct
|
||||||
ON iol.c_charge_id = ct.c_charge_id
|
ON iol.c_charge_id = ct.c_charge_id AND uomt.ad_language = ct.ad_language
|
||||||
UNION SELECT iol.ad_client_id,
|
UNION SELECT iol.ad_client_id,
|
||||||
iol.ad_org_id,
|
iol.ad_org_id,
|
||||||
iol.isactive,
|
iol.isactive,
|
||||||
|
|
|
@ -0,0 +1,9 @@
|
||||||
|
SET SQLBLANKLINES ON
|
||||||
|
SET DEFINE OFF
|
||||||
|
|
||||||
|
-- IDEMPIERE-2428
|
||||||
|
-- Jul 28, 2016 12:08:00 PM CEST
|
||||||
|
drop index m_inoutlinema_key;
|
||||||
|
|
||||||
|
SELECT register_migration_script('201607281208_IDEMPIERE-2428.sql') FROM dual
|
||||||
|
;
|
|
@ -0,0 +1,11 @@
|
||||||
|
SET SQLBLANKLINES ON
|
||||||
|
SET DEFINE OFF
|
||||||
|
|
||||||
|
-- I forgot to set the DICTIONARY_ID_COMMENTS System Configurator
|
||||||
|
-- Aug 3, 2016 12:25:05 PM CEST
|
||||||
|
INSERT INTO AD_Message (MsgType,MsgText,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Message_ID,Value,EntityType,AD_Message_UU) VALUES ('E','{0} resolved multiple times = ({1})',0,0,'Y',TO_DATE('2016-08-03 12:25:05','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2016-08-03 12:25:05','YYYY-MM-DD HH24:MI:SS'),100,200405,'ForeignMultipleResolved','D','3c350f49-c813-4ebc-ae1a-5d4b2fc76faa')
|
||||||
|
;
|
||||||
|
|
||||||
|
SELECT register_migration_script('201608031225_IDEMPIERE-3146.sql') FROM dual
|
||||||
|
;
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,11 @@
|
||||||
|
SET SQLBLANKLINES ON
|
||||||
|
SET DEFINE OFF
|
||||||
|
|
||||||
|
-- IDEMPIERE-3153 Allow negative BOM Product lines for co/by-products
|
||||||
|
-- Aug 7, 2016 12:51:02 PM CEST
|
||||||
|
UPDATE AD_Column SET ValueMin=NULL,Updated=TO_DATE('2016-08-07 12:51:02','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=4723
|
||||||
|
;
|
||||||
|
|
||||||
|
SELECT register_migration_script('201608071251_IDEMPIERE-3153.sql') FROM dual
|
||||||
|
;
|
||||||
|
|
|
@ -0,0 +1,15 @@
|
||||||
|
SET SQLBLANKLINES ON
|
||||||
|
SET DEFINE OFF
|
||||||
|
|
||||||
|
-- IDEMPIERE-2065 flag Pay Schedule valid of invoice customer is not update in some case, make invoice not list in search when payment
|
||||||
|
-- Aug 7, 2016 1:50:22 PM CEST
|
||||||
|
UPDATE AD_Column SET IsAllowCopy='N',Updated=TO_DATE('2016-08-07 13:50:22','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=10326
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Aug 7, 2016 1:50:27 PM CEST
|
||||||
|
UPDATE AD_Column SET IsAllowCopy='N',Updated=TO_DATE('2016-08-07 13:50:27','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=60152
|
||||||
|
;
|
||||||
|
|
||||||
|
SELECT register_migration_script('201608071350_IDEMPIERE-2065.sql') FROM dual
|
||||||
|
;
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
-- just for oracle
|
||||||
|
|
||||||
|
SELECT register_migration_script('201607281208_IDEMPIERE-2428.sql') FROM dual
|
||||||
|
;
|
|
@ -0,0 +1,8 @@
|
||||||
|
-- I forgot to set the DICTIONARY_ID_COMMENTS System Configurator
|
||||||
|
-- Aug 3, 2016 12:25:05 PM CEST
|
||||||
|
INSERT INTO AD_Message (MsgType,MsgText,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Message_ID,Value,EntityType,AD_Message_UU) VALUES ('E','{0} resolved multiple times = ({1})',0,0,'Y',TO_TIMESTAMP('2016-08-03 12:25:05','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2016-08-03 12:25:05','YYYY-MM-DD HH24:MI:SS'),100,200405,'ForeignMultipleResolved','D','3c350f49-c813-4ebc-ae1a-5d4b2fc76faa')
|
||||||
|
;
|
||||||
|
|
||||||
|
SELECT register_migration_script('201608031225_IDEMPIERE-3146.sql') FROM dual
|
||||||
|
;
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,8 @@
|
||||||
|
-- IDEMPIERE-3153 Allow negative BOM Product lines for co/by-products
|
||||||
|
-- Aug 7, 2016 12:51:02 PM CEST
|
||||||
|
UPDATE AD_Column SET ValueMin=NULL,Updated=TO_TIMESTAMP('2016-08-07 12:51:02','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=4723
|
||||||
|
;
|
||||||
|
|
||||||
|
SELECT register_migration_script('201608071251_IDEMPIERE-3153.sql') FROM dual
|
||||||
|
;
|
||||||
|
|
|
@ -0,0 +1,12 @@
|
||||||
|
-- IDEMPIERE-2065 flag Pay Schedule valid of invoice customer is not update in some case, make invoice not list in search when payment
|
||||||
|
-- Aug 7, 2016 1:50:22 PM CEST
|
||||||
|
UPDATE AD_Column SET IsAllowCopy='N',Updated=TO_TIMESTAMP('2016-08-07 13:50:22','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=10326
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Aug 7, 2016 1:50:27 PM CEST
|
||||||
|
UPDATE AD_Column SET IsAllowCopy='N',Updated=TO_TIMESTAMP('2016-08-07 13:50:27','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=60152
|
||||||
|
;
|
||||||
|
|
||||||
|
SELECT register_migration_script('201608071350_IDEMPIERE-2065.sql') FROM dual
|
||||||
|
;
|
||||||
|
|
|
@ -958,7 +958,7 @@ public class GridTabCSVImporter implements IGridTabImporter
|
||||||
if(idS == null && id < 0){
|
if(idS == null && id < 0){
|
||||||
//it could be that record still doesn't exist if import mode is inserting or merging
|
//it could be that record still doesn't exist if import mode is inserting or merging
|
||||||
if(isUpdateMode())
|
if(isUpdateMode())
|
||||||
return new StringBuilder(Msg.getMsg(Env.getCtx(),"ForeignNotResolved",new Object[]{header.get(i),value}));
|
return new StringBuilder(Msg.getMsg(Env.getCtx(),id==-2?"ForeignMultipleResolved":"ForeignNotResolved",new Object[]{header.get(i),value}));
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// no validation here
|
// no validation here
|
||||||
|
@ -1016,8 +1016,9 @@ public class GridTabCSVImporter implements IGridTabImporter
|
||||||
|
|
||||||
if(isForeing && !"(null)".equals(value)){
|
if(isForeing && !"(null)".equals(value)){
|
||||||
String foreignTable = columnName.substring(0,columnName.length()-3);
|
String foreignTable = columnName.substring(0,columnName.length()-3);
|
||||||
if(resolveForeign(foreignTable,foreignColumn,value,null) < 0)
|
int id = resolveForeign(foreignTable,foreignColumn,value,null);
|
||||||
return new StringBuilder(Msg.getMsg(Env.getCtx(), "ForeignNotResolved" ,new Object[]{header.get(j),value}));
|
if (id < 0)
|
||||||
|
return new StringBuilder(Msg.getMsg(Env.getCtx(), id==-2?"ForeignMultipleResolved":"ForeignNotResolved" ,new Object[]{header.get(j),value}));
|
||||||
}
|
}
|
||||||
isEmptyRow=false;
|
isEmptyRow=false;
|
||||||
}
|
}
|
||||||
|
@ -1118,7 +1119,7 @@ public class GridTabCSVImporter implements IGridTabImporter
|
||||||
id = resolveForeign(foreignTable,foreignColumn,value,trx);
|
id = resolveForeign(foreignTable,foreignColumn,value,trx);
|
||||||
|
|
||||||
if(idS == null && id < 0)
|
if(idS == null && id < 0)
|
||||||
return Msg.getMsg(Env.getCtx(),"ForeignNotResolved",new Object[]{header.get(i),value});
|
return Msg.getMsg(Env.getCtx(),id==-2?"ForeignMultipleResolved":"ForeignNotResolved",new Object[]{header.get(i),value});
|
||||||
|
|
||||||
if(id >= 0)
|
if(id >= 0)
|
||||||
logMsg = gridTab.setValue(field,id);
|
logMsg = gridTab.setValue(field,id);
|
||||||
|
@ -1161,7 +1162,7 @@ public class GridTabCSVImporter implements IGridTabImporter
|
||||||
|
|
||||||
int id = resolveForeign(foreignTable, foreignColumn, value,trx);
|
int id = resolveForeign(foreignTable, foreignColumn, value,trx);
|
||||||
if (id < 0)
|
if (id < 0)
|
||||||
return Msg.getMsg(Env.getCtx(),"ForeignNotResolved",new Object[]{header.get(i),value});
|
return Msg.getMsg(Env.getCtx(),id==-2?"ForeignMultipleResolved":"ForeignNotResolved",new Object[]{header.get(i),value});
|
||||||
|
|
||||||
setValue = id;
|
setValue = id;
|
||||||
if (field.isParentValue()) {
|
if (field.isParentValue()) {
|
||||||
|
@ -1279,7 +1280,7 @@ public class GridTabCSVImporter implements IGridTabImporter
|
||||||
} else {
|
} else {
|
||||||
int id = resolveForeign(foreignTable, foreignColumn, setValue,trx);
|
int id = resolveForeign(foreignTable, foreignColumn, setValue,trx);
|
||||||
if (id < 0)
|
if (id < 0)
|
||||||
return Msg.getMsg(Env.getCtx(),"ForeignNotResolved",new Object[]{columnName,setValue});
|
return Msg.getMsg(Env.getCtx(),id==-2?"ForeignMultipleResolved":"ForeignNotResolved",new Object[]{columnName,setValue});
|
||||||
|
|
||||||
setValue = id;
|
setValue = id;
|
||||||
}
|
}
|
||||||
|
@ -1452,22 +1453,40 @@ public class GridTabCSVImporter implements IGridTabImporter
|
||||||
|
|
||||||
private int resolveForeign(String foreignTable, String foreignColumn, Object value,Trx trx) {
|
private int resolveForeign(String foreignTable, String foreignColumn, Object value,Trx trx) {
|
||||||
int id = -1;
|
int id = -1;
|
||||||
String trxName = (trx!=null?trx.getTrxName():null);
|
|
||||||
StringBuilder select = new StringBuilder("SELECT ")
|
boolean systemAccess = false;
|
||||||
.append(foreignTable).append("_ID FROM ")
|
if (!"AD_Client".equals(foreignTable)) {
|
||||||
.append(foreignTable).append(" WHERE ")
|
|
||||||
.append(foreignColumn).append("=? AND IsActive='Y' AND AD_Client_ID=?");
|
|
||||||
id = DB.getSQLValueEx(trxName, select.toString(), value, Env.getAD_Client_ID(Env.getCtx()));
|
|
||||||
if (id == -1 && !"AD_Client".equals(foreignTable)) {
|
|
||||||
MTable ft = MTable.get(Env.getCtx(), foreignTable);
|
MTable ft = MTable.get(Env.getCtx(), foreignTable);
|
||||||
String accessLevel = ft.getAccessLevel();
|
String accessLevel = ft.getAccessLevel();
|
||||||
if ( MTable.ACCESSLEVEL_All.equals(accessLevel)
|
if ( MTable.ACCESSLEVEL_All.equals(accessLevel)
|
||||||
|| MTable.ACCESSLEVEL_SystemOnly.equals(accessLevel)
|
|| MTable.ACCESSLEVEL_SystemOnly.equals(accessLevel)
|
||||||
|| MTable.ACCESSLEVEL_SystemPlusClient.equals(accessLevel)) {
|
|| MTable.ACCESSLEVEL_SystemPlusClient.equals(accessLevel)) {
|
||||||
// try System client if the table has System access
|
systemAccess = true;
|
||||||
id = DB.getSQLValueEx(trxName, select.toString(), value, 0);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
String trxName = (trx!=null?trx.getTrxName():null);
|
||||||
|
|
||||||
|
StringBuilder postSelect = new StringBuilder(" FROM ")
|
||||||
|
.append(foreignTable).append(" WHERE ")
|
||||||
|
.append(foreignColumn).append("=? AND IsActive='Y' AND AD_Client_ID");
|
||||||
|
if (systemAccess) {
|
||||||
|
postSelect.append(" IN (0,?)");
|
||||||
|
} else {
|
||||||
|
postSelect.append("=?");
|
||||||
|
}
|
||||||
|
|
||||||
|
StringBuilder selectCount = new StringBuilder("SELECT COUNT(*)").append(postSelect);
|
||||||
|
int count = DB.getSQLValueEx(trxName, selectCount.toString(), value, Env.getAD_Client_ID(Env.getCtx()));
|
||||||
|
if (count == 1) { // single value found, OK
|
||||||
|
StringBuilder selectId = new StringBuilder("SELECT ").append(foreignTable).append("_ID").append(postSelect);
|
||||||
|
id = DB.getSQLValueEx(trxName, selectId.toString(), value, Env.getAD_Client_ID(Env.getCtx()));
|
||||||
|
} else if (count > 1) { // multiple values found, error ForeignMultipleResolved
|
||||||
|
id = -2;
|
||||||
|
} else if (count == 0) { // no values found, error ForeignNotResolved
|
||||||
|
id = -3;
|
||||||
|
}
|
||||||
|
|
||||||
return id;
|
return id;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -48,7 +48,7 @@ public class MatchInvReverse extends SvrProcess {
|
||||||
if (inv.get_ID() != p_M_MatchInv_ID)
|
if (inv.get_ID() != p_M_MatchInv_ID)
|
||||||
throw new AdempiereException("@NotFound@ @M_MatchInv_ID@ " + p_M_MatchInv_ID);
|
throw new AdempiereException("@NotFound@ @M_MatchInv_ID@ " + p_M_MatchInv_ID);
|
||||||
|
|
||||||
if (inv.isPosted())
|
if (inv.isProcessed())
|
||||||
{
|
{
|
||||||
Timestamp reversalDate = Env.getContextAsDate(getCtx(), "#Date");
|
Timestamp reversalDate = Env.getContextAsDate(getCtx(), "#Date");
|
||||||
if (reversalDate == null) {
|
if (reversalDate == null) {
|
||||||
|
|
|
@ -46,7 +46,7 @@ public class MatchPOReverse extends SvrProcess {
|
||||||
MMatchPO po = new MMatchPO (getCtx(), p_M_MatchPO_ID, get_TrxName());
|
MMatchPO po = new MMatchPO (getCtx(), p_M_MatchPO_ID, get_TrxName());
|
||||||
if (po.get_ID() != p_M_MatchPO_ID)
|
if (po.get_ID() != p_M_MatchPO_ID)
|
||||||
throw new AdempiereException("@NotFound@ @M_MatchPO_ID@ " + p_M_MatchPO_ID);
|
throw new AdempiereException("@NotFound@ @M_MatchPO_ID@ " + p_M_MatchPO_ID);
|
||||||
if (po.isPosted())
|
if (po.isProcessed())
|
||||||
{
|
{
|
||||||
Timestamp reversalDate = Env.getContextAsDate(getCtx(), "#Date");
|
Timestamp reversalDate = Env.getContextAsDate(getCtx(), "#Date");
|
||||||
if (reversalDate == null) {
|
if (reversalDate == null) {
|
||||||
|
|
|
@ -35,13 +35,14 @@ public class LogAuthFailure {
|
||||||
|
|
||||||
private static FileOutputStream file = null;
|
private static FileOutputStream file = null;
|
||||||
private static Writer writer;
|
private static Writer writer;
|
||||||
|
public static String authFailureFilename = "AuthFailure.log";
|
||||||
/** Logger */
|
/** Logger */
|
||||||
private static CLogger log = CLogger.getCLogger(LogAuthFailure.class);
|
private static CLogger log = CLogger.getCLogger(LogAuthFailure.class);
|
||||||
|
|
||||||
public LogAuthFailure() {
|
public LogAuthFailure() {
|
||||||
|
|
||||||
String path = Ini.getAdempiereHome() + File.separator + "log";
|
String path = Ini.getAdempiereHome() + File.separator + "log";
|
||||||
String name = path + File.separator + "AuthFailure.log";
|
String name = path + File.separator + authFailureFilename;
|
||||||
File fileName;
|
File fileName;
|
||||||
try {
|
try {
|
||||||
fileName = new File(name);
|
fileName = new File(name);
|
||||||
|
|
|
@ -605,6 +605,10 @@ public class GridField
|
||||||
public Object getDefault(ParseSeq seqGetDefaultValue){
|
public Object getDefault(ParseSeq seqGetDefaultValue){
|
||||||
Object defaultValue = null;
|
Object defaultValue = null;
|
||||||
for (Character seqType : seqGetDefaultValue){
|
for (Character seqType : seqGetDefaultValue){
|
||||||
|
if ( seqType == '3' // default from Expression
|
||||||
|
&& m_vo.DefaultValue != null
|
||||||
|
&& m_vo.DefaultValue.toUpperCase().equals("NULL")) // IDEMPIERE-2678
|
||||||
|
return null;
|
||||||
defaultValue = getDefaultValueByType(seqType);
|
defaultValue = getDefaultValueByType(seqType);
|
||||||
if (defaultValue != null)
|
if (defaultValue != null)
|
||||||
return defaultValue;
|
return defaultValue;
|
||||||
|
|
|
@ -39,8 +39,7 @@ public class MAcctSchema extends X_C_AcctSchema
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
private static final long serialVersionUID = -7228171623905614596L;
|
private static final long serialVersionUID = 8940388112876468770L;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get AccountSchema of Client
|
* Get AccountSchema of Client
|
||||||
|
@ -201,8 +200,6 @@ public class MAcctSchema extends X_C_AcctSchema
|
||||||
} // MAcctSchema
|
} // MAcctSchema
|
||||||
|
|
||||||
|
|
||||||
/** Element List */
|
|
||||||
private MAcctSchemaElement[] m_elements = null;
|
|
||||||
/** GL Info */
|
/** GL Info */
|
||||||
private MAcctSchemaGL m_gl = null;
|
private MAcctSchemaGL m_gl = null;
|
||||||
/** Default Info */
|
/** Default Info */
|
||||||
|
@ -228,9 +225,7 @@ public class MAcctSchema extends X_C_AcctSchema
|
||||||
*/
|
*/
|
||||||
public MAcctSchemaElement[] getAcctSchemaElements()
|
public MAcctSchemaElement[] getAcctSchemaElements()
|
||||||
{
|
{
|
||||||
if (m_elements == null)
|
return MAcctSchemaElement.getAcctSchemaElements(this);
|
||||||
m_elements = MAcctSchemaElement.getAcctSchemaElements(this);
|
|
||||||
return m_elements;
|
|
||||||
} // getAcctSchemaElements
|
} // getAcctSchemaElements
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -240,11 +235,8 @@ public class MAcctSchema extends X_C_AcctSchema
|
||||||
*/
|
*/
|
||||||
public MAcctSchemaElement getAcctSchemaElement (String elementType)
|
public MAcctSchemaElement getAcctSchemaElement (String elementType)
|
||||||
{
|
{
|
||||||
if (m_elements == null)
|
/** Element List */
|
||||||
getAcctSchemaElements();
|
for (MAcctSchemaElement ase : getAcctSchemaElements()) {
|
||||||
for (int i = 0; i < m_elements.length; i++)
|
|
||||||
{
|
|
||||||
MAcctSchemaElement ase = m_elements[i];
|
|
||||||
if (ase.getElementType().equals(elementType))
|
if (ase.getElementType().equals(elementType))
|
||||||
return ase;
|
return ase;
|
||||||
}
|
}
|
||||||
|
|
|
@ -40,7 +40,7 @@ public class MInvoicePaySchedule extends X_C_InvoicePaySchedule
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
private static final long serialVersionUID = -1529278048406862670L;
|
private static final long serialVersionUID = 4613382619117842586L;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get Payment Schedule of the invoice
|
* Get Payment Schedule of the invoice
|
||||||
|
@ -229,7 +229,7 @@ public class MInvoicePaySchedule extends X_C_InvoicePaySchedule
|
||||||
{
|
{
|
||||||
if (!success)
|
if (!success)
|
||||||
return success;
|
return success;
|
||||||
if (is_ValueChanged("DueAmt"))
|
if (is_ValueChanged("DueAmt") || is_ValueChanged("IsActive"))
|
||||||
{
|
{
|
||||||
log.fine("afterSave");
|
log.fine("afterSave");
|
||||||
getParent();
|
getParent();
|
||||||
|
@ -239,5 +239,15 @@ public class MInvoicePaySchedule extends X_C_InvoicePaySchedule
|
||||||
return success;
|
return success;
|
||||||
} // afterSave
|
} // afterSave
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected boolean afterDelete(boolean success) {
|
||||||
|
if (!success)
|
||||||
|
return success;
|
||||||
|
log.fine("afterDelete");
|
||||||
|
getParent();
|
||||||
|
m_parent.validatePaySchedule();
|
||||||
|
m_parent.saveEx();
|
||||||
|
return success;
|
||||||
|
}
|
||||||
|
|
||||||
} // MInvoicePaySchedule
|
} // MInvoicePaySchedule
|
||||||
|
|
|
@ -366,7 +366,7 @@ public class MMatchInv extends X_M_MatchInv
|
||||||
*/
|
*/
|
||||||
public boolean reverse(Timestamp reversalDate)
|
public boolean reverse(Timestamp reversalDate)
|
||||||
{
|
{
|
||||||
if (this.isPosted() && this.getReversal_ID() == 0)
|
if (this.isProcessed() && this.getReversal_ID() == 0)
|
||||||
{
|
{
|
||||||
MMatchInv reversal = new MMatchInv (getCtx(), 0, get_TrxName());
|
MMatchInv reversal = new MMatchInv (getCtx(), 0, get_TrxName());
|
||||||
PO.copyValues(this, reversal);
|
PO.copyValues(this, reversal);
|
||||||
|
|
|
@ -40,7 +40,7 @@ public class MOrderPaySchedule extends X_C_OrderPaySchedule
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
private static final long serialVersionUID = -5506706349428999742L;
|
private static final long serialVersionUID = 2158181283878369676L;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get Payment Schedule of the Order
|
* Get Payment Schedule of the Order
|
||||||
|
@ -229,7 +229,7 @@ public class MOrderPaySchedule extends X_C_OrderPaySchedule
|
||||||
{
|
{
|
||||||
if (!success)
|
if (!success)
|
||||||
return success;
|
return success;
|
||||||
if (is_ValueChanged("DueAmt"))
|
if (is_ValueChanged("DueAmt") || is_ValueChanged("IsActive"))
|
||||||
{
|
{
|
||||||
log.fine("afterSave");
|
log.fine("afterSave");
|
||||||
getParent();
|
getParent();
|
||||||
|
@ -239,5 +239,15 @@ public class MOrderPaySchedule extends X_C_OrderPaySchedule
|
||||||
return success;
|
return success;
|
||||||
} // afterSave
|
} // afterSave
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected boolean afterDelete(boolean success) {
|
||||||
|
if (!success)
|
||||||
|
return success;
|
||||||
|
log.fine("afterDelete");
|
||||||
|
getParent();
|
||||||
|
m_parent.validatePaySchedule();
|
||||||
|
m_parent.saveEx();
|
||||||
|
return success;
|
||||||
|
}
|
||||||
|
|
||||||
} // MOrderPaySchedule
|
} // MOrderPaySchedule
|
||||||
|
|
|
@ -391,7 +391,7 @@ public class ImportInventoryMove extends SvrProcess
|
||||||
*/
|
*/
|
||||||
private int getID(String tableName, String whereClause, Object[] values)
|
private int getID(String tableName, String whereClause, Object[] values)
|
||||||
{
|
{
|
||||||
return new Query(getCtx(),tableName,whereClause,get_TrxName())
|
return new Query(getCtx(),tableName,whereClause,get_TrxName()).setClient_ID()
|
||||||
.setParameters(values).firstId();
|
.setParameters(values).firstId();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -426,7 +426,7 @@ public class GLJournalGenerate extends SvrProcess
|
||||||
j.setDateDoc(p_DateAcct);
|
j.setDateDoc(p_DateAcct);
|
||||||
j.setDescription(journalGenerator.getDescription());
|
j.setDescription(journalGenerator.getDescription());
|
||||||
j.setDocumentNo(p_DocumentNo);
|
j.setDocumentNo(p_DocumentNo);
|
||||||
j.setGL_Category_ID(journalGenerator.getGL_Category_ID());
|
j.set_ValueOfColumn("GL_Category_ID", journalGenerator.getGL_Category_ID()); // can be zero
|
||||||
j.setPostingType(journalGenerator.getPostingType());
|
j.setPostingType(journalGenerator.getPostingType());
|
||||||
j.setC_AcctSchema_ID(as.getC_AcctSchema_ID());
|
j.setC_AcctSchema_ID(as.getC_AcctSchema_ID());
|
||||||
j.setC_ConversionType_ID(MConversionType.getDefault(as.getAD_Client_ID()));
|
j.setC_ConversionType_ID(MConversionType.getDefault(as.getAD_Client_ID()));
|
||||||
|
|
|
@ -9,6 +9,10 @@
|
||||||
<param-name>ServerRoot</param-name>
|
<param-name>ServerRoot</param-name>
|
||||||
<param-value>1</param-value>
|
<param-value>1</param-value>
|
||||||
</context-param>
|
</context-param>
|
||||||
|
<context-param>
|
||||||
|
<param-name>org.eclipse.jetty.servlet.SessionCookie</param-name>
|
||||||
|
<param-value>ROOT_SESSIONID</param-value>
|
||||||
|
</context-param>
|
||||||
<filter>
|
<filter>
|
||||||
<display-name>iDempiere Monitor Filter</display-name>
|
<display-name>iDempiere Monitor Filter</display-name>
|
||||||
<filter-name>idempiereMonitorFilter</filter-name>
|
<filter-name>idempiereMonitorFilter</filter-name>
|
||||||
|
|
|
@ -39,6 +39,7 @@ import javax.servlet.http.HttpServlet;
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
|
||||||
|
import org.adempiere.util.LogAuthFailure;
|
||||||
import org.apache.ecs.HtmlColor;
|
import org.apache.ecs.HtmlColor;
|
||||||
import org.apache.ecs.xhtml.a;
|
import org.apache.ecs.xhtml.a;
|
||||||
import org.apache.ecs.xhtml.b;
|
import org.apache.ecs.xhtml.b;
|
||||||
|
@ -382,6 +383,8 @@ public class AdempiereMonitor extends HttpServlet
|
||||||
String fileName = logs[i].getAbsolutePath();
|
String fileName = logs[i].getAbsolutePath();
|
||||||
if (fileName.equals(fileHandler.getFileName()))
|
if (fileName.equals(fileHandler.getFileName()))
|
||||||
continue;
|
continue;
|
||||||
|
if (fileName.endsWith(LogAuthFailure.authFailureFilename)) // Do not delete login failure
|
||||||
|
continue;
|
||||||
if (logs[i].delete())
|
if (logs[i].delete())
|
||||||
log.warning("Deleted: " + fileName);
|
log.warning("Deleted: " + fileName);
|
||||||
else
|
else
|
||||||
|
|
|
@ -302,7 +302,8 @@ public class WCreateFromShipmentUI extends CreateFromShipment implements EventLi
|
||||||
//sameWarehouseCb
|
//sameWarehouseCb
|
||||||
else if (e.getTarget().equals(sameWarehouseCb))
|
else if (e.getTarget().equals(sameWarehouseCb))
|
||||||
{
|
{
|
||||||
initBPOrderDetails(((Integer)bPartnerField.getValue()).intValue(), false);
|
int bpId = bPartnerField.getValue() == null?0:((Integer)bPartnerField.getValue()).intValue();
|
||||||
|
initBPOrderDetails(bpId, false);
|
||||||
}
|
}
|
||||||
else if (e.getTarget().equals(upcField.getComponent()))
|
else if (e.getTarget().equals(upcField.getComponent()))
|
||||||
{
|
{
|
||||||
|
|
|
@ -1211,7 +1211,11 @@ public final class WAccountDialog extends Window
|
||||||
*/
|
*/
|
||||||
public void valueChange(ValueChangeEvent evt) {
|
public void valueChange(ValueChangeEvent evt) {
|
||||||
Object newValue = evt.getNewValue();
|
Object newValue = evt.getNewValue();
|
||||||
if (newValue instanceof Integer)
|
if (newValue instanceof Integer) {
|
||||||
Env.setContext(Env.getCtx(), m_WindowNo, "Account_ID", ((Integer)newValue).intValue());
|
Env.setContext(Env.getCtx(), m_WindowNo, "Account_ID", ((Integer)newValue).intValue());
|
||||||
|
if (f_SubAcct_ID != null) {
|
||||||
|
f_SubAcct_ID.dynamicDisplay();
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} // WAccountDialog
|
} // WAccountDialog
|
||||||
|
|
|
@ -4,6 +4,10 @@
|
||||||
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
|
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
|
||||||
version="3.1">
|
version="3.1">
|
||||||
<display-name>iDempiere Web Client</display-name>
|
<display-name>iDempiere Web Client</display-name>
|
||||||
|
<context-param>
|
||||||
|
<param-name>org.eclipse.jetty.servlet.SessionCookie</param-name>
|
||||||
|
<param-value>WEBUI_SESSIONID</param-value>
|
||||||
|
</context-param>
|
||||||
<servlet>
|
<servlet>
|
||||||
<servlet-name>AtmosphereServlet</servlet-name>
|
<servlet-name>AtmosphereServlet</servlet-name>
|
||||||
<servlet-class>org.atmosphere.cpr.AtmosphereServlet</servlet-class>
|
<servlet-class>org.atmosphere.cpr.AtmosphereServlet</servlet-class>
|
||||||
|
|
Loading…
Reference in New Issue