السلام عليكم ورحمة لله وبركاته
تواجهني مشكلة بسيطة في بعض جمل SQL
المشكلة هي كالتالي
عندي جدول في قاعدة بيانات Access خاص بالموظفين و بياناتهم الشخصية و في هذا الجدول
يوجد حقل اسمه Epl_Code وهو حقل الكود الخاص بالموظف و هو عبارة عن ترقيم ( 1 ، 2 ، 3 ، 4 ، ...... )
هذا الجدول يرتبط بجدول آخر و هو جدول الخصومات و جدول الخصومات يحتوي على نفس الحقل Epl_Code
حيث يرتبط الجدولان بهذا الحقل (علاقة رأس بأطراف )
و جدول الخصومات يحتوي على الخصومات الخاصة بكل موظف و بيانات كل خصم كا ( التاريخ ، قيمة الخصم ، .. إلخ )
الآن من الـفيجوال بيسيك صممت فورم للبحث عن موظف و قمت بعرض جميع بيانات الموظف بالكود التالي :
RS.Open "employees", db, adOpenStatic, adLockOptimistic Sql = "Select * From employees Where Epl_Num LIKE '%" & Trim(Txt) & "%' " Set RS = db.Execute(Sql)
و بعدها يتم عرض البيانات في ListViwe
و إلى هنا لا توجد مشاكل و لكنها تبدأ من الخطوة التالية
Dim Tmp As String Tmp = RS![Epl_Code] Rs.Close
لقد أخذت رقم الموظف المطلوب وو ضعته في متغير كما هو موضح من الكود السابق
أقوم بفتح الجدول الثاني بهذه الطريقة
RS.Open "Khasm", db, adOpenStatic, adLockOptimistic Sql = "Select * From Khasm Where Epl_Code='" & Trim(Tmp) & "'" Set RS = db.Execute(Sql)
هنا يعطي الفيجزال بيسيك Debug محتواه "عدم تطابق نوع البيانات في تعبير المعايرة"
حيث أني أريد من الكود السابق أن أحصل على كل ما في اجدول الخاص بالخصومات ما يخص الموظف الذي أريده
بدلالة رقمه و لكني فشلت و بعدها أريد أن أعرض جميع الخصومات التي على الموظف و أريد في النهاية أن أحصل الممجموع
لهذه الخصومات و أنا أعرف جملة SQL لذلك و هي كالتالي و لكني لا أعرف كيف أحصل على ذلك حت و لو حصلت على ما أشرت إليه
Sql = "Select Sum(Ks_Value) From Khasm" Set RS = db.Execute(Sql)
أتمنى لو في طريقة لفتح جدولين بينهما علاقة بجمل الـ SQL
أرجو أن تساعدوني وجزاكم الله خيراً .
