weekoverzicht printen

Status
Niet open voor verdere reacties.

rebirth

Gebruiker
Lid geworden
17 jun 2008
Berichten
170
Ik heb een tabel met daarin 2 velden: een datumveld en een memoveld.
Graag zou ik op 1 of andere manier uit deze tabel telkens een weekoverzicht kunnen printen.
De bedoeling is dat ik dus een dag in een bepaalde week kies, en dat op een horizontaal blad papier de 7 dagen van de bepaalde week krijg, bovenaan de datum, en eronder de tekst uit het memoveld, in een soort kolom dus. Ik zit al een paar dagen te brainstormen erop, maar voorlopig geen flauw idee hoe ik dit kan bereiken. Kan iemand me een beetje op weg helpen, of ergens een hint geven welke methode hiervoor in aanmerking kan komen?
 
Het is in de cursus Access behandeld :)
 
Ik had dit al eens bekeken OctaFish, maar als ik het goed begrepen heb, werk je daar met een kruistabelquery. En hiervoor heb ik blijkbaar 3 velden nodig in mijn tabel, terwijl er maar 2 zijn: de datum en het memoveld. Hierdoor kan ik geen kruistabel maken, en zit ik dus een beetje vast.
 
Je hebt in ieder geval het hoofdstuk goed gelezen :thumb:. Je geeft zelf al aan wat de oplossing is: een derde veld. Wat let je om in je tabel een ID veld (type Autonummering) op te nemen? Dan is dat je waardeveld. Daar laat je dan de functie Eerste of Laatste o.i.d. op los, zodat je de ID nummers hebt in het raster. Overigens lost dat je probleem nog niet op, want je ziet dan alleen maar records waarvoor je dagen hebt ingevuld. Ik zou dus zeker ook datumtabel maken met daarin alle (week)dagen voor een jaar of zo. Die koppel je aan de query (ik zeg het eigenlijk verkeerd, want je moet hem juist niet koppelen, maar als Cartesisch product gebruiken) en op basis van die tabel maak je in de query een extra dag [Weekdag] Dit veld wordt dan je kolomkop. Ik zou dus de weken als rijkop gebruiken, de weekdagen als kolomkop en het ID van de tabel als waarde veld. In je formulier of rapport lees je de query in, en koppel je die aan de tabel met je memovelden. Het weeknummer, de weekdag en het memoveld gebruik je vervolgens in het formulier. Zo simpel dus :D
 
Simpel, juist ja :-)
Het probleem met datums die niet gaan voorkomen, ga ik niet hebben, want iedere datum van elke week zal in de tabel voorkomen, dus hier alvast geen probleem. Ik heb 2 nieuwe velden in de tabel toegevoegd (aangezien memo ook niet telt bij een kruistabel), en nu heb ik inderdaad wel een kruistabel. Maar ik betwijfel eerlijk gezegd of die wel klopt, en ik er iets mee ben. En ik zit dan ook een beetje vast nu, dus toch nog even beroep doen op je kennis en goedheid Michel :-)
 
Volgens mij heb je maar één extra (ID) veld nodig, want de rijkop komt uit het weeknummer van de datum, en de kolomkop (weekdag) ook uit dat veld. Dus een ID veld is genoeg. Dat heb je vervolgens nodig in de kruistabel om op je formulier een recordset te openen die het ID gebruikt om het memoveld op te halen. En dat laat je dan zien op je formulier. Simpel? Nee, niet echt, vandaar het lachebekje. Maak anders een voorbeeldje als je er niet uitkomt.
 
ik heb even mn database er bij gestopt. Wel niet te veel letten op mijn for.mulier, want het geheel is nog één groot experiment :rolleyes: Maar die doet alvast ongeveer wat ik wil. Nu nog wat verder geraken met mijn weekoverzichtje
Bekijk bijlage planning.zip
 
Je hebt in [Agenda] wel een ID veld toegevoegd, maar van het type Tekst, en niet Autonummer. En daarmee heb je niet de eigenschap die je nodig hebt, dat elk record uniek is. Als je een autonummer veld toevoegt, kun je met deze query uit de voeten:
[sql]TRANSFORM First(Agenda.id) AS EersteVanid
SELECT DatePart("ww",[Datum],2,2) AS Expr3
FROM Agenda
GROUP BY DatePart("ww",[Datum],2,2)
PIVOT Format([Datum],"ddd");[/sql]
De volgende stap is dan een formulier maken (kun je op basis van de query doen, ben je redelijk snel op weg) en vervolgens de recordbron opbouwen die je nodig hebt om de cijfers in de kruistabel te vervangen door de memoteksten.
 
De query is gelukt, het rapport is er ook. Nu enkel nog de cijfers vervangen door de memovelden. Kan ik daarvoor nog een kleine hint krijgen Michel, want via de recordbron lukt het me niet direct. Wat ik ook doe, als die memo er bij komt, krijg ik telkens een boodschap dat ik die niet mag gebruiken. Dus waarschijnlijk wil ik hem op de verkeerde plaats of manier er in krijgen.
 
Ik dacht even een oplossing te hebben, door met INNER JOIN te werken, maar aangezien de ID die daar weergegeven is, geen "echt veld" is, lukt dit uiteraard niet. Moet ik verder bouwen op de bestaande recordbron, of een nieuwe maken?
 
Vandaag is de deadline voor de komende nieuwsbrief, en dan weet je het: dan moet je redacteuren even de ruimte geven want dan moeten er artikelen geschreven en geredigeerd worden :). Maar zodra de hectiek weg is, kijk er er weer naar.
 
ah, wist ik niet. Ik wou ook niet ambetant doen ;)
Neem gerust je tijd, ik ben al erg blij met je hulp!
 
Niet dat ik lastig of opdringerig wil doen Michel, maar zou je intussen al de tijd gevonden hebben om dit eens te bekijken, en me eventueel wat verder te kunnen helpen?
 
Ik probeer een oplossing te zoeken die niet te moeilijk is, en waarbij niet zoveel geprogrammeerd hoeft te worden. Valt nog niet mee :)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan