7.2.1 Lekérdezésszerkesztő
Lekérdezés létrehozás
Lekérdezés létrehozása az alkalmazás szerkesztőben az új lekérdezés létrehozása gombra kattintva lehetséges
Lekérdezés alapadatai
Lekérdezés létrehozására kattintva megadhatók a lekérdezés alapadatait
- Név (Lekérdezés neve)
- Lekérdezés forrása (A munkafüzet, mely a lekérdezés forrásául szolgál)
- Lekérdezés forrása
Lekérdezés forrása csak egy munkafüzet lehet. Lekérdezés megjelenítő mezői közt szerepelhet az adott munkafüzet bármely szintű szülőjének mezője.
- Lekérdezés leírása
Rövid leírás, a lekérdezés céljáról
- Csak a munkafüzet alól érhető el
Lekérdezés nem jelenik meg menüben a lekérdezések menüpont alatt.
- Az eredménybe csak a gyerekrekordok kerüljenek
Lekérdezés minden esetben annak a rekordnak a gyermek munkafüzet rekordjait hozza eredményül, amelyen be van ágyazva.
Példa:
- Termék 1 rekord alatt van rögzítve 2 db bevételezés
- Termék 2 rekord alatt van rögzítve 1 db bevételezés
A rekordokat megnyitva a lekérdezés Termék 1 alatt 2db rekordot fog eredményül hozni, Termék 2 alatt 1db rekordot.
Lekérdezés megjelenítendő mezői
Ebben a szekcióban adható meg a lekérdezés találati listájában megjelenítendő mezők. A kiválasztott mezők lesznek a lekérdezés oszlopai.
Megjelenítendő mező hozzáadása
- Összes mező hozzáadása
A kiválasztott munkafüzeten szereplő összes mező hozzáadása a megjelenítendő mezőkhöz
- Mezők eltávolítása
Az összes mező eltávolítása a megjelenítendő mezők szekciójából
- Mező hozzáadása
Az összes, a lekérdezésben megjeleníthető mező listája (beleértve a szülők mezőit)
- Mező neve
A mezőbe beírva a mező megjelenítendő nevét, lehetőség van rá, hogy a mező nevétől eltérő oszlopnév jelenjen meg a lekérdezésben.
Példa: Mező neve „Típus”, de a lekérdezésben „Betűtípus” oszlop megjelenítése a cél, akkor az a következő képpen lehetséges:
Mező hozzáadásánál az „Egysoros szövegdoboz” mező kiválasztását követően a Mező neve mezőbe be kell írni a „Betűtípus” szöveget.
Aggregált függvények
Sum
Kiválasztott mező értékét összegezi (szám, számított, hivatkozott mező)
Például egy termékhez tartozó egységár összege kiszámolható SUM aggregációval. Az összegzendő mezőn ki kell választani a SUM aggregációt.
A lekérdezést lefuttatva az adott mezőhöz tartozó összeg lesz megjelenítve a mező oszlopában.
Count
Leszámolja a rögzített rekordokat (bármely mezőre beállítható)
Goup by
A mező értékeit csoportosítja
Fontos! Group by csoportosítást használva, a többi megjelenítendő mezőt is csoportosítani kell, vagy valamely aggregációt alkalmazni rajtuk.
Például leszámolhatók a rögzített betűk típusonkénti (magánhangzó/mássalhangzó) rekordszáma.
Törzsben 1 db magánhangzó és 3db mássalhangzó van rögzítve.
A típus mezőt csoportosítva (Group by), és egy tetszőleges mezőt leszámolva (Count) a lekérdezésben látható hány darab mássalhangzó/magánhangzó lett rögzítve a törzsben.
Mezőkbe való értékírás
- Lekérdezett sorok száma
Lekérdezés beágyazás lapján egy szám típusú mezőbe beíratható a lekérdezett rekordok száma (pontosan ugyanarra való, mint a Count függvény, csak ez a funkció nem roppantja össze a lekérdezés sorait egy rekordra). Bármely mezőtípuson be lehet állítani ezt a funkciót.
- Összegzőmező neve
Lekérdezés beágyazás lapján egy szám típusú mezőbe beírható a megjelenítendő mező rekordonkénti értékének összege. (Pontosan ugyanarra való, mint a SUM függvény, azzal a különbséggel, hogy a funkció nem roppantja össze a lekérdezés sorait egy rekordra). A funkció csak szám típusú mezőt kiválasztva érhető el.
- Összegzés mutatása a táblázat alján
A funkciónak köszönhetően a szám/számított mező esetén, azok összege kiíratható a lekérdezés táblázatának alsó sorában.
Lekérdezés feltételmezői
Ebben a szekcióban adhatók meg a lekérdezés szűrőfeltételei. Lekérdezés szűrhető FIX értékkel és mezőértékkel (amennyiben lekérdezés be lett ágyazva munkafüzetre).
- Mezőérték összehasonlítása Fix értékkel
Mezők összehasonlíthatók fix értékkel, ennek következményeként a lekérdezés csak a szűrési feltételeknek megfelelő rekordokat fogja listázni.
Pl. lekérdezés listájában csak a „mássalhanzók” megjelenítése a cél, a "Típus" mező tartalmát kell megszűrni a „mássalhangzó” tartalomra.
- Mezőérték összehasonlítása mezőértékkel
Mezők összehasonlíthatók más, a beágyazás lapján szereplő mezőkkel.
Fontos! Lekérdezés mezője csak abban az esetben hasonlítható össze (a beágyazás lapján lévő) mezővel, ha az már be lett ágyazva munkafüzeten.
- Feltételek operátorai
Minden mezőtípus esetén csak a típusnak megfelelő operátorok érhetők el
- Egyenlő (pontos egyezés), nem egyenlő (szöveges mező, hivatkozott)
- Kisebb, nagyobb, kisebb egyenlő, nagyobb egyenlő (szám mező, számított, hivatkozott)
- Benn van, nincs benne (egykiválasztós legördülő lista, rádiógomb lista, jelölőnégyzet)
- Legalább az egyik a következők közül, az összes a következők közül, egyik sem (jelölőnégyzet lista, többértékes legördülő lista)
- Tartalmazza, nem tartalmazza (szöveges mező, hivatkozott)
- Üres, nem üres (összes mezőtípus)
- Feltételek összekapcsolásának operátorai
Az operátorokkal szabályozható, hogy a szűrési feltételek közül melyeknek kell igaznak lennie ahhoz, hogy a szűrés teljesüljön
- OR
A vagy operátorral összekapcsolt feltételek közül amennyiben az egyik feltétel teljesül a lekérdezés eredményt hoz
Példa:
Azokra a termékekre van szükség, amelyeknek a típusa „Élelmiszer” vagy 200 Ft alatt van az egységáruk
Ebben az esetben a lekérdezés beágyazásának lapján el kell helyezni 1db Legördülő listát (Termék típus) és 1db szám mezőt (egységár)
A lekérdezés feltétel szekciójába hozzá kell adni azt a feltételt, hogy a forráslap „Termék típus” mezője legyen egyenlő (legördülő lista esetén „benne van” operátor) a beágyazás lapján lévő „Termék típus” (legördülő lista) tartalmával
Hozzá kell adni egy OR operátor
Hozzá kell adni egy további feltételt, hogy a forráslap „Egységár” mezője legyen kisebb-egyenlő (<=), mint a beágyazás lapján lévő „Egységár” (szám mező) tartalma
Ha a beágyazás lapján a szűrőmezők közül az egyik tartalmaz olyan értéket, ami megtalálható a forrás munkafüzeten vizsgáltmező tartalmával, a lekérdezés megjeleníti a szűrt rekordokat, függetlenül attól, hogy a másik szűrőmező értékére van találat, vagy sem.
Esetünkben Ha kiválasztjuk az „Élelmiszer”-t a Terméktípus mezőből, akkor az összes élelmiszert meg fogja jeleníteni a lekérdezés, nem csak azokat, amiknek az ára 200 ft alatt van. Ez igaz fordítva is, ha az „Egységár” mezőbe beírjuk, hogy 200 és a „Termék típus” mezőt üresen hagyjuk, akkor az összes 200 és kisebb egységárú terméket kilistázza a lekérdezés.
Ha mind a 2 mező értéke igaz, akkor a lekérdezés hozza az összes Élelmiszer típusú terméke és az összes olyat, aminek az egységára 200ft, vagy az alatti.
FONTOS! A beágyazás lapján a szűrőmezők tartalma ha üres, a lekérdezés az összes rekordot hozza a forráslapról (míg nincs kitöltve egy mező, a feltételvizsgálatból ki van hagyva)