Incompatibilité de types?!?

Chris_LaFouine Messages postés 109 Date d'inscription mardi 13 avril 2004 Statut Membre Dernière intervention 4 juin 2008 - 7 févr. 2005 à 14:48
cs_roro06 Messages postés 732 Date d'inscription jeudi 2 janvier 2003 Statut Membre Dernière intervention 29 octobre 2007 - 7 févr. 2005 à 16:43
J'ai une bibliothèque appelée "modules.asp" ou se trouvent diverses fonctions dont ma fonction "recSelect(sql)" qui me renvoie un recordset du sql entré en paramètre, voilà le code :

<%
Function recSelect(sql)
Dim rsQuery 'as ADODB.Recordset
Set rsQuery=Server.CreateObject("ADODB.Recordset")
rsQuery.Open sql,Application("connect")
return(rsQuery)
End Function
%>

Application("connect") est une variable de type Connection...

Dans mon programme principal, j'ai fait un "<!--#include file="modules.asp"-->" au tout début pour éviter d'avoir des erreurs...
Pourtant, il me génère une erreur quand je lance ma page asp principale. En effet, voilà ce qu'il y a (brièvement) dans ma page principale :

<!--#include file="modules.asp"-->
<% Dim rsClients
rsClients=recSelect("SELECT * FROM Client")
%>
<HTML>

...

</HTML>

Et voilà ce qu'il m'affiche quand je lance la page :
ADODB.Recordset erreur '800a0bb9'
The application is using arguments that are of the wrong type, are out of acceptable range, or are in conflict with one another.

Et la ligne où l'erreur se produit est :
rsQuery.Open sql,Application("connect")
qui se trouve dans ma fonction recSelect...

C'est une fonction dont je me sers partout dans mon programme pour alléger le code... ça serait bien de la débugguer!!!

Merci d'avance!

3 réponses

cs_roro06 Messages postés 732 Date d'inscription jeudi 2 janvier 2003 Statut Membre Dernière intervention 29 octobre 2007
7 févr. 2005 à 15:44
Bonjour

Est-ce que ça ne serait pas plutot cette ligne :
return(rsQuery)
qui pose probleme ?
Mets plutôt :
set recSelect=rsQuery
à la place

Cordialement
Roro webDev
0
Chris_LaFouine Messages postés 109 Date d'inscription mardi 13 avril 2004 Statut Membre Dernière intervention 4 juin 2008
7 févr. 2005 à 16:17
J'ai essayé ta solution et ça ne fonctionne toujours pas...
L'erreur est belle est bien à l'endroit que j'ai spécifié, mais je comprends toujours pas d'où elle peut venir!
0
cs_roro06 Messages postés 732 Date d'inscription jeudi 2 janvier 2003 Statut Membre Dernière intervention 29 octobre 2007
7 févr. 2005 à 16:43
Bonjour

Il n'y a pas longtemps, sur ce forum, quelqu'un avait eu un problème car il avait utilisé le mot sql tout comme toi. Peut-être qu'en remplaçant "sql" par "requete"

Ceci dit, d'après ton message d'erreur , je pense que ça vient d'une erreur dans la requête elle-même, par exemple une jointure sur des champs dont le type est different (du genre where client.adresse=representant.datedenaissance par exemple)
Est-ce que "select * from clients" est la vraie requête ?
Cordialement
Roro webDev
0
Rejoignez-nous