private void BtnSave_Click(object sender, EventArgs e)
        {
            try
            {
                if (TxtRightDistSph.Text == "" || TxtRightDistCyl.Text == "" || TxtRightDistAxis.Text == "" || TxtLeftDistSph.Text == "" || TxtLeftDistCyl.Text == "" || TxtLeftDistAxis.Text == "" || TxtRightAdd.Text == "" || TxtLeftAdd.Text == "" || TxtLenseType.Text == "" || CmbFrame.Text == "" || TxtPD.Text == "" || TxtSegmentHeight.Text == "" || TxtSpecialIns.Text == "" || TxtRemarks.Text == "")
                {
                    CommonFunctions.ShowError(this, "Please Complete All Fields to continue...If You have Empty Fileds Please put'-' into Text Area...");
                    CommonFunctions.WriteUserLog(Session.Username, "tried to continue without enter all fields");
                }
                else
                {
                    if (SpecOrder.Advance == 0 || SpecOrder.PaymentMethod == "N-C")
                    {
                        SpecOrderController.FillFormTwo(TxtRightDistSph.Text, TxtRightDistCyl.Text, TxtRightDistAxis.Text, TxtLeftDistSph.Text, TxtLeftDistCyl.Text, TxtLeftDistAxis.Text, TxtRightAdd.Text, TxtLeftAdd.Text, TxtLenseType.Text, CmbFrame.Text, TxtPD.Text, TxtSegmentHeight.Text, TxtSpecialIns.Text, TxtRemarks.Text);
                        receiptController.FillReceipt(SpecOrder.OrderNumber, SpecOrder.Advance, SpecOrder.OrderDate, "SPEC", SpecOrder.custID);
                        technovisionDataSetTableAdapters.spectaclesTableAdapter t = new technovisionDataSetTableAdapters.spectaclesTableAdapter();
                        t.Insert(SpecOrder.OrderNumber, DateTime.Parse(SpecOrder.OrderDate), DateTime.Parse(SpecOrder.DueDate), SpecOrder.OrderStatus, SpecOrder.Total, SpecOrder.Advance, SpecOrder.Discount, SpecOrder.Balance, SpecOrder.TestBy, SpecOrder.Eyewear, SpecOrder.Lense, SpecOrder.PaymentPlan, SpecOrder.PaymentMethod, SpecOrder.DistRightSph, SpecOrder.DistRightCyl, SpecOrder.DistRightAxis, SpecOrder.DistLeftSph, SpecOrder.DistLeftCyl, SpecOrder.DistLeftAxis, SpecOrder.AddRight, SpecOrder.AddLeft, SpecOrder.LenseType, SpecOrder.Frame, SpecOrder.PD, SpecOrder.SegmentHeight, SpecOrder.SpecialInstruction, SpecOrder.Remarks, SpecOrder.ReminderDays, SpecOrder.Branch, DateTime.Now.ToString("yyyy"), SpecOrder.custID);
                        CommonFunctions.WriteUserLog(Session.Username, "Added New Spec Order : " + SpecOrder.OrderNumber);
                        //receiptController.WriteReceipt(this);
                        CommonFunctions.ShowSuccess(this, "Order Number " + SpecOrder.OrderNumber + " Saved Succesfully...");
                        this.Dispose();
                        form.Dispose();
                        if (SpecOrder.PaymentMethod == "N-C" && SpecOrder.Advance == 0)
                        {
                            new UI_ORDER_COMPLETE("S", SpecOrder.OrderNumber, "N-C").Show();
                        }

                        else if (SpecOrder.PaymentMethod != "N-C" && SpecOrder.Advance == 0)
                        {
                            new UI_ORDER_COMPLETE("S", SpecOrder.OrderNumber, "Not Paid").Show();
                        }
                    }
                    else
                    {
                        SpecOrderController.FillFormTwo(TxtRightDistSph.Text, TxtRightDistCyl.Text, TxtRightDistAxis.Text, TxtLeftDistSph.Text, TxtLeftDistCyl.Text, TxtLeftDistAxis.Text, TxtRightAdd.Text, TxtLeftAdd.Text, TxtLenseType.Text, CmbFrame.Text, TxtPD.Text, TxtSegmentHeight.Text, TxtSpecialIns.Text, TxtRemarks.Text);
                        receiptController.FillReceipt(SpecOrder.OrderNumber, SpecOrder.Advance, SpecOrder.OrderDate, "SPEC", SpecOrder.custID);
                        technovisionDataSetTableAdapters.spectaclesTableAdapter t = new technovisionDataSetTableAdapters.spectaclesTableAdapter();
                        t.Insert(SpecOrder.OrderNumber, DateTime.Parse(SpecOrder.OrderDate), DateTime.Parse(SpecOrder.DueDate), SpecOrder.OrderStatus, SpecOrder.Total, SpecOrder.Advance, SpecOrder.Discount, SpecOrder.Balance, SpecOrder.TestBy, SpecOrder.Eyewear, SpecOrder.Lense, SpecOrder.PaymentPlan, SpecOrder.PaymentMethod, SpecOrder.DistRightSph, SpecOrder.DistRightCyl, SpecOrder.DistRightAxis, SpecOrder.DistLeftSph, SpecOrder.DistLeftCyl, SpecOrder.DistLeftAxis, SpecOrder.AddRight, SpecOrder.AddLeft, SpecOrder.LenseType, SpecOrder.Frame, SpecOrder.PD, SpecOrder.SegmentHeight, SpecOrder.SpecialInstruction, SpecOrder.Remarks, SpecOrder.ReminderDays, SpecOrder.Branch, DateTime.Now.ToString("yyyy"), SpecOrder.custID);
                        CommonFunctions.WriteUserLog(Session.Username, "Added New Spec Order : " + SpecOrder.OrderNumber);
                        receiptController.WriteReceipt(this);
                        CommonFunctions.ShowSuccess(this, "Order Number " + SpecOrder.OrderNumber + " Saved Succesfully...");
                        this.Dispose();
                        new UI_ORDER_COMPLETE("S", SpecOrder.OrderNumber, Receipt.ReceiptNumber).Show();
                        form.Dispose();
                    }
                }
            }
            catch (Exception ex)
            {
                CommonFunctions.WriteToErrorLog(ex.Message);
                CommonFunctions.ShowError(this, ex.Message);
            }
        }
        private void BtnNext_Click(object sender, EventArgs e)
        {
            try
            {
                if (TxtOrderNo.Text == "" || TxtAdvance.Text == "" || TxtBalance.Text == "" || TxtDiscount.Text == "" || TxtEyeWearAmount.Text == "" || TxtLenseAmount.Text == "" || TxtRemindDays.Text == "" || TxtTotal.Text == "" || CmbOrderStatus.Text == "" || CmbPaymentMethod.Text == "" || CmbPaymentPlan.Text == "" || CmbTestedBy.Text == "")
                {
                    CommonFunctions.ShowError(this, "Please Complete All Fields to continue...");
                    CommonFunctions.WriteUserLog(Session.Username, "tried to continue without enter all fields");
                }

                else
                {
                    SpecOrderController.FillFormOne(TxtOrderNo.Text, DateOrderDate.Value.ToString("yyyy-MM-dd"), DateDueDate.Value.ToString("yyyy-MM-dd"), CmbPaymentPlan.Text, CmbPaymentMethod.Text, CmbTestedBy.Text, CmbOrderStatus.Text, Double.Parse(TxtEyeWearAmount.Text), Double.Parse(TxtLenseAmount.Text), Double.Parse(TxtTotal.Text), Double.Parse(TxtAdvance.Text), Double.Parse(TxtDiscount.Text), Double.Parse(TxtBalance.Text), int.Parse(TxtRemindDays.Text), custID);
                    receiptController.FillReceipt(SpecOrder.OrderNumber, SpecOrder.Advance, SpecOrder.OrderDate, "SPEC", custID);

                    new UI_SPECTACLES_DIAGNOSIS(this).Show();
                    this.Hide();
                }
            }
            catch (Exception ex)
            {
                CommonFunctions.WriteToErrorLog(ex.Message.ToString());
            }
        }