Access - Ayuda consulta

 
Vista:

Ayuda consulta

Publicado por Esteban (6 intervenciones) el 18/04/2007 10:06:34
Buenas, necesito ayuda ya que estoy un poco verde con las consultas sql, me gustaria obtener un recorset que coga los registros donde el campo NumDeOferta de la tabla coincida con el cuadro te texto NumOferta del formulario Oferta.
En el generador de consultas me hace lo siguiente:

SELECT DetalleDeOferta.Posicion, DetalleDeOferta.NumDeOferta, DetalleDeOferta.Cantidad, DetalleDeOferta.CodArticulo, DetalleDeOferta.Artículo, DetalleDeOferta.PreUnidad, DetalleDeOferta.Importe
FROM DetalleDeOferta
WHERE (((DetalleDeOferta.NumDeOferta)=[Forms]![Oferta]![NumOferta]));

Yo creo un recordset y en source le pongo lo que me hace el generador de consultas, :

Set Rst1 = New ADODB.Recordset
With Rst1
.Source = "SELECT * FROM DetalleDeOferta WHERE (((DetalleDeOferta.NumDeOferta)= [Forms]![Oferta]![NumOferta]));"
.ActiveConnection = Application.CurrentProject.Connection
.CursorType = adOpenDynamic
.LockType = adLockPessimistic
.Open
End With

Bueno pues esto me da el siguiente:

Se ha producido el error '-2147217904 (80040e10)' en tiempo de ejecución:
No se ha especificado valores para algunos de los parámetros requeridos.

A ver si alguien me puede decir donde esta el error, supongo que sera en
la sintaxis de la consulta, ya que probando con otra mas sencilla sin el where
funciona,
gracias de antemano y un saludo
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:Ayuda consulta

Publicado por Enrique (1299 intervenciones) el 18/04/2007 19:08:51
Hola Esteban:

Prueba de esta forma.
"SELECT * FROM DetalleDeOferta WHERE NumDeOferta =" & [Forms]![Oferta]![NumOferta]

Si estás usando esto en el propio Formulario Oferta, puedes simplificarlo:

"SELECT * FROM DetalleDeOferta WHERE NumDeOferta =" & Me.NumOferta

En cualquier caso el Campo NumDeOferta en la Tabla supongo que será Numérico, porque si fuera de Texto la cosa cambia a:

"SELECT * FROM DetalleDeOferta WHERE NumDeOferta ='" & Me.NumOferta & "'"

Como en el Select estás usando una sola Tabla, no es necesario hacer referencia a dicha Tabla en cada campo que le incluyas. Se vé que has copiado el Select de la Vista Sql de una Consulta.

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

RE:Ayuda consulta

Publicado por Esteban (6 intervenciones) el 18/04/2007 22:52:25
Gracias Enrique, lo usaré tal y como lo has puesto.

Un saludo.
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