Lorsqu'on essaie de s'attendre à l'inattendu, il peut en résulter une grande quantité de code. Dans notre cas, le calcul du pourcentage de profit, qui a commencé par une seule ligne de code, en est maintenant à une bonne dizaine. Nous avons tendance à utiliser de tels calculs fréquemment. Et
Eviter la répétition
même dans sa version finale, notre exemple pourrait être amélioré. Avec tout calcul commun, un petit effort supplémentaire peut rendre les applications plus faciles à maintenir. En fait, il faut diviser le code commun en une procédure et un programme de service.
Avec les applications de gestion, il est facile de créer un programme de service pour chaque ensemble de calculs de même nature. On peut, par exemple, créer un programme de service appelé SlsAnlPrc, qui contient des procédures pour effectuer des fonctions d’analyse de ventes communes. Le programme de service en capsule le calcul du pourcentage de profit dans une procédure appelée GetPrfPc. Le membre d’en-tête Sales Analysis Procedures (SlsAnlPrcH, figure 1) définit des prototypes de procédures copiables dans n’importe quel programme. Le membre Sales Analysis Procedures (SlsAnlPrc, figure 2) contient le code du programme de service proprement dit.
Le programme de service SlsAnlPrc contient la procédure GetPrfPc chargée d’extraire le pourcentage de profit. La procédure GetPrcPc attend le montant de la vente au détail dans le paramètre RtlAmt et le montant du coût dans le paramètre CstAmt et elle envoie le pourcentage de profit à PrfPc. La procédure renvoie une valeur logique de *On (réussite) ou de *Off (échec). La procédure contient tout le code nécessaire pour vérifier d’éventuelles erreurs sur les expressions arithmétiques. Notons comment les cartes D dans la procédure définissent PrfPcMax et PrfPcMin pour éviter de coder en dur les valeurs maximales et minimales que PrfPc peut contenir.
Pour utiliser les procédures de SlsAnlPrc dans un programme, il faut coder une directive Copy pour le membre SlsAnlPrcH en n’importe quel point des cartes D du programme :
/Copy AppKitCpy,SlsAnlPrcH
Pour appeler la procédure GetPrfPc, il faut ensuite coder les cartes C suivantes :
C If Not GetPrfPc( Retail:
C Cost:
C PrfPc )
C Eval ErrId = SlsAnlErrId
. . . Signaler l’erreur
C EndIf
Observons comment la valeur logique renvoyée par la procédure sert à traiter les erreurs éventuelles rencontrées par la procédure. Le membre d’en-tête SlsAnlPrcH définit une variable externe appelée SlsAnlErrId qui est exportée par le programme de service SlsAnlPrc et importée dans les programmes applicatifs. Les variables externes constituent un moyen de partager des informations entre des procédures sans encombrer les interfaces de ces dernières. SlsAnlErrId contient l’ID de l’erreur qui a provoqué la défaillance d’une procédure dans SlsAnlPrc. On peut référencer SlsAnlErrId directement dans les programmes, comme illustré ci-dessus, au lieu de le transmettre comme un paramètre.
Téléchargez cette ressource
Guide de Cyber-résilience pour Microsoft 365
La violation de votre tenant M365 va au-delà d’un simple incident de cybersécurité. Elle peut entraîner une interruption opérationnelle généralisée, des perturbations commerciales et une exposition de vos données sensibles. Découvrez les méthodes et technologies pour évaluer, comparer et renforcer votre posture de sécurité Microsoft 365.
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Tendances 2026 : l’IA devra prouver sa rentabilité
- L’identité numérique : clé de voûte de la résilience et de la performance en 2026
- CES 2026 : l’IA physique et la robotique redéfinissent le futur
- Les 6 tournants qui redéfinissent l’IA en entreprise
Articles les + lus
CES 2026 : l’IA physique et la robotique redéfinissent le futur
Les 3 prédictions 2026 pour Java
Semi-conducteurs : comment l’Irlande veut contribuer à atténuer la pénurie mondiale de puces
Face à l’urgence écologique, l’IT doit faire sa révolution
D’ici 2030, jusqu’à 90 % du code pourrait être écrit par l’IA, pour les jeunes développeurs, l’aventure ne fait que commencer
À la une de la chaîne Tech
- CES 2026 : l’IA physique et la robotique redéfinissent le futur
- Les 3 prédictions 2026 pour Java
- Semi-conducteurs : comment l’Irlande veut contribuer à atténuer la pénurie mondiale de puces
- Face à l’urgence écologique, l’IT doit faire sa révolution
- D’ici 2030, jusqu’à 90 % du code pourrait être écrit par l’IA, pour les jeunes développeurs, l’aventure ne fait que commencer
