recupérer un select count dans un vbs

Le
---DGI972---
Bonjour,

J'essaye de récupérer le résultat d'un select count (*) dans une
variable pour l'afficher (dans un premier temps) mais j'ai droit a un
beau :

Nombre d'arguments ou affectation de propriété incorrects.

Je suis sur de ma requête et de mon OdbcDSN car elle fonctionne a part.
Par contre c'est la première fois que je n'attends pas de retour du
résultat d'une table mais de la valeur du compteur count.
Voici le bout de vbs:

OdbcDSN = "DSN=DNC;UID=sa;PWD="
Set connect = CreateObject("ADODB.Connection")
Set fso = CreateObject("Scripting.FileSystemObject")

connect.Open OdbcDSN

sql="select count (*) from chq where val7 ='"&BQ&"' and val8 ='"&T&"'"

Set resultSet = connect.Execute(sql)
WScript.Echo resultSet()
VIGN= resultSet()
resultSet.Close
connect.Close

WScript.Echo "Fin du Traitement STATS : Il y a eu "&VIGN&" de vignettes
archivée(s)pour la "&BQ&" , à la date de Traitement du :"&T&" !"

Set connect = Nothing
Set VIGN = Nothing
WScript.Quit(0)


Merci d'avance.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Michel__D
Le #21433351
Bonjour,

---DGI972--- a écrit :
Bonjour,

J'essaye de récupérer le résultat d'un select count (*) dans une
variable pour l'afficher (dans un premier temps) mais j'ai droit a un
beau :

Nombre d'arguments ou affectation de propriété incorrects.

Je suis sur de ma requête et de mon OdbcDSN car elle fonctionne a part.
Par contre c'est la première fois que je n'attends pas de retour du
résultat d'une table mais de la valeur du compteur count.
Voici le bout de vbs:

OdbcDSN = "DSN=DNC;UID=sa;PWD="
Set connect = CreateObject("ADODB.Connection")
Set fso = CreateObject("Scripting.FileSystemObject")

connect.Open OdbcDSN

sql="select count (*) from chq where val7 ='"&BQ&"' and val8 ='"&T&"'"

Set resultSet = connect.Execute(sql)
WScript.Echo resultSet()
VIGN= resultSet()
resultSet.Close
connect.Close

WScript.Echo "Fin du Traitement STATS : Il y a eu "&VIGN&" de
vignettes archivée(s)pour la "&BQ&" , à la date de Traitement du
:"&T&" !"

Set connect = Nothing
Set VIGN = Nothing
WScript.Quit(0)


Merci d'avance.



Essaye plutot comme cela si c'est du SQL SERVER :

' OdbcDSN = "DSN=DNC;UID=sa;PWD="
Odbc = "driver={SQL Server};SERVER7.0.0.1;" & _
"UID=sa;PWD=;DATABASE=LeNomDeLaBase"
' Remplace l'adresse IP par l'adresse IP de ton SQL SERVER ainsi que le
nom de la base

Set connect = CreateObject("ADODB.Connection")
Set fso = CreateObject("Scripting.FileSystemObject")

connect.Open Odbc

sql="SELECT count (*) FROM chq " & _
"WHERE val7 ='" & BQ & "' and val8 ='" & T & "';"

Set resultSet = connect.Execute(sql)
' WScript.Echo resultSet()
WScript.Echo resultSet.Fields(0)
VIGN=resultSet.Fields(0)
resultSet.Close
connect.Close

WScript.Echo "Fin du Traitement STATS : Il y a eu " & VIGN & _
" de vignettes archivée(s)pour la " & BQ & _
" , à la date de Traitement du :" & T & " !"

Set resultSet = Nothing
Set connect = Nothing
Set fso = Nothing
WScript.Quit(0)
---DGI972---
Le #21435031
Michel__D a écrit :
Bonjour,

---DGI972--- a écrit :
Bonjour,

J'essaye de récupérer le résultat d'un select count (*) dans une variable
pour l'afficher (dans un premier temps) mais j'ai droit a un beau :

Nombre d'arguments ou affectation de propriété incorrects.

Je suis sur de ma requête et de mon OdbcDSN car elle fonctionne a part.
Par contre c'est la première fois que je n'attends pas de retour du
résultat d'une table mais de la valeur du compteur count.
Voici le bout de vbs:

OdbcDSN = "DSN=DNC;UID=sa;PWD="
Set connect = CreateObject("ADODB.Connection")
Set fso = CreateObject("Scripting.FileSystemObject")

connect.Open OdbcDSN

sql="select count (*) from chq where val7 ='"&BQ&"' and val8 ='"&T&"'"

Set resultSet = connect.Execute(sql)
WScript.Echo resultSet()
VIGN= resultSet()
resultSet.Close
connect.Close

WScript.Echo "Fin du Traitement STATS : Il y a eu "&VIGN&" de vignettes
archivée(s)pour la "&BQ&" , à la date de Traitement du
:"&T&" !"

Set connect = Nothing
Set VIGN = Nothing
WScript.Quit(0)


Merci d'avance.



Essaye plutot comme cela si c'est du SQL SERVER :

' OdbcDSN = "DSN=DNC;UID=sa;PWD="
Odbc = "driver={SQL Server};SERVER7.0.0.1;" & _
"UID=sa;PWD=;DATABASE=LeNomDeLaBase"
' Remplace l'adresse IP par l'adresse IP de ton SQL SERVER ainsi que le nom
de la base

Set connect = CreateObject("ADODB.Connection")
Set fso = CreateObject("Scripting.FileSystemObject")

connect.Open Odbc

sql="SELECT count (*) FROM chq " & _
"WHERE val7 ='" & BQ & "' and val8 ='" & T & "';"

Set resultSet = connect.Execute(sql)
' WScript.Echo resultSet()
WScript.Echo resultSet.Fields(0)
VIGN=resultSet.Fields(0)
resultSet.Close
connect.Close

WScript.Echo "Fin du Traitement STATS : Il y a eu " & VIGN & _
" de vignettes archivée(s)pour la " & BQ & _
" , à la date de Traitement du :" & T & " !"

Set resultSet = Nothing
Set connect = Nothing
Set fso = Nothing
WScript.Quit(0)



Votre script fonctionne correctement avec Odbc au lieu de mon OdbcDSN.
Je suis dégouté car mon bout de vbs fonctionne dans une autre
aplication et je n'ai fait que le reprendre et au lieu d'avoir:

sql="select* from chq where val4 ='000910182115' and val5
='000000500000' and val8 ='20060619'"


Set resultSet = connect.Execute(sql)
resultSet.MoveFirst
Do While Not resultSet.eof
WScript.Echo resultSet.fields("val6").Value
resultSet.MoveNext
Loop

je voulais transformer le résulat de la requête SQL sql="SELECT count
(*) FROM chq " & "WHERE val7 ='" & BQ & "' and val8 ='" & T & "';"
et je savais pas comment récupérer le résultat sans la 'val6'
resultSet.fields("val6").Value du count.

Dommage, je fais donc refaire tous le vbs avec un connexion en obdc
pour récupérer le resultSet.Fields(0).

Merci
Michel__D
Le #21435211
Re,

---DGI972--- a écrit :
Michel__D a écrit :
Bonjour,

---DGI972--- a écrit :
Bonjour,

J'essaye de récupérer le résultat d'un select count (*) dans une
variable pour l'afficher (dans un premier temps) mais j'ai droit a
un beau :

Nombre d'arguments ou affectation de propriété incorrects.

Je suis sur de ma requête et de mon OdbcDSN car elle fonctionne a part.
Par contre c'est la première fois que je n'attends pas de retour du
résultat d'une table mais de la valeur du compteur count.
Voici le bout de vbs:

OdbcDSN = "DSN=DNC;UID=sa;PWD="
Set connect = CreateObject("ADODB.Connection")
Set fso = CreateObject("Scripting.FileSystemObject")

connect.Open OdbcDSN

sql="select count (*) from chq where val7 ='"&BQ&"' and val8 ='"&T&"'"

Set resultSet = connect.Execute(sql)
WScript.Echo resultSet()
VIGN= resultSet()
resultSet.Close
connect.Close

WScript.Echo "Fin du Traitement STATS : Il y a eu "&VIGN&" de
vignettes archivée(s)pour la "&BQ&" , à la date de Traitement du
:"&T&" !"

Set connect = Nothing
Set VIGN = Nothing
WScript.Quit(0)


Merci d'avance.



Essaye plutot comme cela si c'est du SQL SERVER :

' OdbcDSN = "DSN=DNC;UID=sa;PWD="
Odbc = "driver={SQL Server};SERVER7.0.0.1;" & _
"UID=sa;PWD=;DATABASE=LeNomDeLaBase"
' Remplace l'adresse IP par l'adresse IP de ton SQL SERVER ainsi que
le nom de la base

Set connect = CreateObject("ADODB.Connection")
Set fso = CreateObject("Scripting.FileSystemObject")

connect.Open Odbc

sql="SELECT count (*) FROM chq " & _
"WHERE val7 ='" & BQ & "' and val8 ='" & T & "';"

Set resultSet = connect.Execute(sql)
' WScript.Echo resultSet()
WScript.Echo resultSet.Fields(0)
VIGN=resultSet.Fields(0)
resultSet.Close
connect.Close

WScript.Echo "Fin du Traitement STATS : Il y a eu " & VIGN & _
" de vignettes archivée(s)pour la " & BQ & _
" , à la date de Traitement du :" & T & " !"

Set resultSet = Nothing
Set connect = Nothing
Set fso = Nothing
WScript.Quit(0)



Votre script fonctionne correctement avec Odbc au lieu de mon OdbcDSN.
Je suis dégouté car mon bout de vbs fonctionne dans une autre
aplication et je n'ai fait que le reprendre et au lieu d'avoir:

sql="select* from chq where val4 ='000910182115' and val5
='000000500000' and val8 ='20060619'"


Set resultSet = connect.Execute(sql)
resultSet.MoveFirst
Do While Not resultSet.eof
WScript.Echo resultSet.fields("val6").Value
resultSet.MoveNext
Loop

je voulais transformer le résulat de la requête SQL sql="SELECT count
(*) FROM chq " & "WHERE val7 ='" & BQ & "' and val8 ='" & T & "';"
et je savais pas comment récupérer le résultat sans la 'val6'
resultSet.fields("val6").Value du count.

Dommage, je fais donc refaire tous le vbs avec un connexion en obdc
pour récupérer le resultSet.Fields(0).

Merci



Pour utiliser l'autre syntaxe que tu avais déja utilisé il vaut mieux
nommer ton champ calculé :

sql="SELECT count(*) AS Comptage FROM chq WHERE val7 ='" & BQ & "' and
val8 ='" & T & "';"

[....]

WScript.Echo resultSet.Fields("Comptage").Value
---DGI972---
Le #21437841
Michel__D a écrit :
Re,

---DGI972--- a écrit :
Michel__D a écrit :
Bonjour,

---DGI972--- a écrit :
Bonjour,

J'essaye de récupérer le résultat d'un select count (*) dans une variable
pour l'afficher (dans un premier temps) mais j'ai droit a un beau :

Nombre d'arguments ou affectation de propriété incorrects.

Je suis sur de ma requête et de mon OdbcDSN car elle fonctionne a part.
Par contre c'est la première fois que je n'attends pas de retour du
résultat d'une table mais de la valeur du compteur count.
Voici le bout de vbs:

OdbcDSN = "DSN=DNC;UID=sa;PWD="
Set connect = CreateObject("ADODB.Connection")
Set fso = CreateObject("Scripting.FileSystemObject")

connect.Open OdbcDSN

sql="select count (*) from chq where val7 ='"&BQ&"' and val8 ='"&T&"'"

Set resultSet = connect.Execute(sql)
WScript.Echo resultSet()
VIGN= resultSet()
resultSet.Close
connect.Close

WScript.Echo "Fin du Traitement STATS : Il y a eu "&VIGN&" de vignettes
archivée(s)pour la "&BQ&" , à la date de Traitement du
:"&T&" !"

Set connect = Nothing
Set VIGN = Nothing
WScript.Quit(0)


Merci d'avance.



Essaye plutot comme cela si c'est du SQL SERVER :

' OdbcDSN = "DSN=DNC;UID=sa;PWD="
Odbc = "driver={SQL Server};SERVER7.0.0.1;" & _
"UID=sa;PWD=;DATABASE=LeNomDeLaBase"
' Remplace l'adresse IP par l'adresse IP de ton SQL SERVER ainsi que le
nom de la base

Set connect = CreateObject("ADODB.Connection")
Set fso = CreateObject("Scripting.FileSystemObject")

connect.Open Odbc

sql="SELECT count (*) FROM chq " & _
"WHERE val7 ='" & BQ & "' and val8 ='" & T & "';"

Set resultSet = connect.Execute(sql)
' WScript.Echo resultSet()
WScript.Echo resultSet.Fields(0)
VIGN=resultSet.Fields(0)
resultSet.Close
connect.Close

WScript.Echo "Fin du Traitement STATS : Il y a eu " & VIGN & _
" de vignettes archivée(s)pour la " & BQ & _
" , à la date de Traitement du :" & T & " !"

Set resultSet = Nothing
Set connect = Nothing
Set fso = Nothing
WScript.Quit(0)



Votre script fonctionne correctement avec Odbc au lieu de mon OdbcDSN.
Je suis dégouté car mon bout de vbs fonctionne dans une autre aplication et
je n'ai fait que le reprendre et au lieu d'avoir:

sql="select* from chq where val4 ='000910182115' and val5
='000000500000' and val8 ='20060619'"


Set resultSet = connect.Execute(sql)
resultSet.MoveFirst
Do While Not resultSet.eof
WScript.Echo resultSet.fields("val6").Value
resultSet.MoveNext
Loop

je voulais transformer le résulat de la requête SQL sql="SELECT count (*)
FROM chq " & "WHERE val7 ='" & BQ & "' and val8 ='" & T & "';"
et je savais pas comment récupérer le résultat sans la 'val6'
resultSet.fields("val6").Value du count.

Dommage, je fais donc refaire tous le vbs avec un connexion en obdc pour
récupérer le resultSet.Fields(0).

Merci



Pour utiliser l'autre syntaxe que tu avais déja utilisé il vaut mieux nommer
ton champ calculé :

sql="SELECT count(*) AS Comptage FROM chq WHERE val7 ='" & BQ & "' and val8
='" & T & "';"

[....]

WScript.Echo resultSet.Fields("Comptage").Value



Ca marche pas.

J'ai un message d'erreur ADODB.Recordset:
Impossible de trouver l'objet dans la collection correspondant au nom
ou à la référence ordinal demandé.

Voiçi le code utilisé:

connect.Open OdbcDSN
sql="select count (*) from chq where val7 ='"&BQ&"' and val8 ='"&T&"'"

Set resultSet = connect.Execute(sql)
WScript.Echo resultSet.Fields("Comptage").Value
VIGN=resultSet.Fields("Comptage").Value
resultSet.Close

connect.Close

WScript.Echo "Fin du Traitement STATS : Il y a eu "&VIGN&" de vignettes
archivée(s)pour la "&BQ&" , à la date de Traitement du :"&T&" !"
---DGI972---
Le #21437831
---DGI972--- a écrit :
Michel__D a écrit :
Re,

---DGI972--- a écrit :
Michel__D a écrit :
Bonjour,

---DGI972--- a écrit :
Bonjour,

J'essaye de récupérer le résultat d'un select count (*) dans une
variable pour l'afficher (dans un premier temps) mais j'ai droit a un
beau :

Nombre d'arguments ou affectation de propriété incorrects.

Je suis sur de ma requête et de mon OdbcDSN car elle fonctionne a part.
Par contre c'est la première fois que je n'attends pas de retour du
résultat d'une table mais de la valeur du compteur count.
Voici le bout de vbs:

OdbcDSN = "DSN=DNC;UID=sa;PWD="
Set connect = CreateObject("ADODB.Connection")
Set fso = CreateObject("Scripting.FileSystemObject")

connect.Open OdbcDSN

sql="select count (*) from chq where val7 ='"&BQ&"' and val8 ='"&T&"'"

Set resultSet = connect.Execute(sql)
WScript.Echo resultSet()
VIGN= resultSet()
resultSet.Close
connect.Close

WScript.Echo "Fin du Traitement STATS : Il y a eu "&VIGN&" de vignettes
archivée(s)pour la "&BQ&" , à la date de Traitement du
:"&T&" !"

Set connect = Nothing
Set VIGN = Nothing
WScript.Quit(0)


Merci d'avance.



Essaye plutot comme cela si c'est du SQL SERVER :

' OdbcDSN = "DSN=DNC;UID=sa;PWD="
Odbc = "driver={SQL Server};SERVER7.0.0.1;" & _
"UID=sa;PWD=;DATABASE=LeNomDeLaBase"
' Remplace l'adresse IP par l'adresse IP de ton SQL SERVER ainsi que le
nom de la base

Set connect = CreateObject("ADODB.Connection")
Set fso = CreateObject("Scripting.FileSystemObject")

connect.Open Odbc

sql="SELECT count (*) FROM chq " & _
"WHERE val7 ='" & BQ & "' and val8 ='" & T & "';"

Set resultSet = connect.Execute(sql)
' WScript.Echo resultSet()
WScript.Echo resultSet.Fields(0)
VIGN=resultSet.Fields(0)
resultSet.Close
connect.Close

WScript.Echo "Fin du Traitement STATS : Il y a eu " & VIGN & _
" de vignettes archivée(s)pour la " & BQ & _
" , à la date de Traitement du :" & T & " !"

Set resultSet = Nothing
Set connect = Nothing
Set fso = Nothing
WScript.Quit(0)



Votre script fonctionne correctement avec Odbc au lieu de mon OdbcDSN.
Je suis dégouté car mon bout de vbs fonctionne dans une autre aplication
et je n'ai fait que le reprendre et au lieu d'avoir:

sql="select* from chq where val4 ='000910182115' and val5
='000000500000' and val8 ='20060619'"


Set resultSet = connect.Execute(sql)
resultSet.MoveFirst
Do While Not resultSet.eof
WScript.Echo resultSet.fields("val6").Value
resultSet.MoveNext
Loop

je voulais transformer le résulat de la requête SQL sql="SELECT count (*)
FROM chq " & "WHERE val7 ='" & BQ & "' and val8 ='" & T & "';"
et je savais pas comment récupérer le résultat sans la 'val6'
resultSet.fields("val6").Value du count.

Dommage, je fais donc refaire tous le vbs avec un connexion en obdc pour
récupérer le resultSet.Fields(0).

Merci



Pour utiliser l'autre syntaxe que tu avais déja utilisé il vaut mieux
nommer ton champ calculé :

sql="SELECT count(*) AS Comptage FROM chq WHERE val7 ='" & BQ & "' and
val8 ='" & T & "';"

[....]

WScript.Echo resultSet.Fields("Comptage").Value



Ca marche pas.

J'ai un message d'erreur ADODB.Recordset:
Impossible de trouver l'objet dans la collection correspondant au nom ou à la
référence ordinal demandé.

Voiçi le code utilisé:

connect.Open OdbcDSN
sql="select count (*) from chq where val7 ='"&BQ&"' and val8 ='"&T&"'"

Set resultSet = connect.Execute(sql)
WScript.Echo resultSet.Fields("Comptage").Value
VIGN=resultSet.Fields("Comptage").Value
resultSet.Close

connect.Close

WScript.Echo "Fin du Traitement STATS : Il y a eu "&VIGN&" de vignettes
archivée(s)pour la "&BQ&" , à la date de Traitement du :"&T&" !"



OUPS Désolé
Cela fonctionne correctement.

j'avais raté le SELECT count(*) AS Comptage

Merci merci merci.
Publicité
Poster une réponse
Anonyme