تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] عمل تنبيه بتاريخ الصلاحية
#1
السلام عليكم اخوان 
انا عندي برنامج ادارة منتجات وعملت في تنبيه للمنتجات الي تقارب على الانتهاء بكم يوم من خلال تلوين الصف للمنتج في الداتا كرد فيو
بس لما اغلق الفورمه وانتقل لفورمه تانية وارجع افتح الفورمه من جديد يختفي اللون الي عاملته للخلايا 
ياريت اذا في حدا بيعرف الحل يجاوبني وبكون ممنونه كتير منكم...
الرد }}}
تم الشكر بواسطة:
#2
طيب كيف لنا ان نعرف كيف قمت بتلوين الخلايا ؟ اين وضعت الكود ؟ ما هو الكود تحديدا ؟
الرد }}}
#3
(06-09-20, 10:39 PM)Anas Mahmoud كتب : طيب كيف لنا ان نعرف كيف قمت بتلوين الخلايا ؟ اين وضعت الكود ؟ ما هو الكود تحديدا ؟

الكود انا خليتو في ال load form 
وطبعا العمود الي في التاريخ هو العمود الثاني من الداتا كرد فيو برمجيا حيكون رقمه (1)
اذا كان المنتج منتهي الصلاحية حيكون لونه أورنج اما اذا باقي له 31 يوم حيكون لونه بلاخضر
وقارنت تاريخ الصلاحية الموجود بلجدول مع تاريخ اليوم
وهذا هو الكود :-
PHP كود :
Dim a As Date Date.Today
        For i 
As Integer 0 To DataGridView.RowCount 1
            If DataGridView
(1i).Value <= a Then
                DataGridView
.Rows(i).DefaultCellStyle.BackColor Color.Orange
            End 
If
 
       Next
        Dim b 
As Date Date.Today.Date.AddDays(31)
 
       For i As Integer 0 To DataGridView.RowCount 1
            If DataGridView
(1i).Value And DataGridView(1i).Value <= b Then
                DataGridView
.Rows(i).DefaultCellStyle.BackColor Color.Green
            End 
If
 
       Next 
الرد }}}
#4
هل تقوم بعد هذا الكود في الفورم لود بملئ الداتا جريد فيو مرة اخرى ؟
ربما المشكلة ان بعد تنفيذ كود التلوين تمسح الخانات وتضيفها من جديد فيضيع التلوين
الرد }}}
#5
(06-09-20, 10:59 PM)Anas Mahmoud كتب : هل تقوم بعد هذا الكود في الفورم لود بملئ الداتا جريد فيو مرة اخرى ؟
ربما المشكلة ان بعد تنفيذ كود التلوين تمسح الخانات وتضيفها من جديد فيضيع التلوين

نعم انا كاتبه كود ملئ الداتا جرد فيو وهذا الكود بلform load
الرد }}}
تم الشكر بواسطة: Hasaneen , Hasaneen , حريف برمجة
#6
طيب عليك وضع كود تغيير لون الاصناف في اجراء Sub واستدعائه بعد ملئ الداتا جريد فيو وليس في حدث form.load
هكذا مثلا :

كود :
Sub UpdateColors()
Dim a As Date = Date.Today
       For i As Integer = 0 To DataGridView.RowCount - 1
           If DataGridView(1, i).Value <= a Then
               DataGridView.Rows(i).DefaultCellStyle.BackColor = Color.Orange
           End If
       Next
       Dim b As Date = Date.Today.Date.AddDays(31)
       For i As Integer = 0 To DataGridView.RowCount - 1
           If DataGridView(1, i).Value > a And DataGridView(1, i).Value <= b Then
               DataGridView.Rows(i).DefaultCellStyle.BackColor = Color.Green
           End If
       Next
End Sub

وبعد كل عملية ملئ للداتا جريد فيو تستدعي هذا الاجراء :

كود :
UpdateColors()
الرد }}}
#7
(06-09-20, 11:21 PM)Anas Mahmoud كتب : طيب عليك وضع كود تغيير لون الاصناف في اجراء Sub واستدعائه بعد ملئ الداتا جريد فيو وليس في حدث form.load
هكذا مثلا :

كود :
Sub UpdateColors()
Dim a As Date = Date.Today
       For i As Integer = 0 To DataGridView.RowCount - 1
           If DataGridView(1, i).Value <= a Then
               DataGridView.Rows(i).DefaultCellStyle.BackColor = Color.Orange
           End If
       Next
       Dim b As Date = Date.Today.Date.AddDays(31)
       For i As Integer = 0 To DataGridView.RowCount - 1
           If DataGridView(1, i).Value > a And DataGridView(1, i).Value <= b Then
               DataGridView.Rows(i).DefaultCellStyle.BackColor = Color.Green
           End If
       Next
End Sub

وبعد كل عملية ملئ للداتا جريد فيو تستدعي هذا الاجراء :

كود :
UpdateColors()

نفس الشي اللون يختفي بثاني مرة افتح الفورم
الرد }}}
تم الشكر بواسطة: Hasaneen , Hasaneen , حريف برمجة
#8
الحل بسيط واستخدمه دايما

ضعي كود التلوين في الحدث CellFormatting للداتاجريد
PHP كود :
   Private Sub DataGridView1_CellFormatting(sender As ObjectAs DataGridViewCellFormattingEventArgsHandles DataGridView1.CellFormatting
        If e
.ColumnIndex And e.Value IsNot Nothing Then

            Dim a 
As Date Date.Today
            If CDate
(e.Value) <= a Then
                sender
.Rows(e.RowIndex).DefaultCellStyle.BackColor Color.Orange
            End 
If

 
           Dim b As Date Date.Today.Date.AddDays(31)
 
           If CDate(e.Value) > And CDate(e.Value) <= b Then
                sender
.Rows(e.RowIndex).DefaultCellStyle.BackColor Color.Green
            End 
If

 
       End If
 
   End Sub 
الرد }}}
#9
(06-09-20, 11:45 PM)Hasaneen كتب : الحل بسيط واستخدمه دايما

ضعي كود التلوين في الحدث CellFormatting للداتاجريد
PHP كود :
   Private Sub DataGridView1_CellFormatting(sender As ObjectAs DataGridViewCellFormattingEventArgsHandles DataGridView1.CellFormatting
        If e
.ColumnIndex And e.Value IsNot Nothing Then

            Dim a 
As Date Date.Today
            If CDate
(e.Value) <= a Then
                sender
.Rows(e.RowIndex).DefaultCellStyle.BackColor Color.Orange
            End 
If

 
           Dim b As Date Date.Today.Date.AddDays(31)
 
           If CDate(e.Value) > And CDate(e.Value) <= b Then
                sender
.Rows(e.RowIndex).DefaultCellStyle.BackColor Color.Green
            End 
If

 
       End If
 
   End Sub 
شكرا جزيلا لحظرتك تم حل المشكله بنجاح ?
بس اذا ممكن ليش ما عملنا فور لوب هنا اذا ممكن توضيح؟
الرد }}}
تم الشكر بواسطة: Hasaneen , rochdi191 , حريف برمجة
#10
(07-09-20, 12:04 AM)Moham كتب : بس اذا ممكن ليش ما عملنا فور لوب هنا اذا ممكن توضيح؟

لان هذا الحدث بيتنفذ في كل مره عندما تتغير قيمه كل خليه
حاولي تغيري قيمه اي خليه وشوفي شو اللي بيصير

بقصد الخليه رقم 1
الرد }}}


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  تنبيه لمركز رفع صور (خطير) justforit 0 211 09-11-23, 03:34 AM
آخر رد: justforit
Information [كود] تنبيه إذا حدث تعديل في محتويات TextBox أبو خالد الشكري 6 675 17-12-22, 11:09 PM
آخر رد: asmarsou
Rainbow [كود] كود اظهار تنبيه عند البحث بأقل من 3 حروف محمد مسافر 3 641 04-12-22, 10:10 AM
آخر رد: أبو خالد الشكري
  السلام عليكم اريد كود لما نتجاوز عدد محاولات 3 مرات في كلمة السر يطلعلي مسج تنبيه nosa 7 6,470 18-02-22, 11:34 PM
آخر رد: • abwryanmjahdhs
  [سؤال] كود للتنبيه قبل إنتهاء الصلاحية بنت الهدى 4 1,759 01-08-21, 06:02 PM
آخر رد: asdfar1977
  فورم تنبيه باقتراب التاريخ khaled Mohammed 1 1,243 21-09-20, 07:26 PM
آخر رد: Anas Mahmoud
  [VB.NET] مشكل في كود انتهاء تاريخ الصلاحية او الدفع rochdi191 6 2,194 23-06-20, 04:42 PM
آخر رد: rochdi191
  كود تنبيه بقرب حلول قسط شهري الحسين احمد 1 1,091 20-06-20, 01:51 AM
آخر رد: ابراهيم ايبو
  البحث بتاريخ اليوم في الدتا جريد فيو mazentq 5 2,469 27-05-20, 08:36 PM
آخر رد: rochdi191
  [سؤال] هل يوجد صوت تنبيه غير صوت beebالموجود في فيجول بيسك محمد ايمن 9 2,677 26-05-20, 06:57 AM
آخر رد: محمد ايمن

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


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم