/// <summary> /// Gridfill function based on the search condition /// </summary> public void Search() { try { if (cmbVoucherType.Items.Count != 0 && cmbAccountLedger.Items.Count != 0) { if ((cmbAccountLedger.SelectedValue.ToString() != "System.Data.DataRowView") && (cmbVoucherType.SelectedValue.ToString() != "System.Data.DataRowView")) { if (txtFromDate.Text.Trim() != string.Empty && txtToDate.Text.Trim() != string.Empty) { string strFromDate = txtFromDate.Text; string strToDate = txtToDate.Text; decimal decVoucherTypeId = Convert.ToDecimal(cmbVoucherType.SelectedValue.ToString()); decimal decLedgerId = Convert.ToDecimal(cmbAccountLedger.SelectedValue.ToString()); DataTable dtblJournalReport = new DataTable(); JournalMasterSP spJournalMaster = new JournalMasterSP(); dtblJournalReport = spJournalMaster.JournalReportSearch(strFromDate, strToDate, decVoucherTypeId, decLedgerId); dgvJournalReport.DataSource = dtblJournalReport; } } } } catch (Exception ex) { formMDI.infoError.ErrorString = "JVREP5:" + ex.Message; } }
/// <summary> /// Function to fill Datagridview /// </summary> public void SearchRegister() { try { if (txtFromDate.Text != string.Empty && txtToDate.Text != string.Empty) { if (Convert.ToDateTime(txtToDate.Text) < Convert.ToDateTime(txtFromDate.Text)) { MessageBox.Show("Todate should be greater than fromdate", "OpenMiracle", MessageBoxButtons.OK, MessageBoxIcon.Information); SetDate(); } } string strVoucherNo = txtVoucherNo.Text; string strToDate = string.Empty; string strFromDate = string.Empty; if (txtToDate.Text == string.Empty) { strToDate = DateTime.Now.ToString(); } else { strToDate = txtToDate.Text; } if (txtFromDate.Text == string.Empty) { strFromDate = DateTime.Now.ToString(); } else { strFromDate = txtFromDate.Text; } JournalMasterSP spjournalMasterSp = new JournalMasterSP(); dgvJournalRegister.DataSource = spjournalMasterSp.JournalRegisterSearch(strVoucherNo, strFromDate, strToDate); } catch (Exception ex) { MessageBox.Show("JREG3:" + ex.Message, "OpenMiracle", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
/// <summary> /// Print function /// </summary> public void Print() { try { if (dgvJournalReport.Rows.Count > 0) { string strFromDate = txtFromDate.Text; string strToDate = txtToDate.Text; decimal decVoucherTypeId = Convert.ToDecimal(cmbVoucherType.SelectedValue.ToString()); decimal decLedgerId = Convert.ToDecimal(cmbAccountLedger.SelectedValue.ToString()); JournalMasterSP SpJournalMaster = new JournalMasterSP(); DataSet dsJournalReport = SpJournalMaster.JournalReportPrinting(strFromDate, strToDate, decVoucherTypeId, decLedgerId, 1); frmReport frmReport = new frmReport(); frmReport.MdiParent = formMDI.MDIObj; frmReport.JournalreportReportPrinting(dsJournalReport); } } catch (Exception ex) { formMDI.infoError.ErrorString = "JVREP6:" + ex.Message; } }
/// <summary> /// When doubleclicking on the grid /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void dgvReport_CellDoubleClick(object sender, DataGridViewCellEventArgs e) { decimal decVouchertypeId = 0; string strVoucherNo = string.Empty; try { if (dgvReport.CurrentRow.Index == e.RowIndex) { if ((dgvReport.CurrentRow.Cells["voucherTypeId"].Value != null && dgvReport.CurrentRow.Cells["voucherTypeId"].Value.ToString() != string.Empty)) { int inI = dgvReport.CurrentCell.RowIndex; foreach (DataGridViewRow dgv in dgvReport.Rows) { if (dgv.Cells["VoucherNo"].Value != null && dgv.Cells["VoucherNo"].Value.ToString() != string.Empty && dgv.Cells["voucherTypeId"].Value != null && dgv.Cells["voucherTypeId"].Value.ToString() != string.Empty) { strVoucherType = dgv.Cells["VoucherType"].Value.ToString(); decVouchertypeId = Convert.ToDecimal(dgv.Cells["voucherTypeId"].Value.ToString()); strVoucherNo = dgv.Cells["VoucherNo"].Value.ToString(); } else { if (dgv.Cells["ledgerId"].Value.ToString() != string.Empty) { decledgerId = decimal.Parse(dgv.Cells["ledgerId"].Value.ToString()); strVoucherType = dgv.Cells["Account Ledger"].Value.ToString(); frmLedgerDetails frmLedger = new frmLedgerDetails(); frmLedger = Application.OpenForms["frmLedgerDetails"] as frmLedgerDetails; if (frmLedger == null) { frmLedger = new frmLedgerDetails(); frmLedger.MdiParent = formMDI.MDIObj; frmLedger.callFromAgeing(this, decledgerId); this.Enabled = false; } } } if (dgv.Index == inI) { break; } } if (strVoucherType == "Payment Voucher") { PaymentMasterSP spPaymentMaster = new PaymentMasterSP(); decMasterId = spPaymentMaster.paymentMasterIdView(decVouchertypeId, strVoucherNo); frmPaymentVoucher frmPaymentVoucher = new frmPaymentVoucher(); frmPaymentVoucher = Application.OpenForms["frmPaymentVoucher"] as frmPaymentVoucher; if (frmPaymentVoucher == null) { frmPaymentVoucher = new frmPaymentVoucher(); frmPaymentVoucher.MdiParent = formMDI.MDIObj; frmPaymentVoucher.callFromAgeing(this, decMasterId); this.Enabled = false; } } else if (strVoucherType == "Receipt Voucher") { ReceiptMasterSP spRecieptMaster = new ReceiptMasterSP(); decMasterId = spRecieptMaster.ReceiptMasterIdView(decVouchertypeId, strVoucherNo); frmReceiptVoucher frmReceiptVoucher = new frmReceiptVoucher(); frmReceiptVoucher = Application.OpenForms["frmReceiptVoucher"] as frmReceiptVoucher; if (frmReceiptVoucher == null) { frmReceiptVoucher = new frmReceiptVoucher(); frmReceiptVoucher.MdiParent = formMDI.MDIObj; frmReceiptVoucher.callFromAgeing(this, decMasterId); this.Enabled = false; } } else if (strVoucherType == "Journal Voucher") { JournalMasterSP spJournalMaster = new JournalMasterSP(); decMasterId = spJournalMaster.JournalMasterIdView(decVouchertypeId, strVoucherNo); frmJournalVoucher frmJournalVoucher = new frmJournalVoucher(); frmJournalVoucher = Application.OpenForms["frmJournalVoucher"] as frmJournalVoucher; if (frmJournalVoucher == null) { frmJournalVoucher = new frmJournalVoucher(); frmJournalVoucher.MdiParent = formMDI.MDIObj; frmJournalVoucher.callFromAgeing(this, decMasterId); this.Enabled = false; } } else if (strVoucherType == "PDC Receivable") { PDCReceivableMasterSP spPdcRecievabl = new PDCReceivableMasterSP(); decMasterId = spPdcRecievabl.PdcReceivableMasterIdView(decVouchertypeId, strVoucherNo); frmPdcReceivable frmPdcReceivable = new frmPdcReceivable(); frmPdcReceivable = Application.OpenForms["frmPdcReceivable"] as frmPdcReceivable; if (frmPdcReceivable == null) { frmPdcReceivable = new frmPdcReceivable(); frmPdcReceivable.MdiParent = formMDI.MDIObj; frmPdcReceivable.callFromAgeing(this, decMasterId); this.Enabled = false; } } else if (strVoucherType == "PDC Payable") { PDCPayableMasterSP spPdcPayable = new PDCPayableMasterSP(); decMasterId = spPdcPayable.PdcPayableMasterIdView(decVouchertypeId, strVoucherNo); frmPdcPayable frmPdcPayable = new frmPdcPayable(); frmPdcPayable = Application.OpenForms["frmPdcPayable"] as frmPdcPayable; if (frmPdcPayable == null) { frmPdcPayable = new frmPdcPayable(); frmPdcPayable.MdiParent = formMDI.MDIObj; frmPdcPayable.callFromAgeing(this, decMasterId); this.Enabled = false; } } else if (strVoucherType == "Sales Invoice") { SalesMasterSP spMaster = new SalesMasterSP(); decMasterId = spMaster.SalesMasterIdViewByvoucherNoAndVoucherType(decVouchertypeId, strVoucherNo); SalesMasterSP spSalesMaster = new SalesMasterSP(); bool blPOS = spSalesMaster.DayBookSalesInvoiceOrPOS(decMasterId, decVouchertypeId); frmSalesInvoice frmSalesInvoice = new frmSalesInvoice(); frmPOS frmPOS = new frmPOS(); if (blPOS == true) { frmPOS = Application.OpenForms["frmPOS"] as frmPOS; if (frmPOS == null) { frmPOS = new frmPOS(); frmPOS.MdiParent = formMDI.MDIObj; frmPOS.callFromAgeing(this, decMasterId); this.Enabled = false; } } else { frmSalesInvoice = Application.OpenForms["frmSalesInvoice"] as frmSalesInvoice; if (frmSalesInvoice == null) { frmSalesInvoice = new frmSalesInvoice(); frmSalesInvoice.MdiParent = formMDI.MDIObj; frmSalesInvoice.callFromAgeing(this, decMasterId); this.Enabled = false; } } } else if (strVoucherType == "Purchase Invoice") { PurchaseMasterSP spPurchaseMaster = new PurchaseMasterSP(); decMasterId = spPurchaseMaster.PurchaseMasterIdViewByvoucherNoAndVoucherType(decVouchertypeId, strVoucherNo); frmPurchaseInvoice objpurchase = new frmPurchaseInvoice(); objpurchase.WindowState = FormWindowState.Normal; objpurchase.MdiParent = formMDI.MDIObj; objpurchase.callFromAgeing(this, decMasterId); this.Enabled = false; } else if (strVoucherType == "Credit Note") { CreditNoteMasterSP spCreditNoteMaster = new CreditNoteMasterSP(); decMasterId = spCreditNoteMaster.CreditNoteMasterIdView(decVouchertypeId, strVoucherNo); frmCreditNote objpurchase = new frmCreditNote(); objpurchase.WindowState = FormWindowState.Normal; objpurchase.MdiParent = formMDI.MDIObj; objpurchase.callFromAgeing(this, decMasterId); this.Enabled = false; } else if (strVoucherType == "Debit Note") { DebitNoteMasterSP spDebitNote = new DebitNoteMasterSP(); decMasterId = spDebitNote.DebitNoteMasterIdView(decVouchertypeId, strVoucherNo); frmDebitNote objpurchase = new frmDebitNote(); objpurchase.WindowState = FormWindowState.Normal; objpurchase.MdiParent = formMDI.MDIObj; objpurchase.callFromAgeing(this, decMasterId); this.Enabled = false; } } } } catch (Exception ex) { MessageBox.Show("AR17:" + 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()); JournalMasterSP spJournalMaster = new JournalMasterSP(); JournalDetailsSP spJournalDetails = new JournalDetailsSP(); JournalMasterInfo infoJournalMaster = new JournalMasterInfo(); JournalDetailsInfo infoJournalDetails = new JournalDetailsInfo(); PartyBalanceSP SpPartyBalance = new PartyBalanceSP(); PartyBalanceInfo InfopartyBalance = new PartyBalanceInfo(); ExchangeRateSP spExchangeRate = new ExchangeRateSP(); infoJournalMaster.VoucherNo = strVoucherNo; infoJournalMaster.InvoiceNo = txtVoucherNo.Text; infoJournalMaster.SuffixPrefixId = decJournalSuffixPrefixId; infoJournalMaster.Date = Convert.ToDateTime(txtDate.Text); infoJournalMaster.Narration = txtNarration.Text.Trim(); infoJournalMaster.UserId = PublicVariables._decCurrentUserId; infoJournalMaster.VoucherTypeId = decJournalVoucherTypeId; infoJournalMaster.FinancialYearId = Convert.ToDecimal(PublicVariables._decCurrentFinancialYearId.ToString()); infoJournalMaster.Extra1 = string.Empty; infoJournalMaster.Extra2 = string.Empty; infoJournalMaster.ExtraDate = DateTime.Now; infoJournalMaster.TotalAmount = decTotalDebit; decimal decJournalMasterId = spJournalMaster.JournalMasterAdd(infoJournalMaster); /*******************JournalDetailsAdd and LedgerPosting*************************/ infoJournalDetails.JournalMasterId = decJournalMasterId; infoJournalDetails.ExtraDate = DateTime.Now; infoJournalDetails.Extra1 = string.Empty; infoJournalDetails.Extra2 = string.Empty; decimal decLedgerId = 0; decimal decDebit = 0; decimal decCredit = 0; int inRowCount = dgvJournalVoucher.RowCount; for (int inI = 0; inI < inRowCount - 1; inI++) { if (dgvJournalVoucher.Rows[inI].Cells["dgvcmbAccountLedger"].Value != null && dgvJournalVoucher.Rows[inI].Cells["dgvcmbAccountLedger"].Value.ToString() != string.Empty) { infoJournalDetails.LedgerId = Convert.ToDecimal(dgvJournalVoucher.Rows[inI].Cells["dgvcmbAccountLedger"].Value.ToString()); decLedgerId = infoJournalDetails.LedgerId; } if (dgvJournalVoucher.Rows[inI].Cells["dgvcmbDrOrCr"].Value != null && dgvJournalVoucher.Rows[inI].Cells["dgvcmbDrOrCr"].Value.ToString() != string.Empty) { if (dgvJournalVoucher.Rows[inI].Cells["dgvtxtAmount"].Value != null && dgvJournalVoucher.Rows[inI].Cells["dgvtxtAmount"].Value.ToString() != string.Empty) { //--------Currency conversion--------------// decSelectedCurrencyRate = spExchangeRate.GetExchangeRateByExchangeRateId(Convert.ToDecimal(dgvJournalVoucher.Rows[inI].Cells["dgvcmbCurrency"].Value.ToString())); decAmount = Convert.ToDecimal(dgvJournalVoucher.Rows[inI].Cells["dgvtxtAmount"].Value.ToString()); decConvertRate = decAmount * decSelectedCurrencyRate; //===========================================// if (dgvJournalVoucher.Rows[inI].Cells["dgvcmbDrOrCr"].Value.ToString() == "Dr") { infoJournalDetails.Debit = Convert.ToDecimal(dgvJournalVoucher.Rows[inI].Cells["dgvtxtAmount"].Value.ToString()); infoJournalDetails.Credit = 0; decDebit = decConvertRate; decCredit = infoJournalDetails.Credit; } else { infoJournalDetails.Credit = Convert.ToDecimal(dgvJournalVoucher.Rows[inI].Cells["dgvtxtAmount"].Value.ToString()); infoJournalDetails.Debit = 0; decDebit = infoJournalDetails.Debit; decCredit = decConvertRate; } } infoJournalDetails.ExchangeRateId = Convert.ToDecimal(dgvJournalVoucher.Rows[inI].Cells["dgvcmbCurrency"].Value.ToString()); if (dgvJournalVoucher.Rows[inI].Cells["dgvtxtChequeNo"].Value != null && dgvJournalVoucher.Rows[inI].Cells["dgvtxtChequeNo"].Value.ToString() != string.Empty) { infoJournalDetails.ChequeNo = dgvJournalVoucher.Rows[inI].Cells["dgvtxtChequeNo"].Value.ToString(); } else { infoJournalDetails.ChequeNo = string.Empty; } if (dgvJournalVoucher.Rows[inI].Cells["dgvtxtChequeDate"].Value != null && dgvJournalVoucher.Rows[inI].Cells["dgvtxtChequeDate"].Value.ToString() != string.Empty) { infoJournalDetails.ChequeDate = Convert.ToDateTime(dgvJournalVoucher.Rows[inI].Cells["dgvtxtChequeDate"].Value.ToString()); } else { infoJournalDetails.ChequeDate = DateTime.Now; } decimal decJournalDetailsId = spJournalDetails.JournalDetailsAdd(infoJournalDetails); if (decJournalDetailsId != 0) { PartyBalanceAddOrEdit(inI); LedgerPosting(decLedgerId, decCredit, decDebit, decJournalDetailsId, inI); } } } Messages.SavedMessage(); //----------------If print after save is enable-----------------------// if (cbxPrintAfterSave.Checked) { if (spSettings.SettingsStatusCheck("Printer") == "Dot Matrix") { PrintForDotMatrix(decJournalMasterId); } else { Print(decJournalMasterId); } } //===================================================================// } catch (Exception ex) { MessageBox.Show("JV14:" + ex.Message, "OpenMiracle", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
/// <summary> /// Function to fill the fields for edit or delete /// </summary> public void FillFunction() { try { JournalMasterInfo infoJournalMaster = new JournalMasterInfo(); JournalMasterSP spJournalMaster = new JournalMasterSP(); infoJournalMaster = spJournalMaster.JournalMasterView(decJournalMasterIdForEdit); VoucherTypeInfo infoVoucherType = new VoucherTypeInfo(); VoucherTypeSP spVoucherType = new VoucherTypeSP(); infoVoucherType = spVoucherType.VoucherTypeView(infoJournalMaster.VoucherTypeId); this.Text = infoVoucherType.VoucherTypeName; txtVoucherNo.ReadOnly = false; strVoucherNo = infoJournalMaster.VoucherNo; strInvoiceNo = infoJournalMaster.InvoiceNo; txtVoucherNo.Text = strInvoiceNo; decJournalSuffixPrefixId = infoJournalMaster.SuffixPrefixId; decJournalVoucherTypeId = infoJournalMaster.VoucherTypeId; dtpVoucherDate.Value = infoJournalMaster.Date; txtNarration.Text = infoJournalMaster.Narration; isAutomatic = spVoucherType.CheckMethodOfVoucherNumbering(decJournalVoucherTypeId); if (isAutomatic) { txtVoucherNo.ReadOnly = true; } else { txtVoucherNo.ReadOnly = false; } //GridFill DataTable dtbl = new DataTable(); JournalDetailsSP spJournalDetailsSp = new JournalDetailsSP(); dtbl = spJournalDetailsSp.JournalDetailsViewByMasterId(decJournalMasterIdForEdit); AccountLedgerSP spAccountLedger = new AccountLedgerSP(); LedgerPostingSP spLedgerPosting = new LedgerPostingSP(); for (int inI = 0; inI < dtbl.Rows.Count; inI++) { dgvJournalVoucher.Rows.Add(); dgvJournalVoucher.Rows[inI].Cells["dgvcmbAccountLedger"].Value = Convert.ToDecimal(dtbl.Rows[inI]["ledgerId"].ToString()); if (Convert.ToDecimal(dtbl.Rows[inI]["debit"].ToString()) == 0) { dgvJournalVoucher.Rows[inI].Cells["dgvcmbDrOrCr"].Value = "Cr"; dgvJournalVoucher.Rows[inI].Cells["dgvtxtAmount"].Value = Convert.ToDecimal(dtbl.Rows[inI]["credit"].ToString()); } else { dgvJournalVoucher.Rows[inI].Cells["dgvcmbDrOrCr"].Value = "Dr"; dgvJournalVoucher.Rows[inI].Cells["dgvtxtAmount"].Value = Convert.ToDecimal(dtbl.Rows[inI]["debit"].ToString()); } dgvJournalVoucher.Rows[inI].Cells["dgvcmbCurrency"].Value = Convert.ToDecimal(dtbl.Rows[inI]["exchangeRateId"].ToString()); if (dtbl.Rows[inI]["chequeNo"].ToString() != string.Empty) { dgvJournalVoucher.Rows[inI].Cells["dgvtxtChequeNo"].Value = dtbl.Rows[inI]["chequeNo"].ToString(); dgvJournalVoucher.Rows[inI].Cells["dgvtxtChequeDate"].Value = (Convert.ToDateTime(dtbl.Rows[inI]["chequeDate"].ToString())).ToString("dd-MMM-yyyy"); } dgvJournalVoucher.Rows[inI].Cells["dgvtxtDetailsId"].Value = dtbl.Rows[inI]["journalDetailsId"].ToString(); decimal decDetailsId1 = Convert.ToDecimal(dtbl.Rows[inI]["journalDetailsId"].ToString()); decimal decLedgerPostingId = spLedgerPosting.LedgerPostingIdFromDetailsId(decDetailsId1, strVoucherNo, decJournalVoucherTypeId); dgvJournalVoucher.Rows[inI].Cells["dgvtxtLedgerPostingId"].Value = decLedgerPostingId.ToString(); btnSave.Text = "Update"; } PartyBalanceSP SpPartyBalance = new PartyBalanceSP(); DataTable dtbl1 = new DataTable(); dtbl1 = SpPartyBalance.PartyBalanceViewByVoucherNoAndVoucherType(decJournalVoucherTypeId, strVoucherNo, infoJournalMaster.Date); dtblPartyBalance = dtbl1; dgvJournalVoucher.ClearSelection(); txtDate.Focus(); } catch (Exception ex) { MessageBox.Show("JV37:" + ex.Message, "OpenMiracle", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
/// <summary> /// Function to print the voucher /// </summary> /// <param name="decMasterId"></param> public void Print(decimal decMasterId) { try { JournalMasterSP SpJournalMaster = new JournalMasterSP(); DataSet dsJournalVoucher = SpJournalMaster.JournalVoucherPrinting(decMasterId, 1); frmReport frmReport = new frmReport(); frmReport.MdiParent = formMDI.MDIObj; frmReport.JournalVoucherPrinting(dsJournalVoucher); } catch (Exception ex) { MessageBox.Show("JV27:" + ex.Message, "OpenMiracle", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
/// <summary> /// function to delete voucher /// </summary> /// <param name="decJournalMasterId"></param> public void DeleteFunction(decimal decJournalMasterId) { try { JournalMasterSP spJournalMaster = new JournalMasterSP(); PartyBalanceSP spPartyBalance = new PartyBalanceSP(); if (!spPartyBalance.PartyBalanceCheckReference(decJournalVoucherTypeId, strVoucherNo)) { spJournalMaster.JournalVoucherDelete(decJournalMasterId, decJournalVoucherTypeId, strVoucherNo); Messages.DeletedMessage(); if (journalRegisterObj != null) { this.Close(); journalRegisterObj.Enabled = true; } else if (frmJournalReportObj != null) { this.Close(); frmJournalReportObj.Enabled = true; } else if (frmLedgerDetailsObj != null) { this.Close(); } else if (objVoucherSearch != null) { this.Close(); objVoucherSearch.GridFill(); } else if (frmDayBookObj != null) { this.Close(); } else if (frmBillallocationObj != null) { this.Close(); } else { clear(); } } else { Messages.InformationMessage("Reference exist. Cannot delete"); txtDate.Focus(); } } catch (Exception ex) { MessageBox.Show("JV19:" + ex.Message, "OpenMiracle", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
/// <summary> /// Function to call the SaveOrEditFunction after checking negative balance /// </summary> public void SaveOrEdit() { try { if (CheckUserPrivilege.PrivilegeCheck(PublicVariables._decCurrentUserId, this.Name, btnSave.Text)) { JournalMasterSP spJournalMaster = new JournalMasterSP(); //===================================================== SettingsSP spSettings = new SettingsSP(); string strStatus = spSettings.SettingsStatusCheck("NegativeCashTransaction"); decimal decBalance = 0; decimal decCalcAmount = 0; AccountLedgerSP spAccountLedger = new AccountLedgerSP(); bool isNegativeLedger = false; int inRowCount = dgvJournalVoucher.RowCount; for (int i = 0; i < inRowCount - 1; i++) { decimal decledgerId = 0; if (dgvJournalVoucher.Rows[i].Cells["dgvcmbAccountLedger"].Value != null && dgvJournalVoucher.Rows[i].Cells["dgvcmbAccountLedger"].Value.ToString() != string.Empty) { decledgerId = Convert.ToDecimal(dgvJournalVoucher.Rows[i].Cells["dgvcmbAccountLedger"].Value.ToString()); decBalance = spAccountLedger.CheckLedgerBalance(decledgerId); if (dgvJournalVoucher.Rows[i].Cells["dgvtxtAmount"].Value != null && dgvJournalVoucher.Rows[i].Cells["dgvtxtAmount"].Value.ToString() != string.Empty) { decCalcAmount = decBalance - Convert.ToDecimal(dgvJournalVoucher.Rows[i].Cells["dgvtxtAmount"].Value.ToString()); } if (decCalcAmount < 0) { isNegativeLedger = true; break; } } } //========================================= if (isNegativeLedger) { if (strStatus == "Warn") { if (MessageBox.Show("Negative balance exists,Do you want to Continue", "Open miracle", MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.Yes) { SaveOrEditFunction(); } } else if (strStatus == "Block") { MessageBox.Show("Cannot continue ,due to negative balance", "Open miracle", MessageBoxButtons.OK, MessageBoxIcon.Stop); } else { SaveOrEditFunction(); } } else { SaveOrEditFunction(); } } else { Messages.NoPrivillageMessage(); } } catch (Exception ex) { MessageBox.Show("JV18:" + ex.Message, "OpenMiracle", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
/// <summary> /// Function to clear the fields /// </summary> public void clear() { try { TransactionsGeneralFill obj = new TransactionsGeneralFill(); JournalMasterSP spMaster = new JournalMasterSP(); //-----------------------------------VoucherNo automatic generation-------------------------------------------// if (strVoucherNo == string.Empty) { strVoucherNo = "0"; //strMax; } strVoucherNo = obj.VoucherNumberAutomaicGeneration(decJournalVoucherTypeId, Convert.ToDecimal(strVoucherNo), dtpVoucherDate.Value, tableName); if (Convert.ToDecimal(strVoucherNo) != spMaster.JournalMasterGetMaxPlusOne(decJournalVoucherTypeId)) { strVoucherNo = spMaster.JournalMasterGetMax(decJournalVoucherTypeId).ToString(); strVoucherNo = obj.VoucherNumberAutomaicGeneration(decJournalVoucherTypeId, Convert.ToDecimal(strVoucherNo), dtpVoucherDate.Value, tableName); if (spMaster.JournalMasterGetMax(decJournalVoucherTypeId).ToString() == "0") { strVoucherNo = "0"; strVoucherNo = obj.VoucherNumberAutomaicGeneration(decJournalVoucherTypeId, Convert.ToDecimal(strVoucherNo), dtpVoucherDate.Value, tableName); } } //===================================================================================================================// if (isAutomatic) { SuffixPrefixSP spSuffisprefix = new SuffixPrefixSP(); SuffixPrefixInfo infoSuffixPrefix = new SuffixPrefixInfo(); infoSuffixPrefix = spSuffisprefix.GetSuffixPrefixDetails(decJournalVoucherTypeId, dtpVoucherDate.Value); strPrefix = infoSuffixPrefix.Prefix; strSuffix = infoSuffixPrefix.Suffix; strInvoiceNo = strPrefix + strVoucherNo + strSuffix; txtVoucherNo.Text = strInvoiceNo; txtVoucherNo.ReadOnly = true; } else { txtVoucherNo.ReadOnly = false; txtVoucherNo.Text = string.Empty; strInvoiceNo = txtVoucherNo.Text.Trim(); } dgvJournalVoucher.Rows.Clear(); VoucherDate(); dtpVoucherDate.Text = PublicVariables._dtCurrentDate.ToString("dd-MMM-yyyy"); txtDebitTotal.Text = string.Empty; txtCreditTotal.Text = string.Empty; txtNarration.Text = string.Empty; btnSave.Text = "Save"; btnDelete.Enabled = false; isEditMode = false; dtblPartyBalance.Clear();//to clear party balance entries to clear the dgvpatybalance PrintCheck(); if (!txtVoucherNo.ReadOnly) { txtVoucherNo.Focus(); } else { txtDate.Select(); } } catch (Exception ex) { MessageBox.Show("JV2:" + ex.Message, "OpenMiracle", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
/// <summary> /// Function to determine whether to call SaveFunction or EditFunction function /// </summary> public void SaveOrEditFunction() { JournalMasterSP spJournalMaster = new JournalMasterSP(); try { if (!isEditMode) { if (txtVoucherNo.Text != string.Empty) { if (!isAutomatic) { strInvoiceNo = txtVoucherNo.Text.Trim(); if (!spJournalMaster.JournalVoucherCheckExistance(strInvoiceNo, decJournalVoucherTypeId, 0)) { SaveFunction(); } else { Messages.InformationMessage("Voucher number already exist"); } } else { SaveFunction(); } } else { Messages.InformationMessage("Enter voucherNo"); txtVoucherNo.Focus(); } } else { if (txtVoucherNo.Text != string.Empty) { if (!isAutomatic) { strInvoiceNo = txtVoucherNo.Text.Trim(); if (!spJournalMaster.JournalVoucherCheckExistance(strInvoiceNo, decJournalVoucherTypeId, decJournalMasterIdForEdit)) { EditFunction(decJournalMasterIdForEdit); } else { Messages.InformationMessage("Voucher number already exist"); } } else { EditFunction(decJournalMasterIdForEdit); } } else { Messages.InformationMessage("Enter voucherNo"); } } } catch (Exception ex) { MessageBox.Show("JV17:" + ex.Message, "OpenMiracle", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
/// <summary> /// Function to edit the debitnote voucher /// </summary> /// <param name="decJournalMasterId"></param> public void Edit(decimal decJournalMasterId) { try { JournalMasterSP spJournalMaster = new JournalMasterSP(); JournalMasterInfo infoJournalMaster = new JournalMasterInfo(); JournalDetailsSP spJournalDetails = new JournalDetailsSP(); JournalDetailsInfo infoJournalDetails = new JournalDetailsInfo(); ExchangeRateSP spExchangeRate = new ExchangeRateSP(); /*****************Update in JournalMaster table *************/ decimal decTotalDebit = 0; decimal decTotalCredit = 0; infoJournalMaster.JournalMasterId = decJournalMasterId; infoJournalMaster.VoucherNo = strVoucherNo; infoJournalMaster.InvoiceNo = txtVoucherNo.Text.Trim(); infoJournalMaster.SuffixPrefixId = decJournalSuffixPrefixId; infoJournalMaster.Date = Convert.ToDateTime(txtDate.Text); infoJournalMaster.Narration = txtNarration.Text.Trim(); infoJournalMaster.UserId = PublicVariables._decCurrentUserId; infoJournalMaster.VoucherTypeId = decJournalVoucherTypeId; infoJournalMaster.FinancialYearId = Convert.ToDecimal(PublicVariables._decCurrentFinancialYearId.ToString()); infoJournalMaster.ExtraDate = DateTime.Now; infoJournalMaster.Extra1 = string.Empty; infoJournalMaster.Extra2 = string.Empty; decTotalDebit = Convert.ToDecimal(txtDebitTotal.Text.Trim()); decTotalCredit = Convert.ToDecimal(txtCreditTotal.Text.Trim()); infoJournalMaster.TotalAmount = decTotalDebit; decimal decEffectRow = spJournalMaster.JournalMasterEdit(infoJournalMaster); /**********************JournalDetails Edit********************/ if (decEffectRow > 0) { infoJournalDetails.JournalMasterId = decJournalMasterId; infoJournalDetails.ExtraDate = DateTime.Now; infoJournalDetails.Extra1 = string.Empty; infoJournalDetails.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); spJournalDetails.JournalDetailsDelete(Convert.ToDecimal(str)); spLedgerPosting.LedgerPostDeleteByDetailsId(Convert.ToDecimal(str), strVoucherNo, decJournalVoucherTypeId); } spLedgerPosting.LedgerPostingDeleteByVoucherNoVoucherTypeIdAndLedgerId(strVoucherNo, decJournalVoucherTypeId, 12); //=============================================================================================// decimal decLedgerId = 0; decimal decDebit = 0; decimal decCredit = 0; decimal decJournalDetailsId = 0; int inRowCount = dgvJournalVoucher.RowCount; for (int inI = 0; inI < inRowCount; inI++) { if (dgvJournalVoucher.Rows[inI].Cells["dgvcmbAccountLedger"].Value != null && dgvJournalVoucher.Rows[inI].Cells["dgvcmbAccountLedger"].Value.ToString() != string.Empty) { infoJournalDetails.LedgerId = Convert.ToDecimal(dgvJournalVoucher.Rows[inI].Cells["dgvcmbAccountLedger"].Value.ToString()); decLedgerId = infoJournalDetails.LedgerId; } if (dgvJournalVoucher.Rows[inI].Cells["dgvcmbDrOrCr"].Value != null && dgvJournalVoucher.Rows[inI].Cells["dgvcmbDrOrCr"].Value.ToString() != string.Empty) { //------------------Currency conversion------------------// decSelectedCurrencyRate = spExchangeRate.GetExchangeRateByExchangeRateId(Convert.ToDecimal(dgvJournalVoucher.Rows[inI].Cells["dgvcmbCurrency"].Value)); decAmount = Convert.ToDecimal(dgvJournalVoucher.Rows[inI].Cells["dgvtxtAmount"].Value.ToString()); decConvertRate = decAmount * decSelectedCurrencyRate; //======================================================// if (dgvJournalVoucher.Rows[inI].Cells["dgvcmbDrOrCr"].Value.ToString() == "Dr") { infoJournalDetails.Debit = Convert.ToDecimal(dgvJournalVoucher.Rows[inI].Cells["dgvtxtAmount"].Value.ToString()); infoJournalDetails.Credit = 0; decDebit = decConvertRate; decCredit = infoJournalDetails.Credit; } else { infoJournalDetails.Credit = Convert.ToDecimal(dgvJournalVoucher.Rows[inI].Cells["dgvtxtAmount"].Value.ToString()); infoJournalDetails.Debit = 0; decDebit = infoJournalDetails.Debit; decCredit = decConvertRate; } infoJournalDetails.ExchangeRateId = Convert.ToDecimal(dgvJournalVoucher.Rows[inI].Cells["dgvcmbCurrency"].Value.ToString()); if (dgvJournalVoucher.Rows[inI].Cells["dgvtxtChequeNo"].Value != null && dgvJournalVoucher.Rows[inI].Cells["dgvtxtChequeNo"].Value.ToString() != string.Empty) { infoJournalDetails.ChequeNo = dgvJournalVoucher.Rows[inI].Cells["dgvtxtChequeNo"].Value.ToString(); } else { infoJournalDetails.ChequeNo = string.Empty; } if (dgvJournalVoucher.Rows[inI].Cells["dgvtxtChequeDate"].Value != null && dgvJournalVoucher.Rows[inI].Cells["dgvtxtChequeDate"].Value.ToString() != string.Empty) { infoJournalDetails.ChequeDate = Convert.ToDateTime(dgvJournalVoucher.Rows[inI].Cells["dgvtxtChequeDate"].Value.ToString()); } else { infoJournalDetails.ChequeDate = DateTime.Now; } if (dgvJournalVoucher.Rows[inI].Cells["dgvtxtDetailsId"].Value != null && dgvJournalVoucher.Rows[inI].Cells["dgvtxtDetailsId"].Value.ToString() != string.Empty) { infoJournalDetails.JournalDetailsId = Convert.ToDecimal(dgvJournalVoucher.Rows[inI].Cells["dgvtxtDetailsId"].Value.ToString()); spJournalDetails.JournalDetailsEdit(infoJournalDetails); PartyBalanceAddOrEdit(inI); decJournalDetailsId = infoJournalDetails.JournalDetailsId; decimal decLedgerPostId = Convert.ToDecimal(dgvJournalVoucher.Rows[inI].Cells["dgvtxtLedgerPostingId"].Value.ToString()); LedgerPostingEdit(decLedgerPostId, decLedgerId, decCredit, decDebit, decJournalDetailsId, inI); } else { decJournalDetailsId = spJournalDetails.JournalDetailsAdd(infoJournalDetails); PartyBalanceAddOrEdit(inI); LedgerPosting(decLedgerId, decCredit, decDebit, decJournalDetailsId, inI); } } } DeletePartyBalanceOfRemovedRow(); Messages.UpdatedMessage(); if (cbxPrintAfterSave.Checked) { if (spSettings.SettingsStatusCheck("Printer") == "Dot Matrix") { PrintForDotMatrix(infoJournalMaster.JournalMasterId); } else { Print(infoJournalMaster.JournalMasterId); } } if (journalRegisterObj != null) { this.Close(); journalRegisterObj.Enabled = true; } else if (frmJournalReportObj != null) { this.Close(); frmJournalReportObj.Enabled = true; } else if (frmDayBookObj != null) { this.Close(); } else if (frmBillallocationObj != null) { this.Close(); } } //----------------If print after save is enable-----------------------// //===================================================================// } catch (Exception ex) { MessageBox.Show("JV16:" + ex.Message, "OpenMiracle", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
/// <summary> /// On double clicking the cell in grid, it loads the corresponding Voucher to update or delete the entries /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void dgvBillAllocation_CellDoubleClick(object sender, DataGridViewCellEventArgs e) { try { if (e.RowIndex != -1) { decVoucherTypeId = Convert.ToDecimal(dgvBillAllocation.CurrentRow.Cells["voucherTypeId"].Value.ToString()); strTypeOfVoucher = dgvBillAllocation.CurrentRow.Cells["typeOfVoucher"].Value.ToString(); strVoucherNo = dgvBillAllocation.CurrentRow.Cells["voucherNo"].Value.ToString(); if (strTypeOfVoucher == "PDC Payable") { PDCPayableMasterSP sp = new PDCPayableMasterSP(); decimal decMasterId = sp.PdcPayableMasterIdView(decVoucherTypeId, strVoucherNo); frmPdcPayable frmpdcPayableObj = new frmPdcPayable(); frmpdcPayableObj = Application.OpenForms["frmPdcPayable"] as frmPdcPayable; if (frmpdcPayableObj == null) { frmpdcPayableObj = new frmPdcPayable(); frmpdcPayableObj.MdiParent = formMDI.MDIObj; frmpdcPayableObj.CallFromBillAllocation(this, decMasterId); } } if (strTypeOfVoucher == "PDC Receivable") { PDCReceivableMasterSP sp = new PDCReceivableMasterSP(); decimal decMasterId = sp.PdcReceivableMasterIdView(decVoucherTypeId, strVoucherNo); frmPdcReceivable frmPdcReceivableObj = new frmPdcReceivable(); frmPdcReceivableObj = Application.OpenForms["frmPdcReceivable"] as frmPdcReceivable; if (frmPdcReceivableObj == null) { frmPdcReceivableObj = new frmPdcReceivable(); frmPdcReceivableObj.MdiParent = formMDI.MDIObj; frmPdcReceivableObj.CallFromBillAllocation(this, decMasterId); } } if (strTypeOfVoucher == "Payment Voucher") { PaymentMasterSP sp = new PaymentMasterSP(); decimal decMasterId = sp.paymentMasterIdView(decVoucherTypeId, strVoucherNo); frmPaymentVoucher frmPaymentVoucherObj = new frmPaymentVoucher(); frmPaymentVoucherObj = Application.OpenForms["frmPaymentVoucher"] as frmPaymentVoucher; if (frmPaymentVoucherObj == null) { frmPaymentVoucherObj = new frmPaymentVoucher(); frmPaymentVoucherObj.MdiParent = formMDI.MDIObj; frmPaymentVoucherObj.CallFromBillAllocation(this, decMasterId); } } if (strTypeOfVoucher == "Receipt Voucher") { ReceiptMasterSP sp = new ReceiptMasterSP(); decimal decMasterId = sp.ReceiptMasterIdView(decVoucherTypeId, strVoucherNo); frmReceiptVoucher frmReceiptVoucherObj = new frmReceiptVoucher(); frmReceiptVoucherObj = Application.OpenForms["frmReceiptVoucher"] as frmReceiptVoucher; if (frmReceiptVoucherObj == null) { frmReceiptVoucherObj = new frmReceiptVoucher(); frmReceiptVoucherObj.MdiParent = formMDI.MDIObj; frmReceiptVoucherObj.CallFromBillAllocation(this, decMasterId); } } if (strTypeOfVoucher == "Journal Voucher") { JournalMasterSP sp = new JournalMasterSP(); decimal decMasterId = sp.JournalMasterIdView(decVoucherTypeId, strVoucherNo); frmJournalVoucher frmJournalVoucherObj = new frmJournalVoucher(); frmJournalVoucherObj = Application.OpenForms["frmJournalVoucher"] as frmJournalVoucher; if (frmJournalVoucherObj == null) { frmJournalVoucherObj = new frmJournalVoucher(); frmJournalVoucherObj.MdiParent = formMDI.MDIObj; frmJournalVoucherObj.CallFromBillAllocation(this, decMasterId); } } if (strTypeOfVoucher == "Credit Note") { CreditNoteMasterSP sp = new CreditNoteMasterSP(); decimal decMasterId = sp.CreditNoteMasterIdView(decVoucherTypeId, strVoucherNo); frmCreditNote frmCreditNoteObj = new frmCreditNote(); frmCreditNoteObj = Application.OpenForms["frmCreditNote"] as frmCreditNote; if (frmCreditNoteObj == null) { frmCreditNoteObj = new frmCreditNote(); frmCreditNoteObj.MdiParent = formMDI.MDIObj; frmCreditNoteObj.CallFromBillAllocation(this, decMasterId); } } if (strTypeOfVoucher == "Debit Note") { DebitNoteMasterSP sp = new DebitNoteMasterSP(); decimal decMasterId = sp.DebitNoteMasterIdView(decVoucherTypeId, strVoucherNo); frmDebitNote frmDebitNoteObj = new frmDebitNote(); frmDebitNoteObj = Application.OpenForms["frmDebitNote"] as frmDebitNote; if (frmDebitNoteObj == null) { frmDebitNoteObj = new frmDebitNote(); frmDebitNoteObj.MdiParent = formMDI.MDIObj; frmDebitNoteObj.CallFromBillAllocation(this, decMasterId); } } } } catch (Exception ex) { formMDI.infoError.ErrorString = "BA15:" + ex.Message; } }
/// <summary> /// On double clicking the cell in grid, it loads the corresponding Voucher to update or delete the entries /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void dgvBillAllocation_CellDoubleClick(object sender, DataGridViewCellEventArgs e) { try { if (e.RowIndex != -1) { decVoucherTypeId = Convert.ToDecimal(dgvBillAllocation.CurrentRow.Cells["voucherTypeId"].Value.ToString()); strTypeOfVoucher = dgvBillAllocation.CurrentRow.Cells["typeOfVoucher"].Value.ToString(); strVoucherNo = dgvBillAllocation.CurrentRow.Cells["voucherNo"].Value.ToString(); if (strTypeOfVoucher == "PDC Payable") { PDCPayableMasterSP sp = new PDCPayableMasterSP(); decimal decMasterId = sp.PdcPayableMasterIdView(decVoucherTypeId, strVoucherNo); frmPdcPayable frmpdcPayableObj = new frmPdcPayable(); frmpdcPayableObj = Application.OpenForms["frmPdcPayable"] as frmPdcPayable; if (frmpdcPayableObj == null) { frmpdcPayableObj = new frmPdcPayable(); frmpdcPayableObj.MdiParent = formMDI.MDIObj; frmpdcPayableObj.CallFromBillAllocation(this, decMasterId); } } if (strTypeOfVoucher == "PDC Receivable") { PDCReceivableMasterSP sp = new PDCReceivableMasterSP(); decimal decMasterId = sp.PdcReceivableMasterIdView(decVoucherTypeId, strVoucherNo); frmPdcReceivable frmPdcReceivableObj = new frmPdcReceivable(); frmPdcReceivableObj = Application.OpenForms["frmPdcReceivable"] as frmPdcReceivable; if (frmPdcReceivableObj == null) { frmPdcReceivableObj = new frmPdcReceivable(); frmPdcReceivableObj.MdiParent = formMDI.MDIObj; frmPdcReceivableObj.CallFromBillAllocation(this, decMasterId); } } if (strTypeOfVoucher == "Payment Voucher") { PaymentMasterSP sp = new PaymentMasterSP(); decimal decMasterId = sp.paymentMasterIdView(decVoucherTypeId, strVoucherNo); frmPaymentVoucher frmPaymentVoucherObj = new frmPaymentVoucher(); frmPaymentVoucherObj = Application.OpenForms["frmPaymentVoucher"] as frmPaymentVoucher; if (frmPaymentVoucherObj == null) { frmPaymentVoucherObj = new frmPaymentVoucher(); frmPaymentVoucherObj.MdiParent = formMDI.MDIObj; frmPaymentVoucherObj.CallFromBillAllocation(this, decMasterId); } } if (strTypeOfVoucher == "Receipt Voucher") { ReceiptMasterSP sp = new ReceiptMasterSP(); decimal decMasterId = sp.ReceiptMasterIdView(decVoucherTypeId, strVoucherNo); frmReceiptVoucher frmReceiptVoucherObj = new frmReceiptVoucher(); frmReceiptVoucherObj = Application.OpenForms["frmReceiptVoucher"] as frmReceiptVoucher; if (frmReceiptVoucherObj == null) { frmReceiptVoucherObj = new frmReceiptVoucher(); frmReceiptVoucherObj.MdiParent = formMDI.MDIObj; frmReceiptVoucherObj.CallFromBillAllocation(this, decMasterId); } } if (strTypeOfVoucher == "Journal Voucher") { JournalMasterSP sp = new JournalMasterSP(); decimal decMasterId = sp.JournalMasterIdView(decVoucherTypeId, strVoucherNo); frmJournalVoucher frmJournalVoucherObj = new frmJournalVoucher(); frmJournalVoucherObj = Application.OpenForms["frmJournalVoucher"] as frmJournalVoucher; if (frmJournalVoucherObj == null) { frmJournalVoucherObj = new frmJournalVoucher(); frmJournalVoucherObj.MdiParent = formMDI.MDIObj; frmJournalVoucherObj.CallFromBillAllocation(this, decMasterId); } } if (strTypeOfVoucher == "Credit Note") { CreditNoteMasterSP sp = new CreditNoteMasterSP(); decimal decMasterId = sp.CreditNoteMasterIdView(decVoucherTypeId, strVoucherNo); frmCreditNote frmCreditNoteObj = new frmCreditNote(); frmCreditNoteObj = Application.OpenForms["frmCreditNote"] as frmCreditNote; if (frmCreditNoteObj == null) { frmCreditNoteObj = new frmCreditNote(); frmCreditNoteObj.MdiParent = formMDI.MDIObj; frmCreditNoteObj.CallFromBillAllocation(this, decMasterId); } } if (strTypeOfVoucher == "Debit Note") { DebitNoteMasterSP sp = new DebitNoteMasterSP(); decimal decMasterId = sp.DebitNoteMasterIdView(decVoucherTypeId, strVoucherNo); frmDebitNote frmDebitNoteObj = new frmDebitNote(); frmDebitNoteObj = Application.OpenForms["frmDebitNote"] as frmDebitNote; if (frmDebitNoteObj == null) { frmDebitNoteObj = new frmDebitNote(); frmDebitNoteObj.MdiParent = formMDI.MDIObj; frmDebitNoteObj.CallFromBillAllocation(this, decMasterId); } } } } catch (Exception ex) { MessageBox.Show("BA:15" + ex.Message, "OpenMiracle", MessageBoxButtons.OK, MessageBoxIcon.Information); } }