منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
[سؤال] تنبية بحلول قرب تاريخ - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : [سؤال] تنبية بحلول قرب تاريخ (/showthread.php?tid=2976)

الصفحات: 1 2


تنبية بحلول قرب تاريخ - مالكـ - 23-05-14

السلام عليكم ورحمة الله وبركاتة
لدي مجموعة بيانات في الداتا غريد فيو .... منها عمود تاريخ

لدي كود معرفة التواريخ التي ( اقل او اعلى ) من تاريخ اليوم

كود :
'اقل من تاريخ اليوم
        For i As Integer = 0 To Me.DataGridView1.RowCount - 1
            If Me.DataGridView1(2, i).Value.ToString() <= Date.Now Then
                Me.DataGridView1.Rows(i).DefaultCellStyle.BackColor = Color.Red
            End If
        Next

طلبي هو .... معرفة التاريخ التي سوف تحل من 1-30 يوم

على سبيل المثال :
تاريخ اليوم هو 1435/7/1

والبيانات هي
1435/7/3
1435/7/30
1435/8/5
1436/2/1

بحيث يحدد لي تواريخ :
1435/7/3
1435/7/30
لانها قريبة من تاريخ اليوم مابين 1 الى 30 يوم

اتمنى ان تكون الفكرة واضحة


RE: تنبية بحلول قرب تاريخ - حريف برمجة - 23-05-14

وعليكم السلام ورحمة الله وبركاته

عندك حلين :

الحل الأول : جملة استعلام بين تاريخين ،،، التاريخ الأول هو تاريخ اليوم الحالي للجهاز ،،، والتاريخ الثاني تاريخ اليوم الحالي للجهاز + 30 يوم .

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

الحل الثاني : عرض جميع السجلات وتمييز السجلات في تلك الفترة بلون مختلف .

في كلا الحالتين ارفق مثالك ليتم التعديل عليه .


RE: تنبية بحلول قرب تاريخ - مالكـ - 23-05-14

تفضل المثال

vb2008
اكسس 2003

حقل التاريخ ... جعلة نص

[attachment=1843]


RE: تنبية بحلول قرب تاريخ - مالكـ - 23-05-14

توضيح أكثر

بيانات البضائع
1 - توجد بضائع ... أنتهاء تاريخ الصلاحية ..... تم حلة عن طريق الكود بالاعلى .. وجعلت الصف باللون الاحمر
المطلوب
2- معرفة البضائع التي قاربت على أنتهاء صلاحيتها من يوم الى 30 يوم


RE: تنبية بحلول قرب تاريخ - مالكـ - 23-05-14

يعطيك العافية

لاكن ليس قريب لطلبي


RE: تنبية بحلول قرب تاريخ - مالكـ - 24-05-14

لم تنج الطريقة


RE: تنبية بحلول قرب تاريخ - سعود - 24-05-14

تعامل مع الميلادي وبعدها شوف الهجري لاني حين اجرب الاكواد مع الهجري ما ينجح لكن حين حولت تاريخ الجهاز الى ميلادي ضبط الوضع.


RE: تنبية بحلول قرب تاريخ - حريف برمجة - 24-05-14

هذا الأكواد بعد التعديل لنفس مثالك :

كود :
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        'اقل من تاريخ اليوم
        For i As Integer = 0 To Me.DataGridView1.RowCount - 1
            If Me.DataGridView1(1, i).Value.ToString() <= Date.Now.AddDays(-1) Then
                Me.DataGridView1.Rows(i).DefaultCellStyle.BackColor = Color.Red
            End If
        Next
    End Sub
    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        ' المطلوب
        '    يحدد على التواريخ القريبة من التاريخ الان بحيث لاتتجاوز عن 30 يوم
        For i As Integer = 0 To Me.DataGridView1.RowCount - 1
            If Me.DataGridView1(1, i).Value.ToString() < Date.Today.AddDays(-30) Or Me.DataGridView1(1, i).Value.ToString() > Date.Today.AddDays(30) Then
                Me.DataGridView1.Rows(i).DefaultCellStyle.BackColor = Color.Red
            End If
        Next
    End Sub



RE: تنبية بحلول قرب تاريخ - مالكـ - 24-05-14

حريف برمجة ..... يعطيك العافية

مثالك ... يظهر التواريخ التي اصغر من تاريخ اليوم بـ 30 يوم ... وأكبر من تاريخ اليوم ب30 يوم
معناها انة راح يظهر 60 يوم (30 قبل و 30 يوم بعد )
وهذا ليس المطلوب


على العموم وجدت مثال في أحدى مشاركات المنتدى القديم .. وقد عدلت علية فكانت النتيجة 100%

كود :
' التاريخ الحالي
        Dim A As Date = Date.Now
        ' زيادة 30 أيام على التاريخ
        Dim B As Date = Date.Now.Date.AddDays(30)

        For i As Integer = 0 To Me.DataGridView1.RowCount - 1
            If Me.DataGridView1(1, i).Value.ToString() > A And Me.DataGridView1(1, i).Value.ToString() < B Then
                Me.DataGridView1.Rows(i).DefaultCellStyle.BackColor = Color.Green
            End If

        Next



RE: تنبية بحلول قرب تاريخ - مالكـ - 24-05-14

حريف برمجة مثالك قريب للطلب

لاكن عدلت علية ليصبح

كود :
For i As Integer = 0 To Me.DataGridView1.RowCount - 1
            If Me.DataGridView1(1, i).Value.ToString() > Date.Now And Me.DataGridView1(1, i).Value.ToString() < Date.Now.Date.AddDays(30) Then
                Me.DataGridView1.Rows(i).DefaultCellStyle.BackColor = Color.Red
            End If
        Next