/// <summary> /// Function to edit the voucher /// </summary> /// <param name="decCreditNoteMasterId"></param> public void Edit(decimal decCreditNoteMasterId) { try { CreditNoteMasterSP spCreditnoteMaster = new CreditNoteMasterSP(); CreditNoteMasterInfo infoCreditNoteMaster = new CreditNoteMasterInfo(); CreditNoteDetailsSP spCreditNoteDetails = new CreditNoteDetailsSP(); CreditNoteDetailsInfo infoCreditNoteDetails = new CreditNoteDetailsInfo(); ExchangeRateSP spExchangeRate = new ExchangeRateSP(); /*****************Update in CreditNoteMaster table *************/ decimal decTotalDebit = 0; decimal decTotalCredit = 0; infoCreditNoteMaster.CreditNoteMasterId = decCreditNoteMasterId; infoCreditNoteMaster.VoucherNo = strVoucherNo; infoCreditNoteMaster.InvoiceNo = txtVoucherNo.Text.Trim(); infoCreditNoteMaster.SuffixPrefixId = decCreditNoteSuffixPrefixId; infoCreditNoteMaster.Date = Convert.ToDateTime(txtDate.Text); infoCreditNoteMaster.Narration = txtNarration.Text.Trim(); infoCreditNoteMaster.UserId = PublicVariables._decCurrentUserId; infoCreditNoteMaster.VoucherTypeId = decCreditNoteVoucherTypeId; infoCreditNoteMaster.FinancialYearId = Convert.ToDecimal(PublicVariables._decCurrentFinancialYearId.ToString()); infoCreditNoteMaster.ExtraDate = DateTime.Now; infoCreditNoteMaster.Extra1 = string.Empty; infoCreditNoteMaster.Extra2 = string.Empty; decTotalDebit = Convert.ToDecimal(txtDebitTotal.Text.Trim()); decTotalCredit = Convert.ToDecimal(txtCreditTotal.Text.Trim()); infoCreditNoteMaster.TotalAmount = decTotalDebit; decimal decEffectRow = spCreditnoteMaster.CreditNoteMasterEdit(infoCreditNoteMaster); /**********************CreditNote Details Edit********************/ if (decEffectRow > 0) { infoCreditNoteDetails.CreditNoteMasterId = decCreditNoteMasterId; infoCreditNoteDetails.ExtraDate = DateTime.Now; infoCreditNoteDetails.Extra1 = string.Empty; infoCreditNoteDetails.Extra2 = string.Empty; //-----------to delete details, LedgerPosting and bankReconciliation of removed rows--------------// LedgerPostingSP spLedgerPosting = new LedgerPostingSP(); foreach (object obj in arrlstOfRemove) { string str = Convert.ToString(obj); spCreditNoteDetails.CreditNoteDetailsDelete(Convert.ToDecimal(str)); spLedgerPosting.LedgerPostDeleteByDetailsId(Convert.ToDecimal(str), strVoucherNo, decCreditNoteVoucherTypeId); } spLedgerPosting.LedgerPostingDeleteByVoucherNoVoucherTypeIdAndLedgerId(strVoucherNo, decCreditNoteVoucherTypeId, 12); //=============================================================================================// decimal decLedgerId = 0; decimal decDebit = 0; decimal decCredit = 0; decimal decCreditNoteDetailsId = 0; int inRowCount = dgvCreditNote.RowCount; for (int inI = 0; inI < inRowCount; inI++) { if (dgvCreditNote.Rows[inI].Cells["dgvcmbAccountLedger"].Value != null && dgvCreditNote.Rows[inI].Cells["dgvcmbAccountLedger"].Value.ToString() != string.Empty) { infoCreditNoteDetails.LedgerId = Convert.ToDecimal(dgvCreditNote.Rows[inI].Cells["dgvcmbAccountLedger"].Value.ToString()); decLedgerId = infoCreditNoteDetails.LedgerId; } if (dgvCreditNote.Rows[inI].Cells["dgvcmbDrOrCr"].Value != null && dgvCreditNote.Rows[inI].Cells["dgvcmbDrOrCr"].Value.ToString() != string.Empty) { //------------------Currency conversion------------------// decSelectedCurrencyRate = spExchangeRate.GetExchangeRateByExchangeRateId(Convert.ToDecimal(dgvCreditNote.Rows[inI].Cells["dgvcmbCurrency"].Value)); decAmount = Convert.ToDecimal(dgvCreditNote.Rows[inI].Cells["dgvtxtAmount"].Value.ToString()); decConvertRate = decAmount * decSelectedCurrencyRate; //======================================================// if (dgvCreditNote.Rows[inI].Cells["dgvcmbDrOrCr"].Value.ToString() == "Dr") { infoCreditNoteDetails.Debit = Convert.ToDecimal(dgvCreditNote.Rows[inI].Cells["dgvtxtAmount"].Value.ToString()); infoCreditNoteDetails.Credit = 0; decDebit = decConvertRate; decCredit = infoCreditNoteDetails.Credit; } else { infoCreditNoteDetails.Credit = Convert.ToDecimal(dgvCreditNote.Rows[inI].Cells["dgvtxtAmount"].Value.ToString()); infoCreditNoteDetails.Debit = 0; decDebit = infoCreditNoteDetails.Debit; decCredit = decConvertRate; } infoCreditNoteDetails.ExchangeRateId = Convert.ToDecimal(dgvCreditNote.Rows[inI].Cells["dgvcmbCurrency"].Value.ToString()); if (dgvCreditNote.Rows[inI].Cells["dgvtxtChequeNo"].Value != null && dgvCreditNote.Rows[inI].Cells["dgvtxtChequeNo"].Value.ToString() != string.Empty) { infoCreditNoteDetails.ChequeNo = dgvCreditNote.Rows[inI].Cells["dgvtxtChequeNo"].Value.ToString(); } else { infoCreditNoteDetails.ChequeNo = string.Empty; } if (dgvCreditNote.Rows[inI].Cells["dgvtxtChequeDate"].Value != null && dgvCreditNote.Rows[inI].Cells["dgvtxtChequeDate"].Value.ToString() != string.Empty) { infoCreditNoteDetails.ChequeDate = Convert.ToDateTime(dgvCreditNote.Rows[inI].Cells["dgvtxtChequeDate"].Value); } else { infoCreditNoteDetails.ChequeDate = DateTime.Now; } if (dgvCreditNote.Rows[inI].Cells["dgvtxtDetailsId"].Value != null && dgvCreditNote.Rows[inI].Cells["dgvtxtDetailsId"].Value.ToString() != string.Empty) { infoCreditNoteDetails.CreditNoteDetailsId = Convert.ToDecimal(dgvCreditNote.Rows[inI].Cells["dgvtxtDetailsId"].Value.ToString()); spCreditNoteDetails.CreditNoteDetailsEdit(infoCreditNoteDetails); PartyBalanceAddOrEdit(inI); decCreditNoteDetailsId = infoCreditNoteDetails.CreditNoteDetailsId; decimal decLedgerPostId = Convert.ToDecimal(dgvCreditNote.Rows[inI].Cells["dgvtxtLedgerPostingId"].Value.ToString()); LedgerPostingEdit(decLedgerPostId, decLedgerId, decCredit, decDebit, decCreditNoteDetailsId, inI); } else { decCreditNoteDetailsId = spCreditNoteDetails.CreditNoteDetailsAdd(infoCreditNoteDetails); PartyBalanceAddOrEdit(inI); LedgerPosting(decLedgerId, decCredit, decDebit, decCreditNoteDetailsId, inI); } } } DeletePartyBalanceOfRemovedRow(); Messages.UpdatedMessage(); } //----------------If print after save is enable-----------------------// SettingsSP spSettings = new SettingsSP(); if (cbxPrintAfterSave.Checked) { if (spSettings.SettingsStatusCheck("Printer") == "Dot Matrix") { PrintForDotMatrix(infoCreditNoteMaster.CreditNoteMasterId); } else { Print(infoCreditNoteMaster.CreditNoteMasterId); } } //===================================================================// if (CreditNoteRegisterObj != null) { this.Close(); CreditNoteRegisterObj.Enabled = true; } else if (frmCreditNoteReportObj != null) { this.Close(); frmCreditNoteReportObj.Enabled = true; } else { clear(); } if (frmBillallocationObj != null) { this.Close(); } if (frmDayBookObj != null) { this.Close(); } } catch (Exception ex) { MessageBox.Show("CRNT:35" + ex.Message, "OpenMiracle", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
/// <summary> /// Function to fill the controlls /// </summary> public void FillFunction() { try { CreditNoteMasterInfo infoCreditNoteMaster = new CreditNoteMasterInfo(); CreditNoteMasterSP spCreditNoteMaster = new CreditNoteMasterSP(); infoCreditNoteMaster = spCreditNoteMaster.CreditNoteMasterView(decCreditNoteMasterIdForEdit); txtVoucherNo.ReadOnly = false; strVoucherNo = infoCreditNoteMaster.VoucherNo; strInvoiceNo = infoCreditNoteMaster.InvoiceNo; txtVoucherNo.Text = strInvoiceNo; decCreditNoteSuffixPrefixId = infoCreditNoteMaster.SuffixPrefixId; decCreditNoteVoucherTypeId = infoCreditNoteMaster.VoucherTypeId; dtpVoucherDate.Value = infoCreditNoteMaster.Date; VoucherTypeSP spVoucherType = new VoucherTypeSP(); isAutomatic = spVoucherType.CheckMethodOfVoucherNumbering(decCreditNoteVoucherTypeId); if (isAutomatic) { txtVoucherNo.ReadOnly = true; } else { txtVoucherNo.ReadOnly = false; } txtNarration.Text = infoCreditNoteMaster.Narration; //GridFill DataTable dtbl = new DataTable(); CreditNoteDetailsSP spCreditNoteDetailsSp = new CreditNoteDetailsSP(); dtbl = spCreditNoteDetailsSp.CreditNoteDetailsViewByMasterId(decCreditNoteMasterIdForEdit); AccountLedgerSP spAccountLedger = new AccountLedgerSP(); LedgerPostingSP spLedgerPosting = new LedgerPostingSP(); for (int inI = 0; inI < dtbl.Rows.Count; inI++) { dgvCreditNote.Rows.Add(); dgvCreditNote.Rows[inI].Cells["dgvcmbAccountLedger"].Value = Convert.ToDecimal(dtbl.Rows[inI]["ledgerId"].ToString()); if (Convert.ToDecimal(dtbl.Rows[inI]["debit"].ToString()) == 0) { dgvCreditNote.Rows[inI].Cells["dgvcmbDrOrCr"].Value = "Cr"; dgvCreditNote.Rows[inI].Cells["dgvtxtAmount"].Value = Convert.ToDecimal(dtbl.Rows[inI]["credit"].ToString()); } else { dgvCreditNote.Rows[inI].Cells["dgvcmbDrOrCr"].Value = "Dr"; dgvCreditNote.Rows[inI].Cells["dgvtxtAmount"].Value = Convert.ToDecimal(dtbl.Rows[inI]["debit"].ToString()); } dgvCreditNote.Rows[inI].Cells["dgvcmbCurrency"].Value = Convert.ToDecimal(dtbl.Rows[inI]["exchangeRateId"].ToString()); if (dtbl.Rows[inI]["chequeNo"].ToString() != string.Empty) { dgvCreditNote.Rows[inI].Cells["dgvtxtChequeNo"].Value = dtbl.Rows[inI]["chequeNo"].ToString(); dgvCreditNote.Rows[inI].Cells["dgvtxtChequeDate"].Value = (Convert.ToDateTime(dtbl.Rows[inI]["chequeDate"].ToString())).ToString(); } dgvCreditNote.Rows[inI].Cells["dgvtxtDetailsId"].Value = dtbl.Rows[inI]["CreditNoteDetailsId"].ToString(); decimal decDetailsId1 = Convert.ToDecimal(dtbl.Rows[inI]["CreditNoteDetailsId"].ToString()); decimal decLedgerPostingId = spLedgerPosting.LedgerPostingIdFromDetailsId(decDetailsId1, strVoucherNo, decCreditNoteVoucherTypeId); dgvCreditNote.Rows[inI].Cells["dgvtxtLedgerPostingId"].Value = decLedgerPostingId.ToString(); btnSave.Text = "Update"; } PartyBalanceSP SpPartyBalance = new PartyBalanceSP(); DataTable dtbl1 = new DataTable(); dtbl1 = SpPartyBalance.PartyBalanceViewByVoucherNoAndVoucherType(decCreditNoteVoucherTypeId, strVoucherNo, infoCreditNoteMaster.Date); dtblPartyBalance = dtbl1; dgvCreditNote.ClearSelection(); txtDate.Focus(); } catch (Exception ex) { MessageBox.Show("CRNT:37" + ex.Message, "OpenMiracle", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
/// <summary> /// Function to save the voucher /// </summary> public void Save() { try { decimal decTotalDebit = 0; decimal decTotalCredit = 0; decTotalDebit = Convert.ToDecimal(txtDebitTotal.Text.Trim()); decTotalCredit = Convert.ToDecimal(txtCreditTotal.Text.Trim()); CreditNoteMasterSP spCreditNoteMaster = new CreditNoteMasterSP(); CreditNoteDetailsSP spCreditNoteDetails = new CreditNoteDetailsSP(); CreditNoteMasterInfo infoCreditNoteMaster = new CreditNoteMasterInfo(); CreditNoteDetailsInfo infoCreditNoteDetails = new CreditNoteDetailsInfo(); PartyBalanceSP SpPartyBalance = new PartyBalanceSP(); PartyBalanceInfo InfopartyBalance = new PartyBalanceInfo(); ExchangeRateSP spExchangeRate = new ExchangeRateSP(); infoCreditNoteMaster.VoucherNo = strVoucherNo; infoCreditNoteMaster.InvoiceNo = txtVoucherNo.Text.Trim(); infoCreditNoteMaster.SuffixPrefixId = decCreditNoteSuffixPrefixId; infoCreditNoteMaster.Date = Convert.ToDateTime(txtDate.Text); infoCreditNoteMaster.Narration = txtNarration.Text.Trim(); infoCreditNoteMaster.UserId = PublicVariables._decCurrentUserId; infoCreditNoteMaster.VoucherTypeId = decCreditNoteVoucherTypeId; infoCreditNoteMaster.FinancialYearId = Convert.ToDecimal(PublicVariables._decCurrentFinancialYearId.ToString()); infoCreditNoteMaster.Extra1 = string.Empty; infoCreditNoteMaster.Extra2 = string.Empty; infoCreditNoteMaster.TotalAmount = decTotalDebit; decimal decCreditNoteMasterId = spCreditNoteMaster.CreditNoteMasterAdd(infoCreditNoteMaster); /*******************CreditNote Details Add and LedgerPosting*************************/ infoCreditNoteDetails.CreditNoteMasterId = decCreditNoteMasterId; infoCreditNoteDetails.ExtraDate = DateTime.Now; infoCreditNoteDetails.Extra1 = string.Empty; infoCreditNoteDetails.Extra2 = string.Empty; decimal decLedgerId = 0; decimal decDebit = 0; decimal decCredit = 0; int inRowCount = dgvCreditNote.RowCount; for (int inI = 0; inI < inRowCount - 1; inI++) { if (dgvCreditNote.Rows[inI].Cells["dgvcmbAccountLedger"].Value != null && dgvCreditNote.Rows[inI].Cells["dgvcmbAccountLedger"].Value.ToString() != string.Empty) { infoCreditNoteDetails.LedgerId = Convert.ToDecimal(dgvCreditNote.Rows[inI].Cells["dgvcmbAccountLedger"].Value.ToString()); decLedgerId = infoCreditNoteDetails.LedgerId; } if (dgvCreditNote.Rows[inI].Cells["dgvcmbDrOrCr"].Value != null && dgvCreditNote.Rows[inI].Cells["dgvcmbDrOrCr"].Value.ToString() != string.Empty) { if (dgvCreditNote.Rows[inI].Cells["dgvtxtAmount"].Value != null && dgvCreditNote.Rows[inI].Cells["dgvtxtAmount"].Value.ToString() != string.Empty) { //--------Currency conversion--------------// decSelectedCurrencyRate = spExchangeRate.GetExchangeRateByExchangeRateId(Convert.ToDecimal(dgvCreditNote.Rows[inI].Cells["dgvcmbCurrency"].Value.ToString())); decAmount = Convert.ToDecimal(dgvCreditNote.Rows[inI].Cells["dgvtxtAmount"].Value.ToString()); decConvertRate = decAmount * decSelectedCurrencyRate; //===========================================// if (dgvCreditNote.Rows[inI].Cells["dgvcmbDrOrCr"].Value.ToString() == "Dr") { infoCreditNoteDetails.Debit = Convert.ToDecimal(dgvCreditNote.Rows[inI].Cells["dgvtxtAmount"].Value.ToString()); infoCreditNoteDetails.Credit = 0; decDebit = decConvertRate; decCredit = infoCreditNoteDetails.Credit; } else { infoCreditNoteDetails.Credit = Convert.ToDecimal(dgvCreditNote.Rows[inI].Cells["dgvtxtAmount"].Value.ToString()); infoCreditNoteDetails.Debit = 0; decDebit = infoCreditNoteDetails.Debit; decCredit = decConvertRate; } } infoCreditNoteDetails.ExchangeRateId = Convert.ToDecimal(dgvCreditNote.Rows[inI].Cells["dgvcmbCurrency"].Value.ToString()); if (dgvCreditNote.Rows[inI].Cells["dgvtxtChequeNo"].Value != null && dgvCreditNote.Rows[inI].Cells["dgvtxtChequeNo"].Value.ToString() != string.Empty) { infoCreditNoteDetails.ChequeNo = dgvCreditNote.Rows[inI].Cells["dgvtxtChequeNo"].Value.ToString(); if (dgvCreditNote.Rows[inI].Cells["dgvtxtChequeDate"].Value != null && dgvCreditNote.Rows[inI].Cells["dgvtxtChequeDate"].Value.ToString() != string.Empty) { infoCreditNoteDetails.ChequeDate = Convert.ToDateTime(dgvCreditNote.Rows[inI].Cells["dgvtxtChequeDate"].Value); } else { infoCreditNoteDetails.ChequeDate = DateTime.Now; } } else { infoCreditNoteDetails.ChequeNo = string.Empty; infoCreditNoteDetails.ChequeDate = DateTime.Now; } decimal decDetailsId = spCreditNoteDetails.CreditNoteDetailsAdd(infoCreditNoteDetails); if (decDetailsId != 0) { PartyBalanceAddOrEdit(inI); LedgerPosting(decLedgerId, decCredit, decDebit, decDetailsId, inI); } } } Messages.SavedMessage(); //----------------If print after save is enable-----------------------// SettingsSP spSettings = new SettingsSP(); if (cbxPrintAfterSave.Checked) { if (spSettings.SettingsStatusCheck("Printer") == "Dot Matrix") { PrintForDotMatrix(decCreditNoteMasterId); } else { Print(decCreditNoteMasterId); } } //===================================================================// } catch (Exception ex) { MessageBox.Show("CRNT:31" + ex.Message, "OpenMiracle", MessageBoxButtons.OK, MessageBoxIcon.Information); } }