PDA

View Full Version : مشکل جست و جو در یک جدول detail شده به جدول master



hamid-nic
شنبه 31 مرداد 1388, 12:50 عصر
سلام دوستان من با یک مشکلی روبرو شدم اون اینه که :
من یک جدول master دارم و 3 تا جدول detail شده به آن (بر اساس کد ملی)
من در جدول master برای جست و جو از این کد استفاده می کنم



DataModule1.TData.Filter := 'codemeli='''+edit1.Text+'''';
DataModule1.TData.Filtered:=true;


که جواب می دهد و جست و جو را انجام می دهد .
اما موقعی که می خواهم در یک جدول detail شده به جدول master جست و جو کنم وقتی از این کد استفاده می کنم خطای



TClass: Filter property cannot be used for detail tables .

رخ می دهد که تصویر این خطا در ضمیمه وجود دارد .
من برای جست و جو در جدول های detail شده از چه روشی استفاده کنم ؟ به چه شکل ؟
قبل از هر همکاری و راهنماییتان خیلی ممنونم .

جواد ملاولی
شنبه 31 مرداد 1388, 14:10 عصر
سلام. از دستور Lookup استفاده کنید.

hamid-nic
شنبه 31 مرداد 1388, 18:33 عصر
سلام. از دستور Lookup استفاده کنید.

دوست عزیز آیا این دستور به صورت مجزا بر روی جدول detail شده کار می کند ؟ یعنی اینکه کاری به جدول master نداره که الان روی کدوم شخص قرار داره ؟ نمی دونم متوجه منظورم شدید ؟
آشنایی زیادی با این دستور ندارم میشه یه کمی یا یک نمونه توضیح دهید . خیلی ممنون

جواد ملاولی
شنبه 31 مرداد 1388, 22:49 عصر
دوست عزیز آیا این دستور به صورت مجزا بر روی جدول detail شده کار می کند ؟ یعنی اینکه کاری به جدول master نداره که الان روی کدوم شخص قرار داره ؟ نمی دونم متوجه منظورم شدید ؟
آشنایی زیادی با این دستور ندارم میشه یه کمی یا یک نمونه توضیح دهید . خیلی ممنون

بله، هیچ کاری به جدول master نداره. به جدول Detail هم کاری نداره؛ به این معنا که این دستور اصلا اشاره گر جدول رو جابجا نمی کنه، بلکه مقادیر فیلد ها رو براتون پیدا می کنه.

hamid-nic
شنبه 31 مرداد 1388, 23:04 عصر
دوست عزیز برای این کار نمونه کدی ندارید که متوجه بشم چه جوری با اون کار کنم ؟

hamid-nic
شنبه 31 مرداد 1388, 23:09 عصر
دوستان راه دیگه ای نداره باید فقط از این دستور که دوستمون گفت استفاده کنیم ؟
لطفا راهنمایی کنید !! :افسرده:

جواد ملاولی
یک شنبه 01 شهریور 1388, 08:48 صبح
فکر می کنم دستور Locate هم به دردت بخوره. این دستور ها رو در help خود دلفی به طور کامل توضیح داده.

hamid-nic
یک شنبه 01 شهریور 1388, 14:50 عصر
فکر می کنم دستور Locate هم به دردت بخوره. این دستور ها رو در help خود دلفی به طور کامل توضیح داده.
دوست عزیز برای این دستور یا دستور look up اگه مثال بزنی خیلی ممنون میشم

جواد ملاولی
یک شنبه 01 شهریور 1388, 21:14 عصر
if Table1. Locate('ID',StrtoVar('1000'),[]) then
Showmessage ('Exists')

در این کد ID نام فیلدیه که می خوایم با استفاده از اون رکورد خاصی رو پیدا پیدا کنیم. عدد 1000 به عنوان مثال مقدار اون فیلده (پارامتر دوم باید از نوع Variant باشه). اگه رکوردی با این مشخصات پیدا کنه True بر می گردونه و در غیر اینصورت False