يتصفح المنتدى الآن:
1 زائر
|
رد: أرجو المساعدة في حل مشكلتي مع الدالفي
|
||||
---|---|---|---|---|
مدير الموقع
![]() ![]() ![]() |
عادة نربط جدول المداخيل (تفصيلي) مع جدول الموظفين (رئيسي) وليس العكس
للقيام بذك نضيف حقل إضافي في جدول المداخيل هو رقم الموظف , في هذا الحقل نسجل رقم الموظف الذي تتبع له القيمة الحالية , وعن طريق هذا الحقل يتم الربط بين الجدولين . الآن كل قيمة في جدول المداخيل (التفصيلي) يمكنني أن أعرف لأي موظف تابعة وذلك عن طريق الحقل الجديد الذي اسجل فيه رقم الموظف . ماتبقى هو بسيط جدا , وهو ربط الجداول ضمن الدلفي وفق علاقة رئيسي-تفصيلي (master-detail) 1- الجدول الرئيسي الموظفين لاتغيير عليه 2- جدول المداخيل التفصيلي , نحدد له الجدول الأب عن طريق خاصية MasterSource ثم نضبط الحقول التي سوف ترتبط مع بعضها وهي رقم الموظف في الرئيسي مع رقم الموظف في التفصيلي عن طريق خاصية MasterFields الآن الجدولان مرتبطان معا , وبالتالي الجدول التفصيلي لن يعرض سوى القيم الموافقه للسجل الحالي من الجدول الرئيسي . وعند اختيار موظف معين يعرض لائحة المداخيل الخاصه به فقط , للقيام بذلك عن طريق sql . نستخدم مكونات Query من أجل الجدول التفصيلي - نضبط خاصية Datasource إلى الجدول الرئيسي (الموظفين) - في عبارة sql وضمن الشرط where نمرر اسم الحقل في الجدول الرئيسي وكأنه بارامتر عن طريق النقتطين ":" مثال :
select * from detail
حيث id هو رقم الموظف في جدول الموظفين اذا لم نرد استخدام الطريقة التقليدية في الربط , وأردنا القيام بذلك خطوة واحدة عن طريق عبارة SQL واحدة يمكن اتباع الاستعلام التالي :
select m.*,sum(d.salary) as salary ftom
وهذا سوف يعرض كامل معلومات الموظف من جدول الموظفين (m.*) مع مجموع مداخيله من جدول المداخيل sum(d.salary) بناء على الاسم المعطى |
|||
|
||||
|
يمكنك قراءة موضوع.
لا يمكنك إضافة موضوع جديد.
لا يمكنك الرد على المشاركات.
لا يمكنك تحرير مشاركاتك.
لا يمكنك حذف مشاركاتك.
لا يمكنك إضافة إستفتاء جديد.
لا يمكنك التصويت في الإستفتاءات.
لا يمكنك إرفاق ملفات في مشاركاتك.
لا يمكنك المشاركة بدون موافقة المشرف.
لا يمكنك استخدام نوع المشاركة.
لا يمكنك استخدام كود هتمل.
You لا يمكنك استخدام التوقيع .
يمكنك إنشاء ملف PDF .
يمكنك طباعة الصفحة.