PDA

View Full Version : مشکل فیلد Lookup برای چندجدول



Mohammad_Mnt
پنج شنبه 13 بهمن 1384, 12:46 عصر
من یه جدول دارم که به 7 جدول دیگه مرتبط می شه . به این صورت که یه فیلد کلید دارم به نام code و یه فیلد به نام Kind
اگه توی یه رکورد ، فیلد Kind مقدار 1 رو داشته باشه ، این جدول باید به جدول Misc مرتبط بشه
اگه توی یه رکورد ، فیلد Kind مقدار 2 رو داشته باشه ، این جدول باید به جدول Person مرتبط بشه
............
اگه توی یه رکورد ، فیلد Kind مقدار 7 رو داشته باشه ، این جدول باید به جدول Worker مرتبط بشه

حالا من می خوام یه DBLookupComboBox بذارم روی فرم که به جدول اصلی متصل باشه ولی اطلاعاتی رو که می خواد نشون بده ، بسته به مقدار فیلد Kind ، از هفت جدول موجود بگیره .

چه کار کنم ؟

Mohammad_Mnt
چهارشنبه 19 بهمن 1384, 19:01 عصر
کسی راه حلی نداره ؟

Yasser_Program
جمعه 21 بهمن 1384, 04:26 صبح
سلام
من از توضیح شما اینطور برداشت کردم که شما در هر نمایش جدول بسته به فیلد kind به یک جدول متصل می شوید (در هر لحظه فقط به بین دو جدول لینک برقرار می شود)، اگر اینگونه باشد فکر می کنم یکی از راه حلهایی که می توانید داشته باشید این است که به رویداد OnDropDown در DBLookupList جواب دهید. این رویداد قبل از باز شدن لیست اجرا می شود و می توان در آن بر حسب فیلد Kind مقدار DataSource را تغییر داد.

Mohammad_Mnt
جمعه 21 بهمن 1384, 13:59 عصر
درسته ولی هر لحظه فقط رکورد های یک جدول رو نمایش می ده. من می خوام رکودهای تمام 7 جدول رونشون بده

Yalda2005
جمعه 21 بهمن 1384, 22:54 عصر
شاید استفاده از یه query مشکلو حل کنه و بعد list source رو اون query بدید ...

Mohammad_Mnt
یک شنبه 23 بهمن 1384, 13:01 عصر
اگه می شه شما بنویسید :)

سید مسعود موحد
یک شنبه 23 بهمن 1384, 15:23 عصر
شما باید یک Store Procedure با یک Function بنویسید که خروجی آن Table باشد سپس شما DBLookupComboBox را به خروجی آن وصل نمایید تا در هنگام انتخاب Code متناظر که بصورت پارامتر به آنها پاس میشود خروجی متناظر را نمایش بدهد

Yasser_Program
شنبه 29 بهمن 1384, 04:26 صبح
سلام، می تونید با یک تصویر از فرمتون، دقیقا نشون بدین که چیکار می خواین بکنین؟ چون با توجه به جواب شما من هنوز سوال رو درست نفهمیدم!