Visual Basic.NET - Problema al grabar grilla

   
Vista:

Problema al grabar grilla

Publicado por Pinky (104 intervenciones) el 08/09/2010 03:43:47
Hola amigos del foro mi consulta es la siguiente, llamo los datos de una tabla ya grabados con anterioridad a través de una grilla en otra pantalla, la cual edito los datos en una caja de texto determinadas y agregadas en otra grilla con más datos ingresados, la segunda grilla que es nueva en datos no hay problemas al grabar, pero la primera grilla que mencione anteriormente me manda a grabar en la misma tabla, es decir con el nombre que la llame antes, la cual debe grabarse con otro nombre de tabla, favor de ayudarme, desde ya muchas gracias.

y este el codigo que utilizo para llamar los datos de la tabla presupuesto:
Sub llenar_grilla(Optional ByVal opcion As String = "")
Dim valor As String
If opcion = "" Then
If CMBPATENTE.Text = "---" Then
valor = CMBPATENTE1.Text
Else
If TXTITEM.Text <> "" Then
valor = TXTITEM.Text
Else
valor = CMBPATENTE.SelectedValue
End If
End If
Else
valor = opcion
End If

Try
da = New Data.SqlClient.SqlDataAdapter("Select * From Presupuesto2 where Patente_Vehiculo = '" + valor.ToString + "' ", conn)
da.MissingSchemaAction = MissingSchemaAction.AddWithKey
Dim builder As Data.SqlClient.SqlCommandBuilder = New SqlClient.SqlCommandBuilder(da)
Dim ds As New DataSet
da.Fill(ds, "Grilla")
Dim vista As DataView = New DataView(ds.Tables("Grilla"), " ", "N_Filas asc", DataViewRowState.CurrentRows)
Grilla.DataSource = vista
Grilla.DataBind()
Session.Add("tabla", ds)
Session.Add("cmd", builder)
Catch ex As Data.SqlClient.SqlException
MsgBox("Error:" & vbCrLf & ex.Message, MsgBoxStyle.Critical, "FVJ")
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
y este es el código que utiizo para grbar los datos de la grilla en la tabla repuestos1:
Sub Graba()
Dim ds As DataSet
ds = Session("tabla")
Dim builder As SqlCommandBuilder
builder = Session("cmd")
Dim sqladd As New SqlCommand
sqladd = builder.GetInsertCommand()
sqladd.Connection = conn
Dim sqlmod As New SqlCommand
sqlmod.Connection = conn
Dim sqldel As New SqlCommand
sqldel.Connection = conn
Dim contador As Integer = 0
Try
sqldel.CommandText = "delete from Repuestos1 where (Patente_Vehiculo='" _
+ ds.Tables("Grilla").Rows(0).Item("Patente_Vehiculo").ToString.Trim + "')"
sqldel.ExecuteNonQuery()
Catch ex As Exception
MsgBox(sqldel.CommandText)
MsgBox("error en formatear los datos")
End Try
For Each fila As DataRow In ds.Tables("Grilla").Rows
If Not fila.RowState = DataRowState.Deleted Then
sqladd.Parameters(0).Value = fila("N_Filas")
sqladd.Parameters(1).Value = fila("Cant_Repuestos")
sqladd.Parameters(2).Value = fila("Repuestos")
sqladd.Parameters(3).Value = fila("Patente_Vehiculo")
sqladd.Parameters(4).Value = fila("Activo")
sqladd.ExecuteNonQuery()
End If
Next
End Sub
ojala que con esto me puedan ayudar, ya que me encuentro desesperado y no puedo seguir avanzando en la creación de este, ya que ahora en adelante se va a autilizar los datos grabados con anterioridad en otras tablas.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder