Igény szerinti SQL jelentések*

Vissza





Bevezetés

Az igény szerinti (a menüben kivonatoltként szerepel – ford.) SQL jelentések lehetővé teszik a felhasználónak, hogy egyedi igényeinek megfelelő kimutatásokat készítsen. A kezelőfelület ú.n. SQL szkriptet készít, ami közvetlenül kommunikál az adatbázissal. A szkript hozzáadódik a navigációs fához szkript fejléccel. Fejléc szkript nélkül is adható a fához, a szkriptek csoportosítása érdekében.

A Kivonatolt SQL jelentés szerkesztő felület az alábbi tulajdonságokkal bír:

Jelentés neve
szövegmező

Ez adja meg a szkript nevét.
A szkript navigációs ablakból történő elérését teszi lehetővé.

Fejléc
kijelölő gomb

Fejléc létrehozható kapcsolódó szkript nélkül is.
A mnüpontokhoz kapcsolódik szkript.

Kijelölve: engedélyezi egy név használatát fejlécként navigációs fán.

Almenü
kijelölő gomb

Kijelölve: a navigációs fa a címet az előző pont almenüjeként értelmezi. A menüpont nem szükségszerűen fejléc.

SQL forrás szkrip szövegmező

Ide lehet a szkript részleteit beírni.

Nyit gomb

Létező szkript betöltése fájlból.

Bezár gomb

Az SQL szkript mentése új, vagy létező faájlba.
A jelentéscím lesz a fájlnév. A címben szereplő szóközöket, aláhúzás jelre cseréli a fájlnévben.

Futtat gomb

Lehetővé teszi a szkript futtatását a párbeszéd bezárása nélkül.

Vigyázat: hiba esetén a szkript változásai elvesznek.
Javaslat: futtatás előtt mentse a szkriptet.

Töröl gomb

Az SQL forrásterületét törli.

Bezár gomb

Mentés nélkül bezárja a párbeszédet, a párbeszédből kilpés egyik eszköze.

Mihelyst kész és mentette a szkriptet az MMEX-be, a jelentés könnyen elérhető a navigációs fa segítségével.

Új kivonatos SQL jelentés készíthető az alábbi módokon:

A művelet megnyitja a kivonatos SQL jelentés kezlő párbeszédet és lehetővé teszi a felhasználónak a szkript írást közvetlenül és mentését fájlba.

Hasznos SQL szkripteket érhető el az MMEX Internet fórumán a következő módon:

Ajánlások:

Megjegyzés:





Vissza a tetejére

Vissza




Jelentés futtatása a navigációs ablakon keresztűl

A kivonatos SQL jelentés szerkesztővel készített kimutatások tartósan bekerülnek a navigációs fába. A jelentés mentésekor nevet kap, amivel a felhasználó

Jelentésnév menthető SQL szkript csatolása nélkül is, amit szkriptek csoportosítása esetén névként használhat. Ezt követően a navigációs ablak sima kimutatásként viselkedik. A jelentések egy szint mélységig tagolhatók.



Visza a tetejére

Vissza




Az MMEX adatbázis struktúrája.

Szkriptfájl készítéshez ismernünk kell az adatbázis struktúráját, ami a következő:

Basic Structure of MMEX


Információs tábla

A fenti diagram a táblázatneveket mutatja a hozzájuk tartozó mezőkkel. A táblázatok összekötései mutatják azok kapcsolódását az elsődleges index mezőn keresztűl.

Table Names

Table Description

InfoTable_V1

Az adatbázissal kapcsolatos beállítások.

CurrencyFormats_V1

Az adatbázis információit adja meg.

AccountList_V1

A számlák neveit és a kapcsolódó információkat adja meg.

Payee_V1

A kedvezményezettek és az általuk utoljára érintett kategóriát adja.

Category_V1

A rendszer kategóriáinak felsorolása.

SubCategory_V1

A rendszer alkategóriáinak felsorolása.

CheckingAccount_V1

A főtábla a tranzakciókkal.

SplitTransactions_V1

A bontott tranzakciókkal kapcsolatos információk.

Stock_V1

Részvények. A tábla AccountList_V1-hez kapcsolódik a Held At mezővel.

Assets_V1

A vagyontárgyak részletezése.

BudgetYear_V1

Adott év költsélgvetése. A havi lebontás a havi táblázat tartalmazza.

BudgetTable_V1

Költségvetési részletek.

BudgetSplitTransactions_V1

A bontott tranzakciók a költségvetésben.

BillDeposit_V1

Rendszeres ügyletek részletei. hasonló CheckingAccountV1-hoz

MMEX inicializáló táblázat


mmexini.db3

Az MMEX beállításait tartalmazza a program indításához.

Táblanézet

Különleges, nézet nevű tábla meghatározás

AllData

A CheckingAccount_V1, AccountList_V1, Payee_V1, (sub)category_V1 and CurrencyFormats_v1 táblázatok szinte valamennyi adatát mutatja.

Törlése esetén az MMEX újraindulásakor automatikus létrehozza.


Táblanézet: AllData

Az MMEX AllData néven létrehoz egy különleges nézetet, amit a felhasználó egyszerű SQL szkriptek segítségével részletező kimutatások készítésére könnyen felhasználhat.
További információkért használja a select * from AllData; SQL parancsot.

Az alábbi SQL paranccsal készíthet egy szkript fájlt a táblázatok adatainak tanulmányozása céljából:
select * from <tábla_neve>
ahol a <tábla_neve> az egyik a fenti táblázatokbó, .



Táblanézetek

Az SQL alkalmas virtuális tábla táblázatokat készíteni a létezők alapján, amely Nézeteknek hívunk és az eredeti táblázatok adatait tartalmazzák és a jelentésekben önálló táblázatként használhatók fel. Az erre vonatkozó SQL parancs:

create view <a nézet_neve> as <a nézetet meghatározó SQL kifejezés>;

Például:
create view budget as (költségvetés készítése mint)
select * from BudgetYear_V1 BY, BudgetTable_V1 BT, Category_V1 C, SubCategory_V1 SC
where BY.BudgetYearID = BT.BudgetYearID and BT.CategID = C.CategID and BT.SubCategID = SC.SubCategID
(ezek pedig a táblázatok és mezőik amiket használnia kell);

A nézet megtekinthető a select * from Budget; SQL paranccsal.
Nézet eltávolítására pedig a drop view Budget; SQL parancs való.



Vissza a tetejére

Vissza





SQL szkriptkészítés (Bevezető)



Az SQL programozás oktatása túlmutat a súgó céljain, de ad egy áttekintést a szkriptek megértéséhez és talán segítséget saját szkript készítéséhez.

A szkriptkészítésben a SELECT kifejezés talán a legfontosabb.

Az lapformátuma:

SELECT <név>

<név> vagy egy mező neve, vagy ha * akkor az összes mező egy táblázatban;

FROM <tábla>

<tábla> egy vagy több tábla neve, amire a parancs irányul;

WHERE <teljesített feltételek>

[opcionális] feltételek ellenőrzése;

ORDER BY <paraméter>

[opcionális] a kimeneti adatok szűrése a paraméter szerint


Példák:

SELECT * FROM AccountList_V1;
* Megjeleníti az AccountList_V1 összes mezőjét.

SELECT AccountName, Status FROM AccountList_V1 where AccountType = “Term”;
* Megjeleníti az időszaki számlák neveit és státuszát AccountList_V1 táblából




Néhány összetetteb példa:


Noha ez egy hasznontalan szkript, de jól mutatja a lehetőségeket.

select pT.PayeeName payee,
    cT.CategName,
    scT.SubCategName
from payee_v1 pT,
    category_v1 cT,
    subcategory_v1 scT
where
    pT.categID = cT.categID and pT.subCategID = scT.subCategID
order by
    payee


A táblázat neve: payee_V1 (kedvezményezett) és a mezőnév PayeeName (név).

FROM kitételben látjuk a payee_V1 pT nevét;

* PT helyettesítő név lesz a táblázatra.

A SELECT -ben látjuk a pT.PayeeName payee
* pT. mutatja hogy PayeeName mező a payee_V1 része.
* A payee végén bevezeti a payee elnevezést az előbbi tábla.mező párosra.

Több táblázat és mező kezelése esetén az elválasztó jel a vessző.

A WHERE utasítás és utána a pT.categID = cT.categID
* Arra szolgál, hogy a két táblázat adott mezőit összevesse, egyeznek-e.

Az ORDER BY utasítás végrehajtja a rendezés payee szerint, ahogy a SELECT utasításnál előírtuk.

Remélem a fenti rövid bemutatás segít az MMEX főrumon és a Custom SQL Report részben található szkriptek megértésében.




Vissza a tetejére

Vissza