FP_SMTP_GET_EMAIL_TEXT

Lire un texte d’e-mail

Cette instruction FP lit les textes d’e-mail prédéfinis du numéro spécifié par nTransferID et écrit le texte dans la variable de sortie sBodyText.

Paramètres

Entrée

nTransferID (WORD, INT, UINT)

Définir l’ID des paramètres de transfert.

Valeurs : 0–15

Sortie

sBodyText (STRING)

Enregistre le texte d’e-mail prédéfini.

bError (BOOL)

Définie sur TRUE lorsque l’opération se termine anormalement.

Lorsqu’une erreur apparaît, utilisez la variable système sys_iEthernetConnectionErrorCode pour connaître le numéro de code d’erreur.

Remarques

  • Cette instruction n’est pas disponible dans les programmes d’interruption.

  • Avant d’exécuter l’instruction, les paramètres d’envoi d’e-mails doivent être entrés à l’aide de FP_SMTP_SET_MODE ou de la boîte de dialogue de paramétrage du client SMTP.

  • Cette instruction lit le texte d’e-mail qui a été spécifié dans la boîte de dialogue du client SMTP. Si aucun texte d’e-mail n’a été spécifié, le texte d’e-mail ne peut pas être lu et zéro est sauvegardé dans sBodyText.

  • Avant d’exécuter l’instruction, les paramètres de groupes et d’e-mails d’événements doivent être entrés à l’aide de FP_SMTP_SET_GROUP ou de la boîte de dialogue de paramétrage du client SMTP.

  • Avant d’exécuter l’instruction, utilisez FP_CLIENT_STATUS_DUT pour vérifier si une requête d’envoi de-mail est active. Si bIsTransferRequested est TRUE pendant l’exécution de l’instruction, une erreur d’opération apparaît.

  • Avant d’exécuter l’instruction, vérifiez que sys_bIsEthernetInitializing est FALSE. sys_bIsEthernetInitializing passe à TRUE lorsque l’instruction est exécutée. Lorsque l’instruction est exécutée alors que sys_bIsEthernetInitializing est TRUE, une erreur apparaît.
  • Lorsque l’instruction a été exécutée avec succès, les variables système sys_bIsCarry et sys_iEthernetConnectionErrorCode sont réinitialisées.

  • Lorsqu’une erreur apparaît, utilisez la variable système sys_iEthernetConnectionErrorCode pour connaître le numéro de code d’erreur.

Drapeaux d’erreur

sys_bIsOperationErrorHold (passe à TRUE et reste TRUE)
  • Si la zone spécifiée à l’aide du modificateur d’adresse est en dehors des limites autorisées.

  • Si une valeur spécifiée pour un paramètre est en dehors de l’intervalle autorisé.

  • Si l’instruction est exécutée dans un programme d’interruption.

  • Si le drapeau de requête d’envoi d’e-mails pour la configuration de transfert spécifiée est "TRUE : Requête de transfert".

  • Si un paramètre d’envoi d’e-mail spécifié n’a pas été configuré avec l’instruction FP_SMTP_SET_MODE ou avec la boîte de dialogue de paramétrage du client SMTP.

  • Si un numéro de groupe de destination n’a pas été spécifié avec l’instruction FP_SMTP_SET_GROUP ou avec la boîte de dialogue de paramétrage du client SMTP.

sys_bIsOperationErrorNonHold (passe à TRUE pendant un cycle)
  • Si la zone spécifiée à l’aide du modificateur d’adresse est en dehors des limites autorisées.

  • Si une valeur spécifiée pour un paramètre est en dehors de l’intervalle autorisé.

  • Si l’instruction est exécutée dans un programme d’interruption.

  • Si le drapeau de requête d’envoi d’e-mails pour la configuration de transfert spécifiée est "TRUE : Requête de transfert".

  • Si un paramètre d’envoi d’e-mail spécifié n’a pas été configuré avec l’instruction FP_SMTP_SET_MODE ou avec la boîte de dialogue de paramétrage du client SMTP.

  • Si un numéro de groupe de destination n’a pas été spécifié avec l’instruction FP_SMTP_SET_GROUP ou avec la boîte de dialogue de paramétrage du client SMTP.

sys_bIsCarry (passe à TRUE pendant un cycle)
  • Si l’instruction est exécutée pendant l’initialisation d’Ethernet, sys_iEthernetConnectionErrorCode est définie sur "11 : initialisation Ethernet en cours".

Exemple

En-tête du POU

Toutes les variables d’entrée et de sortie utilisées pour programmer cette fonction ont été déclarées dans l’en-tête du POU. Le même en-tête de POU est utilisé pour tous les langages de programmation.

	VAR
		bRequest: BOOL:=FALSE;
		bError: BOOL:=FALSE;
		iID8: INT:=8;
		sEmailText: STRING[32]:='Hello World!';
	END_VAR

Corps du POU

Lorsque bRequest passe de FALSE à TRUE et lorsque sys_bIsEthernetSMTPClientReady est TRUE, l’instruction est exécutée.

Corps en LD

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
        ACTIVE_NETWORK := 0 ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 5 ;
        NETWORK_BODY
B(B_CONTACT,,bRequest,4,1,6,3,R);
B(B_VARIN,,iID8,23,2,25,4,);
B(B_VAROUT,,bError,39,3,41,5,);
B(B_CONTACT,,sys_bIsEthernetSMTPClientReady,15,1,17,3,);
B(B_F,FP_SMTP_GET_EMAIL_TEXT!,,25,0,39,5,,?DEN?DnTransferID?AENO?CsBodyText?CbError);
B(B_VAROUT,,sEmailText,39,2,41,4,);
L(1,2,4,2);
L(6,2,15,2);
L(17,2,25,2);
L(1,0,1,5);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

Corps en ST

If DF(bRequest) AND sys_bIsEthernetSMTPClientReady then
    FP_SMTP_GET_EMAIL_TEXT(nTransferID := iID8,
                           sBodyText => sEmailText,
                           bError => bError);
END_If;

Modifié le : 2024-03-07Commentaires sur cette pageAssistance téléphonique