PDA

نسخه کامل مشاهده نسخه کامل : دستورlocate و filter (لوكيت و -----)



saat8
01-10-2006, 22:03
باسلام خدمت دوستان
با تشكر از جواب شما براي سوال اولم
راستش چند سوال دلفي دارم ..البته كلاس ميرم امابه خاطر علاقه زياد دوست دارم هر چه سريعتر و جامعتر ياد بگيرم لطفا تنهام نذاريد
در مورد دودستور مهم سرچ كردن (لوكيت و -----) لطفا توضيح دهيد
متشكرم

soldier
01-10-2006, 23:28
سلام
اين از Locate

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

این هم از فیلتر

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

امید وارم که واستون مفید واقع بشه.
هر مشکلی داشتید . بپرسید.
موفق باشی. بای

saat8
02-10-2006, 15:49
با تشكر از شما
لطفا بگيد فرق اين دو با هم چيه ودر چه جايي استفاده ميشن
مرسي

Mahmood_N
02-10-2006, 18:23
با تشكر از شما
لطفا بگيد فرق اين دو با هم چيه ودر چه جايي استفاده ميشن
مرسي
سلام
اولي ( Locate ) برای جستجو در بانک اطلاعاتی به کار می ره ...
دومی ( Filter ) برای نمایش رکوردهای خاصی در جدول به کار می رود ...
اگه مشکلت حل نشده بگو تا بیشتر توضیح بدیم ...
موفق باشی ...

saat8
03-10-2006, 00:06
سلام
مرسي اگه يكم باز تر توضيح بدي ممنون ميشم آخه من هنوز مبتديم :blush:
مرسي

amin a.^2
03-10-2006, 00:11
locate که مشخص بزای جستجو در بانک اطلاعاتی یه کاریمثل کاریکه خود اکسس می تونه بکنه
اما فیلتر مثلاً شما می خواهین تو برنامتون فابل های pdf را کاربر بتونه باز بکنه تو قسمت ویرایش opendialoge تنها pdfرا وارد می کنید تا فقط اون جور فایل ها را باز کنه امیدوارم به دردتون بخوره
خدا نگهدار

saat8
03-10-2006, 00:16
مرسي امين جان

amin a.^2
03-10-2006, 00:19
قابلي نداشت
به قول سولجر جان
زكات دانش آموختن آن است

Mahmood_N
03-10-2006, 16:05
اما فیلتر مثلاً شما می خواهین تو برنامتون فابل های pdf را کاربر بتونه باز بکنه تو قسمت ویرایش opendialoge تنها pdfرا وارد می کنید تا فقط اون جور فایل ها را باز کنه امیدوارم به دردتون بخوره
سلام
آقا امين ، فكر نكنم منظور دوستمون توي OpenDialog باشه ...
دوستمون می خواست در مورد Filter توی بانک اطلاعاتی بدونه ...
بزار من یه خورده توضیح بدم :
ببین ...
فرض کن توی بانکت چند تا رکورد داری ( 3 تا ) و بانکت هم یه فیلد به نام Name داره که نام توش ثبت می شه ...
حالا فرض کن که اولین رکورد و سومین رکورد رو که ثبت کردی نام رو (( محمود )) ثبت کردی و دومی رو مثلا (( حسین )) ...
حالا اگه بانکت رو بر اساس همون فیلد Name فیلتر کنی و مقدار فیلتر رو برابر با (( محمود )) قرار بدی ، توی جدول فقط اسامی ای که نام محمود دارن نشون داده می شن ... ( یعنی رکوردهای 1 و 3 )
کد برای فیلتر هم یه چیزی مثل اینه :

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
فکر کنم یه خورده کامل تر توضیح داده باشم ...
موفق باشی ...

amin a.^2
03-10-2006, 16:13
سلام
آقا امين ، فكر نكنم منظور دوستمون توي OpenDialog باشه ...

با سلام
محمود جان
اولاَ opendialogeتنها یک نمونه بود وبس
در ضمن ایشون تو پرسششون ننوشتند در بانک های اطلاعاتی برای همین من ایبن توضیحارو دادم
از شما هم خیلی ممنونم که این توضیحارو دادید
چاکر شما هم هستیما!!

soldier
03-10-2006, 18:19
با سلام
محمود جان
اولاَ opendialogeتنها یک نمونه بود وبس
در ضمن ایشون تو پرسششون ننوشتند در بانک های اطلاعاتی برای همین من ایبن توضیحارو دادم
از شما هم خیلی ممنونم که این توضیحارو دادید
چاکر شما هم هستیما!!

سلام
فیلتر یک دستور پر کاربرد توی بانک اطلاعاتی هست.
که خودم اول کدش رو نوشتم. تنها فرق این دوتا در یک چیز هست.
که لکیت فقط اولین رکوردی رو که سرچ میکنید انتخاب میکنه
اما فیلتر میشه به بقیه رکورد های سرچ شده. هم جهش کرد.
محمود هم که توضیح دادن. کد هاش رو هم توی پست 2 نوشتم.
بای

saat8
04-10-2006, 00:09
[RIGHT]سلام
با تشكر از هر دو دوست عزيز
اشتباه از من بود كه نگفتم در بانك هاي اطلاعاتي ببخشيد
يه سوال ميشه اين دستور ----- رو به يك مثلا edit ربط بديم كه هر چيزي رو كه كاربر خواست تايپ كنه براي ----- مثلا مثل زير
adotable.filter:= 'name=edit1';
اگه اشتباست لطفا درستشو بنويسيد
مرسي

soldier
04-10-2006, 13:43
سلام
اول از همه. بله امكان داره كه به اديت مربوط بشه.
دوم . اين دستوري كه نوشتي غلته . اين درستش هست.


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

اما من خودم امتحانش نکردم.
امتحانش کن. اگر مشکل داشت بگو تا بگردم درستش رو بنویسم.
فعلآ بای

مرد مباح
04-10-2006, 14:31
من اصلاحش ميكنم.
يك جاش يك كمي اشكان داره

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
موفق باشيد.

teshneh
04-10-2006, 21:47
با سلام
موارد Filter , Locate را ئر مورد کار زیر امتحان کردم کاربرد نداشت.
من می خوام یه سرچ برای برنامه ام بزارم و در فرم دلفی ام عناصر زیر وجود دارد:
ADOQuery , ADOConnection , Datasource , DBGrid , Edit1
و یکی از فیلد های جدولم ، نام(name) هست، می خوام سرچ را طوری طراحی کنم که به محض اینکه کاربر حرف اول نام مورد نظرش را زد مثلا ب ،هر چه نام که اولش ب هست در DBGrid نمایش داده شود.
در ضمن می دونم که دستورات اش را باید در رویداد onchange مربوط به edit بنویسم.
یه چیز دیگه من دستورات زیر را نوشتم ولی اول به یک دکمه ارتباط دادم ،ولی مشکل داره :
with ADOQuery1 do begin
Close;
SQL.Clear;
SQL.Add('SELECT * FROM Applications WHERE name =:apptype');
ParamByName('apptype').Value:='edit1.text';
Open;
end;

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

مرد مباح
05-10-2006, 12:14
با سلام
موارد Filter , Locate را ئر مورد کار زیر امتحان کردم کاربرد نداشت.
من می خوام یه سرچ برای برنامه ام بزارم و در فرم دلفی ام عناصر زیر وجود دارد:
ADOQuery , ADOConnection , Datasource , DBGrid , Edit1
و یکی از فیلد های جدولم ، نام(name) هست، می خوام سرچ را طوری طراحی کنم که به محض اینکه کاربر حرف اول نام مورد نظرش را زد مثلا ب ،هر چه نام که اولش ب هست در DBGrid نمایش داده شود.
در ضمن می دونم که دستورات اش را باید در رویداد onchange مربوط به edit بنویسم.
یه چیز دیگه من دستورات زیر را نوشتم ولی اول به یک دکمه ارتباط دادم ،ولی مشکل داره :
with ADOQuery1 do begin
Close;
SQL.Clear;
SQL.Add('SELECT * FROM Applications WHERE name =:apptype');
ParamByName('apptype').Value:='edit1.text';
Open;
end;

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

توي onchange كه مربوط به edit شما ميشه كد زير رو منتقل كن
جواب ميگيري.

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

لطفا همين جا ادامه بده و جاي ديگه بحث رو نكشون و جاي ديگه سوال نپرس. ممنون
خبرشو بده.
موفق باشي.

teshneh
05-10-2006, 16:56
با سلام خدمت مردمباح
چشم سوالم را جاي ديگه مطرح نمي كنم. در مورد كدي كه گفتيد جواب نداد اگر ميشه شما كدهاي مرا امتحان كنيد شايد اينجوري به نتيجه برسيم.مرسي

مرد مباح
06-10-2006, 09:49
خاصيت filterd توي تيبلت رو ترو كن.
بايد جواب بده.
من روي سيستم خودم SQL ندارم.

Mahmood_N
06-10-2006, 10:15
سلام
با تشكر از هر دو دوست عزيز
اشتباه از من بود كه نگفتم در بانك هاي اطلاعاتي ببخشيد
يه سوال ميشه اين دستور ----- رو به يك مثلا edit ربط بديم كه هر چيزي رو كه كاربر خواست تايپ كنه براي ----- مثلا مثل زير
adotable.filter:= 'name=edit1';
اگه اشتباست لطفا درستشو بنويسيد
مرسي
سلام
البته دوستان كامل توضيح دادند ولي يه راه ديگش اينه :

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
موفق باشيد ...

teshneh
07-10-2006, 11:35
جناب mahmood_n ،با کدی که نوشتید فقط کلمه که دقیقا در edit هست پیدا می کنه ولی من می خوام جوری باشه که تمام مثلا نام های که اولشان س هست نمایش دهد در حالی که در edit فقط یک کلمه س وارد شده است.
محل نمایش هم در dbgrid هست.

BoomDoongDang
07-10-2006, 12:20
باید از Like استفاده کنی :
اینطوری : اونهایی که اول اسمشون S باشه .


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

mahdi bg
08-10-2006, 04:42
سلام

مرد مباح عزيز


خاصيت filterd توي تيبلت رو ترو كن.
بايد جواب بده.
من روي سيستم خودم SQL ندارم.

برای اجرای دستورات SQL لازم نیست چیزی
رو نصب کنی
SQL زبانی که توسط بیشتر پایگاه داده ها Support میشه
و زبانی است برای کار با پایگاه داده ها(Access و SQL Server و Oracle و ...)
و تقریبا هر کاری میشه با پایگاه داده باهاش انجام بدی
انتخاب ، حذف ، ویرایش ، Backup و ....

مرد مباح
09-10-2006, 11:50
جناب mahmood_n ،با کدی که نوشتید فقط کلمه که دقیقا در edit هست پیدا می کنه ولی من می خوام جوری باشه که تمام مثلا نام های که اولشان س هست نمایش دهد در حالی که در edit فقط یک کلمه س وارد شده است.
محل نمایش هم در dbgrid هست.

سلام رفيق. براي اينكه هر چيز به بعد رو نشون بده بايد از علامت * استفاده كني و فقط براي تكست جواب ميده و فقط هم بعد از يك پارامتر ميتوني بزارشي.
موفق باشي.

مرد مباح
09-10-2006, 11:52
سلام

مرد مباح عزيز



برای اجرای دستورات SQL لازم نیست چیزی
رو نصب کنی
SQL زبانی که توسط بیشتر پایگاه داده ها Support میشه
و زبانی است برای کار با پایگاه داده ها(Access و SQL Server و Oracle و ...)
و تقریبا هر کاری میشه با پایگاه داده باهاش انجام بدی
انتخاب ، حذف ، ویرایش ، Backup و ....

سلام دوست عزيزم.
منظور من برنامه SQL Server بود نه زبان SQL. ممنون از توضيح شما.

teshneh
09-10-2006, 13:54
سلام رفيق. براي اينكه هر چيز به بعد رو نشون بده بايد از علامت * استفاده كني و فقط براي تكست جواب ميده و فقط هم بعد از يك پارامتر ميتوني بزارشي.
موفق باشي.

با سلام خدمت مرد مباح
میشه کد اینهای را که گفتید را بنویسید ؟؟؟فکر کنم اونجوری بهتر متوجه حرفاتون میشم.مرسی

مرد مباح
09-10-2006, 20:56
توي پست 16 و 18 برات نوشتم. با كد.
فكر كنم دقت نداشتي. موفق باشيد.
باي