一维数组类型的值无法转换为字符串视觉 [英] value of type 1-dimensional array cannot be converted to string visual

查看:33
本文介绍了一维数组类型的值无法转换为字符串视觉的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在这个威胁中帮助我处理每一行(使用SqlDataReader vb.net 为每个创建一个)

In this threat help me with the each row ( Make a for each using SqlDataReader vb.net)

但是当我想保存数据时(在 GM.AsigDupla(Txtfecha.Text, cboPlanta0.SelectedValue, cboPlanta0.SelectedItem.Text, cboAlmacen.SelectedValue, cboAlmacen.SelectedItem.Text, mater, lot)

But when i wanna save the data ( on GM.AsigDupla(Txtfecha.Text, cboPlanta0.SelectedValue, cboPlanta0.SelectedItem.Text, cboAlmacen.SelectedValue, cboAlmacen.SelectedItem.Text, mater, lot)

数组和批次的变量显示错误:一维数组类型的值无法转换为字符串

the varibles od the arrarys mater and lot show the error : value of type 1-dimensional array cannot be converted to string

            Dim mater() As String
            Dim planta() As String
            Dim almacen() As String
            Dim lot() As String
            Dim cantidad() As String
            Dim cantadiat() As String
            Dim undad() As String
            Dim Cantidadc() As String
            Dim CantidadB() As String
            Dim Session1() As String
            Dim fecha() As String
            Dim RowCounter As Integer = 0
            RowCounter.ToString()




            Dim Con34 As New Data.SqlClient.SqlConnection
            Con34.ConnectionString = C.GetAppConfiguracion("Inventario", "ConnInventario")
            'Dim editCustQuery As String = "select Idmaterial , IdLote from s_RptInventarioSAP where idPlanta = '" & cboPlanta0.SelectedValue & "' and IdAlmacen = '" & cboAlmacen.SelectedValue & "'"
            Dim editCustQuery As String = "select * from dbo.s_RptInventarioSAP"
            Con34.Open()
            Dim CustCommand As New SqlCommand(editCustQuery, Con34)
            Dim sqladapter As SqlDataAdapter = New SqlDataAdapter(CustCommand)
            Dim tableresult As New DataTable(editCustQuery)

            sqladapter.Fill(tableresult)
            Con34.Close()
            For Each TableRow As DataRow In tableresult.Rows
                mater = tableresult.Rows.Item(RowCounter).Item(0)
                planta = tableresult.Rows.Item(RowCounter).Item(1)
                almacen = tableresult.Rows.Item(RowCounter).Item(2)
                lot = tableresult.Rows.Item(RowCounter).Item(3)
                cantidad = tableresult.Rows.Item(RowCounter).Item(4)
                cantadiat = tableresult.Rows.Item(RowCounter).Item(5)
                undad = tableresult.Rows.Item(RowCounter).Item(6)
                Cantidadc = tableresult.Rows.Item(RowCounter).Item(7)
                CantidadB = tableresult.Rows.Item(RowCounter).Item(8)
                Session1 = tableresult.Rows.Item(RowCounter).Item(9)
                fecha = tableresult.Rows.Item(RowCounter).Item(10)



                RowCounter = RowCounter + 1
            Next

            Dim resultado As String
            resultado = GM.AsigDupla(Txtfecha.Text, cboPlanta0.SelectedValue, cboPlanta0.SelectedItem.Text, cboAlmacen.SelectedValue, cboAlmacen.SelectedItem.Text, mater, lot)
            'i = i + 1
            With lbError0
                .Visible = True
                .Text = resultado
            End With


        Catch ex As Exception
            lbError0.Text = ex.Message

        End Try

    End If
End Sub

推荐答案

好的,我看到了几个错误.

Ok I see a couple errors.

        Dim mater() As String
        Dim planta() As String
        Dim almacen() As String
        Dim lot() As String
        Dim cantidad() As String
        Dim cantadiat() As String
        Dim undad() As String
        Dim Cantidadc() As String
        Dim CantidadB() As String
        Dim Session1() As String
        Dim fecha() As String
        Dim resultado() As String
        Dim RowCounter As Integer = 0




        Dim Con34 As New Data.SqlClient.SqlConnection
        Con34.ConnectionString = C.GetAppConfiguracion("Inventario", "ConnInventario")
        'Dim editCustQuery As String = "select Idmaterial , IdLote from s_RptInventarioSAP where idPlanta = '" & cboPlanta0.SelectedValue & "' and IdAlmacen = '" & cboAlmacen.SelectedValue & "'"
        Dim editCustQuery As String = "select * from dbo.s_RptInventarioSAP"
        Con34.Open()
        Dim CustCommand As New SqlCommand(editCustQuery, Con34)
        Dim sqladapter As SqlDataAdapter = New SqlDataAdapter(CustCommand)
        Dim tableresult As New DataTable(editCustQuery)

        sqladapter.Fill(tableresult)
        Con34.Close()
        For Each TableRow As DataRow In tableresult.Rows
            mater(RowCounter) = tableresult.Rows.Item(RowCounter).Item(0).toString
            planta(RowCounter) = tableresult.Rows.Item(RowCounter).Item(1).toString
            almacen(RowCounter) = tableresult.Rows.Item(RowCounter).Item(2).toString
            lot(RowCounter) = tableresult.Rows.Item(RowCounter).Item(3).toString
            cantidad(RowCounter) = tableresult.Rows.Item(RowCounter).Item(4).toString
            cantadiat(RowCounter) = tableresult.Rows.Item(RowCounter).Item(5).toString
            undad(RowCounter) = tableresult.Rows.Item(RowCounter).Item(6).toString
            Cantidadc(RowCounter) = tableresult.Rows.Item(RowCounter).Item(7).toString
            CantidadB(RowCounter) = tableresult.Rows.Item(RowCounter).Item(8).toString
            Session1(RowCounter) = tableresult.Rows.Item(RowCounter).Item(9).toString
            fecha(RowCounter) = tableresult.Rows.Item(RowCounter).Item(10).toString

            resultado(RowCounter) = GM.AsigDupla(Txtfecha.Text, cboPlanta0.SelectedValue, cboPlanta0.SelectedItem.Text, cboAlmacen.SelectedValue, cboAlmacen.SelectedItem.Text, mater(RowCounter), lot(RowCounter))

            RowCounter = RowCounter + 1
        Next



        'i = i + 1
        With lbError0
            .Visible = True
            .Text = resultado
        End With


    Catch ex As Exception
        lbError0.Text = ex.Message

    End Try

End If

结束子

好的,这应该可行,但我不明白您在我假设的文本框中显示结果.但这是诀窍.正如我在上一个线程中回答的那样,变量 mater 和 lot 是数组,您不能直接调用 mater 或 lot.您必须指定数组的哪个项目.通过我所做的修改,resultado 是另一个数组,因此您不能直接调用它,您必须指定项目 resultado().

Ok this should work but there is something I don't understand you are displaying the result in a textbox I presume. but here is the trick. As I answer on the previous thread, the variable mater and lot are arrays, you can not call mater or lot directly. You have to specify what item of the array. With the modifications I did, resultado is another array so you can not call it directly you have to specify the item resultado().

我需要更多信息,您将如何处理 resultado.

I need more information what you will do with resultado.

这篇关于一维数组类型的值无法转换为字符串视觉的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆