السادة
اريد عمل اجراء في موديول
كلما تم استدعاؤه في اي فورم بمعلومية كمبوبوكس2 قيمة
Public Sub showtheraseed( ByVal ComboBox2.SelectedValue as integer)
If conn.State = ConnectionState.Open Then conn.Close()
conn.Open()
Dim command As New SqlCommand
command = New SqlCommand
command.Connection = conn
Dim purin, purback, salin, salback As Double
If conn.State = ConnectionState.Open Then conn.Close()
conn.Open()
command.Connection = conn
command.CommandType = CommandType.Text
command.CommandText = "SELECT sum(invqu) as sumofpur FROM adpurdet WHERE itcod = " & ComboBox2.SelectedValue & " "
Dim dr1 As SqlDataReader
If dr1 IsNot Nothing Then dr1.Close()
dr1 = command.ExecuteReader
Dim dt1 As New DataTable
dt1.Load(dr1)
If dt1.Rows.Count = 0 Then
purin = 0
Else
If IsDBNull(dt1.Rows(0).Item("sumofpur")) Then
purin = 0
Else
purin = (dt1.Rows(0).Item("sumofpur"))
End If
End If
end sub
؟؟؟
السادة الزملاء
مش عارف اعمل الكمبو كمتغير ؟؟؟
من فضلكم
برجاء الرد
السادة عايز استخدم اسم الكمبو في اي فورم. اي كمتغير
اعلن عن متغير من نوع كومبو بوكس كـ Public
مثال:
كود :
Public withevents Combobox1 as new Combobox
ولكي تستطيع الوصول الى احداث العنصر في وقت كتابة الكود تم الاعلان عن المتغير السابق باستخدام الكلمة WithEvents
التي كما قلت تسمح لك بالوصول الى احداث العنصر كما لو انك اضفته من صندوق الادوات
مش عارف انفذ تعديل الكود الي يوضع في الموديول. ثم كيف استدعيه في اي فورم باستخدام الكمبوبوكس
من الكود المكتوب في المشاركة الاولى انت ترد الوصول على قيمة الكمبوبكس لربطة بشرط ونحو ذلك
ان كان هذا هو قصدك فلا تحتتاج سوى فانكشن يرجعلك بقيمة الكمبوبكس .... ولفعل ذلك
اكتب هذا الفانكشن في الموديول
كود :
Public Function F_GetText() As String
Return Form1.ComboBox1.Text
End Function
وبعد ذلك استدعيه من اي مكان في البرنامج بهذا الطريقة
كود :
Dim F As String = F_GetText()
سيتم تخزين قيمة الكمبوبكس في المتغير Fبهذه الطريقة
لازم فورم1
شكرا
واتمني ايجاد البديل
شكرا لك مرة اخري
وانتظر التعديل
جرب عمله فانكشن :
PHP كود :
Public Function showtheraseed(ByVal CmbValue as integer)
If conn.State = ConnectionState.Open Then conn.Close()
conn.Open()
Dim command As New SqlCommand
command = New SqlCommand
command.Connection = conn
Dim purin, purback, salin, salback As Double
If conn.State = ConnectionState.Open Then conn.Close()
conn.Open()
command.Connection = conn
command.CommandType = CommandType.Text
command.CommandText = "SELECT sum(invqu) as sumofpur FROM adpurdet WHERE itcod = " & CmbValue
Dim dr1 As SqlDataReader
If dr1 IsNot Nothing Then dr1.Close()
dr1 = command.ExecuteReader
Dim dt1 As New DataTable
dt1.Load(dr1)
If dt1.Rows.Count = 0 Then
purin = 0
Else
If IsDBNull(dt1.Rows(0).Item("sumofpur")) Then
purin = 0
Else
purin = (dt1.Rows(0).Item("sumofpur"))
End If
End If
return purin
end Function
كود الاستدعاء :
PHP كود :
Txtpurin.Text = showtheraseed(ComboBox2.SelectedValue)
على فرض ان
purin هي القيمة التي تريد ان يعود بها الفانكشن .
السيد الفاضل
اعطي خطا تحت combobox2.selectedvalue
too many arguments
وهناك استكمال للمطلوب
لاحظ حضرتك انه تم عمل جدول واحد المشتريات
هناك جدول مبيعات ومرتجع مبيعات ومرتجع مشتريات
هل ايضا يمكن اضافة اسماء الجداول كمتغيرات
تعلمنا منك ومن المنتدي الكثيييييييييييير ولا يزال التعليم مستمرا
اقترح الاتي
Public Function showtheraseed(ByVal cmbname As ComboBox)
ثم
WHERE itcod = " & cmbname.SelectedValue & " "
وبالتالي يتبقي اسماء الجداول والقيمة الراجعة من الفنكشن
PHP كود :
Public Function showtheraseed(ByVal CmbValue as string,TableName as string,WhereColumn as string,SumColumn as string)
If conn.State = ConnectionState.Open Then conn.Close()
conn.Open()
Dim command As New SqlCommand
command = New SqlCommand
command.Connection = conn
Dim purin, purback, salin, salback As Double
If conn.State = ConnectionState.Open Then conn.Close()
conn.Open()
command.Connection = conn
command.CommandType = CommandType.Text
command.CommandText = "SELECT sum("& SumColumn &") as sumofpur FROM "& TableName &" WHERE "& WhereColumn &" = " & CmbValue
Dim dr1 As SqlDataReader
If dr1 IsNot Nothing Then dr1.Close()
dr1 = command.ExecuteReader
Dim dt1 As New DataTable
dt1.Load(dr1)
If dt1.Rows.Count = 0 Then
purin = 0
Else
If IsDBNull(dt1.Rows(0).Item("sumofpur")) Then
purin = 0
Else
purin = (dt1.Rows(0).Item("sumofpur"))
End If
End If
return purin
End Function
PHP كود :
Txtpurin.Text = showtheraseed(ComboBox2.SelectedValue,"adpurdet","itcod","invqu")
معلهش
ما زال الخطا موجود
تحت الكمبوبوكس 2 وايضا باقي المدخلات