Agregar o Actualizar Registros
Buenas tardes experto, nuevamente acudo a usted con otro problema del proyecto que estoy llevando y que usted conoce.
Estoy agregando o actualizando registros desde un formulario a varias tablas relacionadas entre si, mi problema resulta al momento de agregar o actualizar un registro en particular, ya que cuando guardo el sistema me arroja el siguiente mensaje: "La operación no esta permitida si el objeto esta cerrado", ya revise todos los módulos de conexión que tengo y están bien, revise una y otra vez el código escrito y también esta bien, en que me puede ayudar.
Este es el código que estoy utilizando:
Private Sub cmdguardar_Click()
If Modificar = False Then
With RsAsignacionCargos
.Requery
.AddNew
!IdEmpleado = txtcodigo.Text
!Inicial = txtcinicial.Text
!Actual = txtcactual.Text
!Fecha_Asignacion = txtfechac.Text
.Update
.Requery
Limpiar
End With
Else
With RsAsignacionCargos
.Find "IdEmpleado='" & Val(txtcodigo.Text) & "'"
!IdEmpleado = txtcodigo.Text
!Inicial = txtcinicial.Text
!Actual = txtcactual.Text
!Fecha_Asignacion = txtfechac.Text
.UpdateBatch
.Requery
End With
End If
If Modificar = False Then
With RsAsignacionFondos
.Requery "aqui se ubica cuando se genera el error"
.AddNew
!IdEmpleado = txtcodigo.Text
!Inicial = txtinicialf.Text
!Actual = txtactualf.Text
!Fecha_Asignacion = txtfechaf.Text
.Update
.Requery
Limpiar
End With
Else
With RsAsignacionFondos
.Find "IdEmpleado='" & Val(txtcodigo.Text) & "'"
!IdEmpleado = txtcodigo.Text
!Inicial = txtinicialf.Text
!Actual = txtactualf.Text
!Fecha_Asignacion = txtfechaf.Text
.UpdateBatch
.Requery
End With
End If
If Modificar = False Then
With RsAreas
.Requery
.AddNew
!IdEmpleado = txtcodigo.Text
!Codigo = txtcodigoa.Text
!Area = txtarea.Text
.Update
.Requery
Limpiar
End With
Else
With RsAreas
.Find "IdEmpleado='" & Val(txtcodigo.Text) & "'"
!IdEmpleado = txtcodigo.Text
!Codigo = txtcodigoa.Text
!Area = txtarea.Text
.UpdateBatch
.Requery
End With
End If
If Modificar = False Then
With RsNivel
.Requery
.AddNew
!IdEmpleado = txtcodigo.Text
!Codigo = txtcodigoa.Text
!Nivel = txtnivel.Text
.Update
.Requery
Limpiar
End With
Else
With RsNivel
.Find "IdEmpleado='" & Val(txtcodigo.Text) & "'"
!IdEmpleado = txtcodigo.Text
!Codigo = txtcodigoa.Text
!Nivel = txtnivel.Text
.UpdateBatch
.Requery
End With
End If
Habilitarcajas True
Habilitarbotones True, False
End Sub
Estaré atento a su respuesta y de antemano muchas gracias...
Estoy agregando o actualizando registros desde un formulario a varias tablas relacionadas entre si, mi problema resulta al momento de agregar o actualizar un registro en particular, ya que cuando guardo el sistema me arroja el siguiente mensaje: "La operación no esta permitida si el objeto esta cerrado", ya revise todos los módulos de conexión que tengo y están bien, revise una y otra vez el código escrito y también esta bien, en que me puede ayudar.
Este es el código que estoy utilizando:
Private Sub cmdguardar_Click()
If Modificar = False Then
With RsAsignacionCargos
.Requery
.AddNew
!IdEmpleado = txtcodigo.Text
!Inicial = txtcinicial.Text
!Actual = txtcactual.Text
!Fecha_Asignacion = txtfechac.Text
.Update
.Requery
Limpiar
End With
Else
With RsAsignacionCargos
.Find "IdEmpleado='" & Val(txtcodigo.Text) & "'"
!IdEmpleado = txtcodigo.Text
!Inicial = txtcinicial.Text
!Actual = txtcactual.Text
!Fecha_Asignacion = txtfechac.Text
.UpdateBatch
.Requery
End With
End If
If Modificar = False Then
With RsAsignacionFondos
.Requery "aqui se ubica cuando se genera el error"
.AddNew
!IdEmpleado = txtcodigo.Text
!Inicial = txtinicialf.Text
!Actual = txtactualf.Text
!Fecha_Asignacion = txtfechaf.Text
.Update
.Requery
Limpiar
End With
Else
With RsAsignacionFondos
.Find "IdEmpleado='" & Val(txtcodigo.Text) & "'"
!IdEmpleado = txtcodigo.Text
!Inicial = txtinicialf.Text
!Actual = txtactualf.Text
!Fecha_Asignacion = txtfechaf.Text
.UpdateBatch
.Requery
End With
End If
If Modificar = False Then
With RsAreas
.Requery
.AddNew
!IdEmpleado = txtcodigo.Text
!Codigo = txtcodigoa.Text
!Area = txtarea.Text
.Update
.Requery
Limpiar
End With
Else
With RsAreas
.Find "IdEmpleado='" & Val(txtcodigo.Text) & "'"
!IdEmpleado = txtcodigo.Text
!Codigo = txtcodigoa.Text
!Area = txtarea.Text
.UpdateBatch
.Requery
End With
End If
If Modificar = False Then
With RsNivel
.Requery
.AddNew
!IdEmpleado = txtcodigo.Text
!Codigo = txtcodigoa.Text
!Nivel = txtnivel.Text
.Update
.Requery
Limpiar
End With
Else
With RsNivel
.Find "IdEmpleado='" & Val(txtcodigo.Text) & "'"
!IdEmpleado = txtcodigo.Text
!Codigo = txtcodigoa.Text
!Nivel = txtnivel.Text
.UpdateBatch
.Requery
End With
End If
Habilitarcajas True
Habilitarbotones True, False
End Sub
Estaré atento a su respuesta y de antemano muchas gracias...
1 Respuesta
Respuesta de Carlo Navarro Rojas
1