Establecer el modo de transferencia SMTP para los archivos de histórico de datos
Esta instrucción FP define los ajustes de transferencia del cliente SMTP para correo electrónico cuando el archivo de histórico de datos se ha completado.
Entrada
Número de LOG (rango permitido: 0–15). El compilador genera internamente la cadena para el número de archivo de registro, p. ej., 'LOG=0'
Establecer el número de grupo de destino y el asunto del correo electrónico.
Configurar hasta ocho números de grupo de destino con la sintaxis de palabra clave 'GRPNO=n1+n2+…+n8'
.
Valores: 0–7
Establecer el asunto con una de las dos configuraciones de palabra clave siguientes (máx. 64 caracteres, un byte):
'SUBJECT=xxxxxx'
: Establece un texto de asunto definido por el usuario.
'SUBJECTAUTO'
: Asunto generado automáticamente que contiene información sobre el tipo de activación del envío.
Asuntos generados automáticamente:
Japonés |
Inglés |
---|---|
ロギング/トレース (LOG0) |
Logging/Trace (LOG0) |
ロギング/トレース (LOG1) |
Logging/Trace (LOG1) |
... |
... |
ロギング/トレース (LOG14) |
Logging/Trace (LOG14) |
ロギング/トレース (LOG15) |
Logging/Trace (LOG15) |
Nota:
El idioma utilizado para la información generada automáticamente se especifica con la instrucción FP_SMTP_SET_CONNECTION. Usar el parámetro sCommunication para cambiar el idioma del japonés (por defecto) al inglés.
Las palabras clave 'GRPNO'
y 'SUBJECT'
deben estar separadas por comas e introducirse en este orden.
Ejemplos:
Grupo de destino número 0, asunto definido por el usuario "LogFileTransmission": 'GRPNO=0,SUBJECT=LogFileTransmission'
Grupo de destino números 1, 3, 4, 7, asunto definido por el usuario "LogFilesGroups": 'GRPNO=1+3+4+7,SUBJECT=LogFilesGroups'
Números de grupo de destino 0 a 7, asunto generado automáticamente: 'GRPNO=0+1+2+3+4+5+6+7,SUBJECTAUTO'
Mensaje (máx. 256 caracteres, un byte)
Especificar la variable que almacena el texto de correo electrónico o una constante de caracteres.
Especificar si se envía o no información adicional o un archivo adjunto.
Incluir información adicional en el texto del correo electrónico con una de las siguientes configuraciones de palabra clave:
'INFO=NONE'
: No añadir ninguna información automáticamente
'INFO=AUTO'
: Añadir texto generado automáticamente
La siguiente información se añade al texto del correo electrónico:
Japonés |
Inglés |
---|---|
基本項目
|
Basic information
|
Nota:
El idioma utilizado para la información generada automáticamente se especifica con la instrucción FP_SMTP_SET_CONNECTION. Usar el parámetro sCommunication para cambiar el idioma del japonés (por defecto) al inglés.
Para generar la cadena sAttachment también se puede usar FP_SMTP_GET_DATA_FORMAT.
Adjuntar el archivo de histórico de datos (archivo LOG) con la siguiente configuración de palabras clave:
'ATT=NONE'
: No adjuntar el archivo LOG al correo electrónico.
'ATT=FILE'
: Adjuntar el archivo LOG con el número especificado por nLogID.
Ejemplos:
No añadir ninguna información, no adjuntar el archivo LOG: 'INFO=NONE,ATT=NONE'
Añadir información generada automáticamente, adjuntar el archivo LOG: 'INFO=ADD,ATT=FILE'
Salida
Pasa a TRUE bajo las siguientes condiciones:
si se supera el tiempo de espera de la conexión
si la dirección IP no es válida
Cuando se produce un error, consulte la variable del sistema sys_iEthernetConnectionErrorCode para conocer el número de código de error.
No se pueden omitir los parámetros para la generación automática de texto y para adjuntar archivos.
Separar todas las entradas de palabras clave por medio de una coma, p. ej., 'NAME=abcd,FROM=sender@server.com'
No cambiar el orden de las palabras clave. Especificar las palabras clave y sus parámetros de ajuste en el orden en que se enumeran aquí.
El número de caracteres de los datos de cadena no debe superar los 256.
Esta instrucción no está disponible en los programas de interrupción.
Antes de ejecutar la instrucción, necesita especificar el servidor de transmisión de correo electrónico utilizando FP_SMTP_SET_CONNECTION o el diálogo de configuración del cliente SMTP.
Antes de ejecutar la instrucción, necesita especificar la configuración de correo electrónico del grupo y evento utilizando FP_SMTP_SET_GROUP o el diálogo de configuración del cliente SMTP.
Se pueden utilizar mayúsculas y minúsculas para especificar las palabras clave. Sin embargo, el asunto, el texto del correo electrónico y el nombre del archivo adjunto distinguen entre mayúsculas y minúsculas.
Antes de ejecutar la instrucción, asegurarse de que sys_bIsEthernetInitializing es FALSE. sys_bIsEthernetInitializing pasa a TRUE cuando se ejecuta la instrucción. Cuando ejecuta la instrucción mientras sys_bIsEthernetInitializing es TRUE, se produce un error.
Cuando esta instrucción se ha ejecutado con éxito, las variables del sistema sys_bIsCarry y sys_iEthernetConnectionErrorCode se reinician.
La instrucción solo puede ejecutarse cuando la bandera de solicitud de transferencia para el número nLogID especificado es FALSE. Cuando la bandera de solicitud de transferencia es TRUE, se produce un error de operación.
La instrucción almacena los ajustes de correo electrónico para el histórico de datos de sGroupNumber_Subject, sBodyText y sAttachment en el número de archivo LOG especificado por nLogID.
Cuando se produce un error, consulte la variable del sistema sys_iEthernetConnectionErrorCode para conocer el número de código de error.
Si la bandera de solicitud de transferencia para un número nLogID especificado es TRUE, p. ej., si sys_blsLog0DataRecordingActive es TRUE.
Si no se registra la condición de histórico de datos de un número nLogID especificado.
Si el valor especificado para un parámetro está fuera del rango permitido.
si la instrucción se ejecuta en un programa de interrupción
Si el número de caracteres de los datos de cadena supera los 256.
Si se especifica un número de grupo destino que no ha sido definido con la instrucción FP_SMTP_SET_GROUP o con el diálogo de configuración del cliente SMTP.
Si no se especifica ningún servidor de transmisión de correo electrónico.
Si se especifica un servidor de transmisión de correo electrónico que no ha sido especificado con la instrucción FP_SMTP_SET_CONNECTION o con el diálogo de configuración del cliente SMTP.
Si la bandera de solicitud de transferencia para un número nLogID especificado es TRUE, p. ej., si sys_blsLog0DataRecordingActive es TRUE.
Si no se registra la condición de histórico de datos de un número nLogID especificado.
Si el valor especificado para un parámetro está fuera del rango permitido.
si la instrucción se ejecuta en un programa de interrupción
Si el número de caracteres de los datos de cadena supera los 256.
Si se especifica un número de grupo destino que no ha sido definido con la instrucción FP_SMTP_SET_GROUP o con el diálogo de configuración del cliente SMTP.
Si no se especifica ningún servidor de transmisión de correo electrónico.
Si se especifica un servidor de transmisión de correo electrónico que no ha sido especificado con la instrucción FP_SMTP_SET_CONNECTION o con el diálogo de configuración del cliente SMTP.
si la instrucción se ejecuta durante la inicialización de Ethernet, sys_iEthernetConnectionErrorCode pasa a "11: Ethernet se está inicializando".
Todas las variables de entrada y de salida utilizadas para la programación de esta función han sido declaradas en la Cabecera de la POU. Se utiliza la misma cabecera de la POU para todos los lenguajes de programación.
VAR
bIsError: BOOL:=FALSE;
bSetLogTransferSMTP: BOOL:=FALSE;
bDisableLogTransferSMTP: BOOL:=FALSE;
END_VAR
Si bSetLogTransferSMTP y bDisableLogTransferSMTP están a TRUE, se ejecuta la instrucción.
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 7 ;
NETWORK_BODY
B(B_VARIN,,0,19,2,21,4,);
B(B_VARIN,,'GRPNO=0~SUBJECTAUTO',19,3,21,5,);
B(B_VARIN,,'Sent Log Files',19,4,21,6,);
B(B_VARIN,,'INFO=NON~ATT=NONE',19,5,21,7,);
B(B_VAROUT,,bIsError,39,2,41,4,);
B(B_CONTACT,,bSetLogTransferSMTP,5,1,7,3,);
B(B_F,FP_SMTP_SET_MODE_TRANSFER_LOG!,,21,0,39,7,,?DEN?DnLogID?DsGroupNumber_Subject?DsBodyText?DsAttachment?AENO?AbError);
L(1,2,5,2);
L(7,2,21,2);
L(1,0,1,7);
END_NETWORK_BODY
END_NET_WORK
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 5 ;
NETWORK_BODY
B(B_CONTACT,,bDisableLogTransferSMTP,5,1,7,3,);
B(B_F,FP_SMTP_TRANSFER_CONTROL_LOG!,,21,0,39,5,,?DEN?DnLogID?DsControl?AENO?AbError);
B(B_VARIN,,0,19,2,21,4,);
B(B_VARIN,,'DISABLE',19,3,21,5,);
B(B_VAROUT,,bIsError,39,2,41,4,);
L(1,2,5,2);
L(7,2,21,2);
L(1,0,1,5);
END_NETWORK_BODY
END_NET_WORK
END_BODY
If (bSetLogTransferSMTP) Then
FP_SMTP_SET_MODE_TRANSFER_LOG(nLogID := 0,
sGroupNumber_Subject := 'GRPNO=0,SUBJECTAUTO',
sBodyText := 'Sent Log Files',
sAttachment := 'INFO=NON,ATT=NONE', bError => bIsError);
End_if;
If (bDisableLogTransferSMTP) Then
FP_SMTP_TRANSFER_CONTROL_LOG(nLogID := 0,
sControl := 'DISABLE', bError => bIsError);
End_if;