/** * After Save * @param newRecord new * @param success success * @return success */ protected override bool AfterSave(bool newRecord, bool success) { PO project = null; int _client_ID = 0; StringBuilder _sql = new StringBuilder(); //_sql.Append("Select count(*) from ad_table where tablename like 'FRPT_Project_Acct'"); //_sql.Append("SELECT count(*) FROM all_objects WHERE object_type IN ('TABLE') AND (object_name) = UPPER('FRPT_Project_Acct') AND OWNER LIKE '" + DB.GetSchema() + "'"); _sql.Append(DBFunctionCollection.CheckTableExistence(DB.GetSchema(), "FRPT_Project_Acct")); int count = Util.GetValueOfInt(DB.ExecuteScalar(_sql.ToString())); if (count > 0) { _sql.Clear(); _sql.Append("Select L.Value From Ad_Ref_List L inner join AD_Reference r on R.AD_REFERENCE_ID=L.AD_REFERENCE_ID where r.name='FRPT_RelatedTo' and l.name='Project'"); var relatedtoProject = Convert.ToString(DB.ExecuteScalar(_sql.ToString())); _client_ID = GetAD_Client_ID(); _sql.Clear(); _sql.Append("select C_AcctSchema_ID from C_AcctSchema where AD_CLIENT_ID=" + _client_ID); DataSet ds3 = new DataSet(); ds3 = DB.ExecuteDataset(_sql.ToString(), null); if (ds3 != null && ds3.Tables[0].Rows.Count > 0) { for (int k = 0; k < ds3.Tables[0].Rows.Count; k++) { int _AcctSchema_ID = Util.GetValueOfInt(ds3.Tables[0].Rows[k]["C_AcctSchema_ID"]); _sql.Clear(); _sql.Append("Select Frpt_Acctdefault_Id,C_Validcombination_Id,Frpt_Relatedto From Frpt_Acctschema_Default Where ISACTIVE='Y' AND AD_CLIENT_ID=" + _client_ID + "AND C_Acctschema_Id=" + _AcctSchema_ID); DataSet ds = DB.ExecuteDataset(_sql.ToString(), null); if (ds != null && ds.Tables[0].Rows.Count > 0) { for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { string _relatedTo = ds.Tables[0].Rows[i]["Frpt_Relatedto"].ToString(); if (_relatedTo != "" && (_relatedTo == relatedtoProject)) { _sql.Clear(); _sql.Append("Select COUNT(*) From C_Project Bp Left Join FRPT_Project_Acct ca On Bp.C_Project_ID=ca.C_Project_ID And ca.Frpt_Acctdefault_Id=" + ds.Tables[0].Rows[i]["FRPT_AcctDefault_ID"] + " WHERE Bp.IsActive='Y' AND Bp.AD_Client_ID=" + _client_ID + " AND ca.C_Validcombination_Id = " + Util.GetValueOfInt(ds.Tables[0].Rows[i]["C_Validcombination_Id"]) + " AND Bp.C_Project_ID = " + GetC_Project_ID()); int recordFound = Convert.ToInt32(DB.ExecuteScalar(_sql.ToString(), null, Get_Trx())); if (recordFound == 0) { project = MTable.GetPO(GetCtx(), "FRPT_Project_Acct", 0, null); project.Set_ValueNoCheck("AD_Org_ID", 0); project.Set_ValueNoCheck("C_Project_ID", Util.GetValueOfInt(GetC_Project_ID())); project.Set_ValueNoCheck("FRPT_AcctDefault_ID", Util.GetValueOfInt(ds.Tables[0].Rows[i]["FRPT_AcctDefault_ID"])); project.Set_ValueNoCheck("C_ValidCombination_ID", Util.GetValueOfInt(ds.Tables[0].Rows[i]["C_Validcombination_Id"])); project.Set_ValueNoCheck("C_AcctSchema_ID", _AcctSchema_ID); if (!project.Save()) { } } } } } } } } else if (newRecord & success && (String.IsNullOrEmpty(GetCtx().GetContext("#DEFAULT_ACCOUNTING_APPLICABLE")) || Util.GetValueOfString(GetCtx().GetContext("#DEFAULT_ACCOUNTING_APPLICABLE")) == "Y")) { bool sucs = Insert_Accounting("C_Project_Acct", "C_AcctSchema_Default", null); //Karan. work done to show message if data not saved in accounting tab. but will save data in current tab. // Before this, data was being saved but giving message "record not saved". if (!sucs) { log.SaveWarning("AcctNotSaved", ""); } } // Value/Name change MProject prjph = null; if (success && !newRecord && (Is_ValueChanged("Value") || Is_ValueChanged("Name"))) { MAccount.UpdateValueDescription(GetCtx(), "C_Project_ID=" + GetC_Project_ID(), Get_TrxName()); } if (GetC_Campaign_ID() != 0) { //Used transaction because total was not updating on header MCampaign cam = new MCampaign(GetCtx(), GetC_Campaign_ID(), Get_TrxName()); decimal plnAmt = Util.GetValueOfDecimal(DB.ExecuteScalar("SELECT COALESCE(SUM(pl.PlannedAmt),0) FROM C_Project pl WHERE pl.IsActive = 'Y' AND pl.C_Campaign_ID = " + GetC_Campaign_ID(), null, Get_TrxName())); cam.SetCosts(plnAmt); cam.Save(); } else { //Used transaction because total was not updating on header prjph = new MProject(GetCtx(), GetC_Project_ID(), Get_TrxName()); if (!prjph.IsOpportunity()) { //Used transaction because total was not updating on header decimal plnAmt = Util.GetValueOfDecimal(DB.ExecuteScalar("SELECT COALESCE(SUM(PlannedAmt),0) FROM C_ProjectPhase WHERE IsActive= 'Y' AND C_Project_ID= " + GetC_Project_ID(), null, Get_TrxName())); DB.ExecuteQuery("UPDATE C_Project SET PlannedAmt=" + plnAmt + " WHERE C_Project_ID=" + GetC_Project_ID(), null, Get_TrxName()); } } return(success); }
/** * After Save * @param newRecord new record * @param success success * @return success */ protected override Boolean AfterSave(Boolean newRecord, Boolean success) { int _client_ID = 0; StringBuilder _sql = new StringBuilder(); //_sql.Append("Select count(*) from ad_table where tablename like 'FRPT_BP_Group_Acct'"); //_sql.Append("SELECT count(*) FROM all_objects WHERE object_type IN ('TABLE') AND (object_name) = UPPER('FRPT_BP_Group_Acct') AND OWNER LIKE '" + DB.GetSchema() + "'"); _sql.Append(DBFunctionCollection.CheckTableExistence(DB.GetSchema(), "FRPT_BP_Group_Acct")); int count = Util.GetValueOfInt(DB.ExecuteScalar(_sql.ToString())); if (count > 0) { _sql.Clear(); _sql.Append("SELECT L.VALUE FROM AD_REF_LIST L inner join AD_Reference r on R.AD_REFERENCE_ID=L.AD_REFERENCE_ID where r.name='FRPT_RelatedTo' and l.name='Customer'"); var relatedtoCustomer = Convert.ToString(DB.ExecuteScalar(_sql.ToString())); _sql.Clear(); _sql.Append("Select L.Value From Ad_Ref_List L inner join AD_Reference r on R.AD_REFERENCE_ID=L.AD_REFERENCE_ID where r.name='FRPT_RelatedTo' and l.name='Vendor'"); var relatedtoVendor = Convert.ToString(DB.ExecuteScalar(_sql.ToString())); _sql.Clear(); _sql.Append("Select L.Value From Ad_Ref_List L inner join AD_Reference r on R.AD_REFERENCE_ID=L.AD_REFERENCE_ID where r.name='FRPT_RelatedTo' and l.name='Employee'"); var relatedtoEmployee = Convert.ToString(DB.ExecuteScalar(_sql.ToString())); PO gpact = null; _client_ID = GetAD_Client_ID(); _sql.Clear(); _sql.Append("select C_AcctSchema_ID from C_AcctSchema where AD_CLIENT_ID=" + _client_ID); DataSet ds3 = new DataSet(); ds3 = DB.ExecuteDataset(_sql.ToString(), null); if (ds3 != null && ds3.Tables[0].Rows.Count > 0) { for (int k = 0; k < ds3.Tables[0].Rows.Count; k++) { int _AcctSchema_ID = Util.GetValueOfInt(ds3.Tables[0].Rows[k]["C_AcctSchema_ID"]); _sql.Clear(); _sql.Append("Select Frpt_Acctdefault_Id,C_Validcombination_Id,Frpt_Relatedto From Frpt_Acctschema_Default Where ISACTIVE='Y' AND AD_CLIENT_ID=" + _client_ID + "AND C_Acctschema_Id=" + _AcctSchema_ID); DataSet ds = new DataSet(); ds = DB.ExecuteDataset(_sql.ToString(), null); if (ds != null && ds.Tables[0].Rows.Count > 0) { for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { //DataSet ds2 = new DataSet(); string _relatedTo = ds.Tables[0].Rows[i]["Frpt_Relatedto"].ToString(); if (_relatedTo != "") { if (_relatedTo == relatedtoCustomer || _relatedTo == relatedtoEmployee || _relatedTo == relatedtoVendor) { _sql.Clear(); //_sql.Append("Select Bp.C_BP_Group_ID,ca.Frpt_Acctdefault_Id From C_BP_Group Bp Left Join FRPT_BP_Group_Acct ca On Bp.C_BP_Group_ID=ca.C_BP_Group_ID And ca.Frpt_Acctdefault_Id=" + ds.Tables[0].Rows[i]["FRPT_AcctDefault_ID"] + " WHERE Bp.IsActive='Y' AND Bp.AD_Client_ID=" + _client_ID); _sql.Append("Select COUNT(*) From C_BP_Group Bp Left Join FRPT_BP_Group_Acct ca On Bp.C_BP_Group_ID=ca.C_BP_Group_ID And ca.Frpt_Acctdefault_Id=" + ds.Tables[0].Rows[i]["FRPT_AcctDefault_ID"] + " WHERE Bp.IsActive='Y' AND Bp.AD_Client_ID=" + _client_ID + " AND ca.C_Validcombination_Id = " + Util.GetValueOfInt(ds.Tables[0].Rows[i]["C_Validcombination_Id"]) + " AND Bp.C_BP_Group_ID = " + GetC_BP_Group_ID()); int recordFound = Convert.ToInt32(DB.ExecuteScalar(_sql.ToString(), null, Get_Trx())); // ds2 = DB.ExecuteDataset(_sql.ToString(), null); //if (ds2 != null && ds2.Tables[0].Rows.Count > 0) //{ // for (int j = 0; j < ds2.Tables[0].Rows.Count; j++) // { // int value = Util.GetValueOfInt(ds2.Tables[0].Rows[j]["Frpt_Acctdefault_Id"]); // if (value == 0) // { //gpact = new X_FRPT_BP_Group_Acct(GetCtx(), 0, null); if (recordFound == 0) { gpact = MTable.GetPO(GetCtx(), "FRPT_BP_Group_Acct", 0, null); //gpact.Set_ValueNoCheck("C_BP_Group_ID", Util.GetValueOfInt(ds2.Tables[0].Rows[j]["C_BP_Group_ID"])); gpact.Set_ValueNoCheck("C_BP_Group_ID", Util.GetValueOfInt(GetC_BP_Group_ID())); gpact.Set_ValueNoCheck("AD_Org_ID", 0); gpact.Set_ValueNoCheck("FRPT_AcctDefault_ID", Util.GetValueOfInt(ds.Tables[0].Rows[i]["FRPT_AcctDefault_ID"])); gpact.Set_ValueNoCheck("C_ValidCombination_ID", Util.GetValueOfInt(ds.Tables[0].Rows[i]["C_Validcombination_Id"])); gpact.Set_ValueNoCheck("C_AcctSchema_ID", _AcctSchema_ID); if (!gpact.Save()) { } } //} //} //} } } } } } } } else { object table = DB.ExecuteScalar("SELECT count(*) from AD_Table WHERE TableName='C_BP_Group_Acct'"); if (table == null || table == DBNull.Value || table == "" || Convert.ToInt16(table) == 0) { return(success); } if (newRecord & success && (String.IsNullOrEmpty(GetCtx().GetContext("#DEFAULT_ACCOUNTING_APPLICABLE")) || Util.GetValueOfString(GetCtx().GetContext("#DEFAULT_ACCOUNTING_APPLICABLE")) == "Y")) { success = Insert_Accounting("C_BP_Group_Acct", "C_AcctSchema_Default", null); //Karan. work done to show message if data not saved in accounting tab. but will save data in current tab. // Before this, data was being saved but giving message "record not saved". if (!success) { log.SaveWarning("AcctNotSaved", ""); return(true); } } } return(success); }
/** * After Save * @param newRecord new * @param success success * @return success */ protected override bool AfterSave(bool newRecord, bool success) { if (!success) return success; StringBuilder _sql = new StringBuilder(""); //_sql.Append("Select count(*) from ad_table where tablename like 'FRPT_Product_Category_Acct'"); //_sql.Append("SELECT count(*) FROM all_objects WHERE object_type IN ('TABLE') AND (object_name) = UPPER('FRPT_Product_Category_Acct') AND OWNER LIKE '" + DB.GetSchema() + "'"); _sql.Append(DBFunctionCollection.CheckTableExistence(DB.GetSchema(), "FRPT_Product_Category_Acct")); int count = Util.GetValueOfInt(DB.ExecuteScalar(_sql.ToString())); if (count > 0) { PO obj = null; //MFRPTProductAcct obj = null; int _MProduct_ID = GetM_Product_ID(); int _PCategory_ID = GetM_Product_Category_ID(); string sql = "SELECT L.VALUE FROM AD_REF_LIST L inner join AD_Reference r on R.AD_REFERENCE_ID=L.AD_REFERENCE_ID where r.name='FRPT_RelatedTo' and l.name='Product'"; //"select VALUE from AD_Ref_List where name='Product'"; string _RelatedToProduct = Convert.ToString(DB.ExecuteScalar(sql)); //string _RelatedToProduct = X_FRPT_AcctDefault.FRPT_RELATEDTO_Product.ToString(); _sql.Clear(); _sql.Append("Select Count(*) From FRPT_Product_Acct where M_Product_ID=" + _MProduct_ID + " AND IsActive = 'Y' AND AD_Client_ID = " + GetAD_Client_ID()); int value = Util.GetValueOfInt(DB.ExecuteScalar(_sql.ToString())); if (value < 1) { _sql.Clear(); _sql.Append("Select PCA.c_acctschema_id, PCA.c_validcombination_id, PCA.frpt_acctdefault_id From FRPT_product_category_acct PCA inner join frpt_acctdefault ACC ON acc.frpt_acctdefault_id= PCA.frpt_acctdefault_id where PCA.m_product_category_id=" + _PCategory_ID + " and acc.frpt_relatedto='" + _RelatedToProduct + "' AND PCA.IsActive = 'Y' AND PCA.AD_Client_ID = " + GetAD_Client_ID()); //_sql.Append("Select C_AcctSchema_ID, C_ValidCombination_ID, FRPT_AcctDefault_ID from FRPT_product_category_acct where m_product_category_id =" + _PCategory_ID); DataSet ds = DB.ExecuteDataset(_sql.ToString()); if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0) { for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { //obj = new MFRPTProductAcct(GetCtx(), 0, null); obj = MTable.GetPO(GetCtx(), "FRPT_Product_Acct", 0, null); obj.Set_ValueNoCheck("AD_Org_ID", 0); obj.Set_ValueNoCheck("M_Product_ID", _MProduct_ID); obj.Set_ValueNoCheck("C_AcctSchema_ID", Util.GetValueOfInt(ds.Tables[0].Rows[i]["C_AcctSchema_ID"])); obj.Set_ValueNoCheck("C_ValidCombination_ID", Util.GetValueOfInt(ds.Tables[0].Rows[i]["C_ValidCombination_ID"])); obj.Set_ValueNoCheck("FRPT_AcctDefault_ID", Util.GetValueOfInt(ds.Tables[0].Rows[i]["FRPT_AcctDefault_ID"])); if (!obj.Save()) { } } } } // Change by mohit amortization process //int _CountVA038 = Util.GetValueOfInt(DB.ExecuteScalar("SELECT COUNT(AD_MODULEINFO_ID) FROM AD_MODULEINFO WHERE PREFIX='VA038_' AND IsActive = 'Y'")); //if (_CountVA038 > 0) //{ // if (GetProductType() == "E" || GetProductType() == "S") // { // if (Util.GetValueOfInt(Get_Value("VA038_AmortizationTemplate_ID")) > 0) // { // DataSet _dsAcct = DB.ExecuteDataset("SELECT C_AcctSchema_ID, FRPT_AcctDefault_ID, C_VALIDCOMBINATION_ID, SEQNO FROM VA038_Amortization_Acct " // + "WHERE IsActive='Y' AND VA038_AmortizationTemplate_ID=" + Util.GetValueOfInt(Get_Value("VA038_AmortizationTemplate_ID"))); // if (_dsAcct != null && _dsAcct.Tables[0].Rows.Count > 0) // { // for (int j = 0; j < _dsAcct.Tables[0].Rows.Count; j++) // { // obj = MTable.GetPO(GetCtx(), "FRPT_Product_Acct", 0, null); // obj.Set_ValueNoCheck("AD_Org_ID", 0); // obj.Set_ValueNoCheck("M_Product_ID", _MProduct_ID); // obj.Set_ValueNoCheck("C_AcctSchema_ID", Util.GetValueOfInt(_dsAcct.Tables[0].Rows[j]["C_AcctSchema_ID"])); // obj.Set_ValueNoCheck("C_ValidCombination_ID", Util.GetValueOfInt(_dsAcct.Tables[0].Rows[j]["C_ValidCombination_ID"])); // obj.Set_ValueNoCheck("FRPT_AcctDefault_ID", Util.GetValueOfInt(_dsAcct.Tables[0].Rows[j]["FRPT_AcctDefault_ID"])); // if (!obj.Save()) // { } // } // } // } // } //} // End amortization process } else { // By Amit //if (!success) // return success; // Value/Name change in Account if (!newRecord && (Is_ValueChanged("Value") || Is_ValueChanged("Name"))) MAccount.UpdateValueDescription(GetCtx(), "M_Product_ID=" + GetM_Product_ID(), Get_TrxName()); // Name/Description Change in Asset MAsset.setValueNameDescription if (!newRecord && (Is_ValueChanged("Name") || Is_ValueChanged("Description"))) { String sql = " UPDATE A_Asset a SET Name=(SELECT SUBSTR(bp.Name || ' - ' || p.Name,1,60) FROM M_Product p, C_BPartner bp WHERE p.M_Product_ID=a.M_Product_ID AND bp.C_BPartner_ID=a.C_BPartner_ID)," + "Description=(SELECT p.Description FROM M_Product p, C_BPartner bp WHERE p.M_Product_ID=a.M_Product_ID AND bp.C_BPartner_ID=a.C_BPartner_ID)" + "WHERE IsActive='Y' AND M_Product_ID=" + GetM_Product_ID(); int no = 0; try { no = Utility.Util.GetValueOfInt(DataBase.DB.ExecuteQuery(sql, null, Get_TrxName())); } catch { } log.Fine("Asset Description updated #" + no); } // New - Acct, Tree, Old Costing if (newRecord) { if (String.IsNullOrEmpty(GetCtx().GetContext("#DEFAULT_ACCOUNTING_APPLICABLE")) || Util.GetValueOfString(GetCtx().GetContext("#DEFAULT_ACCOUNTING_APPLICABLE")) == "Y") { bool sucs = Insert_Accounting("M_Product_Acct", "M_Product_Category_Acct", "p.M_Product_Category_ID=" + GetM_Product_Category_ID()); //Karan. work done to show message if data not saved in accounting tab. but will save data in current tab. // Before this, data was being saved but giving message "record not saved". if (!sucs) { log.SaveWarning("AcctNotSaved", ""); } } // MAcctSchema[] mass = MAcctSchema.GetClientAcctSchema(GetCtx(), GetAD_Client_ID(), Get_TrxName()); for (int i = 0; i < mass.Length; i++) { // Old MProductCosting pcOld = new MProductCosting(this, mass[i].GetC_AcctSchema_ID()); pcOld.Save(); } } // New Costing // by Amit 22-12-2015 //if (newRecord || Is_ValueChanged("M_Product_Category_ID")) //{ // MCost.Create(this); //} } //22-12-2015 //by Amit for creating records ffor product foe all Costing Element whose costing elemnt type is 'Material' //if (newRecord || Is_ValueChanged("M_Product_Category_ID")) //{ // MCost.CreateRecords(this); //} //20-12-2016 //By Vivek Chauhan saving Nutrition value against product........... object ModuleId = DB.ExecuteScalar("select ad_moduleinfo_id from ad_moduleinfo where prefix='VA019_' and isactive='Y'"); if (ModuleId != null && ModuleId != DBNull.Value) { object objNDBNo = DB.ExecuteScalar("select va019_ndbno from M_Product where m_product_ID=" + GetM_Product_ID() + ""); if (objNDBNo != null && objNDBNo != DBNull.Value) { CallNutritionApi(Convert.ToString(objNDBNo), GetM_Product_ID()); } } return success; }
/// <summary> /// After save logic for asset /// </summary> /// <param name="newRecord"></param> /// <param name="success"></param> /// <returns></returns> protected override bool AfterSave(bool newRecord, bool success) { //Cost Code Commented - As not required on Asset Save //if (newRecord) //{ // UpdateAssetCost(); //} // create default Account StringBuilder _sql = new StringBuilder(""); // check table exist or not //_sql.Append("SELECT count(*) FROM all_objects WHERE object_type IN ('TABLE') AND (object_name) = UPPER('FRPT_Asset_Group_Acct') AND OWNER LIKE '" + DB.GetSchema() + "'"); _sql.Append(DBFunctionCollection.CheckTableExistence(DB.GetSchema(), "FRPT_Asset_Group_Acct")); int count = Util.GetValueOfInt(DB.ExecuteScalar(_sql.ToString())); if (count > 0) { PO obj = null; int assetId = GetA_Asset_ID(); int assetGroupId = GetA_Asset_Group_ID(); // get related to value agaisnt asset = 75 string sql = "SELECT L.VALUE FROM AD_REF_LIST L inner join AD_Reference r on R.AD_REFERENCE_ID=L.AD_REFERENCE_ID where r.name='FRPT_RelatedTo' and l.name='Asset'"; string _RelatedToProduct = Convert.ToString(DB.ExecuteScalar(sql)); _sql.Clear(); _sql.Append("Select Count(*) From FRPT_Asset_Acct where A_Asset_ID=" + assetId + " AND IsActive = 'Y' AND AD_Client_ID = " + GetAD_Client_ID()); int value = Util.GetValueOfInt(DB.ExecuteScalar(_sql.ToString())); if (value < 1) { _sql.Clear(); _sql.Append(@"Select PCA.c_acctschema_id, PCA.c_validcombination_id, PCA.frpt_acctdefault_id " + " From FRPT_Asset_Group_Acct PCA " + " inner join frpt_acctdefault ACC ON acc.frpt_acctdefault_id= PCA.frpt_acctdefault_id " + " where PCA.A_Asset_Group_ID=" + assetGroupId + " and acc.frpt_relatedto='" + _RelatedToProduct + "' AND PCA.IsActive = 'Y' AND PCA.AD_Client_ID = " + GetAD_Client_ID()); DataSet ds = DB.ExecuteDataset(_sql.ToString()); if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0) { for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { obj = MTable.GetPO(GetCtx(), "FRPT_Asset_Acct", 0, null); obj.Set_ValueNoCheck("AD_Org_ID", 0); obj.Set_ValueNoCheck("A_Asset_ID", assetId); obj.Set_ValueNoCheck("C_AcctSchema_ID", Util.GetValueOfInt(ds.Tables[0].Rows[i]["C_AcctSchema_ID"])); obj.Set_ValueNoCheck("C_ValidCombination_ID", Util.GetValueOfInt(ds.Tables[0].Rows[i]["C_ValidCombination_ID"])); obj.Set_ValueNoCheck("FRPT_AcctDefault_ID", Util.GetValueOfInt(ds.Tables[0].Rows[i]["FRPT_AcctDefault_ID"])); if (!obj.Save()) { ValueNamePair pp = VLogger.RetrieveError(); _log.Log(Level.SEVERE, "Could Not create FRPT_Asset_Acct. ERRor Value : " + pp.GetValue() + "ERROR NAME : " + pp.GetName()); } } } } } return(true); }
/// <summary> /// After Save Logic /// </summary> /// <param name="newRecord"></param> /// <param name="success"></param> /// <returns></returns> protected override bool AfterSave(bool newRecord, bool success) { // create default Account StringBuilder _sql = new StringBuilder(); _sql.Append(DBFunctionCollection.CheckTableExistence(DB.GetSchema(), "FRPT_RevenueRecognition_Acct")); int count = Util.GetValueOfInt(DB.ExecuteScalar(_sql.ToString())); if (count > 0) { _sql.Clear(); _sql.Append("Select L.Value From Ad_Ref_List L inner join AD_Reference r on R.AD_REFERENCE_ID=L.AD_REFERENCE_ID where r.name='FRPT_RelatedTo' and l.name='Revenue Recognition'"); var relatedtoProduct = Convert.ToString(DB.ExecuteScalar(_sql.ToString())); PO assetGroupAcct = null; _sql.Clear(); _sql.Append("select C_AcctSchema_ID from C_AcctSchema where IsActive = 'Y' AND AD_CLIENT_ID=" + GetAD_Client_ID()); DataSet ds3 = new DataSet(); ds3 = DB.ExecuteDataset(_sql.ToString(), null); if (ds3 != null && ds3.Tables[0].Rows.Count > 0) { for (int k = 0; k < ds3.Tables[0].Rows.Count; k++) { int _AcctSchema_ID = Util.GetValueOfInt(ds3.Tables[0].Rows[k]["C_AcctSchema_ID"]); _sql.Clear(); _sql.Append("Select Frpt_Acctdefault_Id,C_Validcombination_Id,Frpt_Relatedto From Frpt_Acctschema_Default Where ISACTIVE='Y' AND AD_CLIENT_ID=" + GetAD_Client_ID() + "AND C_Acctschema_Id=" + _AcctSchema_ID); DataSet ds = new DataSet(); ds = DB.ExecuteDataset(_sql.ToString(), null, Get_Trx()); if (ds != null && ds.Tables[0].Rows.Count > 0) { for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { string _relatedTo = ds.Tables[0].Rows[i]["Frpt_Relatedto"].ToString(); if (!_relatedTo.Equals("") && _relatedTo.Equals(relatedtoProduct)) { _sql.Clear(); _sql.Append(@"Select count(*) From C_RevenueRecognition Bp Left Join FRPT_RevenueRecognition_Acct ca On Bp.C_RevenueRecognition_ID=ca.C_RevenueRecognition_ID And ca.Frpt_Acctdefault_Id=" + ds.Tables[0].Rows[i]["FRPT_AcctDefault_ID"] + " WHERE Bp.IsActive='Y' AND Bp.AD_Client_ID=" + GetAD_Client_ID() + " AND ca.C_Validcombination_Id = " + Util.GetValueOfInt(ds.Tables[0].Rows[i]["C_Validcombination_Id"]) + " AND Bp.C_RevenueRecognition_ID = " + GetC_RevenueRecognition_ID()); int recordFound = Convert.ToInt32(DB.ExecuteScalar(_sql.ToString(), null, Get_Trx())); if (recordFound == 0) { assetGroupAcct = MTable.GetPO(GetCtx(), "FRPT_RevenueRecognition_Acct", 0, null); assetGroupAcct.Set_ValueNoCheck("AD_Org_ID", 0); assetGroupAcct.Set_ValueNoCheck("C_RevenueRecognition_ID", Util.GetValueOfInt(GetC_RevenueRecognition_ID())); assetGroupAcct.Set_ValueNoCheck("FRPT_AcctDefault_ID", Util.GetValueOfInt(ds.Tables[0].Rows[i]["FRPT_AcctDefault_ID"])); assetGroupAcct.Set_ValueNoCheck("C_ValidCombination_ID", Util.GetValueOfInt(ds.Tables[0].Rows[i]["C_Validcombination_Id"])); assetGroupAcct.Set_ValueNoCheck("C_AcctSchema_ID", _AcctSchema_ID); if (!assetGroupAcct.Save()) { ValueNamePair pp = VLogger.RetrieveError(); log.Log(Level.SEVERE, "Could Not create FRPT_Asset_Groip_Acct. ERRor Value : " + pp.GetValue() + "ERROR NAME : " + pp.GetName()); } } } } } } } } return(true); }
/** * After Save * @param newRecord new record * @param success success * @return success */ protected override Boolean AfterSave(Boolean newRecord, Boolean success) { if (newRecord & success) { int _client_ID = 0; StringBuilder _sql = new StringBuilder(); //_sql.Append("Select count(*) from ad_table where tablename like 'FRPT_BankAccount_Acct'"); //_sql.Append("SELECT count(*) FROM all_objects WHERE object_type IN ('TABLE') AND (object_name) = UPPER('FRPT_BankAccount_Acct') AND OWNER LIKE '" + DB.GetSchema() + "'"); _sql.Append(DBFunctionCollection.CheckTableExistence(DB.GetSchema(), "FRPT_BankAccount_Acct")); int count = Util.GetValueOfInt(DB.ExecuteScalar(_sql.ToString())); if (count > 0) { string sql = " SELECT L.VALUE FROM AD_REF_LIST L" + " INNER JOIN AD_Reference r ON R.AD_REFERENCE_ID=L.AD_REFERENCE_ID" + " WHERE r.name='FRPT_RelatedTo' AND l.name='BankAccount'"; var relatedto = Convert.ToString(DB.ExecuteScalar(sql)); PO bnkact = null; //X_FRPT_BankAccount_Acct bnkact = null; //MAcctSchema acschma = new MAcctSchema(GetCtx(), 0, null); _client_ID = GetAD_Client_ID(); _sql.Clear(); _sql.Append("select C_AcctSchema_ID from C_AcctSchema where AD_CLIENT_ID=" + _client_ID); DataSet ds3 = new DataSet(); ds3 = DB.ExecuteDataset(_sql.ToString(), null); if (ds3 != null && ds3.Tables[0].Rows.Count > 0) { for (int k = 0; k < ds3.Tables[0].Rows.Count; k++) { int _AcctSchema_ID = Util.GetValueOfInt(ds3.Tables[0].Rows[k]["C_AcctSchema_ID"]); _sql.Clear(); _sql.Append("Select Frpt_Acctdefault_Id,C_Validcombination_Id,Frpt_Relatedto From Frpt_Acctschema_Default Where ISACTIVE='Y' AND AD_CLIENT_ID=" + _client_ID + "AND C_Acctschema_Id=" + _AcctSchema_ID); DataSet ds = new DataSet(); ds = DB.ExecuteDataset(_sql.ToString(), null); if (ds != null && ds.Tables[0].Rows.Count > 0) { for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { //DataSet ds2 = new DataSet(); string _relatedTo = ds.Tables[0].Rows[i]["Frpt_Relatedto"].ToString(); if (_relatedTo != "") { // if (_relatedTo == X_FRPT_AcctSchema_Default.FRPT_RELATEDTO_BankAccount.ToString()) if (_relatedTo == relatedto) { _sql.Clear(); _sql.Append("Select COUNT(*) From C_BankAccount Ba Left Join FRPT_BankAccount_Acct ca On Ba.C_BANKACCOUNT_ID=ca.C_BANKACCOUNT_ID And ca.Frpt_Acctdefault_Id=" + ds.Tables[0].Rows[i]["FRPT_AcctDefault_ID"] + " WHERE Ba.IsActive='Y' AND Ba.AD_Client_ID=" + _client_ID + " AND ca.C_Validcombination_Id = " + Util.GetValueOfInt(ds.Tables[0].Rows[i]["C_Validcombination_Id"]) + " AND Ba.C_BankAccount_ID = " + GetC_BankAccount_ID()); int recordFound = Convert.ToInt32(DB.ExecuteScalar(_sql.ToString(), null, Get_Trx())); //ds2 = DB.ExecuteDataset(_sql.ToString(), null); //if (ds2 != null && ds2.Tables[0].Rows.Count > 0) //{ // for (int j = 0; j < ds2.Tables[0].Rows.Count; j++) // { // int value = Util.GetValueOfInt(ds2.Tables[0].Rows[j]["Frpt_Acctdefault_Id"]); // if (value == 0) // { //bnkact = new X_FRPT_BankAccount_Acct(GetCtx(), 0, null); if (recordFound == 0) { bnkact = MTable.GetPO(GetCtx(), "FRPT_BankAccount_Acct", 0, null); bnkact.Set_ValueNoCheck("C_BankAccount_ID", Util.GetValueOfInt(GetC_BankAccount_ID())); bnkact.Set_ValueNoCheck("AD_Org_ID", 0); bnkact.Set_Value("FRPT_AcctDefault_ID", Util.GetValueOfInt(ds.Tables[0].Rows[i]["FRPT_AcctDefault_ID"])); bnkact.Set_Value("C_ValidCombination_ID", Util.GetValueOfInt(ds.Tables[0].Rows[i]["C_Validcombination_Id"])); bnkact.Set_Value("C_AcctSchema_ID", _AcctSchema_ID); if (!bnkact.Save()) { } } // } // } //} } } } } } } } else if (String.IsNullOrEmpty(GetCtx().GetContext("#DEFAULT_ACCOUNTING_APPLICABLE")) || Util.GetValueOfString(GetCtx().GetContext("#DEFAULT_ACCOUNTING_APPLICABLE")) == "Y") { bool sucs = Insert_Accounting("C_BankAccount_Acct", "C_AcctSchema_Default", null); //Karan. work done to show message if data not saved in accounting tab. but will save data in current tab. // Before this, data was being saved but giving message "record not saved". if (!sucs) { log.SaveWarning("AcctNotSaved", ""); } } } return(success); }