Ik heb momenteel een kalender waarop aanwezigheden bevestigd kunnen worden, files met trainingsinhoud aan een dag gekoppeld kunnen worden en trainers hun aanwezigheid op een training kunnen invoeren.
Dit alles is doorheen enkele jaren uit een eenvoudige kalender ontstaan en is dus iedere keer op een iets andere manier geschreven.
Nu beginnen er stilaan enkele lastige problemen te ontstaan doordat er niet altijd rekening is gehouden met alle mogelijke omstandigheden. Zo is het mogelijk te kiezen of je per maand of per week een file wil uploaden, maar indien je na x tijd ven gedachte veranderd en wil wisselen loopt het eigenlijk al mis. Er wordt slechts gebruik gemaakt van 1 flag waarmee aangegeven wordt voor welke periode er geüpload wordt, welke zich in de tabel trainingen bevindt. Deze omzetten heeft dus ook effect op files die in het verleden zijn geüpload en dat is niet de bedoeling.
Verder zijn er ook nog hard-coded enkele lapmiddeltjes ingevoerd. Zo zijn er 3 zwemtrainingen per week voorzien, en alle data staat hiervan in 1 file. Bij het uploaden kijk ik dus in de database naar alle rijen waar er als type "Zwemmen" vermeld staat en koppel ik deze file aan de 3 trainingen. Dit is niet zo netjes, dus daar zou ik ook een oplossing voor willen.
Verder worden er verschillende manieren gebruikt om een bepaald rij aan een bepaalde training op een bepaalde dag te koppelen. Er komt een keer de datum terug; een keer de week en het jaar van de training in een aparte kolom en een keer diezelfde info op week_jaar manier. Ook daar zou ik een rechte lijn in willen brengen.
Alles begint met een goede structuur op in de database, maar daar geraak ik wat mee in de knoop. Omdat ik niet weer met allerlei lapmiddelen wil beginnen had ik graag jullie feedback gehad.
Momenteel heb ik volgende databasestructuur:
trainingen
trainingen_upload
trainingen_aanw
trainers_aanw
aflassingen
Indien er een record gevonden wordt voor een training op een bepaalde dag wil dit zeggen dat ze is afgelast
Als oplossing voor de problemen heb ik het volgende al bedacht:
Dit alles is doorheen enkele jaren uit een eenvoudige kalender ontstaan en is dus iedere keer op een iets andere manier geschreven.
Nu beginnen er stilaan enkele lastige problemen te ontstaan doordat er niet altijd rekening is gehouden met alle mogelijke omstandigheden. Zo is het mogelijk te kiezen of je per maand of per week een file wil uploaden, maar indien je na x tijd ven gedachte veranderd en wil wisselen loopt het eigenlijk al mis. Er wordt slechts gebruik gemaakt van 1 flag waarmee aangegeven wordt voor welke periode er geüpload wordt, welke zich in de tabel trainingen bevindt. Deze omzetten heeft dus ook effect op files die in het verleden zijn geüpload en dat is niet de bedoeling.
Verder zijn er ook nog hard-coded enkele lapmiddeltjes ingevoerd. Zo zijn er 3 zwemtrainingen per week voorzien, en alle data staat hiervan in 1 file. Bij het uploaden kijk ik dus in de database naar alle rijen waar er als type "Zwemmen" vermeld staat en koppel ik deze file aan de 3 trainingen. Dit is niet zo netjes, dus daar zou ik ook een oplossing voor willen.
Verder worden er verschillende manieren gebruikt om een bepaald rij aan een bepaalde training op een bepaalde dag te koppelen. Er komt een keer de datum terug; een keer de week en het jaar van de training in een aparte kolom en een keer diezelfde info op week_jaar manier. Ook daar zou ik een rechte lijn in willen brengen.
Alles begint met een goede structuur op in de database, maar daar geraak ik wat mee in de knoop. Omdat ik niet weer met allerlei lapmiddelen wil beginnen had ik graag jullie feedback gehad.
Momenteel heb ik volgende databasestructuur:
trainingen
Kolom | info |
---|---|
id | |
dow | day of week |
type | zwemmen/fietsen/lopen/... |
locatie | plaats |
begin | beginuur |
end | einduur |
upload_trainingen | periode waarvoor een training geüpload wordt, 1=week; 2=maand |
trainingen_upload
Kolom | info |
---|---|
tid | ID van overeenkomstige training |
doc | naam van de file |
nr | weeknr_jaar of maandnr_jaar. Wordt gebruikt om vanuit een kalender de juiste file te zoeken |
trainingen_aanw
Kolom | info |
---|---|
id | |
training | ID van de overeenkomstige training |
lid | ID van het overeenkomstige lid |
w | week van training waarop je aanwezig bent |
y | jaar van training waarop je aanwezig bent |
status | 0=afwezig, 1=aanwezig |
trainers_aanw
Kolom | info |
---|---|
lid | ID van het overeenkomstige lid |
training | ID van de overeenkomstige training |
datum | datum van aanwezigheid (yyyy-mm-dd) |
aflassingen
Indien er een record gevonden wordt voor een training op een bepaalde dag wil dit zeggen dat ze is afgelast
Kolom | info |
---|---|
id | |
training | ID van de overeenkomstige training |
datum | datum van aanwezigheid (yyyy-mm-dd) |
opmerking | bijkomende info |
Als oplossing voor de problemen heb ik het volgende al bedacht:
- Notatie van data: alles naar yyy-mm-dd formaat brengen.
- Files aan trainingen koppelen: hier ben ik aan het denken om volgende kolommen voor te gebruiken
trainingen_upload
Kolom id training file datum info ID van overeenkomstige training Filename Datum van de training
Tijdens het uploaden zou ik dan vinkjes aanbieden om aan te duiden voor welke trainingen je upload. Eventueel kan ik dat nog iets vereenvoudigen door categorieën te gebruiken? Wat wel vaststaat is dat de periode waarvoor een file moet dienen zou op dit niveau geen effect meer mogen hebben. Kan ik dan best bij het uploaden voor iedere dag dat er die week/maand training is een nieuw record maken? - Bijkomstigheid: ik zou graag als soort subcategorie van een training groepen maken, zodat mensen niet voor een training aanmelden, maar voor een bepaalde groep op een training. Bij de tabel waarop de aanwezigheden opgeslagen worden moet er dus eigenlijk gewoon de groep opgeslagen worden. Daarvoor zie ik volgende tabel:
trainingen_groepen
Kolom id training groep info ID van overeenkomstige training Naam van de groep