Visual Basic - Modificación de una base de datos con visual basic

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil

Modificación de una base de datos con visual basic

Publicado por cpp2808 (3 intervenciones) el 16/07/2015 19:57:08
Hola a todos, me estoy introduciendo de nuevo y poco a poco a la programación, en estos momentos estoy con visual basic y la modificación de una base de datos access con este programa.
La base de datos es muy sencilla, los campos son:
código, nombre, apellido, dirección, .....
En el programa de visual basic tengo dos formularios:
En el primer formulario con origen de datos, importo la base de datos en este caso agenda.mdb, se me generan automáticamente agendadataset1 y vendedorestableadapter1, la tabla donde están los campos (código, nombre, dirección, ....) se llama vendedores.
En este formulario trabajo con normalidad, pero el problema lo tengo en el otro formulario, el cual se encarga de:
Ingresar un nuevo usuario a la base de datos y modificar algún campo de algún usuario ya existente, es decir, modificar la dirección el nombre o lo que sea y volverlo a guardar en la base de datos.
En este formulario no introduzco ni agendadataset1, ni vendedorestableadapter, lo paso con el siguiente código al formulario:
En el formulario principal pongo lo siguiente:
frNuevoUsuario.frData = Me.AgendaDataSet1
frNuevoUsuario.frtable = Me.VendedoresTableAdapter1
En el formulario secundario tengo lo siguiente:
Private frtableadapter As agendaDataSetTableAdapters.vendedoresTableAdapter
Private frdataset As agendaDataSet

Public Property frtable() As agendaDataSetTableAdapters.vendedoresTableAdapter
Get
Return Me.frtableadapter
End Get
Set(value As agendaDataSetTableAdapters.vendedoresTableAdapter)
Me.frtableadapter = value
End Set
End Property

Public Property frData() As agendaDataSet
Get
Return Me.frdataset
End Get
Set(ByVal value As agendaDataSet)
Me.frdataset = value
End Set
End Property

En el formulario secundario no tengo problemas a la hora de añadir un usuario nuevo, con el siguiente código:
Dim añadirUsuario As agendaDataSet.vendedoresRow ' creamos la variable para crear un nuevo usuario
añadirUsuario = frdataset.vendedores.NewvendedoresRow

' cogemos los valores para agregar a la base de datos
añadirUsuario.codigo = TextBoxcodigo.text
añadirUsuario.nombres = TextBoxNombre.Text
añadirUsuario.apellidos = TextBoxApellido.Text
añadirUsuario.dirección = TextBoxDireccion.Text
' guardamos los valores en el dataset
frdataset.vendedores.AddvendedoresRow(añadirUsuario)

' enviamos el dataset a la base de datos via tableadapter
frtableadapter.Update(frdataset.vendedores)
Como ya he dicho aquí no tengo problemas, el problema lo tengo a la hora de modificar un usuario ya existente, el código que tengo es:
Dim modificar As agendaDataSet.vendedoresRow
modificar = Me.frdataset.vendedores.FindBycodigo(4) ' aquí el 4 es un ejemplo me busca siempre el 4 pero es una prueba
modificar.codigo = ComboBoxCodigo.Text
modificar.nombres = TextBoxNombre.Text
modificar.apellidos = TextBoxApellido.Text
modificar.dirección = TextBoxDireccion.Text

' enviamos el dataset a la base de datos via tableadapter
frtableadapter.Update(frdataset.vendedores)

Haciendo esto no se me guarda en la base de datos, me imagino que habrá que poner antes de frtableadapter.Update(frdataset.vendedores), algo como bindingsource.endedit().

Al realizar esto me sale una excepción que es:
"Infracción de simultaneidad: UpdateCommand afectó a 0 de los 1 registros esperados."

Bueno ste es mi problema, espero que me podáis ayudar, llevo ya muchos días con esto y no llego a ningún sitio.

Un saludo y gracias.
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
sin imagen de perfil

Modificación de una base de datos con visual basic

Publicado por cpp2808 (3 intervenciones) el 17/07/2015 19:18:46
Por favor, llevo mucho tiempo con esto , a ver si alguien me puede echar una mano y se lo agradeceré un montón.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Wilfredo Patricio Castillo
Val: 8
Ha aumentado su posición en 9 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Modificación de una base de datos con visual basic

Publicado por Wilfredo Patricio Castillo (260 intervenciones) el 18/07/2015 03:42:47
Bueno en primer lugar decir que Visual Basic.Net, es un lenguaje orientado a objetos y si así lo hicieras sería mas claro, limpio y ordenado el asunto, pero pues hay de todo en la vida, y ponerse a leer todo lo que pusiste realmente creo que ninguno de los que colaboramos disponemos de mucho tiempo como para revisar todo eso, si fueras exacto en tu pedido ser podría solucionar que al ser un CRUD, no se porqué te lleve tanto tiempo en solucionarlo.

Si pudieras separarlo en capas te sería pero super fácil.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

Modificación de una base de datos con visual basic

Publicado por cpp2808 (3 intervenciones) el 19/07/2015 13:58:55
Wilfredo gracias por tu aporte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Wilfredo Patricio Castillo
Val: 8
Ha aumentado su posición en 9 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Modificación de una base de datos con visual basic

Publicado por Wilfredo Patricio Castillo (260 intervenciones) el 19/07/2015 22:25:38
Yo estoy seguro que tu problema es sencillo, cuando tengas tiempo, y si tienes teamviewer le echamos una mirada y veras que es simple el asunto.

Cuando tengas tiempo, me contactas, alli tienes mi email, con él me buscas por skype.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar