25. april 2003 - 10:15Der er
27 kommentarer og 1 løsning
Automatisk rutine ifbm. udskrift af rapport
Jeg har en database med 844784 poster i. De er fordelt således at der er 2854 poster til hver af de 296 kunder, som skal have denne "prisliste" som det er.
Jeg har lavet en forespørgsel som udvælger de felter jeg skal bruge, og dernæst lavet en rapport som udskriver 1 prisliste til kunden.
Jeg har en tabel der indeholder de 296 kunder ved siden af.
Jeg kan godt lave det sådan at forespørgslen kommer og spørger mig om hvilken kunde der skal udskrives prisliste til. MEN....det jeg gerne vil kunne er at, Access selv slår op i min kundetabel, og så udskriver 1 prislite til hver af de 296 kunder. Prislisten skrives ud i en "PDF" fil og trykkeriet skal have 1 fil pr. prisliste - derfor dette!!!
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Men for at skrive 1 prisliste ud til hver kunde, ville jeg umiddelbart lave en rapport der er grupperet på et kundefelt. Derefter vil jeg i gruppefoden indsætte et sideskift.
Brug evt. Guiden Rapport, der tilbyder grupperinger.
mugs> Dette HAR jeg allerede lavet, og det fungerer også, MEN det danner jo én stor fil når jeg skriver den ud, uanset og det er til "PDF" eler til alm. print. Sidenummereringen går også helt galt.
Det skulle gerne fungere sådan at Access udskriver 1 rapport af gangen!!!!
Som jeg laver det er det noget intermistisk... Jeg ville starte med en forespørgsel som laver en tabel over unikke kundenumre. Derefter ville jeg lave via en form, en rutine noget i stil med
Dim rst As Recordset Dim kundenummer As String
Set rst = CurrentDb.OpenRecordset("SELECT [kundenummer] FROM [kundenummertabel] ")
While Not rst.EOF kundenummer = rst![kundenummertabel] DoCmd.OpenReport "rapportnavn", acViewNormal, "", "[Forespørgsel1]![kundenr]= kundenummer", acNormal rst.MoveNext Wend
Jeg kan ikke garantere for at dette virker lige umiddelbart, men noget i den retning... Du kan evt. starte procduren med at genskaber tabellen med unikke kundenumre, så du er sikker på, at den altid indeholder de rigtige.
Du opretter en formular. På den laver du en knap. Så klikker du på ikonet for at komme ind i kode-modulet. På On-click for knappen indsætter du koden ovenfor. Du skal bare ha' en tabel først der hedder kundenummertabel, med et felt der hedder kundenummer. Denne tabel indeholder så alle kundenumrene. Når så du klikker på knappen på din form/ formular, løber access alle posterne igennem og udskriver en rapport per kundenummer. Jeg kan prøve at lave et eksempel til dig, men jeg har desværre ikke tid før mandag aften. Er det noget der haster?
hcm> Tusind tak, for den meget udførlige forklaring. Jeg tror jeg udfra dette prøver mig lidt frem, og er fortrøstningsfuld. Nej, det haster ikke meget, så vi kan jo lige se tiden an på mandag, om jeg har fundet ud af det. Endnu engang tak!!!
Jamen selv tak da. God fornøjelse. Hvis du får problemer, er jeg som sagt tilbage mandag. Glem bare det med en ny tabel, du har selvfølgelig dine stamdata i en tabel allerede... Du kan evt at sætte en betingelse ind i din rapport, der gør at der ikke bliver udskrevet nogen liste, hvis der ikke er poster.
mugs> Jeg vil blot lige sige tak for dine fremsendte eksempler. Jeg er først lige mødt på arbejde igen, så jeg har ikke kigget på dem endnu, men regner med at få tid i løbet af dagen.
Mugs > Kan du sende en kopi til mig også, jeg skal faktisk lave noget meget tilsvarende, så kunne jeg måske få lidt inspiration fra dig også. Du kan sende til hcm@ofir.dk.
Undskyld jeg ikke har fået lukket spørgsmålet før nu!!!!
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.