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
Mac en entreprise : le levier d’un poste de travail moderne
Ce livre blanc répond aux 9 questions clés des entreprises sur l’intégration du Mac : sécurité, compatibilité, gestion, productivité, coûts, attractivité talents, RSE et IA, et l’accompagnement sur mesure proposé par inmac wstore.
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- 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
- Deepfakes et IA : 64% des Français pensent savoir les détecter, mais la confiance reste fragile
- Cryptographie post-quantique : le Campus Cyber publie deux guides clés pour accélérer la transition des entreprises
Articles les + lus
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
Computex 2026 : 5 signaux forts à retenir
La chaîne d’approvisionnement, point de rupture récurent du SI
Microsoft Build 2026 : contre-offensive des modèles maison face à OpenAI et Anthropic
À la une de la chaîne Tech
- 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
- Computex 2026 : 5 signaux forts à retenir
- La chaîne d’approvisionnement, point de rupture récurent du SI
- Microsoft Build 2026 : contre-offensive des modèles maison face à OpenAI et Anthropic
