Visual Basic - Problemas al insertar registros con ADO

Life is soft - evento anual de software empresarial
 
Vista:

Problemas al insertar registros con ADO

Publicado por Jorge Díaz (1 intervención) el 17/08/2006 10:13:29
Tengo una duda importante en manejo de bases de datos con ADO en Visual Basic 6. Tengo un formulario para una tabla de

mi base de datos creada previamente en Access en la que existe un campo clave, de tipo Autonumerico, o sea que desde mi

aplicación no necesito entrar su valor. Pues bien el caso es que primero desde un botón "Agregar" añado una fila nueva

al Recorset (mediante AddNew) y luego, tras rellenar los textbox del resto de los campos, mediante otro boton Aceptar

doy la orden Update, pero me da un error que me dice que ese campo clave no es actualizable. NO se que puede dar el

error, en si. Si es que defino un cursor Estatico, y ubicao en el cliente, o es problema debido a Access, que por

cierto, he tenido que guardar mi base de datos en formato de Access 97, para que VB la pueda reconocer (la bd estaba

originarlmente hecha con Access 2003).

Aqui muestro los segmentos de codigo donde se estan produciendo estos errores:
Private Sub cmdAgregar_Click()
On Error Resume Next
OperReg = opAgregar
For Each ctrl In Me.Controls
If TypeOf ctrl Is TextBox Then
ctrl.Text = ""
ctrl.Locked = False
End If
Next
txtIdTipoEmpresa.Locked = True

cmdAgregar.Visible = False
cmdModificar.Visible = False
cmdEliminar.Visible = False
cmdAceptar.Visible = True
cmdCancelar.Visible = True

cmdPrimero.Visible = False
cmdAnterior.Visible = False
cmdSiguiente.Visible = False
cmdUltimo.Visible = False

If RSTipoEmpresa.Supports(adBookmark) Then
UltFila = RSTipoEmpresa.Bookmark
End If

RSTipoEmpresa.AddNew*
If Err.Number <> 0 Then MsgBox Err.Description
End Sub
* aqui me da el error:"Operación cancelada"

Private Sub cmdAceptar_Click()
On Error Resume Next


' Actualiza los cambios en la base de datos
RSTipoEmpresa.Update**

If Err.Number <> 0 Then
If RSTipoEmpresa.EditMode = adEditAdd Then
MsgBox "No se ha podido guardar el registro. " & vbCrLf & Err.Description
End if
RSTipoEmpresa.CancelUpdate
End If

'Muestra botones de operaciones y de navegación, oculta botones Aceptar y Cancelar
cmdAgregar.Visible = True
cmdModificar.Visible = True
cmdEliminar.Visible = True
cmdAceptar.Visible = False
cmdCancelar.Visible = False

cmdPrimero.Visible = True
cmdAnterior.Visible = True
cmdSiguiente.Visible = True
cmdUltimo.Visible = True
' Bloque los Textboxs
For Each ctrl In Me.Controls
If TypeOf ctrl Is TextBox Then
ctrl.Locked = True
End If
Next
End Sub
** Aqui me da el error:"No se ha podido actualizar "IdTipoEmpresa", el campo no es actualizable"
nota: IdTipoEmpresa es el campo clave de mi tabla
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

RE:Problemas al insertar registros con ADO

Publicado por rafa (1 intervención) el 17/08/2006 14:17:03
no le mandes ningun valor al campo autonumerico, access se encarga de llenarlo

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