Access rapport opslaan als pdf in folder

Status
Niet open voor verdere reacties.

wielh01

Gebruiker
Lid geworden
10 aug 2008
Berichten
21
Ik weet dat het mogelijk is om een access rapport /of formulier met een klik op knop in een formulier op te slaan onder vooraf geformatteerde naam, bijv donateurnummer-datuminkomend-artikelnaam".pdf".

Maar kan me iemand zeggen of het mogelijk is om bij een combobox after update op partijnummer om een rapport te openen en dan al gelijk op te slaan in een folder als pdf.

Mijn gevoel zegt me dat dit een probleem wordt want ik heb dit al geprobeerd en toen meldde programma dat dit niet kon op te slaan als pdf omdat dit niet gelijktijdig kon bij bijv openen of sluiten van rapport/formulier.

En hoe is het dan om met een timer een geopend rapport na bijvoorbeeld een seconde eenmalig op te slaan als rapport geopend wordt/is.

Ik wil namelijk bereiken dat van alle inkomende goederen bij voedselbank een bon wordt gemaakt op A4 formaat zodat het duidelijk wordt wat er precies op een pallet op een stelling zit zoals ThT datum, aantal (resterende) stuks, het gewicht per stuk en totaalgewicht (voor ept pallet truck en draagkracht stellingen).
 
In detail weet ik het niet, maar ik zou denken aan een print-commando naar een virtuele printer Print-to-PDF
 
Dat kan makkelijk, maar post vooral een voorbeeldje, dan kunnen we die voor jou noodzakelijke code wat makkelijker maken.
 
Misschien zit de oplossing van jouw probleem in de code die ik meestuurde met mijn vraag ivm het opslaan van een rapport in docx formaat
GR
JP
 
Ik wil namelijk bereiken dat van alle inkomende goederen bij voedselbank een bon wordt gemaakt op A4 formaat
Het zou fijn zijn als TS nog een keer antwoord geeft op de reacties. In afwachting daarvan nog een extra vraag: waarom wil je überhaupt dat het rapport geopend wordt? Ik zie daar de meerwaarde niet van. Je kunt een rapport keurig exporteren a.d.h.v. een gebeurtenis (tip: gebruik OnClick, en niet AfterUpdate) en dat daarna automatisch laten openen. Mocht je dat willen. Er is geen enkele reden om het rapport zelf óók nog te openen. Tenzij ik de vraag verkeerd begrijp natuurlijk.
 
Beste helpmijers

Onderstaand code is wat chaotisch, maar het werkt.
Ik moet alleen nog wat code verwijderen, want ik had per abuis ipv reports report gebruikt.

Ik krijg nu de gegevens van inkomende goederen in een combobox te staan en als ik dan gegevens selecteer en enter dan wordt inderdaad het rapport geopend, misschien hoeft dit niet, maar het zij zo. En dan wordt er een kopie naar folder gestuurd en hier overschreven omdat het dezelfde naam heeft. Waarschijnlijk zou er een extra bestand naar de folder gaan als ik er een tijd aan koppel.

Maar in ieder geval heb ik bereikt wat ik wilde, nl het vermijden van een knop om e.e.a. te activeren.

Ik had het formulier zo gemaakt dat ik niet alleen een bon voor hele zending op a4 afdrukt, maar hetzelfde formulier gebruik voor het maken van kleine produktetiketten in aantallen 16 en 32 op een etiket vel van 16 stuks.


Bedankt voor jullie aandacht. Ik zal de vraag afmelden. Of zal ik eventuele reacties afwachten.

Groet
Wiel

Private Sub Tekst0_AfterUpdate()
''Dim stuks As Integer
''stuks = Tekst17.Value
Dim strNav As String
Dim strPath As String
Dim strMess As String
Dim Tekst As String
Dim Tekst1 As String
Dim Tekst2 As String
Dim strDocname As String
Dim strDocname1 As String

''Dim strdocname As String
On Error Resume Next

strDocname = "Adresetiketten qryEtiketten1Portrait"
strDocname1 = "frmAdresetiketten qryEtiketten1Portrait"
''strWhere = "[AuftragserteilungID]=" & Forms![frm_main]![Child1].Form![AuftragserteilungID]

strPath = "S:\PARTIJEN"
Tekst = [Forms]![frmEtikettenWerklijst]![Tekst0]
Tekst1 = [Reports]![Adresetiketten qryEtiketten1Portrait]![LogWerk]
Tekst2 = [Reports]![Adresetiketten qryEtiketten1Portrait]![WerkInslag]
Tekst3 = [Reports]![Adresetiketten qryEtiketten1Portrait]![VrdAfz]
If strPath = "" Then Exit Sub
'Check path
Debug.Print "Path = '" & strPath & "'"

strNav = strPath & [LogWerk] & ".pdf"

If Tekst10.Value = 1 Then

If Tekst19.Value = "Landscape" Then

DoCmd.OpenReport "Adresetiketten qryEtiketten1Landscape", acViewPreview

Else



''If Not Dir(strNav) = "" Then
'' strMess = "File " & Chr(13) & "'" & strNav & "'" & Chr(13) & _
'' "already exists" & Chr(13) & Chr(13) & _
'' "Do You want to overwrite this file?"
'' If MsgBox(strMess, vbYesNo + vbQuestion + vbDefaultButton2, "File Exists") = vbNo Then Exit Sub
'' Kill strNav
''End If

DoCmd.OpenReport strDocname, acViewPreview
DoCmd.OpenForm strDocname1, acViewPreview

DoCmd.OutputTo acOutputReport, strDocname, acFormatPDF, "S:\PARTIJEN" & "Partij" & [Reports]![Adresetiketten qryEtiketten1Portrait]![LogWerk] _
& "DatumIn" & [Reports]![Adresetiketten qryEtiketten1Portrait]![WerkInslag] _
& "Relatie" & [Reports]![Adresetiketten qryEtiketten1Portrait]![VrdAfz] & ".pdf", False
''DoCmd.Close acReport, strdocname

End If

Else
If Tekst10.Value = 16 Then
DoCmd.OpenReport "Adresetiketten qryEtiketten16", acViewPreview
''DoCmd.PrintOut acSelection, 1, 1, , stuks
''DoCmd.RunCommand acCmdPrintPreview
Else

If Tekst10.Value = 32 Then

DoCmd.OpenReport "Adresetiketten qryEtiketten32", acViewPreview


End If
End If
End If



End Sub
 
Om te voorkomen dat we allemaal een muisgrijs krijgen van het scrollen: zou je de code willen opmaken met de CODE tag? Die moet je in 12 jaar lid van HelpMij een keer eerder zijn tegengekomen :).
Dan wil ik daarna wel even naar je code kijken.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan