Query Builder
FUSE bevat een ingebouwde Query Builder waarmee op verschillende plekken in FUSE de SQL query’s kunnen worden samengesteld. De Query Builder gaat uit van MySQL 8.0.20.
De Query Builder kan onder andere benaderd worden via [Beheer] à [Query Builder]. Na activeren van deze functie verschijnt de Query Builder in beeld zoals weergegeven in onderstaande figuur.
De Query Builder heeft een aantal functies die het genereren van Query’s efficiënter maken. Het scherm is in drie delen verdeeld. Deel 1 is de teksteditor met de SQL syntax. Deel 2 geeft de tabellen en velden vanuit de database weer. Deel 3 geeft het resultaat weer van het testen van de Query.
De teksteditor maakt gebruik van kleurmarkering van SQL syntax. Door middel van Ctrl +C kan de tekst gekopieerd of door Ctrl + V geplakt worden. Voor testdoeleinden kan er een extra tekst tab toegevoegd worden. Klik hiervoor op de knop [Tab toevoegen].
Let op!
Omdat het de beheerder vrij staat om wijzigingen door te voeren in FUSE die mogelijk een onjuist effect kunnen hebben op de gegevens, is de beheerder ook aansprakelijk voor de wijzigingen. Door het gebruik maken van de Query Builder neemt de beheerder deze aansprakelijkheid op zich. Fuse Solutions BV kan niet aansprakelijk worden gesteld voor onvolkomenheden in de configuratie.
Functies
Sleepfuncties
Er zijn een aantal functies ingebouwd om het maken van Query’s te vereenvoudigen. Zo kunnen de tabellen/velden vanuit de databaseweergave gesleept worden naar de teksteditor.
Compleet select statement genereren
Een andere mogelijkheid is om de door middel van de rechtermuisknop op de tabel de functie “Maak compleet SELECT statement” te activeren. Hiermee wordt in een keer de SELECT query opgebouwd met daarin alle velden van de geselecteerde tabel.
Uitvoer
Na het opbouwen van de Query kan deze direct getest worden. Het uitvoeren van de Query kan door te klikken op de knop “Query uitvoeren” of de toets F5. Als de Query niet correct uitgevoerd kan worden of het resultaat een fout oplevert dan wordt deze getoond in het tabblad “Log”.
De resultaten kunnen door middel van de knop [Export] rechtstreeks naar Excel weggeschreven worden.
In de Query builder is een ‘Secure Update’ ingebouwd. Dit betekend dat er een melding komt als er een update commando zonder WHERE statement wordt uitgevoerd. Deze melding kan genegeerd worden(!)
Bewerken
Door middel van de Query Builder kunnen tabellen ook rechtstreeks bewerkt worden. Bij Query’s zonder JOIN-constructie kan na het activeren van de knop [Bewerken] rechtstreeks de data in het weergegeven resultaat bewerkt worden. Klik op [Opslaan] om de gewijzigde gegevens op te slaan.
Kolom toevoegen aan tabel
Door middel van de Query Builder kunnen tabellen ook rechtstreeks bewerkt worden. Open de tabel in het databasegedeelte van het scherm. Klik met de rechtermuisknop op de tabelnaam. Kies Kolom toevoegen. Geef de kolomnaam in en het juiste datatype.
Kolom verwijderen uit tabel
Door middel van de Query Builder kunnen tabellen ook rechtstreeks bewerkt worden. Open de tabel in het databasegedeelte van het scherm. Klik met de rechtermuisknop op de tabelnaam. Kies Kolom verwijderen. Selecteer de te verwijderen kolom.
Let op!
Dit heeft als gevolg dat alle data op alle plaatsen uit deze kolom verwijderd wordt!
Verversen
Het is mogelijk om een databasetabel te verversen in tijdens het gebruik van de Query Builder. Open de tabel in het databasegedeelte van het scherm. Klik met de rechtermuisknop op de tabelnaam. Kies Verversen. De tabelgegevens worden nu ververst.
Variabelen
In een SQL query kan gebruik gemaakt worden van verschillende variabelen. In de onderstaande tabel zijn de mogelijke variabelen weergegeven en beschreven.
| Variabele | Beschrijving |
|---|---|
| [GebruikerID] | Deze variabele wordt vervangen door de ID van de huidige gebruiker |
| [Gebruiker] | Deze variabele wordt vervangen door de volledige naam van de huidige gebruiker |
| [VakgroepID] | Deze variabele wordt vervangen door de ID van de afdeling of vakgroep van de huidige gebruiker |
| [TeamID] | Deze variabele wordt vervangen door de ID van het team van de huidige gebruiker |
| [VestigingID] | Deze variabele wordt vervangen door de ID van vestiging van de huidige gebruiker |
| [HuidigeDatum] | Deze variabele wordt vervangen door de huidige datum |
| [Huidig Jaar] | Deze variabele wordt vervangen door het huidige jaar |
| [Vorig Jaar] | Deze variabele wordt vervangen door het vorige jaar |
| [Eer Vorig Jaar] | Deze variabele wordt vervangen door het eer vorige jaar (huidig jaar -2) |
| [Jaar] | Deze variabele wordt vervangen door het huidige jaar |
| [Maand] | Deze variabele wordt vervangen door de huidige maand |
| [TeamID] | Deze variabele wordt vervangen door de ID van het team van de huidige gebruiker |
| [Setting:...] | Door middel van deze variabele kan een waarde uit de standaard instellingen opgehaald worden. Voorbeeld: [Setting:DefaultCompanyID] In dit voorbeeld wordt de waarde van de instelling met de naam DefaultCompanyID ingevoegd |
| [Sql:...] | Met deze variabele is het mogelijk om een SQL-query in te voeren in bijvoorbeeld een veld. Voorbeeld: [Sql: SELECT Naam FROM bedrijf WHERE idBedrijf=1] In dit voorbeeld wordt de naam van het bedrijf, waarbij het bedrijf als ID 1 heeft, ingevoegd |
| [Question:...] | Met deze variabele is het mogelijk om een vraag te stellen in een dialoogvenster. Voorbeeld: [Question:Uitgeschreven vraag: Parameter] [Question:wat is je voornaam?:type hier je voornaam] In dit voorbeeld wordt de vraag 'wat is je voornaam?' gesteld. In het antwoordenveld staat de tekst 'type hier je voornaam'. De ingevulde waarde in het parameterveld wordt gebruikt |
| [ItemID] | Deze variabele wordt vervangen door het ID van het huidige item. Deze variabele kan gebruikt worden in formulieren en in selecties die de optie "Bij detail" hebben aanstaan |
| [ParentItemID] | Deze variabele wordt vervangen door het ID van het bovenliggende item, bijvoorbeeld een masterproject bij asbestprojecten. Deze variabele kan gebruikt worden in formulieren en in selecties die de optie "Bij detail" hebben aanstaan |
| [NewID: |
Deze variabele wordt gebruikt om een nieuwe opeenvolgende waarde te berekenen van een veld op basis van de maximale waarde in een aangegeven kolom. Deze variabele kan alleen gebruikt worden bij "SelectionHandlersNewItems". Voorbeeld: [NewID:Nummer] In dit voorbeeld wordt de waarde ingevoegd van de maximaal voorkomende waarde plus één. Zodat er een nieuwe opvolgende waarde ingevoegd wordt |