diff --git a/org.adempiere.base.process/src/org/compiere/process/ImportProduct.java b/org.adempiere.base.process/src/org/compiere/process/ImportProduct.java index 490a174de3..2408193d8d 100644 --- a/org.adempiere.base.process/src/org/compiere/process/ImportProduct.java +++ b/org.adempiere.base.process/src/org/compiere/process/ImportProduct.java @@ -23,8 +23,11 @@ import java.sql.SQLException; import java.sql.Timestamp; import java.util.logging.Level; +import org.adempiere.model.ImportValidator; +import org.adempiere.process.ImportProcess; import org.compiere.model.MProduct; import org.compiere.model.MProductPrice; +import org.compiere.model.ModelValidationEngine; import org.compiere.model.X_I_Product; import org.compiere.util.DB; @@ -33,8 +36,12 @@ import org.compiere.util.DB; * * @author Jorg Janke * @version $Id: ImportProduct.java,v 1.3 2006/07/30 00:51:01 jjanke Exp $ + * + * @author Carlos Ruiz, globalqss + *
  • FR [ 2788278 ] Data Import Validator - migrate core processes + * https://sourceforge.net/tracker/?func=detail&aid=2788278&group_id=176962&atid=879335 */ -public class ImportProduct extends SvrProcess +public class ImportProduct extends SvrProcess implements ImportProcess { /** Client to be imported to */ private int m_AD_Client_ID = 0; @@ -78,7 +85,7 @@ public class ImportProduct extends SvrProcess { StringBuffer sql = null; int no = 0; - String clientCheck = " AND AD_Client_ID=" + m_AD_Client_ID; + String clientCheck = getWhereClause(); // **** Prepare **** @@ -107,6 +114,8 @@ public class ImportProduct extends SvrProcess no = DB.executeUpdate(sql.toString(), get_TrxName()); log.info("Reset=" + no); + ModelValidationEngine.get().fireImportValidate(this, null, null, ImportValidator.TIMING_BEFORE_VALIDATE); + // Set Optional BPartner sql = new StringBuffer ("UPDATE I_Product i " + "SET C_BPartner_ID=(SELECT C_BPartner_ID FROM C_BPartner p" @@ -378,6 +387,8 @@ public class ImportProduct extends SvrProcess } log.fine("C_TaxCategory_ID=" + C_TaxCategory_ID); + ModelValidationEngine.get().fireImportValidate(this, null, null, ImportValidator.TIMING_AFTER_VALIDATE); + commitEx(); // ------------------------------------------------------------------- @@ -484,6 +495,7 @@ public class ImportProduct extends SvrProcess { MProduct product = new MProduct(imp); product.setC_TaxCategory_ID(C_TaxCategory_ID); + ModelValidationEngine.get().fireImportValidate(this, imp, product, ImportValidator.TIMING_AFTER_IMPORT); if (product.save()) { M_Product_ID = product.getM_Product_ID(); @@ -619,6 +631,7 @@ public class ImportProduct extends SvrProcess pp = new MProductPrice (getCtx(), p_M_PriceList_Version_ID, M_Product_ID, get_TrxName()); pp.setPrices(PriceList, PriceStd, PriceLimit); + ModelValidationEngine.get().fireImportValidate(this, imp, pp, ImportValidator.TIMING_AFTER_IMPORT); pp.save(); } } @@ -658,4 +671,16 @@ public class ImportProduct extends SvrProcess return ""; } // doIt + + @Override + public String getImportTableName() { + return X_I_Product.Table_Name; + } + + + @Override + public String getWhereClause() { + return " AND AD_Client_ID=" + m_AD_Client_ID; + } + } // ImportProduct