Avatar billede spicegirls Nybegynder
16. februar 2007 - 15:06 Der er 7 kommentarer og
1 løsning

Automatisk genereret filnavn ved udskrift til pdf basis posten

Jeg bruger en Access97-database, hvor jeg opretter et rapport-preview af en ordre. Ordrenummeret er bare et ID baseret på autonummer. Previewet ser sådan ud:

  Dim stDocName As String
    stDocName = "Rpt Ordre"
    DoCmd.OpenReport stDocName, acPreview, , "[SalgOrdreID]=" & Me![SalgOrdreID] & ""

Herefter vil jeg gerne udskrive den til pdf. Jeg har Distiller 5.0, som jeg har valgt som standardprinter.

Når jeg vælger udskriv, foreslås filnavnet som "Rpt Ordre" i den sti, hvor jeg sidst har gemt noget.

Spørgmålene er:

1) Hvordan får jeg Access97 til at bruge [ordrenummer]+[kundekategori] som filnavn?
2) Hvordan får jeg Access97 til at vælge stien d:\ordrer\[ordrenummer]?

Sådan at forstå:
Ordren 123_forhandler skal gemmes som
d:\ordrer\123_forhandler

Det er muligvis banalt, men jeg kan sgutte gennemskue det. Nogen, der kan hjælpe?
Avatar billede Slettet bruger
18. februar 2007 - 02:22 #1
Hvis du indsætter kriterien forms!NavnPåDinFormular!salgordreid i rapporten, så når man åbner den, så vil den åbne på den rigtige, som du gør ved hjælp af OpenReport kommandoen. Herefter kan man (måske, jeg har ikke distiller på denne pc) prøve denne fremgangsmåde:

DoCmd.OutputTo acReport, stDocName, , "d:\ordrer\" & me.ordrenummer & "_" & me.kundekategori & ".pdf"

Det kræver at når den promtes, at der så er mulighed for at gemme som pdf!~)

Jeg har brugt fremgangsmåden med snapshots og rich...

DoCmd.OutputTo acReport, stDocName, acFormatSNP, "d:\ordrer\" & me.ordrenummer & "_" & me.kundekategori & ".snp"
DoCmd.OutputTo acReport, stDocName, acFormatRTF, "d:\ordrer\" & me.ordrenummer & "_" & me.kundekategori & ".rtf"
Avatar billede hugopedersen Nybegynder
18. februar 2007 - 13:23 #2
Access gør efter mine erfaringer altid det at når en rapport udskrives til PDF (eller andre formater) så benytter den rapportens 'Caption' som filnavn. Det jeg plejer at gøre er at jeg før udskrift lige ændrer rapportens 'Caption' til det filnavn jeg vil bruge. Så passer det altid når rapporten gemmes.
Placeringen er straks lidt mere tricky da det jo nok er noget din destiller bestemmer, men måske kan du ændre CurDir og så være heldig.
Avatar billede spicegirls Nybegynder
19. februar 2007 - 17:15 #3
Tja, jeg kan nu stadig ikke få det til at funke.
Jeg har andetsteds på eksperten.dk set Mugs forslag til ændrings af rapportnavnet som følger:

DoCmd.OpenReport "rpt1", acViewPreview, "", "", acNormal
Reports!rpt1.Caption = "Et eller andet"

Men hvor pokker skal det sættes ind henne?

Håber på hjælp - jeg tror, jeg trænger...
Avatar billede hugopedersen Nybegynder
19. februar 2007 - 21:11 #4
Dim strReport_Name As String

strReport_Name = "Rpt Ordre"
DoCmd.OpenReport strReport_Name, acViewDesign
Reports(strReport_Name).Caption = "Min rapport caption = filnavn når gemmes"
DoCmd.Close acReport, strReport_Name, acSaveYes
DoCmd.OpenReport strReport_Name, acNormal, , "[SalgOrdreID]=" & Me![SalgOrdreID] & ""

Udskift din kode med ovenstående, så tror jeg det virker.
Avatar billede spicegirls Nybegynder
19. februar 2007 - 21:53 #5
Lige prik nøjagtigt! Så virker det - i hvert fald navngivningen af filen! Hugopedersen, mange tak for hjælpen, det var super. Hvordan giver jeg dig lige pointene?
Avatar billede hugopedersen Nybegynder
19. februar 2007 - 22:07 #6
Ved at acceptere mit svar :-)
Avatar billede spicegirls Nybegynder
20. februar 2007 - 06:35 #7
Hermed gjort. Mange tak for hjælpen!
Avatar billede hugopedersen Nybegynder
20. februar 2007 - 09:38 #8
Velbekom - skulle det være en anden gang.
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester