[Résolue] Sauvegarde de donnée dans un ARRAY
Posté : 02 sept. 2024, 09:08
Bonjour tout le monde,
Je possède un IHM HMIG3U et utilise la version de Vijeodesigner V6.2.12.2054.
Je veux sauvegarder des données qui sont récupérées par un niveau analogique, qui renvoie le niveau d'une cuve, tous les jours à 5h et je voudrais sauvegarder une trentaine de données.
Je voulais réaliser cette action avec un script sur vijeo :
Historique_1 = NiveauANA;
int i = 30;
if (i > 1);
Historique_ = Historique_;
i = i - 1;
Ce script action est planifiée pour se réaliser tous les jours à 5h.
Cependant, le code ne marche pas, j'ai cette erreur : "Les numéros d'élément de la variable dans des variables de tableau et de bloc doivent être définis à l'aide d'une valeur constante" par rapport à la ligne : " Historique_ = Historique_".
De ce que j'ai compris, si je veux supprimer cette erreur, il faudrait que j'écrive ligne par ligne chaque égalité.
Donc, ça ferait ceci :
Historique_1 = NiveauANA;
Historique_2=Historique_1;
Historique_3=Histoqisue_2;
....
Historique_31=Historique_30;
Avec ceci, je n'ai plus d'erreur sauf que ça ne marche pas.
La sauvegarde ce fait bien la première fois, sauf qu'une fois la première valeur enregistrée sur Historique_1, à chaque changement de valeur du niveau ana, Historique_1 change. Lors de la deuxième sauvegarde, Historique_2 récupère la valeur de Historique_1, mais comme pour l'historique 1 à chaque changement de la valeur NiveauANA, Historique_2 change.
Auriez-vous une solution ?
Merci.
Je possède un IHM HMIG3U et utilise la version de Vijeodesigner V6.2.12.2054.
Je veux sauvegarder des données qui sont récupérées par un niveau analogique, qui renvoie le niveau d'une cuve, tous les jours à 5h et je voudrais sauvegarder une trentaine de données.
Je voulais réaliser cette action avec un script sur vijeo :
Historique_1 = NiveauANA;
int i = 30;
if (i > 1);
Historique_ = Historique_;
i = i - 1;
Ce script action est planifiée pour se réaliser tous les jours à 5h.
Cependant, le code ne marche pas, j'ai cette erreur : "Les numéros d'élément de la variable dans des variables de tableau et de bloc doivent être définis à l'aide d'une valeur constante" par rapport à la ligne : " Historique_ = Historique_".
De ce que j'ai compris, si je veux supprimer cette erreur, il faudrait que j'écrive ligne par ligne chaque égalité.
Donc, ça ferait ceci :
Historique_1 = NiveauANA;
Historique_2=Historique_1;
Historique_3=Histoqisue_2;
....
Historique_31=Historique_30;
Avec ceci, je n'ai plus d'erreur sauf que ça ne marche pas.
La sauvegarde ce fait bien la première fois, sauf qu'une fois la première valeur enregistrée sur Historique_1, à chaque changement de valeur du niveau ana, Historique_1 change. Lors de la deuxième sauvegarde, Historique_2 récupère la valeur de Historique_1, mais comme pour l'historique 1 à chaque changement de la valeur NiveauANA, Historique_2 change.
Auriez-vous une solution ?
Merci.