La compilation conditionnelle est normalement facile à utiliser : il suffit généralement de quelques blocs conditionnels simples. Pour des situations plus complexes, voici quelques conseils :
Gardez les blocs de conditions courts. Si vous voulez que le compilateur saute à la fin d’un membre source, utilisez
/IF DEFINED(VERSION1)
Bien maîtriser les conditions
/>/EOF
/ENDIF
plutôt que le bloc suivant avec /ENDIF à la fin du membre :
/IF NOT DEFINED(VERSION1)
.
.
.
/ENDIF
Utilisez des blocs de conditions imbriqués pour simuler AND :
/IF DEFINED(CONDITION1)
/IF DEFINED(CONDITION2)
.
.
.
/ENDIF
/ENDIF
Définissez des noms de conditions supplémentaires pour simuler OR :
/IF DEFINED(CONDITION1)
/DEFINE CONDITION1_OR_2
/ELSEIF DEFINED(CONDITION2)
/DEFINE CONDITION1_OR_2
/ENDIF
/IF DEFINED(CONDITION1_OR_2)
.
.
.
/ENDIF
Définissez aussi des noms de conditions supplémentaires pour éviter de répéter des AND :
/IF DEFINED(CONDITION1)
/IF DEFINED(CONDITION2)
/DEFINE CONDITION1_AND_2
/ENDIF
/ENDIF
/IF DEFINED(CONDITION1_AND_2)
.
.
.
/ENDIF
.
.
.
/IF DEFINED(CONDITION1_AND_2)
.
.
.
/ENDIF
Utilisez des commentaires au début du programme source pour documenter les noms de conditions qui doivent être définis sur le paramètre DEFINE sur les commandes CRTBNDRPG et CRTRPGMOD. Si un nom de condition nécessaire n’est pas spécifié sur le paramètre DEFINE, le programme peut quand même se compiler. On peut forcer une erreur de compilation au début du membre source si rien n’est spécifié :
/NOT IF DEFINED(CONDITION1)
/NOT IF DEFINED(CONDITION2)
H Required condition not defined on CRT command
/ENDIF
/ENDIF
La H-spec invalide causera une erreur qui arrêtera la compilation.
Téléchargez cette ressource
Microsoft 365 Tenant Resilience
Face aux failles de résilience des tenants M365 (configurations, privilèges, sauvegarde). Découvrez 5 piliers pour durcir, segmenter et surveiller vos environnements afin de limiter l’impact des attaques. Prioriser vos chantiers cyber et améliorer la résilience de vos tenants Microsoft 365.
Les articles les plus consultés
- N° 2 : Il faut supporter des langues multiples dans SharePoint Portal Server
- Cybersécurité Active Directory et les attaques de nouvelle génération
- Activer la mise en veille prolongée dans Windows 10
- Une baie de stockage c’est quoi ?
- Partager vos images, vidéos, musique et imprimante avec le Groupe résidentiel
Les plus consultés sur iTPro.fr
- Souveraineté des données : bâtir un stockage hybride adapté à l’ère de l’IA
- Secteur public : l’IA accélère la modernisation des infrastructures
- De l’inventaire à l’action : l’Asset Management au service d’un Numérique plus responsable
- IA et bureaucratie : la complexité qui grève les projets
Articles les + lus
Quand les « travailleurs numériques » pallient le manque de bras dans l’industrie
Model Context Protocol : le contexte, grand oublié du débat
Microsoft dévoile MAI-Thinking-1 : un modèle de raisonnement « enterprise-grade » en preview publique
Couchbase lance AI Data Plane pour industrialiser l’IA agentique
Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
À la une de la chaîne Tech
- Quand les « travailleurs numériques » pallient le manque de bras dans l’industrie
- Model Context Protocol : le contexte, grand oublié du débat
- Microsoft dévoile MAI-Thinking-1 : un modèle de raisonnement « enterprise-grade » en preview publique
- Couchbase lance AI Data Plane pour industrialiser l’IA agentique
- Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
