У меня возникают проблемы с службами отчетности, используя мой proc, который использует временные таблицы. Итак, есть ли способ передать значения из таблицы данных? Я могу вызвать свой proc раньше, чтобы построить таблицу данных, а затем я хочу передать в таблицу как набор данных. как это сделать?Службы Reporting Services Pass In Dataset
0
A
ответ
0
я решил мою проблему следующим блоком кода. также обратите внимание, что службам отчетов не нравятся временные таблицы в procs. Насколько я понимаю, это известная проблема, поэтому вышеупомянутое решение не сработает.
Private Sub Build_Invoice_Report(ByVal Invoice_Number As Long)
Try
Dim Report As String = "Weight.Report2.rdlc"
Dim Bill_Name As String = "US PIPE"
Dim Bill_Address_1 As String = "2023 ST. Louis Ave"
Dim Bill_Address_2 As String = "Bessemer, AL, 35020"
With Me.Report_Viewer.LocalReport
.ReportEmbeddedResource = Report
End With
dt = DataHelperFunctions.GetInvoiceReport(Invoice_Number, Bill_Name, Bill_Address_1, Bill_Address_2)
Get_Invoice_ReportBindingSource.DataSource = dt
'Build Variables
Commodity = CStr(dt.Rows(0)("Commodity"))
Vendor = CStr(dt.Rows(0)("Vendor_Name"))
InvoiceStartDate = CStr(dt.Rows(0)("Start_Date"))
InvoiceEndDate = CStr(dt.Rows(0)("End_Date"))
Catch ex As Exception
Dim methodName = CStr(System.Reflection.MethodBase.GetCurrentMethod().Name)
Dim ClassName = CStr(Me.GetType().Name)
DataHelperFunctions.ReportException(methodName, ClassName, CStr(ex.ToString), CStr(System.DateTime.Now))
End Try
End Sub
0
Выберите все строки в таблице темп в качестве окончательного заявления в хранимой прок:
SELECT * FROM @TempTable