FP_SMTP_TRANSFER_CONTROL

Controllare il trasferimento SMTP a una singola unità Ethernet

Questa istruzione FP controlla il trasferimento SMTP a una singola unità Ethernet specificata da nTransferID. Le word di controllo valide sono 'ENABLE', 'DISABLE' e 'CANCEL'.

Parametri

Ingresso

nTransferID (INT)

ID unità Ethernet (valori: 0–15)

sControl (STRING)

Stringa di controllo:

  • 'ENABLE': abilita il trasferimento e-mail all'unità Ethernet

  • 'DISABLE': disabilita il trasferimento e-mail all'unità Ethernet

  • 'CANCEL': cancella il trasferimento e-mail all'unità Ethernet

Uscita

bError (BOOL)
Passa a TRUE nelle seguenti condizioni:
  • se un timeout della connessione viene superato

  • se un indirizzo IP non è valido

Quando si verifica un errore, controllare la variabile di sistema sys_iEthernetConnectionErrorCode per verificare il numero di codice di errore.

Note

  • Il numero di caratteri per dati stringa non deve superare 256.

  • I caratteri maiuscoli e minuscoli possono essere utilizzati per gli operandi per i quali è possibile specificare una costante di carattere. "Abcd", "ABCD" e "abcd" sono sinonimi, ma i nomi del file fanno distinzione tra maiuscole e minuscole.

  • Prima di eseguire l'istruzione, è necessario specificare le impostazioni di trasmissione e-mail utilizzando FP_SMTP_SET_MODE o la finestra di dialogo di impostazione del client SMTP.

  • Prima di eseguire l'istruzione, assicurarsi che sys_bIsEthernetInitializing sia FALSE. sys_bIsEthernetInitializing passa a TRUE quando l'istruzione viene eseguita. Se si esegue l'istruzione mentresys_bIsEthernetInitializing è TRUE, si verifica un errore.

  • Quando questa istruzione è stata eseguita correttamente, le variabili di sistema sys_bIsCarry e sys_iEthernetConnectionErrorCode vengono resettate.

  • La richiesta di cancellazione del trasferimento richiede tempo per essere elaborata. Controllare lo stato di trasferimento con FP_SMTP_GET_STATUS e verificare se il trasferimento si arresta dopo aver eseguito l'istruzione.

  • Quando si verifica un errore, controllare la variabile di sistema sys_iEthernetConnectionErrorCode per verificare il numero di codice di errore.

Flag di errore

sys_bIsOperationErrorHold (passa a TRUE e resta TRUE)
  • Se qualsiasi stringa di controllo diversa da 'ENABLE', 'DISABLE' o 'CANCEL' viene specificata da sControl.

  • se il numero di caratteri per dati stringa supera 256.

  • Se viene specificata un'impostazione di trasmissione e-mail che non è stata configurata con l'istruzione FP_SMTP_SET_MODE o la finestra di dialogo del client SMTP.

sys_bIsOperationErrorNonHold (passa a TRUE per una scansione)
  • Se qualsiasi stringa di controllo diversa da 'ENABLE', 'DISABLE' o 'CANCEL' viene specificata da sControl.

  • se il numero di caratteri per dati stringa supera 256.

  • Se viene specificata un'impostazione di trasmissione e-mail che non è stata configurata con l'istruzione FP_SMTP_SET_MODE o la finestra di dialogo del client SMTP.

sys_bIsCarry (passa a TRUE per una scansione)
  • se l'istruzione viene eseguita durante l'inizializzazione di Ethernet, sys_iEthernetConnectionErrorCode viene impostato su "11: Ethernet viene inizializzato".

Esempio

Intestazione del POU

Tutte le variabili di ingresso e uscita utilizzate per programmare questa funzione sono state dichiarate nell'intestazione del POU. La stessa intestazione del POU è utilizzata per tutti i linguaggi di programmazione.

	VAR
		bEnable: BOOL:=FALSE;
		bError: BOOL:=FALSE;
		iID8: INT:=8;
	END_VAR

Corpo del POU

Se bEnable passa de FALSE a TRUE, l'istruzione viene eseguita. Il trasferimento SMTP è abilitato per l'unità Ethernet 8.

Corpo LD

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
        ACTIVE_NETWORK := 0 ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 8 ;
        NETWORK_BODY
B(B_CONTACT,,bEnable,4,1,6,3,R);
B(B_VARIN,,iID8,8,2,10,4,);
B(B_VARIN,,'ENABLE',8,3,10,5,);
B(B_VAROUT,,bError,26,2,28,4,);
B(B_F,FP_SMTP_TRANSFER_CONTROL!,,10,0,26,5,,?DEN?DnTransferID?DsControl?AENO?CbError);
L(1,2,4,2);
L(6,2,10,2);
L(1,0,1,8);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

Corpo ST

If DF(bEnable) Then   
    FP_SMTP_TRANSFER_CONTROL(nTransferID := iID8,
                             sControl := 'ENABLE',
                             bError => bError);
End_If;

L'ultima revisione: 2024-04-25Feedback su questa paginaPanasonic hotline