Hi there -
I am thoroughly frustrated with the reporting tool. I have been working on a voucher statement project for some time and experiencing that the reporting tools do not simple things you would think it would do. I have made design changes to reports to work around printing issues, however I find myself having other issues. Therefore, I am currently experiencing several issues and I will try to explain them as best I can.
To describe what the project entails, this is a simple reporting solution for printing credit vouchers.
I get a list of payment numbers to read and process a statement page, and credit voucher for each payment.
I am using a report book to add the reports as they are processed, so I can print them as a whole.
The sequencing of the entire report book should be as follows:
1 - Header Report (Displays general text)
2 - Credit Voucher Statement (A list of details that make up the voucher)
3 - Actual Credit Voucher (Single Page coupon)
NOTE: If there are multiple payment numbers, I print reports 2 and 3 in a loop, adding them to the report book as they are processed.
4 - Summary report (Shows all the credit vouchers that were printed and other summary information)
The reports print on a duplex printer, although I try to modify that setting depending on which report is printing.
Each report should start on a fresh sheet of paper (Which it does not currently do well.)
In the code (below), I loop through the payment numbers and pass the correct parameters to the reports.
However, when adding reports 2 and 3 to the report book, the first payment number gets repeated for the total number of payments listed.
When the summary report is printed, it too only prints the summary for the first record.
Even when I view the data and parameters being passed to the report, they are all correct.
I'm at my wits end with this project / product and looking for solutions immediately. There are other issues I have with the product that may come up through this dialog that may need to be worked out.
Below is the code that generates the reports and report book. Please help provide me a solution to printing these reports.
Regards,
Bob
I am thoroughly frustrated with the reporting tool. I have been working on a voucher statement project for some time and experiencing that the reporting tools do not simple things you would think it would do. I have made design changes to reports to work around printing issues, however I find myself having other issues. Therefore, I am currently experiencing several issues and I will try to explain them as best I can.
To describe what the project entails, this is a simple reporting solution for printing credit vouchers.
I get a list of payment numbers to read and process a statement page, and credit voucher for each payment.
I am using a report book to add the reports as they are processed, so I can print them as a whole.
The sequencing of the entire report book should be as follows:
1 - Header Report (Displays general text)
2 - Credit Voucher Statement (A list of details that make up the voucher)
3 - Actual Credit Voucher (Single Page coupon)
NOTE: If there are multiple payment numbers, I print reports 2 and 3 in a loop, adding them to the report book as they are processed.
4 - Summary report (Shows all the credit vouchers that were printed and other summary information)
The reports print on a duplex printer, although I try to modify that setting depending on which report is printing.
Each report should start on a fresh sheet of paper (Which it does not currently do well.)
In the code (below), I loop through the payment numbers and pass the correct parameters to the reports.
However, when adding reports 2 and 3 to the report book, the first payment number gets repeated for the total number of payments listed.
When the summary report is printed, it too only prints the summary for the first record.
Even when I view the data and parameters being passed to the report, they are all correct.
I'm at my wits end with this project / product and looking for solutions immediately. There are other issues I have with the product that may come up through this dialog that may need to be worked out.
Below is the code that generates the reports and report book. Please help provide me a solution to printing these reports.
Regards,
Bob
' Generate the reportsMe.Cursor = Cursors.WaitCursor' Initialize print settingsDim printerSettings As New System.Drawing.Printing.PrinterSettingsDim printerController As New System.Drawing.Printing.StandardPrintControllerDim reportSource As New InstanceReportSourceDim reportProcessor As New ReportProcessorreportProcessor.PrintController = printerController' Create the report book to add reportsDim reportBook As New ReportBookreportBook.DocumentName = "Credit Vouchers"' Print the report headerprinterSettings.Duplex = Printing.Duplex.SimplexDim rptHeader As New CreditVoucherReportLibrary.ReportTitlereportBook.Reports.Add(rptHeader)Dim c As Integer = 0Dim firstCV As String = ""Dim lastCV As String = ""Dim cn As New SqlConnection(My.Settings.OMSConnectionString)Using cn cn.Open() ' Get the list of voucher numbers to print Dim cmd As SqlCommand = New SqlCommand("Accounts_Payable.get_Credit_Vouchers_Lot_list", cn) cmd.CommandType = CommandType.StoredProcedure IIf(CreditVoucherTextBox.Text = "", Nothing, CreditVoucherTextBox.Text) cmd.Parameters.AddWithValue("@Year", YearComboBox.SelectedItem) cmd.Parameters.AddWithValue("@Month", PeriodComboBox.SelectedItem) cmd.Parameters.AddWithValue("@Payment_Number_Code", IIf(CreditVoucherTextBox.Text = "", Nothing, CreditVoucherTextBox.Text)) Try Dim r As SqlDataReader = cmd.ExecuteReader If r.HasRows Then While r.Read Dim rptVoucherStatement As New CreditVoucherReportLibrary.CV_Statement Dim rptVoucher As New CreditVoucherReportLibrary.CreditVoucher ' Print Credit Voucher Statement rptVoucherStatement.ReportParameters("YearPeriod").Value = YearComboBox.SelectedItem rptVoucherStatement.ReportParameters("MonthPeriod").Value = PeriodComboBox.SelectedItem rptVoucherStatement.ReportParameters("PaymentNumber").Value = Trim(r(0)) printerSettings.Duplex = Printing.Duplex.Horizontal ' Add the voucher statement to the report book Try reportBook.Reports.Add(rptVoucherStatement) Catch ex As Exception End Try ' Print Credit Voucher c += 1 rptVoucher.ReportParameters("YearPeriod").Value = YearComboBox.SelectedItem rptVoucher.ReportParameters("MonthPeriod").Value = PeriodComboBox.SelectedItem rptVoucher.ReportParameters("PaymentNumber").Value = Trim(r(0)) rptVoucher.ReportParameters("LastUpdatedBy").Value = "System" rptVoucher.ReportParameters("IsReprint").Value = False If c = 1 Then firstCV = Trim(r(0)) Else lastCV = Trim(r(0)) End If printerSettings.Duplex = Printing.Duplex.Simplex ' Add the voucher to the report book Try reportBook.Reports.Add(rptVoucher) Catch ex As Exception End Try End While End If Catch ex As Exception End TryEnd Using' Print the summary pageDim rptSummary As New CreditVoucherReportLibrary.CV_Summary_ReportTry Dim range As String = "" If c = 1 Then range = firstCV Else range = firstCV & " - " & lastCV End If rptSummary.ReportParameters("YearPeriod").Value = YearComboBox.SelectedItem rptSummary.ReportParameters("MonthPeriod").Value = PeriodComboBox.SelectedItem rptSummary.ReportParameters("PaymentNumber").Value = IIf(CreditVoucherTextBox.Text = "", Nothing, CreditVoucherTextBox.Text) rptSummary.ReportParameters("RangeOfVouchers").Value = range rptSummary.ReportParameters("NumberOfVouchers").Value = c printerSettings.Duplex = Printing.Duplex.Horizontal ' Add the summary to the report book reportBook.Reports.Add(rptSummary)Catch ex As ExceptionEnd Try' Print the report bookIf PrintPreviewCheckBox.Checked Then Dim dlg As New CreditVoucherPrintPreviewForm dlg.reportBook = reportBook dlg.ShowDialog()Else reportSource.ReportDocument = reportBook reportProcessor.PrintReport(reportSource, printerSettings)End If