| |
Registered member 231 messages |
|
Posted on October, 11 2021 - 6:08 PM |
bonjour
j'ai une erreur que je n'explique pas dans :
PROCÉDURE agregcommande() sdcertificat est une Source de Données sdcertificat="certificat_ent" sddetail est une Source de Données sddetail = "CERTIFICAT_DET" sdcommande est une Source de Données sdcommande = "commande_ent" SI PAS HDéclareExterne("certificat_ent.FIC", "certificat_ent") ALORS // Erreur de déclaration du fichier //RENVOYER HErreurInfo() FIN SI PAS HDéclareExterne("certificat_det.FIC", "certificat_det") ALORS // Erreur de déclaration du fichier //RENVOYER HErreurInfo() FIN SI PAS HDéclareExterne("commande_ent.FIC", "commande_ent") ALORS // Erreur de déclaration du fichier //RENVOYER HErreurInfo() FIN req est une Source de Données req2 est une Source de Données sQl est une chaîne
//Sablier(Vrai)
POUR TOUT sdcertificat AVEC "etatcertif='E' OU etatcertif='F' OU etatcertif='J' ET datecre>='20190101'" // pour les certificat exportés... // rechercher les details etalonnage effectué correct ou incorrect... //si sdcertificat.NoCertificat="Z1912509" alors stop HExécuteRequêteSQL(req,"SELECT COUNT("+sddetail+".NoCertificat) AS Comptage_1 FROM "+sddetail+" WHERE ("+sddetail+".EtatCertif = 'B' ) AND "+sddetail+".NoCertificat = '"+sdcertificat.NoCertificat+"' GROUP BY "+sddetail+".nocertificat ") HLitPremier(req) // compter les masses pour ce CE... HExécuteRequêteSQL(req2,"SELECT COUNT("+sddetail+".RgMasse) AS Comptage_1,"+sddetail+".NoCertificat AS NoCertificat FROM "+sddetail+" WHERE "+sddetail+".NoCertificat ='"+ sdcertificat.NoCertificat+"' GROUP BY "+sddetail+".NoCertificat") HLitPremier(req2) SI req.comptage_1 = req2.comptage_1 ALORS //si toutes les masses sont terminées pour ce CE... HLitRecherchePremier(sdcertificat,NoCertificat,sdcertificat.NoCertificat) SI HTrouve(sdcertificat) ALORS sdcertificat.EtatCertif="B" // marquer CE à étalonnage correct HModifie(sdcertificat) FIN //sinon //OU etatcertif='F'sdCertificat.etatcertif="F" // marquer CE à étalonnage incorrect FIN //tracer("agregecmde()","agrege "+sdcertificat.NoCertificat) FIN
dans la ligne de la boucle POUR HExécuteRequêteSQL(req,"SELECT COUNT("+sddetail+".NoCertificat) AS Comptage_1 FROM "+sddetail+" WHERE ("+sddetail+".EtatCertif = 'B' ) AND "+sddetail+".NoCertificat = '"+sdcertificat.NoCertificat+"' GROUP BY "+sddetail+".nocertificat ")
le signe + est souligné en rouge avec le message type incompatible est ce un erreur ou un avertissement ? car la procédure fonctionne il me semble
merci
-- LH |
| |
| |
| | | |
|
| | |
| |
Registered member 231 messages |
|
Posted on October, 19 2021 - 2:01 PM |
bonjour
toujours pas d'idée sur ce phénomène...
merci
-- LH |
| |
| |
| | | |
|
| | |
| |
Posted on October, 19 2021 - 3:23 PM |
....le signe + est souligné en rouge avec le message type incompatible...
Lequel ? A vu de nez, j'en compte 11 |
| |
| |
| | | |
|
| | |
| |
Registered member 231 messages |
|
Posted on October, 20 2021 - 11:41 AM |
oui mais ça correspond à quoi ?? ça n’empêche pas la proc de fctionner... comment corriger ?
merci
-- LH |
| |
| |
| | | |
|
| | |
| |
Posted on October, 20 2021 - 2:50 PM |
si tu ne nous dis pas QUEL signe + est en erreur, on n'a aucun moyen de te répondre |
| |
| |
| | | |
|
| | |
| |
Registered member 329 messages Popularité : +28 (32 votes) |
|
Posted on October, 20 2021 - 3:40 PM |
Déjà, je pense que tu peux commencer par simplifier ta requête:
HExécuteRequêteSQL(req, "SELECT COUNT(NoCertificat) AS Comptage_1 FROM " + sddetail + " WHERE EtatCertif = 'B' AND NoCertificat = '" + sdcertificat.NoCertificat + "' GROUP BY NoCertificat"
-- ——————————————————————————————————— Ce qui se conçoit bien se code clairement et se débogue facilement...
- Pastiche d’une citation de Nicolas Boileau - |
| |
| |
| | | |
|
| | |
| |
Registered member 231 messages |
|
Posted on October, 20 2021 - 4:12 PM |
c'est justement tous les signes + qui sont soulignes rouges
-- LH |
| |
| |
| | | |
|
| | |
| |
Registered member 231 messages |
|
Posted on October, 20 2021 - 4:14 PM |
en fait c'est le 1er + de chaque HExécuteRequêteSQL
-- LH |
| |
| |
| | | |
|
| | |
| |
Registered member 231 messages |
|
Posted on October, 20 2021 - 4:20 PM |
si je supprime le sddetail +".NoCertificat comme le précise Dergen, ce qui est vrai, alors c'est le 2eme+ qui se souligne rouge
-- LH |
| |
| |
| | | |
|
| | |
| |
Posted on October, 20 2021 - 4:21 PM |
Bonjour,
sddetail c'est une source de données, dans la requête tu veux ajouter la chaine "sddetail". Est-ce qu'il faudrait pas mettre sddetail..Nom ou un truc dans le genre ? |
| |
| |
| | | |
|
| | |
| |
Registered member 329 messages Popularité : +28 (32 votes) |
|
Posted on October, 20 2021 - 4:49 PM |
A mon avis, comme cela, en étant loin de mon Windev, je dirait que ton PB est que tu définis la variable "sddetail" comme une source de données. et que tu mélanges les genres avec le besoin d'une variable de type chaine dans la construction de ta requête.
-- ——————————————————————————————————— Ce qui se conçoit bien se code clairement et se relit facilement...
- Pastiche d’une citation de Nicolas Boileau - |
| |
| |
| | | |
|
| | |
| |
Registered member 329 messages Popularité : +28 (32 votes) |
|
Posted on October, 20 2021 - 4:53 PM |
| |
| |
| | | |
|
| | |
| |
Registered member 90 messages Popularité : +7 (7 votes) |
|
Posted on October, 20 2021 - 9:30 PM |
Il faudrait écrire la chaine de code SQL avec
sddetail..Nom, donc une chaine, au lieu de sdderail qui est une source de données |
| |
| |
| | | |
|
| | |