как установить значение sql для параметра Crystal Report с помощью vb.net - PullRequest
0 голосов
/ 06 июля 2018

Как передать значение sql в параметр Crystal Report? Я застрял здесь около недели. Пожалуйста, помогите мне спасибо всем.

Dim header As New SqlCommand("SELECT SalesOrder.salesorder_id, SalesOrder.sales_code, Delivery.driver_code, SalesOrder.invoice_dt, Delivery.remark, SalesOrder.customer_icno, Delivery.c_name, Delivery.c_hpno, Delivery.address FROM SalesOrder,Delivery WHERE SalesOrder.salesorder_id = Delivery.salesorder_id AND SalesOrder.salesorder_id=" & checkInvoiceReceiptSalesOrderNo.Text, conn)
Using readerObj As SqlClient.SqlDataReader = header.ExecuteReader
    While readerObj.Read
        Dim paramFields As New ParameterFields()
        Dim paramField As New ParameterField()
        Dim discreteVal As New ParameterDiscreteValue()

        paramField.ParameterFieldName = "son"
        Dim str As String
        str = readerObj("salesorder_id").ToString()
        discreteVal.Value = str
        paramField.CurrentValues.Add(discreteVal)
        paramFields.Add(paramField)
    End While
End Using

1 Ответ

0 голосов
/ 08 июля 2018

Вы этот код. Вы можете передать значение параметра. Установите здесь значение ParameterDiscreteValue.Value = "Your Parameter Value" и укажите здесь имя параметра ParameterFieldDefinition = ParameterFieldDefinitions("Parameter Name of Crystal Report")

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

    Dim reportViewer As ReportViewer = New ReportViewer()
    Dim cryRpt As ReportDocument = New ReportDocument()
    cryRpt = New CrystalReport1()
    Dim ParameterFieldDefinitions As ParameterFieldDefinitions
    Dim ParameterFieldDefinition As ParameterFieldDefinition
    Dim ParameterValues As ParameterValues = New ParameterValues()
    Dim ParameterDiscreteValue As ParameterDiscreteValue = New ParameterDiscreteValue()
    ParameterDiscreteValue.Value = "Your Parameter Value"
    ParameterFieldDefinitions = cryRpt.DataDefinition.ParameterFields
    ParameterFieldDefinition = ParameterFieldDefinitions("Parameter Name of Crystal Report")
    ParameterValues = ParameterFieldDefinition.CurrentValues
    ParameterValues.Clear()
    ParameterValues.Add(ParameterDiscreteValue)
    ParameterFieldDefinition.ApplyCurrentValues(ParameterValues)
    reportViewer.crystalReportViewer1.ReportSource = cryRpt
    reportViewer.crystalReportViewer1.Refresh()
    reportViewer.ShowDialog()

End Sub
...