FP_SMTP_SET_GROUP

Impostare gruppo di destinazione

Questa istruzione FP imposta il gruppo di destinazione.

Parametri

Ingresso

sGroupNumber (WORD, INT, UINT)

Impostare il numero del gruppo di destinazione.

Valori: 0–7

Esempio: 'GRPNO=3' specifica il gruppo 3 come gruppo di destinazione.

sGroupName (STRING)

Impostare il nome del gruppo di destinazione (max. 64 caratteri).

Esempio: 'GRPNAME=Group3' imposta "Group3" come nome del gruppo di destinazione.

sEMailAddresses (STRING)

Impostare l'indirizzo e-mail di un membro appartenente a un gruppo di destinazione (max. 256 caratteri). È possibile specificare un indirizzo e-mail solo con un nome host oppure nome host + nome dominio. Se si omette qui il nome del dominio, è necessario specificarlo con sEMailDomain.

Esempi:

  1. 'TO=user@support.com' imposta "user@support.com" come indirizzo e-mail di destinazione. Se il nome del dominio è incluso, non è necessario impostare un nome dominio con sEMailDomain.

  2. 'TO=user' e 'DOMAIN=support.com' impostano "user@support.com" come indirizzo e-mail di destinazione.

  3. 'TO=user@support.com,admin@helpcenter.com' imposta due indirizzi e-mail su due domini differenti: "user@support.com" e "admin@helpcenter.com".

sEMailDomain (STRING)

Impostare il nome del dominio (max. 32 caratteri). Può essere specificato solo un nome di dominio.

Impostare il nome di un dominio consente di omettere il nome di dominio in sEMailAddresses, utile se si desidera impostare indirizzi e-mail multipli.

Esempi:

  1. 'TO=user,admin,groupowner' e 'DOMAIN=support.com' impostano indirizzi e-mail multipli: "user@support.com", "admin@support.com", e "groupowner@support.com".

  2. 'TO=user@support.com,admin,groupowner' e 'DOMAIN=helpcenter.com' specifica indirizzi e-mail multipli in domini differenti: "user@support.com", "admin@helpcenter.com", e "groupowner@helpcenter.com".

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

  • Separa tutte le voci di parole chiave con una virgola, p.es. 'NAME=abcd,FROM=sender@server.com'

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

  • Questa istruzione non è disponibile nei programmi di interrupt.

  • I caratteri maiuscoli e minuscoli possono essere utilizzati per specificare le parole chiave. Tuttavia l'oggetto, il testo dell'e-mail e il nome del file dell'allegato fanno distinzione tra maiuscole e minuscole.

  • Prima di eseguire l'istruzione, è necessario specificare il server di trasmissione e-mail utilizzando FP_SMTP_SET_CONNECTION 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.

  • L'istruzione può essere eseguita solo se il flag di richiesta di trasferimento per l'impostazione di trasferimento specificata o il numero nLogID specificato è FALSE. Quando la richiesta di trasferimento è TRUE, si verifica un errore di funzionamento.

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

  • 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 un valore specificato per un parametro è fuori dall'intervallo utilizzabile.

  • se l'istruzione viene eseguita in un programma di interrupt.

  • Se il flag di richiesta di trasmissione e-mail per l'impostazione di trasferimento specificata è "TRUE: Trasferimento richiesto".

  • Se il flag di richiesta di trasferimento per un numero nLogID specificato è TRUE, p.es. se sys_blsLog0DataRecordingActive è TRUE.

  • se viene specificato un server di trasmissione e-mail che non è stato specificato con l'istruzione FP_SMTP_SET_CONNECTION o se viene specificata la finestra di dialogo del client SMTP.

  • se non è stato impostato un nome dominio con sEMailDomain e l'indirizzo e-mail impostato con sEMailAddresses viene specificato senza nome dominio.

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

sys_bIsOperationErrorNonHold (passa a TRUE per una scansione)
  • se un valore specificato per un parametro è fuori dall'intervallo utilizzabile.

  • se l'istruzione viene eseguita in un programma di interrupt.

  • Se il flag di richiesta di trasmissione e-mail per l'impostazione di trasferimento specificata è "TRUE: Trasferimento richiesto".

  • Se il flag di richiesta di trasferimento per un numero nLogID specificato è TRUE, p.es. se sys_blsLog0DataRecordingActive è TRUE.

  • se viene specificato un server di trasmissione e-mail che non è stato specificato con l'istruzione FP_SMTP_SET_CONNECTION o se viene specificata la finestra di dialogo del client SMTP.

  • se non è stato impostato un nome dominio con sEMailDomain e l'indirizzo e-mail impostato con sEMailAddresses viene specificato senza nome dominio.

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

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
		bSetGroup: BOOL:=FALSE;
		bError: BOOL:=FALSE;
	END_VAR

Corpo del POU

Se bSetGroup passa da FALSE a TRUE e sys_bIsEthernetInitializing è impostato su FALSE, l'istruzione viene eseguita.

Corpo LD

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
        ACTIVE_NETWORK := 0 ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 10 ;
        NETWORK_BODY
B(B_CONTACT,,bSetGroup,4,1,6,3,R);
B(B_CONTACT,,sys_bIsEthernetInitializing,12,1,14,3,N);
B(B_VARIN,,'GRPNO=0',16,5,18,7,);
B(B_VARIN,,'GRPNAME=Grp0',16,6,18,8,);
B(B_VARIN,,'TO=user@support.com',16,7,18,9,);
B(B_VARIN,,'DOMAIN=',16,8,18,10,);
B(B_VAROUT,,bError,30,5,32,7,);
B(B_F,FP_SMTP_SET_GROUP!,,18,3,30,10,,?DEN?DsGroupNumber?DsGroupName?DsEMailAddresses?DsEMailDomain?AENO?CbError);
L(1,2,4,2);
L(6,2,12,2);
L(14,2,14,5);
L(14,5,18,5);
L(1,0,1,10);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

Corpo ST

If DF(bSetGroup) AND NOT sys_bIsEthernetInitializing then
    FP_SMTP_SET_GROUP(sGroupNumber := 'GRPNO=0',
                      sGroupName := 'GRPNAME=Grp0',
                      sEMailAddresses := 'TO=user@support.com', 
                      sEMailDomain := 'DOMAIN=',
                      bError => bError);
End_if;

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