Ayuda con el error \'545\' en tiempo de ejecucion
Hola, les agradeceria si pudieran ayudarme a descubrir a que se debe el error que me salta cuando ejecuto mi codigo, les explico estoy haciendo mi trabajo final el cual consiste en un pequeño sistema para farmacia de un hospital, solo registra los ingresos y egresos de medicamentos, me toco hacer la parte de ingresos, hay distintos tipos de ingresos entre ellos esta la licitacion de medicamentos, en este sistema tengo varias opciones como la de ingresar Nuevo medicamento, eliminar, modificar, y consultar, este error que menciono en el titulo del mensaje me salta en la parte de modificar. les escribo el codigo que tengo ahi para que puedan ayudarme:
Private Sub cmdModificar_Click()
Dim BUSCADO As Boolean, cadena As String,
Dim cadena1 As String
Dim mensaje, Título, ValorPred, MiValor As String,
Dim RESPUESTA
Dim men As String, cade1 As String, cade2 As String, CgoProveedor As Integer
Dim adoProveedorLicitacion As Recordset
Dim mascara As MaskEdBox
Dim encontrado As Boolean
Call HBotonesCyM
Call DeshabilitarBotones
cmdIngresarDatos.Visible = False
cmdIngresarDatos.Enabled = False
cmdCancelar.Enabled = False
cmdCancelar.Visible = False
Call BotonModificarLabel3
Call BotonModificarFrame2
Frame1.Move 480, 720, 7095, 3015
cmdBuscar.Enabled = False
If MascaraLicitacion(0).Enabled = False Then
Set adoLicitacion = New Recordset
cade1 = "Select Licitacion.NroComprobanteL, Licitacion.NroLicitacion, " & _
"Licitacion.FchaEntregaL, Licitacion.CgoProveedor from Licitacion"
With adoLicitacion
.Open cade1, db, adOpenKeyset, adLockOptimistic
For Each mascara In Me.MascaraLicitacion
Set mascara.DataSource = adoLicitacion
****AQUI ES DONDE ME SALTA EL PROBLEMA*****
Next
End With
cade2 = "Select Proveedor.CgoProveedor,Proveedor.Nombre from Proveedor "
Set adoProveedor = New Recordset
With adoProveedor
.Open cade2, db, adOpenKeyset, adLockOptimistic
If Not (.EOF Or .BOF) Then
Do While encontrado = False Or .EOF
If adoProveedor!CgoProveedor = adoLicitacion!CgoProveedor Then
txtProveedor.Text = adoProveedor!Nombre
txtProveedor.Locked = True
txtProveedor.Font = &H80000008
encontrado = True
Else
.MoveNext
End If
Loop
End If
End With
Else
men = "¿Desea modificar los Datos del comprobante " & vbCr _
& "Numero: " & MascaraLicitacion(0).Text & "?"
RESPUESTA = MsgBox(men, vbQuestion + vbYesNoCancel, "Confirmacion")
If RESPUESTA = vbYes Then
FrmModificarLic.Show
Else
If RESPUESTA = vbNo Then
cmdBuscar.Enabled = True
End If
End If
End Sub
Me muestra la sgte leyenda:
Error 545 en tiempo de ejecucion:
No se puede enlazar con el campo o DataMember: NroComprobanteL...
este es un campo de la tabla licitacion.
este error siempre se presenta cuando por ejemplo primero voy a dar de alta una nueva licitacion y luego cancelo esta alta y voy a querer modificar una licitacion ya dada de alta recien ahi me aparece este problema.
No sucede asi cuando de entrada voy a modificar una licitacion ya dada de alta sin ingresar a nuevo o hacer click en ninguana otra opcion mas que modificar
cuando de entrada voy a hacer un click en el boton modificar no se presenta este error y enlaza bien los maskededit que enlaze cuando estaba haciendo el formulario de licitacion... en las propiedades de estos maskededit que la llame mascaraLicitacion a la propiedad:
datasource=adolicitacion
datafield=con los distintos campos de la tabla licitacion que solo tiene 4 campos: nrocomprobanteL, nrolicitacion, FchaentregaL, cgoproveedor.
Si alguien puede ayudarme por favor......saludos Patricia
Private Sub cmdModificar_Click()
Dim BUSCADO As Boolean, cadena As String,
Dim cadena1 As String
Dim mensaje, Título, ValorPred, MiValor As String,
Dim RESPUESTA
Dim men As String, cade1 As String, cade2 As String, CgoProveedor As Integer
Dim adoProveedorLicitacion As Recordset
Dim mascara As MaskEdBox
Dim encontrado As Boolean
Call HBotonesCyM
Call DeshabilitarBotones
cmdIngresarDatos.Visible = False
cmdIngresarDatos.Enabled = False
cmdCancelar.Enabled = False
cmdCancelar.Visible = False
Call BotonModificarLabel3
Call BotonModificarFrame2
Frame1.Move 480, 720, 7095, 3015
cmdBuscar.Enabled = False
If MascaraLicitacion(0).Enabled = False Then
Set adoLicitacion = New Recordset
cade1 = "Select Licitacion.NroComprobanteL, Licitacion.NroLicitacion, " & _
"Licitacion.FchaEntregaL, Licitacion.CgoProveedor from Licitacion"
With adoLicitacion
.Open cade1, db, adOpenKeyset, adLockOptimistic
For Each mascara In Me.MascaraLicitacion
Set mascara.DataSource = adoLicitacion
****AQUI ES DONDE ME SALTA EL PROBLEMA*****
Next
End With
cade2 = "Select Proveedor.CgoProveedor,Proveedor.Nombre from Proveedor "
Set adoProveedor = New Recordset
With adoProveedor
.Open cade2, db, adOpenKeyset, adLockOptimistic
If Not (.EOF Or .BOF) Then
Do While encontrado = False Or .EOF
If adoProveedor!CgoProveedor = adoLicitacion!CgoProveedor Then
txtProveedor.Text = adoProveedor!Nombre
txtProveedor.Locked = True
txtProveedor.Font = &H80000008
encontrado = True
Else
.MoveNext
End If
Loop
End If
End With
Else
men = "¿Desea modificar los Datos del comprobante " & vbCr _
& "Numero: " & MascaraLicitacion(0).Text & "?"
RESPUESTA = MsgBox(men, vbQuestion + vbYesNoCancel, "Confirmacion")
If RESPUESTA = vbYes Then
FrmModificarLic.Show
Else
If RESPUESTA = vbNo Then
cmdBuscar.Enabled = True
End If
End If
End Sub
Me muestra la sgte leyenda:
Error 545 en tiempo de ejecucion:
No se puede enlazar con el campo o DataMember: NroComprobanteL...
este es un campo de la tabla licitacion.
este error siempre se presenta cuando por ejemplo primero voy a dar de alta una nueva licitacion y luego cancelo esta alta y voy a querer modificar una licitacion ya dada de alta recien ahi me aparece este problema.
No sucede asi cuando de entrada voy a modificar una licitacion ya dada de alta sin ingresar a nuevo o hacer click en ninguana otra opcion mas que modificar
cuando de entrada voy a hacer un click en el boton modificar no se presenta este error y enlaza bien los maskededit que enlaze cuando estaba haciendo el formulario de licitacion... en las propiedades de estos maskededit que la llame mascaraLicitacion a la propiedad:
datasource=adolicitacion
datafield=con los distintos campos de la tabla licitacion que solo tiene 4 campos: nrocomprobanteL, nrolicitacion, FchaentregaL, cgoproveedor.
Si alguien puede ayudarme por favor......saludos Patricia
