Access - error de compilacion

   
Vista:

error de compilacion

Publicado por erika erikaba1@hotmail.com (3 intervenciones) el 03/06/2015 01:36:39
AYUDA URGENTE!!!!!!!!!!!!!!

hola necesito ayuda estoy realizando un proyecto en access, el tema es que quiero compilar una parte de modificar un alquiler y me da error de compilación.
me sale
[[[[[[[[[[[[error de compilación
no se puede encontré el proyecto o la biblioteca]]]]]]]]]]]]]]]]]]]]]]]]


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
Private Sub cmdModificar_Click()
 
    Dim resp
    Dim bd As DAO.Database
    Dim rst As DAO.Recordset
 
    Set bd = CurrentDb
    Set rst = bd.OpenRecordset("Propiedades", dbOpenDynaset)
 
    If IsNull(txtdomicilio.Value) Then
        MsgBox "Debe agregar un domicilio", vbInformation, "ATENCION"
        Exit Sub
    End If
 
    If IsNull(txtdescripcion.Value) Then
        MsgBox "Debe agregar una descripcion", vbInformation, "ATENCION"
        Exit Sub
    End If
 
    If IsNull(txtAlquiler.Value) Then
        MsgBox "Debe agregar un costo de alquiler", vbInformation, "ATENCION"
        Exit Sub
    End If
 
    If IsNull(cmbtipo.Value) Then
        MsgBox "Debe agregar un tipo de propiedad", vbInformation, "ATENCION"
        Exit Sub
    End If
 
    If IsNull(cmbLocalidad.Value) Then
        MsgBox "Debe agregar una localidad a la propiedad", vbInformation, "ATENCION"
        Exit Sub
    End If
 
 
    resp = MsgBox("¿Desea modificar los Datos Seleccionados?", vbYesNo, "Exito")
    If resp = vbYes Then
 
    Do While rst.EOF = False
 
        If txtPropiedad.Value = rst.Fields("id_Prop") Then
            rst.Edit
            rst.Fields("domicilio") = txtdomicilio.Value
            rst.Fields("descripcion") = descripcion.Value
            rst.Fields("Alquiler") = txtAlquiler.Value
            rst.Fields("tipo_prop") = cmbtipo.Value
            rst.Fields("Id_localidad") = cmbLocalidad.Value
            rst.Update
            MsgBox "Los datos se han Modificados exitosamente", vbInformation, "Exito"
        End If
 
    rst.MoveNext
    Loop
 
    End If
End Sub
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

error de compilacion

Publicado por GOOO (46 intervenciones) el 03/06/2015 16:38:54
Hola.

Si solo es un registro el que vas a modificar no necesitas en rst.MoveNext

Yo en lo personal filtro la consulta al abrir el recordset. En la siguiente parte

Set rst = bd.OpenRecordset("SELECT * FROM Propiedades WHERE ID_PROP=" & Me.txtPropiedad.Value, dbOpenDynaset)

De esta forma ya estoy diciendo que el registro tiene que tener el código que está en el control txtPropiedad

Quito la siguiente línea
Do While rst.EOF = False

Escribo la siguiente
If rst.RecordCount = 1 Then
Con ella le indico al RecordSet, si existe un registro (que debería de existir)

En resumen quedaría así.

If rst.RecordCount = 1 Then
rst.Edit
rst.Fields("domicilio") = txtdomicilio.Value
rst.Fields("descripcion") = txtdescripcion.Value
rst.Fields("Alquiler") = txtalquiler.Value
rst.Fields("tipo_prop") = cmbtipo.Value
rst.Fields("Id_Localidad") = cmblocalidad.Value
rst.Update
MsgBox "Los datos se han Modificados exitosamente", vbInformation, "Exito"
End If

Tal vez, no sea la forma mas correcta o apropiada pero me funciona
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 Norberto

error de compilacion

Publicado por Norberto (432 intervenciones) el 04/06/2015 14:40:31
Hola.

Sería bueno que indicaras en qué línea se detiene cuando se produce el error.

Un saludo,

Norberto.
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

error de compilacion

Publicado por Erika (3 intervenciones) el 04/06/2015 14:51:36
Hola norberto, si en la linea 8 me sale error y me lo marca en azul.dbOpenDynaset.
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

error de compilacion

Publicado por GOOO (46 intervenciones) el 04/06/2015 17:30:20
Usa mi línea

Set rst = bd.OpenRecordset("SELECT * FROM Propiedades WHERE ID_PROP=" & Me.txtPropiedad.Value, dbOpenDynaset)

o

Set rst = bd.OpenRecordset("SELECT * FROM Propiedades", dbOpenDynaset)

Has la prueba
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

error de compilacion

Publicado por erika (3 intervenciones) el 05/06/2015 17:00:30
ya lo resolví era que en referencias estaba tildado algo que evita que faltaba. Gracias por su tiempo
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