Meerdere afdrukken aanmaken in rapport

Status
Niet open voor verdere reacties.

janbeeusaert

Gebruiker
Lid geworden
1 nov 2009
Berichten
8
Beste,

Ik heb een klassieke tabel met "producten", Id, naam, afbeelding, Afdrukken Ja/Nee veld. Vanuit een doorlopend formulier kan men de gewenste producten aanvinken met het veld "afdrukken Ja/Nee" waardoor men via een selectie query een rapport aanmaakt met de geselecteerde producten. Dit volgens het principe 1 produkt = 1 etiket.
Wil men meerdere etiketten druk je hetzelfde rapport meerdere keren af. (Er staan maximum 24 producten op een blad) Gezien er dan ook vaak blanco plaatsen zijn op een blad bij bv een selectie van 10 producten verbruik je ook meer papier.

Nu wil ik via een numeriek veld "aantal afdrukken" bij mijn productentabel een rapport maken waarbij je dus per product kan bepalen hoeveel etiketten je wil aanmaken.

Je moet dus op een of andere manier een query aanmaken die extra productlijnen/kopieën aanmaakt afhankelijk van de waarde die in het numerieke veld "aantal afdrukken" staat.

Mijn eerste gedacht was om een aparte tabel aan te maken "aantal afdrukken" maar tot nu toe kan ik door deze te combineren mijn aantallen bepalen voor alle producten maar niet voor elk product afzonderlijk.

Vandaar mijn vraag.
 
Ik snap niet helemaal wat je wilt. Ik heb wél een werkwijze die (zonder extra tabel extra velden) een of meer etiketten kan afdrukken, met daarbij ook de vraag op wél etiket je wilt beginnen. Maar ik heb het vermoeden dat je dát niet bedoelt en dat je per artikel een ander aantal etiketten wilt afdrukken. Kun je een voorbeeldje meeposten, zodat we in de db zelf kunnen sleutelen?
 
ja klopt wat een verschillend aantal betreft per artikelnummer. bv zes etiketten van artikel 1, 12 etiketten van artikel 2, 1 etiket van artikel 3, enz. Heb ondertussen nog wat gezocht en oplossing gevonden maar ook weer met zijn beperking.

Ik heb verder zitten werken aan de twee tabellen principe. Nu heb ik twee tabellen gemaakt en combineer ik ze in een query.
Mijn eerste tabel bevat mijn producten, mijn tweede tabel enkel een autonummering als eerste kolom en een numerieke veld als tweede kolom. Dan records aangemaakt. Eén record met 1, 2 records met 2, 3 met 3, enz.

Door de twee tabellen te combineren in een query zonder dat deze gekoppeld zijn en mijn aantal afdrukken numeriek veld als criterium te gebruiken met mijn numerieke waarde "aantal afdrukken" in mijn artikel tabel krijg ik het aantal gewenste records die verschillend kan zijn per artikel.

Enige nadeel is dat je dus voor 25 afdrukken te maken al 325 records hebt in de tabel "aantal afdrukken" 1 2 2 3 3 3 4 4 4 4 5 5 5 5 5 enz.

Voor mijn project is het probleem dus ondertussen opgelost gezien ik max 24 etiketten per blad wil afdrukken maar er is mogelijks een oplossing met een VBA code te bedenken die geen beperking heeft naar het aantal toe.

ps: Hoe steek je de db in bijlage? Afbeelding van Query zit erbij.
 

Bijlagen

  • artikelselectie.jpg
    artikelselectie.jpg
    91,1 KB · Weergaven: 27
Je oplossing deugt maar half en is in ieder geval veel te omslachtig. Uitgaande van het gegeven dat je max 25 afdrukken per artikel wilt kunnen maken, heb je in je tabel ook maar 25 records nodig met alleen de nummers 1 t/m 25. Je zit wél in de juiste richting, maar nog niet op het juiste spoor :). Op basis van de door mij voorgestelde tabel kun je namelijk met een Cartesisch product prima je resultaat bereiken. Een alternatief is het maken van een virtuele tabel (waar ik vanmiddag al even mee heb zitten stoeien) die het probleem ook oplost, omdat je die tabel met VBA prima kunt vullen op basis van het veld [Aantal]. 't Is maar net waar je voorkeur ligt.
 
Ok, wat gezocht maar nog boven mijn niveau vrees ik. Snap het principe maar krijg het niet in een code uitgewerkt. Je kan maar roeien met de riemen die je hebt. :D
 
En hier is-tie dan...
De uitwerking bestaat uit twee delen: een rapport (knop <Labels afdrukken>) en een virtuele recordset op een formulier (<Lijst bekijken>). Helaas schijnt het niet mogelijk te zijn om een rapport te baseren op een virtuele recordset, wat met een formulier dus wél lukt. Vandaar een tijdelijke tabel onder het rapport.
 

Bijlagen

  • Etiketten Printen op A4.zip
    85,8 KB · Weergaven: 15
Ik heb nog een query gemaakt met een Cartesisch Product (zit niet in de db), die gebruikt maakt van een extra tabel (Labels) met één veld (Aantal_Labels) met nummers. Als je 25 labels wilt kunnen drukken, dan moet je 25 records maken met oplopende nummers.
Code:
SELECT NaamID, Aanhef, Voorvoegsel, Achternaam, Adres, Familieleden, Aantal_Labels 
FROM Ledenlijst, Labels
WHERE (Aantal_Labels Between 1 And [Familieleden])
ORDER BY NaamID, Aantal_Labels;
Als aanvulling op de techniek die je zelf hebt geprobeerd :).
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan