Problemas con el sql embebido en Visual Basic
Publicado por Jordi (16 intervenciones) el 30/05/2001 19:11:41
Hola que tal
Estoy haciendo una consulta con DAO, que no me funcciona:
la consulta en sql es la siguiente:
SELECT CapRegistre.NIFCIF, CapRegistre.EstatRegistre
FROM CapRegistre
WHERE (((CapRegistre.NIFCIF)=[Formularios]![frm_altaprod]![CodiProd]) AND ((CapRegistre.EstatRegistre)=1));
Y cuando la paso a sql embebido en Visual Basic (con la ayuda de una utilidad que lo hace)me queda así:
Dim db As Database
Dim rs As Recordset
Set db = CurrentDb()
Dim strSQl As String
strSQl = "SELECT CapRegistre.NIFCIF" & vbCrLf
strSQl = strSQl & " , CapRegistre.EstatRegistre" & vbCrLf
strSQl = strSQl & " FROM CapRegistre" & vbCrLf
strSQl = strSQl & " WHERE (((CapRegistre.NIFCIF)=[Formularios]![frm_altaprod]![CodiProd]) " & vbCrLf
strSQl = strSQl & " AND ((CapRegistre.EstatRegistre)=1));"
Set rs = db.OpenRecordset(strSQl)
rs.Close
db.Close
Pues bien cuando se da el procedimiento de evento que dispara la consulta, me da el error 3061 "Pocos parametros, se esperaba 1, y al depurar se queda en la linia de código Set rs= db:OpenRecorset(strSQl)
No se lo que esta pasando pues la consulta funciona perfectamente con SQL.
Agradezco cualquier orientación, pues no le veo la solución.
Muchas gracias
Estoy haciendo una consulta con DAO, que no me funcciona:
la consulta en sql es la siguiente:
SELECT CapRegistre.NIFCIF, CapRegistre.EstatRegistre
FROM CapRegistre
WHERE (((CapRegistre.NIFCIF)=[Formularios]![frm_altaprod]![CodiProd]) AND ((CapRegistre.EstatRegistre)=1));
Y cuando la paso a sql embebido en Visual Basic (con la ayuda de una utilidad que lo hace)me queda así:
Dim db As Database
Dim rs As Recordset
Set db = CurrentDb()
Dim strSQl As String
strSQl = "SELECT CapRegistre.NIFCIF" & vbCrLf
strSQl = strSQl & " , CapRegistre.EstatRegistre" & vbCrLf
strSQl = strSQl & " FROM CapRegistre" & vbCrLf
strSQl = strSQl & " WHERE (((CapRegistre.NIFCIF)=[Formularios]![frm_altaprod]![CodiProd]) " & vbCrLf
strSQl = strSQl & " AND ((CapRegistre.EstatRegistre)=1));"
Set rs = db.OpenRecordset(strSQl)
rs.Close
db.Close
Pues bien cuando se da el procedimiento de evento que dispara la consulta, me da el error 3061 "Pocos parametros, se esperaba 1, y al depurar se queda en la linia de código Set rs= db:OpenRecorset(strSQl)
No se lo que esta pasando pues la consulta funciona perfectamente con SQL.
Agradezco cualquier orientación, pues no le veo la solución.
Muchas gracias
Valora esta pregunta


0