>Hoe maak je een gefilterde lookup column zonder code

>

Een van de tekortkomingen van de out-of-the-box functionaliteiten van Sharepoint is het feit dat je geen gefilterde lookup column kan maken.

Je zou dit via code kunnen oplossen maar je kan het ook via Sharepoint Designer op deze manier:

In deze demo maken we 2 lijsten (Lijst A en Lijst B).

image

image

Lijst A bevat een lookup column naar Lijst B. Lijst B bevat een boolean column die aangeeft of een item moet worden weergegeven in de dropdownlist.

We gaan nu de NewForm.aspx pagina van Lijst A dupliceren en aanpassen zodat we enkel de juiste items uit lijst B te zien krijgen in de dropdown control. Maak een kopie van NewForm.aspx en hernoem deze pagina naar FilteredNewFormPage.aspx.

image

Open deze pagina in de design viewer en verwijder de ListFormWebPart control op deze pagina.

image

Voeg op deze locatie een nieuwe custom list form webpart toe via Insert > Sharepoint Controls > Custom List Form.

image

Verwijder de dropdown control naar Lijst B.

image

Nu moeten we een nieuwe Data Source Library aanmaken en deze koppelen aan een dropdown control op deze pagina.

Via Data View > Manage Data Sources open je de data source library pane. Dupliceer de data source van Lijst B:

image

Open de properties van je nieuwe data source en wijzig de naam in Lijst B filtered.

In het tabblad Source stel je de filterparameters in:

image

Voeg nu je data source toe aan je pagina.

image

Selecteer uit de toolbox nu een dropdown control en voeg deze toe aan je pagina.

image

Klik op Data Fields om de data source aan deze control te koppelen.

image

Selecteer eerst het veld waar de data moet worden opgeslagen. Daarna je data source en het display veld en het data veld.

Je pagina is nu klaar. Het enige dat we nog moeten instellen is dat deze pagina wordt gebruikt bij de creatie van een nieuw item. Klik hiervoor op je Lijst A (rechts klik) en kies voor properties. In het tabblad Supporting Files stel je in de je de nieuwe pagina moet gebruiken als New Edit form page:

image

Nu kan je je pagina opslaan en gebruiken in sharepoint!