Re : Tr : Identification d'une chaîne numérique dans un programme 4GL
Posted in 2000
Topics: Stored Procedures & SPL, Error Codes & Troubleshooting, Connectivity: ESQL/C, 4GL & Embedded SQL
Translated from English by DrWatson — View original
Comme "." et "e" et autres peuvent faire partie de chaînes numériques valides, j'utilise l'instruction "whenever any error continue", puis je vérifie le statut après avoir placé la chaîne de caractères dans un champ numérique. main define x integer # peut nécessiter decimal define y char(10) whenever any error continue let y = "4.3e2" let x=y display y, " ", x, " ", sqlca.sqlcode, " ", status let y = "hello" let x=y display y, " ", x, " ", sqlca.sqlcode, " ", status let y = "4.3i2" let x=y display y, " ", x, " ", sqlca.sqlcode, " ", status whenever any error stop end main fglgo x 4.3e2 430 0 0 hello 0 0 -1213 4.3i2 0 0 -1213 Hortencia Ake a écrit : > > >Date: Wed, 20 Dec 2000 17:59:53 -0600 > >To: informix@iiug.org > >From: Hortencia Ake <hake@btl.net> > >Subject: Identifying numeric string in a 4gl program > > > >bonjour à tous, > > > >quelqu'un peut-il m'aider à déterminer si une chaîne est une chaîne purement numérique dans > un programme 4gl. > >cela est nécessaire afin d'indiquer à l'utilisateur, lors de l'exécution du programme, que la > chaîne saisie doit être uniquement numérique. > > > >merci de votre aide > > -- Colin
Colin McGrath a écrit dans le message <91trsu$d9k$1@news.xmission.com> : > >Comme « . » et « e », entre autres, peuvent faire partie de chaînes >numériques valides, j'utilise l'instruction « whenever any error >continue » et je vérifie le statut après avoir placé la chaîne de >caractères dans un champ numérique. > Petit avertissement toutefois : j'ai fait cela il y a quelques années (V 4.1 ? 4GL) et cela a laissé un flot interminable de messages dans le fichier errorlog — c'est-à-dire le fichier d'erreurs que l'on associe au programme en cours d'exécution au moyen de la fonction startlog(). J'espère que cela a été corrigé dans les versions ultérieures de 4GL, mais je vous suggère de le vérifier dans votre version. Un retour d'information à ce sujet serait apprécié.