نحوه جستجو و فیلتر کردن اطلاعات لیست ها و نمایش آنها

تعدادی از دوستان سوالاتی در مورد نحوه جستجو و فیلتر کردن اطلاعات Data View و لیست ها در شرپونیت مطرح کرده اند که در این پُست به صورت Step By Step این مورد رو برای شما تشریح می کنم.

در هنگام نمایش اطلاعات لیست ها توسط Data View ها ممکن است شما نیاز داشته باشید تا این جستجو رو براساس دستور Like در زبان SQL انجام بدید. یعنی فیلتر اطلاعات ستونها بر اساس یک یا چند حرف صورت گیرد. برای اینکار مراحل زیر رو دنبال کنید :

۱- ابتدا یک صفحه شیرپوینتی که حاوی ۲ ناحیه وب پارت باشد، ایجاد کنید.

۲- این صفحه را در SPD یا شیرپوینت دیزاینر باز کنید.

۳- در Web Part Zone بالایی یک Form Web part درج کنید و در Web Part Zone پایینی یک Data View از لیستی که قرار هست اطلاعات آنرا از طریق فیلتر جستجو کنید، درج نمایید :

 Untitled-2

۴- حال بر روی منوی موجود در کنار Data View کلیک نمایید و گزینه Parameters… را انتخاب نمایید.

یک پارامتر از نوع Control و با نام Param1 و برای کنترل T1 که همان TextBox وب پارت بالایی می باشد، ایجاد کنید و OK نمایید :

Untitled-5

۵- به منوی Data View بازگردید و گزینه Web Part Connections… را انتخاب نمایید :

Untitled-6-1

۶- پنجره زیر نمایش داده میشود. گزینه Get Parameters From را از منوی کشویی یا Drop Down List وسط پنجره انتخاب نمایید :

Untitled-3 

دکمه Next را کلیک نمایید و از پنجره نمایش داده شده گزینه Connect to a Web Part on this Page را انتخاب نمایید و Next . :

Untitled-7

در پنجره بعدی قسمت Target Web Part و Target action رو به صورت زیر تنظیم نمایید و Next :

Untitled-8

در پنجره نمایش داده شده ، در قسمت Column in Form Web Part در مقابل گزینه Param1 مقدار T1 را انتخاب کنید و Next :

Untitled-4

در ادامه، پنجره بعدی را جهت اتمام تنظیمات Connection با Finish تکمیل کنید.

۷- اکنون به منوی Data View باز گردید و بر روی Filter: کلیک نمایید. تصمیم داریم یک فیلتر جدید برای نمایش اطلاعات نعریف کنیم. در قسمت Field Name نام فیلدی که تصمیم دارید تا جستجو بر روی مقادیر آن صورت بگیرد را انتخاب کنید. به عنوان مثال من فیلد "عنوان" را برای جستجوی عنوان کتابها انتخاب کرده ام. درقسمت Comparison مقدار Contains  را انتخاب و در قسمت Value هم مقدار Param1 را انتخاب نمایید و OK. :

Untitled-10

۸- خیلی خوبه! کار تمومه. حال تغییرات صفحه رو ذخیره کنید و صفحه رو با F12 لود کنید.

۹- مشاهده خواهید کرد که اگر در کنترل Text Box یک کاراکتر که در فیلد "عنوان" باشد را وارد کنید، جستجو تمام رکوردهایی که در فیلد "عنوان" کاراکتر مورد نظر را داشته باشند نمایش می دهد.مثال زیر :

 4

اگر هم کاراکتر شما در متن فیلد "عنوان" موجود نباشد، رکوردی نمایش داده نمی شود. مثال زیر :

5

همانطور که مشاهده کردید، جستجوی فوق مانند دستور Like (‘% %’) در SQL عمل می کند.

موفق باشید… 🙂

پاسخ دهید