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

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

  1. #1

    جستجو بر اساس فیلد

    با سلام
    من یک جدول با چند فیلد دارم به عنوان مثال فیلد 1 و 2 و 3 و 4 و بر اساس آن یک کوئری ساختم
    می خواهم یک فرم درست کنم که در آن یک کمبوباکس باشد و در این کمبوباکس اسامی فیلدها باشد و با انتخاب هر کدوم فقط نتایج آن فیلد را ببنیم
    مثلا اگر از کمبوباکس 3 را انتخاب کنم وقتی کوئری باز می شود فقط اطلاعات فیلد 3 را نشان دهد و سایر فیلدها نمایش داده نشوند

  2. #2
    کاربر دائمی آواتار padide55
    تاریخ عضویت
    مرداد 1391
    محل زندگی
    زاهدان
    پست
    567

    نقل قول: جستجو بر اساس فیلد

    سلام
    اولین مطلب این هست که لیست فیلدهای جدول رو داخل لیست باکس بیارید .
    برای این منظور مطابق فایل نمونه .
    اول لیست فیلدهای جدول مورد نظر رو به لیست باکس اضافه کنید .
    و یا لیست فیلدها رو دستی در لست باکس بیاورید.
    جواب نهایی اینجاست
    نهایتا باید یک کد select با sql درست کنید .که کوئری شما رو بسازه و اجرا کنه .
    اون هم سخت نیست .
    این کد را در دابل کلیک لیست باکس بگذارید براتون کوئری میسازه




    'ایجاد متن کوئری
    strSQL = "SELECT " & selectedfield & " FROM [" & tablename & "]"

    '---------Delete the query if it already exists
    DoCmd.DeleteObject acQuery, "queryname"


    Set qdf = CurrentDb.CreateQueryDef("queryname", strSQL) ' ایجاد کوئری
    DoCmd.OpenQuery qdf.Name ' باز کردن کوئری

    'release memory
    qdf.Close 'i changed qdef to qdf here and below
    Set qdf = Nothing


    آخرین ویرایش به وسیله padide55 : شنبه 04 بهمن 1399 در 10:07 صبح

  3. #3
    کاربر دائمی آواتار padide55
    تاریخ عضویت
    مرداد 1391
    محل زندگی
    زاهدان
    پست
    567

    نقل قول: جستجو بر اساس فیلد

    نمونه اصلاح شده نهایی
    کوئری خود را بساز
    انتخاب فیلدهای مورد نظر از جدول و ایجاد و اجرای کوئری بر اساس فیلدهای انتخابی. با کد بیسیک
    فایل های ضمیمه فایل های ضمیمه
    آخرین ویرایش به وسیله padide55 : شنبه 04 بهمن 1399 در 10:08 صبح

  4. #4

    نقل قول: جستجو بر اساس فیلد

    با تشکر و سپاس از جناب Padide55:
    در نمونه فایل زیر هدف من این است که وقتی در فرم ranking از کومبوباکس Parameter هر کدوم از گزینه های p1 یا p2 یا p3 را که انتخاب کنم در ساب فرم فقط همون فیلد نمایش داده بشه
    فایل های ضمیمه فایل های ضمیمه

  5. #5
    کاربر دائمی آواتار padide55
    تاریخ عضویت
    مرداد 1391
    محل زندگی
    زاهدان
    پست
    567

    نقل قول: جستجو بر اساس فیلد

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

    فعلا راهی که به نظرم میرسه .خارج از روال کد نویسی بیسیک .
    ایجاد کوئری append
    و انتقال داده های مورد نظر به یک جدول لینک شده به ساب فرم هست .
    قبل از انتقال هم باید جدول لینک شده خالی بشه با یک delete query

  6. #6
    کاربر دائمی آواتار mazoolagh
    تاریخ عضویت
    اردیبهشت 1384
    سن
    71
    پست
    3,030

    نقل قول: جستجو بر اساس فیلد

    نقل قول نوشته شده توسط dankoob مشاهده تاپیک
    با تشکر و سپاس از جناب Padide55:
    در نمونه فایل زیر هدف من این است که وقتی در فرم ranking از کومبوباکس Parameter هر کدوم از گزینه های p1 یا p2 یا p3 را که انتخاب کنم در ساب فرم فقط همون فیلد نمایش داده بشه
    راهنمایی جناب PADIDE55 در پست 2 کافی بنظر میاد.

    اول موارد زیر رو درست کنین:
    1- اسامی مثل YAER, MONTH برای اکسس معنی دار هست، نباید اونها رو بعنوان اسم فیلد بکار ببرین.
    همچنین مقادیر تاریخ باید عدد ذخیره بشن.
    2- فیلدهایی مثل شهر، استان، وضعیت استخدام، و ... باید از یک جدول دیگه و براساس کد عددی (نه مقدار حرفی) گرفته بشن.
    3- در فرم جستجو موارد ردیف 2 باید بر اساس کد جستجو بشن.

    بعد از درست کردن همه اینها، سابفرم نتایج رو UNBOUND کنین ولی اسامی فیلدها رو بر اساس کوئری که خواهید نوشت مشخص کنین.
    حالا کافی هست از کدی شبیه کد زیر استفاده کنین:

    Const SQL = "SELECT CITYID , @PX AS PX FROM TASK WHERE YYYY=@YEAR AND MM=@MM"
    SET qtask_subform.FORM.RECORDSET=CURRENTDB.OPENRECOTDS ET(replace(replace(replace(SQL , "@MM" , MM) , "@YEAR" , YYYY) , "@PX", parameter))


    با فرض این که YYYY کمبو انتختب سال و MM کمبو انتخاب ماه و PX و CITYID فیلدهای سابفرم هستن.

  7. #7
    کاربر دائمی آواتار padide55
    تاریخ عضویت
    مرداد 1391
    محل زندگی
    زاهدان
    پست
    567

    نقل قول: جستجو بر اساس فیلد

    مشکل شما با همان روش ایجادsql حل شد .
    کمی در کدها دقت کنید .
    متن sql با رعایت تمامی فاصله ها و کاما و سایر موارد باید ایجاد بشه .
    در نهایت باید با کد ارتباط کوئری فرم را تغییر داد تا کوئری جدید به ساب فرم معرفی بشه

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

  8. #8

    نقل قول: جستجو بر اساس فیلد

    سپاس فراوان

  9. #9
    کاربر دائمی آواتار padide55
    تاریخ عضویت
    مرداد 1391
    محل زندگی
    زاهدان
    پست
    567

    نقل قول: جستجو بر اساس فیلد

    میتونستید سه تا کوئری درست کنید و با هر کد Parameter
    یک کوئری به ساب فرم لینک بشه .
    و نیازی به کد نویسی جهت sql نباشه.

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

  1. پاسخ: 5
    آخرین پست: چهارشنبه 22 شهریور 1402, 14:26 عصر
  2. آموزش: پرشین استخر،بزرگترین سایت آموزش ساخت استخر How Make Swimmin Pools-Persian Pool
    نوشته شده توسط soroushm در بخش آگهی‌ها
    پاسخ: 0
    آخرین پست: یک شنبه 12 شهریور 1396, 07:35 صبح
  3. استخدام برنامه نویس در استان همدان شهرستان تویسرکان
    نوشته شده توسط alvandyhamed در بخش آگهی های استخدام
    پاسخ: 0
    آخرین پست: جمعه 07 مرداد 1390, 17:26 عصر

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

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