Bonjour à tous.
Pourquoi lorsque je fais ça:
La valeur retourné est 1 au lieu de mon CA.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 toto est un chaîne = ("select sum(CAreg) from TabReg") CA = SQLExec(toto, "tot") + ""
Bonjour à tous.
Pourquoi lorsque je fais ça:
La valeur retourné est 1 au lieu de mon CA.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 toto est un chaîne = ("select sum(CAreg) from TabReg") CA = SQLExec(toto, "tot") + ""
Bonjour,
Parce que SqlExec te renvoie un booléen qui te permet de savoir si la requête s'est bien exécutée ou pas. Je pense qu'il te faut relire l'aide en ligne de SqlExec().
Tatayo.
On est rassuré, la fonction SQLExec fonctionne donc correctementLa valeur retourné est 1 au lieu de mon CA
Il faudrait faire un minimum d'effort et au moins regarder l'aide de la fonction avant de poster sur le forum : il y a un exemple de code sur la 1ere page d'aide de cette fonction
Pascal H.
phapps.e-monsite.com
Tout à fait exact, donc je me suis dit avec un SQLLitCol, comme ça:
Mais non.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 toto est un chaîne = ("select sum(CAreg) from TabReg") sCAP est une chaîne = SQLExec(toto, "tot") CA = SQLLitCol("tot", 1) + ""
Je ne vois pas trop car pour moi le SQLLitCol allait renvoyer la 1ere valeur de ma col 1 de ma requète.
Hello,
SqlExce ne récupère pas de résultats de la mémoire. Pour que tu obtiennes ton résultat, il faut appeler SQLPremier, SQLTable ou SQLFetch.
Dans ton cas avec SqlPremier (par exemple):
Bon dév
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 toto est un chaîne = ("select sum(CAreg) from TabReg") sCAP est une chaîne = SQLExec(toto, "tot") SqlPremier("tot") CA = SQLLitCol("tot", 1) + "€"
Samuel
Windev-Webdev - Oracle- PLSQL
est l'ami de tout le monde
Désolé mais je vais me répéter : regarde l'aide des fonctions que tu utilises
Tu lis l'enregistrement en cours, il faudrait peut être se positionner sur l'enregistrement à lire : SQLPRemier, SQLAvance ...
Pascal H.
phapps.e-monsite.com
Merci de cette réponse, mais j'ai déjà tester SQLPremier, et cela ne marche pas.
Je me retrouve encore une fois avec rien.
Quand je mets des points d'arrets, cette ligne:
CA = SQLLitCol("tot", 1) + "€"
CA me rapporte CA
Et quand je ferme ma requète,
CA me rapporte "€".
Je sais que je ne lis pas toujours avec intention l'aide, mais la j'ai vraiment chercher et j'ai essayer SQLPremier, un tant que avec SQLAvance, mais rien ne s'affiche, je ne récupère pas ma valeur.
Tu peux nous donner ton code complet, avec la déclaration des variables utilisées
Pascal H.
phapps.e-monsite.com
Ah oui, très bonne question, j'ai oublier de dire que CA est un libellé, c'est peut être ça dont tu as besoin.
Mais j'ai essayer de mettre:
Pensant que peut être il fallait l'enregistrer dans une variable mais ce n'est pas mieux.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 toto est un chaîne = ("select sum(CAreg) from TabReg") sCAP est une chaîne = SQLExec(toto, "tot") SQLPremier("tot") CASSE est une chaîne = SQLLitCol("tot", 1) CA = CASSE + ""
Voici ce que l'on peut trouver quand on regarde l'aide en ligne de Windev pour SqlExec:
Je rejoins hpascal, regarde l'aide en ligne et tu auras ce que tu cherches.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 // Exécuter la requête et récupérer le résultat ligne à ligne i est un entier = 0 SQLExec("SELECT NOM, PRENOM, POSTE, PHOTO FROM CLIENT", "REQ1") TANTQUE SQLAvance("REQ1") = 0 // Il y a encore une ligne à lire i++ // Récupérer les données NOM[i] = SQLLitCol("REQ1", 1) PRENOM[i] = SQLLitCol("REQ1", 2) POSTE[i] = SQLLitCol("REQ1", 3) {"IMAGE"+i} = SQLLitMémo("REQ1", 4) FIN SQLFerme("REQ1")
Tatayo
Merci tatayo, mais comme dit un peu plus haut, j'ai regarder l'aide en ligne quand même et j'ai tester ceci:
Mais cela ne marche pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 i est un entier = 0 toto est un chaîne = ("select sum(CAreg) from TabReg") sCAP est une chaîne = SQLExec(toto, "tot") TANTQUE SQLAvance("tot") = 0 // Il y a encore une ligne à lire i++ // Récupérer les données CA[i] = SQLLitCol("tot", 1) FIN SQLFerme("tot")
Maintenant je me suis souvenue d'une erreur similaire que j'avais eu une fois avec cette histoire crochet, il avait fallu que je les doubles.
Et donc cette solution marche:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 i est un entier = 0 toto est un chaîne = ("select sum(CAreg) from TabReg") sCAP est une chaîne = SQLExec(toto, "tot") TANTQUE SQLAvance("tot") = 0 // Il y a encore une ligne à lire i++ // Récupérer les données CA[[i]] = SQLLitCol("tot", 1) + "" FIN SQLFerme("tot")
Voila problème résolu, merci à tous.
ok
Juste quelques remarques :
SQLExec retoune VRAI ou FAUX, pourquoi mettre ça dans une chaîne ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part sCAP est une chaîne = SQLExec(toto, "tot")
Le mieux c'est de tester si l'exécution c'est bien passéeEnsuite pour tester d'où vient le problème, procède par étapes :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 SI SQLExec(... ALORS // ton code si ok SINON // Afficher message d'erreur FIN
- est-ce ma requêtre fonctionne ? (SQLExec a renvoyé VRAI ?)
- est-ce que je peux lire ma colonne (trace ou info de SQLLitCol("tot", 1))
Tu aurais vu de suite que le problème venait de l'affectation à ton libellé
Essaye de nommer aussi tes champs et variables avec des préfixes
Par exemple : Sais_ pour un champ de saisie, Lib_ pour un libellé
On aurait lu Lib_CA on aurait su de suite que c'est un libellé
Bon courage pour la suite
Pascal H.
phapps.e-monsite.com
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager