Query Builder - Veldselectie

<< Click to Display Table of Contents >>

Navigation:  Designers > Query Builder >

Query Builder - Veldselectie

Previous pageReturn to chapter overviewNext page

 

Nadat alle noodzakelijke tabellen zijn geselecteerd kan worden begonnen met het selecteren van de te tonen velden. In de linkerzijde van het scherm worden alle uitvoervelden getoond en aan de rechterzijde de geselecteerde tabellen en bijbehorende velden. Als deze stap voor het eerst wordt uitgevoerd, dan zal de linkerzijde van het scherm leeg zijn, omdat Logicworks CRM geen stanaard uitvoervelden selecteert.

 

De beschikbare velden worden in de vorm van een boomstructuur gepresenteerd. In eerste instantie zijn alleen de tabelnamen zichtbaar. Klikt in de rechterzijde van het scherm op een van de tabelnamen en alle velden van deze tabel worden getoond. Klikt nogmaals op de tabelnaam en de geopende boomstructuur sluit zich weer.

 

Om een uitvoerveld toe te voegen aan de linkerzijde van het scherm moet eerst de tabel worden geselecteerd en vervolgens de gerelateerde veldnaam. Dubbelklik met de linkermuisknop of druk nu op de knop [Toevoegen], waarna de veldgegevens worden toegevoegd aan de linkerzijde van het scherm. Voor ieder uitvoerveld wordt zowel de daadwerkelijke veldnaam als de alias getoond. De namen in de Alias-kolom worden in het uiteindelijke Query resultaat als kolomnaam gebruikt.

 

qb_step2

 

 

Kolom Veldnaam

Soms levert de waarde van een geselecteerd veld uit de database niet het gewenste uitvoerresultaat op. Zo zal een datumveld veelal datum+tijd als resultaat teruggeven, bijvoorbeeld 21-7-2005 11:35:00. Het is in dergelijke gevallen mogelijk om met behulp van expressies het resultaat om te zetten naar het gewenste uitvoerresultaat. Het gebruik van de expressie MONTH( <veldnaam:datum> ) zal bijvoorbeeld als uitvoer alleen de maand weergeven en niet de datum.

 

Sommige expressies, zoals IIF() en Date() zijn database-afhankelijk. Een Microsoft Access expressie is niet altijd bruikbaar in MySQL of SQL Server. Het gebruik van dergelijke expressies en functies moeten daarom zoveel mogelijk worden vermeden. Wilt u toch gebruik maken van database-specifieke expressies zorg dan dat deze goed wordt gedocumenteerd of maak gebruik van de ingebouwde Sql* functies van Logicworks CRM. Deze Sql* functies worden door Logicworks CRM afhankelijk van de actieve database omgezet naar de juiste database-expressie.

 

 

Kolom Alias

De naamgeving van de alias wordt automatisch gevuld met de standaard vertaling van de veldnaam. De naam van de Alias klom kan echter worden handmatig worden gewijzigd. Klik hiervoor op de alias welke u wilt wijzigen, waarna de cursor gaat knipperen en de naamgeving van de alias kan worden gewijzigd. Aangeraden wordt om de naam van een alias slechts uit letters- en cijfers en zonodig spaties op te bouwen en het gebruik van leestekens te vermijden. Sommige leestekens resulteren namelijk in onuitvoerbare SQL queries.

 

note_10x16Wees voorzichtig met het wijzigen van de alias, de gebruiker zal de kolomnaam anders mogelijk niet meer herkennen.

 

 

Kolom Filter

Het is mogelijk om een filter toe te passen tijdens het selecteren van de gegevens. Het is bijvoorbeeld mogelijk alleen contactpersonen/bedrijven te selecteren, waarvan het kredietlimiet is overschreden. Selecteer in dat geval het veld of velden waarop het filter van toepassing is en vul de gewenste filterwaarde in. Een filterwaarde moet altijd vooraf gegaan worden door een conditie, zoals '=', '>', '>=', '<', '<='.

 

Ieder veldtype heeft zijn specifieke kenmerken ij het gebruik van een filter, zie onderstaande tabel:

 

Veldtype

Opmerking

numeriek

Gebruik altijd een punt (.) en nooit een komma (,) als decimaalteken, dus > 18.45 en niet > 18,45.

tekst

Zorg dat de tekst wordt omsloten door enkele quotes ('), bijvoorbeeld = 'NL' en niet = NL

ja/nee

In de database wordt het resultaat opgeslagen als numeriek getal 0 (onwaar) of 1 (waar).

datum

Selecteren op een datum gebeurt bij iedere database op een andere wijze. Aanbevolen wordt waar mogelijk gebruik te maken van de datum-gerelateerde Sql* functies.

 

 

Kolom Sortering

Middels een sortering kan het query resultaat worden gesorteerd op de opgegeven kolommen. Een sortering kan oplopend (a-z, 0-9) of aflopend (z-a, 9-0) zijn.  De sortering kan van belang zijn als de query wordt gemaakt voor export-doeleinden. Laat de kolom Sortering echter leeg als de Query Builder wordt gebruikt om een Overzicht of Opzoeklijst te definieren of aan te passen. Iedere gebruiker kan namelijk zijn eigen sortering aangeven als hij/zij de query opent.  

 

 

Kolom Weergeven

Met de kolom Weergeven kan de gebruiker aangeven of de kolom moet worden getoond in het query resultaat. Normaal gesproken zal deze optie ingeschakeld blijven, anders kan het veld net zo goed uit de query worden verwijderd. Bij de meeste queries met waarop een filter of groepering is toegepast zal de gebruiker echter niet geintresseerd zijn in deze kolommen. In deze gevallen kan ervoor worden gekozen het veld wel te gebruiken om op te filteren/groeperen, maar niet te tonen aan de gebruiker.

 

 

[Groeperen]

Het is mogelijk om de gegevens te groeperen op specifieke kolommen en vervolgens een sommatie van de gevonden waarden in een numerieke kolom uit te voeren. Maak in dergelijk gevallen gebruik van de mogelijkheid om gegevens te groeperen. Wilt u een groepering aanbrengen klik dan op de knop [Groeperen], waarna een extra kolom wordt toegevoegd aan de lijst met uitvoervelden. Selecteer nu alleen bij het veld waarop een sommatie of telling moet worden uitgevoerd de gewenste bewerking. De onderstaande tabel toont de ondersteunde groeperingsopties.

 

 

Optie

Toelichting

GROUP BY

De gegevens in de query worden gegroepeerd op kolommen waarbij de GROUP BY optie is aangegeven.

SUM()

Door toepassing van de sommatie optie kunnen numerieke waarden worden gesommeerd per groep. Voorbeeld: sommeer de omzet per klant per jaar.

COUNT()

Hiermee wordt een telling uitgevoerd op het aantal regels met eenzelfde groepering. Voorbeeld: tel het aantal klanten in een specifieke regio.

MAX()

Deze functie laat alleen de maximale waarde binnen een groep zien. Deze functie kan worden toegepast op alle kolom-types (numeriek, datum, tekst).  Voorbeeld: Toon per klant de laatste contactdatum.

MIN()

Deze functie laat alleen de minimale waarde binnen een groep zien. Deze functie kan worden toegepast op alle kolom-types (numeriek, datum, tekst).  

 

 

[Filter]

Het gebruik van een filter kan op een tweetal manieren plaatsvinden. Als eerste kan een filter worden gedefinieerd met behulp van de kolom 'Filter'. Het filter zal in dat geval worden toegepast op alle velden waar het filter is ingevoerd. Een nadeel van deze manier van filteren is dat de filtercondities altijd middels een [EN] constructie worden toegepast en slechts 1 filterwaarde per veld kan worden opgegeven. Als u gebruik wilt maken van een [OR] constructie, dus woonplaats = 'Rotterdam' of woonplaats = 'Amsterdam', gebruik dan de algemene filteroptie in plaats van de veld-gerorienteerde filteroptie.

 

Na het indrukken van de knop [Filter] zal een script-venster worden geopend, waarin het filter kan worden ingevoerd. Bij de algemene filteroptie moet zowel de conditie als de filterwaarde worden ingevoerd.

 

Als een filter is gemaakt bij een Query, dan wordt de tekst 'Filter' van de knop gewijzigd in 'Filter*'.

 

 

Een veld verwijderen  

Wil de gebruiker een veld verwijderen uit het uiteindelijke resultaat, gebruik dan het Snelmenu. Selecteer het veld dat moet worden verwijderd, druk op de rechter muisknop en kies de optie [Regel verwijderen].

 

 

Als alle gewenste velden zijn geselecteerd druk dan op de knop [Volgende>] om het resultaat van de query te bekijken.

 

 

Zie ook

Introductie Query Builder

Sql* functies