Bonjour à tous et merci d avance pour votre aide.
Voilà, je souhaiterai gérer efficacement mes erreurs d intégrités dites normales. Par exemple si je supprime
un client qui dispose de commandes, la gestion automatique de Windev se déclenche et c est normal. Je souhaiterai intercepter cette erreur, envoyer un message à mon utilisateur et annuler la suppression de l enregistrement.
Pour ce faire, j ai tester plusieurs fonctions WIndev dont Hgereintégrité qui effectivement stoppe le message de Windev mais n'annule pas l opération de suppression, voici le code repris sur l aide windev. Dans l exemple ci dessous d ailleurs comme la gestion de l erreur est gérée il n y a pas plus d erreur détéctée ensuite...
HGèreIntégrité("*","*",hEnSuppression+hCardinalité+hEnModification,Faux)
SI HSupprime(Clients) =Faux ALORS
SI HErreurIntégrité () = Vrai ALORS
info("Erreur d intégrité détéctée...")
FIN
FIN
ExécuteTraitement(FntClients.BtnTous,trtClic)
Donc je souhaiterai savoir comment intercepter une erreur et stopper ma procédure de suppression !
En attendant, je code une procédure qui vérifie que les tables reliées à mon client ne dispose pas d 'enregistrements. Cependant, est ce vraiment la meilleure solution ??
Je reste à votre disposition pour toutes questions
merci à vous
Arnaud