14-08-18, 09:43 PM
(14-08-18, 08:11 PM)elgokr كتب :الشكر لله
بخصوص الكودبنائاً على الصورة المرفقة بالموضوع
حيث ان الصورة المرفقة توضح ان اجمالى الجدول الاوليطرح منه اجمالى الجدول الثاني
ليعرض البيانات كما لو انه فى جدول الثالث
قاعدة البيانات تحتوى علىالجدول الاولالاسم aaa وهو الارقام الخاصة به : ( 1000 + 500 + 1000 + 500 + 1000 ) = 4000حيث ان الاسم bbb وهو الارقام الخاصة به : ( 500 ) = 500
الجدول الثانيالاسم aaa وهو الارقام الخاصة به : ( 500 + 1000 + 1000 + 500 ) = 3000حيث ان الاسم bbb وهو الارقام الخاصة به : ( 300 + 100 ) = 400
ليعطى الاجمالى النهائي للجدول الثالثالاسم aaa لاجمالى ( 4000 - 3000 ) = 1000الاسم bbb لاجمالى ( 500 - 400 ) = 100
وبناءاً ان عدد الاسم فى الجدول الاول لا يتوافق مع عدد الاسم فى الجدول الثانيفتم عمل الكود التانى حتى يتجنب اى من نواقص وتزايد اعداد الاضافة لكل جدول
ليصبح كود الاستعلام بهذا الشكلكود الاستعلام الاول
كود :
Dim cmd As New OleDbCommand("", CNN)
تم استبداله ليصبح
كود :
Dim cmd As New OleDbCommand(GetT3(TextBox1.Text), CNN)
وكود الاستعلام الثاني
كود :
Dim AA As OleDbDataAdapter = New OleDbDataAdapter("", CNN)
تم استبداله ليصبح
كود :
Dim AA As OleDbDataAdapter = New OleDbDataAdapter(GetT3(TextBox1.Text), CNN)
مع اضافة الكود التالى
كود :
Private Function GetT3(ByVal Val As String)
Dim sql As String
sql = "SELECT '1' AS ID, '" & Val & "' AS NAME, ((T1.s) - (T2.s)) AS TOTAL FROM (SELECT SUM(value) as s FROM Table1 WHERE name='" & Val & "') T1, (SELECT SUM(value) as s from Table2 WHERE name='" & Val & "') T2"
Return sql
End Function
بالنهاية السورس + برنامج الاختبار مرفقواتمنى ان الصورة النهائية للاستعلام واضحة وان الامر غير معقد
تحياتى لكوتمنياتى لك التوفيق
مشكور جدا جدا يالغالي على صبرك وتعبك معي دائما حفظ الله ورعاك
وتم تجريب الكود والكود شغال عشرة علي عشرة عن طريق البحث بأسم الكود
وبس هناك مشكلة عند فتح الفورم لايقوم بعرض كل الاصناف بنتائج الخصم ومشكووور جدا
