My Procedure Code is as follows:
Code:
Private Sub PrintInvoices_Click()
If IsNull(Me.CboInvoiceNumberFrom) Or IsNull(Me.CboInvoiceNumberTo) Or (Me.CboInvoiceNumberFrom > Me.CboInvoiceNumberTo) Then
MsgBox "Enter Correct Criteria"
Exit Sub
End If
Dim CurrentInvoice As Integer
CurrentInvoice = Me.CboInvoiceNumberFrom
Do Until CurrentInvoice = CboInvoiceNumberTo + 1
If DSum("EX", "Orders", "InvoiceNumber=" & CurrentInvoice) > 0 Then
If DSum("Discount", "Orders", "InvoiceNumber=" & CurrentInvoice) > 0 Then
DoCmd.OpenReport "EXInvoiceReport", acViewPreview, , "InvoiceNumber=" & CurrentInvoice
DoCmd.OutputTo acOutputReport, "EXInvoiceReport", acFormatPDF, "C:\Users\User\Documents\CustomerInvoices\" & CurrentInvoice & ".pdf", False
DoCmd.PrintOut acPrintAll
DoCmd.Close acReport, "EXInvoiceReport"
Else
DoCmd.OpenReport "EXInvoiceReportNoDisc", acViewPreview, , "InvoiceNumber=" & CurrentInvoice
DoCmd.OutputTo acO, utputReport, "EXInvoiceReportNoDisc", acFormatPDF, "C:\Users\User\Documents\CustomerInvoices\" & CurrentInvoice & ".pdf", False
DoCmd.PrintOut acPrintAll
DoCmd.Close acReport, "EXInvoiceReportNoDisc"
End If
Else
If DSum("Discount", "Orders", "InvoiceNumber=" & CurrentInvoice) > 0 Then
DoCmd.OpenReport "InvoiceReport", acViewPreview, , "InvoiceNumber=" & CurrentInvoice
DoCmd.OutputTo acOutputReport, "InvoiceReport", acFormatPDF, "C:\Users\User\Documents\CustomerInvoices\" & CurrentInvoice & ".pdf", False
DoCmd.PrintOut acPrintAll
DoCmd.Close acReport, "InvoiceReport"
Else
DoCmd.OpenReport "InvoiceReportNoDisc", acViewPreview, , "InvoiceNumber=" & CurrentInvoice
DoCmd.OutputTo acOutputReport, "InvoiceReportNoDisc", acFormatPDF, "C:\Users\User\Documents\CustomerInvoices\" & CurrentInvoice & ".pdf", False
DoCmd.PrintOut acPrintAll
DoCmd.Close acReport, "InvoiceReportNoDisc"
End If
End If
CurrentInvoice = CurrentInvoice + 1
Loop
DoCmd.Close acForm, Me.Name
End Sub
I am trying to make pdf and printing at the same time without Previews for the whole range of invoices. Maybe you know of a cleaner way of doing this. Thank you for your help.