protected void grdBalanceLine_RowInserting(object sender, DevExpress.Web.Data.ASPxDataInsertingEventArgs e) { if (cboBalanceInitAccount.Value == null) { grdBalanceLine.JSProperties.Add("cpAccountInvalid", "invalid"); e.Cancel = true; return; } if (cboBalanceInitCurrency.Value == null) { grdBalanceLine.JSProperties.Add("cpCurrencyInvalid", "invalid"); e.Cancel = true; return; } BalanceForwardTransaction balanceForwardTransaction = new BalanceForwardTransaction(session); balanceForwardTransaction.TransactionId = Guid.NewGuid(); balanceForwardTransaction.Code = e.NewValues["TransactionId.Code"] as string; balanceForwardTransaction.Description = e.NewValues["TransactionId.Description"] as string; balanceForwardTransaction.RowStatus = 1; balanceForwardTransaction.IssueDate = balanceForwardTransaction.CreateDate = DateTime.Now; if (cboAccountPeriod.Value == null) { throw new Exception("Chưa chọn kỳ kế toán !"); } AccountingPeriod _accountingPeriod = session.GetObjectByKey <AccountingPeriod>(Guid.Parse(cboAccountPeriod.Value.ToString())); if (_accountingPeriod == null) { throw new Exception("Chưa chọn kỳ kế toán !"); } balanceForwardTransaction.AccountingPeriodId = _accountingPeriod; balanceForwardTransaction.Save(); e.NewValues["GeneralJournalId"] = Guid.NewGuid().ToString(); ASPxSpinEdit c = (ASPxSpinEdit)grdBalanceLine.FindEditRowCellTemplateControl((GridViewDataColumn)grdBalanceLine.Columns["Debit"], "colBalanceInitDebit"); e.NewValues["Debit"] = c.Value.ToString(); c = (ASPxSpinEdit)grdBalanceLine.FindEditRowCellTemplateControl((GridViewDataColumn)grdBalanceLine.Columns["Credit"], "colBalanceInitCredit"); e.NewValues["Credit"] = c.Value.ToString(); e.NewValues["RowStatus"] = "1"; e.NewValues["AccountId!Key"] = cboBalanceInitAccount.Value.ToString(); e.NewValues["CurrencyId!Key"] = cboBalanceInitCurrency.Value.ToString(); e.NewValues["TransactionId!Key"] = balanceForwardTransaction.TransactionId.ToString(); BalanceLineSetData(); }
protected void grdBalanceLine_RowUpdating(object sender, DevExpress.Web.Data.ASPxDataUpdatingEventArgs e) { if (cboBalanceInitAccount.Value == null) { grdBalanceLine.JSProperties.Add("cpAccountInvalid", "invalid"); e.Cancel = true; return; } if (cboBalanceInitCurrency.Value == null) { grdBalanceLine.JSProperties.Add("cpCurrencyInvalid", "invalid"); e.Cancel = true; return; } CriteriaOperator _filter = null; BalanceForwardTransaction balanceForwardTransaction = session.GetObjectByKey <BalanceForwardTransaction>(Guid.Parse(e.OldValues["TransactionId!Key"].ToString())); if (balanceForwardTransaction != null) { if (cboAccountPeriod.Value == null) { throw new Exception("Chưa chọn kỳ kế toán !"); } AccountingPeriod _accountingPeriod = session.GetObjectByKey <AccountingPeriod>(Guid.Parse(cboAccountPeriod.Value.ToString())); if (_accountingPeriod == null) { throw new Exception("Chưa chọn kỳ kế toán !"); } balanceForwardTransaction.AccountingPeriodId = _accountingPeriod; balanceForwardTransaction.Code = e.NewValues["TransactionId.Code"].ToString(); balanceForwardTransaction.Description = e.NewValues["TransactionId.Description"].ToString(); balanceForwardTransaction.Save(); } ASPxSpinEdit c = (ASPxSpinEdit)grdBalanceLine.FindEditRowCellTemplateControl((GridViewDataColumn)grdBalanceLine.Columns["Debit"], "colBalanceInitDebit"); e.NewValues["Debit"] = c.Value.ToString(); c = (ASPxSpinEdit)grdBalanceLine.FindEditRowCellTemplateControl((GridViewDataColumn)grdBalanceLine.Columns["Credit"], "colBalanceInitCredit"); e.NewValues["Credit"] = c.Value.ToString(); e.NewValues["AccountId!Key"] = cboBalanceInitAccount.Value.ToString(); e.NewValues["CurrencyId!Key"] = cboBalanceInitCurrency.Value.ToString(); // Check not has Object to Create GeneralJournal debitGeneralJournal = session.GetObjectByKey <GeneralJournal>(Guid.Parse(e.OldValues["GeneralJournalId"].ToString())); if (debitGeneralJournal != null) { _filter = new BinaryOperator("GeneralJournalId.GeneralJournalId", debitGeneralJournal.GeneralJournalId, BinaryOperatorType.Equal); GeneralJournalObject debitGeneralJournalObject = session.FindObject <GeneralJournalObject>(_filter); if (debitGeneralJournalObject == null) { ObjectBO objectBO = new ObjectBO(); NAS.DAL.CMS.ObjectDocument.Object debitJounalCMSObject = objectBO.CreateCMSObject(session, ObjectTypeEnum.OPENBALANCE_ACCOUTING); debitGeneralJournalObject = new GeneralJournalObject(session); debitGeneralJournalObject.GeneralJournalId = debitGeneralJournal; debitGeneralJournalObject.ObjectId = debitJounalCMSObject; debitGeneralJournalObject.Save(); ObjectType objectType = NAS.DAL.CMS.ObjectDocument.ObjectType.GetDefault(session, ObjectTypeEnum.OPENBALANCE_ACCOUTING); GeneralJournalCustomType generalJournalCustomType = new GeneralJournalCustomType(session); generalJournalCustomType.GeneralJournalId = debitGeneralJournal; generalJournalCustomType.ObjectTypeId = objectType; generalJournalCustomType.Save(); } } BalanceLineSetData(); grdBalanceLine.JSProperties.Add("cpRefreshTree", "refresh"); }