Jaarkalender per persoon

Bespreek het databaseprogramma
tuxy
Berichten: 115
Lid geworden op: do okt 29, 2009 11:53 am
Locatie: Adinkerke, België
Contacteer:

Jaarkalender per persoon

Bericht door tuxy »

Hallo,

Dit topic is in feite een verlenging van deze topic:

http://user.services.openoffice.org/nl/ ... f=13&t=351

Voor mijn database-applicatie probeer ik een aanwezigheidslijst te maken, zoals in ondersaande afbeelding:

http://picasaweb.google.be/lh/photo/Ku7 ... directlink

Om alle dagen van een jaar aan een persoon te koppelen, heb ik twee tabellen gemaakt:

Code: Selecteer alles

- Tabel Personen : -ID
                           - Naam
                           - Voornaam
                           - ...

-Tabel Dagen : - ID
                      - Datum
                      - ID_persoon
                      - Aanwezig (ja/nee)
De tabel 'Dagen' is dus gelinkt aan 'Personen' .

In het veld 'Dagen.Datum' staan alle datums van één kalenderjaar (=365 dagen), en in het veld 'Dagen.ID_persoon' staat dus 365 keer de ID van één persoon.
Als ik nog een persoon toevoeg, dien ik manueel nog ééns 365 dagen toe te voegen aan 'Dagen.Datum' en dus ook de ID van de nieuw toegevoegde persoon 365 keer toe te voegen onder de bestaande persoon.

Dus zit ik dan voor 2 personen aan 2*365 = 730 records.

Deze datums heb ik eerst gegenereerd via ooCalc en dan in de tabel 'Dagen' geplakt.

Uiteraard is het de bedoeling dat, het voor de eindgebruiker eenvoudiger kan.

Uiteraard kan ik niet elke keer als er een nieuw persoon wordt toegevoegd, naar de eindgebruiker gaan om een nieuwe jaarkalender met de nieuwe 'Dagen.ID_persoon' 365x manueel toe te voegen.

Eigenlijk zou iedere keer als er een persoon wordt toegevoegd automatisch een kalender worden gegenereerd.

Kan dit verwezenlijkt worden zonder macro's?

Of wie weet een andere oplossing om een jaarkalender te linken aan een persoon?

In het engelse forum heb ik volgend topic gevonden:

http://user.services.openoffice.org/en/ ... 64&p=26919

Ik heb volgende SQL-code toegepast in een query, en dit werkt, maar dit is niet echt wat ik wens, omdat de SQL-code de gegevens uit een ander veld haalt, waar al een kalender aanwezig is:

CONVERT ( YEAR( "Datum" ) || '-' || MONTH( "Datum" ) || '-' || DAY( "Datum" ) + 1 , "DATE" )

http://picasaweb.google.be/lh/photo/xqH ... directlink

Heb ook al de mogelijke ingebouwde functies bestudeerd, waarin Datum-functie aanwezig zijn, en veronderstel dat je met DATEDIFF wel iets kan aanvangen, maar daar ben ik og niet uit:

http://wiki.services.openoffice.org/wik ... _Functions

Wie heeft er ervaring met kalenders in ooBase?


Christophe
OpenOffice 3.1 / Vista / Ubuntu Linux 10.04
tuxy
Berichten: 115
Lid geworden op: do okt 29, 2009 11:53 am
Locatie: Adinkerke, België
Contacteer:

Re: Jaarkalender per persoon

Bericht door tuxy »

Of weet het mogelijk een kalender te maken in ooBase zoals in ondersaande afbeelding?

http://i.msdn.microsoft.com/Aa139958.od ... .10%29.gif

Zo kan ik voor iedere dag vd maand vinkjes plaatsen wanneer iemand aanwezig is, en dit dan i een aparte tabel opslaan.

Christophe
OpenOffice 3.1 / Vista / Ubuntu Linux 10.04
RPG
Berichten: 4667
Lid geworden op: wo apr 15, 2009 1:01 am
Locatie: Apeldoorn, Nederland

Re: Jaarkalender per persoon

Bericht door RPG »

Hallo

Volgens mij heb je het idee van eremmel niet goed of voldoende begrepen. Dat betekent niet dat ik het wel doe.

Ik heb het idee dat de kalender een veel centralere rol krijgt. Het is de tabel waarin aan gegeven wordt dat er een afspraak is voor een kind. Dat betekent dus dat de kalender tabel feitelijk niet een enkele tabel is maar meerdere tabellen waarin een dagdeel geclaimd wordt voor een kind die gekoppeld is aan een ouder.

Romke
LibreOffice 7.4.3.2 op openSUSE Leap 15.4
tuxy
Berichten: 115
Lid geworden op: do okt 29, 2009 11:53 am
Locatie: Adinkerke, België
Contacteer:

Re: Jaarkalender per persoon

Bericht door tuxy »

Je bedoelt werken met een tussentabel, vb:

Code: Selecteer alles

- Persoon_Dag
    - ID
    - ID_persoon
    - ID_Dag
    - Aanwezig (ja/nee)
De beste layout in mijn geval, zou eigenlijk moeten zijn, zoals de afbeelding in mijn vorig bericht, dus een formulier met een maandkalender, waarbij er een keuzemenu aanwezig is met alle maanden vermeld, en onderaan de gegevens van een persoon, dit ook in een keuzemenu.

Denk dat deze oplossing niet simpel zal zijn, maar wel de meest voor de hand liggend.

Christophe
OpenOffice 3.1 / Vista / Ubuntu Linux 10.04
RPG
Berichten: 4667
Lid geworden op: wo apr 15, 2009 1:01 am
Locatie: Apeldoorn, Nederland

Re: Jaarkalender per persoon

Bericht door RPG »

Hello

Wat ik begrepen heb is dat je eerst de tabellen moet ontwerpen en dan pas de vormgeving.

Ik denk begin met een tabel waarin enkel een jaartal in voortkomt. Hiermee kun je aangeven met welk jaar je wilt werken.(zie eremmel)

Dan een tabel met jaartal, maand,dag, voordemiddag,nademiddag. Hierin kun je aan geven of die dag al of niet beschikbaar is.

dan een tabel met geclaimd dagdeel, door of voor wie geclaimd.
dan volgen nog de tabellen voor kinderen en ouders.

Het is wat ruw maar misschien heb je wat aan de gedachte

Groeten
Romke
LibreOffice 7.4.3.2 op openSUSE Leap 15.4
tuxy
Berichten: 115
Lid geworden op: do okt 29, 2009 11:53 am
Locatie: Adinkerke, België
Contacteer:

Re: Jaarkalender per persoon

Bericht door tuxy »

Ik denk dat ik begrijp wat je bedoelt.

Code: Selecteer alles

Jaren: id, jaartal

Dagen: id, maand, dag, id_jaren, ...

Aanwezig: id, voormiddag, namiddag, id_dagen, ...

Kinderen: id, naam, voornaam, id_ouders, id_aanwezig, ...

Ouders: id, naam, voornaam, ...
Iets zoals hierboven dan.

Christophe
OpenOffice 3.1 / Vista / Ubuntu Linux 10.04
RPG
Berichten: 4667
Lid geworden op: wo apr 15, 2009 1:01 am
Locatie: Apeldoorn, Nederland

Re: Jaarkalender per persoon

Bericht door RPG »

Hallo

ik denk zelf hier bij aan
Het moet ook blijken uit de testjes die je doet wat het beste is. Dus je kunt ook jouw idee aanhouden en kijken hoe het werkt.

Romke

Code: Selecteer alles

Jaren: id, jaartal

Dagen: id, maand, dag, id_jaren,voorde middag, na de middag

Aanwezig: id, dagdeel, id_dagen, kinid...

Kinderen: id, naam, voornaam, id_ouders, id_aanwezig, ...

Ouders: id, naam, voornaam, .
LibreOffice 7.4.3.2 op openSUSE Leap 15.4
tuxy
Berichten: 115
Lid geworden op: do okt 29, 2009 11:53 am
Locatie: Adinkerke, België
Contacteer:

Re: Jaarkalender per persoon

Bericht door tuxy »

Met deze oplossing is er toch één probleempje opgelost, nl. er kunnen personen worden toegevoegd, zonder dat er manueel een nieuwe kalender moet worden aangemaakt.

Jammer dat ooBase toch wat beperkingen heeft tegenover M$ Access.

Uiteraard zal je ook wel héél veel uit dit pakket kunnen halen, maar in Access zitten er meer wizards, en opties, wat de productiviteit aanzienlijk verhoogd.

Ik begon het net leuk te vinden om een database te ontwikkelen in ooBase, maar de aanhouder wint hé ;)


Christophe
OpenOffice 3.1 / Vista / Ubuntu Linux 10.04
RPG
Berichten: 4667
Lid geworden op: wo apr 15, 2009 1:01 am
Locatie: Apeldoorn, Nederland

Re: Jaarkalender per persoon

Bericht door RPG »

Hallo

Misschien moet je wel een andere tool gebruiken dan OpenOffice.org Base.

Ik denk niet dat het de beste tool is voor jouw doel. Wat wel een goede tool is weet ik niet.

Romke
LibreOffice 7.4.3.2 op openSUSE Leap 15.4
Plaats reactie