请各位帮忙看下我的这个调用存储过程函数怎么返回不了值呢?所有的output都没有返回值
Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click
        Dim int1, int2, int3, int4 As Integer       
        use_procedure_CopyBomJobChangeSp("E", "PT06120071", "0", "", "", "", int1, int2, "0", int3, "", "", "", "")        
    End Sub    Function use_procedure_CopyBomJobChangeSp(ByVal FromCategory As Char, ByVal job As String, ByVal Suffix As Integer, ByVal PsNum As String, ByVal Item As String, ByVal ItemRev As String, ByVal StartOper As Integer, ByVal EndOper As Integer, ByVal CopyBom As Integer, ByVal CoProductMix As Integer, ByVal Model As String, ByVal ConfigId As String, ByVal ConfigGid As String, ByVal Infobar As String)        
        Dim conn0 As New SqlConnection
        conn0.ConnectionString = System.Configuration.ConfigurationSettings.AppSettings("Sqlconn")
        conn0.Open()
        Dim da0 As New SqlDataAdapter
        da0.SelectCommand = New SqlCommand
        da0.SelectCommand.Connection = conn0
        da0.SelectCommand.CommandText = "CopyBomJobChangeSp"
        da0.SelectCommand.CommandType = CommandType.StoredProcedure
        ''''''''''''''''''''''''
        'give a input varibes'''
        '  @FromCategory   NVARCHAR(30)
        Dim inparam_d1 As New SqlParameter("@FromCategory", NVarChar)
        inparam_d1.Direction = ParameterDirection.Input
        inparam_d1.Value = FromCategory
        da0.SelectCommand.Parameters.Add(inparam_d1)
        ''''''''''''''''''''''''''''
        ''''got a output varibes''''
        ', @Job       JobType           OUTPUT
        Dim outparam_d1 As New SqlParameter("@Job", NVarChar)
        outparam_d1.Direction = ParameterDirection.InputOutput
        outparam_d1.Value = job
        da0.SelectCommand.Parameters.Add(outparam_d1)
        ', @Suffix         SuffixType        OUTPUT
        Dim outparam_d2 As New SqlParameter("@Suffix", Int)
        outparam_d2.Direction = ParameterDirection.InputOutput
        outparam_d2.Value = Suffix
        da0.SelectCommand.Parameters.Add(outparam_d2)
        ', @PsNum          PsNumType         OUTPUT
        Dim outparam_d3 As New SqlParameter("@PsNum", NVarChar)
        outparam_d3.Direction = ParameterDirection.InputOutput
        outparam_d3.Value = PsNum
        da0.SelectCommand.Parameters.Add(outparam_d3)
        ', @Item           ItemType          OUTPUT
        Dim outparam_d4 As New SqlParameter("@Item", NVarChar)
        outparam_d4.Direction = ParameterDirection.InputOutput
        outparam_d4.Value = Item
        da0.SelectCommand.Parameters.Add(outparam_d4)
        ', @ItemRev        RevisionType      OUTPUT
        Dim outparam_d5 As New SqlParameter("@ItemRev", NVarChar)
        outparam_d5.Direction = ParameterDirection.InputOutput
        outparam_d5.Value = ItemRev
        da0.SelectCommand.Parameters.Add(outparam_d5)
        ', @StartOper      OperNumType       OUTPUT
        Dim outparam_d6 As New SqlParameter("@StartOper", Int)
        outparam_d6.Direction = ParameterDirection.InputOutput
        If StartOper = 0 Then
            outparam_d6.Value = Convert.DBNull
        Else
            outparam_d6.Value = StartOper
        End If
        da0.SelectCommand.Parameters.Add(outparam_d6)
        ', @EndOper        OperNumType       OUTPUT
        Dim outparam_d7 As New SqlParameter("@EndOper", Int)
        outparam_d7.Direction = ParameterDirection.InputOutput
        If EndOper = 0 Then
            outparam_d7.Value = Convert.DBNull
        Else
            outparam_d7.Value = EndOper
        End If
        da0.SelectCommand.Parameters.Add(outparam_d7)
        ', @CopyBom        ListYesNoType     OUTPUT
        Dim outparam_d8 As New SqlParameter("@CopyBom", Int)
        outparam_d8.Direction = ParameterDirection.InputOutput
        outparam_d8.Value = CopyBom
        da0.SelectCommand.Parameters.Add(outparam_d8)
        ', @CoProductMix   ListYesNoType    OUTPUT
        Dim outparam_d9 As New SqlParameter("@CoProductMix", Int)
        outparam_d9.Direction = ParameterDirection.InputOutput
        outparam_d9.Value = CoProductMix
        da0.SelectCommand.Parameters.Add(outparam_d9)
        ', @Model          ConfigModelType   OUTPUT
        Dim outparam_d10 As New SqlParameter("@Model", NVarChar)
        outparam_d10.Direction = ParameterDirection.InputOutput
        outparam_d10.Value = Model
        da0.SelectCommand.Parameters.Add(outparam_d10)
        ', @ConfigId       ConfigIdType      OUTPUT
        Dim outparam_d11 As New SqlParameter("@ConfigId", NVarChar)
        outparam_d11.Direction = ParameterDirection.InputOutput
        outparam_d11.Value = ConfigId
        da0.SelectCommand.Parameters.Add(outparam_d11)
        ', @ConfigGid      ConfigGidType     OUTPUT
        Dim outparam_d12 As New SqlParameter("@ConfigGid", NVarChar)
        outparam_d12.Direction = ParameterDirection.InputOutput
        outparam_d12.Value = ConfigGid
        da0.SelectCommand.Parameters.Add(outparam_d12)
        ', @Infobar    Infobar
        Dim inparam_d2 As New SqlParameter("@Infobar", NVarChar)
        inparam_d2.Direction = ParameterDirection.InputOutput
        inparam_d2.Value = Infobar
        da0.SelectCommand.Parameters.Add(inparam_d2)        da0.SelectCommand.ExecuteNonQuery()
        Dim Job_0 As String = outparam_d1.Value.ToString
        Dim Suffix_0 As String = outparam_d2.Value.ToString
        Dim PsNum_0 As String = outparam_d3.Value.ToString
        Dim Item_0 As String = outparam_d4.Value.ToString
        Dim ItemRev_0 As String = outparam_d5.Value.ToString
        Dim StartOper_0 As String = outparam_d6.Value.ToString
        Dim EndOper_0 As String = outparam_d7.Value.ToString
        Dim CopyBom_0 As String = outparam_d8.Value.ToString
        Dim CoProductMix_0 As String = outparam_d9.Value.ToString
        Dim Model_0 As String = outparam_d10.Value.ToString
        Dim ConfigId_0 As String = outparam_d11.Value.ToString
        Dim ConfigGid_0 As String = outparam_d12.Value.ToString
        Dim Infobar_0 As String = inparam_d2.Value.ToString
        conn0.Close()
        conn0.Dispose()
        da0.Dispose()
    End Function

解决方案 »

  1.   

    VB的,放在VB区会的人应该多点..
      

  2.   

    换成把InputOutput换成output类型行不行?
      

  3.   

    最好把InputOutput拆分成Input和Output两个参数来用.在以前的版本中好像InputOutput有问题.
      

  4.   

    Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click
            Dim int1, int2, int3, int4 As Integer       
            use_procedure_CopyBomJobChangeSp("E", "PT06120071", "0", "", "", "", int1, int2, "0", int3, "", "", "", "")        
        End Sub
    这里面的use_procedure_CopyBomJobChangeSp("E", "PT06120071", "0", "", "", "", int1, int2, "0", int3, "", "", "", "") 应该用变量