Este es el sitio web histórico de la documentación de 4D. La documentación se está trasladando progresivamente a developer.4d.com |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v19
SMTP_Body
|
SMTP_Body ( smtp_ID ; msgCuerpo {; opcion} ) -> resultado | ||||||||
Parámetro | Tipo | Descripción | ||||||
smtp_ID | Entero largo |
![]() |
Referencia del mensaje | |||||
msgCuerpo | Texto |
![]() |
Cuerpo del mensaje | |||||
opcion | Entero |
![]() |
0 = Remplazar (si msgCuerpo no está vacío), 1 = Eliminar, 2 = Añadir, 4 = Formato HTML (texto plano por defecto) | |||||
resultado | Entero |
![]() |
Código de error | |||||
El comando SMTP_Body inserta el texto de msgCuerpo en el cuerpo principal del mensaje identificado por smtp_ID.
El msgCuerpo es el bloque principal de texto.
smtp_ID es la referencia entero largo de un mensaje electrónico creado con el comando SMTP_New.
msgCuerpo es un valor texto que contiene el cuerpo del mensaje.
Por defecto, el cuerpo del mensaje está codificado con UTF-8, lo que garantiza que los caracteres enviados serán interpretados correctamente por casi todos los clientes de correo electrónico. Si desea utilizar un conjunto de caracteres específico, consulte los comandos SMTP_SetPrefs y SMTP_Charset.
opcion se utiliza para gestionar la concatenación de varios cuerpos y para modificar el formato de los mensajes (texto o HTML):
Para combinar el envío del mensaje en HTML con una opción de reemplazo, sólo puede sumar los valores. Por ejemplo, puede pasar 1+4 en opcion con el fin de sustituir el cuerpo y enviar el mensaje en HTML.
Este es un ejemplo SMTP completo:
C_LONGINT($SMTP_ID)
C_BOOLEAN($SentOK;$OK)
$SentOK:=False `Una bandera indica si es aplicable a todos los comandos
Case of
:(Not(ERRCHECK("SMTP_New";SMTP_New($SMTP_ID))))
:(Not(ERRCHECK("SMTP_Host";SMTP_Host($SMTP_ID;◊pref_Server))))
:(Not(ERRCHECK("SMTP_From";SMTP_From($SMTP_ID;vFrom))))
:(Not(ERRCHECK("SMTP_To";SMTP_To($SMTP_ID;vTo))))
:(Not(ERRCHECK("SMTP_Cc";SMTP_Cc($SMTP_ID;vCC))))
:(Not(ERRCHECK("SMTP_Bcc";SMTP_Bcc($SMTP_ID;vBcc))))
:(Not(ERRCHECK("SMTP_Subject";SMTP_Subject($SMTP_ID;vSubject))))
:(Not(ERRCHECK("SMTP_Comments";SMTP_Comments($SMTP_ID;"Sent via 4D"))))
:(Not(ERRCHECK("SMTP_AddHeader";SMTP_AddHeader($SMTP_ID;"X-4Ddemo:";◊VERSION))))
:(Not(ERRCHECK("SMTP_Body";SMTP_Body($SMTP_ID;vMessage))))
:(Not(ERRCHECK("SMTP_Send";SMTP_Send($SMTP_ID))))
Else
$SentOK:=True `mensaje compuesto y enviado con éxito
End case
If($SMTP_ID#0) `Si un mensaje fue creado en memoria, debemos borrarlo ahora
$OK:=ERRCHECK("SMTP_Clear";SMTP_Clear($SMTP_ID))
End if
Nota: para mayor información sobre el uso particular de la estructura Case of, consulte el Anexo A: Consejos de programación
A continuación está el código del método ERRCHECK. Este método recibe dos parámetros, el nombre del comando ($Command), y el valor del error (pasado por la ejecución del comando en el parámetro del método). ERRCHECK devuelve un error booleano indicando si el comando devolvió el error cero. Si el error no es cero, el valor devuelto ($0) es false, de lo contrario es true.
C_TEXT(vErrorMsg)
$Command:=$1
$Error:=$2
$Result:=True
If($Error#0)
$Result:=False
If(◊SHOWERRORS) `Booleano para determinar si mostrar los mensajes de error
vErrorMsg:=IT_ErrorText($Error)
ALERT("ERROR ---"+Char(13)+"Command: "+$Command+Char(13)+"Error
Code"+String($Error)+Char(13)+"Description"+vErrorMsg)
End if
End if
$0:=$Result
Producto: 4D
Tema: IC Send Mail (obsoleto)
Número
88973
Creado por: 4D Internet Commands 6.5
Modificado: 4D Internet Commands v14
Modificado: 4D Internet Commands v16
4D Internet Commands ( 4D v19)