Exemple #1
0
        public SalesOrderDetailsInfo QuantityEditingAfterCheckingSalesQuotationForSalesOrder(decimal decSalesOrderId, decimal decProductId)
        {
            SalesOrderDetailsInfo infoSalesOrderDetails = new SalesOrderDetailsInfo();
            SqlDataReader         sdrReader             = null;

            try
            {
                if (base.sqlcon.State == ConnectionState.Closed)
                {
                    base.sqlcon.Open();
                }
                SqlCommand sqlcmd = new SqlCommand("QuantityEditingAfterCheckingSalesQuotationForSalesOrder", base.sqlcon);
                sqlcmd.CommandType = CommandType.StoredProcedure;
                SqlParameter sprmparam3 = new SqlParameter();
                sprmparam3       = sqlcmd.Parameters.Add("@salesOrderMasterId", SqlDbType.Decimal);
                sprmparam3.Value = decSalesOrderId;
                sprmparam3       = sqlcmd.Parameters.Add("@productId", SqlDbType.Decimal);
                sprmparam3.Value = decProductId;
                sdrReader        = sqlcmd.ExecuteReader();
                while (sdrReader.Read())
                {
                    infoSalesOrderDetails.Qty = Convert.ToDecimal(((DbDataReader)sdrReader)["Qty"].ToString());
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
            finally
            {
                sdrReader.Close();
                base.sqlcon.Close();
            }
            return(infoSalesOrderDetails);
        }
Exemple #2
0
 public void SalesOrderDetailsAdd(SalesOrderDetailsInfo infoSalesorderdetails)
 {
     try
     {
         spSalesOrderDetails.SalesOrderDetailsAdd(infoSalesorderdetails);
     }
     catch (Exception ex)
     {
         MessageBox.Show("SOBLL6:" + ex.Message, "OpenMiracle", MessageBoxButtons.OK, MessageBoxIcon.Information);
     }
 }
Exemple #3
0
 public void SalesOrderDetailsEdit(SalesOrderDetailsInfo salesorderdetailsinfo)
 {
     try
     {
         if (base.sqlcon.State == ConnectionState.Closed)
         {
             base.sqlcon.Open();
         }
         SqlCommand sccmd = new SqlCommand("SalesOrderDetailsEdit", base.sqlcon);
         sccmd.CommandType = CommandType.StoredProcedure;
         SqlParameter sprmparam14 = new SqlParameter();
         sprmparam14       = sccmd.Parameters.Add("@salesOrderDetailsId", SqlDbType.Decimal);
         sprmparam14.Value = salesorderdetailsinfo.SalesOrderDetailsId;
         sprmparam14       = sccmd.Parameters.Add("@salesOrderMasterId", SqlDbType.Decimal);
         sprmparam14.Value = salesorderdetailsinfo.SalesOrderMasterId;
         sprmparam14       = sccmd.Parameters.Add("@productId", SqlDbType.Decimal);
         sprmparam14.Value = salesorderdetailsinfo.ProductId;
         sprmparam14       = sccmd.Parameters.Add("@qty", SqlDbType.Decimal);
         sprmparam14.Value = salesorderdetailsinfo.Qty;
         sprmparam14       = sccmd.Parameters.Add("@rate", SqlDbType.Decimal);
         sprmparam14.Value = salesorderdetailsinfo.Rate;
         sprmparam14       = sccmd.Parameters.Add("@unitId", SqlDbType.Decimal);
         sprmparam14.Value = salesorderdetailsinfo.UnitId;
         sprmparam14       = sccmd.Parameters.Add("@unitConversionId", SqlDbType.Decimal);
         sprmparam14.Value = salesorderdetailsinfo.UnitConversionId;
         sprmparam14       = sccmd.Parameters.Add("@amount", SqlDbType.Decimal);
         sprmparam14.Value = salesorderdetailsinfo.Amount;
         sprmparam14       = sccmd.Parameters.Add("@quotationDetailsId", SqlDbType.Decimal);
         sprmparam14.Value = salesorderdetailsinfo.QuotationDetailsId;
         sprmparam14       = sccmd.Parameters.Add("@batchId", SqlDbType.Decimal);
         sprmparam14.Value = salesorderdetailsinfo.BatchId;
         sprmparam14       = sccmd.Parameters.Add("@slNo", SqlDbType.Int);
         sprmparam14.Value = salesorderdetailsinfo.SlNo;
         sprmparam14       = sccmd.Parameters.Add("@extra1", SqlDbType.VarChar);
         sprmparam14.Value = salesorderdetailsinfo.Extra1;
         sprmparam14       = sccmd.Parameters.Add("@extra2", SqlDbType.VarChar);
         sprmparam14.Value = salesorderdetailsinfo.Extra2;
         sccmd.ExecuteNonQuery();
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.ToString());
     }
     finally
     {
         base.sqlcon.Close();
     }
 }
Exemple #4
0
        public SalesOrderDetailsInfo SalesOrderDetailsView(decimal salesOrderDetailsId)
        {
            SalesOrderDetailsInfo salesorderdetailsinfo = new SalesOrderDetailsInfo();
            SqlDataReader         sdrreader             = null;

            try
            {
                if (base.sqlcon.State == ConnectionState.Closed)
                {
                    base.sqlcon.Open();
                }
                SqlCommand sccmd = new SqlCommand("SalesOrderDetailsView", base.sqlcon);
                sccmd.CommandType = CommandType.StoredProcedure;
                SqlParameter sprmparam2 = new SqlParameter();
                sprmparam2       = sccmd.Parameters.Add("@salesOrderDetailsId", SqlDbType.Decimal);
                sprmparam2.Value = salesOrderDetailsId;
                sdrreader        = sccmd.ExecuteReader();
                while (sdrreader.Read())
                {
                    salesorderdetailsinfo.SalesOrderDetailsId = decimal.Parse(((DbDataReader)sdrreader)[0].ToString());
                    salesorderdetailsinfo.SalesOrderMasterId  = decimal.Parse(((DbDataReader)sdrreader)[1].ToString());
                    salesorderdetailsinfo.ProductId           = decimal.Parse(((DbDataReader)sdrreader)[2].ToString());
                    salesorderdetailsinfo.Qty                = decimal.Parse(((DbDataReader)sdrreader)[3].ToString());
                    salesorderdetailsinfo.Rate               = decimal.Parse(((DbDataReader)sdrreader)[4].ToString());
                    salesorderdetailsinfo.UnitId             = decimal.Parse(((DbDataReader)sdrreader)[5].ToString());
                    salesorderdetailsinfo.UnitConversionId   = decimal.Parse(((DbDataReader)sdrreader)[6].ToString());
                    salesorderdetailsinfo.Amount             = decimal.Parse(((DbDataReader)sdrreader)[7].ToString());
                    salesorderdetailsinfo.QuotationDetailsId = decimal.Parse(((DbDataReader)sdrreader)[8].ToString());
                    salesorderdetailsinfo.SlNo               = int.Parse(((DbDataReader)sdrreader)[9].ToString());
                    salesorderdetailsinfo.ExtraDate          = DateTime.Parse(((DbDataReader)sdrreader)[10].ToString());
                    salesorderdetailsinfo.Extra1             = ((DbDataReader)sdrreader)[11].ToString();
                    salesorderdetailsinfo.Extra2             = ((DbDataReader)sdrreader)[12].ToString();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
            finally
            {
                sdrreader.Close();
                base.sqlcon.Close();
            }
            return(salesorderdetailsinfo);
        }
 /// <summary>
 /// Fill Details Corresponding Quotation No
 /// </summary>
 public void FillQuotationDetails()
 {
     SerialNo();
     try
     {
         BatchBll BllBatch = new BatchBll();
         SalesOrderDetailsInfo infoSalesOrderDetails = new SalesOrderDetailsInfo();
         TransactionsGeneralFillBll TransactionGeneralFillObj = new TransactionsGeneralFillBll();
         decimal decOrderNo = 0;
         if (!isEditFill)
         {
             inMaxCount = 0;
             decOrderNo = Convert.ToDecimal(cmbQuotationNo.SelectedValue.ToString());
             dgvSalesOrder.Rows.Clear();
             List<DataTable> ListObj = new SalesQuotationBll().QuotationMasterViewByQuotationMasterId(Convert.ToDecimal(cmbQuotationNo.SelectedValue.ToString()));
             if (ListObj[0].Rows.Count > 0)
             {
                 cmbPricingLevel.SelectedValue = ListObj[0].Rows[0]["pricingLevelId"].ToString();
                 if (ListObj[0].Rows[0]["employeeId"].ToString() != "")
                 {
                     strSalesMan = ListObj[0].Rows[0]["employeeId"].ToString();
                     cmbSalesMan.SelectedValue = strSalesMan;
                     if (cmbSalesMan.SelectedValue == null)
                     {
                         SalesManComboFill();
                         cmbSalesMan.SelectedValue = ListObj[0].Rows[0]["employeeId"].ToString();
                     }
                 }
                 DGVCurrencyComboFill();
                 cmbCurrency.SelectedValue = ListObj[0].Rows[0]["exchangeRateId"].ToString();
                 List<DataTable> ListObj1 = new SalesQuotationBll().SalesQuotationDetailsViewByquotationMasterIdWithRemainingBySO(Convert.ToDecimal(cmbQuotationNo.SelectedValue.ToString()), decSalesOrderMasterId);
                 int inRowIndex = 0;
                 foreach (DataRow drowDetails in ListObj1[0].Rows)
                 {
                     dgvSalesOrder.Rows.Add();
                     isValueChange = false;
                     isDoAfterGridFill = false;
                     dgvSalesOrder.Rows[dgvSalesOrder.Rows.Count - 2].Cells["dgvtxtSalesOrderDetailsId"].Value = drowDetails.ItemArray[0].ToString();
                     dgvSalesOrder.Rows[dgvSalesOrder.Rows.Count - 2].Cells["dgvtxtSalesQuotationDetailsId"].Value = drowDetails.ItemArray[0].ToString();
                     String ProductId = drowDetails.ItemArray[2].ToString();
                     infoProduct = new ProductCreationBll().ProductView(Convert.ToDecimal(ProductId));
                     dgvSalesOrder.Rows[dgvSalesOrder.Rows.Count - 2].Cells["dgvtxtBarcode"].Value = drowDetails["barcode"].ToString();
                     dgvSalesOrder.Rows[dgvSalesOrder.Rows.Count - 2].Cells["dgvtxtProductId"].Value = drowDetails["productId"];
                     dgvSalesOrder.Rows[dgvSalesOrder.Rows.Count - 2].Cells["dgvtxtProductCode"].Value = infoProduct.ProductCode;
                     dgvSalesOrder.Rows[dgvSalesOrder.Rows.Count - 2].Cells["dgvtxtProductName"].Value = drowDetails["productName"].ToString();
                     AssignProductDefaultValues(dgvSalesOrder.Rows.Count - 2, drowDetails["productId"].ToString());
                     TransactionGeneralFillObj.UnitViewAllByProductId(dgvSalesOrder, infoProduct.ProductId.ToString(), dgvSalesOrder.Rows.Count - 2);
                     dgvSalesOrder.Rows[dgvSalesOrder.Rows.Count - 2].Cells["dgvtxtQty"].Value = drowDetails["qty"].ToString();
                     UnitComboFill(Convert.ToDecimal(ProductId), dgvSalesOrder.Rows.Count - 2, dgvSalesOrder.Rows[dgvSalesOrder.Rows.Count - 2].Cells["dgvcmbUnit"].ColumnIndex);
                     dgvSalesOrder.Rows[dgvSalesOrder.Rows.Count - 2].Cells["dgvcmbUnit"].Value = Convert.ToDecimal(drowDetails["unitId"].ToString());
                     dgvSalesOrder.Rows[dgvSalesOrder.Rows.Count - 2].Cells["dgvtxtRate"].Value = drowDetails["rate"].ToString();
                     dgvSalesOrder.Rows[dgvSalesOrder.Rows.Count - 2].Cells["dgvtxtAmount"].Value = drowDetails["amount"].ToString();
                     BatchComboFill(Convert.ToDecimal(drowDetails["productId"].ToString()), dgvSalesOrder.Rows.Count - 2, dgvSalesOrder.Rows[dgvSalesOrder.Rows.Count - 2].Cells["dgvcmbBatch"].ColumnIndex);
                     if (Convert.ToDecimal(drowDetails["batchId"].ToString()) != 0)
                     {
                         dgvSalesOrder.Rows[dgvSalesOrder.Rows.Count - 2].Cells["dgvcmbBatch"].Value = Convert.ToDecimal(drowDetails["batchId"].ToString());
                     }
                     else
                     {
                         StockPostingBll BllStockPosting = new StockPostingBll();
                         decimal decBatchId = BllStockPosting.BatchViewByProductId(Convert.ToDecimal(ProductId));
                         dgvSalesOrder.Rows[dgvSalesOrder.Rows.Count - 2].Cells["dgvcmbBatch"].Value = decBatchId;
                     }
                     string strBarcode = BllBatch.ProductBatchBarcodeViewByBatchId(Convert.ToDecimal(dgvSalesOrder.Rows[dgvSalesOrder.Rows.Count - 2].Cells["dgvcmbBatch"].Value.ToString()));
                     dgvSalesOrder.Rows[dgvSalesOrder.Rows.Count - 2].Cells["dgvtxtBarcode"].Value = strBarcode.ToString();
                     dgvSalesOrder.Rows[dgvSalesOrder.Rows.Count - 2].Cells["dgvtxtProductCode"].ReadOnly = true;
                     dgvSalesOrder.Rows[dgvSalesOrder.Rows.Count - 2].Cells["dgvtxtProductName"].ReadOnly = true;
                     dgvSalesOrder.Rows[dgvSalesOrder.Rows.Count - 2].Cells["dgvtxtBarcode"].ReadOnly = true;
                     dgvSalesOrder.Rows[dgvSalesOrder.Rows.Count - 2].Cells["inRowIndex"].Value = drowDetails["extra1"].ToString();
                     UnitConvertionBll bllUnitConvertion = new UnitConvertionBll();
                     List<DataTable> list = new List<DataTable>();
                     list = bllUnitConvertion.UnitConversionIdAndConRateViewallByProductId(dgvSalesOrder.Rows[dgvSalesOrder.Rows.Count - 2].Cells["dgvtxtProductId"].Value.ToString());
                     foreach (DataRow drUnitByProduct in list[0].Rows)
                     {
                         if (dgvSalesOrder.Rows[dgvSalesOrder.Rows.Count - 2].Cells["dgvcmbUnit"].Value.ToString() == drUnitByProduct.ItemArray[0].ToString())
                         {
                             dgvSalesOrder.Rows[dgvSalesOrder.Rows.Count - 2].Cells["dgvtxtUnitConversionId"].Value = Convert.ToDecimal(drUnitByProduct.ItemArray[2].ToString());
                             dgvSalesOrder.Rows[dgvSalesOrder.Rows.Count - 2].Cells["dgvtxtConversionRate"].Value = Convert.ToDecimal(drUnitByProduct.ItemArray[3].ToString());
                         }
                     }
                     decCurrentConversionRate = Convert.ToDecimal(dgvSalesOrder.Rows[dgvSalesOrder.Rows.Count - 2].Cells["dgvtxtConversionRate"].Value.ToString());
                     decCurrentRate = Convert.ToDecimal(dgvSalesOrder.Rows[dgvSalesOrder.Rows.Count - 2].Cells["dgvtxtRate"].Value.ToString());
                     if (cmbQuotationNo.Visible == true)
                     {
                         dgvSalesOrder.Rows[dgvSalesOrder.Rows.Count - 2].Cells["dgvcmbUnit"].ReadOnly = true;
                     }
                     dgvSalesOrder.Rows[dgvSalesOrder.Rows.Count - 2].HeaderCell.Value = "";
                     int intIndex = 0;
                     int.TryParse(drowDetails["extra1"].ToString(), out intIndex);
                     if (inMaxCount < intIndex)
                         inMaxCount = intIndex;
                     inRowIndex++;
                     isValueChange = true;
                 }
                 for (int i = inRowIndex; i < dgvSalesOrder.Rows.Count; ++i)
                     dgvSalesOrder["inRowIndex", i].Value = GetNextinRowIndex().ToString();
                 SerialNo();
                 TotalAmountCalculation();
                 isDoAfterGridFill = true;
             }
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show("SO38: " + ex.Message, "OpenMiracle", MessageBoxButtons.OK, MessageBoxIcon.Information);
     }
 }
 /// <summary>
 /// Edit Function When update datas in Register or Report
 /// </summary>
 public void EditFunction()
 {
     try
     {
         decimal decSalesOrderSuffixPrefixId = 0;
         SalesOrderBll bllSalesOrder = new SalesOrderBll();
         SalesOrderMasterInfo infoSalesOrderMaster = new SalesOrderMasterInfo();
         SalesOrderDetailsInfo infoSalesOrderDetails = new SalesOrderDetailsInfo();
         infoSalesOrderMaster.VoucherTypeId = decSalesVoucherId;
         for (int inI = 0; inI < dgvSalesOrder.Rows.Count - 1; inI++)
         {
             if (Convert.ToDecimal(dgvSalesOrder.Rows[inI].Cells["dgvtxtSalesOrderDetailsId"].Value) != null && Convert.ToDecimal(dgvSalesOrder.Rows[inI].Cells["dgvtxtSalesOrderDetailsId"].Value) != 0)
             {
                 //for (int i = 0; i < dgvSalesOrder.Rows.Count - 1; i++)
                 //{
                 isEditDetails = Convert.ToString(bllSalesOrder.SalesOrderRefererenceCheckForEditDetails(Convert.ToDecimal(dgvSalesOrder.Rows[inI].Cells["dgvtxtSalesOrderDetailsId"].Value)));
                 //}
             }
         }
         isEditMaster = Convert.ToString(bllSalesOrder.SalesOrderRefererenceCheckForEditMaster(decSalesOrderMasterId));
         if (isEditMaster == "False" && isEditDetails == "False")
         {
             infoSalesOrderMaster.SalesOrderMasterId = decSalesOrderMasterId;
             infoSalesOrderMaster.Cancelled = cbxCancelled.Checked;
             infoSalesOrderMaster.Date = Convert.ToDateTime(txtDate.Text);
             infoSalesOrderMaster.DueDate = Convert.ToDateTime(txtDueDate.Text);
             infoSalesOrderMaster.LedgerId = Convert.ToDecimal(cmbCashOrParty.SelectedValue.ToString());
             infoSalesOrderMaster.SuffixPrefixId = Convert.ToDecimal(decSalesOrderSuffixPrefixId);
             infoSalesOrderMaster.VoucherNo = strVoucherNo;
             infoSalesOrderMaster.InvoiceNo = txtOrderNo.Text;
             infoSalesOrderMaster.UserId = PublicVariables._decCurrentUserId;
             infoSalesOrderMaster.PricinglevelId = Convert.ToDecimal(cmbPricingLevel.SelectedValue.ToString());
             infoSalesOrderMaster.EmployeeId = Convert.ToDecimal(cmbSalesMan.SelectedValue.ToString());
             if (cmbQuotationNo.SelectedIndex == -1)
             {
                 infoSalesOrderMaster.QuotationMasterId = 0;
             }
             else
             {
                 infoSalesOrderMaster.QuotationMasterId = Convert.ToDecimal(cmbQuotationNo.SelectedValue.ToString());
             }
             infoSalesOrderMaster.FinancialYearId = PublicVariables._decCurrentFinancialYearId;
             infoSalesOrderMaster.ExchangeRateId = Convert.ToDecimal(cmbCurrency.SelectedValue.ToString());
             infoSalesOrderMaster.Narration = txtNarration.Text.Trim();
             infoSalesOrderMaster.TotalAmount = Convert.ToDecimal(txtTotalAmount.Text);
             infoSalesOrderMaster.Extra1 = string.Empty;
             infoSalesOrderMaster.Extra2 = string.Empty;
             RemoveSalesOrderDetails();
             bllSalesOrder.SalesOrderMasterEdit(infoSalesOrderMaster);
             SalesOrderDetailsEditFill();
             Messages.UpdatedMessage();
             if (frmSalesOrderRegisterObj != null)
             {
                 if (cbxPrintAfterSave.Checked == true)
                 {
                     if (new SettingsBll().SettingsStatusCheck("Printer") == "Dot Matrix")
                     {
                         PrintForDotMatrix(decSalesOrderMasterId);
                     }
                     else
                     {
                         Print(decSalesOrderMasterId);
                     }
                 }
                 this.Close();
                 frmSalesOrderRegisterObj.GridFill();
             }
             if (frmSalesOrderReportObj != null)
             {
                 if (cbxPrintAfterSave.Checked == true)
                 {
                     if (new SettingsBll().SettingsStatusCheck("Printer") == "Dot Matrix")
                     {
                         PrintForDotMatrix(decSalesOrderMasterId);
                     }
                     else
                     {
                         Print(decSalesOrderMasterId);
                     }
                 }
                 this.Close();
                 frmSalesOrderReportObj.GridFill();
             }
             if (frmDayBookObj != null)
             {
                 if (cbxPrintAfterSave.Checked == true)
                 {
                     if (new SettingsBll().SettingsStatusCheck("Printer") == "Dot Matrix")
                     {
                         PrintForDotMatrix(decSalesOrderMasterId);
                     }
                     else
                     {
                         Print(decSalesOrderMasterId);
                     }
                 }
                 this.Close();
             }
             if (objVoucherSearch != null)
             {
                 if (cbxPrintAfterSave.Checked == true)
                 {
                     if (new SettingsBll().SettingsStatusCheck("Printer") == "Dot Matrix")
                     {
                         PrintForDotMatrix(decSalesOrderMasterId);
                     }
                     else
                     {
                         Print(decSalesOrderMasterId);
                     }
                 }
                 this.Close();
                 objVoucherSearch.GridFill();
             }
         }
         else
         {
             Messages.ReferenceExistsMessageForUpdate();
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show("SO47:" + ex.Message, "OpenMiracle", MessageBoxButtons.OK, MessageBoxIcon.Information);
     }
 }
 /// <summary>
 /// Function to use the SaveItems to table
 /// </summary>
 public void SaveFunction()
 {
     try
     {
         decimal decSalesOrderSuffixPrefixId = 0;
         SalesOrderDetailsInfo infoSalesOrderDetails = new SalesOrderDetailsInfo();
         SalesOrderMasterInfo infoSalesOrderMaster = new SalesOrderMasterInfo();
         SalesOrderBll bllSalesOrder = new SalesOrderBll();
         SalesOrderBll bllSalesOrderMaster = new SalesOrderBll();
         infoSalesOrderMaster.Cancelled = false;
         infoSalesOrderMaster.Date = Convert.ToDateTime(txtDate.Text);
         infoSalesOrderMaster.DueDate = Convert.ToDateTime(txtDueDate.Text);
         infoSalesOrderMaster.LedgerId = Convert.ToDecimal(cmbCashOrParty.SelectedValue.ToString());
         if (isAutomatic)
         {
             infoSalesOrderMaster.SuffixPrefixId = decSalesOrderSuffixPrefixId;
             infoSalesOrderMaster.VoucherNo = strVoucherNo;
         }
         else
         {
             infoSalesOrderMaster.SuffixPrefixId = 0;
             infoSalesOrderMaster.VoucherNo = bllSalesOrderMaster.VoucherNoMax(decSalesOrderTypeId);
         }
         infoSalesOrderMaster.VoucherTypeId = decSalesOrderTypeId;
         infoSalesOrderMaster.InvoiceNo = txtOrderNo.Text;
         infoSalesOrderMaster.UserId = PublicVariables._decCurrentUserId;
         if (cmbSalesMan.SelectedIndex == -1)
         {
             infoSalesOrderMaster.SalesOrderMasterId = 0;
         }
         else
         {
             infoSalesOrderMaster.EmployeeId = Convert.ToDecimal(cmbSalesMan.SelectedValue.ToString());
         }
         infoSalesOrderMaster.FinancialYearId = PublicVariables._decCurrentFinancialYearId;
         if (cmbPricingLevel.SelectedIndex == -1)
         {
             infoSalesOrderMaster.PricinglevelId = 0;
         }
         else
         {
             infoSalesOrderMaster.PricinglevelId = Convert.ToDecimal(cmbPricingLevel.SelectedValue.ToString());
         }
         infoSalesOrderMaster.Narration = txtNarration.Text.Trim();
         if (cmbQuotationNo.SelectedIndex == -1)
         {
             infoSalesOrderMaster.QuotationMasterId = 0;
         }
         else
         {
             infoSalesOrderMaster.QuotationMasterId = Convert.ToDecimal(cmbQuotationNo.SelectedValue.ToString());
         }
         infoSalesOrderMaster.ExchangeRateId = Convert.ToDecimal(cmbCurrency.SelectedValue.ToString());
         infoSalesOrderMaster.TotalAmount = Convert.ToDecimal(txtTotalAmount.Text);
         infoSalesOrderMaster.Extra1 = string.Empty;
         infoSalesOrderMaster.Extra2 = string.Empty;
         decSalesOrderMasterIdentity = Convert.ToDecimal(bllSalesOrderMaster.SalesOrderMasterAdd(infoSalesOrderMaster));
         int inRowcount = dgvSalesOrder.Rows.Count;
         for (int inI = 0; inI < inRowcount - 1; inI++)
         {
             infoSalesOrderDetails.SalesOrderMasterId = decSalesOrderMasterIdentity;
             if (dgvSalesOrder.Rows[inI].Cells["dgvtxtProductCode"].Value != null && dgvSalesOrder.Rows[inI].Cells["dgvtxtProductCode"].Value.ToString() != "")
             {
                 infoProduct = new ProductCreationBll().ProductViewByCode(dgvSalesOrder.Rows[inI].Cells["dgvtxtProductCode"].Value.ToString());
                 infoSalesOrderDetails.ProductId = infoProduct.ProductId;
             }
             if (dgvSalesOrder.Rows[inI].Cells["dgvtxtQty"].Value != null && dgvSalesOrder.Rows[inI].Cells["dgvtxtQty"].Value.ToString() != "")
             {
                 infoSalesOrderDetails.Qty = Convert.ToDecimal(dgvSalesOrder.Rows[inI].Cells["dgvtxtQty"].Value.ToString());
             }
             if (dgvSalesOrder.Rows[inI].Cells["dgvcmbUnit"].Value != null && dgvSalesOrder.Rows[inI].Cells["dgvcmbUnit"].Value.ToString() != "")
             {
                 infoSalesOrderDetails.UnitId = Convert.ToDecimal(dgvSalesOrder.Rows[inI].Cells["dgvcmbUnit"].Value.ToString());
                 infoSalesOrderDetails.UnitConversionId = decConversionId;
             }
             if (dgvSalesOrder.Rows[inI].Cells["dgvtxtUnitConversionId"].Value != null && dgvSalesOrder.Rows[inI].Cells["dgvtxtUnitConversionId"].Value.ToString() != "")
             {
                 infoSalesOrderDetails.UnitConversionId = Convert.ToDecimal(dgvSalesOrder.Rows[inI].Cells["dgvtxtUnitConversionId"].Value.ToString());
             }
             if (dgvSalesOrder.Rows[inI].Cells["dgvcmbBatch"].Value != null && dgvSalesOrder.Rows[inI].Cells["dgvcmbBatch"].Value.ToString() != string.Empty)
             {
                 infoSalesOrderDetails.BatchId = Convert.ToDecimal(dgvSalesOrder.Rows[inI].Cells["dgvcmbBatch"].Value.ToString());
             }
             if (dgvSalesOrder.Rows[inI].Cells["dgvtxtSalesQuotationDetailsId"].Value == null || dgvSalesOrder.Rows[inI].Cells["dgvtxtSalesQuotationDetailsId"].Value.ToString() == "")
             {
                 infoSalesOrderDetails.QuotationDetailsId = Convert.ToDecimal(0);
             }
             else
             {
                 infoSalesOrderDetails.QuotationDetailsId = Convert.ToDecimal(dgvSalesOrder.Rows[inI].Cells["dgvtxtSalesQuotationDetailsId"].Value);
             }
             infoSalesOrderDetails.Rate = Convert.ToDecimal(dgvSalesOrder.Rows[inI].Cells["dgvtxtRate"].Value.ToString());
             infoSalesOrderDetails.Amount = Convert.ToDecimal(dgvSalesOrder.Rows[inI].Cells["dgvtxtAmount"].Value.ToString());
             infoSalesOrderDetails.SlNo = Convert.ToInt32(dgvSalesOrder.Rows[inI].Cells["dgvtxtSlNo"].Value.ToString());
             infoSalesOrderDetails.UnitConversionId = Convert.ToDecimal(dgvSalesOrder.Rows[inI].Cells["dgvtxtUnitConversionId"].Value.ToString());
             infoSalesOrderDetails.Extra1 = string.Empty;
             infoSalesOrderDetails.Extra2 = string.Empty;
             bllSalesOrder.SalesOrderDetailsAdd(infoSalesOrderDetails);
         }
         Messages.SavedMessage();
         if (cbxPrintAfterSave.Checked == true)
         {
             if (new SettingsBll().SettingsStatusCheck("Printer") == "Dot Matrix")
             {
                 PrintForDotMatrix(decSalesOrderMasterIdentity);
             }
             else
             {
                 Print(decSalesOrderMasterIdentity);
             }
         }
         Clear();
     }
     catch (Exception ex)
     {
         MessageBox.Show("SO46:" + ex.Message, "OpenMiracle", MessageBoxButtons.OK, MessageBoxIcon.Information);
     }
 }
 /// <summary>
 /// Function to Editthe sales order details 
 /// </summary>
 public void SalesOrderDetailsEditFill()
 {
     try
     {
         SalesOrderDetailsInfo infoSalesOrderDetails = new SalesOrderDetailsInfo();
         SalesOrderMasterInfo infoSalesOrderMaster = new SalesOrderMasterInfo();
         SalesOrderBll bllSalesOrder = new SalesOrderBll();
         //SalesOrderBll spSalesOrdermaster = new SalesOrderMasterSP();
         for (int inI = 0; inI < dgvSalesOrder.Rows.Count - 1; inI++)
         {
             if (Convert.ToDecimal(dgvSalesOrder.Rows[inI].Cells["dgvtxtSalesOrderDetailsId"].Value) == 0 || dgvSalesOrder.Rows[inI].Cells["dgvtxtSalesOrderDetailsId"].Value == null)
             {
                 infoSalesOrderDetails.SalesOrderMasterId = decSalesOrderMasterId;
                 infoSalesOrderDetails.SalesOrderDetailsId = Convert.ToDecimal(dgvSalesOrder.Rows[inI].Cells["dgvtxtSalesOrderDetailsId"].Value);
                 infoProduct = new ProductCreationBll().ProductViewByCode(dgvSalesOrder.Rows[inI].Cells["dgvtxtProductCode"].Value.ToString());
                 infoSalesOrderDetails.ProductId = infoProduct.ProductId;
                 infoSalesOrderDetails.Qty = Convert.ToDecimal(dgvSalesOrder.Rows[inI].Cells["dgvtxtQty"].Value);
                 infoSalesOrderDetails.UnitId = Convert.ToDecimal(dgvSalesOrder.Rows[inI].Cells["dgvcmbUnit"].Value.ToString());
                 infoSalesOrderDetails.UnitConversionId = Convert.ToDecimal(dgvSalesOrder.Rows[inI].Cells["dgvtxtUnitConversionId"].Value.ToString());
                 infoSalesOrderDetails.BatchId = Convert.ToDecimal(dgvSalesOrder.Rows[inI].Cells["dgvcmbBatch"].Value.ToString());
                 infoSalesOrderDetails.Rate = Convert.ToDecimal(dgvSalesOrder.Rows[inI].Cells["dgvtxtRate"].Value.ToString());
                 infoSalesOrderDetails.Amount = Convert.ToDecimal(dgvSalesOrder.Rows[inI].Cells["dgvtxtAmount"].Value.ToString());
                 infoSalesOrderDetails.SlNo = Convert.ToInt32(dgvSalesOrder.Rows[inI].Cells["dgvtxtSlNo"].Value.ToString());
                 if (dgvSalesOrder.Rows[inI].Cells["dgvtxtSalesQuotationDetailsId"].Value != null && dgvSalesOrder.Rows[inI].Cells["dgvtxtSalesQuotationDetailsId"].Value.ToString() != string.Empty)
                 {
                     infoSalesOrderDetails.QuotationDetailsId = Convert.ToDecimal(dgvSalesOrder.Rows[inI].Cells["dgvtxtSalesQuotationDetailsId"].Value.ToString());
                 }
                 else
                 {
                     infoSalesOrderMaster.QuotationMasterId = 0;
                 }
                 infoSalesOrderDetails.Extra1 = string.Empty;
                 infoSalesOrderDetails.Extra2 = string.Empty;
                 bllSalesOrder.SalesOrderDetailsAdd(infoSalesOrderDetails);
             }
             else
             {
                 infoSalesOrderDetails.SalesOrderMasterId = decSalesOrderMasterId;
                 infoSalesOrderDetails.SalesOrderDetailsId = Convert.ToDecimal(dgvSalesOrder.Rows[inI].Cells["dgvtxtSalesOrderDetailsId"].Value);
                 infoProduct = new ProductCreationBll().ProductViewByCode(dgvSalesOrder.Rows[inI].Cells["dgvtxtProductCode"].Value.ToString());
                 infoSalesOrderDetails.ProductId = infoProduct.ProductId;
                 infoSalesOrderDetails.Qty = Convert.ToDecimal(dgvSalesOrder.Rows[inI].Cells["dgvtxtQty"].Value);
                 infoSalesOrderDetails.UnitId = Convert.ToDecimal(dgvSalesOrder.Rows[inI].Cells["dgvcmbUnit"].Value.ToString());
                 infoSalesOrderDetails.UnitConversionId = Convert.ToDecimal(dgvSalesOrder.Rows[inI].Cells["dgvtxtUnitConversionId"].Value.ToString());
                 infoSalesOrderDetails.BatchId = Convert.ToDecimal(dgvSalesOrder.Rows[inI].Cells["dgvcmbBatch"].Value.ToString());
                 infoSalesOrderDetails.Rate = Convert.ToDecimal(dgvSalesOrder.Rows[inI].Cells["dgvtxtRate"].Value.ToString());
                 infoSalesOrderDetails.Amount = Convert.ToDecimal(dgvSalesOrder.Rows[inI].Cells["dgvtxtAmount"].Value.ToString());
                 infoSalesOrderDetails.SlNo = Convert.ToInt32(dgvSalesOrder.Rows[inI].Cells["dgvtxtSlNo"].Value.ToString());
                 if (dgvSalesOrder.Rows[inI].Cells["dgvtxtSalesQuotationDetailsId"].Value != null && dgvSalesOrder.Rows[inI].Cells["dgvtxtSalesQuotationDetailsId"].Value.ToString() != string.Empty)
                 {
                     infoSalesOrderDetails.QuotationDetailsId = Convert.ToDecimal(dgvSalesOrder.Rows[inI].Cells["dgvtxtSalesQuotationDetailsId"].Value.ToString());
                 }
                 else
                 {
                     infoSalesOrderMaster.QuotationMasterId = 0;
                 }
                 infoSalesOrderDetails.Extra1 = string.Empty;
                 infoSalesOrderDetails.Extra2 = string.Empty;
                 bllSalesOrder.SalesOrderDetailsEdit(infoSalesOrderDetails);
             }
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show("SO43:" + ex.Message, "OpenMiracle", MessageBoxButtons.OK, MessageBoxIcon.Information);
     }
 }