Printen lukt wel maar ik wil ook mailen....

  • Onderwerp starter Onderwerp starter NvBgm
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

NvBgm

Gebruiker
Lid geworden
15 okt 2004
Berichten
19
Hallo,

Al geruime tijd gebruik ik een factuurprogramma waar ik uiteraard een factuur mee kan maken en uitprinten.
Daarnaast kan ik een herinnering printen een pakbon en een adreslabel.
Omdat ik ook graag deze 4 rechtstreeks wou mailen ben ik een aan de slag gegaan om dit voor elkaar te krijgen.
Tot op dit moment kan ik de factuur en de herinnering mailen.
Alleen het lukt mij niet om de pakbon en het label via de mail te versturen.
Bij deze word wel een pdf gemaakt maar dan van alle facturen en/of alle adressen die in de database staan.
Onderstaand de gebeurtenisprocedure die ik aan de desbetreffende knoppen heb gekoppeld.
Wat doe ik fout ?

Deze werken goed:

Code:
Private Sub Knop244_Click()
'Pakbon printen

SendKeys "{f9}"
 RunCommand acCmdSaveRecord
    stLinkCriteria = "[factuurnr]=" & Me![Factuurnr]
    stDocName = "pakbongegevens"
  DoCmd.OpenReport stDocName, , , stLinkCriteria
End Sub

Code:
Private Sub Knop246_Click()
'Label printen

SendKeys "{f9}"
 RunCommand acCmdSaveRecord
    stLinkCriteria = "[debnummer]=" & Me![debnr]
    stDocName = "labeladres"
  DoCmd.OpenReport stDocName, , , stLinkCriteria
End Sub

Deze maken wel een pdf aan maar met meerdere records:

Code:
Private Sub Knop252_Click()
'Label mailen

SendKeys "{f9}"
 RunCommand acCmdSaveRecord
    debnummer = Me.debnr
    blRet = ConvertReportToPDF("labeladres", vbNullString, "C:\facturering\PDF\Labels\Factuur" & Me.debnr & "-label.pdf", , True, 0, , "", 0, 0)
End Sub

Code:
Private Sub Knop253_Click()
'Pakbon mailen

SendKeys "{f9}"
 RunCommand acCmdSaveRecord
    factuurnummer = Me.Factuurnr
    blRet = ConvertReportToPDF("pakbongegevens", vbNullString, "C:\facturering\PDF\Factuur" & Me.Factuurnr & "-pakbon.pdf", , True, 0, , "", 0, 0)
End Sub
 
Laatst bewerkt:
Kun je beginnen met je code op te maken met de CODE knop? We houden draadjes graag leesbaar :)
 
Zo te zien gebruik je een functie om de pdf te maken (ConvertReportToPDF). En díe code zit er nu net weer niet bij, dus daar kunnen we verder weinig van zeggen. Overigens verbaas ik me hogelijk over deze regels:
Code:
SendKeys "{f9}"
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
Welke Access versie gebruik je? Access 97?
Je kunt met één opdracht (en dan ben je gelijk van die oh zo riskante SendKeys af) volstaan:
Code:
    RunCommand acCmdSaveRecord
 
Sorry, ik had te veel haast denk ik heb mijn bericht aangepast en ook RunCommand acCmdSaveRecord ingevoerd.
Ik gebruik Acces 2007 en denk dat die regels ontstaan zijn in Acces 97 dat zou kunnen programma is van 2009
De functie om een PDF te maken werkt goed dus lijkt mij daar het probleem niet te liggen.
Waarom print hij wel 1 adres en bij het maken van een pdf mijn hele adressen bestand..
 
Laatst bewerkt:
Het antwoord heb ik eigenlijk al gegeven, maar hier voor de duidelijkheid: je printopdrachten doe je met eigen functionaliteit van Access (DoCmd.OpenReport met filter) terwijl je voor je PDF bestnad een eigen functie gebruikt. Zolang ik die functie niet kan zien, weet ik niet wat-ie fout doet. Maar dat hij niet goed werkt, lijkt mij duidelijk :)
 
Pakbon mailen werkt en met bovenstaande code dus daar zit de fout niet.
De fout zat in het rapport vandaar.

Ik gebruik voor het converteren naar pdf de module van Stephen Lebans

Misschien wel bekend op dit forum.

Nu eens kijken of dat ook het geval is bij het label printen.


Om deze hier te plaatsen is wel wat veel van het goede denk ik.
 
Dan zou ik zeggen: een kopietje van je db :). Overigens is de vraag nog wel: waarom gebruik je de code van Lebans nog? Met 2007 kun je (met de extra add-in) toch ook pdf-jes maken? Die zijn ook van een behoorlijk betere kwaliteit.
 
Ok het lukt mij niet om het voor elkaar te krijgen.
Ik denk dat ik het hier eerst maar bij laat.
Het uitprinten lukt prima dus dan maar op papier en geen mailtje.

Waaropm ik de Leban code gebruik komt omdat het programma jaren geleden geschreven is door iemand die dat toen nodig vond.
En om nu alles te veranderen gaat mij te ver zeker omdat ik maar 1 button wil toevoegen waar ik een pdf van het raport kan maken.

Ja rapport maken wil wel maar hij print alle records en dat word wat te veel.

En daarbij als ik de printknop gebruik doet hij het prima lijkt mij een klein probleem maar te groot voor mij. haha
bedankt in ieder geval..
 
Ja rapport maken wil wel maar hij print alle records en dat word wat te veel.
Dat komt omdat je het rapport dan verkeerd gebruikt. Een rapport openen met een Filter laat alleen het geselecteerde record zien. Hetzelfde rapport gelijk afdrukken drukt het hele rapport af. Om het geselecteerde record af te drukken kun je dus beter de Recordbron van het rapport aanpassen met het filter. Door bijvoorbeeld de SQL van de onderliggende query aan te passen met de QueryDefs collectie.
 
Misschien kan ik je beter de hele poespas via de mail toesturen.
Denk dat ik te weinig ondergrond heb om zo diep te wroeten.
 
Opgelost.........

Niet door toedoen van dit forum helaas.....

Toch bedankt voor het proberen.....

(niet kwaad bedoeld hoor)
 
Laatst bewerkt:
Als je op 13-6 (een kopie van) de db had meegepost, had je ongetwijfeld sneller antwoord gehad. Zonder db kunnen we nu eenmaal niet zo veel. Anders dan in algemene termen aangeven hoe je het kan oplossen. Als je dat niet doet, dan moet je niet gek opkijken als mensen verder niet reageren. 't Is in ieder geval geen onwil denk ik van de helpers. Die het allemaal onbetaald in hun eigen tijd doen, voor het geval je dat niet wist :). Kortom: als je een vraag hebt, en de spullen goed aanlevert, is de animo om er in te duiken een stuk groter.
En aangezien een forum ook is bedoeld als naslag voor mensen die hetzelfde probleem hebben, is het wel zo netjes om niet te volstaan met "Opgelost..." maar ook de gevonden oplossing te posten!
 
Ben ik met je eens wat je schrijft.
Maar om gelijk alles hier neer te zetten is te gemakkelijk denk ik.
je wilt toch ook dingen begrijpen en zelf oplossen.

De oplossing was trouwens heel eenvoudig.
Heb alleen maar in het rapport onder recordbron een criteria "[Forms]![factuurgegevens]![debnr]" moeten toevoegen en zie daar hij selecteert nu op klantnummer.

Het werkt nu zoals het verwacht word al vind ik wel dat het veel beter kan denk ik gezien veel dubbele rapporten enz enz.
Alleen om dat allemaal op te schonen denk ik niet dat mijn kennis ver genoeg reikt.

Maar wie weet is er nog iemand bereid om het gehele programma eens door te spitten...
In ieder geval heb ik toch wel weer iets geleerd en ook al heeft het misschien niet de schoonheidsprijs het werkt wel...

Nogmaals mijn dank..
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan