Page 1 sur 1

Recopie d'un tableau de UDINT dans une structure en UDINT

Posté : 30 avr. 2021, 14:13
par Scoobyseb
Bonjour.

Je sèche sur une fonction de recopie de variables UDINT :
Cela marche mais ne me plaît pas :
Archivage.AN_2021:=Annee[0];
Archivage.AN_2022:=Annee[1];
| | | |
| | | |
Archivage.AN_2039:=Annee[18];
Archivage.AN_2040:=Annee[19];
Archivage.AN_2041:=Annee[20];

Je voudrais faire la même chose mais plus facilement.
Si vous avez une idée. Je suis preneur.
Voici les déclarations :
Annee : ARRAY[0..20] OF UDINT

Archivage.AN_2021 : UDINT
Archivage.AN_2022 : UDINT
| | | |
| | | |
Archivage.AN_2040 : UDINT
Archivage.AN_2041 : UDINT

Je pensais qu'on pouvais faire une sélection en utilisant ':22' mais cela fonctionne pour Archivage.AN_2021:21 mais pas pour Annee[0]:21 ou Annee[0]-21.

Dans l'attente d'une aide.
Encore merci.

Re: Recopie d'un tableau de UDINT dans une structure en UDINT

Posté : 30 avr. 2021, 14:21
par philou77
Salut !

Annee[0] est un élément d’un tableau.
Archivage.An-2021 c’est quoi dans la structure archivage ? Un tableau ?

Re: Recopie d'un tableau de UDINT dans une structure en UDINT

Posté : 30 avr. 2021, 14:28
par Scoobyseb
Salut.

Archivage appelle la structure Années qui comporte les données :
AN_2021 UDINT
AN_2022 UDINT

jusqu' AN_2041.

J’espère être compréhensible.

Re: Recopie d'un tableau de UDINT dans une structure en UDINT

Posté : 30 avr. 2021, 14:38
par philou77
Re !

Tu peux pas faire autrement qu’accéder à tes années 1 par une dans ta structure , a moins déclarer aussi un tableau dans ta structure Années

Et si c’est un tableau aussi alors
Archivage. An-2021:22 := Annee:22 devrait fonctionner

Re: Recopie d'un tableau de UDINT dans une structure en UDINT

Posté : 30 avr. 2021, 15:22
par Scoobyseb
Merci pour ton aide.

J'ai changé la structure par un tableau.
J’écris cela mais il n'aime pas le 2eme ':21'.

Archivage.An2021[0]:21 := Annee[0]:21;

Si j’écris cela, c'est le 1er ':21' qu'il n'aime pas :
Archivage.An2021:21 := Annee:21;

L'aide en plus est nulle 'Erreur de syntaxe' : Ca aide pas.

Re: Recopie d'un tableau de UDINT dans une structure en UDINT

Posté : 30 avr. 2021, 16:28
par Scoobyseb
Cela marche en écrivant :

Archivage.An2021 := Annee; Car même longueur.

Merci de ton aide, en tout cas.

Re: Recopie d'un tableau de UDINT dans une structure en UDINT

Posté : 30 avr. 2021, 16:48
par itasoft
slts,
Copier un tableau dans une structure c'est pas prévu au programme .
de plus si ta structure ,n'est pas localisé je vois pas comment on peut faire pour connaitre les adresses suivante dans Archivage.AN_2021:21

Re: Recopie d'un tableau de UDINT dans une structure en UDINT

Posté : 02 mai 2021, 16:37
par Scoobyseb
Merci en tout cas pour vos réponses.

Je le mets dans un coin de tête.

A bientot.