Igény szerinti SQL jelentések* |
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 |
Ez adja meg a
szkript nevét. |
Fejléc |
Fejléc
létrehozható kapcsolódó szkript nélkül is. Kijelölve: engedélyezi egy név használatát fejlécként navigációs fán. |
Almenü |
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. |
Futtat gomb |
Lehetővé teszi
a szkript futtatását a párbeszéd bezárása nélkül. |
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:
menü: Eszközök -> Kivonatos SQL jelentések pont alól;
eszköz ikonnal.
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:
menü: Súgó –> Kimutatás kérdései és visszajelzések;
a fórumon rákeresve a Custom SQL Report Scripts kifejezésre.
Ajánlások:
Új szkript esetén a jelentése szempontjából hasznos fejlécet válasszon!
Mentse a szkriptet a Kivonatos SQL jelentés
kezlő futtatása előtt!
Megjegyzés: a szkript hibái
annak elvesztését okozhatják, ha korábban nem mentette el.
Használja a navigációs ablak felnyíló menüjét a fájl szerkesztésére, ha szükséges.
Megjegyzés:
Az összes szkriptnév CustomSQLReportIndex.txt fájlban elmentésre kerül:
Az indexfájl törlésével a kivonatos SQL jelentések törölhetők.
A jelentések átrendez közvetlenül az indexfájl szerkesztésével szükség esetén.
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ó
futtathatja,
szerkesztheti, vagy
törölheti a jelentést.
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.
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á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ó.
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, |
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.