Wie geeft mij een voorzetje?

Status
Niet open voor verdere reacties.

Tom30

Gebruiker
Lid geworden
17 jan 2007
Berichten
110
Beste Acces Specialisten,

Het HelpMij forum heeft mij al op veel verschillende manieren heel veel geleerd, voornamelijk op het gebied van Excel. Met dank aan alle specialisten (die soms 24 uur per dag achter de computer lijken te zitten haha) heb ik al menig projectje in elkaar kunnen zetten waarvan ik tot op de dag van vandaag nog veel plezier heb.

Mijn informatiebehoefde (en de behoefte om te leren) breidt zich dermate uit dat ik niet meer onder een Access project uitkom, ben ik bang. :). Access is een programma waar ik wel eens mee heb gewerkt maar nog niet veel ervaring mee heb. Ik heb al een aantal boeken liggen die mij gaan helpen en ook de info op deze site zal wederom hartelijk worden geraadpleegd.

Om goed van start te gaan zou ik jullie willen vragen om eens te kijken naar onderstaande informatie behoefte. Mijn vraag is of Access hier het uitgelezen programma voor is, of dat ik toch moet uitwijken naar iets anders. Als dit toch een Access klus gaat worden, misschien kan iemand mij een voorstel geven over hoe de Db eruit zou kunnen zien en welke tabellen in nodig zou hebben. De situatie is als volgt:

Ik heb:

-6 leraren;
-6 regio’s, ca 16 klassen per regio;
-96 klassen in totaal;
-Tussen de 4 en 20 leerlingen per klas;
-3 proefwerken per maand, per leerling;
-1 Discipline per maand, elke maand een andere discipline;
-7 verschillende disciplines.

Het is de bedoeling dat de punten van de proefwerken in een database komen zodat ik een aantal rapportages kan draaien, bijvoorbeeld:

-Overzichten van gemiddelde resultaat per medewerker, klas, regio, landelijk, per discipline
-Overzicht van vooruitgang per discipline per medewerker

Verschillende rapportages zullen moeten worden gepresenteerd op meetings, voornamelijk de regionale resultaten.

Wie zou er zo vriendelijk willen zijn om mij een voorzetje in de goede richting te geven?

Alvast heel erg bedankt!!!


Groeten, Tom
 
Heb zelf op een VMBO school gewerkt.

Daar hadden ze eerst @vo en zijn nu overgestapt naar Magister.

Hier kun je de complete leerlingen en docent dingen bij houden.
 
Heb zelf op een VMBO school gewerkt.

Daar hadden ze eerst @vo en zijn nu overgestapt naar Magister.

Hier kun je de complete leerlingen en docent dingen bij houden.


Hoi Patrick,

In mijn situalie gaat het niet echt om leerlingen en klassen in het kader van een school of iets dergelijks, maar om een bedrijf met werknemers en een soortgelijke setting. Het komt heel erg overeen. Ik heb slechts de beschikking over excel en access dus daar moet ik het mee doen. Het aanschaffen van dit soort pakketten zit er helaas niet in.

Wel bedankt voor de tip.

Groeten, Tom
 
Eerste opzet

Hallo allen,

Bijgevoegd een eerste opzet van een tabelstruktuur.
Is er iemand die mij zou willen aangeven of dit een goed begin is?

Alvast bedankt!

Groeten, Tom
 

Bijlagen

  • Tabeloverzicht score db.zip
    2,8 KB · Weergaven: 36
Hallo Tom,

Het is een goed begin de tabellen allemaal met PK (Primary key). Wat je nodig hebt is een FK (Foreing key) om tabellen met elkaar te koppelen.

Je hebt een tabel Regio en een Tabel Klas. Door middel van Regionummer (PK in tabel Regio en FK in tabel Klas) kun je de tabellen met elkaar koppelen. Dat is dus goed. Verder zie ik nog een link tussen de tabellen Leerling en Score door middel van de leerlingnaam, dat is niet handig. Wat doe je als twee leerlingen hebt met de naam Jan Jansen? Beter is het om een verbinding te leggen tussen twee tabellen met de unieke sleutel.

Op onderstaande link kun je voorbeeld databases downloaden (Kies voor een Access versie. Zoek er een die de meeste overeenkomst heeft met wat jij wilt maken en kijk naar hoe de relaties tussen de tabellen zijn opgebouwd.

Probeer dan de tabellen te maken in Access en de relatie's te leggen.

http://office.microsoft.com/en-us/templates/CT101172481033.aspx

mvg
Charles
 
Hallo Tom,

Het is een goed begin de tabellen allemaal met PK (Primary key). Wat je nodig hebt is een FK (Foreing key) om tabellen met elkaar te koppelen.

Je hebt een tabel Regio en een Tabel Klas. Door middel van Regionummer (PK in tabel Regio en FK in tabel Klas) kun je de tabellen met elkaar koppelen. Dat is dus goed. Verder zie ik nog een link tussen de tabellen Leerling en Score door middel van de leerlingnaam, dat is niet handig. Wat doe je als twee leerlingen hebt met de naam Jan Jansen? Beter is het om een verbinding te leggen tussen twee tabellen met de unieke sleutel.

Op onderstaande link kun je voorbeeld databases downloaden (Kies voor een Access versie. Zoek er een die de meeste overeenkomst heeft met wat jij wilt maken en kijk naar hoe de relaties tussen de tabellen zijn opgebouwd.

Probeer dan de tabellen te maken in Access en de relatie's te leggen.

http://office.microsoft.com/en-us/templates/CT101172481033.aspx

mvg
Charles

Hoi Charles,

Die voorbeelddatabase was een goeie tip. De classroom management db komt heel erg overeen met datgene wat ik wil maken en geeft me inderdaad wat meer inzicht in de onderlinge relaties.

Waar ik nog een beetje mijn hoofd over breek is het feit dat een leerling gedurende het jaar van klas kan veranderen. Misschien heb je daar nog een tip voor?

Ik ben in ieder geval weer een stuk wijzer, waarvoor dank!

Groeten, Tom
 
Aansluitend op de post van Bakk4318 is het misschien verstandig je even te verdiepen in het normaliseren van een database.

http://nl.wikipedia.org/wiki/Databasenormalisatie

Je hoeft niet verder te normaliseren dan de BCNF.

Enjoy!


Hoi Guus,

jij ook bedankt voor de tip. Ik kwam het ook al tegen in de boeken ja. Voor een bijna leek is dit wel een beangstigend proces moet ik zeggen, maar ik doe mijn best om het te begrijpen.. :)

Groeten, Tom
 
Hoi Guus,

jij ook bedankt voor de tip. Ik kwam het ook al tegen in de boeken ja. Voor een bijna leek is dit wel een beangstigend proces moet ik zeggen, maar ik doe mijn best om het te begrijpen.. :)

Groeten, Tom
Het is niet zo ingewikkeld als dat het lijkt. Geef maar een gil als je er niet uitkomt.

HTH:D
 
Het is niet zo ingewikkeld als dat het lijkt. Geef maar een gil als je er niet uitkomt.

HTH:D


Hoi Guus,

Bijgevoegd een herziende struktuur. Volgens mij zijn alle normaliseringen op deze manier gedaan. Met uitzondering van de laatste tabel, de score tabel. Daar komen gegevens in terug die ook in andere tabellen zitten. De reden waarom ik dat zo dacht te doen is het volgende:

Middels een formulier laat ik de 6 leraren hun resultaten in de database zetten. In dat formuliertje staat een puldown menuutje voor het regionummer in te vullen. Als deze is geselecteerd, staat in het volgende pulldown menuutje alleen de klassen die tot de betreffende regio behoren. Als de klas is geselecteerd staan in het leerling puldown menuutje alleen de leerlingen die in die klas zitten. Als de leerling is geselecteerd hoeft de leraar alleen nog de datum in te vullen en de score. Op deze manier vult de scoretabel zich met data.

De bedoeling is dus om aan de hand van de score tabel rapportages te gaan draaien. Zo zou ik bijvoorbeel willen weten wat de gemiddelde score per disipline per medewerker over een periode x is. Of de gemiddelde score per regio in zijn geheel,, of de score van medewerker x ten opzichte van een eerdere score op dat onderdeel.

Ik denk dat ik op deze manier al redelijk dicht in de buurt komt. Het enige waar ik dus nog mee zit is het feit dat een medewerker gedurende de periode van de ene naar de andere klas kan gaan, of zelfs naar een andere regio. En daar zit wel een uitdaging, databasetechniesch dan.. :) want bij een rapportage moet zijn resultaat beide klassen worden meegerekend.

Wellicht zie jij daar een handigheidje voor?? :)

Alvast bedankt!


Groeten, Tom
 

Bijlagen

  • Tabeloverzicht score db.zip
    2,8 KB · Weergaven: 28
Laatst bewerkt:
Je gaat er van uit dat een klas maar in 1 regio voor kan komen.

Je mist nog de relatie tussen leerling en klas. die kan je natuurlijk krijgen via je score tabel maar die zou ik aanpassen door klasnummer op te nemen ipv regionummer in de tabel scoretabel.
Echter als een leerling maar in 1 klas kan zitten dan kan je de klas ook opnemen bij de leerling. Aangezien een leerling het ene jaar in de ene klas zit en het andere jaar in een andere klas lijkt het mij nog beter om de klas en de leerling samen onder te brengen in een nieuwe tabel met bijvoorbeeld de naam Bezetting hierin kan je de relatie opnemen tussen leerling en klas en jaar. Regionummer of klasnummer hoef je dan niet op te nemen in de score tabel.

Als je de database zo aanpast dan kan je alle rapporten uitdraaien die je wilt.

HTH:D
 
Je gaat er van uit dat een klas maar in 1 regio voor kan komen.

Je mist nog de relatie tussen leerling en klas. die kan je natuurlijk krijgen via je score tabel maar die zou ik aanpassen door klasnummer op te nemen ipv regionummer in de tabel scoretabel.
Echter als een leerling maar in 1 klas kan zitten dan kan je de klas ook opnemen bij de leerling. Aangezien een leerling het ene jaar in de ene klas zit en het andere jaar in een andere klas lijkt het mij nog beter om de klas en de leerling samen onder te brengen in een nieuwe tabel met bijvoorbeeld de naam Bezetting hierin kan je de relatie opnemen tussen leerling en klas en jaar. Regionummer of klasnummer hoef je dan niet op te nemen in de score tabel.

Als je de database zo aanpast dan kan je alle rapporten uitdraaien die je wilt.

HTH:D

Hoi Guus, goeiemorgen.

Bedankt voor je antwoorden.
Het klopt inderdaad dat een klas maar in 1 regio tegelijk kan zitten. Het kan wel zijn dat de regio's op een zeker moment eens opnieuw ingedeeld gaan worden maar dat is dan ook alles. De reden dat ik geen relatie tussen leerling en klas heb gemaakt, is dat het dus kan gebeuren dat een leerling per jaar wel één of twee keer van klas of zelfs van regio kan veranderen. Als ik een tabel bezetting maak, ben ik dan niet gebonden aan de regio en klas die ik eenmalig voor een leerling invoer?

Ik weet ook nog niet hoe ik het moet effectueren als een leerling naar een andere klas of regio gaat.

Ik zit daar echt vast mee...pfff Maar ik zie waarschijnlijk iets over het hoofd. (zoals gebruikelijk hahaha)


Alvast bedankt weer en een fijn weekend!


Groeten, Tom
 
Laatst bewerkt:
...
Als ik een tabel bezetting maak, ben ik dan niet gebonden aan de regio en klas die ik eenmalig voor een leerling invoer?

Ik weet ook nog niet hoe ik het moet effectueren als een leerling naar een andere klas of regio gaat.

Ik zit daar echt vast mee...pfff Maar ik zie waarschijnlijk iets over het hoofd. (zoals gebruikelijk hahaha)
Ook daar is een oplossing voor. Als je de start en einddatum in de tabel bezetting opneemt dan kan een combinatie op een zelfde moment niet twee keer voorkomen.
Je moet dan wel zorgen dat een leerling niet op 1 moment in twee klassen zit. Tenzij dat wel kan en dan is alles mogelijk.

Als de regio's opnieuw ingedeeld gaan worden kan je altijd nog zien hoe je dat aanpakt. Het is nu al ingewikkeld genoeg lijkt me.

HTH:D
 
Ook daar is een oplossing voor. Als je de start en einddatum in de tabel bezetting opneemt dan kan een combinatie op een zelfde moment niet twee keer voorkomen.
Je moet dan wel zorgen dat een leerling niet op 1 moment in twee klassen zit. Tenzij dat wel kan en dan is alles mogelijk.

Als de regio's opnieuw ingedeeld gaan worden kan je altijd nog zien hoe je dat aanpakt. Het is nu al ingewikkeld genoeg lijkt me.

HTH:D

Hoi Guus.

Bedankt voor je antwoord.
Komt de bezettingstabel waar jij het over hebt oongeveer overeen met de tabel Student and Classes in bijgevoegd voorbeeld? Wat ik aan dit voorbeeld namelijk niet zo goed begrijp is dat de sleutel StudentClassesID nergens terugkomt in andere tabellen.

De in- en uitdienst datum heb ik al opgenomen in de tabel leerlingen. Is het dan nog steeds noodzakelijk om die apart op te nemen in de tabel bezetting?

Thanks weer!

Groeten, Tom
 

Bijlagen

  • relaties.JPG
    relaties.JPG
    66,1 KB · Weergaven: 49
Hoi Guus.

Bedankt voor je antwoord.
Komt de bezettingstabel waar jij het over hebt ongeveer overeen met de tabel Student and Classes in bijgevoegd voorbeeld?
Ja. Ik zou echter in tabel- en veldnamen de spaties verwijderen. Die zitten in de weg als je queries maakt en begint met programmeren. "Section No" daar zou ik "SectionNo" van maken. Die o met dat streepje eronder kan lastig zijn om in te tikken.
Wat ik aan dit voorbeeld namelijk niet zo goed begrijp is dat de sleutel StudentClassesID nergens terugkomt in andere tabellen.
Dat hoeft ook niet. Het is een relatie tabel. Die komt je weer tegen in je queries. Je kan StudentClassID ook weglaten. Je sleutel voor deze tabel bestaat dan uit vier velden: ClassID, StudentID, StartDatum, Einddatum. Je moet echter nog wel een start- en einddatum opnemen. Om een leerling een cijfer te geven voor de klas waarin hij zit lijkt mij niet erg zinnig, dus GRADE kan je ook lozen. Die zou je weer op kunnen nemen in de tabel Results.
De in- en uitdienst datum heb ik al opgenomen in de tabel leerlingen. Is het dan nog steeds noodzakelijk om die apart op te nemen in de tabel bezetting?

Thanks weer!

Groeten, Tom
De in- en uitdienst datum van je leerlingen hebben betrekking op je leerlingen en niet op de klas waarin ze zitten op een bepaald tijdstip. ook hier geldt dat de datum waarin een leerling in een klas zit moet liggen tussen de tijdstippen die jij in- en uitdienst hebt genoemd.

HTH:D
 
Ja. Ik zou echter in tabel- en veldnamen de spaties verwijderen. Die zitten in de weg als je queries maakt en begint met programmeren. "Section No" daar zou ik "SectionNo" van maken. Die o met dat streepje eronder kan lastig zijn om in te tikken.
Dat hoeft ook niet. Het is een relatie tabel. Die komt je weer tegen in je queries. Je kan StudentClassID ook weglaten. Je sleutel voor deze tabel bestaat dan uit vier velden: ClassID, StudentID, StartDatum, Einddatum. Je moet echter nog wel een start- en einddatum opnemen. Om een leerling een cijfer te geven voor de klas waarin hij zit lijkt mij niet erg zinnig, dus GRADE kan je ook lozen. Die zou je weer op kunnen nemen in de tabel Results.
De in- en uitdienst datum van je leerlingen hebben betrekking op je leerlingen en niet op de klas waarin ze zitten op een bepaald tijdstip. ook hier geldt dat de datum waarin een leerling in een klas zit moet liggen tussen de tijdstippen die jij in- en uitdienst hebt genoemd.

HTH:D

Ho Guus,

Wederom bedankt voor je tips.
Ik heb ze allemaal op een hoop gegooit en verwerkt in een nieuwe herziende tabelstruktuur zoals bijgevoegd. Volgens mij moet dit hem zijn. Uiteraard wil ik hem nog even ter goedkeuring op jouw desktop zetten. :)

Alvast bedankt. Ik ben benieuwd wat je ervan vind.

Groeten, Tom
 

Bijlagen

  • Tabeloverzicht score db.zip
    2,8 KB · Weergaven: 22
Ziet er goed uit.
Je moet alleen veldnaam KlasNr uit de ScoreTabel halen. Via de BezettingsTabel kan je die opvragen, dus die is hier overbodig.

Voor wat betreft de tabel namen neem ik aan dat je de suffix "Tabel" in het echte ontwerp weglaat?

Tot slot: Voor ieder Primary Key gebruik je Nr behalve in de ScoreTabel daar gebruik je ID

Gaat de goede kant op. Je backend (BE) is klaar. Je frontend (FE) zal de meeste tijd in beslag nemen.

Succes!

HTH:D
 
Ziet er goed uit.
Je moet alleen veldnaam KlasNr uit de ScoreTabel halen. Via de BezettingsTabel kan je die opvragen, dus die is hier overbodig.

Voor wat betreft de tabel namen neem ik aan dat je de suffix "Tabel" in het echte ontwerp weglaat?

Tot slot: Voor ieder Primary Key gebruik je Nr behalve in de ScoreTabel daar gebruik je ID

Gaat de goede kant op. Je backend (BE) is klaar. Je frontend (FE) zal de meeste tijd in beslag nemen.

Succes!

HTH:D

Hoi Guus,

Ik heb je laatste tips nog ter harte genomen en de veranderingen doorgevoerd.
De volgende stap is het maken fan de formulieren om de data in te voeren. Als die klaar zijn zal ik de rapporten gaan maken met de query's.
Ik hoop dat ik her en der nog eens een beroep op je kan doen.

Tot zo ver in ieder geval heeel erg bedankt. Ik heb weer veel geleerd!


Groeten, Tom.


PS: Waar staat dat HTH eigenlijk voor? :)
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan