/// <summary> /// Function to set the calculation method by checking the settings /// </summary> public void CalculationMethod() { try { SettingsInfo InfoSettings = new SettingsInfo(); SettingsSP SpSettings = new SettingsSP(); //--------------- Selection Of Calculation Method According To Settings ------------------// if (SpSettings.SettingsStatusCheck("StockValueCalculationMethod") == "FIFO") { calculationMethod = "FIFO"; } else if (SpSettings.SettingsStatusCheck("StockValueCalculationMethod") == "Average Cost") { calculationMethod = "Average Cost"; } else if (SpSettings.SettingsStatusCheck("StockValueCalculationMethod") == "High Cost") { calculationMethod = "High Cost"; } else if (SpSettings.SettingsStatusCheck("StockValueCalculationMethod") == "Low Cost") { calculationMethod = "Low Cost"; } else if (SpSettings.SettingsStatusCheck("StockValueCalculationMethod") == "Last Purchase Rate") { calculationMethod = "Last Purchase Rate"; } } catch (Exception ex) { MessageBox.Show("AGWREP17:" + ex.Message, "OpenMiracle", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
/// <summary> /// Function to fill Datagridview after calculation /// </summary> public void GridFill() { try { if (!isFormLoad) { DateValidation objValidation = new DateValidation(); objValidation.DateValidationFunction(txtFundFlowFromDate); if (txtFundFlowFromDate.Text == string.Empty) { txtFundFlowFromDate.Text = PublicVariables._dtFromDate.ToString("dd-MMM-yyyy"); } objValidation.DateValidationFunction(txtFundflowToDate); if (txtFundflowToDate.Text == string.Empty) { txtFundflowToDate.Text = PublicVariables._dtToDate.ToString("dd-MMM-yyyy"); } //-------------------------------------First gridfill-------------------------------------// DateTime strFromDate = Convert.ToDateTime(txtFundFlowFromDate.Text.ToString()); DateTime strTodate = Convert.ToDateTime(txtFundflowToDate.Text.ToString()); FinancialStatementSP spFinancial = new FinancialStatementSP(); DataSet dsetFinancial = new DataSet(); SettingsInfo InfoSettings = new SettingsInfo(); SettingsSP SpSettings = new SettingsSP(); //--------------- Selection Of Calculation Method According To Settings ------------------// if (SpSettings.SettingsStatusCheck("StockValueCalculationMethod") == "FIFO") { strCalculationMethod = "FIFO"; } else if (SpSettings.SettingsStatusCheck("StockValueCalculationMethod") == "Average Cost") { strCalculationMethod = "Average Cost"; } else if (SpSettings.SettingsStatusCheck("StockValueCalculationMethod") == "High Cost") { strCalculationMethod = "High Cost"; } else if (SpSettings.SettingsStatusCheck("StockValueCalculationMethod") == "Low Cost") { strCalculationMethod = "Low Cost"; } else if (SpSettings.SettingsStatusCheck("StockValueCalculationMethod") == "Last Purchase Rate") { strCalculationMethod = "Last Purchase Rate"; } dsetFinancial = spFinancial.FundFlow(strFromDate, strTodate); DataTable dtbl = new DataTable(); Font newFont = new Font(dgvFundFlow.Font, FontStyle.Bold); CurrencyInfo InfoCurrency = new CurrencyInfo(); CurrencySP SpCurrency = new CurrencySP(); InfoCurrency = SpCurrency.CurrencyView(1); int inDecimalPlaces = InfoCurrency.NoOfDecimalPlaces; dgvFundFlow.Rows.Clear(); ////-------------------Source-------------------------------------------------------------- dtbl = dsetFinancial.Tables[0]; foreach (DataRow rw in dtbl.Rows) { dgvFundFlow.Rows.Add(); dgvFundFlow.Rows[dgvFundFlow.Rows.Count - 1].Cells["dgvtxtSource"].Value = rw["Name"].ToString(); dgvFundFlow.Rows[dgvFundFlow.Rows.Count - 1].Cells["dgvtxtAmount1"].Value = rw["Balance"].ToString(); dgvFundFlow.Rows[dgvFundFlow.Rows.Count - 1].Cells["dgvtxtgroupId1"].Value = rw["ID"].ToString(); } decimal dcTotalAsset = 0; if (dtbl.Rows.Count > 0) { dcTotalAsset = decimal.Parse(dtbl.Compute("Sum(Balance)", string.Empty).ToString()); } ////-----------------Application------------------------------------------------------------ dtbl = new DataTable(); dtbl = dsetFinancial.Tables[1]; int index = 0; foreach (DataRow rw in dtbl.Rows) { if (index < dgvFundFlow.Rows.Count) { dgvFundFlow.Rows[index].Cells["dgvtxtApplication"].Value = rw["Name"].ToString(); dgvFundFlow.Rows[index].Cells["dgvtxtAmount2"].Value = rw["Balance"].ToString(); dgvFundFlow.Rows[index].Cells["dgvtxtgroupId2"].Value = rw["ID"].ToString(); } else { dgvFundFlow.Rows.Add(); dgvFundFlow.Rows[dgvFundFlow.Rows.Count - 1].Cells["dgvtxtApplication"].Value = rw["Name"].ToString(); dgvFundFlow.Rows[dgvFundFlow.Rows.Count - 1].Cells["dgvtxtAmount2"].Value = rw["Balance"].ToString(); dgvFundFlow.Rows[dgvFundFlow.Rows.Count - 1].Cells["dgvtxtgroupId2"].Value = rw["ID"].ToString(); } index++; } decimal dcTotalLiability = 0; if (dtbl.Rows.Count > 0) { dcTotalLiability = Convert.ToDecimal(dtbl.Compute("Sum(Balance)", string.Empty).ToString()); } //-------------------- Closing Stock -----------------------// With Calculation dcClosingStock = spFinancial.StockValueGetOnDate(Convert.ToDateTime(txtFundflowToDate.Text), strCalculationMethod, false, false); dcClosingStock = Math.Round(dcClosingStock, inDecimalPlaces); //---------------------Opening Stock----------------------- decimal dcOpeninggStock = spFinancial.StockValueGetOnDate(Convert.ToDateTime(txtFundFlowFromDate.Text), strCalculationMethod, true, false); //------------- Profit Or Loss -----------// With Calculation decimal dcProfit = 0; DataSet dsetProfitAndLoss = new DataSet(); dsetProfitAndLoss = spFinancial.ProfitAndLossAnalysisUpToaDateForBalansheet(Convert.ToDateTime(txtFundFlowFromDate.Text), Convert.ToDateTime(txtFundflowToDate.Text)); DataTable dtblProfit = new DataTable(); dtblProfit = dsetProfitAndLoss.Tables[0]; for (int i = 0; i < dsetProfitAndLoss.Tables.Count; ++i) { dtbl = dsetProfitAndLoss.Tables[i]; decimal dcSum = 0; if (i == 0 || (i % 2) == 0) { if (dtbl.Rows.Count > 0) { dcSum = Convert.ToDecimal(dtbl.Compute("Sum(Debit)", string.Empty).ToString()); dcProfit = dcProfit - dcSum; } } else { if (dtbl.Rows.Count > 0) { dcSum = Convert.ToDecimal(dtbl.Compute("Sum(Credit)", string.Empty).ToString()); dcProfit = dcProfit + dcSum; } } } //---------------------NetProfit/NetLoss Calculation-------------------------- dcProfit = dcProfit + dcClosingStock - dcOpeninggStock; if (dcProfit > 0) { //------------ Liability ------------// dgvFundFlow.Rows.Add(); dgvFundFlow.Rows[dgvFundFlow.Rows.Count - 1].Cells["dgvtxtSource"].Value = "Net Profit"; dgvFundFlow.Rows[dgvFundFlow.Rows.Count - 1].Cells["dgvtxtAmount1"].Value = Math.Round(dcProfit, inDecimalPlaces); dgvFundFlow.Rows[dgvFundFlow.Rows.Count - 1].Cells["dgvtxtAmount1"].Style.ForeColor = Color.Green; dgvFundFlow.Rows[dgvFundFlow.Rows.Count - 1].Cells["dgvtxtSource"].Style.ForeColor = Color.Green; //dcTotalLiability += dcProfit; } else { //-------------- Asset ---------------// dgvFundFlow.Rows.Add(); dgvFundFlow.Rows[dgvFundFlow.Rows.Count - 1].Cells["dgvtxtApplication"].Value = "Net Loss"; dgvFundFlow.Rows[dgvFundFlow.Rows.Count - 1].Cells["dgvtxtAmount2"].Value = -Math.Round(dcProfit, inDecimalPlaces); dgvFundFlow.Rows[dgvFundFlow.Rows.Count - 1].Cells["dgvtxtAmount2"].Style.ForeColor = Color.Red; dgvFundFlow.Rows[dgvFundFlow.Rows.Count - 1].Cells["dgvtxtApplication"].Style.ForeColor = Color.Red; } if (dcProfit > 0) { dcTotalAsset += (dcProfit); } else { dcTotalLiability += (-dcProfit); } decimal dcTotalValue = dcTotalAsset; dgvFundFlow.Rows.Add(); dgvFundFlow.Rows[dgvFundFlow.Rows.Count - 1].Cells["dgvtxtAmount1"].Value = "_______________________"; dgvFundFlow.Rows[dgvFundFlow.Rows.Count - 1].Cells["dgvtxtAmount2"].Value = "_______________________"; dgvFundFlow.Rows.Add(); dgvFundFlow.Rows[dgvFundFlow.Rows.Count - 1].DefaultCellStyle.Font = newFont; dgvFundFlow.Rows[dgvFundFlow.Rows.Count - 1].Cells["dgvtxtApplication"].Value = "Total"; dgvFundFlow.Rows[dgvFundFlow.Rows.Count - 1].Cells["dgvtxtSource"].Value = "Total"; dgvFundFlow.Rows[dgvFundFlow.Rows.Count - 1].Cells["dgvtxtAmount1"].Value = Math.Round((dcTotalAsset), inDecimalPlaces); dgvFundFlow.Rows[dgvFundFlow.Rows.Count - 1].Cells["dgvtxtAmount2"].Value = Math.Round((dcTotalLiability), inDecimalPlaces); //----------------------------------------Second gridfill---------------------------------------------- //--------------------------------------Current Assets------------------------------------------- Font newFont2 = new Font(dgvFundFlow2.Font, FontStyle.Bold); dgvFundFlow2.Rows.Clear(); dtbl = dsetFinancial.Tables[3]; decimal decWC = 0; foreach (DataRow rw in dtbl.Rows) { dgvFundFlow2.Rows.Add(); dgvFundFlow2.Rows[dgvFundFlow2.Rows.Count - 1].Cells["dgvtxtgroupId"].Value = rw["ID"].ToString(); dgvFundFlow2.Rows[dgvFundFlow2.Rows.Count - 1].Cells["dgvtxtParticulars"].Value = rw["Name"].ToString(); dgvFundFlow2.Rows[dgvFundFlow2.Rows.Count - 1].Cells["dgvtxtOpeningBalance"].Value = rw["OpeningBalance"].ToString() + "Dr"; dgvFundFlow2.Rows[dgvFundFlow2.Rows.Count - 1].Cells["dgvtxtop"].Value = rw["OpeningBalance"].ToString(); dgvFundFlow2.Rows[dgvFundFlow2.Rows.Count - 1].Cells["dgvtxtcb"].Value = rw["ClosingBalance"].ToString(); decimal decOB = Convert.ToDecimal(rw["OpeningBalance"].ToString()); decimal decCB = Convert.ToDecimal(rw["ClosingBalance"].ToString()); decCB = decCB + dcClosingStock; if (decCB > 0) { dgvFundFlow2.Rows[dgvFundFlow2.Rows.Count - 1].Cells["dgvtxtClosingBalance"].Value = Math.Round(decCB, inDecimalPlaces).ToString() + "Dr"; dgvFundFlow2.Rows[dgvFundFlow2.Rows.Count - 1].Cells["dgvtxtcb"].Value = Math.Round(decCB, inDecimalPlaces).ToString(); } else { decCB = -1 * decCB; dgvFundFlow2.Rows[dgvFundFlow2.Rows.Count - 1].Cells["dgvtxtClosingBalance"].Value = Math.Round(decCB, inDecimalPlaces).ToString() + "Dr"; dgvFundFlow2.Rows[dgvFundFlow2.Rows.Count - 1].Cells["dgvtxtcb"].Value = Math.Round(decCB, inDecimalPlaces).ToString(); } decWC = decOB - decCB; dgvFundFlow2.Rows[dgvFundFlow2.Rows.Count - 1].Cells["dgvtxtWorkingCapitalIncrease"].Value = Math.Round(decWC, inDecimalPlaces).ToString(); } //--------------------------------------Current Liability------------------------------------------- dtbl = dsetFinancial.Tables[5]; decimal decWCCL = 0; foreach (DataRow rw in dtbl.Rows) { dgvFundFlow2.Rows.Add(); dgvFundFlow2.Rows[dgvFundFlow2.Rows.Count - 1].Cells["dgvtxtgroupId"].Value = rw["ID"].ToString(); dgvFundFlow2.Rows[dgvFundFlow2.Rows.Count - 1].Cells["dgvtxtParticulars"].Value = rw["Name"].ToString(); decimal decOp = Convert.ToDecimal(rw["OpeningBalance"].ToString()); decimal decCb = Convert.ToDecimal(rw["ClosingBalance"].ToString()); dgvFundFlow2.Rows[dgvFundFlow2.Rows.Count - 1].Cells["dgvtxtOpeningBalance"].Value = decOp.ToString() + "Cr"; dgvFundFlow2.Rows[dgvFundFlow2.Rows.Count - 1].Cells["dgvtxtop"].Value = rw["OpeningBalance"].ToString(); dgvFundFlow2.Rows[dgvFundFlow2.Rows.Count - 1].Cells["dgvtxtcb"].Value = rw["ClosingBalance"].ToString(); if (decCb > 0) { dgvFundFlow2.Rows[dgvFundFlow2.Rows.Count - 1].Cells["dgvtxtClosingBalance"].Value = decCb.ToString() + "Cr"; dgvFundFlow2.Rows[dgvFundFlow2.Rows.Count - 1].Cells["dgvtxtcb"].Value = decCb.ToString(); } else { decCb = -1 * decCb; dgvFundFlow2.Rows[dgvFundFlow2.Rows.Count - 1].Cells["dgvtxtClosingBalance"].Value = decCb.ToString() + "Cr"; dgvFundFlow2.Rows[dgvFundFlow2.Rows.Count - 1].Cells["dgvtxtcb"].Value = decCb.ToString(); } decimal decOB = Convert.ToDecimal(rw["OpeningBalance"].ToString()); decimal decCB = Convert.ToDecimal(rw["ClosingBalance"].ToString()); decWCCL = decOp - decCb; dgvFundFlow2.Rows[dgvFundFlow2.Rows.Count - 1].Cells["dgvtxtWorkingCapitalIncrease"].Value = decWCCL.ToString(); } //-----------------Calculating Working capital--------------- decimal decOpen = 0; decimal decClose = 0; decimal decWork = 0; decOpen = Convert.ToDecimal(dgvFundFlow2.Rows[0].Cells[3].Value.ToString()) - Convert.ToDecimal(dgvFundFlow2.Rows[1].Cells[3].Value.ToString()); decClose = Convert.ToDecimal(dgvFundFlow2.Rows[0].Cells[5].Value.ToString()) - Convert.ToDecimal(dgvFundFlow2.Rows[1].Cells[5].Value.ToString()); decWork = Convert.ToDecimal(dgvFundFlow2.Rows[0].Cells[6].Value.ToString()) - Convert.ToDecimal(dgvFundFlow2.Rows[1].Cells[6].Value.ToString()); decimal decW1 = Convert.ToDecimal(dgvFundFlow2.Rows[0].Cells[6].Value.ToString()); decimal decW2 = Convert.ToDecimal(dgvFundFlow2.Rows[1].Cells[6].Value.ToString()); dgvFundFlow2.Rows.Add(); dgvFundFlow2.Rows[dgvFundFlow2.Rows.Count - 1].Cells["dgvtxtParticulars"].Value = "Working Capital"; if (decOpen > 0) { dgvFundFlow2.Rows[dgvFundFlow2.Rows.Count - 1].Cells["dgvtxtOpeningBalance"].Value = decOpen.ToString() + "Dr"; } else { decOpen *= -1; dgvFundFlow2.Rows[dgvFundFlow2.Rows.Count - 1].Cells["dgvtxtOpeningBalance"].Value = decOpen.ToString() + "Cr"; } if (decClose > 0) { dgvFundFlow2.Rows[dgvFundFlow2.Rows.Count - 1].Cells["dgvtxtClosingBalance"].Value = decClose.ToString() + "Dr"; } else { decClose *= -1; dgvFundFlow2.Rows[dgvFundFlow2.Rows.Count - 1].Cells["dgvtxtClosingBalance"].Value = decClose.ToString() + "Cr"; } dgvFundFlow2.Rows[dgvFundFlow2.Rows.Count - 1].Cells["dgvtxtWorkingCapitalIncrease"].Value = decWork.ToString(); } } catch (Exception ex) { MessageBox.Show("FF:06" + ex.Message, "OpenMiracle", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
/// <summary> /// Calls the corresponding voucher on click in Quick Launch menu /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btn1_Click(object sender, EventArgs e) { this.SendToBack(); Form frmObj = null; Form open = null; SettingsSP spSettings = new SettingsSP(); try { string str = ((Button)sender).Text; btnFocus.Focus(); switch (str) { case "Contra Voucher": formMDI.MDIObj.ContraVoucherClick(); break; case "Payment Voucher": formMDI.MDIObj.PaymentVoucherClick(); break; case "Receipt Voucher": formMDI.MDIObj.ReceiptVoucherClick(); break; case "Journal Voucher": formMDI.MDIObj.JournalVoucherClick(); break; case "Sales Invoice": formMDI.MDIObj.SalesInvoiceClick(); break; case "Purchase Invoice": formMDI.MDIObj.PurchaseInvoiceClick(); break; case "POS": formMDI.MDIObj.POSClick(); break; case "PDC Payable": formMDI.MDIObj.PDCPayableClick(); break; case "PDC Receivable": formMDI.MDIObj.PDCReceivableClick(); break; case "PDC Clearance": formMDI.MDIObj.PDCClearenceClick(); break; case "Bank Reconciliation": frmObj = new frmBankReconciliation(); open = Application.OpenForms["frmBankReconciliation"] as frmBankReconciliation; break; case "Purchase Order": formMDI.MDIObj.PurchaseOrderClick(); break; case "Material Reciept": formMDI.MDIObj.MaterialReceiptClick(); break; case "Rejection Out": formMDI.MDIObj.RejectionOutClick(); break; case "Purchase Return": formMDI.MDIObj.PurchaseReturnClick(); break; case "Sales Quotation": formMDI.MDIObj.SalesQuotationClick(); break; case "Sales Order": formMDI.MDIObj.SalesOrderClick(); break; case "Delivery Note": formMDI.MDIObj.DeliveryNoteClick(); break; case "Rejection In": formMDI.MDIObj.RejectionInClick(); break; case "Sales Return": formMDI.MDIObj.SalesReturnClick(); break; case "Physical Stock": formMDI.MDIObj.PhysicalStockClick(); break; case "Service Voucher": formMDI.MDIObj.ServiceVoucherClick(); break; case "Credit Note": formMDI.MDIObj.CreditNoteClick(); break; case "Debit Note": formMDI.MDIObj.DebitNoteClick(); break; case "Stock Journal": //frmObj = new frmStockJournal(); //open = Application.OpenForms["frmStockJournal"] as frmStockJournal; formMDI.MDIObj.StockJournalClick(); break; case "Bill Allocation": frmObj = new frmBillallocation(); open = Application.OpenForms["frmBillallocation"] as frmBillallocation; break; case "Account Group": frmObj = new frmAccountGroup(); open = Application.OpenForms["frmAccountGroup"] as frmAccountGroup; break; case "Account Ledger": frmObj = new frmAccountLedger(); open = Application.OpenForms["frmAccountLedger"] as frmAccountLedger; break; case "Multiple Account Ledgers": frmObj = new frmmultipleAccountLedger(); open = Application.OpenForms["frmmultipleAccountLedger"] as frmmultipleAccountLedger; break; case "Product Group": frmObj = new frmProductGroup(); open = Application.OpenForms["frmProductGroup"] as frmProductGroup; break; case "Product Creation": frmObj = new frmProductCreation(); open = Application.OpenForms["frmProductCreation"] as frmProductCreation; break; case "Multiple Product Creation": frmObj = new frmMultipleProductCreation(); open = Application.OpenForms["frmMultipleProductCreation"] as frmMultipleProductCreation; break; case "Batch": if (spSettings.SettingsStatusCheck("AllowBatch") == "Yes") { frmObj = new frmBatch(); open = Application.OpenForms["frmBatch"] as frmBatch; } break; case "Brand": frmObj = new frmBrand(); open = Application.OpenForms["frmBrand"] as frmBrand; break; case "Model Number": if (spSettings.SettingsStatusCheck("AllowModelNo") == "Yes") { frmObj = new frmModalNo(); open = Application.OpenForms["frmModalNo"] as frmModalNo; } break; case "Size": if (spSettings.SettingsStatusCheck("AllowSize") == "Yes") { frmObj = new frmSize(); open = Application.OpenForms["frmSize"] as frmSize; } break; case "Unit": frmObj = new frmUnit(); open = Application.OpenForms["frmUnit"] as frmUnit; break; case "Godown": if (spSettings.SettingsStatusCheck("AllowGodown") == "Yes") { frmObj = new frmGodown(); open = Application.OpenForms["frmGodown"] as frmGodown; } break; case "Rack": if (spSettings.SettingsStatusCheck("AllowRack") == "Yes") { frmObj = new frmRack(); open = Application.OpenForms["frmRack"] as frmRack; } break; case "Pricing Level": frmObj = new frmPricingLevel(); open = Application.OpenForms["frmPricingLevel"] as frmPricingLevel; break; case "Price List": frmObj = new frmPriceList(); open = Application.OpenForms["frmPriceList"] as frmPriceList; break; case "Standard Rate": frmObj = new frmStandardRate(); open = Application.OpenForms["frmStandardRate"] as frmStandardRate; break; case "Tax": if (spSettings.SettingsStatusCheck("Tax") == "Yes") { frmObj = new frmTax(); open = Application.OpenForms["frmTax"] as frmTax; } break; case "Currency": if (spSettings.SettingsStatusCheck("MultiCurrency") == "Yes") { frmObj = new frmCurrency(); open = Application.OpenForms["frmCurrency"] as frmCurrency; } break; case "Exchange Rate": frmObj = new frmExchangeRate(); open = Application.OpenForms["frmExchangeRate"] as frmExchangeRate; break; case "Service Category": frmObj = new frmServiceCategory(); open = Application.OpenForms["frmServiceCategory"] as frmServiceCategory; break; case "Services": frmObj = new frmServices(); open = Application.OpenForms["frmServices"] as frmServices; break; case "Voucher Type": frmObj = new frmVoucherType(); open = Application.OpenForms["frmVoucherType"] as frmVoucherType; break; case "Area": frmObj = new frmArea(); open = Application.OpenForms["frmArea"] as frmArea; break; case "Route": frmObj = new frmRoute(); open = Application.OpenForms["frmRoute"] as frmRoute; break; case "Counter": frmObj = new frmCounter(); open = Application.OpenForms["frmCounter"] as frmCounter; break; case "Product Register": frmObj = new frmProductRegister(); open = Application.OpenForms["frmProductRegister"] as frmProductRegister; break; case "Salesman": frmObj = new frmSalesman(); open = Application.OpenForms["frmSalesman"] as frmSalesman; break; case "Contra Register": frmObj = new frmContraRegister(); open = Application.OpenForms["frmContraRegister"] as frmContraRegister; break; case "Payment Register": frmObj = new frmPaymentRegister(); open = Application.OpenForms["frmPaymentRegister"] as frmPaymentRegister; break; case "Receipt Register": frmObj = new frmReceiptRegister(); open = Application.OpenForms["frmReceiptRegister"] as frmReceiptRegister; break; case "Journal Register": frmObj = new frmJournalRegister(); open = Application.OpenForms["frmJournalRegister"] as frmJournalRegister; break; case "PDC Payable Register": frmObj = new frmPDCPayableRegister(); open = Application.OpenForms["frmPDCPayableRegister"] as frmPDCPayableRegister; break; case "PDC Receivable Register": frmObj = new frmPDCReceivableRegister(); open = Application.OpenForms["frmPDCReceivableRegister"] as frmPDCReceivableRegister; break; case "PDC Clearance Register": frmObj = new frmPdcClearanceRegister(); open = Application.OpenForms["frmPdcClearanceRegister"] as frmPdcClearanceRegister; break; case "Purchase Order Register": frmObj = new frmPurchaseOrderRegister(); open = Application.OpenForms["frmPurchaseOrderRegister"] as frmPurchaseOrderRegister; break; case "Material Receipt Register": frmObj = new frmMaterialReceiptRegister(); open = Application.OpenForms["frmMaterialReceiptRegister"] as frmMaterialReceiptRegister; break; case "Rejection Out Register": frmObj = new frmRejectionOutRegister(); open = Application.OpenForms["frmRejectionOutRegister"] as frmRejectionOutRegister; break; case "Purchase Invoice Register": frmObj = new frmPurchaseInvoiceRegister(); open = Application.OpenForms["frmPurchaseInvoiceRegister"] as frmPurchaseInvoiceRegister; break; case "Purchase Return Register": frmObj = new frmPurchaseReturnRegister(); open = Application.OpenForms["frmPurchaseReturnRegister"] as frmPurchaseReturnRegister; break; case "Sales Quotation Register": frmObj = new frmSalesQuotationRegister(); open = Application.OpenForms["frmSalesQuotationRegister"] as frmSalesQuotationRegister; break; case "Sales Order Register": frmObj = new frmSalesOrderRegister(); open = Application.OpenForms["frmSalesOrderRegister"] as frmSalesOrderRegister; break; case "Delivery Note Register": frmObj = new frmDeliveryNoteRegister(); open = Application.OpenForms["frmDeliveryNoteRegister"] as frmDeliveryNoteRegister; break; case "Rejection In Register": frmObj = new frmRejectionInRegister(); open = Application.OpenForms["frmRejectionInRegister"] as frmRejectionInRegister; break; case "Sales Invoice Register": frmObj = new frmSalesInvoiceRegister(); open = Application.OpenForms["frmSalesInvoiceRegister"] as frmSalesInvoiceRegister; break; case "Sales Return Register": frmObj = new frmSalesReturnRegister(); open = Application.OpenForms["frmSalesReturnRegister"] as frmSalesReturnRegister; break; case "Physical Stock Register": frmObj = new frmPhysicalStockRegister(); open = Application.OpenForms["frmPhysicalStockRegister"] as frmPhysicalStockRegister; break; case "Service Voucher Register": frmObj = new frmServiceVoucherRegister(); open = Application.OpenForms["frmServiceVoucherRegister"] as frmServiceVoucherRegister; break; case "Credit Note Register": frmObj = new frmCreditNoteRegister(); open = Application.OpenForms["frmCreditNoteRegister"] as frmCreditNoteRegister; break; case "Debit Note Register": frmObj = new frmDebitNoteRegister(); open = Application.OpenForms["frmDebitNoteRegister"] as frmDebitNoteRegister; break; case "Stock Journal Register": frmObj = new frmStockJournalRegister(); open = Application.OpenForms["frmStockJournalRegister"] as frmStockJournalRegister; break; case "Designation": if (spSettings.SettingsStatusCheck("Payroll") == "Yes") { frmObj = new frmDesignation(); open = Application.OpenForms["frmDesignation"] as frmDesignation; } break; case "Pay Head": { frmObj = new frmPayHead(); open = Application.OpenForms["frmPayHead"] as frmPayHead; } break; case "Salary Package Creation": if (spSettings.SettingsStatusCheck("Payroll") == "Yes") { frmObj = new frmSalaryPackageCreation(); open = Application.OpenForms["frmSalaryPackageCreation"] as frmSalaryPackageCreation; } break; case "Salary Package Register": if (spSettings.SettingsStatusCheck("Payroll") == "Yes") { frmObj = new frmSalaryPackageRegister(); open = Application.OpenForms["frmSalaryPackageRegister"] as frmSalaryPackageRegister; } break; case "Employee Creation": if (spSettings.SettingsStatusCheck("Payroll") == "Yes") { frmObj = new frmEmployeeCreation(); open = Application.OpenForms["frmEmployeeCreation"] as frmEmployeeCreation; } break; case "Employee Register": if (spSettings.SettingsStatusCheck("Payroll") == "Yes") { frmObj = new frmEmployeeRegister(); open = Application.OpenForms["frmEmployeeRegister"] as frmEmployeeRegister; } break; case "Holiday Settings": if (spSettings.SettingsStatusCheck("Payroll") == "Yes") { frmObj = new frmHolydaySettings(); open = Application.OpenForms["frmHolydaySettings"] as frmHolydaySettings; } break; case "Monthly Salary Settings": if (spSettings.SettingsStatusCheck("Payroll") == "Yes") { frmObj = new frmMonthlySalarySettings(); open = Application.OpenForms["frmMonthlySalarySettings"] as frmMonthlySalarySettings; } break; case "Attendance": if (spSettings.SettingsStatusCheck("Payroll") == "Yes") { frmObj = new frmAttendance(); open = Application.OpenForms["frmAttendance"] as frmAttendance; } break; case "Advance Payment": if (spSettings.SettingsStatusCheck("Payroll") == "Yes") { frmObj = new frmAdvancePayment(); open = Application.OpenForms["frmAdvancePayment"] as frmAdvancePayment; } break; case "Advance Register": if (spSettings.SettingsStatusCheck("Payroll") == "Yes") { frmObj = new frmAdvanceRegister(); open = Application.OpenForms["frmAdvanceRegister"] as frmAdvanceRegister; } break; case "Bonus Deduction": if (spSettings.SettingsStatusCheck("Payroll") == "Yes") { frmObj = new frmBonusDeduction(); open = Application.OpenForms["frmBonusDeduction"] as frmBonusDeduction; } break; case "Bonus Deduction Register": if (spSettings.SettingsStatusCheck("Payroll") == "Yes") { frmObj = new frmBonusDeductionRegister(); open = Application.OpenForms["frmBonusDeductionRegister"] as frmBonusDeductionRegister; } break; case "Monthly Salary Voucher": if (spSettings.SettingsStatusCheck("Payroll") == "Yes") { frmObj = new frmMonthlySalaryVoucher(); open = Application.OpenForms["frmMonthlySalaryVoucher"] as frmMonthlySalaryVoucher; } break; case "Monthly Salary Register": if (spSettings.SettingsStatusCheck("Payroll") == "Yes") { frmObj = new frmMonthlySalaryRegister(); open = Application.OpenForms["frmMonthlySalaryRegister"] as frmMonthlySalaryRegister; } break; case "Daily Salary Voucher": if (spSettings.SettingsStatusCheck("Payroll") == "Yes") { frmObj = new frmDailySalaryVoucher(); open = Application.OpenForms["frmDailySalaryVoucher"] as frmDailySalaryVoucher; } break; case "Daily Salary Register": if (spSettings.SettingsStatusCheck("Payroll") == "Yes") { frmObj = new frmDailySalaryRegister(); open = Application.OpenForms["frmDailySalaryRegister"] as frmDailySalaryRegister; } break; case "Pay Slip": if (spSettings.SettingsStatusCheck("Payroll") == "Yes") { frmObj = new frmPaySlip(); open = Application.OpenForms["frmPaySlip"] as frmPaySlip; } break; case "Budget": if (spSettings.SettingsStatusCheck("Budget") == "Yes") { frmObj = new frmBudget(); open = Application.OpenForms["frmBudget"] as frmBudget; } break; case "Budget Variance": if (spSettings.SettingsStatusCheck("Budget") == "Yes") { //frmObj = new frmBudgetVariance(); //open = Application.OpenForms["frmBudgetVariance"] as frmBudgetVariance; } break; case "Change Current Date": frmObj = new frmChangeCurrentDate(); open = Application.OpenForms["frmChangeCurrentDate"] as frmChangeCurrentDate; break; case "Settings": frmObj = new frmSettings(); open = Application.OpenForms["frmSettings"] as frmSettings; break; case "Role": frmObj = new frmRole(); open = Application.OpenForms["frmRole"] as frmRole; break; case "Role Privilege Settings": frmObj = new frmRolePrivilegeSettings(); open = Application.OpenForms["frmRolePrivilegeSettings"] as frmRolePrivilegeSettings; break; case "User Creation": frmObj = new frmUserCreation(); open = Application.OpenForms["frmUserCreation"] as frmUserCreation; break; case "Change Password": frmObj = new frmChangePassword(); open = Application.OpenForms["frmChangePassword"] as frmChangePassword; break; case "New Financial Year": frmObj = new frmNewFinancialYear(); open = Application.OpenForms["frmNewFinancialYear"] as frmNewFinancialYear; break; case "Change Financial Year": frmObj = new frmChangeFinancialYear(); open = Application.OpenForms["frmChangeFinancialYear"] as frmChangeFinancialYear; break; case "Barcode Settings": frmObj = new frmBarcodeSettings(); open = Application.OpenForms["frmBarcodeSettings"] as frmBarcodeSettings; break; case "Barcode Printing": frmObj = new frmBarcodePrinting(); open = Application.OpenForms["frmBarcodePrinting"] as frmBarcodePrinting; break; case "Suffix Prefix Settings": frmObj = new frmSuffixPrefixSettings(); open = Application.OpenForms["frmSuffixPrefixSettings"] as frmSuffixPrefixSettings; break; case "Change Product Tax": frmObj = new frmChangeProductTax(); open = Application.OpenForms["frmChangeProductTax"] as frmChangeProductTax; break; case "Product Search": frmObj = new frmProductSearch(); open = Application.OpenForms["frmProductSearch"] as frmProductSearch; break; case "Voucher Search": frmObj = new frmVoucherSearch(); open = Application.OpenForms["frmVoucherSearch"] as frmVoucherSearch; break; case "Voucher Wise Product Search": frmObj = new frmVoucherWiseProductSearch(); open = Application.OpenForms["frmVoucherWiseProductSearch"] as frmVoucherWiseProductSearch; break; case "Personal Reminder": frmObj = new frmPersonalReminder(); open = Application.OpenForms["frmPersonalReminder"] as frmPersonalReminder; break; case "Overdue Purchase Order": frmObj = new frmOverduePurchaseOrder(); open = Application.OpenForms["frmOverduePurchaseOrder"] as frmOverduePurchaseOrder; break; case "Overdue Sales Order": frmObj = new frmOverdueSalesOrder(); open = Application.OpenForms["frmOverdueSalesOrder"] as frmOverdueSalesOrder; break; case "Short Expiry": frmObj = new frmShortExpiry(); open = Application.OpenForms["frmShortExpiry"] as frmShortExpiry; break; case "Stock": frmObj = new frmStock(); open = Application.OpenForms["frmStock"] as frmStock; break; case "Trial Balance": frmObj = new frmTrialBalance(); open = Application.OpenForms["frmTrialBalance"] as frmTrialBalance; break; case "Balance Sheet": frmObj = new frmBalanceSheet(); open = Application.OpenForms["frmBalanceSheet"] as frmBalanceSheet; break; case "Profit and Loss": frmObj = new frmProfitAndLoss(); open = Application.OpenForms["frmProfitAndLoss"] as frmProfitAndLoss; break; case "Cash Flow": frmObj = new frmCashFlow(); open = Application.OpenForms["frmCashFlow"] as frmCashFlow; break; case "Fund Flow": frmObj = new frmFundFlow(); open = Application.OpenForms["frmFundFlow"] as frmFundFlow; break; case "Chart of Account": frmObj = new frmChartOfAccount(); open = Application.OpenForms["frmChartOfAccount"] as frmChartOfAccount; break; case "Contra Report": frmObj = new frmContraReport(); open = Application.OpenForms["frmContraReport"] as frmContraReport; break; case "Payment Report": frmObj = new frmPaymentReport(); open = Application.OpenForms["frmPaymentReport"] as frmPaymentReport; break; case "Receipt Report": frmObj = new frmReceiptReport(); open = Application.OpenForms["frmReceiptReport"] as frmReceiptReport; break; case "Journal Report": frmObj = new frmJournalReport(); open = Application.OpenForms["frmJournalReport"] as frmJournalReport; break; case "PDC Payable Report": frmObj = new frmPDCPayableReport(); open = Application.OpenForms["frmPDCPayableReport"] as frmPDCPayableReport; break; case "PDC Receivable Report": frmObj = new frmPDCRecievableReport(); open = Application.OpenForms["frmPDCRecievableReport"] as frmPDCRecievableReport; break; case "PDC Clearance Report": frmObj = new frmPDCClearanceReport(); open = Application.OpenForms["frmPDCClearanceReport"] as frmPDCClearanceReport; break; case "Purchase Order Report": frmObj = new frmPurchaseOrderReport(); open = Application.OpenForms["frmPurchaseOrderReport"] as frmPurchaseOrderReport; break; case "Material Receipt Report": frmObj = new frmMaterialReceiptReport(); open = Application.OpenForms["frmMaterialReceiptReport"] as frmMaterialReceiptReport; break; case "Rejection Out Report": frmObj = new frmRejectionOutReport(); open = Application.OpenForms["frmRejectionOutReport"] as frmRejectionOutReport; break; case "Purchase Invoice Report": frmObj = new frmPurchaseReport(); open = Application.OpenForms["frmPurchaseReport"] as frmPurchaseReport; break; case "Purchase Return Report": frmObj = new frmPurchaseReturnReport(); open = Application.OpenForms["frmPurchaseReturnReport"] as frmPurchaseReturnReport; break; case "Sales Quotation Report": frmObj = new frmSalesQuotationReport(); open = Application.OpenForms["frmSalesQuotationReport"] as frmSalesQuotationReport; break; case "Sales Order Report": frmObj = new frmSalesOrderReport(); open = Application.OpenForms["frmSalesOrderReport"] as frmSalesOrderReport; break; case "Delivery Note Report": frmObj = new frmDeliveryNoteReport(); open = Application.OpenForms["frmDeliveryNoteReport"] as frmDeliveryNoteReport; break; case "Rejection In Report": frmObj = new frmRejectionInReport(); open = Application.OpenForms["frmRejectionInReport"] as frmRejectionInReport; break; case "Sales Invoice Report": frmObj = new frmSalesReport(); open = Application.OpenForms["frmSalesReport"] as frmSalesReport; break; case "Sales Return Report": frmObj = new frmSalesReturnReport(); open = Application.OpenForms["frmSalesReturnReport"] as frmSalesReturnReport; break; case "Physical Stock Report": frmObj = new frmPhysicalStockReport(); open = Application.OpenForms["frmPhysicalStockReport"] as frmPhysicalStockReport; break; case "Service Report": frmObj = new frmServiceReport(); open = Application.OpenForms["frmServiceReport"] as frmServiceReport; break; case "Credit Note Report": frmObj = new frmCreditNoteReport(); open = Application.OpenForms["frmCreditNoteReport"] as frmCreditNoteReport; break; case "Debit Note Report": frmObj = new frmDebitNoteReport(); open = Application.OpenForms["frmDebitNoteReport"] as frmDebitNoteReport; break; case "Stock Journal Report": frmObj = new frmStockJournelReport(); open = Application.OpenForms["frmStockJournelReport"] as frmStockJournelReport; break; case "Employee Report": if (spSettings.SettingsStatusCheck("Payroll") == "Yes") { frmObj = new frmEmployeeReport(); open = Application.OpenForms["frmEmployeeReport"] as frmEmployeeReport; } break; case "Daily Attendance Report": if (spSettings.SettingsStatusCheck("Payroll") == "Yes") { frmObj = new frmDailyAttendanceReport(); open = Application.OpenForms["frmDailyAttendanceReport"] as frmDailyAttendanceReport; } break; case "Monthly Attendance Report": if (spSettings.SettingsStatusCheck("Payroll") == "Yes") { frmObj = new frmMonthlyAttendanceReport(); open = Application.OpenForms["frmMonthlyAttendanceReport"] as frmMonthlyAttendanceReport; } break; case "Daily Salary Report": if (spSettings.SettingsStatusCheck("Payroll") == "Yes") { frmObj = new frmDailySalaryReport(); open = Application.OpenForms["frmDailySalaryReport"] as frmDailySalaryReport; } break; case "Monthly Salary Report": if (spSettings.SettingsStatusCheck("Payroll") == "Yes") { frmObj = new frmMonthlySalaryReport(); open = Application.OpenForms["frmMonthlySalaryReport"] as frmMonthlySalaryReport; } break; case "Payhead Report": if (spSettings.SettingsStatusCheck("Payroll") == "Yes") { frmObj = new frmPayHeadReport(); open = Application.OpenForms["frmPayHeadReport"] as frmPayHeadReport; } break; case "Salary Package Report": if (spSettings.SettingsStatusCheck("Payroll") == "Yes") { frmObj = new frmSalaryPackageReport(); open = Application.OpenForms["frmSalaryPackageReport"] as frmSalaryPackageReport; } break; case "Advance Payment Report": if (spSettings.SettingsStatusCheck("Payroll") == "Yes") { frmObj = new frmAdvancePaymentReport(); open = Application.OpenForms["frmAdvancePaymentReport"] as frmAdvancePaymentReport; } break; case "Bonus Deduction Report": if (spSettings.SettingsStatusCheck("Payroll") == "Yes") { frmObj = new frmBonusDeductionReport(); open = Application.OpenForms["frmBonusDeductionReport"] as frmBonusDeductionReport; } break; case "Employee Address Book Report": if (spSettings.SettingsStatusCheck("Payroll") == "Yes") { frmObj = new frmEmployeeAddressBook(); open = Application.OpenForms["frmEmployeeAddressBook"] as frmEmployeeAddressBook; } break; case "Day Book": frmObj = new frmDayBook(); open = Application.OpenForms["frmDayBook"] as frmDayBook; break; case "Cash/Bank Book": frmObj = new frmCashBankBookReport(); open = Application.OpenForms["frmCashBankBookReport"] as frmCashBankBookReport; break; case "Account Groupwise Report": frmObj = new frmAccountGroupwiseReport(); open = Application.OpenForms["frmAccountGroupwiseReport"] as frmAccountGroupwiseReport; break; case "Account Ledger Report": frmObj = new frmAccountLedgerReport(); open = Application.OpenForms["frmAccountLedgerReport"] as frmAccountLedgerReport; break; case "Outstanding Report": frmObj = new frmOutstandingReport(); open = Application.OpenForms["frmOutstandingReport"] as frmOutstandingReport; break; case "Ageing Report": frmObj = new frmAgeingReport(); open = Application.OpenForms["frmAgeingReport"] as frmAgeingReport; break; case "Party's Address Book": frmObj = new frmPartyAddressBook(); open = Application.OpenForms["frmPartyAddressBook"] as frmPartyAddressBook; break; case "Stock Report": frmObj = new frmStockReport(); open = Application.OpenForms["frmStockReport"] as frmStockReport; break; case "Short Expiry Report": frmObj = new frmShortExpiryReport(); open = Application.OpenForms["frmShortExpiryReport"] as frmShortExpiryReport; break; case "Product Statistics": frmObj = new frmProductStatistics(); open = Application.OpenForms["frmProductStatistics"] as frmProductStatistics; break; case "Price List Report": frmObj = new frmPriceListReport(); open = Application.OpenForms["frmPriceListReport"] as frmPriceListReport; break; case "Tax Report": frmObj = new frmTaxReport(); open = Application.OpenForms["frmTaxReport"] as frmTaxReport; break; case "VAT Report": frmObj = new frmVatReturnReport(); open = Application.OpenForms["frmVatReturnReport"] as frmVatReturnReport; break; case "Cheque Report": frmObj = new frmChequeReport(); open = Application.OpenForms["frmChequeReport"] as frmChequeReport; break; case "Free Sale Report": frmObj = new frmFreeSaleReport(); open = Application.OpenForms["frmFreeSaleReport"] as frmFreeSaleReport; break; case "Product Vs Batch Report": frmObj = new frmProductVsBatchReport(); open = Application.OpenForms["frmProductVsBatchReport"] as frmProductVsBatchReport; break; case "Customer": frmObj = new frmCustomer(); open = Application.OpenForms["frmCustomer"] as frmCustomer; break; case "Supplier": frmObj = new frmSupplier(); open = Application.OpenForms["frmSupplier"] as frmSupplier; break; } if (frmObj != null) { if (open == null) { frmObj.MdiParent = formMDI.MDIObj; frmObj.Show(); } else { open.Activate(); if (open.WindowState == FormWindowState.Minimized) { open.WindowState = FormWindowState.Normal; } } } } catch (Exception ex) { MessageBox.Show("QL:4" + ex.Message, "OpenMiracle", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
/// <summary> /// Function to fill Datagridview /// </summary> public void Gridfill() { try { if (!isFormLoad) { DateValidation objValidation = new DateValidation(); objValidation.DateValidationFunction(txtFromDate); if (txtFromDate.Text == string.Empty) { txtFromDate.Text = PublicVariables._dtFromDate.ToString("dd-MMM-yyyy"); } objValidation.DateValidationFunction(txtToDate); if (txtToDate.Text == string.Empty) { txtToDate.Text = PublicVariables._dtToDate.ToString("dd-MMM-yyyy"); } Font newFont = new Font(dgvProfitAndLoss.Font, FontStyle.Bold); CurrencyInfo InfoCurrency = new CurrencyInfo(); CurrencySP SpCurrency = new CurrencySP(); InfoCurrency = SpCurrency.CurrencyView(1); int inDecimalPlaces = InfoCurrency.NoOfDecimalPlaces; dgvProfitAndLoss.Rows.Clear(); FinancialStatementSP spFinancial = new FinancialStatementSP(); DataTable dtblFinancial = new DataTable(); DataSet DsetProfitAndLoss = new DataSet(); SettingsInfo infoSettings = new SettingsInfo(); SettingsSP SpSettings = new SettingsSP(); //---------check calculation method if (SpSettings.SettingsStatusCheck("StockValueCalculationMethod") == "FIFO") { calculationMethod = "FIFO"; } else if (SpSettings.SettingsStatusCheck("StockValueCalculationMethod") == "Average Cost") { calculationMethod = "Average Cost"; } else if (SpSettings.SettingsStatusCheck("StockValueCalculationMethod") == "High Cost") { calculationMethod = "High Cost"; } else if (SpSettings.SettingsStatusCheck("StockValueCalculationMethod") == "Low Cost") { calculationMethod = "Low Cost"; } else if (SpSettings.SettingsStatusCheck("StockValueCalculationMethod") == "Last Purchase Rate") { calculationMethod = "Last Purchase Rate"; } DsetProfitAndLoss = spFinancial.ProfitAndLossAnalysis(DateTime.Parse(txtFromDate.Text), DateTime.Parse(txtToDate.Text)); //---- Opening Stock dgvProfitAndLoss.Rows.Add(); decimal dcOpeningStock = spFinancial.StockValueGetOnDate(DateTime.Parse(txtFromDate.Text), DateTime.Parse(txtToDate.Text), calculationMethod, true, false); dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtExpenses"].Value = "Opening Stock"; if (dcOpeningStock > 0) { dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtAmount1"].Value = Math.Round(dcOpeningStock, inDecimalPlaces); } else { dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtAmount1"].Value = -(Math.Round(dcOpeningStock, inDecimalPlaces)); } //Closing Stock decimal dcClosingStock = 0; dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtIncome"].Value = "Closing Stock"; dcClosingStock = spFinancial.StockValueGetOnDate(DateTime.Parse(txtToDate.Text), calculationMethod, false, false); dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtAmount2"].Value = Math.Round(dcClosingStock, inDecimalPlaces); /// ---Purchase Account - Debit dtblFinancial = new DataTable(); dtblFinancial = DsetProfitAndLoss.Tables[0]; dgvProfitAndLoss.Rows.Add(); dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtExpenses"].Value = "Purchase Accounts"; decimal dcPurchaseAccount = 0m; if (dtblFinancial.Rows.Count > 0) { foreach (DataRow rw in dtblFinancial.Rows) { decimal dcBalance = decimal.Parse(rw["Debit"].ToString().ToString()); dcPurchaseAccount += dcBalance; } dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtGroupId1"].Value = "11"; } dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtAmount1"].Value = dcPurchaseAccount.ToString(); //---Sales Account -Credit dtblFinancial = new DataTable(); dtblFinancial = DsetProfitAndLoss.Tables[1]; dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtIncome"].Value = "Sales Accounts"; decimal dcSalesAccount = 0m; if (dtblFinancial.Rows.Count > 0) { foreach (DataRow rw in dtblFinancial.Rows) { decimal dcBalance = decimal.Parse(rw["Credit"].ToString().ToString()); dcSalesAccount += dcBalance; } dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtGroupId2"].Value = "10"; } dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtAmount2"].Value = dcSalesAccount.ToString(); dgvProfitAndLoss.Rows.Add(); dgvProfitAndLoss.Rows.Add(); //---Direct Expense dtblFinancial = new DataTable(); dtblFinancial = DsetProfitAndLoss.Tables[2]; dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtExpenses"].Value = "Direct Expenses"; decimal dcDirectExpense = 0m; if (dtblFinancial.Rows.Count > 0) { foreach (DataRow rw in dtblFinancial.Rows) { decimal dcBalance = Convert.ToDecimal(rw["Debit"].ToString()); dcDirectExpense += dcBalance; } dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtGroupId1"].Value = "13"; } dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtAmount1"].Value = dcDirectExpense.ToString(); //----Direct Income dtblFinancial = new DataTable(); dtblFinancial = DsetProfitAndLoss.Tables[3]; dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtIncome"].Value = "Direct Incomes"; decimal dcDirectIncoome = 0m; if (dtblFinancial.Rows.Count > 0) { foreach (DataRow rw in dtblFinancial.Rows) { decimal dcBalance = Convert.ToDecimal(rw["Credit"].ToString()); dcDirectIncoome += dcBalance; } dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtGroupId2"].Value = "12"; } dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtAmount2"].Value = dcDirectIncoome.ToString(); dgvProfitAndLoss.Rows.Add(); dgvProfitAndLoss.Rows.Add(); dgvProfitAndLoss.Rows.Add(); dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtAmount1"].Value = "_______________________"; dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtAmount2"].Value = "_______________________"; dgvProfitAndLoss.Rows.Add(); decimal dcTotalExpense = 0; decimal dcTotalIncome = 0; dcTotalExpense = dcOpeningStock + dcPurchaseAccount + dcDirectExpense; dcTotalIncome = dcClosingStock + dcSalesAccount + dcDirectIncoome; dcTotalExpense = Math.Round(dcTotalExpense, inDecimalPlaces); dcTotalIncome = Math.Round(dcTotalIncome, inDecimalPlaces); dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].DefaultCellStyle.Font = newFont; dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtExpenses"].Value = "Total"; dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtIncome"].Value = "Total"; decimal dcGrossProfit = 0; decimal dcGrossLoss = 0; if (dcTotalExpense > dcTotalIncome) { dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtAmount1"].Value = dcTotalExpense.ToString(); dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtAmount2"].Value = dcTotalExpense.ToString(); dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 3].Cells["dgvtxtIncome"].Value = "Gross Loss b/d "; dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 3].Cells["dgvtxtAmount2"].Value = dcTotalExpense - dcTotalIncome; dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 3].Cells["dgvtxtAmount2"].Style.ForeColor = Color.Red; dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 3].Cells["dgvtxtIncome"].Style.ForeColor = Color.Red; dgvProfitAndLoss.Rows.Add(); dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtExpenses"].Value = "Gross Loss b/d "; dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtAmount1"].Value = dcTotalExpense - dcTotalIncome; dcGrossLoss = dcTotalExpense - dcTotalIncome; } else { dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtAmount1"].Value = dcTotalIncome.ToString(); dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtAmount2"].Value = dcTotalIncome.ToString(); dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 3].Cells["dgvtxtExpenses"].Value = "Gross Profit c/d "; dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 3].Cells["dgvtxtAmount1"].Value = dcTotalIncome - dcTotalExpense; dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 3].Cells["dgvtxtAmount1"].Style.ForeColor = Color.Green; dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 3].Cells["dgvtxtExpenses"].Style.ForeColor = Color.Green; dgvProfitAndLoss.Rows.Add(); dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtIncome"].Value = "Gross Profit c/d "; dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtAmount2"].Value = dcTotalIncome - dcTotalExpense; dcGrossProfit = dcTotalIncome - dcTotalExpense; } dgvProfitAndLoss.Rows.Add(); ///------Indirect Expense dtblFinancial = new DataTable(); dtblFinancial = DsetProfitAndLoss.Tables[4]; dgvProfitAndLoss.Rows.Add(); dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtExpenses"].Value = "Indirect Expenses"; decimal dcIndirectExpense = 0; if (dtblFinancial.Rows.Count > 0) { foreach (DataRow rw in dtblFinancial.Rows) { decimal dcBalance = Convert.ToDecimal(rw["Debit"].ToString()); dcIndirectExpense += dcBalance; } dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtGroupId1"].Value = "15"; } dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtAmount1"].Value = dcIndirectExpense.ToString(); ///---Indirect Income dtblFinancial = new DataTable(); dtblFinancial = DsetProfitAndLoss.Tables[5]; dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtIncome"].Value = "Indirect Incomes"; decimal dcIndirectIncome = 0m; if (dtblFinancial.Rows.Count > 0) { foreach (DataRow rw in dtblFinancial.Rows) { decimal dcBalance = Convert.ToDecimal(rw["Credit"].ToString()); dcIndirectIncome += dcBalance; } dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtGroupId2"].Value = "14"; } dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtAmount2"].Value = dcIndirectIncome.ToString(); //---- Calculating Grand total decimal dcGrandTotalExpense = dcGrossLoss + dcIndirectExpense; decimal dcGrandTotalIncome = dcGrossProfit + dcIndirectIncome; dgvProfitAndLoss.Rows.Add(); dgvProfitAndLoss.Rows.Add(); dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtAmount1"].Value = "_______________________"; dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtAmount2"].Value = "_______________________"; dgvProfitAndLoss.Rows.Add(); dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtExpenses"].Value = "Grand Total"; dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtIncome"].Value = "Grand Total"; dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].DefaultCellStyle.Font = newFont; if (dcGrandTotalExpense > dcGrandTotalIncome) { dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtAmount1"].Value = dcGrandTotalExpense.ToString(); dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtAmount2"].Value = dcGrandTotalExpense.ToString(); dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 3].Cells["dgvtxtIncome"].Value = "Net Loss "; dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 3].Cells["dgvtxtAmount2"].Value = dcGrandTotalExpense - dcGrandTotalIncome; dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 3].Cells["dgvtxtIncome"].Style.ForeColor = Color.Red; dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 3].Cells["dgvtxtAmount2"].Style.ForeColor = Color.Red; dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 3].DefaultCellStyle.Font = newFont; decgranExTotal = dcGrandTotalExpense; } else { dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtAmount1"].Value = dcGrandTotalIncome.ToString(); dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 1].Cells["dgvtxtAmount2"].Value = dcGrandTotalIncome.ToString(); dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 3].Cells["dgvtxtExpenses"].Value = "Net Profit"; dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 3].Cells["dgvtxtAmount1"].Value = dcGrandTotalIncome - dcGrandTotalExpense; dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 3].Cells["dgvtxtExpenses"].Style.ForeColor = Color.Green; dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 3].Cells["dgvtxtAmount1"].Style.ForeColor = Color.Green; dgvProfitAndLoss.Rows[dgvProfitAndLoss.Rows.Count - 3].DefaultCellStyle.Font = newFont; decgranIncTotal = dcGrandTotalIncome; } if (dgvProfitAndLoss.Columns.Count > 0) { dgvProfitAndLoss.Columns["dgvtxtAmount1"].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight; dgvProfitAndLoss.Columns["dgvtxtAmount2"].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight; } if (inCurrenRowIndex >= 0 && dgvProfitAndLoss.Rows.Count > 0 && inCurrenRowIndex < dgvProfitAndLoss.Rows.Count) { if (dgvProfitAndLoss.Rows[inCurrenRowIndex].Cells[inCurrentColunIndex].Visible) { dgvProfitAndLoss.CurrentCell = dgvProfitAndLoss.Rows[inCurrenRowIndex].Cells[inCurrentColunIndex]; } else { dgvProfitAndLoss.CurrentCell = dgvProfitAndLoss.Rows[inCurrenRowIndex].Cells["dgvtxtExpenses"]; } dgvProfitAndLoss.CurrentCell.Selected = true; } inCurrenRowIndex = 0; } } catch (Exception ex) { MessageBox.Show("PAL :01" + ex.Message, "OpenMiracle", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
/// <summary> /// Function to return amount in words /// </summary> /// <param name="decAmount"></param> /// <param name="decCurrId"></param> /// <returns></returns> public string AmountWords(decimal decAmount, decimal decCurrId) { string AountInWords = string.Empty; // To return the amount in words CurrencyInfo currencyInfo = new CurrencySP().CurrencyView(decCurrId); decAmount = Math.Round(decAmount, currencyInfo.NoOfDecimalPlaces); //Rounding according to decimal places of currency string strAmount = decAmount.ToString(); // Just keeping the whole amount as string for performing split operation on it string strAmountinwordsOfIntiger = string.Empty; // To hold amount in words of intiger string strAmountInWordsOfDecimal = string.Empty; // To hold amoutn in words of decimal part string[] strPartsArray = strAmount.Split('.'); // Splitting with "." to get intiger part and decimal part seperately string strDecimaPart = string.Empty; // To hold decimal part if (strPartsArray.Length > 1) { if (strPartsArray[1] != null) { strDecimaPart = strPartsArray[1]; // Holding decimal portion if any } } if (strPartsArray[0] != null) { strAmount = strPartsArray[0]; // Holding intiger part of amount } else { strAmount = string.Empty; }; if (strAmount.Trim() != string.Empty && decimal.Parse(strAmount) != 0) { strAmountinwordsOfIntiger = NumberToText(long.Parse(strAmount)); } if (strDecimaPart.Trim() != string.Empty && decimal.Parse(strDecimaPart) != 0) { strAmountInWordsOfDecimal = NumberToText(long.Parse(strDecimaPart)); } SettingsSP spSettings = new SettingsSP(); if (spSettings.SettingsStatusCheck("ShowCurrencySymbol") != "Yes") { // Showing currency as suffix if (strAmountinwordsOfIntiger != string.Empty) { AountInWords = strAmountinwordsOfIntiger + " " + currencyInfo.CurrencyName; } if (strAmountInWordsOfDecimal != string.Empty) { AountInWords = AountInWords + " and " + strAmountInWordsOfDecimal + " " + currencyInfo.SubunitName; } AountInWords = AountInWords + " only"; } else { // Showing currency as prefix if (strAmountinwordsOfIntiger != string.Empty) { AountInWords = currencyInfo.CurrencyName + " " + strAmountinwordsOfIntiger; } if (strAmountInWordsOfDecimal != string.Empty) { AountInWords = AountInWords + " and " + currencyInfo.SubunitName + " " + strAmountInWordsOfDecimal; } AountInWords = AountInWords + " only"; } return(AountInWords); }
/// <summary> /// Function to fill Datagridview /// </summary> public void FillGrid() { try { if (!isFormLoad) { DateValidation objValidation = new DateValidation(); objValidation.DateValidationFunction(txtToDate); if (txtToDate.Text == string.Empty) { txtToDate.Text = PublicVariables._dtToDate.ToString("dd-MMM-yyyy"); } Font newFont = new Font(dgvReport.Font, FontStyle.Bold); CurrencyInfo InfoCurrency = new CurrencyInfo(); CurrencySP SpCurrency = new CurrencySP(); InfoCurrency = SpCurrency.CurrencyView(1); int inDecimalPlaces = InfoCurrency.NoOfDecimalPlaces; dgvReport.Rows.Clear(); FinancialStatementSP SpFinance = new FinancialStatementSP(); DataSet DsetBalanceSheet = new DataSet(); DataTable dtbl = new DataTable(); SettingsInfo InfoSettings = new SettingsInfo(); SettingsSP SpSettings = new SettingsSP(); //--------------- Selection Of Calculation Method According To Settings ------------------// if (SpSettings.SettingsStatusCheck("StockValueCalculationMethod") == "FIFO") { calculationMethod = "FIFO"; } else if (SpSettings.SettingsStatusCheck("StockValueCalculationMethod") == "Average Cost") { calculationMethod = "Average Cost"; } else if (SpSettings.SettingsStatusCheck("StockValueCalculationMethod") == "High Cost") { calculationMethod = "High Cost"; } else if (SpSettings.SettingsStatusCheck("StockValueCalculationMethod") == "Low Cost") { calculationMethod = "Low Cost"; } else if (SpSettings.SettingsStatusCheck("StockValueCalculationMethod") == "Last Purchase Rate") { calculationMethod = "Last Purchase Rate"; } DsetBalanceSheet = SpFinance.BalanceSheet(PublicVariables._dtFromDate, DateTime.Parse(txtToDate.Text)); //------------------- Asset -------------------------------// dtbl = DsetBalanceSheet.Tables[0]; foreach (DataRow rw in dtbl.Rows) { dgvReport.Rows.Add(); dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["dgvtxtAsset"].Value = rw["Name"].ToString(); dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["Amount1"].Value = rw["Balance"].ToString(); dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["GroupId1"].Value = rw["ID"].ToString(); } decimal dcTotalAsset = 0; if (dtbl.Rows.Count > 0) { dcTotalAsset = decimal.Parse(dtbl.Compute("Sum(Balance)", string.Empty).ToString()); } //------------------------ Liability ---------------------// dtbl = new DataTable(); dtbl = DsetBalanceSheet.Tables[1]; int index = 0; foreach (DataRow rw in dtbl.Rows) { if (index < dgvReport.Rows.Count) { dgvReport.Rows[index].Cells["dgvtxtLiability"].Value = rw["Name"].ToString(); dgvReport.Rows[index].Cells["Amount2"].Value = rw["Balance"].ToString(); dgvReport.Rows[index].Cells["GroupId2"].Value = rw["ID"].ToString(); } else { dgvReport.Rows.Add(); dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["dgvtxtLiability"].Value = rw["Name"].ToString(); dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["Amount2"].Value = rw["Balance"].ToString(); dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["GroupId2"].Value = rw["ID"].ToString(); } index++; } decimal dcTotalLiability = 0; if (dtbl.Rows.Count > 0) { dcTotalLiability = decimal.Parse(dtbl.Compute("Sum(Balance)", string.Empty).ToString()); } decimal dcClosingStock = SpFinance.StockValueGetOnDate(Convert.ToDateTime(txtToDate.Text), calculationMethod, false, false); dcClosingStock = Math.Round(dcClosingStock, inDecimalPlaces); //---------------------Opening Stock--------------------------------------------------------------------------------------------------------------- decimal dcOpeninggStock = SpFinance.StockValueGetOnDate(PublicVariables._dtFromDate, calculationMethod, true, true); decimal dcProfit = 0; DataSet dsetProfitAndLoss = new DataSet(); dsetProfitAndLoss = SpFinance.ProfitAndLossAnalysisUpToaDateForBalansheet(PublicVariables._dtFromDate, DateTime.Parse(txtToDate.Text)); DataTable dtblProfit = new DataTable(); dtblProfit = dsetProfitAndLoss.Tables[0]; for (int i = 0; i < dsetProfitAndLoss.Tables.Count; ++i) { dtbl = dsetProfitAndLoss.Tables[i]; decimal dcSum = 0; if (i == 0 || (i % 2) == 0) { if (dtbl.Rows.Count > 0) { dcSum = decimal.Parse(dtbl.Compute("Sum(Debit)", string.Empty).ToString()); dcProfit = dcProfit - dcSum; } } else { if (dtbl.Rows.Count > 0) { dcSum = decimal.Parse(dtbl.Compute("Sum(Credit)", string.Empty).ToString()); dcProfit = dcProfit + dcSum; } } } decimal decCurrentProfitLoss = 0; decCurrentProfitLoss = dcProfit + (dcClosingStock - dcOpeninggStock); decimal dcProfitOpening = 0; DataSet dsetProfitAndLossOpening = new DataSet(); dsetProfitAndLossOpening = SpFinance.ProfitAndLossAnalysisUpToaDateForPreviousYears(PublicVariables._dtFromDate); DataTable dtblProfitOpening = new DataTable(); dtblProfitOpening = dsetProfitAndLossOpening.Tables[0]; for (int i = 0; i < dsetProfitAndLossOpening.Tables.Count; ++i) { dtbl = dsetProfitAndLossOpening.Tables[i]; decimal dcSum = 0; if (i == 0 || (i % 2) == 0) { if (dtbl.Rows.Count > 0) { dcSum = decimal.Parse(dtbl.Compute("Sum(Debit)", string.Empty).ToString()); dcProfitOpening = dcProfitOpening - dcSum; } } else { if (dtbl.Rows.Count > 0) { dcSum = decimal.Parse(dtbl.Compute("Sum(Credit)", string.Empty).ToString()); dcProfitOpening = dcProfitOpening + dcSum; } } } DataTable dtblProfitLedgerOpening = new DataTable(); dtblProfitLedgerOpening = DsetBalanceSheet.Tables[3]; decimal decProfitLedgerOpening = 0; foreach (DataRow dRow in dtblProfitLedgerOpening.Rows) { decProfitLedgerOpening += decimal.Parse(dRow["Balance"].ToString()); } DataTable dtblProf = new DataTable(); dtblProf = DsetBalanceSheet.Tables[2]; decimal decProfitLedger = 0; if (dtblProf.Rows.Count > 0) { decProfitLedger = decimal.Parse(dtblProf.Compute("Sum(Balance)", string.Empty).ToString()); } decimal decTotalProfitAndLoss = 0; if (dcProfitOpening >= 0) { decTotalProfitAndLoss = decProfitLedger; } else if (dcProfitOpening < 0) { decTotalProfitAndLoss = decProfitLedger; } index = 0; if (dcClosingStock >= 0) { //---------- Asset ----------// dgvReport.Rows.Add(); dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["dgvtxtAsset"].Value = "Closing Stock"; dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["Amount1"].Value = Math.Round(dcClosingStock, inDecimalPlaces); dcTotalAsset += dcClosingStock; } else { //--------- Liability ---------// dgvReport.Rows.Add(); dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["dgvtxtLiability"].Value = "Closing Stock"; dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["Amount2"].Value = -(Math.Round(dcClosingStock, inDecimalPlaces)); dcTotalLiability += -dcClosingStock; } dgvReport.Rows.Add(); decimal decOpeningOfProfitAndLoss = decProfitLedgerOpening + dcProfitOpening; decimal decTotalProfitAndLossOverAll = decTotalProfitAndLoss + decOpeningOfProfitAndLoss + decCurrentProfitLoss; if (decTotalProfitAndLossOverAll <= 0) { dgvReport.Rows.Add(); dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["dgvtxtAsset"].Value = "----------------------------------------"; dgvReport.Rows[dgvReport.Rows.Count - 1].DefaultCellStyle.Font = newFont; foreach (DataRow dRow in dtblProf.Rows) { if (dRow["Name"].ToString() == "Profit And Loss Account") { dgvReport.Rows.Add(); dgvReport.Rows[dgvReport.Rows.Count - 1].DefaultCellStyle.Font = newFont; dgvReport.Rows[dgvReport.Rows.Count - 1].DefaultCellStyle.ForeColor = Color.DarkSlateGray; dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["dgvtxtAsset"].Value = dRow["Name"].ToString(); if (decCurrentProfitLoss < 0) { decCurrentProfitLoss = decCurrentProfitLoss * -1; } dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["Amount1"].Value = Math.Round(decTotalProfitAndLoss + decCurrentProfitLoss, PublicVariables._inNoOfDecimalPlaces); dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["GroupId1"].Value = dRow["ID"].ToString(); } } //-------------- Asset ---------------// dgvReport.Rows.Add(); dgvReport.Rows[dgvReport.Rows.Count - 1].DefaultCellStyle.Font = newFont; dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["dgvtxtAsset"].Value = "Profit And Loss (Opening)"; dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["Amount1"].Value = Math.Round(decTotalProfitAndLoss, PublicVariables._inNoOfDecimalPlaces); dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["Amount1"].Style.ForeColor = Color.DarkSlateGray; dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["dgvtxtAsset"].Style.ForeColor = Color.DarkSlateGray; //-------------- Asset ---------------// dgvReport.Rows.Add(); dgvReport.Rows[dgvReport.Rows.Count - 1].DefaultCellStyle.Font = newFont; dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["dgvtxtAsset"].Value = "Current Period"; dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["Amount1"].Value = Math.Round(decCurrentProfitLoss, PublicVariables._inNoOfDecimalPlaces); dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["Amount1"].Style.ForeColor = Color.DarkSlateGray; dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["dgvtxtAsset"].Style.ForeColor = Color.DarkSlateGray; dcTotalAsset = dcTotalAsset + (decCurrentProfitLoss + decTotalProfitAndLoss); dgvReport.Rows.Add(); dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["dgvtxtAsset"].Value = "----------------------------------------"; dgvReport.Rows[dgvReport.Rows.Count - 1].DefaultCellStyle.Font = newFont; } else if (decTotalProfitAndLossOverAll > 0) { dgvReport.Rows.Add(); dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["dgvtxtLiability"].Value = "----------------------------------------"; dgvReport.Rows[dgvReport.Rows.Count - 1].DefaultCellStyle.Font = newFont; foreach (DataRow dRow in dtblProf.Rows) { if (dRow["Name"].ToString() == "Profit And Loss Account") { dgvReport.Rows.Add(); dgvReport.Rows[dgvReport.Rows.Count - 1].DefaultCellStyle.Font = newFont; dgvReport.Rows[dgvReport.Rows.Count - 1].DefaultCellStyle.ForeColor = Color.DarkSlateGray; dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["dgvtxtLiability"].Value = dRow[1].ToString(); dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["Amount2"].Value = Math.Round(decTotalProfitAndLoss + decCurrentProfitLoss, PublicVariables._inNoOfDecimalPlaces); dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["GroupId2"].Value = dRow[0].ToString(); } } //------------ Liability ------------// dgvReport.Rows.Add(); dgvReport.Rows[dgvReport.Rows.Count - 1].DefaultCellStyle.Font = newFont; dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["dgvtxtLiability"].Value = "Profit And Loss (Opening)"; dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["Amount2"].Value = Math.Round(decTotalProfitAndLoss, inDecimalPlaces); dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["Amount2"].Style.ForeColor = Color.DarkSlateGray; dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["dgvtxtLiability"].Style.ForeColor = Color.DarkSlateGray; dcTotalLiability += decOpeningOfProfitAndLoss; //------------ Liability ------------// dgvReport.Rows.Add(); dgvReport.Rows[dgvReport.Rows.Count - 1].DefaultCellStyle.Font = newFont; dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["dgvtxtLiability"].Value = "Current Period"; dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["Amount2"].Value = Math.Round(decCurrentProfitLoss, inDecimalPlaces); dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["Amount2"].Style.ForeColor = Color.DarkSlateGray; dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["dgvtxtLiability"].Style.ForeColor = Color.DarkSlateGray; dcTotalLiability = dcTotalLiability + (decCurrentProfitLoss + decTotalProfitAndLoss); //dcProfit; dgvReport.Rows.Add(); dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["dgvtxtLiability"].Value = "----------------------------------------"; dgvReport.Rows[dgvReport.Rows.Count - 1].DefaultCellStyle.Font = newFont; } dgvReport.Rows.Add(); decimal dcDiffAsset = 0; decimal dcDiffLiability = 0; decimal dcTotalValue = dcTotalAsset; if (dcTotalAsset != dcTotalLiability) { if (dcTotalAsset > dcTotalLiability) { //--------------- Liability exceeds so in asset side ----------------// dgvReport.Rows.Add(); dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["dgvtxtLiability"].Value = "Difference"; dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["Amount2"].Value = Math.Round((dcTotalAsset - dcTotalLiability), inDecimalPlaces); dgvReport.Rows[dgvReport.Rows.Count - 1].DefaultCellStyle.Font = newFont; dgvReport.Rows[dgvReport.Rows.Count - 1].DefaultCellStyle.ForeColor = Color.DarkRed; dcDiffLiability = dcTotalAsset - dcTotalLiability; } else { //--------------- Asset exceeds so in liability side ----------------// dgvReport.Rows.Add(); dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["dgvtxtAsset"].Value = "Difference"; dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["Amount1"].Value = Math.Round((dcTotalLiability - dcTotalAsset), inDecimalPlaces);; dgvReport.Rows[dgvReport.Rows.Count - 1].DefaultCellStyle.Font = newFont; dgvReport.Rows[dgvReport.Rows.Count - 1].DefaultCellStyle.ForeColor = Color.DarkRed; dcDiffAsset = dcTotalLiability - dcTotalAsset; } } dgvReport.Rows.Add(); dgvReport.Rows.Add(); dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["Amount1"].Value = "__________________________"; dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["Amount2"].Value = "__________________________"; dgvReport.Rows.Add(); dgvReport.Rows[dgvReport.Rows.Count - 1].DefaultCellStyle.Font = newFont; dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["dgvtxtLiability"].Value = "Total"; dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["dgvtxtAsset"].Value = "Total"; dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["Amount1"].Value = Math.Round((dcTotalAsset + dcDiffAsset), inDecimalPlaces); dgvReport.Rows[dgvReport.Rows.Count - 1].Cells["Amount2"].Value = Math.Round((dcTotalLiability + dcDiffLiability), inDecimalPlaces); if (dgvReport.Columns.Count > 0) { dgvReport.Columns["Amount1"].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight; dgvReport.Columns["Amount2"].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight; } decPrintOrNot = dcTotalAsset + dcDiffAsset; decPrintOrNot1 = dcTotalLiability + dcDiffLiability; if (inCurrenRowIndex >= 0 && dgvReport.Rows.Count > 0 && inCurrenRowIndex < dgvReport.Rows.Count) { if (dgvReport.Rows[inCurrenRowIndex].Cells[inCurentcolIndex].Visible) { dgvReport.CurrentCell = dgvReport.Rows[inCurrenRowIndex].Cells[inCurentcolIndex]; } if (dgvReport.CurrentCell != null && dgvReport.CurrentCell.Visible) { dgvReport.CurrentCell.Selected = true; } } inCurrenRowIndex = 0; } } catch (Exception ex) { MessageBox.Show("BS :1" + ex.Message, "OpenMiracle", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
/// <summary> /// Function to fill the grid /// </summary> public void GridFill() { try { CurrencyInfo InfoCurrency = new CurrencyInfo(); CurrencySP SpCurrency = new CurrencySP(); InfoCurrency = SpCurrency.CurrencyView(1); int inDecimalPlaces = InfoCurrency.NoOfDecimalPlaces; string calculationMethod = string.Empty; SettingsInfo InfoSettings = new SettingsInfo(); SettingsSP SpSettings = new SettingsSP(); //--------------- Selection Of Calculation Method According To Settings ------------------// if (SpSettings.SettingsStatusCheck("StockValueCalculationMethod") == "FIFO") { calculationMethod = "FIFO"; } else if (SpSettings.SettingsStatusCheck("StockValueCalculationMethod") == "Average Cost") { calculationMethod = "Average Cost"; } else if (SpSettings.SettingsStatusCheck("StockValueCalculationMethod") == "High Cost") { calculationMethod = "High Cost"; } else if (SpSettings.SettingsStatusCheck("StockValueCalculationMethod") == "Low Cost") { calculationMethod = "Low Cost"; } else if (SpSettings.SettingsStatusCheck("StockValueCalculationMethod") == "Last Purchase Rate") { calculationMethod = "Last Purchase Rate"; } StockPostingSP spstock = new StockPostingSP(); decimal decrackId = 0; DataSet dsstock = new DataSet(); DataTable dtbl = new DataTable(); if (cmbRack.SelectedValue != null) { decrackId = Convert.ToDecimal(cmbRack.SelectedValue.ToString()); } dtbl = spstock.StockReportGridFill1(txtproductName.Text, Convert.ToDecimal(cmbBrand.SelectedValue.ToString()), Convert.ToDecimal(cmbModel.SelectedValue.ToString()), (txtProductCode.Text), Convert.ToDecimal(cmbGodown.SelectedValue.ToString()), decrackId, Convert.ToDecimal(cmbSize.SelectedValue.ToString()), Convert.ToDecimal(cmbTax.SelectedValue.ToString()), Convert.ToDecimal(cmbProductgroup.SelectedValue.ToString()), txtBatchName.Text); if (dtbl.Rows.Count > 0) { decimal decTotal = 0; for (int i = 0; i < dtbl.Rows.Count; i++) { if (dtbl.Rows[i]["stockvalue"].ToString() != string.Empty) { decTotal = decTotal + Convert.ToDecimal(dtbl.Rows[i]["stockvalue"].ToString()); } } decTotal = Math.Round(decTotal, 2); txtTotal.Text = decTotal.ToString(); } else { txtTotal.Text = "0.00"; } dgvStockReport.DataSource = dtbl; //if (dtbl.Columns.Count > 0) //{ // dgvStockReport.Columns["stockvalue"].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight; //} } catch (Exception ex) { MessageBox.Show("STKR:8" + ex.Message, "OpenMiracle", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
/// <summary> /// Function to fill Datagridview /// </summary> public void GridFill() { try { if (!isFormLoad) { DateValidation objValidation = new DateValidation(); objValidation.DateValidationFunction(txtFromDate); if (txtFromDate.Text == string.Empty) { txtFromDate.Text = PublicVariables._dtFromDate.ToString("dd-MMM-yyyy"); } objValidation.DateValidationFunction(txttoDate); if (txttoDate.Text == string.Empty) { txttoDate.Text = PublicVariables._dtToDate.ToString("dd-MMM-yyyy"); } DateTime strFromDate = DateTime.Parse(txtFromDate.Text.ToString()); DateTime strTodate = DateTime.Parse(txttoDate.Text.ToString()); FinancialStatementSP spFinancial = new FinancialStatementSP(); DataSet dsetFinancial = new DataSet(); SettingsInfo InfoSettings = new SettingsInfo(); SettingsSP SpSettings = new SettingsSP(); dsetFinancial = spFinancial.CashFlow(strFromDate, strTodate); DataTable dtbl = new DataTable(); Font newFont = new Font(dgvCashflow.Font, FontStyle.Bold); CurrencyInfo InfoCurrency = new CurrencyInfo(); CurrencySP SpCurrency = new CurrencySP(); InfoCurrency = SpCurrency.CurrencyView(1); int inDecimalPlaces = InfoCurrency.NoOfDecimalPlaces; dgvCashflow.Rows.Clear(); for (int i = 0; i < 8; i++) { dtbl = dsetFinancial.Tables[i]; foreach (DataRow rw in dtbl.Rows) { dgvCashflow.Rows.Add(); dgvCashflow.Rows[dgvCashflow.Rows.Count - 1].Cells["dgvtxtParticulars"].Value = rw["accountGroupName"].ToString(); dgvCashflow.Rows[dgvCashflow.Rows.Count - 1].Cells["dgvtxtinflow"].Value = rw["Balance"].ToString(); dgvCashflow.Rows[dgvCashflow.Rows.Count - 1].Cells["dgvtxtID1"].Value = rw["accountGroupId"].ToString(); } } //-------------------------------Calculating TotalInflow----------------------------------------- decimal dcTotalInflow = 0m; if (dtbl.Rows.Count > 0) { for (int i = 0; i < dgvCashflow.Rows.Count; i++) { decimal dcTotalIn = decimal.Parse(dgvCashflow.Rows[i].Cells["dgvtxtinflow"].Value.ToString()); dcTotalInflow += dcTotalIn; } dcTotInflow = dcTotalInflow; } //-----------------Outflow------------------------------ int index = 0; for (int i = 8; i < 15; i++) { dtbl = new DataTable(); dtbl = dsetFinancial.Tables[i]; foreach (DataRow rw in dtbl.Rows) { if (index < dgvCashflow.Rows.Count) { dgvCashflow.Rows[index].Cells["dgvtxtParticulars1"].Value = rw["accountGroupName1"].ToString(); dgvCashflow.Rows[index].Cells["dgvtxtoutflow"].Value = rw["Balance1"].ToString(); dgvCashflow.Rows[index].Cells["dgvtxtID2"].Value = rw["accountGroupId"].ToString(); } else { dgvCashflow.Rows.Add(); dgvCashflow.Rows[dgvCashflow.Rows.Count - 1].Cells["dgvtxtParticulars1"].Value = rw["accountGroupName1"].ToString(); dgvCashflow.Rows[dgvCashflow.Rows.Count - 1].Cells["dgvtxtoutflow"].Value = rw["Balance1"].ToString(); dgvCashflow.Rows[dgvCashflow.Rows.Count - 1].Cells["dgvtxtID2"].Value = rw["accountGroupId"].ToString(); } index++; } } //-------------------------------Calculating TotalOutflow----------------------------------------- decimal dcTotalOutflow = 0m; if (dtbl.Rows.Count > 0) { for (int i = 0; i < dgvCashflow.Rows.Count - 1; i++) { decimal dcTotalIn = decimal.Parse(dgvCashflow.Rows[i].Cells["dgvtxtoutflow"].Value.ToString()); dcTotalOutflow += dcTotalIn; } dcTotOutflow = dcTotalOutflow; } dgvCashflow.Rows.Add(); dgvCashflow.Rows[dgvCashflow.Rows.Count - 1].Cells["dgvtxtinflow"].Value = "_______________________"; dgvCashflow.Rows[dgvCashflow.Rows.Count - 1].Cells["dgvtxtoutflow"].Value = "_______________________"; dgvCashflow.Rows.Add(); dgvCashflow.Rows[dgvCashflow.Rows.Count - 1].DefaultCellStyle.Font = newFont; dgvCashflow.Rows[dgvCashflow.Rows.Count - 1].Cells["dgvtxtParticulars"].Value = "Total"; dgvCashflow.Rows[dgvCashflow.Rows.Count - 1].Cells["dgvtxtParticulars1"].Value = "Total"; dgvCashflow.Rows[dgvCashflow.Rows.Count - 1].Cells["dgvtxtinflow"].Value = Math.Round((dcTotalInflow), inDecimalPlaces); dgvCashflow.Rows[dgvCashflow.Rows.Count - 1].Cells["dgvtxtoutflow"].Value = Math.Round((dcTotalOutflow), inDecimalPlaces); if (dgvCashflow.Columns.Count > 0) { dgvCashflow.Columns["dgvtxtinflow"].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight; dgvCashflow.Columns["dgvtxtoutflow"].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight; } if (inCurrenRowIndex >= 0 && dgvCashflow.Rows.Count > 0 && inCurrenRowIndex < dgvCashflow.Rows.Count) { if (dgvCashflow.Rows[inCurrenRowIndex].Cells[inCurentcolIndex].Visible) { dgvCashflow.CurrentCell = dgvCashflow.Rows[inCurrenRowIndex].Cells[inCurentcolIndex]; } if (dgvCashflow.CurrentCell != null && dgvCashflow.CurrentCell.Visible) { dgvCashflow.CurrentCell.Selected = true; } } inCurrenRowIndex = 0; } } catch (Exception ex) { MessageBox.Show("CF:01" + ex.Message, "OpenMiracle", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
/// <summary> /// Checking the general settings before loading the MDI page. /// This either enables or disables the controls on the form depending on the current settings /// </summary> public void SettingsCheck() { try { SettingsSP spSettings = new SettingsSP(); if (spSettings.SettingsStatusCheck("Tax") == "Yes") { formMDI.MDIObj.taxToolStripMenuItem.Enabled = true; } else { formMDI.MDIObj.taxToolStripMenuItem.Enabled = false; } if (spSettings.SettingsStatusCheck("Budget") == "Yes") { formMDI.MDIObj.budgetToolStripMenuItem.Enabled = true; } else { formMDI.MDIObj.budgetToolStripMenuItem.Enabled = false; } if (spSettings.SettingsStatusCheck("Payroll") == "Yes") { formMDI.MDIObj.payrollToolStripMenuItem.Enabled = true; formMDI.MDIObj.payrollToolStripMenuItem1.Enabled = true; foreach (ToolStripMenuItem toolItem in formMDI.MDIObj.payrollToolStripMenuItem1.DropDownItems) { toolItem.Enabled = true; } } else { formMDI.MDIObj.payrollToolStripMenuItem.Enabled = false; formMDI.MDIObj.payrollToolStripMenuItem1.Enabled = false; foreach (ToolStripMenuItem toolItem in formMDI.MDIObj.payrollToolStripMenuItem1.DropDownItems) { toolItem.Enabled = false; } } if (spSettings.SettingsStatusCheck("MultiCurrency") == "Yes") { formMDI.MDIObj.currencyToolStripMenuItem.Enabled = true; } else { formMDI.MDIObj.currencyToolStripMenuItem.Enabled = false; } if (spSettings.SettingsStatusCheck("AllowBatch") == "Yes") { formMDI.MDIObj.batchToolStripMenuItem.Enabled = true; } else { formMDI.MDIObj.batchToolStripMenuItem.Enabled = false; } if (spSettings.SettingsStatusCheck("AllowSize") == "Yes") { formMDI.MDIObj.sizeToolStripMenuItem.Enabled = true; } else { formMDI.MDIObj.sizeToolStripMenuItem.Enabled = false; } if (spSettings.SettingsStatusCheck("AllowGodown") == "Yes") { formMDI.MDIObj.godownToolStripMenuItem.Enabled = true; if (spSettings.SettingsStatusCheck("AllowRack") == "Yes") { formMDI.MDIObj.rackToolStripMenuItem.Enabled = true; } else { formMDI.MDIObj.rackToolStripMenuItem.Enabled = false; } } else { formMDI.MDIObj.godownToolStripMenuItem.Enabled = false; formMDI.MDIObj.rackToolStripMenuItem.Enabled = false; } if (spSettings.SettingsStatusCheck("AllowModelNo") == "Yes") { formMDI.MDIObj.modelNumberToolStripMenuItem.Enabled = true; } else { formMDI.MDIObj.modelNumberToolStripMenuItem.Enabled = false; } } catch (Exception ex) { MessageBox.Show("LOGIN:"******"OpenMiracle", MessageBoxButtons.OK, MessageBoxIcon.Information); } }