Foros del Web » Programación para mayores de 30 ;) » .NET »

No puedo actualizar tabla de access desde form en visu

Estas en el tema de No puedo actualizar tabla de access desde form en visu en el foro de .NET en Foros del Web. Hola, tengo una BD en Access que estoy actualizando desde un form, todos los datos se actualizan menos los que contienen, el estado, ciudad y ...
  #1 (permalink)  
Antiguo 01/07/2015, 12:29
 
Fecha de Ingreso: junio-2015
Ubicación: Monterrey
Mensajes: 2
Antigüedad: 8 años, 9 meses
Puntos: 0
No puedo actualizar tabla de access desde form en visu

Hola, tengo una BD en Access que estoy actualizando desde un form, todos los datos se actualizan menos los que contienen, el estado, ciudad y pais, son combobox que lleno mediante consulta a las tablas de la BD en Access.
Tengo este código:
Agradezco la ayuda.
---------------------------------------------------------------
Private Sub AgregarCliente_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

Try
' trata de abrir la conexión
conex.Open()
' Inicializo el objeto Command
comando.Connection = conex
comando.CommandType = CommandType.Text

'consulta para traer el último registro del ID_Cliente
sql1 = "SELECT* FROM Clientes WHERE ID_Cliente = (SELECT MAX(ID_Cliente)From Clientes)"
comando.CommandText = sql1
readr1 = comando.ExecuteReader() ' llamamos a la función reader

If readr1.HasRows Then ' si al leer en la columna ID_Cliente hay filas
Do While readr1.Read() ' lee hasta el último registro
tbid.Text = readr1("ID_Cliente") 'si encontró algo en ID_Cliente lo deposita en el textbox
tbnombrecliente.Text = readr1("Nombre") 'si encontró algo en Nombre lo deposita en el textbox
Loop
End If
readr1.Close() ' se cierra el reader
agregarpaises()
agregartipodepago()
Catch ex As Exception
If Err.Number = 5 Then
MsgBox("No se pudo encontrar el archivo de la base de datos", MsgBoxStyle.Exclamation, "Carga de aplicación")
End
Else
MsgBox(Err.Description, MsgBoxStyle.Exclamation, "Carga de aplicación; AgregarCliente")
End If
End Try
End Sub
-----------------------------------------------------------------
Private Sub agregarpaises()
comando.CommandType = CommandType.Text
'consulta para agregar los países al combobox país
sql1 = "SELECT Nombrepais FROM Tablapais"
comando.CommandText = sql1
readr1 = comando.ExecuteReader() ' llamamos a la función reader
If readr1.HasRows Then 'si hay filas lee
Do While readr1.Read() ' lee hasta el último registro
cbpais.Items.Add(readr1(0).ToString) 'si encontró algo en Nombrepais lo deposita en el combobox

Loop
End If
readr1.Close() ' se cierra el reader
End Sub
---------------------------------------------------------------------
Private Sub cbpais_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cbpais.SelectedIndexChanged
'se ejecuta al seleccionar un país
Try
cbestado.Items.Clear() ' limpiamos el comboboxestado
comando.CommandType = CommandType.Text

'creamos la consulta
sql1 = "SELECT NombreEstado FROM Tablaestado where ID_Pais =@ID_Pais"
comando.CommandText = sql1

'dando valor a los parámetros
comando.Parameters.AddWithValue("@ID_Pais", cbpais.Text)

readr1 = comando.ExecuteReader() ' llamamos a la función reader
If readr1.HasRows Then ' si hay algo en las filas
Do While readr1.Read() ' lee hasta el último registro
cbestado.Items.Add(readr1(0).ToString) 'si encontró algo en Nombrepais lo deposita en el combobox
Loop
End If
readr1.Close() ' se cierra el reader
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
------------------------------------------------------------------------------------
Private Sub cbestado_SelectedIndexChanged_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cbestado.SelectedIndexChanged
' se ejecuta al seleccionar un estado
Try
cbciudad.Items.Clear() ' limpiamos el comboboxciudad
comando.CommandType = CommandType.Text
' creando la consulta
sql2 = "SELECT NombreCiudad FROM Tablaciudad where ID_Estado = '" & cbestado.Text & "'"
comando.CommandText = sql2

readr1 = comando.ExecuteReader() ' llamamos a la función reader
If readr1.HasRows Then ' si hay algo en las filas
Do While readr1.Read() ' lee hasta el último registro
cbciudad.Items.Add(readr1(0).ToString) 'si encontró algo en NombreCiudad lo deposita en el combobox
Loop
End If
readr1.Close() ' se cierra el reader
Catch ex As Exception
MsgBox(ex.Message)

End Try
End Sub
-----------------------------------------------------------------------------------------
Private Sub btninsertar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btninsertar.Click
' al dar clic en insertar
sql3 = "UPDATE Clientes SET " & _
"DIRECCION=@Direccion," & _
"TELEFONO =@Telefono," & _
"CIUDAD =@Ciudad," & _
"ESTADO =@Estado," & _
"PAIS =@Pais," & _
"CP =@CP," & _
"RFC =@RFC," & _
"TIPO_DE_PAGO =@TIPODEPAGO," & _
"NOMBRE_DE_CONTACTO =@NOMBREDECONTACTO," & _
"PUESTO_DE_CONTACTO =@PUESTODECONTACTO," & _
"TELEFONO_DE_CONTACTO =@TELEFONODECONTACTO," & _
"EMAIL_DE_CONTACTO =@EMAILDECONTACTO," & _
"NOTAS =@NOTAS " & _
"WHERE ID_Cliente =@ID_Cliente"
MsgBox(sql3)

' Asigno la instrucción consulta que se va a ejecutar
comando.CommandText = sql3

comando.Parameters.AddWithValue("@Direccion", tbdireccion.Text)
comando.Parameters.AddWithValue("@Telefono", tbtelefono.Text)
comando.Parameters.AddWithValue("@Ciudad", cbciudad.Text)
comando.Parameters.AddWithValue("@Estado", cbestado.Text)
comando.Parameters.AddWithValue("@Pais", cbpais.Text)
comando.Parameters.AddWithValue("@CP", tbcp.Text)
comando.Parameters.AddWithValue("@RFC", tbrfc.Text)
comando.Parameters.AddWithValue("@TIPODEPAGO", cbtipodepago.Text)
comando.Parameters.AddWithValue("@NOMBREDECONTACTO ", tbnomcto.Text)
comando.Parameters.AddWithValue("@PUESTODECONTACTO ", tbpuesto.Text)
comando.Parameters.AddWithValue("@TELEFONODECONTAC TO", tbtelefono2.Text)
comando.Parameters.AddWithValue("@EMAILDECONTACTO" , tbemail.Text)
comando.Parameters.AddWithValue("@NOTAS", tbnotassobrecontacto.Text)
comando.Parameters.AddWithValue("@ID_Cliente", CInt(tbid.Text))

Try

comando.ExecuteNonQuery()
MsgBox("Actualización exitosa", MsgBoxStyle.Information, "Actualizar resgistro")


Catch ex As Exception
MsgBox(Err.Description, MsgBoxStyle.Exclamation, "Actualizar registro")
End Try
End Sub
----------------------------------------------------------------------------------
  #2 (permalink)  
Antiguo 05/07/2015, 09:43
Avatar de emmax  
Fecha de Ingreso: agosto-2010
Ubicación: Sonora
Mensajes: 172
Antigüedad: 13 años, 7 meses
Puntos: 8
Respuesta: No puedo actualizar tabla de access desde form en visu

Podrias intentar con SelectedItem.tostring

Código VB.NET:
Ver original
  1. cbciudades.SelectedItem.ToString
__________________
La gente que muerde la mano que los alimenta, normalmente lame la bota que lo patea......

Etiquetas: vb
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:25.