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

نام تاپیک: Select کردن با مقادیر ورودی در چند Edit

  1. #1
    کاربر دائمی آواتار Mahdi_S_T
    تاریخ عضویت
    شهریور 1382
    محل زندگی
    خراسان رضوی
    پست
    1,039

    Question Select کردن با مقادیر ورودی در چند Edit

    من چند Edit دارم فرضا اطلاعات مربوط به کارمندان : نام - پرسنلی - حقوق - محل کار و ...
    حالا میخوام با استفاده ا ز Select و هر کدام از Edit ها که توسط کاربر کامل شده گزارش را نمایش بدم ( این احتمال است که کاربر همه را پر کند یا چند تا را پر کند )
    البته من قبلا با Xor نمودن و عمل فیلتر این کارو می کردم .
    با تشکر

  2. #2
    کاربر دائمی آواتار soroush_vs
    تاریخ عضویت
    بهمن 1384
    محل زندگی
    شیراز
    سن
    38
    پست
    457
    باید یکی یکی چک کنید
    البته ممکنه فکر کنید که کار وقت گیریه اما فقط ممکنه 1 ساعت کار ببره.
    با چند تا if تو در تو میتونید این کار رو انجام بدید

  3. #3
    نقل قول نوشته شده توسط Mahdi_S_T
    من چند Edit دارم فرضا اطلاعات مربوط به کارمندان : نام - پرسنلی - حقوق - محل کار و ...
    حالا میخوام با استفاده ا ز Select و هر کدام از Edit ها که توسط کاربر کامل شده گزارش را نمایش بدم ( این احتمال است که کاربر همه را پر کند یا چند تا را پر کند )
    البته من قبلا با Xor نمودن و عمل فیلتر این کارو می کردم .
    با تشکر
    ببین من اینجا منظور از Selectرو نمیفهمم ! اگر میخوای Editهایی که پرشدند رو پیدا کنی (مطمئنی DBEdit) نیستند ؟ این کد برات این کار رو میکنه :

    for i := 0 to Controlscount -1 do
    if Controls[i] is TEdit then
    with Controls[i] as TEdit
    do
    if Text = '' then ....حالا دیگه هر کاری که مخیوای بکنی
    cegin


    این کد همه ادیتهای روی فرم رو برات پیدا میکنه، ما اگر میخوای یک سری ادیتهای خاص رو فرم رو پیدا کنی مثلا میتونی Tag اونها رو مقدار بدی و تو IF کد چک کنی که مقدار Tag مقدار مورد نظر باشه ...

    اما اگر دیتاهارو فرستادی توی دیتابیس اما میخوای با Select دوباره بخونیشون اونوقت میتونی مثلا رو فیلدهای دیتاستی که خوندتشون لوپ بزنی .

  4. #4
    کاربر دائمی آواتار Mahdi_S_T
    تاریخ عضویت
    شهریور 1382
    محل زندگی
    خراسان رضوی
    پست
    1,039
    با تشکر از اهمیت دوستان به این تاپیک
    ولی ظاهرا من نتونستم که سوالم رو خوب مطرح کنم . پس شرح مفصل :
    من یه جدول دارم شامل نام - فامیل- تاریخ استخدام و یه فرم دارم که شامل سه Edit است با همین عناوین و در فرم یه DBGrid هم وجود داره حالا میخوام دستور اس کیو الی بنویسم در رویداد Change مربوط به Edit ها که هر موقع کاربر در ادیت نام - علی - رو وارد کرد تمام علی ها نمایش داده شود و اگر هم فامیل احمدی وارد شد تمام کسانی که نامشان علی و فامیل احمدی دارند نمایش داده شود .......
    البته همانطور که گفتم من قبلا توسط Filter این کارو کردم ولی حالا میخوام توسط دستور Select این کارو بکنم .اگر همه Editها پر باشند مشکلی ندارم ولی اگه یکی خالی باشه اونوقت مشکل دارم چون Edit خالی هم بعنوان یه مقدار محسوب میشه و اطلاعات نمایش داده اشتباه میشه !

  5. #5
    کاربر دائمی آواتار arshia_
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    ایران-شهر فرزانگان( بروجرد )
    پست
    1,226
    یه شی quary به برنامه اضافه کن و توی رویداد onchange ‌مربوط به باکس مورد نظرت این دستورات رو بنویس
     
    quary.sql.clear
    quary.sql.add('select * from tatblename where fledname like :param1');
    quary.params.parambynames('param1).value:='%'+trim (edit1.text)+'%';
    quary.active:=true;

  6. #6

    var
    AwhereClause: String;
    begin
    if Trim(edtName.Text) <> '' then
    AWhereCluase := 'Field1 like ''%' + edtName.Text + ''''; یا QutedStr
    if Trim(edtSirName) <> '' then
    begin
    if AWhereClause <> '' then AwhereClause := AwhereClause + ' and ' ;
    AWhereClause := ' Field2 like ''%' + edSirName.Text + '''';
    end.
    و به همین منوال....

    البته کلا من یک تابع AddCond نوشتم که خودش چک میکنه و And رو میزاره، یک تابع هم نوشتم که مقداری که قراره بعنوان نتیجه باشه رو چک میکنه مشکلی نداشته باشه (مثلا اگه توش ' داشت بکندش '' و ...)
    البته اگر با پارامتر هم کتپار کنی خیلی خوبه ولی خب پارسر پارامترها خیلی کنده، برای همین زیاد توصیه نمیشه با پارامترها به این روشی که دوستمون کار کرده کار بکنی...

    راستی به چی دقت کنه درست میشه؟!!!

  7. #7
    کاربر دائمی آواتار zman123456
    تاریخ عضویت
    شهریور 1385
    محل زندگی
    بندرعباس
    پست
    515
    سلام
    یک روش راحت اینکه از اولی شروع کنی به if گذاشتن و متن query رو با and شروع کنی به غیر از اولی که باید تشخیص بدی اولی کودوم است .
    خیلی راحته و من همیشه از این روش استفاده می کنم و میشه با این روش فرم های گزارش گیری بر اساس فیلد های انتخابی و ترکیبی کاربر رو نوشت .
    اگر فکر میکنید این روش به درد شما میخوره میل بزنید براتون یه unit می فرستم که اینطوری کار میکنه.

تاپیک های مشابه

  1. محاسبه فرمول وارد شده توسط کاربر در یک Edit
    نوشته شده توسط علامت سوال در بخش مباحث عمومی دلفی و پاسکال
    پاسخ: 14
    آخرین پست: دوشنبه 01 مرداد 1386, 15:37 عصر
  2. نمایش ساعت سیستم در Edit
    نوشته شده توسط Vahid.Shatery در بخش ارزیابی نرم افزار
    پاسخ: 5
    آخرین پست: پنج شنبه 21 تیر 1386, 21:00 عصر
  3. Edit Exe
    نوشته شده توسط benyamin_pc در بخش C#‎‎
    پاسخ: 6
    آخرین پست: سه شنبه 10 بهمن 1385, 01:49 صبح
  4. کمک در مورد onkeypress يك edit
    نوشته شده توسط ghafar.t.d در بخش مباحث عمومی دلفی و پاسکال
    پاسخ: 7
    آخرین پست: سه شنبه 17 خرداد 1384, 09:24 صبح
  5. خالی کردن تعداد زیادی Edit
    نوشته شده توسط parhizkar2000 در بخش برنامه نویسی در Delphi
    پاسخ: 11
    آخرین پست: دوشنبه 02 خرداد 1384, 11:14 صبح

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

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