Scripts VijeoDesigner et chaines de textes
Posté : 28 juil. 2016, 10:43
Bonjour à tous.
Je suis en train de développer (enfin j'essaie) un script java sous Vijeo Designer pour extraire les données issues d'une chaine de texte.
La chaine est un truc du genre "#Libellé#0,12#1,00#0,723#Nom#".
L'idée était de réccupérer les données de production de type réel dans des variables distinctes.
Mais visiblement il n'y a pas d'instruction de conversion string vers réel (ni même string vers entier) dans les scripts de VijeoDesigner.
Je suis donc parti dans l'idée de passer par des tableaux d'octets que je vais analyser ensuite.
J'utilise la méthode GetBytes sur une partie de la chaine de la manière suivante
bytes[] DATA=maChaineSource.getBytes();
(la variable maChaineSource contient la chaine "0,12")
Mais à chaque fois j'obtiens une erreur "Erreur de script d'application. Traitement code barre java.lang.ArrayIndexOutOfBoundsException: 4"
Ca ressemble à un dépassement des bornes du tableau.
Mais là où ça me chagrine, c'est que la chaine que je teste ne fais que 4 caractères de longueur.
Le code n'est exécuté qu'une fois...
Je sèche complètement là.
Je suis en train de développer (enfin j'essaie) un script java sous Vijeo Designer pour extraire les données issues d'une chaine de texte.
La chaine est un truc du genre "#Libellé#0,12#1,00#0,723#Nom#".
L'idée était de réccupérer les données de production de type réel dans des variables distinctes.
Mais visiblement il n'y a pas d'instruction de conversion string vers réel (ni même string vers entier) dans les scripts de VijeoDesigner.
Je suis donc parti dans l'idée de passer par des tableaux d'octets que je vais analyser ensuite.
J'utilise la méthode GetBytes sur une partie de la chaine de la manière suivante
bytes[] DATA=maChaineSource.getBytes();
(la variable maChaineSource contient la chaine "0,12")
Mais à chaque fois j'obtiens une erreur "Erreur de script d'application. Traitement code barre java.lang.ArrayIndexOutOfBoundsException: 4"
Ca ressemble à un dépassement des bornes du tableau.
Mais là où ça me chagrine, c'est que la chaine que je teste ne fais que 4 caractères de longueur.
Le code n'est exécuté qu'une fois...
Je sèche complètement là.