منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
مشكله فى كوود cannot open any more table - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة السي شارب C#.NET (http://vb4arb.com/vb/forumdisplay.php?fid=175)
+--- قسم : قسم اسئلة C#.NET (http://vb4arb.com/vb/forumdisplay.php?fid=176)
+--- الموضوع : مشكله فى كوود cannot open any more table (/showthread.php?tid=44078)



مشكله فى كوود cannot open any more table - khataan88 - 15-10-22

لانى حاسس انه بطىء غير انه يوجد رساله خطأ بتقول
Cannot open any more tables
ارجوا من حضراتكوا تنظيم او تعديل الكوود
الكود هو لجلب البيانات من جدولين واضافتهم لdata grid view
مع ارتباط جلب البيانات بينهم

كود :
       public void Getdatainliad()
       {
           try
           {

               OleDbConnection con = new OleDbConnection(ModCS.cs);
               con.Open();
               OleDbCommand cmd = new OleDbCommand("SELECT Allnames.ID, Allnames.name, Allnames.telnmber, Allnames.flex, Allnames.internet, Allnames.id_number , Allnames.tabe3, Allnames.other, Allnames.datafirst , Allnames.code2 , Allnames.cash   from Allnames order by ID", con);

               OleDbDataReader rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
               ///-----------
               dgw.Rows.Clear();
               while (rdr.Read() == true)
               {
                   //-------------
                   int code = Convert.ToInt32(rdr[0]);

                   string cb2 = string.Format("SELECT * from elsadad where elsadad.codenames Like '%{0}%' and elsadad.dateelsadad Like '%{1}%' ", code, dateTimePicker1.Text);
                   OleDbCommand cmd2 = new OleDbCommand(cb2);

                   cmd2.Connection = con;


                   OleDbDataReader rdr2 = cmd2.ExecuteReader(CommandBehavior.CloseConnection);


                   Image done = Properties.Resources.apply_16x16;
                   Image errorr = Properties.Resources.cancel_16x16;
                   Image done1 = Properties.Resources.apply_16x162;
                   Image errorr1 = Properties.Resources.close_16x16;
                   Image ddd;
                   Image ddd2;
                   if (rdr2.HasRows == true)
                   {
                       ddd = done;
                   }
                   else
                   {
                       ddd = errorr;
                   }
                   
                   if (rdr[9].ToString() == "1")
                   {
                       ddd2 = done1;
                   }
                   else
                   {
                       ddd2 = errorr1;
                   }

                   dgw.Rows.Add(rdr[0], ddd, rdr[1], rdr[2], rdr[3], rdr[4], rdr[5], rdr[6], rdr[7], rdr[8], ddd2, rdr[10], rdr[9]);
                   //con2.Close();
               }






               // ==== Get sum cash =====


               string cb3 = string.Format("SELECT SUM (cash) FROM elsadad where elsadad.dateelsadad Like '%{0}%' ", dateTimePicker1.Text);
               OleDbCommand cmd3 = new OleDbCommand(cb3);

               cmd3.Connection = con;


               //OleDbDataReader rdr3 = cmd3.ExecuteReader(CommandBehavior.CloseConnection);
               object result = cmd3.ExecuteScalar();
               txtsum.Text = Convert.ToString(result);
               rdr.Close();
               con.Close();
               ///=======================

               this.ActiveControl = dateTimePicker1;

               GC.Collect();


           }
           catch (Exception ex)
           {
               MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
           }
       }



RE: مشكله فى كوود cannot open any more table - Meen2 - 15-10-22

(15-10-22, 03:03 AM)khataan88 كتب : لانى حاسس انه بطىء غير انه يوجد رساله خطأ بتقول
Cannot open any more tables
ارجوا من حضراتكوا تنظيم او تعديل الكوود
الكود هو لجلب البيانات من جدولين واضافتهم لdata grid view
مع ارتباط جلب البيانات بينهم

كود :
       public void Getdatainliad()
       {
           try
           {

               OleDbConnection con = new OleDbConnection(ModCS.cs);
               con.Open();
               OleDbCommand cmd = new OleDbCommand("SELECT Allnames.ID, Allnames.name, Allnames.telnmber, Allnames.flex, Allnames.internet, Allnames.id_number , Allnames.tabe3, Allnames.other, Allnames.datafirst , Allnames.code2 , Allnames.cash   from Allnames order by ID", con);

               OleDbDataReader rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
               ///-----------
               dgw.Rows.Clear();
               while (rdr.Read() == true)
               {
                   //-------------
                   int code = Convert.ToInt32(rdr[0]);

                   string cb2 = string.Format("SELECT * from elsadad where elsadad.codenames Like '%{0}%' and elsadad.dateelsadad Like '%{1}%' ", code, dateTimePicker1.Text);
                   OleDbCommand cmd2 = new OleDbCommand(cb2);

                   cmd2.Connection = con;


                   OleDbDataReader rdr2 = cmd2.ExecuteReader(CommandBehavior.CloseConnection);


                   Image done = Properties.Resources.apply_16x16;
                   Image errorr = Properties.Resources.cancel_16x16;
                   Image done1 = Properties.Resources.apply_16x162;
                   Image errorr1 = Properties.Resources.close_16x16;
                   Image ddd;
                   Image ddd2;
                   if (rdr2.HasRows == true)
                   {
                       ddd = done;
                   }
                   else
                   {
                       ddd = errorr;
                   }
                   
                   if (rdr[9].ToString() == "1")
                   {
                       ddd2 = done1;
                   }
                   else
                   {
                       ddd2 = errorr1;
                   }

                   dgw.Rows.Add(rdr[0], ddd, rdr[1], rdr[2], rdr[3], rdr[4], rdr[5], rdr[6], rdr[7], rdr[8], ddd2, rdr[10], rdr[9]);
                   //con2.Close();
               }






               // ==== Get sum cash =====


               string cb3 = string.Format("SELECT SUM (cash) FROM elsadad where elsadad.dateelsadad Like '%{0}%' ", dateTimePicker1.Text);
               OleDbCommand cmd3 = new OleDbCommand(cb3);

               cmd3.Connection = con;


               //OleDbDataReader rdr3 = cmd3.ExecuteReader(CommandBehavior.CloseConnection);
               object result = cmd3.ExecuteScalar();
               txtsum.Text = Convert.ToString(result);
               rdr.Close();
               con.Close();
               ///=======================

               this.ActiveControl = dateTimePicker1;

               GC.Collect();


           }
           catch (Exception ex)
           {
               MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
           }
       }

كود :
public void Getdatainliad()
{
    OleDbConnection con = new OleDbConnection(ModCS.cs);
    try
    {
        con.Open();
        DateTime date = dateTimePicker1.Value.Date;

        OleDbCommand cmd1 = new OleDbCommand("SELECT ID, name, telnmber, flex, internet, id_number, tabe3, other, datafirst, code2, cash FROM Allnames", con);
        OleDbDataAdapter da = new OleDbDataAdapter(cmd1);

        DataTable dt = new DataTable();
        da.Fill(dt);

        foreach (DataRow rdr in dt.Rows)
        {
            //-------------
            int code = Convert.ToInt32(rdr["ID"]);

            OleDbCommand cmd2 = new OleDbCommand("SELECT COUNT(*) FROM elsadad WHERE codenames=@code AND dateelsadad=@date", con);
            cmd2.Parameters.AddWithValue("@code", code);
            cmd2.Parameters.AddWithValue("@date", date);

            int rows = (int)cmd2.ExecuteScalar() ;
            bool hasRows = rows > 0;
            Image ddd1 = hasRows ? Properties.Resources.apply_16x162 : Properties.Resources.cancel_16x16;
            Image ddd2 = rdr["cash"].Equals("1") ? Properties.Resources.apply_16x162 : Properties.Resources.close_16x16;

            dgw.Rows.Add(rdr["ID"], ddd1, rdr["name"], rdr["telnmber"], rdr["flex"], rdr["internet"], rdr["id_number"], rdr["tabe3"], rdr["other"], rdr["datafirst"], ddd2, rdr["code2"], rdr["cash"]);
        }


        // ==== Get sum cash =====
        OleDbCommand cmd3 = new OleDbCommand("SELECT SUM(cash) FROM elsadad WHERE dateelsadad=@date", con);
        cmd3.Parameters.AddWithValue("@date", date);

        object result = cmd3.ExecuteScalar();
        txtsum.Text = Convert.ToString(result);
        ///=======================

        this.ActiveControl = dateTimePicker1;

    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
    }
    finally
    {
        con.Close();
    }
}



RE: مشكله فى كوود cannot open any more table - khataan88 - 15-10-22

الف مليون شكر
تحياتى لك