Skip to the content

whacky query designer

De .Net Query designer is een hulpmiddel om een query samen te stellen die in verschillende modules van het Whacky Framework kan worden gebruikt of toe te passen is in je eigen form application.

Query designer gebruiken in je eigen .net project

Na het maken van de juiste referenties kan je de query designer aanroepen in je eigen code. Vooralsnog wordt uitsluitend SQL Server ondersteund. In Q2 2019 zullen ook de overige database typen, welke worden ondersteund door Whacky.Data.Hub worden toegevoegd.

Let wel op dat je project draait op minimaal .NET framework versie 4.6.1.

Referenties

In de packages folder van de query designer tref je alle benodigde dll bestanden aan. Wil je de query designer aanschaffen? Vul dan onderstaande contact formulier in waarna je een aanbieding ontvangt.

VB.NET voorbeeld

Private Sub Show_designer()
        Dim ObjReader = New DatabaseReader("connectionstring", "System.Data.SqlClient")
        Dim objSchema As New DatabaseSchema("connectionstring", "System.Data.SqlClient")
        objSchema = ObjReader.ReadAll

        Dim objQuery As New QueryDesigner(objSchema, "pad verwijzing\testquerydata.xml")
        objQuery.ShowDialog()

        Dim objReturnSql As String = objQuery.GetSql
        Dim objReturnSqlXml As String = objQuery.GetSqlXml

        ObjReader.Dispose()
        objQuery.Dispose()
    End Sub

C# voorbeeld

private void Show_designer()
{
    var ObjReader = new DatabaseReader("connectionstring", "System.Data.SqlClient");
    DatabaseSchema objSchema = new DatabaseSchema("connectionstring", "System.Data.SqlClient");
    objSchema = ObjReader.ReadAll;

    QueryDesigner objQuery = new QueryDesigner(objSchema, @"pad verwijzing\testquerydata.xml");
    objQuery.ShowDialog();

    string objReturnSql = objQuery.GetSql;
    string objReturnSqlXml = objQuery.GetSqlXml;

    ObjReader.Dispose();
    objQuery.Dispose();
}

De query designer gebruiken

Tabblad Design

Op het tabblad design tref je alle tabellen en query’s aan die voorkomen in je database. Door een tabel aan te klikken en deze te slepen naar het objecten scherm zal de tabel en de velden uit deze tabel worden getoond in je objecten scherm.

whacky framework query designer

Alle tabellen, op het tabblad Design, die een directe relatie hebben met de geselecteerde tabel behouden een opvallende zwart label. Alle overige tabellen krijgen nu een grijs label om aan te duiden dat deze geen directe relatie hebben met de geselecteerde tabel. In het objecten scherm zie je nu bij de velden die een relatie hebben met een bovenliggende tabel een groene PLUS button verschijnen. Met de button voeg je de relatie en de velden toe aan je objecten.

Toevoegen gerelateerde tabel met de PLUS button

Als je klikt op de groene PLUS button dan wordt direct de gerelateerde tabel toegevoegd aan je objectenscherm.

whacky framework add related table

Toevoegen gerelateerde tabel met DRAG and DROP

Als je een tabel toe wilt voegen die een directe relatie heeft met je tabel dan kan je deze tabel slepen uit het tabblad Design en verplaatsen naar het objectenscherm.

Als er geen directe relatie bestaat tussen een tabel (met grijs label) en de tabel in het objectenscherm dan zal de wizard aanmaken relatie starten. Je dient in dat geval zelf de relatie te definiëren.

whacky framework foreignkey

Velden toevoegen aan je query

Door een vinkje te plaatsen bij de velden die je wilt gaan gebruiken plaats je de velden in de query en in de detail grid.

whacky framework query design select

Groeperen

In de detail grid kan je de data groeperen op alle gangbare manieren. Groeperen, som, gemiddelde enz. Let wel op dat je, als je gaat groeperen, ieder veld afzonderlijk een group type mee dient te geven.

Sorteren

Met de optie sort kan je de output van je data sorteren. In onderstaande voorbeeld wil ik dat de output wordt gesorteerd op het veld [FinVatDutyDescription]

Filter toevoegen

Met de optie [Parameter] in de detailgrid kan je een Where toevoegen aan je query.

whacky framework query designer where

Waarde converteren

Als je in je output een waarde wilt converteren naar een ander formaat dan gebruik je eveneens de optie [Parameter]. In de Parameter Editor zet je het type op [Replace]. Je kan alle TSQL opdrachten en functies gebruiken in de Editor. Zodra je op [Ok] hebt geklikt zal het veld in de SQL worden vervangen door je opdracht.

Alias

Je kan het veld een alias meegeven in de optie [Alias] van de detailgrid. Losse woorden zijn niet toegestaan in je Alias.

Query testen

Door te klikken op de button [Preview results] zal het resultaat van je query worden getoond in het scherm [Query test]

Query in platte tekst

Op het tabblad [SQL] zie je na iedere wijziging de SQL die gebruikt zal gaan worden om je output op te halen.

 

 

Ik wil graag meer informatie over de query designer