Le clavier 5250 écran vert de System i est différent de tout autre clavier. Pour ceux d’entre vous qui ont un terminal non intelligent avec un clavier 5250, les différences sont évidentes. Le clavier 5250 comporte des touches telles que field-exit, field +, field -, SysRq, Roll-Up, Roll-Down et ATTN.
Si vous utilisez un ordinateur fixe ou portable et un émulateur 5250, comme iSeries Access PC5250, PCOM, ou tout autre émulateur du marché, ces touches 5250 sont évidentes seulement dans la fonction de mapping de clavier du logiciel d’émulation. Je tiens à signaler quelques trucs sympa que vous pouvez faire avec la touche ATTN du clavier 5250 qui, sur iSeries Access, est généralement la touche Esc.
Q:
Quel est le moyen rapide d’extraire un nombre de 30 chiffres maximum (sans se soucier des décimales) à partir d’une chaîne de 30 caractères ?
Je ne veux que les chiffres à l’exception de tous les caractères supplémentaires dans la chaîne. Par exemple, si la chaîne contient « 123456789X123456789X123456789X », j’aimerais renvoyer le nombre 123,456,789,123,456,789,123,456,789 dans un champ packé.
R : A partir de la V5R2, la fonction intégrée %DEC permet d’extraire facilement les chiffres d’une chaîne de caractères. Cependant, %DEC aura des difficultés avec les lettres présentes dans votre chaîne. Je vous conseille d’écrire une routine qui utilise les BIF %CHECK et %REPLACE pour enlever les caractères autres que des chiffres, puis d’utiliser %DEC pour convertir la chaîne en un champ packé. Le BIF %CHECK détecte les caractères qui n’appartiennent pas à une chaîne.
Par exemple, dans le code suivant, p prendra la valeur de la position du premier caractère dans la variable Input qui n’est pas un nombre de 0 à 9. p = %check(‘123456789’ : Input): Vous pouvez utiliser la BIF %REPLACE pour remplacer les données dans une position particulière, avec des données différentes.
Si vous dites à cette BIF de remplacer quelque chose par une chaîne vide, elle enlève simplement ce caractère de la chaîne. Par exemple, le code suivant supprime le caractère dans la position p: Input = %replace(‘: Input: p: 1): Sachant cela, il est facile d’écrire une sous-procédure qui utilise d’abord %CHECK et %REPLACE pour enlever les nonchiffres de la chaîne, puis utilise la BIF %DEC pour convertir le résultat en format packé (figure 6).
– Scott Klement
Téléchargez cette ressource
Microsoft 365 : 5 erreurs de sécurité
A l’heure où les données des solutions Microsoft 365 sont devenues indispensables au bon fonctionnement de l’entreprise, êtes-vous certain de pouvoir compter sur votre plan de sécurité des données et de sauvegarde des identités ? Découvrez le Top 5 des erreurs à ne pas commettre et les meilleures pratiques recommandées par les Experts DIB France.