OVH Cloud OVH Cloud

problème RecordSet

4 réponses
Avatar
DEUTSCH
J'ai un soucis avec un Recordset. Je souhaite tester une requète sql pour
savoir si le contenu qu'elle renvoi est vide ou pas.
je defini donc mon recordset :

Set conn = server.CreateObject("ADODB.connection")
conn.Open "nombase.mdb"
Set rs = server.CreateObject("ADODB.recordset")
Dim sql As String

puis j'ecri ma requete :

sql1 = "SELECT N° référence], [N° client], Quantité, Prix FROM (Table1 INNER
JOIN Table2 ON Table1.[N° client]=Table2.[N° client]) INNER JOIN Table3 ON
Table2.[N° OC]=Table3.[N° OC] WHERE (((Table3.[N° référence]) Like
Formulaires![nom formulaire]!Reference) And ((Table1.[N° client]) Like
Formulaires![nom formulaire]![Nom client]) ORDER BY Table1.[Nom client];"

Et quand je lance mon formulaire, access me met un message d'erreur "Objet
requis" en pointant sur la ligne de ma requète sql.

Aidez moi, svp...merci !

4 réponses

Avatar
Rv
Re,

On dirait un peu de l'ASP. Dans quel environnement travaillez-vous?

C'est un pb de syntaxe::
Dim sql et
sql1=...

A+

Rv

"DEUTSCH" a écrit dans le message de
news:e$h%
J'ai un soucis avec un Recordset. Je souhaite tester une requète sql pour
savoir si le contenu qu'elle renvoi est vide ou pas.
je defini donc mon recordset :

Set conn = server.CreateObject("ADODB.connection")
conn.Open "nombase.mdb"
Set rs = server.CreateObject("ADODB.recordset")
Dim sql As String

puis j'ecri ma requete :

sql1 = "SELECT N° référence], [N° client], Quantité, Prix FROM (Table1
INNER

JOIN Table2 ON Table1.[N° client]=Table2.[N° client]) INNER JOIN Table3 ON
Table2.[N° OC]=Table3.[N° OC] WHERE (((Table3.[N° référence]) Like
Formulaires![nom formulaire]!Reference) And ((Table1.[N° client]) Like
Formulaires![nom formulaire]![Nom client]) ORDER BY Table1.[Nom client];"

Et quand je lance mon formulaire, access me met un message d'erreur "Objet
requis" en pointant sur la ligne de ma requète sql.

Aidez moi, svp...merci !




Avatar
DEUTSCH
Je travaille sous Access
pour le sql1 c'est une faute de frappe, désolé...
Avatar
Gafish
Bonjour,

J'imagine que c'est une faute de frappe, mais sinon il manque un [ ici :
sql1 = "SELECT N° référence],

Arnaud

"DEUTSCH" a écrit dans le message news:
e$h#
J'ai un soucis avec un Recordset. Je souhaite tester une requète sql pour
savoir si le contenu qu'elle renvoi est vide ou pas.
je defini donc mon recordset :

Set conn = server.CreateObject("ADODB.connection")
conn.Open "nombase.mdb"
Set rs = server.CreateObject("ADODB.recordset")
Dim sql As String

puis j'ecri ma requete :

sql1 = "SELECT N° référence], [N° client], Quantité, Prix FROM (Table1
INNER

JOIN Table2 ON Table1.[N° client]=Table2.[N° client]) INNER JOIN Table3 ON
Table2.[N° OC]=Table3.[N° OC] WHERE (((Table3.[N° référence]) Like
Formulaires![nom formulaire]!Reference) And ((Table1.[N° client]) Like
Formulaires![nom formulaire]![Nom client]) ORDER BY Table1.[Nom client];"

Et quand je lance mon formulaire, access me met un message d'erreur "Objet
requis" en pointant sur la ligne de ma requète sql.

Aidez moi, svp...merci !




Avatar
Rv
Re,

Oublions le sql1...
Dans
Set conn = server.CreateObject("ADODB.connection")
Quelle est l'origine de la variable "server" car je ne connais pas cette
syntaxe. Je l'ai testé elle ne fonctionne pas dans mon cas.

J'aurais plutôt écrit:

dim objConn as Object
set objConn = CreateObject("ADODB.connection")

Ou bien déclaré une référence vers la librairie "ActiveX Data Object" dans
le menu outil référence. Puis

dim objConn as ADODB.connection
set objConn = New ADODB.connection

Etes vous sûr que l'erreur est sur la ligne sql = "SELECT ..."?

A+

Rv



"DEUTSCH" a écrit dans le message de
news:
Je travaille sous Access
pour le sql1 c'est une faute de frappe, désolé...