public override void FillSelectedRecordInContent(object RecordToFill) { DAL.tblFinPeriod EditingRecord = DALObject.FindSaveModelByPrimeKey(((FinPeriodEditListModel)RecordToFill).FinPeriodID); txtFinPerName.Text = EditingRecord.FinPeriodName; deStartDate.EditValue = null; deStartDate.EditValue = EditingRecord.FinPeriodFrom; deEndDate.EditValue = null; if (EditingRecord.FinPeriodTo.HasValue) { deEndDate.EditValue = EditingRecord.FinPeriodTo.Value; } PrevFinPeriod = DALObject.GetPreviousFinPeriod(Model.CommonProperties.LoginInfo.LoggedInCompany.CompanyID, EditingRecord.FinPeriodFrom); deStartDate.Enabled = (PrevFinPeriod == null); if (EditingRecord.FinPeriodTo == null) { NextFinPeriod = null; } else { NextFinPeriod = DALObject.GetNextFinPeriod(Model.CommonProperties.LoginInfo.LoggedInCompany.CompanyID, EditingRecord.FinPeriodTo.Value); } deEndDate.Enabled = (NextFinPeriod == null); }
public SavingResult SaveNewRecord(tblFinPeriod SaveModel, FinPeriodDetailModel PrevFinPeriod, FinPeriodDetailModel NextFinPeriod, List <AccountClosingBalanceViewModel> COBalances, List <ProductOpeningStockViewModel> POStocks) { SavingResult res = new SavingResult(); //-- using (dbVisionEntities db = new dbVisionEntities()) { //tblFinPeriod SaveModel; if (SaveModel.FinPeriodName == "") { res.ValidationError = "Can not accept blank value. Please enter Financial Period Name."; res.ExecutionResult = eExecutionResult.ValidationError; return(res); } else if (IsDuplicateRecord(SaveModel.FinPeriodName, SaveModel.FinPeriodID, db)) { res.ValidationError = "Can not accept duplicate value. The Financial Period Name is already exists."; res.ExecutionResult = eExecutionResult.ValidationError; return(res); } bool IsNewFinPeriodAdded = (SaveModel.FinPeriodID == 0); if (SaveModel.FinPeriodID == 0) // New Entry { SaveModel.rcuid = Model.CommonProperties.LoginInfo.LoggedinUser.UserID; SaveModel.rcdt = DateTime.Now; SaveModel.CompanyID = CommonProperties.LoginInfo.LoggedInCompany.CompanyID; db.tblFinPeriods.Add(SaveModel); if (PrevFinPeriod != null) { tblFinPeriod PrevFinPerSaveModel = db.tblFinPeriods.Find(PrevFinPeriod.FinPeriodID); if (PrevFinPerSaveModel != null) { if (PrevFinPerSaveModel.FinPeriodTo == null) { PrevFinPerSaveModel.FinPeriodTo = SaveModel.FinPeriodFrom.Date.AddDays(-1); //if (PrevFinPerSaveModel.FinPeriodName == PrevFinPerSaveModel.FinPeriodFrom.Year.ToString() + " - *") //{ PrevFinPerSaveModel.FinPeriodName = PrevFinPerSaveModel.FinPeriodFrom.Year.ToString() + " - " + PrevFinPerSaveModel.FinPeriodTo.Value.Year.ToString(); //} PrevFinPerSaveModel.redt = DateTime.Now; db.tblFinPeriods.Attach(PrevFinPerSaveModel); db.Entry(PrevFinPerSaveModel).State = System.Data.Entity.EntityState.Modified; } } } } else { SaveModel.reuid = Model.CommonProperties.LoginInfo.LoggedinUser.UserID; SaveModel.redt = DateTime.Now; db.tblFinPeriods.Attach(SaveModel); db.Entry(SaveModel).State = System.Data.Entity.EntityState.Modified; } //-- try { db.SaveChanges(); res.PrimeKeyValue = SaveModel.FinPeriodID; res.ExecutionResult = eExecutionResult.CommitedSucessfuly; } catch (Exception ex) { CommonFunctions.GetFinalError(res, ex); } if (IsNewFinPeriodAdded && PrevFinPeriod != null) { // /// Transfer Stock and Balances // DAL.Account.AccountOpeningBalanceDAL COPBDALObj = new Account.AccountOpeningBalanceDAL(); // ///--- Save Account Balances // foreach (var copb in COBalances) // { // if (copb.OpeningBalance != 0) // { // COPBDALObj.SaveNewRecord(new tblAccountOpeningBalance() // { // OpeningBalanceDate = SaveModel.FinPeriodFrom.Date, // OpeningBalanceAmt = copb.OpeningBalance, // Narration = "Opening Balance T/F", // AccountID = copb.AccountID, // CompanyID = CommonProperties.LoginInfo.LoggedInCompany.CompanyID, // tblFinPeriod = SaveModel, // rcdt = DateTime.Now, // rcuid = CommonProperties.LoginInfo.LoggedinUser.UserID // }, SaveModel.CompanyID, SaveModel.FinPeriodID, db, res); // } // } // /// // /// Save Product Stock // DAL.Inventory.ProductOpeningStockDAL POStockDALObj = new Inventory.ProductOpeningStockDAL(); // int OpeningStockVoucherTypeID = (int)Model.Inventory.eStockVoucherType.OpeningStock; // foreach (var stock in POStocks) // { // if (stock.Stock != 0) // { // POStockDALObj.SaveNewRecord( // new tblStock() // { // StockVoucherTypeID = OpeningStockVoucherTypeID, // VDate = SaveModel.FinPeriodFrom.Date, // Narration = "Opening Stock T/F", // CompanyID = CommonProperties.LoginInfo.LoggedInCompany.CompanyID, // tblFinPeriod = SaveModel, // rcdt = DateTime.Now, // rcuid = CommonProperties.LoginInfo.LoggedinUser.UserID // }, // new List<tblStockPDetail>() { new tblStockPDetail() // { // ProductID = stock.ProductID, // Rate = stock.Rate, // Qty = stock.Stock // } }, // SaveModel.CompanyID, SaveModel.FinPeriodID, db, res); // } // } /// //-- try { db.SaveChanges(); res.PrimeKeyValue = SaveModel.FinPeriodID; res.ExecutionResult = eExecutionResult.CommitedSucessfuly; } catch (Exception ex) { CommonFunctions.GetFinalError(res, ex); } } } return(res); }
public async override void InitializeDefaultValues() { PrevFinPeriod = null; NextFinPeriod = null; deStartDate.Enabled = true; deEndDate.Enabled = true; lcgAccountBalance.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never; lcgProductStock.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never; splitterItem2.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never; FirstControl = deStartDate; if (FormCurrentUI == Model.eFormCurrentUI.NewEntry) { PrevFinPeriod = DALObject.GetLatestFinPeriod(Model.CommonProperties.LoginInfo.LoggedInCompany.CompanyID); if (PrevFinPeriod != null) { lblPrevFinPeriod.Text = PrevFinPeriod.FinPeriodFrom.ToShortDateString() + " - "; if (PrevFinPeriod.FinPeriodTo != null) { lblPrevFinPeriod.Text = lblPrevFinPeriod.Text + PrevFinPeriod.FinPeriodTo.Value.ToShortDateString(); deStartDate.EditValue = null; deStartDate.EditValue = PrevFinPeriod.FinPeriodTo.Value.Date.AddDays(1).Date; deStartDate.Enabled = false; FirstControl = deEndDate; } else { lblPrevFinPeriod.Text = lblPrevFinPeriod.Text + "*"; FirstControl = deStartDate; } SetFocusOnFirstControl(); //-- Calculate Account's Balances gridControlAccountBalance.DataSource = await DALObject.GetAccountClosingBalance(PrevFinPeriod.CompanyID, PrevFinPeriod.FinPeriodID); gridviewAccountBalance.Columns["AccountNo"].Width = 100; gridviewAccountBalance.Columns["AccountName"].Width = 300; gridviewAccountBalance.Columns["CompanyName"].Width = 200; gridviewAccountBalance.Columns["Address"].Width = 150; gridviewAccountBalance.Columns["City"].Width = 100; gridviewAccountBalance.Columns["MobileNo"].Width = 100; gridviewAccountBalance.Columns["OpeningBalance"].Width = 100; //gridcontrolProductStock.DataSource = await DALObject.GetProductOpeningBalance(PrevFinPeriod.CompanyID, PrevFinPeriod.FinPeriodID); //gridviewProductStock.Columns["ProductCode"].Width = 100; //gridviewProductStock.Columns["ProductName"].Width = 300; //gridviewProductStock.Columns["Stock"].Width = 100; //gridviewProductStock.Columns["UnitName"].Width = 100; lcgAccountBalance.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Always; lcgProductStock.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Always; splitterItem2.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Always; } } base.InitializeDefaultValues(); }