Page 1 sur 2
ATTENTION - Changement de comportement - SUBSTRING - Version 10.4.1.158
Posté : 24 avr. 2020, 13:54
par Marc DELDEM
ATTENTION,
Dans la version 10.4.1.158, il y a un changement de comportement sur la fonction
SUBSTRING:
Le script ci-dessous, qui donnait sur la version précédente de Prism les résultats attendus, ne fonctionne plus:
Code : Tout sélectionner
Date$="24/04/2020 11:39:56"
REM Date$ est de la forme JJ/MM/AAAA HH:MM:SS
SUBSTRING Date$ 1 2 JJ$
SUBSTRING Date$ 4 2 MM$
SUBSTRING Date$ 7 4 AAAA$
PRINT "Décomposition de la date: Année:" AAAA$ ", Mois:" MM$ ", Jour:" JJ$
Le résultat affiché est:
Décomposition de la date: Année:, Mois:, Jour:24
Script terminé ...
Il faut modifier maintenant le code de manière à ce que le
3ième paramètre de la fonction SUBSTRING ne soit plus le nombre de caractères souhaité
mais le numéro du caractère de fin de découpe.
Il faut donc faire pour mon exemple:
Code : Tout sélectionner
Date$="24/04/2020 11:39:56"
REM Date$ est de la forme JJ/MM/AAAA HH:MM:SS
SUBSTRING Date$ 1 2 JJ$
SUBSTRING Date$ 4 5 MM$
SUBSTRING Date$ 7 10 AAAA$
PRINT "Décomposition de la date: Année:" AAAA$ ", Mois:" MM$ ", Jour:" JJ$
Cela risque de mettre la pagaille dans pas mal de scripts...
Marc
Re: ATTENTION - Changement de comportement - SUBSTRING - Version 10.4.1.158
Posté : 25 avr. 2020, 21:10
par Marc SERRAU
Bonsoir,
Le genre de modification qui sans crier gare est très gênante. Quel intérêt de conserver le même nom de fonction (et même de modifier cette dernière) si cela doit fatalement gêner les utilisateurs ? Cette fois, je ne dis pas merci aux copains, d'autant plus, qu'il y a un bug si le troisième paramètre est égal au second (pour les sous-chaines de 1 caractère). Dans ton exemple
Date$="24/04/2020 11:39:56"
SUBSTRING Date$ 1 1 JJ$
JJ$ ne contient pas juste le caractère "2" mais rien...
Soyez sympa de corriger rapidement car cela bloque pas mal de scripts. Là je dirai "Merci !"
Re: ATTENTION - Changement de comportement - SUBSTRING - Version 10.4.1.158
Posté : 26 avr. 2020, 02:14
par Cyril Cavadore
Oui, je trouve ça "moyen" comme c'est Stéphane qui a fait les modifs je viens de lui en parler.
Re: ATTENTION - Changement de comportement - SUBSTRING - Version 10.4.1.158
Posté : 26 avr. 2020, 08:20
par Marc DELDEM
A la décharge de Stéphane, dans la doc (CHM), si on tape SUBSTRING dans l'index, on tombe sur une page d'aide qui commence avec la fonction CUTSTR mais qui ensuite est bien le prototype de la fonction SUBSTRING:
Syntaxe :
SUBSTRING In$ Deb Fin Out$
Variables :
Code : Tout sélectionner
Paramètres Entrées / Sorties Type Description
Line$ Entrée Chaîne de caractère Chaîne de caractère à couper
Deb Entrée Entier Numéro caractère de début de découpe
Fin Entrée Entier Numéro caractère de fin de découpe
Out$ Sortie Chaîne de caractère Mot coupé
S'il est parti du principe que la doc était juste, il a corrigé la fonction en pensant qu'il y avait un bug.
Marc
Re: ATTENTION - Changement de comportement - SUBSTRING - Version 10.4.1.158
Posté : 26 avr. 2020, 14:48
par Stéphane Charbonnel
Merci Marc, c'est exactement ça ... pour que ça colle à la doc (mal aiguillée au demeurant). Et comme personne ne s'était plaint de la non correspondance entre la syntaxe affichée dans la doc et celle de la fonction, je me disais que personne n'avait dû l'utiliser et donc à rectifier avant que quelqu'un se plaigne de la non correspondance ... Perdu !
Pour éviter tout "scandale", j'ai conseillé à Cyril de la remettre comme elle était (la doc devenant fausse mais tant pis !).
Je créerais d'ici peu une fonction SUBSTRING2 qui elle respectera l'aide de la fonction SUBSTRING donnée par Marc Deldem.
Les deux fonctions SUBSTRING et SUBSTRING2 seront clairement documentées dans la partie aide / Script de ce forum et de ce fait celle de la fonction SUBSTRING sera aussi rectifiée.
Cordialement
Stéphane
Re: ATTENTION - Changement de comportement - SUBSTRING - Version 10.4.1.158
Posté : 27 avr. 2020, 00:05
par Stéphane Charbonnel
Re: ATTENTION - Changement de comportement - SUBSTRING - Version 10.4.1.158
Posté : 01 mai 2020, 10:55
par Marc SERRAU
Ok,
Quand pensez-vous pouvoir remettre ces fonctions en service ?
Merci pour le travail accompli.
Re: ATTENTION - Changement de comportement - SUBSTRING - Version 10.4.1.158
Posté : 05 mai 2020, 23:15
par Jean-Marc Mari
Bonsoir,
Ce changement empêche mon script de fonctionner. Pour extraire le premier caractère d'une chaîne, j'utilise :
Maintenant, ça ne fonctionne plus. La première chose ayant changé c'est que pour démarer au premier caractère, il faut que je mette 0 au lieu de 1.
Le problème est que si j'écris :
je ne récupère pas de caractère.
Si j'écris :
je récupère les deux premiers caractères. Or, j'ai absolument besoin de récupérer le premier caractère et lui seul.
Y a-t-il moyen de faire autrement ? Ou alors serait-il possible de faire une correction ?
Merci d'avance.
Cordialement,
Jean-Marc
Re: ATTENTION - Changement de comportement - SUBSTRING - Version 10.4.1.158
Posté : 07 mai 2020, 20:25
par Cyril Cavadore
Re: ATTENTION - Changement de comportement - SUBSTRING - Version 10.4.1.158
Posté : 07 mai 2020, 21:23
par Marc SERRAU
SUBSTRING fonctionne bien comme avant. Super, merci à tous !
Bon courage à tous pour la fin du confinement !