I want to return an array from a function.
dt is a DataTable that is global
GetVantageData(x) calls the item number where x is the indexHTML Code:Dim dr As DataRow For x As Integer = 0 To adoc.GetUpperBound(0) dr = ds.Tables(0).NewRow() ' dr.Item(0) = GetRoot(adoc(x)) Dim abom() As String = GetVantageData(x) dr.Item(1) = abom(0) dr.Item(2) = abom(1) dr.Item(3) = abom(2) dr.Item(4) = abom(3) dr.Item(5) = abom(4) dr.Item(6) = abom(5) dt.Rows.Add(dr) Next dgvFBOM.DataSource = dt
I'm definitely missing something here. I am trying to return an array forn the sql statement, chich I can reference as abom() in the original source.HTML Code:Private Function GetVantageData(ByVal index As Integer) As Array sql = "SELECT tblPart.PartNum, tblPart.PartDesc, tblPart.TypeCode, tblPart.UnitPrice, tblPartRev.RevisionNum, tblPartRev.Approved, tblPartBin.Onhandqty " & _ "FROM SharePointProgress.dbo.tblPart " & _ "LEFT OUTER JOIN SharePointProgress.dbo.tblPartRev ON tblPart.PartNum = tblPartRev.PartNum " & _ "LEFT OUTER JOIN SharePointProgress.dbo.tblPartBin ON tblPart.PartNum = tblPartBin.PartNum " & _ "WHERE tblPartRev.Approved = 1 " & _ "AND tblPart.PartNum = '031770' " ' "AND tblPart.PartNum = '" & GetRoot(vb.Left(adoc(index), InStr(adoc(index), ".") + 7)) & "' " Dim cn_i As New SqlConnection(cn) cn_i.Open() Dim da As SqlDataAdapter = New SqlDataAdapter(sql, cn_i) Dim ds As New DataSet ds.Tables.Add(dt) da.Fill(dt) cn_i.Close() MessageBox.Show(dt.Columns.Count) Dim abom2() As String ReDim abom2(dt.Columns.Count - 1) For x As Integer = 0 To dt.Columns.Count - 1 abom2(x) = dt.Rows(0)(x) Next Return abom2 End Function
The ultuimate goal is to manually populate dt.
Thanks in advance...




Reply With Quote