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

نسخة كاملة : التعديل على كود استدعاء بيانات الصنف بشكل متسلسل
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم لدي كود لاستدعاء بيانات الاصناف وعرضها في داتا جريد بشكل متسلسل عن طريق زيادة رقم 1 على كود الصنف في كل مره  ولك في بعض الاحيان يحدث خطا عندما يكون كود الصنف غير موجود المطلوب عمل لووب لجعل البرنامج يقفز عن كود الصنف غير الموجود  مثال  اذا كان عندي كود صنف   1,2,5,6,7
     ان يقفز البرنامح عن كود الصنف 3 و 4 وينتقل الى 5         



تم وضع الكود في زر امر
Dim sql = "select * from item where item_code=N'" & (itemcode.text+ 1) & "'"
            Dim adp As New SqlDataAdapter(sql, sqlconn)
            Dim ds As New DataSet
            adp.Fill(ds)
            Dim dt = ds.Tables(0)
        
   If dt.Rows.Count > 0 Then
           يتم عرض البيانات الخاصة في الصنف    
Else
عليكم السلام ورحمة الله وبركاته

إذا كنت تريد أن يعرض فقط الموجود في الجدول، فعليك أن تستغني عن العبارة  (where item_code=N'" & (itemcode.text+ 1)).
(12-09-22, 01:38 PM)Taha Okla كتب : [ -> ]عليكم السلام ورحمة الله وبركاته

إذا كنت تريد أن يعرض فقط الموجود في الجدول، فعليك أن تستغني عن العبارة  (where item_code=N'" & (itemcode.text+ 1)).

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

وتجعل مربع النص يكتب الجزء المتشابه
والباقي تضع مكانه اشارة (%)
لو كان عدد خانات الصنف = 3 خانات يصبح شكل الكود :
واذا اكثر او اقل استبدل مكان الرقم ثلاثة بالرقم المناسب لعدد الخانات (في حال كنت تضع في مربع الصنف رقم مادة من مواد الصنف)


كود :
Dim sql As String = "select * from item where item_code Like N'" & Mid(itemcode.Text, 1, (Len(itemcode.Text) - 3)) & "%'"

وفي حال كنت تضع رقم مجموعة الصنف ضع الرقم الخاص بالمجموعة كـ:


كود :
Dim sql As String = "select * from item where item_code Like N'" & itemcode.Text & "%'"