Sistema de Gestión de Negocios "Hexa"
Base de datos de conocimiento.
| Doc. Ref. 32001 Título: Los métodos Com en Hexa V9 Autor: Soltec Última actualización: 17/08/2018#email #mensaje #comunicaciones #enviar #recibir |
Los métodos Com en Hexa V.9
El objeto Com, de la clase cCom, gestiona el correo electrónico: validación de direcciones, preparación de mensajes en cola, envío SMTP y recepción POP3. Los mensajes se almacenan en EMailEnviado y EMailRecibido, y las conexiones utilizan los parámetros del usuario y equipo actuales.
En los métodos con Condicion, Orden y Opciones, el criterio SQL se indica sin WHERE y el orden sin ORDER BY, salvo las particularidades descritas en cada caso. Opciones contiene valores con el formato Nombre=Valor; los textos con espacios se delimitan con comillas simples. Una condición vacía puede abarcar todos los registros. Los ejemplos utilizan datos ilustrativos.
Los métodos disponibles son los siguientes:
-
Com.VEMS(ListaEmail)
Comprueba la sintaxis de las direcciones de ListaEmail y devuelve verdadero si todas superan sus comprobaciones de longitud, arroba, puntos y caracteres admitidos. Separa las direcciones por punto y coma; aunque el comentario menciona comas, el código solo divide por punto y coma. No consulta al servidor ni verifica la existencia del buzón.
Ejemplo:
Main = Com.VEMS("uno@example.com;dos@example.com") -
Com.EMLC9(Condicion, Orden, Opciones)
Prepara mensajes en EMailEnviado. Si Prioridad es 0, llama además a EMLE9 para enviarlos; una prioridad distinta de cero los deja en cola. Condicion y Orden seleccionan los destinatarios de la tabla indicada en Destinatario. Sin Destinatario, utiliza EmailDestinatario y NombreDestinatario para un mensaje manual.
Opciones: Referencia identifica el envío; NombreRemitente, EmailRemitente y EmailRespuesta definen el origen, tomando por defecto los datos del usuario; Asunto y Contenido definen el mensaje. NombreCopia, EMailCopia, NombreCopiaOculta y EMailCopiaOculta permiten copias. Adjuntos contiene rutas separadas por punto y coma. PlantillaEMail, PlantillaEMailFirma y PlantillaEMailAdjuntos definen plantillas y sus archivos; HTML interviene en la selección de la plantilla. Se sustituyen comodines de fecha, firma y datos del destinatario.
Destinatario admite Cliente, ClientePotencial, Proveedor, Contacto, Empleado o el formato Tabla;CampoCodigo;CampoNombre;CampoEMail. AgruparEnCopiaOculta indica el tamaño del grupo, con 1 como valor por defecto; NombreDestinatarioAgrupacion y EMailDestinatarioAgrupacion identifican el destinatario visible. Devuelve un texto de mensajes en cola, enviados y errores según la rama ejecutada.
Ejemplo:
Main = Com.EMLC9("Codigo=1234", "Codigo", "Destinatario='Cliente' Asunto='Aviso' Contenido='Mensaje de prueba' Prioridad=1") -
Com.EMLE9(Condicion, Orden, Opciones)
Envía por SMTP los registros de EMailEnviado con Enviado falso que cumplen Condicion, en el Orden indicado. Utiliza SMTP9, SMTP9Usuario, SMTP9Clave, SMTP9Puerto y SMTP9SSL, admitiendo configuración específica por remitente con el sufijo /direccion. El puerto predeterminado es 25. VelocidadMaximaEmail limita la frecuencia de envío. Procesa destinatarios, copias y adjuntos; actualiza Enviado, fecha, hora y Resultado de cada registro. Opciones no se utiliza. Devuelve "Enviados=" y "Errores=" con sus contadores.
Ejemplo:
Main = Com.EMLE9("Codigo=25", "Codigo", "") -
Com.EMLR9K(Condicion, Orden, Opciones)
Recupera mensajes POP3 mediante OpenPop y los incorpora a EMailRecibido, omitiendo los identificadores ya existentes. Opciones: EMail selecciona la cuenta configurada; CantidadMaxima limita los nuevos mensajes, siendo 0 ilimitado; Eliminar permite borrarlos del servidor. Utiliza Pop3, Pop3Usuario, Pop3Clave y Pop3Puerto, con configuración específica /EMail si existe. Condicion y Orden no se utilizan. Devuelve "MensajesProcesados=" y "Existentes=", o el texto del error. Es la variante anterior a EMLR9.
Ejemplo:
Main = Com.EMLR9K("", "", "EMail='buzon@example.com' CantidadMaxima=20 Eliminar=No") -
Com.EMLR9(Condicion, Orden, Opciones)
Recupera mensajes POP3 con MailKit y conexión SSL desde el inicio. Utiliza las mismas opciones y configuración de cuenta que EMLR9K. Guarda remitentes, destinatarios, copias, asunto y cuerpo de texto en EMailRecibido; si no existe TextBody guarda "?". Comprueba MessageId para no duplicar mensajes. No importa adjuntos. Condicion y Orden no se utilizan.
Eliminar=Si marca mensajes para borrarlos del servidor al desconectar, incluidos los ya existentes en Hexa que recorre. Al alcanzar CantidadMaxima sale antes de marcar para borrar el último mensaje importado. Devuelve "MensajesProcesados=" y "Existentes=" o el texto del error.
Ejemplo:
Main = Com.EMLR9("", "", "EMail='buzon@example.com' CantidadMaxima=20 Eliminar=No")
