PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 22 → Windev 22 : HExécuteRequêteSQL & Requête de mise à jour
Windev 22 : HExécuteRequêteSQL & Requête de mise à jour
Débuté par THEWORLDASGARP, 21 avr. 2017 16:36 - 1 réponse
//hostimage.webdev.info/avatars/MOyFtNHOAv5nHPVslP51iw
Membre enregistré
40 messages
Posté le 21 avril 2017 - 16:36
Bonjour,

Je bataille sur un soucis sans doute bête, mais qui me bloque...


Je lance une requête de mise à jour via " HExécuteRequêteSQL ", mais la mise à jour ne s’effectue pas.

Voici le code :

// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
// { Activation de l'equipe Sélectionné }
// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
// [ "P_NOM_EQPE" => Nom de l'équipe à activer/Désactiver ]
// [ "P_MODE" => Booléen pour activer/désactiver l'équipe transmise en paramètre ]

Procedure PROC_RQTE_UPD_STATUT_EQPE(P_NOM_EQPE est une chaîne = "",P_MODE est un booléen = Faux )

// [ Source de données ]
// ( Charge la description de la table "PROJETS" dans la source de données )
// ( Remarque : cela n'est possible que si la requête ne porte que sur une seule table )
L_Srce_SrcDta est une Source dede Données <Description=EQUIPE_ENT>

// [ Réception de la requête à exécuter ]
L_Chr_RqteTxt est une chaîne = ""

// [ Construction de la condition ]
L_Chr_RqteCnd est une chaîne = ""

// [ Construction de la requête ]
L_Chr_RqteBld est une chaîne = ""

// [ Réception Booléen résultat exécution requête ]
LBool_Test_Sql est un booléen = Faux

// [ Nbre enregistrements retournés par la requête ]
xLNbreRcdSrcData est un numérique = 0


// { Début requête }
L_Chr_RqteTxt = [
update EQUIPE_ENT set EQUIPE_ACT %1
]

// { Condition requête }
L_Chr_RqteCnd = " = " + "'" + P_MODE + "'" + " where EQUIPE_RQP = " + "'" + P_NOM_EQPE + "'"


// { Construction requête }
L_Chr_RqteBld = ChaîneConstruit(L_Chr_RqteTxt, L_Chr_RqteCnd)

// { Exécution de la requête dans une procédure dédiée }
// [ Passe en paramètre la source de données et la requête SQL construite ]
LBool_Test_Sql = PROC_RQTE_EXECUTE_SQL(L_Srce_SrcDta,L_Chr_RqteBld)


et voici le code de "PROC_RQTE_EXECUTE_SQL" :
ROCEDURE PROC_RQTE_EXECUTE_SQL(P_SRC_DTA,P_SQL_BLD)

L_Bool_Test_Sql est un booléen = Faux

SELON EnModeTest()

// { Exécution en mode test }
CAS Vrai
L_Bool_Test_Sql = HExécuteRequêteSQL(P_SRC_DTA,CHRONOS_DEV,hRequêteDéfaut,P_SQL_BLD)

AUTRE CAS
// { Exécution en prod }
L_Bool_Test_Sql = HExécuteRequêteSQL(P_SRC_DTA,CHRONOS_PRD,hRequêteDéfaut,P_SQL_BLD)
FIN

RENVOYER L_Bool_Test_Sql


A priori, rien de bien compliqué...}:(

Merci pour votre coup de main.


J.C
//hostimage.webdev.info/avatars/MOyFtNHOAv5nHPVslP51iw
Membre enregistré
40 messages
Posté le 21 avril 2017 - 17:47
Bonjour,

Désolé d'avoir pollué ce forum inutilement :D

j'ai trouvé, c'était ma requête qui était incorrecte :)

J.C