# برنامه نویسی با محصولات مایکروسافت > Sharepoint > برنامه نویسی شیرپوینت (Sharepoint Development) >  فیلد های مرتبط در infopath

## amin1softco

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

تا حالا شده بخواهید در یک  فرم اطلاعات چند سطر، به هم مربوط باشه و با انتخاب اولین سطر در سطر بعدی  آیتم هایی ظاهر شوند که فیلتر شده سطر بالایی باشند؟ با یک مثال دقیق تر  براتون توضیح میدم: فرمی که داریم دو فیلد Country و Cityداره که با انتخاب  نام کشور در فیلد اولی اسامی نام شهر های مربوط به آن  کشور در فیلد دوم  ظاهر می شوند.  این نوع فیلد ها به Cascade Drop Down یا Connected lookup  fields معروف هستند.من در این پست سعی میکنم که نحوه ایجاد این فیلد ها رو  در فرم های   Infopath توضیح بدم. 1.  اول از همه یک لیست در Shrepoint Site مون ایجاد میکنیم به نام Countries و  در آن دو ستون به نام های Country و City از نوع Simple Text  ایجاد  میکنیم. (فیلد Title را به نام “کشور” تغییر میدهیم!)و مانند شکل زیر  اطلاعاتمان را در آن در آن ذخیره میکنیم.  2.حال  در InfoPath Designer یک فرم جدید ایجاد کرده سپس دو فیلد از نوع Drop  Down  ایجاد میکنیم یکی به نام Cityو دیگری به نام Country ، سپس از قسمت  Manage Data Connection از قسمت Add 'گزینه Create New Connection  و از  نوع Receive Data  را انتخاب کرده در مرحله بعدی از قسمت select source of  data گزینه  Sharepoint library or list  انتخاب کرده و در مرحله مسیر  مربوط به لیستی که در مرحله 1 ساخته بودیم (به نام Country)مشخص میکنیم و  در نهایت از ما سوال می کند که اطلاعات کدام فیلد های مربوط به لیست را  برای ما بیاورد که در آن فیلد های Country  ، Cityو ID را مشخص می کنیم در  انتها دکمه finish را میزنیم.شرح این مراحل را به طور کامل در تصاویر زیر  آوردیم.      3.  در Properties  مربوط به فیلد Country  گزینه Get choices from an  external data source  را انتخاب و در قسمت Data source  گزینه  Country (  همان Data Connection ی که در مرحله قبل ایجاد کرده بودیم.) را انتخاب  میکنیم . و با توجه به شکل زیر در قسمت Value و Display name  از پنجره باز  شده  فیلد Country را انتخاب میکنیم و چک مارک مربوط به Show only entries  with uniqe display name  را فعال میکنیم. سپس پنجره مربوطه را ok  کرده و  خارج میشویم. همین مراحل را برای فیلد City نیز انجام می دهیم.
  *Country Properties*    *City Properties*  4.  از فیلد City  که بخشی از تنظیمات آن را در مرحله قبل انجام دادیم  Properties گرفته و با توجه به شکل زیر در کنار   Entries  دکمه ای وجود  دارد که با انتخاب آن پنجره ای باز میشود  که گزینه Filter Data را انتخاب  می کنیم و با انتخاب دکمه Add  و در پنجره باز شده و در DropDown اولی  گزینه Select Field Or goup را انتخاب و در پنجره باز شده در قسمت Data  source  ، گزینه Main را انتخاب و در قسمت پایینی country را انتخاب کرده و  ok میکنیم .در Drop Down  دومی Equal to را انتخاب و در Drop Down سومی  باز هم گزینه Select Field or group را انتخاب کرده ولی این بار در قسمت  Data Source گزینه Country ( این همان Data source ی است که در مرحله 2  ایجاد کردیم) را انتخاب و در قسمت پایینی و از قسمت data fields  فیلد  Country  را انتخاب کرده و ok  میکنیم. حال در قسمت filter Data  ی که  داشتیم Country = Country  شده است.
   5.  بر روی فیلد Country کلیک کرده و از نوار بالای صفحه از قسمت Add Rule   گزینه This fields Changes  و سپس Query for data را انتخاب می کنیم  در  پنجره ظاهر شده در قسمت Data Connection  از Drop Down آن Country را  انتخاب کرده و ok میکنیم.
  دوباره  بر روی فیلد Country کلیک کرده و از قسمت Add rule این بار از قسمت This  fields Changes گزینه Set fields Value را انتخاب میکنیم در پنجره مربوطه  در قسمت Field فیلد City  را انتخاب و قسمت مربوط به Value را خالی گداشته و  ok می کنیم.   تصاویر زیر هم نتیجه نهایی کارمون رو نشان داده . امیدوارم این مطالب براتون موثر بوده باشه.
 


منبع : + و +

----------


## sayan

ارائه این ترفندها باعث سهولت در انجام کارها میشه. :تشویق: 
ما منتظر ترفندهای دیگه هم هستیم.

----------

