Les trucs & astuces de la semaine du 14 au 20 Novembre 2005
Justifier à gauche ou à droite le contenu d’un champ
Voilà plusieurs années, notre DSI (directeur
des systèmes d’information)
avait caressé l’idée de convertir nos
vieilles applications basées sur RPG II
en applications Windows plus au goût
du jour. Nous avons donc acheté une
plate-forme de développement et
avons rapidement remplacé la plupart
de « écrans verts » par des modèles
Windows bien plus séduisants. Cette
opération avait suscité l’adhésion générale
dans l’entreprise. Le nouveau
système a passé avec succès la période
de test. Ensuite, nous avons converti
les données et lancé le système dans
le grand bain : la production.
Après quelques mois, notre help
desk a commencé à recevoir des doléances
: les fonctions de recherche
étaient incapables de trouver certains
enregistrements de données. J’ai
commencé à examiner nos fichiers de
données et découvert que certains
champs numériques et alpha n’étaient
pas bien justifiés à gauche ou à droite.
Aucune validation stricte ne régissait
les anciens programmes et ceux-ci
permettaient aux utilisateurs d’entrer
des données sous n’importe quelle
forme. Ainsi, on pouvait entrer un nom de famille justifié à
gauche ou à droite, avec des blancs à gauche ou à droite. Il en
était de même pour les champs numériques. A l’évidence,
cela ne convenait pas au programme de recherche. En effet,
un seul blanc à gauche dans le nom suffisait pour qu’un utilisateur
ne le trouvât point.
J’ai écrit une brève routine pour corriger ce problème. Le
RPG IV a des BIF pour régler les problèmes de cette nature.
Malheureusement, la longueur du champ était codée en dur
dans la routine, donc si je voulais corriger un autre champ, il
me fallait copier le code et modifier la longueur du champ.
Une solution pas très élégante, on en conviendra.
J’ai légèrement modifié mon code pour recevoir le
contenu du champ en cause en 256 octets variables. Ensuite,
plusieurs lignes de code ont déplacé les données à l’endroit
désiré et les ont renvoyées au programme appelant. Je n’ai
pas eu à copier ou à modifier mon code : j’appelle simplement
ce petit programme et transmets la variable. Fin de
l’épisode.
Les programmes f_001 et f_002 ajustent à droite le
contenu du champ. On peut facilement modifier le code
pour ajuster à gauche ou pour faire les deux à la fois. Un paramètre
de plus devrait être échangé dans cette fonction : le
sens de l’ajustement (à gauche ou à droite).
Téléchargez cette ressource
Guide inmac wstore pour l’équipement IT de l’entreprise
Découvrez les dernières tendances et solutions IT autour des univers de Poste de travail, Affichage et Collaboration, Impression et Infrastructure, et notre dossier Green IT sur les actions engagés par inmac wstore pour réduire son impact environnemental