Int64 IACCPrePayableStatementDetailDataAccess.Delete(ACCPrePayableStatementDetailEntity aCCPrePayableStatementDetailEntity, String filterExpression, DatabaseOperationType option, TransactionRequired reqTran) { try { long retValues = -99; switch (reqTran) { case TransactionRequired.No: { retValues = Delete(aCCPrePayableStatementDetailEntity, filterExpression, option); break; } case TransactionRequired.Yes: { retValues = DeleteTran(aCCPrePayableStatementDetailEntity, filterExpression, option); break; } default: { retValues = -99; break; } } return(retValues); } catch (Exception ex) { throw ex; } }
private Int64 DeleteTran(ACCPrePayableStatementDetailEntity aCCPrePayableStatementDetailEntity, String filterExpression, DatabaseOperationType option) { long returnCode = -99; const string SP = "dbo.ACCPrePayableStatementDetail_SET"; Database db = DatabaseFactory.CreateDatabase(); using (DbCommand cmd = db.GetStoredProcCommand(SP)) { AddOptionParameter(cmd, option); AddOutputParameter(cmd, db); AddFilterExpressionParameter(cmd, filterExpression, db); DbConnection connection = db.CreateConnection(); connection.Open(); DbTransaction transaction = connection.BeginTransaction(); try { using (IDataReader reader = db.ExecuteReader(cmd, transaction)) { returnCode = GetReturnCodeFromParameter(cmd); } if (returnCode >= 0) { transaction.Commit(); } else { throw new ArgumentException("Error Code." + returnCode.ToString()); } } catch (Exception ex) { transaction.Rollback(); throw ex; } finally { transaction.Dispose(); connection.Close(); connection = null; } } return(returnCode); }
private Int64 Delete(ACCPrePayableStatementDetailEntity aCCPrePayableStatementDetailEntity, String filterExpression, DatabaseOperationType option) { long returnCode = -99; const string SP = "dbo.ACCPrePayableStatementDetail_SET"; using (DbCommand cmd = Database.GetStoredProcCommand(SP)) { AddOptionParameter(cmd, option); AddOutputParameter(cmd); AddFilterExpressionParameter(cmd, filterExpression); using (IDataReader reader = Database.ExecuteReader(cmd)) { returnCode = GetReturnCodeFromParameter(cmd); switch (returnCode) { case SqlConstants.DB_STATUS_CODE_DATAALREADYEXIST: { throw new ArgumentException("ACCPrePayableStatementDetailEntity already exists. Please specify another ACCPrePayableStatementDetailEntity."); } case SqlConstants.DB_STATUS_CODE_DATAUPDATEDFROMOTHERSESSION: { throw new ArgumentException("ACCPrePayableStatementDetailEntity data already updated from different session."); } case SqlConstants.DB_STATUS_CODE_FAIL_OPERATION: { throw new ArgumentException("ACCPrePayableStatementDetailEntity already exists. Please specify another ACCPrePayableStatementDetailEntity."); } } } } return(returnCode); }
Int64 IACCPrePayableStatementDetailFacade.Delete(ACCPrePayableStatementDetailEntity aCCPrePayableStatementDetailEntity, String filterExpression, DatabaseOperationType option, TransactionRequired reqTran) { return(DataAccessFactory.CreateACCPrePayableStatementDetailDataAccess().Delete(aCCPrePayableStatementDetailEntity, filterExpression, option, reqTran)); }
Int64 IACCPrePayableStatementDetailFacade.Add(ACCPrePayableStatementDetailEntity aCCPrePayableStatementDetailEntity, DatabaseOperationType option, TransactionRequired reqTran) { return(DataAccessFactory.CreateACCPrePayableStatementDetailDataAccess().Add(aCCPrePayableStatementDetailEntity, option, reqTran)); }
private void SaveWOtoACCPrePayableStatementEntity() { if (IsValid) { try { #region AccPayableStatemenet Detail IList <ACCPrePayableStatementDetailByWorkOrderNo_CustomEntity> lstACCPrePayableStatementDetail_CustomEntity = FCCACCPrePayableStatementDetailByWorkOrderNo_Custom.GetFacadeCreate().GetIL(Int64.Parse(ddlWorkOrderID.SelectedValue)); if (lstACCPrePayableStatementDetail_CustomEntity != null && lstACCPrePayableStatementDetail_CustomEntity.Count > 0) { IList <ACCPrePayableStatementDetailEntity> lstACCPrePayableStatementDetail = new List <ACCPrePayableStatementDetailEntity>(); foreach (ACCPrePayableStatementDetailByWorkOrderNo_CustomEntity entACCPrePayableStatementDetail_CustomEntity in lstACCPrePayableStatementDetail_CustomEntity) { ACCPrePayableStatementDetailEntity entACCPrePayableStatementDetail = new ACCPrePayableStatementDetailEntity(); //if (lstACCPrePayableStatementDetail != null && lstACCPrePayableStatementDetail.Count > 0) //{ // ACCPrePayableStatementDetailEntity entTempACCPrePayableStatementDetail = (from s in lstACCPrePayableStatementDetail // where s.BillID == entACCPrePayableStatementDetail_CustomEntity.BillID // // where s.BillID == entACCPrePayableStatementDetail_CustomEntity.BillID && s.WorkOrderID == entACCPrePayableStatementDetail_CustomEntity.WorkOrderID // //&& s.ApprovedBillAmount == entACCPrePayableStatementDetail_CustomEntity.BillAmount && s.RequisitionID != entACCPrePayableStatementDetail_CustomEntity.RequisitionID // select s).FirstOrDefault(); // if (entTempACCPrePayableStatementDetail != null && entTempACCPrePayableStatementDetail.BillID > 0) // { // //Remove Previous Item // lstACCPrePayableStatementDetail.Remove(entTempACCPrePayableStatementDetail); // entTempACCPrePayableStatementDetail.RequisitionNo += "," + entACCPrePayableStatementDetail_CustomEntity.RequisitionNo; // //Add New Edited Item. // lstACCPrePayableStatementDetail.Add(entTempACCPrePayableStatementDetail); // continue; // } //} Decimal workOrderAgreementAmount = 0, paidAmount = 0, tDSAmount = 0, securityMoney = 0, billAmount = 0; entACCPrePayableStatementDetail.PrePayableStatementID = ACCPrePayableStatementID; if (entACCPrePayableStatementDetail_CustomEntity.WorkOrderNo.IsNotNullOrEmpty()) { entACCPrePayableStatementDetail.WorkOrderNo = entACCPrePayableStatementDetail_CustomEntity.WorkOrderNo.Trim(); } else { entACCPrePayableStatementDetail.WorkOrderNo = null; } if (entACCPrePayableStatementDetail_CustomEntity.WOAmount.HasValue) { workOrderAgreementAmount = Decimal.Parse(entACCPrePayableStatementDetail_CustomEntity.WOAmount.ToString()); entACCPrePayableStatementDetail.WorkOrderAmount = workOrderAgreementAmount; } else { entACCPrePayableStatementDetail.WorkOrderAmount = null; } if (entACCPrePayableStatementDetail_CustomEntity.WorkOrderID > 0) { entACCPrePayableStatementDetail.WorkOrderID = Int64.Parse(entACCPrePayableStatementDetail_CustomEntity.WorkOrderID.ToString()); } else { entACCPrePayableStatementDetail.WorkOrderID = null; } if (entACCPrePayableStatementDetail_CustomEntity.StartDate != null) { entACCPrePayableStatementDetail.WorkOrderDate = entACCPrePayableStatementDetail_CustomEntity.StartDate; } else { entACCPrePayableStatementDetail.WorkOrderDate = null; } Decimal payableAgainstWO = (workOrderAgreementAmount - paidAmount - tDSAmount); //Decimal netPayableConsideringBillSecurity = (billAmount - paidAmount - securityMoney - tDSAmount); //need to discuss with Rayan vaiya. To get value from formula or anywhere else??? Decimal netPayableConsideringBillSecurity = payableAgainstWO; entACCPrePayableStatementDetail.PaidAmount = paidAmount; entACCPrePayableStatementDetail.SecurityMoney = securityMoney; entACCPrePayableStatementDetail.TDSAmount = tDSAmount; entACCPrePayableStatementDetail.PayableAgainstWorkOrder = payableAgainstWO; entACCPrePayableStatementDetail.NetPayableConsideringBillAndSecurity = netPayableConsideringBillSecurity; entACCPrePayableStatementDetail.CreateDate = System.DateTime.Now; entACCPrePayableStatementDetail.ApprovedBillAmount = 0; entACCPrePayableStatementDetail.PartyReconcile = false; Int64 requisitionID = 0; Int64 projectID = 0; String projectCode = null; String requisitionNo = null; DateTime requisitionDate = System.DateTime.Now; if (entACCPrePayableStatementDetail_CustomEntity.WorkOrderID > 0) { String fe_WOItemMap = SqlExpressionBuilder.PrepareFilterExpression(PRMWorkOrderItemMapEntity.FLD_NAME_WorkOrderID, entACCPrePayableStatementDetail_CustomEntity.WorkOrderID.ToString(), SQLMatchType.Equal); IList <PRMWorkOrderItemMapEntity> lstWOItemMap = FCCPRMWorkOrderItemMap.GetFacadeCreate().GetIL(null, null, String.Empty, fe_WOItemMap, DatabaseOperationType.LoadWithFilterExpression); if (lstWOItemMap != null && lstWOItemMap.Count > 0) { var distinctTypeIDs = lstWOItemMap.Select(x => x.RequisitionID).Distinct(); foreach (var ent in distinctTypeIDs) { String fe_requisition = SqlExpressionBuilder.PrepareFilterExpression("REQRequisition." + REQRequisitionEntity.FLD_NAME_RequisitionID, ent.ToString(), SQLMatchType.Equal); IList <REQRequisition_DetailedEntity> lstReqRequisition_detailed = FCCREQRequisition_Detailed.GetFacadeCreate().GetIL(10000, 1, String.Empty, fe_requisition); if (lstReqRequisition_detailed != null && lstReqRequisition_detailed.Count > 0) { requisitionID = lstReqRequisition_detailed[0].RequisitionID; projectCode = lstReqRequisition_detailed[0].ProjectCode; requisitionNo += lstReqRequisition_detailed[0].RequisitionNo + " "; requisitionDate = lstReqRequisition_detailed[0].RequisitionDate; projectID = lstReqRequisition_detailed[0].ProjectID; } } } } entACCPrePayableStatementDetail.RequisitionID = requisitionID; entACCPrePayableStatementDetail.RequisitionNo = requisitionNo; entACCPrePayableStatementDetail.RequisitionDate = requisitionDate; entACCPrePayableStatementDetail.ProjectID = projectID; entACCPrePayableStatementDetail.ProjectCode = projectCode; //REQRequisitionEntity reqRequisitionEntity = null; //if (entACCPrePayableStatementDetail_CustomEntity.RequisitionID > 0) //{ // entACCPrePayableStatementDetail.RequisitionID = entACCPrePayableStatementDetail_CustomEntity.RequisitionID; // reqRequisitionEntity = FCCREQRequisition.GetFacadeCreate().GetByID(entACCPrePayableStatementDetail_CustomEntity.RequisitionID); // if (reqRequisitionEntity != null) // { // entACCPrePayableStatementDetail.RequisitionNo = reqRequisitionEntity.RequisitionNo; ; // entACCPrePayableStatementDetail.RequisitionDate = reqRequisitionEntity.RequisitionDate; // entACCPrePayableStatementDetail.ProjectID = reqRequisitionEntity.ProjectID; // Project ID should come from the first requisition Project ID. // } //} //else //{ // entACCPrePayableStatementDetail.RequisitionID = null; //} //if (entACCPrePayableStatementDetail_CustomEntity.RequisitionNo.IsNotNullOrEmpty()) //{ // entACCPrePayableStatementDetail.RequisitionNo = entACCPrePayableStatementDetail_CustomEntity.RequisitionNo; //} //else //{ // entACCPrePayableStatementDetail.RequisitionNo = null; //} //if (entACCPrePayableStatementDetail_CustomEntity.RequisitionDate.HasValue) //{ // entACCPrePayableStatementDetail.RequisitionDate = entACCPrePayableStatementDetail_CustomEntity.RequisitionDate; //} //else //{ // entACCPrePayableStatementDetail.RequisitionDate = null; //} //entACCPrePayableStatementDetail.ProjectID = Int64.Parse(entACCPrePayableStatementDetail_CustomEntity.ProjectID.ToString()); entACCPrePayableStatementDetail.BillID = null; entACCPrePayableStatementDetail.BillDate = null; entACCPrePayableStatementDetail.BillNo = null; entACCPrePayableStatementDetail.VendorCategoryID = MasterDataConstants.MDVendorCategory.VENDOR; entACCPrePayableStatementDetail.FromVendorID = entACCPrePayableStatementDetail_CustomEntity.SupplierID; entACCPrePayableStatementDetail.CreateByEmployeeID = MiscUtil.GetCurrentEmployeeByMemberID(CurrentMember); entACCPrePayableStatementDetail.Ref = null; entACCPrePayableStatementDetail.DueDate = DateTime.Now; entACCPrePayableStatementDetail.PlannedDate = null; entACCPrePayableStatementDetail.Remarks = null; entACCPrePayableStatementDetail.AdditionalRemarks = null; entACCPrePayableStatementDetail.ACCPayablePaymentStatusID = MasterDataConstants.MDACCPayablePaymentStatus.CURRENT; entACCPrePayableStatementDetail.ACCPayableApprovalStatusID = MasterDataConstants.ACCPrePayableStatementApprovalStatus.INITIATED; entACCPrePayableStatementDetail.AccountPaybleStatementDetailCategoryID = MasterDataConstants.MDAccountPaybleStatementDetailCategory.REGULAR; entACCPrePayableStatementDetail.PayableClassificationID = MasterDataConstants.MDPayableClassification.AS; entACCPrePayableStatementDetail.APPanelID = MasterDataConstants.DeafultAPPanel.DEFAULT_AP_PANEL; entACCPrePayableStatementDetail.IsRemoved = false; entACCPrePayableStatementDetail.IsLocked = false; lstACCPrePayableStatementDetail.Add(entACCPrePayableStatementDetail); break; } #region Insert To Payable Detail if (lstACCPrePayableStatementDetail != null && lstACCPrePayableStatementDetail.Count > 0) { foreach (ACCPrePayableStatementDetailEntity ent in lstACCPrePayableStatementDetail) { FCCACCPrePayableStatementDetail.GetFacadeCreate().Add(ent, DatabaseOperationType.Add, TransactionRequired.No); } } #endregion MiscUtil.ShowMessage(lblMessage, "Pre Payable Statement Information has been added successfully.", false); } #endregion _PrePayableStatementID = 0; _ACCPrePayableStatementEntity = new ACCPrePayableStatementEntity(); PrepareInitialView(); } catch (Exception ex) { MiscUtil.ShowMessage(lblMessage, ex.Message, true); } } }
private void SaveBilltoACCPrePayableStatementEntity() { if (IsValid) { try { #region AccPayableStatemenet Detail IList <ACCPrePayableStatementDetailByBill_CustomEntity> lstACCPrePayableStatementDetail_CustomEntity = FCCACCPrePayableStatementDetailByBill_Custom.GetFacadeCreate().GetIL(Int64.Parse(ddlBillID.SelectedValue)); if (lstACCPrePayableStatementDetail_CustomEntity != null && lstACCPrePayableStatementDetail_CustomEntity.Count > 0) { IList <ACCPrePayableStatementDetailEntity> lstACCPrePayableStatementDetail = new List <ACCPrePayableStatementDetailEntity>(); foreach (ACCPrePayableStatementDetailByBill_CustomEntity entACCPrePayableStatementDetail_CustomEntity in lstACCPrePayableStatementDetail_CustomEntity) { ACCPrePayableStatementDetailEntity entACCPrePayableStatementDetail = new ACCPrePayableStatementDetailEntity(); if (lstACCPrePayableStatementDetail != null && lstACCPrePayableStatementDetail.Count > 0) { ACCPrePayableStatementDetailEntity entTempACCPrePayableStatementDetail = (from s in lstACCPrePayableStatementDetail where s.BillID == entACCPrePayableStatementDetail_CustomEntity.BillID && s.WorkOrderID == entACCPrePayableStatementDetail_CustomEntity.WorkOrderID // where s.BillID == entACCPrePayableStatementDetail_CustomEntity.BillID && s.WorkOrderID == entACCPrePayableStatementDetail_CustomEntity.WorkOrderID //&& s.ApprovedBillAmount == entACCPrePayableStatementDetail_CustomEntity.BillAmount && s.RequisitionID != entACCPrePayableStatementDetail_CustomEntity.RequisitionID select s).FirstOrDefault(); if (entTempACCPrePayableStatementDetail != null && entTempACCPrePayableStatementDetail.BillID > 0) { //Remove Previous Item lstACCPrePayableStatementDetail.Remove(entTempACCPrePayableStatementDetail); entTempACCPrePayableStatementDetail.RequisitionNo += "," + entACCPrePayableStatementDetail_CustomEntity.RequisitionNo; //Add New Edited Item. lstACCPrePayableStatementDetail.Add(entTempACCPrePayableStatementDetail); continue; } } Decimal workOrderAgreementAmount = 0, paidAmount = 0, tDSAmount = 0, securityMoney = 0; entACCPrePayableStatementDetail.PrePayableStatementID = ACCPrePayableStatementID; if (entACCPrePayableStatementDetail_CustomEntity.WorkOrderNo.IsNotNullOrEmpty()) { entACCPrePayableStatementDetail.WorkOrderNo = entACCPrePayableStatementDetail_CustomEntity.WorkOrderNo.Trim(); } else { entACCPrePayableStatementDetail.WorkOrderNo = null; } if (entACCPrePayableStatementDetail_CustomEntity.WOAmount.HasValue) { workOrderAgreementAmount = Decimal.Parse(entACCPrePayableStatementDetail_CustomEntity.WOAmount.ToString()); entACCPrePayableStatementDetail.WorkOrderAmount = workOrderAgreementAmount; } else { entACCPrePayableStatementDetail.WorkOrderAmount = null; } if (entACCPrePayableStatementDetail_CustomEntity.WorkOrderID > 0) { entACCPrePayableStatementDetail.WorkOrderID = Int64.Parse(entACCPrePayableStatementDetail_CustomEntity.WorkOrderID.ToString()); } else { entACCPrePayableStatementDetail.WorkOrderID = null; } if (entACCPrePayableStatementDetail_CustomEntity.StartDate.HasValue) { entACCPrePayableStatementDetail.WorkOrderDate = entACCPrePayableStatementDetail_CustomEntity.StartDate; } else { entACCPrePayableStatementDetail.WorkOrderDate = null; } Decimal payableAgainstWO = (workOrderAgreementAmount - paidAmount - tDSAmount); Decimal netPayableConsideringBillSecurity = (payableAgainstWO - paidAmount - securityMoney - tDSAmount); entACCPrePayableStatementDetail.PaidAmount = paidAmount; entACCPrePayableStatementDetail.SecurityMoney = securityMoney; entACCPrePayableStatementDetail.TDSAmount = tDSAmount; entACCPrePayableStatementDetail.PayableAgainstWorkOrder = payableAgainstWO; entACCPrePayableStatementDetail.NetPayableConsideringBillAndSecurity = netPayableConsideringBillSecurity; entACCPrePayableStatementDetail.CreateDate = System.DateTime.Now; if (entACCPrePayableStatementDetail_CustomEntity.BillAmount.HasValue) { entACCPrePayableStatementDetail.ApprovedBillAmount = Decimal.Parse(entACCPrePayableStatementDetail_CustomEntity.BillAmount.ToString()); } else { entACCPrePayableStatementDetail.ApprovedBillAmount = null; } entACCPrePayableStatementDetail.PartyReconcile = false; if (entACCPrePayableStatementDetail_CustomEntity.RequisitionID > 0) { entACCPrePayableStatementDetail.RequisitionID = entACCPrePayableStatementDetail_CustomEntity.RequisitionID; } else { entACCPrePayableStatementDetail.RequisitionID = null; } if (entACCPrePayableStatementDetail_CustomEntity.RequisitionNo.IsNotNullOrEmpty()) { entACCPrePayableStatementDetail.RequisitionNo = entACCPrePayableStatementDetail_CustomEntity.RequisitionNo; } else { entACCPrePayableStatementDetail.RequisitionNo = null; } if (entACCPrePayableStatementDetail_CustomEntity.RequisitionDate.HasValue) { entACCPrePayableStatementDetail.RequisitionDate = entACCPrePayableStatementDetail_CustomEntity.RequisitionDate; } else { entACCPrePayableStatementDetail.RequisitionDate = null; } entACCPrePayableStatementDetail.ProjectID = Int64.Parse(entACCPrePayableStatementDetail_CustomEntity.ProjectID.ToString()); entACCPrePayableStatementDetail.BillID = entACCPrePayableStatementDetail_CustomEntity.BillID; entACCPrePayableStatementDetail.BillDate = entACCPrePayableStatementDetail_CustomEntity.billlDate; entACCPrePayableStatementDetail.BillNo = entACCPrePayableStatementDetail_CustomEntity.BillNo; entACCPrePayableStatementDetail.VendorCategoryID = Int64.Parse(entACCPrePayableStatementDetail_CustomEntity.VendorCategory.ToString()); entACCPrePayableStatementDetail.FromVendorID = Int64.Parse(entACCPrePayableStatementDetail_CustomEntity.Vendor.ToString()); entACCPrePayableStatementDetail.CreateByEmployeeID = MiscUtil.GetCurrentEmployeeByMemberID(CurrentMember); entACCPrePayableStatementDetail.Ref = null; entACCPrePayableStatementDetail.DueDate = DateTime.Now; entACCPrePayableStatementDetail.PlannedDate = null; entACCPrePayableStatementDetail.Remarks = null; entACCPrePayableStatementDetail.AdditionalRemarks = null; entACCPrePayableStatementDetail.ACCPayablePaymentStatusID = MasterDataConstants.MDACCPayablePaymentStatus.CURRENT; entACCPrePayableStatementDetail.ACCPayableApprovalStatusID = MasterDataConstants.ACCPrePayableStatementApprovalStatus.INITIATED; entACCPrePayableStatementDetail.AccountPaybleStatementDetailCategoryID = MasterDataConstants.MDAccountPaybleStatementDetailCategory.REGULAR; entACCPrePayableStatementDetail.PayableClassificationID = MasterDataConstants.MDPayableClassification.AS; entACCPrePayableStatementDetail.APPanelID = MasterDataConstants.DeafultAPPanel.DEFAULT_AP_PANEL; entACCPrePayableStatementDetail.IsRemoved = false; entACCPrePayableStatementDetail.IsLocked = false; lstACCPrePayableStatementDetail.Add(entACCPrePayableStatementDetail); } #region Insert To Payable Detail if (lstACCPrePayableStatementDetail != null && lstACCPrePayableStatementDetail.Count > 0) { foreach (ACCPrePayableStatementDetailEntity ent in lstACCPrePayableStatementDetail) { FCCACCPrePayableStatementDetail.GetFacadeCreate().Add(ent, DatabaseOperationType.Add, TransactionRequired.No); } } #endregion } #endregion _PrePayableStatementID = 0; _ACCPrePayableStatementEntity = new ACCPrePayableStatementEntity(); PrepareInitialView(); MiscUtil.ShowMessage(lblMessage, "Pre Payable Statement Information has been added successfully.", false); } catch (Exception ex) { MiscUtil.ShowMessage(lblMessage, ex.Message, true); } } }
private Int64 Add(ACCPrePayableStatementDetailEntity aCCPrePayableStatementDetailEntity, DatabaseOperationType option) { long returnCode = -99; const string SP = "dbo.ACCPrePayableStatementDetail_SET"; using (DbCommand cmd = Database.GetStoredProcCommand(SP)) { AddOptionParameter(cmd, option); AddOutputParameter(cmd); AddNullPrimaryKeyParameter(cmd, "PrePayableStatementDetailID"); Database.AddInParameter(cmd, "@PrePayableStatementID", DbType.Int64, aCCPrePayableStatementDetailEntity.PrePayableStatementID); Database.AddInParameter(cmd, "@ProjectID", DbType.Int64, aCCPrePayableStatementDetailEntity.ProjectID); Database.AddInParameter(cmd, "@ProjectCode", DbType.String, aCCPrePayableStatementDetailEntity.ProjectCode); Database.AddInParameter(cmd, "@WorkOrderID", DbType.Int64, aCCPrePayableStatementDetailEntity.WorkOrderID); Database.AddInParameter(cmd, "@WorkOrderNo", DbType.String, aCCPrePayableStatementDetailEntity.WorkOrderNo); Database.AddInParameter(cmd, "@WorkOrderAmount", DbType.Decimal, aCCPrePayableStatementDetailEntity.WorkOrderAmount); Database.AddInParameter(cmd, "@WorkOrderDate", DbType.DateTime, aCCPrePayableStatementDetailEntity.WorkOrderDate); Database.AddInParameter(cmd, "@PaidAmount", DbType.Decimal, aCCPrePayableStatementDetailEntity.PaidAmount); Database.AddInParameter(cmd, "@SecurityMoney", DbType.Decimal, aCCPrePayableStatementDetailEntity.SecurityMoney); Database.AddInParameter(cmd, "@TDSAmount", DbType.Decimal, aCCPrePayableStatementDetailEntity.TDSAmount); Database.AddInParameter(cmd, "@PayableAgainstWorkOrder", DbType.Decimal, aCCPrePayableStatementDetailEntity.PayableAgainstWorkOrder); Database.AddInParameter(cmd, "@ApprovedBillAmount", DbType.Decimal, aCCPrePayableStatementDetailEntity.ApprovedBillAmount); Database.AddInParameter(cmd, "@NetPayableConsideringBillAndSecurity", DbType.Decimal, aCCPrePayableStatementDetailEntity.NetPayableConsideringBillAndSecurity); Database.AddInParameter(cmd, "@PartyReconcile", DbType.Boolean, aCCPrePayableStatementDetailEntity.PartyReconcile); Database.AddInParameter(cmd, "@RequisitionID", DbType.Int64, aCCPrePayableStatementDetailEntity.RequisitionID); Database.AddInParameter(cmd, "@RequisitionNo", DbType.String, aCCPrePayableStatementDetailEntity.RequisitionNo); Database.AddInParameter(cmd, "@RequisitionDate", DbType.DateTime, aCCPrePayableStatementDetailEntity.RequisitionDate); Database.AddInParameter(cmd, "@BillID", DbType.Int64, aCCPrePayableStatementDetailEntity.BillID); Database.AddInParameter(cmd, "@BillNo", DbType.String, aCCPrePayableStatementDetailEntity.BillNo); Database.AddInParameter(cmd, "@BillDate", DbType.DateTime, aCCPrePayableStatementDetailEntity.BillDate); Database.AddInParameter(cmd, "@Remarks", DbType.String, aCCPrePayableStatementDetailEntity.Remarks); Database.AddInParameter(cmd, "@Ref", DbType.String, aCCPrePayableStatementDetailEntity.Ref); Database.AddInParameter(cmd, "@VendorCategoryID", DbType.Int64, aCCPrePayableStatementDetailEntity.VendorCategoryID); Database.AddInParameter(cmd, "@FromVendorID", DbType.Int64, aCCPrePayableStatementDetailEntity.FromVendorID); Database.AddInParameter(cmd, "@CreateDate", DbType.DateTime, aCCPrePayableStatementDetailEntity.CreateDate); Database.AddInParameter(cmd, "@DueDate", DbType.DateTime, aCCPrePayableStatementDetailEntity.DueDate); Database.AddInParameter(cmd, "@PlannedDate", DbType.DateTime, aCCPrePayableStatementDetailEntity.PlannedDate); Database.AddInParameter(cmd, "@AdditionalRemarks", DbType.String, aCCPrePayableStatementDetailEntity.AdditionalRemarks); Database.AddInParameter(cmd, "@ACCPayablePaymentStatusID", DbType.Int64, aCCPrePayableStatementDetailEntity.ACCPayablePaymentStatusID); Database.AddInParameter(cmd, "@ACCPayableApprovalStatusID", DbType.Int64, aCCPrePayableStatementDetailEntity.ACCPayableApprovalStatusID); Database.AddInParameter(cmd, "@AccountPaybleStatementDetailCategoryID", DbType.Int64, aCCPrePayableStatementDetailEntity.AccountPaybleStatementDetailCategoryID); Database.AddInParameter(cmd, "@PayableClassificationID", DbType.Int64, aCCPrePayableStatementDetailEntity.PayableClassificationID); Database.AddInParameter(cmd, "@CreateByEmployeeID", DbType.Int64, aCCPrePayableStatementDetailEntity.CreateByEmployeeID); Database.AddInParameter(cmd, "@APPanelID", DbType.Int64, aCCPrePayableStatementDetailEntity.APPanelID); Database.AddInParameter(cmd, "@IPAddress", DbType.String, aCCPrePayableStatementDetailEntity.IPAddress); Database.AddInParameter(cmd, "@IsRemoved", DbType.Boolean, aCCPrePayableStatementDetailEntity.IsRemoved); Database.AddInParameter(cmd, "@IsLocked", DbType.Boolean, aCCPrePayableStatementDetailEntity.IsLocked); using (IDataReader reader = Database.ExecuteReader(cmd)) { returnCode = GetReturnCodeFromParameter(cmd); switch (returnCode) { case SqlConstants.DB_STATUS_CODE_DATAALREADYEXIST: { throw new ArgumentException("ACCPrePayableStatementDetailEntity already exists. Please specify another ACCPrePayableStatementDetailEntity."); } case SqlConstants.DB_STATUS_CODE_DATAUPDATEDFROMOTHERSESSION: { throw new ArgumentException("ACCPrePayableStatementDetailEntity data already updated from different session."); } case SqlConstants.DB_STATUS_CODE_FAIL_OPERATION: { throw new ArgumentException("ACCPrePayableStatementDetailEntity already exists. Please specify another ACCPrePayableStatementDetailEntity."); } } } } return(returnCode); }
private Int64 UpdateTran(ACCPrePayableStatementDetailEntity aCCPrePayableStatementDetailEntity, String filterExpression, DatabaseOperationType option) { long returnCode = -99; const string SP = "dbo.ACCPrePayableStatementDetail_SET"; Database db = DatabaseFactory.CreateDatabase(); using (DbCommand cmd = db.GetStoredProcCommand(SP)) { AddOptionParameter(cmd, option, db); AddOutputParameter(cmd, db); AddFilterExpressionParameter(cmd, filterExpression, db); db.AddInParameter(cmd, "@PrePayableStatementDetailID", DbType.Int64, aCCPrePayableStatementDetailEntity.PrePayableStatementDetailID); db.AddInParameter(cmd, "@PrePayableStatementID", DbType.Int64, aCCPrePayableStatementDetailEntity.PrePayableStatementID); db.AddInParameter(cmd, "@ProjectID", DbType.Int64, aCCPrePayableStatementDetailEntity.ProjectID); db.AddInParameter(cmd, "@ProjectCode", DbType.String, aCCPrePayableStatementDetailEntity.ProjectCode); db.AddInParameter(cmd, "@WorkOrderID", DbType.Int64, aCCPrePayableStatementDetailEntity.WorkOrderID); db.AddInParameter(cmd, "@WorkOrderNo", DbType.String, aCCPrePayableStatementDetailEntity.WorkOrderNo); db.AddInParameter(cmd, "@WorkOrderAmount", DbType.Decimal, aCCPrePayableStatementDetailEntity.WorkOrderAmount); db.AddInParameter(cmd, "@WorkOrderDate", DbType.DateTime, aCCPrePayableStatementDetailEntity.WorkOrderDate); db.AddInParameter(cmd, "@PaidAmount", DbType.Decimal, aCCPrePayableStatementDetailEntity.PaidAmount); db.AddInParameter(cmd, "@SecurityMoney", DbType.Decimal, aCCPrePayableStatementDetailEntity.SecurityMoney); db.AddInParameter(cmd, "@TDSAmount", DbType.Decimal, aCCPrePayableStatementDetailEntity.TDSAmount); db.AddInParameter(cmd, "@PayableAgainstWorkOrder", DbType.Decimal, aCCPrePayableStatementDetailEntity.PayableAgainstWorkOrder); db.AddInParameter(cmd, "@ApprovedBillAmount", DbType.Decimal, aCCPrePayableStatementDetailEntity.ApprovedBillAmount); db.AddInParameter(cmd, "@NetPayableConsideringBillAndSecurity", DbType.Decimal, aCCPrePayableStatementDetailEntity.NetPayableConsideringBillAndSecurity); db.AddInParameter(cmd, "@PartyReconcile", DbType.Boolean, aCCPrePayableStatementDetailEntity.PartyReconcile); db.AddInParameter(cmd, "@RequisitionID", DbType.Int64, aCCPrePayableStatementDetailEntity.RequisitionID); db.AddInParameter(cmd, "@RequisitionNo", DbType.String, aCCPrePayableStatementDetailEntity.RequisitionNo); db.AddInParameter(cmd, "@RequisitionDate", DbType.DateTime, aCCPrePayableStatementDetailEntity.RequisitionDate); db.AddInParameter(cmd, "@BillID", DbType.Int64, aCCPrePayableStatementDetailEntity.BillID); db.AddInParameter(cmd, "@BillNo", DbType.String, aCCPrePayableStatementDetailEntity.BillNo); db.AddInParameter(cmd, "@BillDate", DbType.DateTime, aCCPrePayableStatementDetailEntity.BillDate); db.AddInParameter(cmd, "@Remarks", DbType.String, aCCPrePayableStatementDetailEntity.Remarks); db.AddInParameter(cmd, "@Ref", DbType.String, aCCPrePayableStatementDetailEntity.Ref); db.AddInParameter(cmd, "@VendorCategoryID", DbType.Int64, aCCPrePayableStatementDetailEntity.VendorCategoryID); db.AddInParameter(cmd, "@FromVendorID", DbType.Int64, aCCPrePayableStatementDetailEntity.FromVendorID); db.AddInParameter(cmd, "@CreateDate", DbType.DateTime, aCCPrePayableStatementDetailEntity.CreateDate); db.AddInParameter(cmd, "@DueDate", DbType.DateTime, aCCPrePayableStatementDetailEntity.DueDate); db.AddInParameter(cmd, "@PlannedDate", DbType.DateTime, aCCPrePayableStatementDetailEntity.PlannedDate); db.AddInParameter(cmd, "@AdditionalRemarks", DbType.String, aCCPrePayableStatementDetailEntity.AdditionalRemarks); db.AddInParameter(cmd, "@ACCPayablePaymentStatusID", DbType.Int64, aCCPrePayableStatementDetailEntity.ACCPayablePaymentStatusID); db.AddInParameter(cmd, "@ACCPayableApprovalStatusID", DbType.Int64, aCCPrePayableStatementDetailEntity.ACCPayableApprovalStatusID); db.AddInParameter(cmd, "@AccountPaybleStatementDetailCategoryID", DbType.Int64, aCCPrePayableStatementDetailEntity.AccountPaybleStatementDetailCategoryID); db.AddInParameter(cmd, "@PayableClassificationID", DbType.Int64, aCCPrePayableStatementDetailEntity.PayableClassificationID); db.AddInParameter(cmd, "@CreateByEmployeeID", DbType.Int64, aCCPrePayableStatementDetailEntity.CreateByEmployeeID); db.AddInParameter(cmd, "@APPanelID", DbType.Int64, aCCPrePayableStatementDetailEntity.APPanelID); db.AddInParameter(cmd, "@IPAddress", DbType.String, aCCPrePayableStatementDetailEntity.IPAddress); db.AddInParameter(cmd, "@IsRemoved", DbType.Boolean, aCCPrePayableStatementDetailEntity.IsRemoved); db.AddInParameter(cmd, "@IsLocked", DbType.Boolean, aCCPrePayableStatementDetailEntity.IsLocked); DbConnection connection = db.CreateConnection(); connection.Open(); DbTransaction transaction = connection.BeginTransaction(); try { using (IDataReader reader = db.ExecuteReader(cmd, transaction)) { returnCode = GetReturnCodeFromParameter(cmd); } if (returnCode > 0) { transaction.Commit(); } else { throw new ArgumentException("Error Code." + returnCode.ToString()); } } catch (Exception ex) { transaction.Rollback(); throw ex; } finally { transaction.Dispose(); connection.Close(); connection = null; } } return(returnCode); }
private void SaveACCPrePayableStatementEntity() { if (IsValid) { try { ACCPrePayableStatementEntity aCCPrePayableStatementEntity = BuildACCPrePayableStatementEntity(); Int64 result = -1; if (aCCPrePayableStatementEntity.IsNew) { result = FCCACCPrePayableStatement.GetFacadeCreate().Add(aCCPrePayableStatementEntity, DatabaseOperationType.Add, TransactionRequired.No); } else { String filterExpression = SqlExpressionBuilder.PrepareFilterExpression(ACCPrePayableStatementEntity.FLD_NAME_PrePayableStatementID, aCCPrePayableStatementEntity.PrePayableStatementID.ToString(), SQLMatchType.Equal); result = FCCACCPrePayableStatement.GetFacadeCreate().Update(aCCPrePayableStatementEntity, filterExpression, DatabaseOperationType.Update, TransactionRequired.No); } if (result > 0) { #region AccPayableStatemenet Detail From Bill IList <ACCPrePayableStatementDetail_CustomEntity> lstACCPrePayableStatementDetail_CustomEntity = FCCACCPrePayableStatementDetail_Custom.GetFacadeCreate().GetIL(aCCPrePayableStatementEntity.StartDate, aCCPrePayableStatementEntity.EndDate); if (lstACCPrePayableStatementDetail_CustomEntity != null && lstACCPrePayableStatementDetail_CustomEntity.Count > 0) { IList <ACCPrePayableStatementDetailEntity> lstACCPrePayableStatementDetail = new List <ACCPrePayableStatementDetailEntity>(); foreach (ACCPrePayableStatementDetail_CustomEntity entACCPrePayableStatementDetail_CustomEntity in lstACCPrePayableStatementDetail_CustomEntity) { ACCPrePayableStatementDetailEntity entACCPrePayableStatementDetail = new ACCPrePayableStatementDetailEntity(); if (lstACCPrePayableStatementDetail != null && lstACCPrePayableStatementDetail.Count > 0) { ACCPrePayableStatementDetailEntity entTempACCPrePayableStatementDetail = (from s in lstACCPrePayableStatementDetail where s.BillID == entACCPrePayableStatementDetail_CustomEntity.BillID && s.WorkOrderID == entACCPrePayableStatementDetail_CustomEntity.WorkOrderID //where s.BillID == entACCPrePayableStatementDetail_CustomEntity.BillID && s.WorkOrderID == entACCPrePayableStatementDetail_CustomEntity.WorkOrderID //&& s.ApprovedBillAmount == entACCPrePayableStatementDetail_CustomEntity.BillAmount && s.RequisitionID == entACCPrePayableStatementDetail_CustomEntity.RequisitionID select s).FirstOrDefault(); if (entTempACCPrePayableStatementDetail != null && entTempACCPrePayableStatementDetail.BillID > 0) { //Remove Previous Item lstACCPrePayableStatementDetail.Remove(entTempACCPrePayableStatementDetail); ///Clear this list................................ entTempACCPrePayableStatementDetail.RequisitionNo += "," + entACCPrePayableStatementDetail_CustomEntity.RequisitionNo; //Add New Edited Item. lstACCPrePayableStatementDetail.Add(entTempACCPrePayableStatementDetail); continue; } } //else if(Flag) //{ Decimal workOrderAgreementAmount = 0, paidAmount = 0, tDSAmount = 0, securityMoney = 0, billamount = 0; Decimal.TryParse(entACCPrePayableStatementDetail_CustomEntity.BillAmount.ToString(), out billamount); entACCPrePayableStatementDetail.PrePayableStatementID = result; if (entACCPrePayableStatementDetail_CustomEntity.WorkOrderNo.IsNotNullOrEmpty()) { entACCPrePayableStatementDetail.WorkOrderNo = entACCPrePayableStatementDetail_CustomEntity.WorkOrderNo.Trim(); } else { entACCPrePayableStatementDetail.WorkOrderNo = null; } if (entACCPrePayableStatementDetail_CustomEntity.WOAmount.HasValue) { workOrderAgreementAmount = Decimal.Parse(entACCPrePayableStatementDetail_CustomEntity.WOAmount.ToString()); entACCPrePayableStatementDetail.WorkOrderAmount = workOrderAgreementAmount; } else { entACCPrePayableStatementDetail.WorkOrderAmount = null; } if (entACCPrePayableStatementDetail_CustomEntity.WorkOrderID > 0) { entACCPrePayableStatementDetail.WorkOrderID = Int64.Parse(entACCPrePayableStatementDetail_CustomEntity.WorkOrderID.ToString()); } else { entACCPrePayableStatementDetail.WorkOrderID = null; } if (entACCPrePayableStatementDetail_CustomEntity.StartDate.HasValue) { entACCPrePayableStatementDetail.WorkOrderDate = entACCPrePayableStatementDetail_CustomEntity.StartDate; } else { entACCPrePayableStatementDetail.WorkOrderDate = null; } Decimal payableAgainstWO = (workOrderAgreementAmount - paidAmount - tDSAmount); Decimal netPayableConsideringBillSecurity = (billamount - paidAmount - securityMoney - tDSAmount); entACCPrePayableStatementDetail.PaidAmount = paidAmount; entACCPrePayableStatementDetail.SecurityMoney = securityMoney; entACCPrePayableStatementDetail.TDSAmount = tDSAmount; entACCPrePayableStatementDetail.PayableAgainstWorkOrder = payableAgainstWO; entACCPrePayableStatementDetail.NetPayableConsideringBillAndSecurity = netPayableConsideringBillSecurity; entACCPrePayableStatementDetail.CreateDate = System.DateTime.Now; //if (!txtSecurityMoneyLV.Text.Trim().IsNullOrEmpty()) //{ // aCCPrePayableStatementDetailEntity.SecurityMoney = Decimal.Parse(txtSecurityMoneyLV.Text.Trim()); //} //else //{ // aCCPrePayableStatementDetailEntity.SecurityMoney = null; //} //if (!txtTDSAmountLV.Text.Trim().IsNullOrEmpty()) //{ // aCCPrePayableStatementDetailEntity.TDSAmount = Decimal.Parse(txtTDSAmountLV.Text.Trim()); //} //else //{ // aCCPrePayableStatementDetailEntity.TDSAmount = null; //} //if (!txtPayableAgainstWorkOrderLV.Text.Trim().IsNullOrEmpty()) //{ // aCCPrePayableStatementDetailEntity.PayableAgainstWorkOrder = Decimal.Parse(txtPayableAgainstWorkOrderLV.Text.Trim()); //} //else //{ // aCCPrePayableStatementDetailEntity.PayableAgainstWorkOrder = null; //} if (entACCPrePayableStatementDetail_CustomEntity.BillAmount.HasValue) { entACCPrePayableStatementDetail.ApprovedBillAmount = Decimal.Parse(entACCPrePayableStatementDetail_CustomEntity.BillAmount.ToString()); } else { entACCPrePayableStatementDetail.ApprovedBillAmount = null; } //if (!txtNetPayableConsideringBillAndSecurityLV.Text.Trim().IsNullOrEmpty()) //{ // aCCPrePayableStatementDetailEntity.NetPayableConsideringBillAndSecurity = Decimal.Parse(txtNetPayableConsideringBillAndSecurityLV.Text.Trim()); //} //else //{ // aCCPrePayableStatementDetailEntity.NetPayableConsideringBillAndSecurity = null; //} entACCPrePayableStatementDetail.PartyReconcile = false; if (entACCPrePayableStatementDetail_CustomEntity.RequisitionID > 0) { entACCPrePayableStatementDetail.RequisitionID = entACCPrePayableStatementDetail_CustomEntity.RequisitionID; } else { entACCPrePayableStatementDetail.RequisitionID = null; } if (entACCPrePayableStatementDetail_CustomEntity.RequisitionNo.IsNotNullOrEmpty()) { entACCPrePayableStatementDetail.RequisitionNo = entACCPrePayableStatementDetail_CustomEntity.RequisitionNo; } else { entACCPrePayableStatementDetail.RequisitionNo = null; } if (entACCPrePayableStatementDetail_CustomEntity.RequisitionDate.HasValue) { entACCPrePayableStatementDetail.RequisitionDate = entACCPrePayableStatementDetail_CustomEntity.RequisitionDate; } else { entACCPrePayableStatementDetail.RequisitionDate = null; } entACCPrePayableStatementDetail.ProjectID = Int64.Parse(entACCPrePayableStatementDetail_CustomEntity.ProjectID.ToString()); entACCPrePayableStatementDetail.BillID = entACCPrePayableStatementDetail_CustomEntity.BillID; entACCPrePayableStatementDetail.BillDate = entACCPrePayableStatementDetail_CustomEntity.billlDate; entACCPrePayableStatementDetail.BillNo = entACCPrePayableStatementDetail_CustomEntity.BillNo; entACCPrePayableStatementDetail.VendorCategoryID = Int64.Parse(entACCPrePayableStatementDetail_CustomEntity.VendorCategory.ToString()); entACCPrePayableStatementDetail.FromVendorID = Int64.Parse(entACCPrePayableStatementDetail_CustomEntity.Vendor.ToString()); entACCPrePayableStatementDetail.CreateByEmployeeID = MiscUtil.GetCurrentEmployeeByMemberID(CurrentMember); entACCPrePayableStatementDetail.Ref = null; entACCPrePayableStatementDetail.DueDate = DateTime.Now; entACCPrePayableStatementDetail.PlannedDate = null; entACCPrePayableStatementDetail.Remarks = null; entACCPrePayableStatementDetail.AdditionalRemarks = null; entACCPrePayableStatementDetail.ACCPayablePaymentStatusID = MasterDataConstants.MDACCPayablePaymentStatus.CURRENT; entACCPrePayableStatementDetail.ACCPayableApprovalStatusID = MasterDataConstants.ACCPrePayableStatementApprovalStatus.INITIATED; entACCPrePayableStatementDetail.AccountPaybleStatementDetailCategoryID = MasterDataConstants.MDAccountPaybleStatementDetailCategory.REGULAR; entACCPrePayableStatementDetail.PayableClassificationID = MasterDataConstants.MDPayableClassification.AS; entACCPrePayableStatementDetail.APPanelID = MasterDataConstants.DeafultAPPanel.DEFAULT_AP_PANEL; entACCPrePayableStatementDetail.IsRemoved = false; entACCPrePayableStatementDetail.IsLocked = false; lstACCPrePayableStatementDetail.Add(entACCPrePayableStatementDetail); //} } #region AccPayableStatemenet Detail IList <ACCPrePayableStatementDetailFromWO_CustomEntity> lstACCPrePayableStatementDetailFromWO_CustomEntity = FCCACCPrePayableStatementDetailFromWO_Custom.GetFacadeCreate().GetIL(); if (lstACCPrePayableStatementDetailFromWO_CustomEntity != null && lstACCPrePayableStatementDetailFromWO_CustomEntity.Count > 0) { foreach (ACCPrePayableStatementDetailFromWO_CustomEntity entACCPrePayableStatementDetail_CustomEntity in lstACCPrePayableStatementDetailFromWO_CustomEntity) { ACCPrePayableStatementDetailEntity entACCPrePayableStatementDetail = new ACCPrePayableStatementDetailEntity(); //if (lstACCPrePayableStatementDetail != null && lstACCPrePayableStatementDetail.Count > 0) //{ // ACCPrePayableStatementDetailEntity entTempACCPrePayableStatementDetail = (from s in lstACCPrePayableStatementDetail // where s.BillID == entACCPrePayableStatementDetail_CustomEntity.BillID // // where s.BillID == entACCPrePayableStatementDetail_CustomEntity.BillID && s.WorkOrderID == entACCPrePayableStatementDetail_CustomEntity.WorkOrderID // //&& s.ApprovedBillAmount == entACCPrePayableStatementDetail_CustomEntity.BillAmount && s.RequisitionID != entACCPrePayableStatementDetail_CustomEntity.RequisitionID // select s).FirstOrDefault(); // if (entTempACCPrePayableStatementDetail != null && entTempACCPrePayableStatementDetail.BillID > 0) // { // //Remove Previous Item // lstACCPrePayableStatementDetail.Remove(entTempACCPrePayableStatementDetail); // entTempACCPrePayableStatementDetail.RequisitionNo += "," + entACCPrePayableStatementDetail_CustomEntity.RequisitionNo; // //Add New Edited Item. // lstACCPrePayableStatementDetail.Add(entTempACCPrePayableStatementDetail); // continue; // } //} Decimal workOrderAgreementAmount = 0, paidAmount = 0, tDSAmount = 0, securityMoney = 0, billAmount = 0; entACCPrePayableStatementDetail.PrePayableStatementID = result; if (entACCPrePayableStatementDetail_CustomEntity.WorkOrderNo.IsNotNullOrEmpty()) { entACCPrePayableStatementDetail.WorkOrderNo = entACCPrePayableStatementDetail_CustomEntity.WorkOrderNo.Trim(); } else { entACCPrePayableStatementDetail.WorkOrderNo = null; } if (entACCPrePayableStatementDetail_CustomEntity.WOAmount.HasValue) { workOrderAgreementAmount = Decimal.Parse(entACCPrePayableStatementDetail_CustomEntity.WOAmount.ToString()); entACCPrePayableStatementDetail.WorkOrderAmount = workOrderAgreementAmount; } else { entACCPrePayableStatementDetail.WorkOrderAmount = null; } if (entACCPrePayableStatementDetail_CustomEntity.WorkOrderID > 0) { entACCPrePayableStatementDetail.WorkOrderID = Int64.Parse(entACCPrePayableStatementDetail_CustomEntity.WorkOrderID.ToString()); } else { entACCPrePayableStatementDetail.WorkOrderID = null; } if (entACCPrePayableStatementDetail_CustomEntity.StartDate != null) { entACCPrePayableStatementDetail.WorkOrderDate = entACCPrePayableStatementDetail_CustomEntity.StartDate; } else { entACCPrePayableStatementDetail.WorkOrderDate = null; } Decimal payableAgainstWO = (workOrderAgreementAmount - paidAmount - tDSAmount); //Decimal netPayableConsideringBillSecurity = (billAmount - paidAmount - securityMoney - tDSAmount); //need to discuss with Rayan vaiya. To get value from formula or anywhere else??? Decimal netPayableConsideringBillSecurity = payableAgainstWO; entACCPrePayableStatementDetail.PaidAmount = paidAmount; entACCPrePayableStatementDetail.SecurityMoney = securityMoney; entACCPrePayableStatementDetail.TDSAmount = tDSAmount; entACCPrePayableStatementDetail.PayableAgainstWorkOrder = payableAgainstWO; entACCPrePayableStatementDetail.NetPayableConsideringBillAndSecurity = netPayableConsideringBillSecurity; entACCPrePayableStatementDetail.CreateDate = System.DateTime.Now; entACCPrePayableStatementDetail.ApprovedBillAmount = 0; entACCPrePayableStatementDetail.PartyReconcile = false; Int64 requisitionID = 0; Int64 projectID = 0; String projectCode = null; String requisitionNo = null; DateTime requisitionDate = System.DateTime.Now; if (entACCPrePayableStatementDetail_CustomEntity.WorkOrderID > 0) { String fe_WOItemMap = SqlExpressionBuilder.PrepareFilterExpression(PRMWorkOrderItemMapEntity.FLD_NAME_WorkOrderID, entACCPrePayableStatementDetail_CustomEntity.WorkOrderID.ToString(), SQLMatchType.Equal); IList <PRMWorkOrderItemMapEntity> lstWOItemMap = FCCPRMWorkOrderItemMap.GetFacadeCreate().GetIL(null, null, String.Empty, fe_WOItemMap, DatabaseOperationType.LoadWithFilterExpression); if (lstWOItemMap != null && lstWOItemMap.Count > 0) { var distinctTypeIDs = lstWOItemMap.Select(x => x.RequisitionID).Distinct(); foreach (var ent in distinctTypeIDs) { String fe_requisition = SqlExpressionBuilder.PrepareFilterExpression("REQRequisition." + REQRequisitionEntity.FLD_NAME_RequisitionID, ent.ToString(), SQLMatchType.Equal); IList <REQRequisition_DetailedEntity> lstReqRequisition_detailed = FCCREQRequisition_Detailed.GetFacadeCreate().GetIL(10000, 1, String.Empty, fe_requisition); if (lstReqRequisition_detailed != null && lstReqRequisition_detailed.Count > 0) { requisitionID = lstReqRequisition_detailed[0].RequisitionID; projectCode = lstReqRequisition_detailed[0].ProjectCode; requisitionNo += lstReqRequisition_detailed[0].RequisitionNo + " "; requisitionDate = lstReqRequisition_detailed[0].RequisitionDate; projectID = lstReqRequisition_detailed[0].ProjectID; } } } } entACCPrePayableStatementDetail.RequisitionID = requisitionID; entACCPrePayableStatementDetail.RequisitionNo = requisitionNo; entACCPrePayableStatementDetail.RequisitionDate = requisitionDate; entACCPrePayableStatementDetail.ProjectID = projectID; entACCPrePayableStatementDetail.ProjectCode = projectCode; entACCPrePayableStatementDetail.BillID = null; entACCPrePayableStatementDetail.BillDate = null; entACCPrePayableStatementDetail.BillNo = null; entACCPrePayableStatementDetail.VendorCategoryID = MasterDataConstants.MDVendorCategory.VENDOR; entACCPrePayableStatementDetail.FromVendorID = entACCPrePayableStatementDetail_CustomEntity.SupplierID; entACCPrePayableStatementDetail.CreateByEmployeeID = MiscUtil.GetCurrentEmployeeByMemberID(CurrentMember); entACCPrePayableStatementDetail.Ref = null; entACCPrePayableStatementDetail.DueDate = DateTime.Now; entACCPrePayableStatementDetail.PlannedDate = null; entACCPrePayableStatementDetail.Remarks = null; entACCPrePayableStatementDetail.AdditionalRemarks = null; entACCPrePayableStatementDetail.ACCPayablePaymentStatusID = MasterDataConstants.MDACCPayablePaymentStatus.CURRENT; entACCPrePayableStatementDetail.ACCPayableApprovalStatusID = MasterDataConstants.ACCPrePayableStatementApprovalStatus.INITIATED; entACCPrePayableStatementDetail.AccountPaybleStatementDetailCategoryID = MasterDataConstants.MDAccountPaybleStatementDetailCategory.REGULAR; entACCPrePayableStatementDetail.PayableClassificationID = MasterDataConstants.MDPayableClassification.AS; entACCPrePayableStatementDetail.APPanelID = MasterDataConstants.DeafultAPPanel.DEFAULT_AP_PANEL; entACCPrePayableStatementDetail.IsRemoved = false; entACCPrePayableStatementDetail.IsLocked = false; lstACCPrePayableStatementDetail.Add(entACCPrePayableStatementDetail); } //#region Insert To Payable Detail //if (lstACCPrePayableStatementDetail != null && lstACCPrePayableStatementDetail.Count > 0) //{ // foreach (ACCPrePayableStatementDetailEntity ent in lstACCPrePayableStatementDetail) // { // FCCACCPrePayableStatementDetail.GetFacadeCreate().Add(ent, DatabaseOperationType.Add, TransactionRequired.No); // } //} //#endregion //MiscUtil.ShowMessage(lblMessage, "Pre Payable Statement Information has been added successfully.", false); } #endregion #region Insert To Payable Detail if (lstACCPrePayableStatementDetail != null && lstACCPrePayableStatementDetail.Count > 0) { foreach (ACCPrePayableStatementDetailEntity ent in lstACCPrePayableStatementDetail) { FCCACCPrePayableStatementDetail.GetFacadeCreate().Add(ent, DatabaseOperationType.Add, TransactionRequired.No); } } #endregion } #endregion _PrePayableStatementID = 0; _ACCPrePayableStatementEntity = new ACCPrePayableStatementEntity(); PrepareInitialView(); BindACCPrePayableStatementList(); String navUrl = UrlHelper.BuildSecureUrl("~/ACC/ACCPrePayableStatementDetail.aspx", string.Empty, UrlConstants.OVERVIEW_PRE_PAYABLE_STATEMENT_ID, result.ToString()).ToString(); Response.Redirect(navUrl); if (aCCPrePayableStatementEntity.IsNew) { MiscUtil.ShowMessage(lblMessage, "Pre Payable Statement Information has been added successfully.", false); } else { MiscUtil.ShowMessage(lblMessage, "Pre Payable Statement Information has been updated successfully.", false); } } else { if (aCCPrePayableStatementEntity.IsNew) { MiscUtil.ShowMessage(lblMessage, "Failed to add Pre Payable Statement Information.", false); } else { MiscUtil.ShowMessage(lblMessage, "Failed to update Pre Payable Statement Information.", false); } } } catch (Exception ex) { MiscUtil.ShowMessage(lblMessage, ex.Message, true); } } }