e-Musty Creative Commons License 2003.05.11 0 0 10
Én igazán nem akarok okoskodni, kedves Györgyi, de ha már van férjed és lányod, mégis tanulsz valamiért, és abban az igen-igen szerencsés helyzetben vagy, hogy külföldön tanulhatod a szakmánkat, akkor igazán vehetnél annyi fáradtságot, hogy megnézed az Access súgóját és példaadatbázisait, és a neten keresel kifejezetten kezdő programozók számára készített weboldalakat. Biztos vagyok benne, hogy sokkal hamarabb el tudod készíteni magad is a feladatot, mint itt megpróbálgatni írogatni és ismeretlenektől szedni valami információt (mert ebből úgysem lesz program sosem), ráadásul sikerélményed is lehetne.

=======================
E-R
=======================

minta: NameOfTable [RelatedColumn : Multiplicity]

Payee [payee_id; 1] :-- [n, payee_id] DailyPayment [denomination_id; 1] :-- Denomination [n; denomination_id]

=======================
Data Dictionary
=======================

Payee:
----------
-Payee_ID: Int // autoincrement
-Name: VarChar // pl. John Holmes

PK: Payee_ID
Index: Payee_ID, Name

DailyPayment:
----------------
-Day: Date // date of payment
-Payee_ID : Int // id of payee
-Denomination_ID : Int // id of denom. (címlet)
-CountOf: Int // Number of coins or sheets of that denomination

PK: Day, Payee_ID, Denomination_ID

Denomination:
------------------
-Denomination_ID : Int // identifier
-Title : String // name of coin or sheet, eg. $10, c5, $5 etc
-Amount : Float // Value of the coin/sheet, e.g. 1 for $1, 0.1 for cent 1, 10 for $10

PK: Denomination_ID

=======================
Reports:
=======================

Monthly income:
------------------
SELECT DailyPayment.denomination_id, sum(DailyPayment.CountOf*Denomination.value)
FROM DailyPayment,Denomination
WHERE
(Month(Day) = Month($monthInIssue)) AND
(Denomination.denomination_id = DailyPayment.denomination_id)
GROUP BY denomination_id;

Payment total by payee:
--------------------------
SELECT Payee.name, sum(DailyPayment.CountOf*Denomination.value)
FROM Payee,DailyPayment,Denomination
WHERE
(Payee.Payee_ID = DailyPayment.Payee_ID) AND
(Denomination.denomination_id = DailyPayment.denomination_id)
GROUP BY Payee.id;

Number of $10 sheets payed on a given day:
---------------------------------------------
SELECT Denomination.Title, Count(DailyPayment.CountOf)
FROM DailyPayment, Denomination
WHERE DailyPayment.Day = $dayInIssue AND
Denomination.Title = "$10"
GROUP BY Denomination_ID

Előzmény: Gyorgyi (9)