تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
كود سيكوال محيرني
#1
السلام عليكم

أخواني الكرام استخدمت هذا الكود لجمع كمية كل صنف علي حده في الجدول T واظهارالناتج في الفليكس جريد

SQLs = "SELECT ItemName, Sum(ITVNo) FROM T GROUP BY ItemName"

والمطلوب جمع كل صنف علي حده في الجدولين T و T1 واظهار الناتج في الفليكس جريد أيضا كما هو موضح في الشكل المرفق (Sum)

المثال مرفق أرجو التعديل عليه ولكم مني جزيل الشكر


الملفات المرفقة صورة/صور
   

.rar   db2008.rar (الحجم : 41.51 ك ب / التحميلات : 73)
الرد }}}
تم الشكر بواسطة:
#2
هل من مجيب
الرد }}}
تم الشكر بواسطة:
#3
محاولة

أرجو أن يكون هذا مبتغاك
الرد }}}
تم الشكر بواسطة:
#4
أخي الكريم مشكور لاهتمامك ولكن المطلوب جمع كل صنف علي حده في الجدولين انظر الي الملف المرفق (Sum) هو النتيجة المراد الوصول اليها

لاحظ أخي عند فتح البرنامج تظهر جميع الأصناف الموجودة في جدول T في الفليكس جريد وعند الضغط علي زر مجموع يجمع كل صنف علي حده مع عدم تكرار الصنف والمطلوب تطبيق ذلك أيضا علي جدول T1 واظهار النواتج في الفليكس جريد (انظر المرفق Sum فهو يوضح النتيجة المطلوبة ) ولك مني جزيل الشكر
الرد }}}
تم الشكر بواسطة:
#5
هل من مجيب
الرد }}}
تم الشكر بواسطة:
#6
السلام عليكم...

عدل كود الزر ليصبح كما يلي (التعديل بالأساس على جملة SQL):
كود :
Private Sub Command1_Click()
    SQLs = "SELECT ItemNames.ItemName, " _
         & "IIf(IsNull(VirtualT.TSum), 0, VirtualT.TSum) AS TSum, " _
         & "IIf(IsNull(VirtualT1.T1Sum), 0, VirtualT1.T1Sum) AS T1Sum " _
         & "FROM ((SELECT DISTINCT T.ItemName FROM T UNION SELECT DISTINCT T1.ItemName FROM T1) AS ItemNames " _
         & "LEFT OUTER JOIN (SELECT T.ItemName, SUM(T.ITVNo) AS TSum FROM T GROUP BY T.ItemName) AS VirtualT " _
         & "ON VirtualT.ItemName = ItemNames.ItemName) " _
         & "LEFT OUTER JOIN (SELECT T1.ItemName, SUM(T1.ITVNo) AS T1Sum FROM T1 GROUP BY T1.ItemName) AS VirtualT1 " _
         & "ON VirtualT1.ItemName = ItemNames.ItemName " _
         & "ORDER BY ItemNames.ItemName"

    If Con.State = 1 Then Con.Close
    Con.Open "Provider=Microsoft.Ace.OLEDB.12.0; Data Source=" & App.Path & "\dbo.accdb"

    If RSS.State = 1 Then RSS.Close
    RSS.Open SQLs, Con, adOpenKeyset, adLockOptimistic, adCmdText
    Set MSHFlexGrid1.DataSource = RSS
End Sub

* لاحظ أننا استعملنا جداول وهمية: ItemNames و VirtualT و VirtualT1 (مؤقتة في الذاكرة ضمن جملة الـ SQL) لتجميع البيانات بهذا الشكل.

نرجو الاستفادة و السلام.
بِسْمِ اللهِ الرَّحْمَنِ الرَّحِيمِ ( وَ مَا تُقَدِّمُوا لِأَنفُسِكُم مِّنْ خَيْرٍ تَجِدُوهُ عِندَ اللهِ هُوَ خَيْراً وَ أَعْظَمَ أَجْراً ) صَدَقَ اللهُ الْعَظِيمُ
الرد }}}
تم الشكر بواسطة:
#7
فعلا هو المطلوب جزاك الله كل خير أخي الكريم وربنا يجعله في ميزان حسناتك ولك مني جزيل الشكر
الرد }}}
تم الشكر بواسطة:
#8
هل بامكاني اضافة حقل اخر قرب ite;nq;e
SQLs = "SELECT ItemName, Sum(ITVNo) FROM T GROUP BY ItemName
الرد }}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  اتصال قاعدة سيكوال Ahmed Abdulla 6 2,239 17-03-13, 11:51 AM
آخر رد: Ahmed Abdulla

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


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