تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] مساعدة بكتابة كود إظهار عدد الاسماء المتطابقة في الجدول
#1
السلام عليكم

لدي عدة اسماء سيارات و هي لثلاث شركات تويوتا و نيسان و مازدا ،

اريد ان يظهر لي في الفورم الرئيسي عدد السيارات المخزنة في قاعدة البيانات كلاُ لوحدة

مثل تويوتا يتوفر عدد (3) سيارات ،،، ونيسان عدد (2) وهكذا ،

البرنامج مرفق و المطلوب كتابة الكود فقط و تحديثة أذا تم إدخال او حذف عنصر مباشرة

شاكر و مقدر للجميع
.rar   Almrkz.rar (الحجم : 207.57 ك ب / التحميلات : 52)
الرد }}}
تم الشكر بواسطة:
#2
ليس بالضروري ارفاق المشروع باكمله وانما مشرفنا سيعطينا نبذة ومثال قصير لحل هذه المسالة

بانتظار مشرف هذا القسم يبدع لنا مشروع بسيط يوضح الفكرة
الرد }}}
تم الشكر بواسطة:
#3
يا بادئ حبة حبة , لو تبحث بتلاقي الكثير في المنتدى
بعدين نحن منعطي فكرة و كود يؤدي المهمة و ان لم يكن بد بنعمل مثال
الفكرة ما يحتاجلها الكثير يعني كود بسيط يؤدي المهمة افضل للسائل لكي يتعلم اكثر 
على اي حال ....
ان كنت تخزن السيارة بدون رقم فريد (لكل سيارة اقصد) فانت راح تستعلم حسب اسم السيارة
اما اذا كنت بتخزن كل نوع من السيارات برقم فريد (و هو الافضل) فانت راح تستعلم حسب رقم النوع
و لكي يكون الاستعلام واحد لكل الانواع لكي لا ندخل في كثرة الاكواد و تكرارها فالافضل عمل دالة تستقبل وسيط اما اسم السيارة او رقم النوع

هذة الدالة تستقبل اسم السيارة

PHP كود :
   Public Function GetCarBy_Name(ByVal CarName As String) As Integer

        Using Con 
As New SqlConnection("هنا حط نص الاتصال")

 
           Dim Serch As String "Select Count(CarNmae) As Counter From Cars Where CarName = @CarName"
 
           Using SerChCommand As New SqlCommand(SerchCon)
 
               With SerChCommand
                    
.Parameters.AddWithValue("@CarName"CarName)
 
                   .Connection.Open()
 
               End With
                Using Reader 
As SqlDataReader SerChCommand.ExecuteReader
                    With Reader
                        While 
.Read
                            If 
.HasRows Then
                                Return CInt
(Reader.Item("Counter"))
 
                           Else
                                Return 0
                            End 
If
 
                       End While
 
                   End With

                End Using
            End Using
        End Using
        Return 0

    End 
Function 
الاستدعاء
PHP كود :
   Private Sub Button2_Click(sender As ObjectAs EventArgsHandles Button2.Click
        TextBox1
.Text GetCarBy_Name("مازدا")
 
       TextBox2.Text GetCarBy_Name("تويوتا")
 
   End Sub 
اللهم لك الحمد كما ينبغي لجلال وجهك و عظيم سلطانك
في حل و ترحال
الرد }}}
تم الشكر بواسطة: بادئ
#4
ابو ليلى

لم استطع اضافة الكود ، هل تتكرم و تعمله على المثال المرفق في موضوعي
الرد }}}
تم الشكر بواسطة:
#5
من عيوني , كل يوم تعال  Smile

هذا كود النموذج نسخ و لصق روحي 

PHP كود :
Imports System.Data.OleDb
Public Class Form1

    Private Sub Form1_Load
(ByVal sender As System.ObjectByVal e As System.EventArgsHandles MyBase.Load
        
'TODO: This line of code loads data into the 'KantdataDataSet.Model' table. You can move, or remove it, as needed.
        Me.ModelTableAdapter.Fill(Me.KantdataDataSet.Model)
        TextBox8.Text = Me.BindingContext(KantdataDataSet, "Model").Count
        CollectAll()
    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        GroupBox1.BackColor = Color.Gray
        ModelBindingSource.AddNew()
    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        ModelBindingSource.EndEdit()
        ModelTableAdapter.Update(KantdataDataSet.Model)
        CollectAll()
    End Sub


    Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click

        ModelBindingSource.RemoveCurrent()
        ModelTableAdapter.Update(KantdataDataSet.Model)
        MsgBox("تمت عملية الحذف في قاعدة البيانات بنجاح")
        CollectAll()
    End Sub


   Private Function GetCarBy_Name(ByVal CarName As String) As Integer

        Using Con As New OleDbConnection(My.Settings.KantdataConnectionString)

            Dim Serch As String = "Select count(id1) As Couning From Model Where id1 = @carName"
            Using SerChCommand As New OleDbCommand(Serch, Con)
                With SerChCommand
                    .Parameters.AddWithValue(" @carName", CarName)
                    .Connection.Open()
                End With
                Using Reader As OleDbDataReader = SerChCommand.ExecuteReader
                    With Reader
                        While .Read
                            If .HasRows Then
                                Return CInt(Reader.Item("Couning"))
                            Else
                                Return 0
                            End If
                        End While
                    End With

                End Using
            End Using
        End Using
        Return 0

    End Function
    Private Sub CollectAll()
        TextBox3.Text = GetCarBy_Name("تيوتا")
        TextBox7.Text = GetCarBy_Name("مازدا")
        TextBox6.Text = GetCarBy_Name("نيسان")
    End Sub
End Class 
اللهم لك الحمد كما ينبغي لجلال وجهك و عظيم سلطانك
في حل و ترحال
الرد }}}
تم الشكر بواسطة:
#6
(11-09-16, 09:04 PM)ابو ليلى كتب : من عيوني , كل يوم تعال  Smile

هذا كود النموذج نسخ و لصق روحي 

PHP كود :
Imports System.Data.OleDb
Public Class Form1

    Private Sub Form1_Load
(ByVal sender As System.ObjectByVal e As System.EventArgsHandles MyBase.Load
        
'TODO: This line of code loads data into the 'KantdataDataSet.Model' table. You can move, or remove it, as needed.
        Me.ModelTableAdapter.Fill(Me.KantdataDataSet.Model)
        TextBox8.Text = Me.BindingContext(KantdataDataSet, "Model").Count
        CollectAll()
    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        GroupBox1.BackColor = Color.Gray
        ModelBindingSource.AddNew()
    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        ModelBindingSource.EndEdit()
        ModelTableAdapter.Update(KantdataDataSet.Model)
        CollectAll()
    End Sub


    Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click

        ModelBindingSource.RemoveCurrent()
        ModelTableAdapter.Update(KantdataDataSet.Model)
        MsgBox("تمت عملية الحذف في قاعدة البيانات بنجاح")
        CollectAll()
    End Sub


   Private Function GetCarBy_Name(ByVal CarName As String) As Integer

        Using Con As New OleDbConnection(My.Settings.KantdataConnectionString)

            Dim Serch As String = "Select count(id1) As Couning From Model Where id1 = @carName"
            Using SerChCommand As New OleDbCommand(Serch, Con)
                With SerChCommand
                    .Parameters.AddWithValue(" @carName", CarName)
                    .Connection.Open()
                End With
                Using Reader As OleDbDataReader = SerChCommand.ExecuteReader
                    With Reader
                        While .Read
                            If .HasRows Then
                                Return CInt(Reader.Item("Couning"))
                            Else
                                Return 0
                            End If
                        End While
                    End With

                End Using
            End Using
        End Using
        Return 0

    End Function
    Private Sub CollectAll()
        TextBox3.Text = GetCarBy_Name("تيوتا")
        TextBox7.Text = GetCarBy_Name("مازدا")
        TextBox6.Text = GetCarBy_Name("نيسان")
    End Sub
End Class 

تسلم عيونك يا عسل ،،، تم عمل المطلوب

الله يسعدك دنيا و أخرة ، واشكرك من كل قلبي

ابو ليلى

تبقى عندي الكود التالي تمت كتابته مسبقاً..( TextBox8.Text = Me.BindingContext(KantdataDataSet, "Model").Count)

لأني كتبته في الفورم لاود

لا يتحدث أثناء الاضافة أو الحذف ، يجب أن اطفى البرنامج و أعيد تشغيله لتظهر

ابو ليلى

تبقى عندي الكود التالي  تمت كتابته مسبقاً..(  TextBox8.Text = Me.BindingContext(KantdataDataSet, "Model").Count)

لأني كتبته في الفورم لاود

لا يتحدث أثناء الاضافة أو الحذف ، يجب أن اطفى البرنامج و أعيد تشغيله لتظهر
الرد }}}
تم الشكر بواسطة: ابو ليلى
#7
يا ابو وسيم
اعد ارفاق المشروع بالتعديلات الاخيرة لانني حذفت المشروع من عندي
اللهم لك الحمد كما ينبغي لجلال وجهك و عظيم سلطانك
في حل و ترحال
الرد }}}
تم الشكر بواسطة:
#8
(12-09-16, 12:04 AM)ابو ليلى كتب : يا ابو وسيم
اعد ارفاق المشروع بالتعديلات الاخيرة لانني حذفت المشروع من عندي

تفضل مع شكري و تقديري لشخصك الكريم على حسن تعاونك


.rar   Almrkz.rar (الحجم : 210.41 ك ب / التحميلات : 49)
الرد }}}
تم الشكر بواسطة: ابو ليلى
#9
ابو وســـــــم  راحت الياء  Shy
كل الحكاية تقصه و تحطه بالاجراء الاخير 
PHP كود :
Imports System.Data.SqlClient
Imports System
.Data.OleDb

Public Class Form1

    Private Sub Form1_Load
(ByVal sender As System.ObjectByVal e As System.EventArgsHandles MyBase.Load
        
'TODO: This line of code loads data into the 'KantdataDataSet.Model' table. You can move, or remove it, as needed.
        Me.ModelTableAdapter.Fill(Me.KantdataDataSet.Model)
        CollectAll()
    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        GroupBox1.BackColor = Color.Gray
        ModelBindingSource.AddNew()
    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        ModelBindingSource.EndEdit()
        ModelTableAdapter.Update(KantdataDataSet.Model)
        CollectAll()
    End Sub


    Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click

        ModelBindingSource.RemoveCurrent()
        ModelTableAdapter.Update(KantdataDataSet.Model)
        MsgBox("تمت عملية الحذف في قاعدة البيانات بنجاح")
        CollectAll()
    End Sub


    Private Function GetCarBy_Name(ByVal CarName As String) As Integer

        Using Con As New OleDbConnection(My.Settings.KantdataConnectionString)

            Dim Serch As String = "Select count(id1) As Couning From Model Where id1 = @carName"
            Using SerChCommand As New OleDbCommand(Serch, Con)
                With SerChCommand
                    .Parameters.AddWithValue(" @carName", CarName)
                    .Connection.Open()
                End With
                Using Reader As OleDbDataReader = SerChCommand.ExecuteReader
                    With Reader
                        While .Read
                            If .HasRows Then
                                Return CInt(Reader.Item("Couning"))
                            Else
                                Return 0
                            End If
                        End While
                    End With

                End Using
            End Using
        End Using
        Return 0

    End Function
    Private Sub CollectAll()
        TextBox3.Text = GetCarBy_Name("تويوتا")
        TextBox7.Text = GetCarBy_Name("مازدا")
        TextBox6.Text = GetCarBy_Name("نيسان")
        TextBox8.Text = Me.BindingContext(KantdataDataSet, "Model").Count
    End Sub
End Class 
اللهم لك الحمد كما ينبغي لجلال وجهك و عظيم سلطانك
في حل و ترحال
الرد }}}
تم الشكر بواسطة: Amir_Alzubidy , أبووسم
#10
اشكرك على سرعة تجاوبك

و كل عام و انت بخير ،، و من العايدين
الرد }}}
تم الشكر بواسطة: ابو ليلى , ابو ليلى



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


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