نمایش نتایج 1 تا 20 از 20

نام تاپیک: امکان جستجو در برنامه

  1. #1
    کاربر جدید
    تاریخ عضویت
    تیر 1387
    محل زندگی
    تهران
    پست
    3

    امکان جستجو در برنامه

    سلام
    یه سوال داشتم
    توی نوشتن جستجو برای برنامم مشکل دارم یه برنامه آزمایشگاه که می خوام جستجو کنم ولی هر کاری می کنم نمی شه نمی خوام هم پیچیده باشه یه جستجوی عادی
    ممنون می شم

  2. #2
    کاربر جدید
    تاریخ عضویت
    تیر 1384
    محل زندگی
    خوزستان - ماهشهر
    پست
    25

    نقل قول: سوال فوری

    بر اساس فیلدخاصی می خوای جستجو کنی؟ دیتابیست چیه؟ توی دلفی برنامه نوشتی ان شاءاله؟؟؟

  3. #3

    نقل قول: سوال فوری

    بهتر است کامل تر توضیح دهید.

    برنامه تان یک برنامه بانک اطلاعاتی است یا نه؟ اگر جواب مثبت است چه دیتابیسی و چطور میخواهید جستجو کنید.
    جستجوی شما بر چه اساسی انجام میشود؟

    موفق باشید...

  4. #4
    کاربر جدید
    تاریخ عضویت
    تیر 1387
    محل زندگی
    تهران
    پست
    3

    نقل قول: سوال فوری

    بله با دلفی نوشتم و به اس کیو ال متصل کردم مثلا یک فرم مربوط به اطلاعات بیماران دارم و می خواهم براسای نام آنها جستجو کنم از طریق ado هم به اس کیو ال متصل شدم
    ممنون

  5. #5

    نقل قول: سوال فوری

    میتوانید از دستور Select یا Locate برای جستجو استفاده کنید. بارها در سایت بحث شده. جستجو کنید.

    Select Field From <TableName> Where Field = ....


    موفق باشید...

  6. #6
    کاربر تازه وارد آواتار moonplant
    تاریخ عضویت
    فروردین 1386
    محل زندگی
    moon
    پست
    59

    نقل قول: سوال فوری

    مثلاً این کد را بگذار تو برنامه ات:

    with AdoQuery1 do
    begin
    Close ;
    SQL.Clear ;
    SQL.Add('select * FROM tb1 where name= ' + quotedstr(edit1.text)) ;
    ExecSQL ;
    Open;
    end;
    تو این روش query رو خودت موقع اجرا می نویسی. الان مثلاً این کد بالایی از tb1 رکورد هایی را برمی گرداند که فیلد name شان برابر با مقداری که در ادیت باکس نوشته شده است باشد.

  7. #7
    کاربر دائمی آواتار etedali
    تاریخ عضویت
    دی 1386
    محل زندگی
    اصفهان
    سن
    38
    پست
    117

    نقل قول: سوال فوری

    علاوه برروشهایی که دوستان گفتند از این روش ساده تر هم می توانی استفاده کنی
           Table1.Locate('Name',Edit1.Text,[loCaseInsensitive]);

    در این مثال فرض براین است که ما به دنبال نامی که در Edit1 تایپ شده در دیتا بیس مورد نظر می گردیم.

  8. #8
    کاربر دائمی آواتار delphiprog3000
    تاریخ عضویت
    بهمن 1385
    محل زندگی
    Kerman
    پست
    511

    نقل قول: سوال فوری

    با سلام .دوست عزیز عنوان مناسبی برای موضوع خود انتخاب کنید.

    از این روش نیز میتونید استفاده کنید:

    with Adoquery1 do
    begin
    close;
    sql.text:='select * from table1 where name like '+Quotedstr(edit1.text);
    open;
    end;
    موفق باشید...............

  9. #9

    نقل قول: امکان جستجو در برنامه

    از این روش هم می تونی استفاده کنی
    with Adoquery1 do
    Begin
    Filtered:=False;
    Filter:='Name='+Edit1.text;
    filtered:=True;

    End;

  10. #10
    کاربر جدید
    تاریخ عضویت
    تیر 1384
    محل زندگی
    خوزستان - ماهشهر
    پست
    25

    نقل قول: امکان جستجو در برنامه

    به نظرم بهترین راه استفاده از سرچ پارشیال می باشد که اگه فقط قسمتی از نام رو بنویسی برات جستجو رو انجام بده کد زیر رو توی دکمه مربوط به جستجوت بنویس.
    adoquery1.sql.clear;
    adoquery1.sql.add('select * from tablename where fieldname like N ''%'+edit1.text+'%''');
    adoquery1.open;
    آخرین ویرایش به وسیله ENG_COM1979 : چهارشنبه 12 تیر 1387 در 09:59 صبح

  11. #11

    نقل قول: امکان جستجو در برنامه

    سلام.
    اگه داده ها در Clientdataset واکشی شده اند میتونی در رویداد OnFilter اون به این صورت کد نویسی کنی
    Accept := Pos(edtSearch.text,Dataset[FieldName])>0

    بجای Fieldname نام فیلد مورد جستجو را قرار میدی. با این کار یک سرچ سریع داری که بصورت حرف به حرف داده های را فیلتر میکنه.
    اگه کاربر داخل یک کادر متن مقدار جستجو را تایپ میکنه به این صورت رویداد OnChange را کد نویسی میکنی.
      if Trim(edtSearch.Text)<>'' then begin
    Clientdataset1.Filtered:=False;
    Clientdataset1.Filtered:=True;
    end else
    Clientdataset1.Filtered:=False;


    اینجا چطوری میشه فایل مثال گذاشت؟
    آخرین ویرایش به وسیله m-sharifi : پنج شنبه 20 تیر 1387 در 14:13 عصر

  12. #12
    کاربر دائمی آواتار Modernidea
    تاریخ عضویت
    خرداد 1387
    محل زندگی
    »مشهد الرضا«
    پست
    573

    نقل قول: امکان جستجو در برنامه

    باسلام
    چطوری میشه یک داده از نوع کارنسی در اکسس را در دلفی با Adoquery جست و جو کرد؟

  13. #13
    کاربر دائمی آواتار delphiprog3000
    تاریخ عضویت
    بهمن 1385
    محل زندگی
    Kerman
    پست
    511

    نقل قول: امکان جستجو در برنامه

    با سلام.

    شیوه خاصی نداره. اگه شما با دستورات جستجو آشنایی داشته باشید به راحتی قادر به انجام آن هستید.

    به این صورت:
    var currency1:integer;
    begin
    currency1:=StrToInt(edit1.Text);
    with Adoquery1 do
    begin
    close;
    sql.text:='select * from table1 where [id] = '+inttostr(currency1);
    open;
    if not IsEmpty then
    begin
    Edit2.Text:=inttostr(FieldValues['id']);
    end;
    end;


    راه های دیگه استفاده از filter , Locate که در مورد آن زیاد بحث شده که میتوانید جستجو کنید.

    موفق باشید.............

  14. #14
    کاربر دائمی آواتار Modernidea
    تاریخ عضویت
    خرداد 1387
    محل زندگی
    »مشهد الرضا«
    پست
    573

    نقل قول: امکان جستجو در برنامه

    نقل قول نوشته شده توسط delphiprog3000 مشاهده تاپیک
    با سلام.

    شیوه خاصی نداره. اگه شما با دستورات جستجو آشنایی داشته باشید به راحتی قادر به انجام آن هستید.

    به این صورت:
    var currency1:integer;
    begin
    currency1:=StrToInt(edit1.Text);
    with Adoquery1 do
    begin
    close;
    sql.text:='select * from table1 where [id] = '+inttostr(currency1);
    open;
    if not IsEmpty then
    begin
    Edit2.Text:=inttostr(FieldValues['id']);
    end;
    end;


    راه های دیگه استفاده از filter , Locate که در مورد آن زیاد بحث شده که میتوانید جستجو کنید.

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

    ADO1.Active := False;
    Str3 := 'Select * From Table1 Where ( BuyPrice Like'''+EditSearch.Text+'%'' )';
    ADO1.SQL.Clear;
    ADO1.SQL.Add(Str3);
    ADO1.Active := True;
    ShowValues.Click;

  15. #15

    نقل قول: امکان جستجو در برنامه

    فقط یک نکته و اینکه زمانی یک پارامتر SQL را Add میکنید خودبخود ADOQuery شما غیرفعال میشود و نیازی به Deactive کردن آن نیست.

  16. #16
    کاربر دائمی آواتار tefos666
    تاریخ عضویت
    فروردین 1386
    محل زندگی
    Tehran , IRAN
    پست
    245

    Wink نقل قول: امکان جستجو در برنامه

    دوست عزیز بهترین روش اینه که شما یه store procedure بنویسی که ورودیش عدد یا حروف باشه و یک فرم global تو برنامت بزاری که تو هرجای برنامه اونو صدا زدی بوسیله sp نام جدول رو بهش بدی و تو گرید اون خروجیش نتیجه جستجو همون table باشه اینجوری چندتا حسن داره برنامتون شیک تر میشه - خوانا تر میشه - نهایتا یک فرم جستجو دارید و لازم نیست تو هرجای برنامه چندتا textbox واسه سرچ بزاری میتونی مثلا بگی رو هر تکست باکسی که لازم بود جستجو بشه مثلا کلید F3 بزنه یا Space اونوقت فرم جستجو ظاهر میشه و بر اساس دستورات sp ورودی جدول مربوطه رو شما بهش میدی و خروجی رو میریزه تو گرید و شما نتیجه گرید رو تو فرمت برمیگردونی (ارتباط 2 فرم با همدیگر )

    من خودم اینکار رو میکنم - نمونه یه GUI رو هم که خودم استفاده میکنم برات میزارم تا منظورم رو واضح رسونده باشم



    یا اینکه میتونی sql بنویسی البته تو ado query
    adoquery1.sql.add ('select * from table where name = @param')l
    با اینکار شما یک پارامتر تعریف میکنید (حتما باید بعد از = یکی فاصله داشته باشد)
    حالا جای پارامتر در برنامه جستجو را قرار میدهید
    adoqury1.close
    adoquery1.Parameters.ParamByName('@param').Value:= Edit1.Text
    adoquery1.open

    سوالی بود در خدمتم
    success is doing , not wishing
    عکس های ضمیمه عکس های ضمیمه

  17. #17
    کاربر جدید
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    iran / bushehr
    پست
    29

    نقل قول: امکان جستجو در برنامه

    سلام
    من می خاستم در برنامه ای که نوشتم عملیات جستجو رو هم انجام بدم ولی نمی خام از دستور locateاستفاده کنم دستور پیشرفته دیگهای هم هست اگه هست شکل کلی اونو برام بنویسید ممنون

  18. #18
    کاربر جدید
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    iran / bushehr
    پست
    29

    نقل قول: امکان جستجو در برنامه

    ببخشید (می خواستم ) (نمی خوام ) بخاطر سریع تایپ کردنه
    اگه ممکنه به من جواب کامل رو بدبد

  19. #19
    کاربر دائمی آواتار delphiprog3000
    تاریخ عضویت
    بهمن 1385
    محل زندگی
    Kerman
    پست
    511

    نقل قول: امکان جستجو در برنامه

    سلام دوست من.

    این لینک بهترین روش جستجو رو به شما نشان میدهد.......

    https://barnamenevis.org/showthread.php?t=88786

    موفق باشید...............

  20. #20

    سلام بچه ها

    سلام دوستان
    برای جستجو به این کدها نیاز دازیم که روش استاندارد است:

    adoquery.close;
    adouqery.sql.clear;
    adoquery.sql.add(sql commond);
    adoquery.execute;
    موفق باشید.توی قسمت سوم جمله اس کیو ال مورد نظر رو می نویسید.


قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •