Skip to main content
Skip table of contents

Wat is een zoekdefinitie?

Concept

Een zoekdefinitie is een verzameling parameters die gestalte geven aan een custom zoekopdracht. Zoekdefinities vinden enkel hun toepassing binnen de context van bulktaken. Het is mogelijk om een zoekdefinitie als configuratie-item aan te maken en te beheren via Skryv Studio.

Context

Vanuit de bulktaken functionaliteit in de backoffice kan een gebruiker een bulkworkflow opstarten. De opgestarte bulkworkflow krijgt een lijst met dossiers mee waarin de gebruiker vervolgens via een selectietaak en op basis van de ingestelde zoekdefinitie specifieke dossiers kan zoeken en selecteren. De zoekdefinitie bevat de parameters nodig voor de custom zoekopdracht en moet opgesteld worden vanuit configuratie. Daarna kan de gebruiker voor de geselecteerde dossiers een specifieke taak of handeling in bulk afwerken. De meest voorkomende use case is het verlenen van goedkeuring in dossiers.

Opbouw

Elke zoekdefinitie kent een gelijkaardige opbouw. Onderstaande elementen komen daar typisch in voor. Niettemin kan de opbouw van zoekdefinities lichtjes verschillen van elkaar.

Onderdeel

Beschrijving

Key en label

Unieke referentie en naam van de zoekdefinitie.

Functionaliteit resultatenlijst

Specifiek gedrag van de resultatenlijst die de gebruiker krijgt. Zo kan je instellen of de gebruiker een zoekvenster mag zien en gebruiken, of hij custom weergaves in de resultatenlijst mag definiëren, of elk item in de lijst selecteerbaar moet zijn via een selectievakje, enzovoort.

Gegevensbron

Definieer op welke data de zoekopdracht van toepassing is en waar deze data precies te vinden is.

Filters

Bepaal filterregels om de resultaten te beperken. Deze criteria blijven verborgen voor de backoffice gebruiker. Hij of zij kan ze dan ook niet uitschakelen.

Kolommen

Bepaal welke kolommen beschikbaar zijn in de resultatenlijst.

Weergaves

Leg vast welke weergaves je ter beschikking wil stellen aan de backoffice gebruiker. Daarbij kan je ook een default weergave definiëren.

Voor een gedetailleerde oplijsting van alle te gebruiken parameters en hun betekenis kan je terecht op de pagina zoekdefinitie eigenschappen.

Formaat

  • Elke zoekdefinitie wordt opgeslagen als een JSON-bestand met naamextensie .searchdef. Een voorbeeld van een dergelijk JSON-bestand vind je hieronder terug.

  • Binnen Studio is het enkel mogelijk om dit bestand te bewerken in een JSON-editor. Instructies vind je terug op de pagina zoekdefinitie editor.

  • Alle syntax info kan je terugvinden onder de sectie zoekdefinitie eigenschappen.

CODE
{
 "key": "bulkGoedkeuringCbs",
 "label": "Selecteer dossiers voor goedkeuring door CBS",
 "allowViewConfiguration": false,
 "allowViewSelection": true,
 "allowSelectableItems": true,
 "datasourceType": "es/dossiers",
 "columnDefinitions": [
 {
 "heading": "Dossiernummer",
 "select": ["dossier.label", "dossier.id"],
 "field": "dossier.label"
 },
 {
 "heading": "Dossiertype",
 "key": "dossier.type",
 "field": "dossier.dossierDefinition.label"
 },
 {
 "heading": "Naam vereniging",
 "key": "vereniging",
 "field": "dossier",
 "content": "[lookup('dossier.dossierDefinition.key', item) === 'subsidieSportvereniging' ? lookup('document.aanvraagformulierSubsidieSportvereniging.naamVereniging', item) : lookup('document.aanvraagSubsidieStraatFeestWijkComite.naamComite', item)]"
 },
 {
 "heading": "Aanvrager",
 "key": "aanvrager",
 "type": "multi-field",
 "fields": [
 {
 "type": "search/text",
 "field": {
 "path": "document.aanvraagformulierSubsidieSportvereniging.hoofdaanvrager.voornaam",
 "options": { "nesting": "document" }
 }
 },
 {
 "type": "search/text",
 "field": {
 "path": "document.aanvraagformulierSubsidieSportvereniging.hoofdaanvrager.naam",
 "options": { "nesting": "document" }
 }
 }
 ]
 }
 ],
 "views": [
 {
 "name": "Default view",
 "searchTerm": "",
 "columns": ["dossier.label", "dossier.type", "vereniging", "aanvrager"],
 "filters": [],
 "sort": {
 "criterion": "dossier.label"
 }
 }
 ]
}

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.