منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : التاخير في دفع المصروفات بالداتا جريد فيو
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
عندي داتا جريد فيو بها مجموعة من الطلاب وتاريخ دفع المصروفات الخاص بفترة معينة من اول مدة الدفع الي اخر الشهر من الدفع وانتهاء المصروف الشهري اريد معرفة كل طالب كم تاخر بالايام او الشهو عن الدفع الشهري الي الشهر التالي
لكل طالب ماهي مدة تاخير وتاتي بفرق امدة الحالية لنفس الطالب - اخر تاريخ للمدة السابقة لطالب

صورة توضيحية لطالب والقياس علية لكل طالب استخدمت الكود التالي ولكن يعتمد في الطرح علي اول تاريخ  لطالب وليس كل تاريخ جديد    الصورة المطلوبة بالمرفقات

حاولت اعمل حلقة تكرارية وعلي اساس التكرار ياتي باسم الطالب ويطرح المدة ولكن الكود يعتمد علي اول تاريخ وليس كل تاريخ جديد


[attachment=17295]
الكود


كود :
  On Error Resume Next
       For intI = DataGridView1.Rows.Count - 1 To 0 Step -1
           For intJ = intI - 1 To 0 Step -1
               Dim t As String = DataGridView1.Rows(intI).Cells(16).Value ' duplicat
               Dim j As String = DataGridView1.Rows(intJ).Cells(16).Value ' original
               Dim fromDate As String = Regex.Match(t, "(?<=من\s).+?(?=\s)").Value
               Dim toDate As String = Regex.Match(t, "(?<=الي\s).+?(?=\s)").Value
               Dim fromDate1 As String = Regex.Match(j, "(?<=من\s).+?(?=\s)").Value
               Dim toDate1 As String = Regex.Match(j, "(?<=الي\s).+?(?=\s)").Value
               Dim d1 As Date = CDate(fromDate)
               Dim d2 As Date = CDate(toDate)
               Dim d3 As Date = CDate(fromDate1)
               Dim d4 As Date = CDate(toDate1)
               If DataGridView1.Rows(intI).Cells(15).Value = DataGridView1.Rows(intJ).Cells(15).Value Then
                   If IsDate(fromDate) And IsDate(toDate) Then
                       DataGridView1.Rows(intI).Cells(17).Value = DateDiff("d", d4, d1) 'intJ,intI
                       DataGridView1.Rows(intI).Cells(18).Value = DateDiff("M", d4, d1)
                   Else
                       DataGridView1.Rows(intI).Cells(17).Value = 0
                       DataGridView1.Rows(intI).Cells(18).Value = 0

                   End If
             
               End If
           Next
       Next
مفيش فكرة معينة اقوم بيها بالكود لان البرنامج كامل متوقف علي هذا الطلب
مرحبا يعطيك العافية محمد أسماعيل في طر يقة تعرف ئديه كل الطالب متأخر عن الدين في شي أسمه أعمار الذمم   

كما في الصورة اذا كنت تريد تواصل معي خاص