تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
الاستعلام لا يعمل مع BackgroundWorker
#21
(10-10-19, 06:52 AM)asemshahen5 كتب : الغ اللوب الخاص بالجمع و المتغيير sum فقط ضع الكود التالي هو سيقوم بالمطلوب و به اسم الليبل سيعبئها تلقائيا :

PHP كود :
       Invoke(Sub() Label20.Text = (From row In DataGridView1.Rows Select CDbl(row.Cells("ActPercent").Value)).Sum().ToString("00,000.00")) 
مثال :
PHP كود :
   Private Sub BackgroundWorker2_DoWork(sender As ObjectAs System.ComponentModel.DoWorkEventArgsHandles BackgroundWorker2.DoWork
        Invoke
(Sub() Label20.Text = (From row In DataGridView1.Rows Select CDbl(row.Cells("ActPercent").Value)).Sum().ToString("00,000.00"))
 
   End Sub 

عفوا اخي لم ينجح معي
وضعت لحضرتك الكود الخاص بحدث ال  DoWork كاملا لعلي اخطات في شيئ



PHP كود :
Private Sub BackgroundWorker1_DoWork(sender As ObjectAs System.ComponentModel.DoWorkEventArgsHandles BackgroundWorker1.DoWork
        If dtPatients
.Tables("Patients").Rows.Count 0 Then
            Invoke
(Sub() ProgressBar1.Visible False)
 
           Exit Sub
        End 
If
 
       Dim ii As Integer 0
        Invoke
(Sub() ProgressBar1.Maximum dtPatients.Tables("Patients").Rows.Count)
 
       Invoke(Sub() ProgressBar1.Visible True)
 
       If dtPatients.Tables("Patients").Rows.Count 0 Then
            Invoke
(Sub() ProgressBar1.Visible False)
 
       End If
 
       Invoke(Sub() DataGridView1.Rows.Clear())
 
       ii 0
        For Each row 
As DataRow In dtPatients.Tables("Patients").Rows
            Invoke
(Sub() DataGridView1.Rows.Add(row.ItemArray))
 
           ii += 1
            BackgroundWorker1
.ReportProgress(ii)
 
           Invoke(Sub() Label10.Text ii)
 
           Application.DoEvents()
 
       Next
        Invoke
(Sub() Label20.Text = (From row In DataGridView1.Rows Select CDbl(row.Cells("ActPercent").Value)).Sum().ToString("00,000.00"))
 
   End Sub 
الرد }}}
تم الشكر بواسطة:
#22
اخي الكريم الكود لايوجد به خطا الخطأ هو في اسم عامود الداتا غريد فيو و ليس العامود الموجود في جدول قاعدة البيانات :

PHP كود :
   Private Sub BackgroundWorker1_DoWork(sender As ObjectAs System.ComponentModel.DoWorkEventArgsHandles BackgroundWorker1.DoWork
        If dtPatients
.Tables("Patients").Rows.Count 0 Then
            Invoke
(Sub() ProgressBar1.Visible False)
 
           Exit Sub
        End 
If
 
       Dim ii As Integer 0
        Invoke
(Sub() ProgressBar1.Maximum dtPatients.Tables("Patients").Rows.Count)
 
       Invoke(Sub() ProgressBar1.Visible True)
 
       Invoke(Sub() DataGridView1.Rows.Clear())
 
       ii 0
        For Each row 
As DataRow In dtPatients.Tables("Patients").Rows
            Invoke
(Sub() DataGridView1.Rows.Add(row.ItemArray))
 
           ii += 1
            BackgroundWorker1
.ReportProgress(ii)
 
           Invoke(Sub() Label10.Text ii)
 
           Application.DoEvents()
 
       Next
        Invoke
(Sub() Label20.Text = (From row In DataGridView1.Rows Select CDbl(row.Cells(0).Value)).Sum().ToString("00,000.00"))
 
   End Sub 

يكفي فقط وضع ترتيبه في الداتا غريد فيو حسب ظهوره العد يبدء من الصفر الى العامود المطلوب مع مراعاة الاعمدة المخفية اي .

   
الرد }}}
تم الشكر بواسطة: Emam emam
#23
(10-10-19, 02:16 PM)asemshahen5 كتب : اخي الكريم الكود لايوجد به خطا الخطأ هو في اسم عامود الداتا غريد فيو و ليس العامود الموجود في جدول قاعدة البيانات :

PHP كود :
   Private Sub BackgroundWorker1_DoWork(sender As ObjectAs System.ComponentModel.DoWorkEventArgsHandles BackgroundWorker1.DoWork
        If dtPatients
.Tables("Patients").Rows.Count 0 Then
            Invoke
(Sub() ProgressBar1.Visible False)
 
           Exit Sub
        End 
If
 
       Dim ii As Integer 0
        Invoke
(Sub() ProgressBar1.Maximum dtPatients.Tables("Patients").Rows.Count)
 
       Invoke(Sub() ProgressBar1.Visible True)
 
       Invoke(Sub() DataGridView1.Rows.Clear())
 
       ii 0
        For Each row 
As DataRow In dtPatients.Tables("Patients").Rows
            Invoke
(Sub() DataGridView1.Rows.Add(row.ItemArray))
 
           ii += 1
            BackgroundWorker1
.ReportProgress(ii)
 
           Invoke(Sub() Label10.Text ii)
 
           Application.DoEvents()
 
       Next
        Invoke
(Sub() Label20.Text = (From row In DataGridView1.Rows Select CDbl(row.Cells(0).Value)).Sum().ToString("00,000.00"))
 
   End Sub 

يكفي فقط وضع ترتيبه في الداتا غريد فيو حسب ظهوره العد يبدء من الصفر الى العامود المطلوب مع مراعاة الاعمدة المخفية اي .

الله يرضيك ويعافيك ويرزقك الخير يارب 
جزاك الله كل خير
فعلا انا كنت بكتب اسم العمود حسب قاعدة البيانات وليس الداتا جريد فيو
الان الحمد لله يعمل بشكل ممتاز 
انا بشكرك جدا علي مجهودك الرائع معي ومع كل اللي في الجروب
الرد }}}
تم الشكر بواسطة: asemshahen5
#24
الحمد لله و الشكر لله و موفقين انشاء الله .
الرد }}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  هذا الكود لا يعمل بشكل صحيح لماذا ؟ PeterGhattas082460 3 453 21-12-24, 02:55 PM
آخر رد: aljzazy
  مشكلة في جملة الاستعلام Emam emam 5 469 25-11-24, 09:48 PM
آخر رد: Emam emam
  النت يعمل و الاتصال بقاعدة البيانات يعطى خطأ mmaalmesry 4 416 28-08-24, 01:02 AM
آخر رد: Jounior_P
  سورس كود الارسال الى الواتس -يعمل يرجي التعاون للتطوير new_programer 5 1,082 03-03-24, 08:45 PM
آخر رد: new_programer
  [VB.NET] البحث باستخدام CheckedListBox لتكون نتيجة التحديد شرط لجملة الاستعلام ahmedramzyaish 0 445 19-02-24, 03:44 AM
آخر رد: ahmedramzyaish
Exclamation [VB.NET] من يقدر يعمل لي استعلام يحقق طلبي ؟ أبو خالد الشكري 5 980 09-11-23, 02:25 PM
آخر رد: أبو خالد الشكري
  [VB.NET] مساعدة فى ترتيب نتائج الاستعلام ZEEN4ZEEN 1 607 08-11-23, 01:34 AM
آخر رد: الحزين اليماني
Smile تطبيقي يعمل تمام على ويندوز 10 قبل تحديث الوندوز وبعد التحديث لا يعمل رمضان محمد 2 742 31-10-23, 01:50 PM
آخر رد: رمضان محمد
  [VB.NET] مساعدة فى طريقة كتابة الاستعلام ZEEN4ZEEN 4 769 11-10-23, 03:33 PM
آخر رد: ZEEN4ZEEN
  البرنامج لدي يعمل على ويندوز 11 والان لا يعمل على ويندوز 10 ماهو الحل moh61 1 592 01-09-23, 04:38 AM
آخر رد: اسامه الهرماوي

التنقل السريع :


يقوم بقرائة الموضوع: