/// <summary>
        /// Handles the Click event of the ADD_Btn control.
        /// </summary>
        /// <param name="sender">The source of the event.</param>
        /// <param name="e">The <see cref="RoutedEventArgs"/> instance containing the event data.</param>
        private void ADD_Btn_Click(object sender, RoutedEventArgs e)
        {
            string jobid, orderid, jobdes;
            // if dates were intered.
            if (startdatePicker.Text != "" && finishdatePicker.Text != "")
            {

                orderid = orderID_textBox.Text;
                if (!string.IsNullOrWhiteSpace(orderID_textBox.Text))
                {
                    string today = DateTime.Now.ToString("yyyy-MM-dd");
                    try
                    {
                        Console.WriteLine("שורה 467");
                        MySqlConnection MySqlConn = new MySqlConnection(Login.Connectionstring);
                        MySqlConn.Open();
                        string Query1 = ("SELECT jobid FROM project.jobs WHERE orderid='" + orderid + "' AND startDate<='" + today + "' ORDER BY startDate DESC LIMIT 1 "); //to see if the orderid already in the system.
                        MySqlCommand MSQLcrcommand1 = new MySqlCommand(Query1, MySqlConn);
                        MSQLcrcommand1.ExecuteNonQuery();
                       // int times = Convert.ToInt32(MSQLcrcommand1.ExecuteScalar());
                        MySqlDataReader dr = MSQLcrcommand1.ExecuteReader();
                        MySqlDataAdapter mysqlDAdp = new MySqlDataAdapter(MSQLcrcommand1);
                        Console.WriteLine("שורה 476");
                        while (dr.Read())
                          {
                              if (!dr.IsDBNull(0))
                              {
                                  Console.WriteLine("שורה 480");
                                  if (MessageBox.Show("מספר הזמנה זהה כבר קיים האחרון ביותר היה עבור מספר עבודה "+dr.GetString(0)+"\n?האם ברצונך להוסיף בכל זאת", "מספר הזמנה קיים", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.No)
                                  {
                                      MySqlConn.Close();
                                      return; //if user answerd NO
                                  }
                              }
                          }

                        MySqlConn.Close();

                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message);
                        return; ;
                    }

                    // get the latest jobid this year.
                    string fullyear = DateTime.Now.ToString("yyyy");
                    string twodigyear = DateTime.Now.ToString("yy");
                    int jobid1=0;
                    string[] arry;
                    string tosplit,first;
                    try
                    {
                        Console.WriteLine("שורה 508");
                        MySqlConnection MySqlConn = new MySqlConnection(Login.Connectionstring);
                        MySqlConn.Open();
                        string Query1 = ("SELECT MAX(jobid) FROM project.jobs WHERE startDate BETWEEN '" + fullyear + "-01-01' AND '" + fullyear + "-12-31' ");
                        MySqlCommand MSQLcrcommand1 = new MySqlCommand(Query1, MySqlConn);
                        MSQLcrcommand1.ExecuteNonQuery();
                        MySqlDataReader dr = MSQLcrcommand1.ExecuteReader();
                        Console.WriteLine("שורה 515");
                        while (dr.Read())
                        {
                            if (dr.IsDBNull(0))
                            {
                                Console.WriteLine("שורה 520");
                                jobid1 = 0;
                            }
                            else
                            {
                                Console.WriteLine("שורה 525");
                                tosplit = dr.GetString(0);
                                Console.WriteLine(tosplit);
                                arry = tosplit.Split('/');
                                first = arry[0].ToString();
                                Console.WriteLine(first);
                                jobid1 = Convert.ToInt32(first);
                                Console.WriteLine(first);
                            }
                        }
                        Console.WriteLine("שורה 535");
                        MySqlDataAdapter mysqlDAdp = new MySqlDataAdapter(MSQLcrcommand1);
                        MySqlConn.Close();
                        jobid1++;
                        jobid = jobid1.ToString() + "/" + twodigyear;
                        Console.WriteLine("שורה 540");
                        Console.WriteLine(jobid);
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message);
                        return; ;
                    }

                    jobdes = jobdes_textbox.Text;
                    String start, end;
                    DateTime s = (DateTime)Convert.ToDateTime(startdatePicker.Text);
                    DateTime f = (DateTime)Convert.ToDateTime(finishdatePicker.Text);
                    TimeSpan ts = f - s;

                    // if the days are ok.
                    if (ts.Days >= 0)
                    {
                        start = Convert.ToDateTime(startdatePicker.Text).ToString("yyyy-MM-dd");
                        end = Convert.ToDateTime(finishdatePicker.Text).ToString("yyyy-MM-dd");
                    }
                    else { MessageBox.Show(".תאריך ההתחלה שנבחר הוא לאחר תאריך הסיום", "!שים לב", MessageBoxButton.OK, MessageBoxImage.Error); return; }
                }
                else { MessageBox.Show("לא הוכנסה מספר הזמנה", "!שים לב", MessageBoxButton.OK, MessageBoxImage.Error); return; }
            }// the if (startdatePicker.Text != "" && finishdatePicker.Text != "") closer.
            else { MessageBox.Show(".לא נבחרו 2 התאריכים", "!שים לב", MessageBoxButton.OK, MessageBoxImage.Error); return; }

            DataTable changedRecordsItemsTable = dt1.GetChanges();
            //DataTable changedRecordsTableCust = dt.GetChanges();
            int sizeofItemsnewtable;
            //sizeofCustnewtable, custcheck=0;
            //string customerid1;
            try
            {
                // sizeofCustnewtable = changedRecordsTableCust.Rows.Count; // will give an exp if the size of the new cust table is zero.
                DataRowView row = (DataRowView)dataGrid1.SelectedItems[0];

                try
                {
                    DataRowView row1 = (DataRowView)dataGrid3.SelectedItems[0];

                    try
                    {
                        string contactid = row1["מספר איש קשר"].ToString();
                        string selected = row["חפ לקוח"].ToString();

                        sizeofItemsnewtable = changedRecordsItemsTable.Rows.Count; // will give an exp if the size of the new items table is zero.
                        int itemNum = 0;
                        string itemStatus = "רישום", itemStageOrder = "1", job_status = "נרשמה";

                        jobdes = jobdes_textbox.Text;
                        String start = Convert.ToDateTime(startdatePicker.Text).ToString("yyyy-MM-dd"), end = Convert.ToDateTime(finishdatePicker.Text).ToString("yyyy-MM-dd");
                        // customerid1 = customerid1_label.Content.ToString();

                        int count = 0; // will count the number of rows with cell "" in the  changedRecordsItemsTable.

                        // input checks for כמות.
                        foreach (DataRow testrow in changedRecordsItemsTable.Rows)// for every row in the updateds table.
                        {
                            string q = testrow["כמות"].ToString();
                            Console.WriteLine("q = " + q);
                            try
                            {

                                if (q != "") // in case the user deleted a cell in the item and now it have a string of-  "" .
                                {
                                    int new_item_quantity = Convert.ToInt32(q);
                                    if (new_item_quantity > 0)
                                    {
                                        Console.WriteLine("הקלט היה טוב במקט מספר =" + testrow["מקט פריט"].ToString());
                                    }//end if (item_quantity > 0)
                                    else
                                    {
                                        MessageBox.Show("שדה הכמות מכיל כמות שלילית או 0 במקט פריט - " + testrow["מקט פריט"].ToString() + "", "!שים לב", MessageBoxButton.OK, MessageBoxImage.Error);
                                        return;
                                    }

                                } // if (q != "")
                                else { count++; }

                            }// end try
                            catch
                            {
                                MessageBox.Show("שדה הכמות לא כולל רק מספרים במקט פריט - " + testrow["מקט פריט"].ToString() + "", "!שים לב", MessageBoxButton.OK, MessageBoxImage.Error);
                                return;
                            }

                        } // end of foreach to test the input
                        if (count == changedRecordsItemsTable.Rows.Count)
                        {
                            MessageBox.Show("  לא נבחרו פריטים מהטבלה ", "!שים לב", MessageBoxButton.OK, MessageBoxImage.Error);
                            return;
                        }
                        /*
                        foreach (DataRow quantity_row in changedRecordsItemsTable.Rows)
                        {
                            try
                            {
                                if(quantity_row["כמות"].ToString()!="")
                                {
                                int item_quantity = Convert.ToInt32(quantity_row["כמות"].ToString());
                                }
                            }// end try
                            catch
                            { MessageBox.Show(" אחד שדה הכמות לא כולל רק מספרים בפריט מספר - " + quantity_row["מקט פריט"].ToString() + ""); return; }
                        }
                        */

                        count = 0;
                        foreach (DataRow dri in changedRecordsItemsTable.Rows)
                        {
                            itemNum = 0;
                            string q = dri["כמות"].ToString();
                            string cosItemID = dri["מקט לקוח"].ToString();
                            if (cosItemID=="")
                             {
                                 cosItemID = "לא הוזן מקט לקוח";
                             }
                            try
                            {

                                if (q != "") // in case the user deleted a cell in the item and now it have a string of-  "" .
                                {
                                    int item_quantity = Convert.ToInt32(q);

                                    if (item_quantity > 0)
                                    {
                                        for (int i = 1; i <= item_quantity; i++)
                                        {
                                            Console.WriteLine("לפני שאילתא");
                                            itemNum++;
                                            string itemid = dri["מקט פריט"].ToString();
                                            try
                                            {
                                                MySqlConnection MySqlConn = new MySqlConnection(Login.Connectionstring);
                                                MySqlConn.Open();
                                                string Query1 = ("INSERT INTO project.jobs (jobid, itemid,itemNum, expectedItemQuantity,costumerid, jobdescription, startDate, expectedFinishDate, contact_id,orderid,group_costomer_itemid ,reg_date) VALUES ('" + jobid + "','" + itemid + "','" + itemNum + "','" + item_quantity + "','" + selected + "','" + jobdes + "','" + start + "','" + end + "','" + contactid + "','" + orderid + "','" + cosItemID + "','" + DateTime.Now.ToString("yyyy-MM-dd") + "')");
                                                Console.WriteLine("השאילתא הנשלחת  - " + Query1 + "");
                                                MySqlCommand MSQLcrcommand1 = new MySqlCommand(Query1, MySqlConn);
                                                MSQLcrcommand1.ExecuteNonQuery();
                                                MySqlDataAdapter mysqlDAdp = new MySqlDataAdapter(MSQLcrcommand1);
                                                MySqlConn.Close();

                                            }
                                            catch (Exception ex)
                                            {
                                                MessageBox.Show(ex.Message);
                                                return;
                                            }

                                            Console.WriteLine("הלקוח הוא  - " + selected + "");
                                            Console.WriteLine("הכמות היא  - " + item_quantity + " ומספר הפריט הוא -  " + dri["מקט פריט"].ToString() + "");
                                            Console.WriteLine("מספר עבודה - " + jobid + "");
                                            Console.WriteLine("מספר הזמנה - " + orderid + "");
                                            Console.WriteLine("מספר איש קשר - " + contactid + "");
                                        }
                                    }//end if (item_quantity > 0)
                                    else { MessageBox.Show("שדה הכמות מכיל כמות שלילית או 0 בפריט מספר - " + dri["מקט פריט"].ToString() + "", "!שים לב", MessageBoxButton.OK, MessageBoxImage.Error); return; }

                                } // if (q != "")
                                else { count++; }

                            }// end try
                            catch
                            { MessageBox.Show("שדה הכמות לא כולל רק מספרים בפריט מספר - " + dri["מקט פריט"].ToString() + "", "!שים לב", MessageBoxButton.OK, MessageBoxImage.Error); return; }

                        }// end foreach (DataRow dri in changedRecordsTable.Rows)
                        if (count == changedRecordsItemsTable.Rows.Count)
                            {
                                MessageBox.Show("  לא נבחרו פריטים מהטבלה ", "!שים לב", MessageBoxButton.OK, MessageBoxImage.Error); return;
                            }

                        else
                        {
                            MessageBox.Show("!העבודה נוספה למערכת", "!הצלחה", MessageBoxButton.OK, MessageBoxImage.Information);
                            ManagerJobGui MJG = new ManagerJobGui();
                            MJG.Show();
                            Login.close = 1;
                            this.Close();
                        }
                    }
                    catch
                    {
                        MessageBox.Show("לא נבחרו פריטים", "!שים לב", MessageBoxButton.OK, MessageBoxImage.Error);
                        //Reload_Items_Table();

                        return;
                    }
                }
                catch { MessageBox.Show("לא נבחר איש קשר", "!שים לב", MessageBoxButton.OK, MessageBoxImage.Error); Console.WriteLine("לא נבחר איש קשר"); return; }

            }
            catch { MessageBox.Show("לא נבחר לקוח", "!שים לב", MessageBoxButton.OK, MessageBoxImage.Error); Console.WriteLine("לא נבחר לקוח"); return; }
        }
 // go to previous screen.
 /// <summary>
 /// Handles the Click event of the Back_Btn control.
 /// </summary>
 /// <param name="sender">The source of the event.</param>
 /// <param name="e">The <see cref="RoutedEventArgs"/> instance containing the event data.</param>
 private void Back_Btn_Click(object sender, RoutedEventArgs e)
 {
     ManagerJobGui MJG = new ManagerJobGui();
     MJG.Show();
     Login.close = 1;
     this.Close();
 }
        /// <summary>
        /// Handles the Click event of the ADD_Btn control.
        /// </summary>
        /// <param name="sender">The source of the event.</param>
        /// <param name="e">The <see cref="RoutedEventArgs"/> instance containing the event data.</param>
        private void ADD_Btn_Click(object sender, RoutedEventArgs e)
        {
            if (only == false)
            {
                string orderid, jobdes;
                int del = 0;
                // if dates were intered.
                if (startdatePicker.Text != "" && finishdatePicker.Text != "")
                {

                    orderid = orderID_textBox.Text;
                    if (!string.IsNullOrWhiteSpace(orderID_textBox.Text))
                    {
                        string today = DateTime.Now.ToString("yyyy-MM-dd");
                        try
                        {
                            Console.WriteLine("שורה 467");
                            MySqlConnection MySqlConn = new MySqlConnection(Login.Connectionstring);
                            MySqlConn.Open();
                            string Query1 = ("SELECT jobid FROM project.jobs WHERE orderid='" + orderid + "' AND startDate<='" + today + "' AND jobid != '" + jobid + "'ORDER BY startDate DESC LIMIT 1 "); //to see if the orderid already in the system.
                            MySqlCommand MSQLcrcommand1 = new MySqlCommand(Query1, MySqlConn);
                            MSQLcrcommand1.ExecuteNonQuery();
                            MySqlDataReader dr = MSQLcrcommand1.ExecuteReader();
                            MySqlDataAdapter mysqlDAdp = new MySqlDataAdapter(MSQLcrcommand1);
                            Console.WriteLine("שורה 476");
                            while (dr.Read())
                            {
                                if (!dr.IsDBNull(0))
                                {
                                    Console.WriteLine("שורה 480");
                                    if (MessageBox.Show("מספר הזמנה זהה כבר קיים האחרון ביותר היה עבור מספר עבודה " + dr.GetString(0) + "\n?האם ברצונך להוסיף בכל זאת", "מספר הזמנה קיים", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.No)
                                    {
                                        MySqlConn.Close();
                                        return; //if user answerd NO
                                    }
                                }
                            }

                            MySqlConn.Close();

                        }
                        catch (Exception ex)
                        {
                            MessageBox.Show(ex.Message);
                            return; ;
                        }

                        // get the latest jobid this year.
                        //    string fullyear = DateTime.Now.ToString("yyyy");
                        //   string twodigyear = DateTime.Now.ToString("yy");
                        //   int jobid1 = 0;
                        //   string[] arry;
                        //   string tosplit, first;
                        /*
                        try
                        {
                            Console.WriteLine("שורה 508");
                            MySqlConnection MySqlConn = new MySqlConnection(Login.Connectionstring);
                            MySqlConn.Open();
                            string Query1 = ("SELECT MAX(jobid) FROM project.jobs WHERE startDate BETWEEN '" + fullyear + "-01-01' AND '" + fullyear + "-12-31' ");
                            MySqlCommand MSQLcrcommand1 = new MySqlCommand(Query1, MySqlConn);
                            MSQLcrcommand1.ExecuteNonQuery();
                            MySqlDataReader dr = MSQLcrcommand1.ExecuteReader();
                            Console.WriteLine("שורה 515");
                            while (dr.Read())
                            {
                                if (dr.IsDBNull(0))
                                {
                                    Console.WriteLine("שורה 520");
                                    jobid1 = 0;
                                }
                                else
                                {
                                    Console.WriteLine("שורה 525");
                                    tosplit = dr.GetString(0);
                                    Console.WriteLine(tosplit);
                                    arry = tosplit.Split('/');
                                    first = arry[0].ToString();
                                    Console.WriteLine(first);
                                    jobid1 = Convert.ToInt32(first);
                                    Console.WriteLine(first);
                                }
                            }
                            Console.WriteLine("שורה 535");
                            MySqlDataAdapter mysqlDAdp = new MySqlDataAdapter(MSQLcrcommand1);
                            MySqlConn.Close();
                            jobid1++;
                            jobid = jobid1.ToString() + "/" + twodigyear;

                            Console.WriteLine("שורה 540");
                            Console.WriteLine(jobid);
                        }
                        catch (Exception ex)
                        {
                            MessageBox.Show(ex.Message);
                            return; ;
                        }
                        */

                        jobdes = jobdes_textbox.Text;
                        String start, end;
                        DateTime s = (DateTime)Convert.ToDateTime(startdatePicker.Text);
                        DateTime f = (DateTime)Convert.ToDateTime(finishdatePicker.Text);
                        TimeSpan ts = f - s;

                        // if the days are ok.
                        if (ts.Days >= 0)
                        {
                            start = Convert.ToDateTime(startdatePicker.Text).ToString("yyyy-MM-dd");
                            end = Convert.ToDateTime(finishdatePicker.Text).ToString("yyyy-MM-dd");
                        }
                        else { MessageBox.Show(".תאריך ההתחלה שנבחר הוא לאחר תאריך הסיום", "!שים לב", MessageBoxButton.OK, MessageBoxImage.Error); return; }
                    }
                    else { MessageBox.Show("לא הוכנסה מספר הזמנה", "!שים לב", MessageBoxButton.OK, MessageBoxImage.Error); return; }
                }// the if (startdatePicker.Text != "" && finishdatePicker.Text != "") closer.
                else { MessageBox.Show(".לא נבחרו 2 התאריכים", "!שים לב", MessageBoxButton.OK, MessageBoxImage.Error); return; }

                DataTable changedRecordsItemsTable = dt1.GetChanges();
                //DataTable changedRecordsTableCust = dt.GetChanges();
                int sizeofItemsnewtable;
                //sizeofCustnewtable, custcheck=0;
                //string customerid1;
                try
                {
                    // sizeofCustnewtable = changedRecordsTableCust.Rows.Count; // will give an exp if the size of the new cust table is zero.
                    DataRowView row = (DataRowView)dataGrid1.SelectedItems[0];

                    try
                    {
                        DataRowView row1 = (DataRowView)dataGrid3.SelectedItems[0];

                        try
                        {
                            string contactid = row1["מספר איש קשר"].ToString();
                            string selected = row["חפ לקוח"].ToString();

                            sizeofItemsnewtable = changedRecordsItemsTable.Rows.Count; // will give an exp if the size of the new items table is zero.
                            int itemNum = 0;

                            jobdes = jobdes_textbox.Text;
                            String start = Convert.ToDateTime(startdatePicker.Text).ToString("yyyy-MM-dd"), end = Convert.ToDateTime(finishdatePicker.Text).ToString("yyyy-MM-dd");
                            // customerid1 = customerid1_label.Content.ToString();

                            int count = 0; // will count the number of rows with cell "" in the  changedRecordsItemsTable.

                            // input checks for כמות.
                            foreach (DataRow testrow in changedRecordsItemsTable.Rows)// for every row in the updateds table.
                            {
                                string q = testrow["כמות"].ToString();
                                Console.WriteLine("q = " + q);
                                try
                                {

                                    if (q != "") // in case the user deleted a cell in the item and now it have a string of-  "" .
                                    {
                                        int new_item_quantity = Convert.ToInt32(q);
                                        if (new_item_quantity > 0)
                                        {
                                            Console.WriteLine("הקלט היה טוב במקט מספר =" + testrow["מקט פריט"].ToString());
                                        }//end if (item_quantity > 0)
                                        else
                                        {
                                            MessageBox.Show("שדה הכמות מכיל כמות שלילית או 0 מקט פריט - " + testrow["מקט פריט"].ToString() + "", "!שים לב", MessageBoxButton.OK, MessageBoxImage.Error);
                                            return;
                                        }

                                    } // if (q != "")
                                    else { count++; }

                                }// end try
                                catch
                                {
                                    MessageBox.Show("שדה הכמות לא כולל רק מספרים במקט פריט - " + testrow["מקט פריט"].ToString() + "", "!שים לב", MessageBoxButton.OK, MessageBoxImage.Error);
                                    return;
                                }

                            } // end of foreach to test the input
                            if (count == changedRecordsItemsTable.Rows.Count)
                            {
                                MessageBox.Show("  לא נבחרו פריטים מהטבלה ", "!שים לב", MessageBoxButton.OK, MessageBoxImage.Error);
                                return;
                            }

                            string reg_date = DateTime.Now.ToString("yyyy-MM-dd");
                            count = 0;
                            foreach (DataRow dri in changedRecordsItemsTable.Rows)
                            {
                                itemNum = 0;
                                // if the user wants to keep the current items for this job then we need to get the itemNum.
                                if (keep == true)
                                {
                                    try
                                    {
                                        Console.WriteLine("שורה 325");
                                        MySqlConnection MySqlConn = new MySqlConnection(Login.Connectionstring);
                                        MySqlConn.Open();
                                        string Query1 = ("SELECT MAX(itemNum) FROM project.jobs WHERE jobid='" + jobid + "' AND itemid='" + dri["מקט פריט"].ToString() + "' ");
                                        MySqlCommand MSQLcrcommand1 = new MySqlCommand(Query1, MySqlConn);
                                        MSQLcrcommand1.ExecuteNonQuery();
                                        MySqlDataReader dr = MSQLcrcommand1.ExecuteReader();
                                        MySqlDataAdapter mysqlDAdp = new MySqlDataAdapter(MSQLcrcommand1);
                                        Console.WriteLine("שורה 333");
                                        while (dr.Read())
                                        {
                                            if (!dr.IsDBNull(0))
                                            {
                                                itemNum = dr.GetInt32(0);
                                            }
                                        }

                                        MySqlConn.Close();

                                    }
                                    catch (Exception ex)
                                    {
                                        MessageBox.Show(ex.Message);
                                        return; ;
                                    }

                                }
                                string q = dri["כמות"].ToString();
                                string cosItemID = dri["מקט לקוח"].ToString();
                                if (cosItemID == "")
                                {
                                    cosItemID = "לא הוזן מקט לקוח";
                                }
                                try
                                {

                                    if (q != "") // in case the user deleted a cell in the item and now it have a string of-  "" .
                                    {
                                        int item_quantity = Convert.ToInt32(q);

                                        if (item_quantity > 0)
                                        {
                                            // if the user wanted to delete the current items then we need to do it just one time BEFOUR we add the new items but after we know that all the inputs are OK.
                                            if (keep == false)
                                            {
                                                if (del == 0)
                                                {
                                                    try
                                                    {
                                                        MySqlConnection MySqlConn = new MySqlConnection(Login.Connectionstring);
                                                        MySqlConn.Open();
                                                        string Query1 = "DELETE FROM jobs WHERE jobid ='" + jobid + "'";
                                                        MySqlCommand MSQLcrcommand1 = new MySqlCommand(Query1, MySqlConn);
                                                        MSQLcrcommand1.ExecuteNonQuery();
                                                        MySqlDataAdapter mysqlDAdp = new MySqlDataAdapter(MSQLcrcommand1);
                                                        MySqlConn.Close();
                                                    }
                                                    catch (Exception ex)
                                                    {
                                                        MessageBox.Show(ex.Message);
                                                    }
                                                    del++;

                                                }// end if (del == 0)
                                            } //end if (keep == false)

                                            int expected = itemNum + item_quantity;
                                            string itemid1 = dri["מקט פריט"].ToString();
                                            //string reg_date = DateTime.Now.ToString("yyyy-MM-dd");
                                            for (int i = 1; i <= item_quantity; i++)
                                            {
                                                Console.WriteLine("לפני שאילתא");
                                                itemNum++;
                                                string itemid = dri["מקט פריט"].ToString();

                                                try
                                                {
                                                    MySqlConnection MySqlConn = new MySqlConnection(Login.Connectionstring);
                                                    MySqlConn.Open();
                                                    string Query1 = ("INSERT INTO project.jobs (jobid, itemid,itemNum, expectedItemQuantity,costumerid, jobdescription, startDate, expectedFinishDate, contact_id,orderid,group_costomer_itemid ,reg_date) VALUES ('" + jobid + "','" + itemid + "','" + itemNum + "','" + expected + "','" + selected + "','" + jobdes + "','" + start + "','" + end + "','" + contactid + "','" + orderid + "','" + cosItemID + "' , '" + reg_date + "')");
                                                    Console.WriteLine("השאילתא הנשלחת  - " + Query1 + "");
                                                    MySqlCommand MSQLcrcommand1 = new MySqlCommand(Query1, MySqlConn);
                                                    MSQLcrcommand1.ExecuteNonQuery();
                                                    MySqlDataAdapter mysqlDAdp = new MySqlDataAdapter(MSQLcrcommand1);
                                                    MySqlConn.Close();

                                                }
                                                catch (Exception ex)
                                                {
                                                    MessageBox.Show(ex.Message);
                                                    return;
                                                }

                                                Console.WriteLine("הלקוח הוא  - " + selected + "");
                                                Console.WriteLine("הכמות היא  - " + item_quantity + " ומספר הפריט הוא -  " + dri["מקט פריט"].ToString() + "");
                                                Console.WriteLine("מספר עבודה - " + jobid + "");
                                                Console.WriteLine("מספר הזמנה - " + orderid + "");
                                                Console.WriteLine("מספר איש קשר - " + contactid + "");
                                            }

                                            //now we need to uptade all of the old items in this current itemid with our new description of the job.
                                            if (keep == true)
                                            {
                                                try
                                                {
                                                    MySqlConnection MySqlConn = new MySqlConnection(Login.Connectionstring);
                                                    MySqlConn.Open();
                                                    string Query1 = "UPDATE jobs SET expectedItemQuantity='" + expected + "',itemsDescription='לא נרשם תיאור',group_Status='רישום' ,group_costomer_itemid='" + cosItemID + "', group_StageOrder='1' ,reg_date='" + reg_date + "'  where jobid='" + jobid + "' AND itemid='" + itemid1 + "'";
                                                    MySqlCommand MSQLcrcommand1 = new MySqlCommand(Query1, MySqlConn);
                                                    MSQLcrcommand1.ExecuteNonQuery();
                                                    MySqlDataAdapter mysqlDAdp = new MySqlDataAdapter(MSQLcrcommand1);
                                                    MySqlConn.Close();
                                                }
                                                catch (Exception ex)
                                                {
                                                    MessageBox.Show(ex.Message);
                                                }
                                            }

                                        }//end if (item_quantity > 0)
                                        else { MessageBox.Show("שדה הכמות מכיל כמות שלילית או 0 בפריט מספר - " + dri["מקט פריט"].ToString() + "", "!שים לב", MessageBoxButton.OK, MessageBoxImage.Error); return; }

                                    } // if (q != "")
                                    else { count++; }

                                }// end try
                                catch
                                { MessageBox.Show("שדה הכמות לא כולל רק מספרים בפריט מספר - " + dri["מקט פריט"].ToString() + "", "!שים לב", MessageBoxButton.OK, MessageBoxImage.Error); return; }

                            }// end foreach (DataRow dri in changedRecordsTable.Rows)
                            if (count == changedRecordsItemsTable.Rows.Count)
                            {
                                MessageBox.Show("  לא נבחרו פריטים מהטבלה ", "!שים לב", MessageBoxButton.OK, MessageBoxImage.Error); return;
                            }

                            else
                            {
                                //now we need to uptade all of the old items whith itemid that we did not add to our new description of the job.
                                if (keep == true)
                                {
                                    try
                                    {
                                        MySqlConnection MySqlConn = new MySqlConnection(Login.Connectionstring);
                                        MySqlConn.Open();
                                        string Query1 = "UPDATE jobs SET job_status='נרשמה',jobdescription='" + jobdes + "',startDate='" + start + "',expectedFinishDate='" + end + "',actualFinishDate=NULL ,costumerid='" + selected + "',contact_id='" + contactid + "',orderid='" + orderid + "',deliveryid='לא עודכן',invoiceNumber='לא עודכן' ,reg_date='" + reg_date + "' WHERE jobid='" + jobid + "'";
                                        MySqlCommand MSQLcrcommand1 = new MySqlCommand(Query1, MySqlConn);
                                        MSQLcrcommand1.ExecuteNonQuery();
                                        MySqlDataAdapter mysqlDAdp = new MySqlDataAdapter(MSQLcrcommand1);
                                        MySqlConn.Close();
                                    }
                                    catch (Exception ex)
                                    {
                                        MessageBox.Show(ex.Message);
                                        MessageBox.Show("!שינוי העבודה נכשל בגלל בעיה בחיבור\n  .אנא ודא שתקינות העבודה ופרטיה לא נפגעו", "!שגיאה", MessageBoxButton.OK, MessageBoxImage.Error);
                                        return;
                                    }
                                }
                                MessageBox.Show("!שינוי העבודה הצליח", "!הצלחה", MessageBoxButton.OK, MessageBoxImage.Information);
                                ManagerJobGui MJG = new ManagerJobGui();
                                MJG.Show();
                                Login.close = 1;
                                this.Close();
                            }
                        }
                        catch
                        {
                            MessageBox.Show("לא נבחרו פריטים", "!שים לב", MessageBoxButton.OK, MessageBoxImage.Error);

                            return;
                        }
                    }
                    catch { MessageBox.Show("לא נבחר איש קשר", "!שים לב", MessageBoxButton.OK, MessageBoxImage.Error); Console.WriteLine("לא נבחר איש קשר"); return; }

                }
                catch { MessageBox.Show("לא נבחר לקוח", "!שים לב", MessageBoxButton.OK, MessageBoxImage.Error); Console.WriteLine("לא נבחר לקוח"); return; }
            } //end if(only==false)

            else // the user only wants to update the costumer and\or contact.
            {
                try
                {
                    // if not cost was selected.
                    DataRowView row = (DataRowView)dataGrid1.SelectedItems[0];

                    try
                    {   // if no contact to the cost was selected.
                        DataRowView row1 = (DataRowView)dataGrid3.SelectedItems[0];
                    }
                    catch
                    {
                        MessageBox.Show("!לא נבחר איש קשר", "!שים לב", MessageBoxButton.OK, MessageBoxImage.Error);
                        //MessageBox.Show("לא נבחר איש קשר"); Console.WriteLine("לא נבחר איש קשר");
                        return;
                    }
                }
                catch
                {
                    MessageBox.Show("!לא נבחר לקוח", "!שים לב", MessageBoxButton.OK, MessageBoxImage.Error);
                    //MessageBox.Show("לא נבחר לקוח"); Console.WriteLine("לא נבחר לקוח");
                    return;
                }
                DataRowView rowcost = (DataRowView)dataGrid1.SelectedItems[0];
                string costid = rowcost["חפ לקוח"].ToString();
                DataRowView rowcontact = (DataRowView)dataGrid3.SelectedItems[0];
                string contactid = rowcontact["מספר איש קשר"].ToString();
                // now we need to update the cost and contact for this jobid
                try
                {
                    MySqlConnection MySqlConn = new MySqlConnection(Login.Connectionstring);
                    MySqlConn.Open();
                    string Query1 = "UPDATE jobs SET costumerid='" + costid + "',contact_id='" + contactid + "' WHERE jobid='" + jobid + "'";
                    MySqlCommand MSQLcrcommand1 = new MySqlCommand(Query1, MySqlConn);
                    MSQLcrcommand1.ExecuteNonQuery();
                    MySqlDataAdapter mysqlDAdp = new MySqlDataAdapter(MSQLcrcommand1);
                    MySqlConn.Close();
                    MessageBox.Show("!עדכון הלקוח ו/או איש הקשר הצליח", "!הצלחה", MessageBoxButton.OK, MessageBoxImage.Information);
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                    MessageBox.Show("!עדכון הלקוח ו/או איש הקשר נכשל בגלל בעיה בחיבור\n  .אנא נסה שוב", "שגיאה", MessageBoxButton.OK, MessageBoxImage.Error);
                }
            }
        }