Quelle que soit la simplicité ou la complexité d’une méthode, vous utiliserez toujours un ou plusieurs types de structure de programmation. Les structures de programmation déterminent si et dans quel ordre les lignes d’instructions sont exécutées à l’intérieur d’une méthode. Il existe trois types de structures :
- séquentielle,
- conditionnelle,
- répétitive.
Le langage de 4D dispose d’instructions permettant de contrôler chacune de ces structures.
Une structure séquentielle est une structure simple, linéaire. Une séquence est une série d’instructions que 4D exécute les unes après les autres, de la première à la dernière. Par exemple :
FORMULAIRE SORTIE([Personnes];"Listing")
TOUT SELECTIONNER([Personnes])
VISUALISER SELECTION([Personnes])
Une instruction d'une ligne, fréquemment utilisée pour les méthodes objet, est le cas le plus simple de structure séquentielle. Par exemple :
[Personnes]Nom:=Majusc([Personnes]Nom)
Note : Les mots-clés Debut SQL / Fin SQL permettent de délimiter des structures séquentielles destinées à être exécutées par le moteur SQL de 4D. Pour plus d'informations, reportez-vous à la description de ces mots-clés.
Une structure conditionnelle permet aux méthodes de tester une condition et d’exécuter des séquences d’instructions différentes en fonction du résultat. La condition est une expression booléenne, c’est-à-dire pouvant retourner VRAI ou FAUX. L’une des structures conditionnelles est la structure Si...Sinon...Fin de si, qui aiguille le déroulement du programme vers une séquence ou une autre. L’autre structure conditionnelle est la structure Au cas ou...Sinon...Fin de cas, qui aiguille le programme vers une séquence parmi une ou plusieurs alternatives.
Il est très courant, lorsque vous écrivez des méthodes, de rencontrer des cas où vous devez répéter une séquence d’instructions un certain nombre de fois. Pour traiter ces besoins, le langage vous propose trois structures répétitives : Boucle...Fin de boucle, Tant que...Fin tant que, et Repeter...Jusque. Les boucles sont contrôlées de deux manières : soit elles se répètent jusqu’à ce qu’une condition soit remplie, soit elles se répètent un nombre fixé de fois. Chaque structure répétitive peut être utilisée de l’une ou l’autre manière, mais les boucles Tant que et Repeter sont mieux adaptées à la répétition jusqu’à ce qu’une condition soit remplie, alors que les boucles Boucle sont mieux adaptées à la répétition un certain nombre de fois.
Note : 4D vous permet d’imbriquer des structures de programmation (Si/Tant que/Boucle/Au cas ou/Repeter) jusqu’à une “profondeur” de 512 niveaux.