nicks60610
MIS
This is what I want to do, update a datagrid where a user enters some data, and this is the update part:
Sub Update_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Update.Click
Dim dgi As DataGridItem
For Each dgi in DataGrid1.Items
'Read in the Primary Key Field
'Dim ID As Integer = Convert.ToInt32(DataGrid1.DataKeys(dgi.ItemIndex))
Dim SunderlandOnly As String = CType(dgi.FindControl("Sunderland Only"), TextBox).Text
Dim PcsInspected As String = CType(dgi.FindControl("Pcs Inspected"), TextBox).Text
Dim PcsDefective As String = CType(dgi.FindControl("Pcs Defective"), TextBox).Text
Dim PcsSold As String = CType(dgi.FindControl("Pcs Sold"), TextBox).Text
Dim ProductComplaints As String = CType(dgi.FindControl("Product Complaints"), TextBox).Text
Dim PcsSoldBF As String = CType(dgi.FindControl("Pcs Sold (Big Flats)"), TextBox).Text
Dim ProdCompBF As String = CType(dgi.FindControl("Product Complaint (Big Flats)"), TextBox).Text
'Issue an UPDATE statement...
Dim connectString As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Quality Metrics Database.mdb"
Dim conMetrics As OleDbConnection = New OleDbConnection(connectString)
conMetrics.Open()
Dim strUpdateQuality As String
Dim dcmdUpdateQuality = New OleDb.OleDbCommand(strUpdateQuality, conMetrics)
strUpdateQuality = "UPDATE [All Plants Summary Data] SET [Sunderland Only] = @Sunderland , [Pieces Inspected] = @PcsInsp, [Pieces Defective] = @PcsDef, [Pieces Sold] = @PcsSold, [Product Complaints] = @ProdComp, [Pieces Sold Big Flats] = @PcsSoldBF, [Product Complaints Big Flats] = @ProdCompBF where [Month] = '" & Session("Month") & "' and [Year] = '" & Session("Year") & "' and [Plant] = '" & Session("Plant") & "'"
'dcmdUpdateQuality.Parameters.Clear()
dcmdUpdateQuality.Parameters.Add("@Sunderland", SunderlandOnly)
dcmdUpdateQuality.Parameters.Add("@PcsInsp", PcsInspected)
dcmdUpdateQuality.Parameters.Add("@PcsDef", PcsDefective)
dcmdUpdateQuality.Parameters.Add("@PcsSold", PcsSold)
dcmdUpdateQuality.Parameters.Add("@ProdComp", ProductComplaints)
dcmdUpdateQuality.Parameters.Add("@PcsSoldBF", PcsSoldBF)
dcmdUpdateQuality.Parameters.Add("@ProdCompBF", ProdCompBF)
dcmdUpdateQuality.ExecuteNonQuery()
Next
End Sub
And this is the error I receive on this line:
dcmdUpdateQuality.Parameters.Add("@Sunderland", SunderlandOnly)
Object reference not set to an instance of an object
Does this mean that there is no data, i.e. it never retrieves any data from the database??
Sub Update_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Update.Click
Dim dgi As DataGridItem
For Each dgi in DataGrid1.Items
'Read in the Primary Key Field
'Dim ID As Integer = Convert.ToInt32(DataGrid1.DataKeys(dgi.ItemIndex))
Dim SunderlandOnly As String = CType(dgi.FindControl("Sunderland Only"), TextBox).Text
Dim PcsInspected As String = CType(dgi.FindControl("Pcs Inspected"), TextBox).Text
Dim PcsDefective As String = CType(dgi.FindControl("Pcs Defective"), TextBox).Text
Dim PcsSold As String = CType(dgi.FindControl("Pcs Sold"), TextBox).Text
Dim ProductComplaints As String = CType(dgi.FindControl("Product Complaints"), TextBox).Text
Dim PcsSoldBF As String = CType(dgi.FindControl("Pcs Sold (Big Flats)"), TextBox).Text
Dim ProdCompBF As String = CType(dgi.FindControl("Product Complaint (Big Flats)"), TextBox).Text
'Issue an UPDATE statement...
Dim connectString As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Quality Metrics Database.mdb"
Dim conMetrics As OleDbConnection = New OleDbConnection(connectString)
conMetrics.Open()
Dim strUpdateQuality As String
Dim dcmdUpdateQuality = New OleDb.OleDbCommand(strUpdateQuality, conMetrics)
strUpdateQuality = "UPDATE [All Plants Summary Data] SET [Sunderland Only] = @Sunderland , [Pieces Inspected] = @PcsInsp, [Pieces Defective] = @PcsDef, [Pieces Sold] = @PcsSold, [Product Complaints] = @ProdComp, [Pieces Sold Big Flats] = @PcsSoldBF, [Product Complaints Big Flats] = @ProdCompBF where [Month] = '" & Session("Month") & "' and [Year] = '" & Session("Year") & "' and [Plant] = '" & Session("Plant") & "'"
'dcmdUpdateQuality.Parameters.Clear()
dcmdUpdateQuality.Parameters.Add("@Sunderland", SunderlandOnly)
dcmdUpdateQuality.Parameters.Add("@PcsInsp", PcsInspected)
dcmdUpdateQuality.Parameters.Add("@PcsDef", PcsDefective)
dcmdUpdateQuality.Parameters.Add("@PcsSold", PcsSold)
dcmdUpdateQuality.Parameters.Add("@ProdComp", ProductComplaints)
dcmdUpdateQuality.Parameters.Add("@PcsSoldBF", PcsSoldBF)
dcmdUpdateQuality.Parameters.Add("@ProdCompBF", ProdCompBF)
dcmdUpdateQuality.ExecuteNonQuery()
Next
End Sub
And this is the error I receive on this line:
dcmdUpdateQuality.Parameters.Add("@Sunderland", SunderlandOnly)
Object reference not set to an instance of an object
Does this mean that there is no data, i.e. it never retrieves any data from the database??