SENDLIST

Icône du lien vers le conceptVoir également

Envoi d'une liste de commandes et de consignes comme le ferait une recette.

Support WebVue - Oui.

Cette instruction, utilisée conjointement avec l'instruction SET est conçue pour optimiser l'utilisation des services de commande en fonction des capacités du driver d'acquisition de données (OPC, Modbus...) comme le fait une recette.

L'instruction SET permet d'ajouter une variable Entrée/Sortie et sa valeur de commande (valeur à envoyer) dans une liste maintenue en mémoire. Une fois que la liste des commandes à traiter est complète, vous pouvez l'exécuter en utilisant l'instruction SENDLIST.

La liste de commandes maintenue en mémoire est protégée par session utilisateur, c'est-à-dire que chaque session bénéficie de sa propre liste, et les appels à SET et SENDLIST depuis une session donnée n'affectent pas les listes associées aux autres sessions.

Voir la rubrique Mécanismes d'échange de messages dans PcVue pour plus d'informations.

Mode

Mnémonique

Syntaxe

0 BLOC 1
1 MULTIPLE 1

Syntaxe 1

IntVal = SENDLIST(Mode[, VarName[, OPCMode]]);

Type de retour : INTEGER

Argument

Définition

VarName

Nom de la variable mesure dans laquelle est retourné le status d'envoi des variables. Il ne peut pas être utilisé ailleurs dans le programme. Type STR

 

Les valeurs de status d'envoi des variables sont les suivantes :

0 Envoi en cours.
1 L'envoi a été complété avec succès.
2 L'envoi à échoué.

OPCMode

Mode d'envoi lorsque la source de la variable est OPC :

0 Sérialisation optimisée (par défaut)
1 Sérialisation complète
2 Aucune optimisation
3 Optimisation complète.

Exécution

Voir la rubrique Mode d'envoi SENDLIST.

Retour (pour les 2 modes) : 1 si OK, sinon 0.

Les variables doivent être déclarées en commande pour que l'envoi soit possible.

Exemple

Dim strVar as STR;

 

strVar = "BR1.VAL";

'note NOT "@BR1.VAL"

SET(strVar,12);

SENDLIST("BLOC");

SUB Main()

i1 = SET ("Register1",600,);

'address AP of Register 1 : S1

i1 = SET ("Register2",700,);

'address AP of Register 1 : S2

i1 = SET ("Register3",500,);

'address AP of Register 1 : S5

i1 = SET ("Register4",400,);

'address AP of Register 1 : S6

i1 = SET ("Register5",300,);

'address AP of Register 1 : S7

SENDLIST ("BLOC"); 'Send a frame, writing words S1 to S7

' (S3 and S4 will be written with their current values)

END SUB