تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] فعل حدث قبل تاريخ محدد بيومين Acces
#1
السلام عليكم ورحمة الله وبركاته

إخواني الأعزاء اريد المساعدة في إظهار المنتجات اللتي سوف تنتهي صلاحيتها قبل يومين او بتحديدها من المستخدم

1 - لا أريد إظهار المنتج منتهي الصلاحية
2 - لماذا لم يظهر منتج الزبادي ؟!


كود المشروع

كود :
Imports System.Data.OleDb
Public Class Form1
   Public con As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Pager.accdb")
   Dim da As New OleDbDataAdapter
   Dim dt As New DataTable
   Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
       Dim da As New OleDbDataAdapter("Select * from tbl_Pager", con)
       Dim dt As New DataTable
       da.Fill(dt)
       DataGridView1.DataSource = dt
       DataGridView1.Columns(0).Visible = False
       DataGridView1.Columns(1).HeaderText = "اسم المنتج" 'تغيير اسم العمود في الداتا قريد
       DataGridView1.Columns(1).Width = 100 'تغيير عرض العمود في الداتا قريد
       DataGridView1.Columns(2).HeaderText = "تاريخ الإنتهاء"
       DataGridView1.Columns(2).AutoSizeMode = DataGridViewAutoSizeColumnsMode.Fill 'تمديد العمود الاخير لنهاية الفورم
   End Sub

   Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
       Me.ListBox1.Items.Clear()

       Dim conn As New OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Pager.accdb")

       Dim sql As String = " SELECT *, DATEDIFF('d',Now(),[date2]) AS remDays  " & _
                           " FROM   [tbl_Pager] " & _
                           " WHERE  DATEDIFF('d',Now(),[date2]) < @days " & _
                           " ORDER BY [date2] "

       Dim com As New OleDb.OleDbCommand(sql, conn)
       com.Parameters.AddWithValue("@days", TextBox1.Text) '<<<<<<<<< حدد عدد الأيام
       Dim dt As New DataTable
       Dim da As New OleDb.OleDbDataAdapter(com)
       If da.Fill(dt) > 0 Then

           For Each r As DataRow In dt.Rows
               Me.ListBox1.Items.Add(r("date2") & " (" & r("remDays") & ") = " & r("Name_1"))
           Next

           MessageBox.Show("يوجد عدد [" & dt.Rows.Count & "] اقترب موعد انتهائها" & vbNewLine & _
                           "وأقربها بقي له [" & dt.Rows(0).Item("remDays") & "] يوم/أيام")

       End If

   End Sub


End Class
الرد
تم الشكر بواسطة:
#2
إقتباس :إخواني الأعزاء اريد المساعدة في إظهار المنتجات اللتي سوف تنتهي صلاحيتها قبل يومين او بتحديدها من المستخدم
هل تقصد بالفعل قبل يومين ام بعد يومين
الرد
#3
(11-08-17, 12:08 AM)سعود كتب :
إقتباس :إخواني الأعزاء اريد المساعدة في إظهار المنتجات اللتي سوف تنتهي صلاحيتها قبل يومين او بتحديدها من المستخدم
هل تقصد بالفعل قبل يومين ام بعد يومين

قبل يومين يالغالي Heart
الرد
تم الشكر بواسطة: مبرمج مبتدا , أبو نوره , أبو نوره
#4
(11-08-17, 12:09 AM)سعود الشامان كتب :
(11-08-17, 12:08 AM)سعود كتب :
إقتباس :إخواني الأعزاء اريد المساعدة في إظهار المنتجات اللتي سوف تنتهي صلاحيتها قبل يومين او بتحديدها من المستخدم
هل تقصد بالفعل قبل يومين ام بعد يومين

قبل يومين يالغالي Heart



اذا كان القصد اظهار النتائج التي ستنتهي بعد يوم او يومين او بعد س يوم انظر للمثال

اما ان كان القصد المنتجات المنتهية قبل س يوم ...ممكن بتعديل بسيط او حتى ممكن اضافة ميزة للمثال تجمع النوعين.

كود :
Public Class Form1
   Dim con As New OleDb.OleDbConnection("provider=microsoft.ace.oledb.12.0;data source=" & Application.StartupPath & "\db.accdb")
   Dim dt As DataTable
   Dim da As OleDb.OleDbDataAdapter
   Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
       Dim dfrom As Date = Now.Date.ToShortDateString
       Dim d As Integer = 0
       If rafter.Checked Then
           d = Val(TextBox1.Text)
       ElseIf rbefor.Checked Then
           d = Val(-Val(TextBox1.Text))
       End If
       dt = New DataTable
       da = New OleDb.OleDbDataAdapter("", con)
       da.SelectCommand.CommandText = "select * from tb where tfinish=@tfinish"
       da.SelectCommand.Parameters.AddWithValue("@tfinish", dfrom.AddDays(d))
       da.Fill(dt)
       ListBox1.DataSource = dt
       ListBox1.DisplayMember = "tn"
   End Sub
End Class
عدلت على المثال بان اضفت زري راديو  rafter and rbefor

المثال مرفق بعد التعديل



الملفات المرفقة
.zip   WhoFinishAfter1Day.zip (الحجم : 57.66 ك ب / التحميلات : 109)
الرد
تم الشكر بواسطة: أبو نوره , سعود الشامان
#5
الله يسسعدك يا سعود

انا متابع معكم لكن كنت اعتقد ان القاعده اكسل وليست اكسس

تم تحميل المثال وحصلت على ما اريد شكرا لكك

رابط المشاركة للفائده

http://vb4arb.com/vb/showthread.php?tid=...#pid103916
الرد
تم الشكر بواسطة: أبو نوره


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  ادخال الوقت الحالى + تاريخ الادخال mmali127 3 188 03-11-19, 12:14 PM
آخر رد: mmali127
  مقارنة تاريخ علي هيئة نص في قاعدة بياناتا سيكول بالتاريخ الحالي makky 1 127 24-10-19, 12:13 AM
آخر رد: اسامه الهرماوي
  كيف اضافه استعلام ليضهر تاريخ اليوم mostafa12 2 171 30-09-19, 06:20 PM
آخر رد: baha
  تنسيق تاريخ بتيكست بوكس mostafa12 5 226 29-09-19, 10:50 PM
آخر رد: mostafa12
  استفسار حول استرداد تاريخ ايام الاسبوع fuad_alshujaa 2 182 29-08-19, 11:10 PM
آخر رد: fuad_alshujaa
  [VB.NET] اختيار عنصر محدد بالكمبوبوكس محمد اسماعيل 6 307 22-08-19, 11:09 PM
آخر رد: ابراهيم ايبو
  تحويل قيمة نصية الى تاريخ ؟؟؟ BigProg 4 285 02-08-19, 03:55 PM
آخر رد: BigProg
  استفسار عن اظهار تاريخ اول يوم واخر في الشهر fuad_alshujaa 7 367 20-07-19, 06:48 AM
آخر رد: ابراهيم ايبو
  [VB.NET] تشغيل الكمبيوتر فى وقت محدد سابقا abo_baraa2007 0 214 17-07-19, 09:01 PM
آخر رد: abo_baraa2007
  [سؤال] إجراء عمليات على تاريخ بتنسيق مختلف عن تنسيق الجهاز السندبااد 5 386 26-04-19, 12:41 PM
آخر رد: elgokr

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


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