• Este debate tiene 4 respuestas, 2 mensajes y ha sido actualizado por última vez el hace 3 años por manuel.sanchez.
Viendo 5 entradas - de la 1 a la 5 (de un total de 5)

Adjuntar documentos en la CU 400 smtp mail



  • manuel.sanchez
    Participante
    manuel.sanchez

    Hola,

    Estoy programando con visual studio code contra Dynamics 365 BC en cloud (SaaS) wave 2 y recurro a vosotros por que ya estoy desquiciado y se me han agotado todos los recursos para programar el adjuntar los documentos que deseo enviar por correo electrónico utilizando la codeunit 400 con la propiedad AddAttachmentStream. Bajo C/Side y con la misma codeunit y la propiedad AddAttachment era muy fácil pero ahora con esto del cambio (a mejor se entiende) a vscode y cloud se ha vuelvo a liar y algo que antes era muy sencillo ahora es muy complicado por la falta de recursos en el aprendizaje del nuevo lenguaje de programación.

    Os pregunto: ¿Alguien tiene la solución a este problema y quiere compartirlo con todos nosotros?

    Estaría muy agradecido ya que en muchos desarrollos que tengo realizados y finalmente tendré que migrar, tengo esa funcionalidad contra la codeunit 400 y la función AddAttachment.

    Gracias.

    #1018477

    Jon Ander (IGN)
    Participante
    Jon Ander (IGN)

    Buenas,

    Espero que te sirva:

    trigger OnAction()
    var
    cuMail: Codeunit “Email Message”;
    recipients: List of [text];
    ins: InStream;
    fileName: text;
    cuSMTP: Codeunit “SMTP Mail”;
    begin
    UploadIntoStream(‘Select file’, ”, ‘All Files (*.*)|*.*’, filename, ins);
    recipients.Add(‘xxxxx@xxxxxx.es’);
    cuSMTP.CreateMessage(‘Jon ander’, ‘xxxxx@xxxxxx.es’, recipients, ‘test’, ‘test’, true);
    cuSMTP.AddAttachmentStream(ins, ‘File.txt’);
    if not cuSMTP.Send() then Error(GetLastErrorText);
    end;

    #1018478

    manuel.sanchez
    Participante
    manuel.sanchez

    Hola Jon.

    Muchas gracias por tu respuesta.
    Funciona perfectamente. Se puede enviar el documento ubicado en el pc adjuntándolo manualmente.
    ¿Pero sabes si se puede hacer de forma automática, sin tener que interactuar el usuario?
    Gracias.

    #1018479

    Jon Ander (IGN)
    Participante
    Jon Ander (IGN)

    Buenas Manuel,

    Al ser cliente en SaaS, hasta donde yo se, no se puede interactuar con ficheros locales sin hacer el upload con interfaz de usuario, lo que se puede hacer, es crear por ejemplo una función en Azure Functions, la cual se encargue de subir el fichero a algún alojamiento en azure Blobs o que te devuelva un Stream, y luego adjuntar el fichero en el correo.

    o Directamente, crear la función en azure functions, la cual envíes una ruta del equipo local, y se encargue ella de mandar el correo.

    Saludos.

    #1018480

    manuel.sanchez
    Participante
    manuel.sanchez

    Buenos días Jon, muchas gracias por todo.
    Estudiaré lo que me comentas de generar una función en Azure functions. Veré donde puedo conseguir información de como trabajar con Azure functions. Ese tema aún no lo he tocado.
    Gracias.

    #1018481
Viendo 5 entradas - de la 1 a la 5 (de un total de 5)

Debe iniciar sesión para responder a este tema.