Type : |
Bloc fonction |
Disponible à partir de la version : |
V1.0.0.0 |
Le bloc fonction FB_SendEMail inclut les fonctions permettant d'envoyer des e-mails. Chaque instance gère une connexion SMTP.
Le bloc fonction FB_SendEMail est l'interface utilisateur qui permet d'interagir avec le serveur de messagerie externe. Il vous permet d'envoyer des e-mails.
Lorsque le bloc fonction est activé et exécuté, une connexion TCP est établie au serveur de messagerie à l'aide des informations d'identification utilisateur envoyées par iq_stCredentials. Dès que la connexion est établie, les données de l'e-mail sont transférées au serveur. Une fois le transfert terminé, le bloc fonction ferme automatiquement la connexion TCP au serveur de messagerie.
Lors de l’exécution du bloc fonction, l’entrée i_pbyMessage est stockée en interne pour une utilisation ultérieure. Si une modification en ligne est détectée lors de l’exécution du bloc fonction (q_xBusy = TRUE), les variables utilisées en interne sont mises à jour avec la valeur actuelle de l’entrée.
NOTE : Ne réattribuez pas i_pbyMessage à une autre zone mémoire lors de l’exécution du bloc fonction.
Tant que le bloc fonction est exécuté, la sortie q_xBusy est TRUE. La sortie q_xDone est TRUE lorsque le bloc fonction s'est exécuté correctement.
Le schéma représente les signaux des entrées et sorties du bloc fonction :
Les messages d'état et informations de diagnostic sont fournis à l'aide des sorties q_xError (TRUE si une erreur a été détectée), q_etResult et q_etResultMsg.
Pour acquitter les erreurs détectées et pouvoir renvoyer un e-mail, désactivez et réactivez le bloc fonction.
Entrée |
Type de données |
Description |
---|---|---|
i_xEnable |
BOOL |
Activation et initialisation du bloc fonction. |
i_xExecute |
BOOL |
Le bloc fonction envoie un e-mail au moment correspondant au front montant de cette entrée. |
i_sRecipientEMail |
STRING [GPL.Gc_udiRecipientEMailSize] |
La chaîne qui contient la ou les adresses électroniques du ou des destinataires. (1) |
i_sSubject |
STRING[200] |
Objet de l'e-mail. |
i_pbyMessage |
POINTER TO BYTE |
Adresse de début de la chaîne dans laquelle le message est stocké. |
i_udiSizeOfMessage |
UDINT |
Taille des données du message. |
i_etPriority |
ET_Priority |
Enumération indiquant le niveau de priorité attribué à l'e-mail. |
i_sAttachmentPath |
STRING[255] |
Chemin d'accès absolu ou relatif à la pièce-jointe stockée dans le système de fichiers du contrôleur. Si cette chaîne est vide, aucune pièce-jointe n'est envoyée. |
i_sCcRecipientEMail |
STRING [GPL.Gc_udiRecipientEMailSize] |
Chaîne contenant l’adresse e-mail du destinataire attribué au champ CC.(1) |
i_sBccRecipientEMail |
STRING [GPL.Gc_udiRecipientEMailSize] |
Chaîne contenant l’adresse e-mail du destinataire attribué au champ BCC.(1) |
(1) En cas de destinataires multiples, un point-virgule doit séparer les adresses électroniques. La taille maximale de chaque adresse est limitée à 200 octets. |
Entrée/sortie |
Type de données |
Description |
---|---|---|
iq_stCredentials |
ST_CredentialsSendEMail |
Permet de transmettre la structure contenant les paramètres utilisateur, tels que le nom d'utilisateur ou le mot de passe. |
Sortie |
Type de données |
Description |
---|---|---|
q_xActive |
BOOL |
Si le bloc fonction est actif, cette sortie est TRUE. |
q_xReady |
BOOL |
Si l'initialisation aboutit, cette sortie est TRUE tant que le bloc fonction accepte des entrées. |
q_xBusy |
BOOL |
Si cette sortie est TRUE, le bloc fonction est en cours d'exécution. |
q_xDone |
BOOL |
Si cette sortie est TRUE, l'exécution s'est effectuée correctement. |
q_xError |
BOOL |
Si cette sortie est TRUE, une erreur a été détectée. Pour plus d'informations, reportez-vous à q_etResult et q_etResultMsg. |
q_etResult |
ET_Result |
Fournit des informations de diagnostic et d'état. |
q_sResultMsg |
STRING[80] |
Fournit des informations supplémentaires de diagnostic et d'état. |
Utilisation des variables de type POINTER TO ... or REFERENCE TO ...
Le bloc fonction fournit des entrées et/ou des entrées/sorties de type POINTER TO… ou REFENCE TO…. En utilisant ce type de pointeur ou référence, le bloc fonction a accès à la zone de mémoire adressée. En cas de modification en ligne, les zones de mémoire peuvent être déplacées aux nouvelles adresses et par conséquent un pointeur ou une référence peut devenir non valide. Pour éviter les erreurs liées à des pointeurs non valides, les variables de type POINTER TO… ou REFERENCE TO… doivent être mises à jour régulièrement, au moins au début du cycle où elles sont utilisées.
|
POINTEUR INCORRECT |
Vérifiez la validité des pointeurs lors de leur utilisation sur les adresses et de l'exécution de la commande Changement en ligne. |
Le non-respect de ces instructions peut provoquer des blessures ou des dommages matériels. |