جستجوی مقادیر اکسس با استفاده از کمبو باکس

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

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

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

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

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

به طراحی و ایجاد کوئری های مختلف در محیط اکسس بپردازیم و از طریق آنها اطلاعات مورد نظر خود را فیلتر کنیم .

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

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

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

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

مثلا در مطلب ایجاد قایلیت جستجوی همزمان در فرم اکسس به بررسی این مطلب پرداختیم که چگونه   قابلیتی را ایجاد کنیم که به کمک آن بتوانیم در همان لحظه که ما  مشغول درج عبارت مورد نظر خود در کادر مربوطه هستیم اطلاعات مورد نظر ما نیز فیلتر شوند .

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

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

حالا امروز می خواهیم به بررسی یک روش دیگر  بپردازیم .

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

اول به تصویر زیر یک نگاهی بکنید تا ذهنیتی از کاری که می خواهیم انجام دهیم پیدا کنید تا بعد برویم به سراغ اصل ماجرا و مراحل انجام کار

 

جستجوی مقادیر اکسس

 

مراحل جستجو و فیلتر کردن د اده ها با استفاده از کمبو باکس ها

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

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

 

 

جستجوی مقادیر اکسس

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

 

جستجوی مقادیر اکسس

در  قدم بعدی باید یک فرم ایجاد کنیم .

از سربرگ Create  بر روی گزینه Blank Form  کلیک کنید .

 

جستجوی مقادیر اکسس

فرمتون رو در محیط Design  ببرید و در داخل آن کلیک راست کرده و گزینه  Form Header/Footer  را انتخاب کنید .

 

 

جستجوی مقادیر اکسس

 

با این کار  فرم اکسس شما شامل یک سرصفحه  (  Header )  در بالا و  یک  پاصفحه   ( Footer  ) در پایین  و همچنین  یک بخش Detail بدر مابین این دو قسمت  می شود .

حالا می خواهیم یک ساب فرم (  Sub Form) رو به فرم خودمون اضافه کنیم .

 برای این کار همزمان که در محیط طراحی فرم خودتون هستید از  سربرگ Design   و از داشبورد Controls گزینه به همین نام رو انتخاب کرده و اون رو روی فرم خودتون قرار بدهید . 

جستجوی مقادیر اکسس

 

بلافاصله بعد از این کار یک فرم تحت عنوان SubForm Wizard  برای شما به نمایش  در می آید .

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

ما می خواهیم که جدول کتابها را به عنوان منبع این سابفرم معرفی کنیم .

خوب برای این کار ابتدا گزینه Use Existing table  and query  رو انتخاب کنید .

جستجوی مقادیر اکسس

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

در اینجا اسم جدول مورد نظر ما tblbooks  بود که آن را انتخاب کردیم .

بعد از این کار بر روی Next  کلیک می کنیم .

 

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

من در اینجا تمام فیلدها را برای نمایش انتخاب کرده ام .

در پنجره پایانی هم که بر روی Finish  کلیک می کنیم و کار خودمان را در این مرحله به پایان می بریم. 

بعد از این کار سابفرم ما در قسمت Detail   فرم  قرار  می گیرد .

اگر لازم دانستید می توانید تغییراتی را در اندازه و سایز سابفرم خود ایجاد کنید و تنظیماتی هم برای فون آن در نظر بگیرید .

حالا برویم به سراغ مرحله بعدی .

افزودن کمبو باکس و تنظیمات مربوط به آن بر روی فرم

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

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

از سربرگ Design   و از داشبورد Controls این بار  گزینه ComboBox  رو انتخاب کنید و اون رو در قسمت Header یا همون سر صفحه فرم خود قرار بدهید

اسم این کمبو باکس را cbo_author می گذاریم چون قرار است نام نویسنده ها را در خود ذخیره و نمایش بدهد . 

اگر پنجره Wizard  برای شما به نمایش درآمد  آن را ببندید .

حالا می رسیم به قسمت شیرین ماجرا و اون هم نوشتن چند خط کد برای این کمبو  باکس هستش .

اما هدفمون چی هست .

ما دو تا هدف داریم :

اول این که این کمبو باکس اسامی مربوط به نویسنده ها را  در خود ذخیره و به ما نمایش بدهد .

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

خوب اول برویم به سراغ هدف اولمون .

می خواهیم کمبو باکس ما اسامی مربوط به نویسنده ها رو از جدول Tblbooks  بخونه و در خودش ذخیره کنه .

خوب برای این کار می توانیم از کد نویسی استفاده کنیم.

به این کدها نگاه کنید .

من با استفاده از این کدها اسامی مربوط به نویسنده های مورد نظر خودم را به این کمبو باکس اضافه می کنم .

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

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

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

حالا می رویم سراغ هدف دوم .

نحوه جستجوی مقادیر اکسس با استفاده از یک کمبو باکس 

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

خوب برای این کار هم از کد نویسی به قرار زیر بهره می بریم .

در قدم اول باید تشخیص بدهیم که کاربر چه مقدار یا بهتر است بگویم که چه نویسنده ای را از داخل کمبو باکس ما انتخاب کرده است .

در قدم بعدی باید آن را در داخل یک متغیر ذخیره کنیم .

خوب برای این دو منظور از کدهای زیر استفاده می کنیم :

در کد بالا ابتدا یک متغیر تعریف کردیم به نام strsql  از نوع متنی .

در خط بعدی هم با استفاده از یک عبارت SQL  گفتیم که تمام آیتم های مربوط به نویسنده ای رو از  جدول tblbooks  انتخاب کنه که اسم اون نویسنده در کمبو باکس ما انتخاب شده است .

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

برای این کار هم خیلی ساده از کد زیر استفاده می کنیم .

توی این کد خاصیت رکورد سورس سابفرم خودمون رو همون عبارتی قرار دادیم  که توی مرحله قبل اون رو بدست آورده بودیم .

اگر که یک بار مقداری را در کمبو باکس خودمون انتخاب کنیم سابفرم ما بطور خود کار اطلاعات مربوط به همون نویسنده رو برای ما ما به نمایش می گذارد .

اما اگر نویسنده بعدی را انتخاب کنیم این بار سابفرم ما تغییری نمی کند .

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

توی کد بالا tblbooks_subform2 اسم سابفرمی است که روی فرم خودمون ایجادش کرده بودیم حالا همه این کدها را باید در رویداد Aftrer_update کمبو باکس خودمون قرار بدهیم ..

 

 

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

خوب در اینجا به پایان این آموزش می رسیم . .

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

امیدوارم که برای شما مفید بوده باشد .

خوشحال می شویم نظرات خودتون رو در خصوص این مطلب و سایر آموزش ها ی سایت با ما در میان بگذارید.

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


 

جستجوی مقادیر اکسس

آموزش اکسس بازدید : 796 views 7 دسامبر, 2019 ۳