Hola Rafael...
1.- Foxypreviewer

      PUBLIC PUBLI_FoxyPreview
      IF FILE(ADDBS(CURDIR()) + 'Foxypreviewer.app')
        DO FoxyPreviewer.app
        PUBLI_FoxyPreview    = ADDBS(CURDIR()) + 'foxypreviewer.app'
     ELSE
        PUBLI_FoxyPreview    = ''
     ENDIF
        *--- Create FoxBarcode Object
    local loFbc, lcImage, lcBarCode
    m.loFbc = CREATEOBJECT("FoxBarcode")
        *-- Set properties
    m.loFbc.nBarcodeType = 132 && Interleaved 2 of 5
    m.loFbc.nFactor = 2
    m.loFbc.cImageType = "BMP"
    m.loFbc.nImageWidth = 900
    m.lcBarCode = codbar

nombre = (transform(nSerie, "@L 9999") +"-"+ transform(nNumero, "@L 99999999"))
    lcNombyUbi = ADDBS(CURDIR()) + '\Docum\' +abre+nombre + '.pdf'
    thisform.pdfname = lcNombyUbi

    Report Form docFelecPDF.frx OBJECT TYPE 10 To FILE (lcNombyUbi)
    DO FOXYPREVIEWER.APP WITH "RELEASE"

2.- El mismo Foxypreviewer lo graba




3.- Cdo de Windows...

LOCAL loCfg, loMsg, lcFile, loErr

maildest = thisform.emailclte
&&  mailcc   = thisform.emailcc

mailname = ALLTRIM(thisform.MailName)
mailcc   = ALLTRIM(thisform.MailCc)
asunto   = ALLTRIM(thisform.MailAsu)
mensaje  = ALLTRIM(thisform.Mensa)

loErr = .f.
  loCfg = CREATEOBJECT("CDO.
Configuration")
  WITH loCfg.Fields
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver <http://schemas.microsoft.com/cdo/configuration/smtpserver>") = "smtp.gmail.com <http://smtp.gmail.com>" .Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport <http://schemas.microsoft.com/cdo/configuration/smtpserverport>") = 465 .Item("http://schemas.microsoft.com/cdo/configuration/sendusing <http://schemas.microsoft.com/cdo/configuration/sendusing>") = 2 .Item("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout <http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout>") = 10 .Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate <http://schemas.microsoft.com/cdo/configuration/smtpauthenticate>") = "1" .Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl <http://schemas.microsoft.com/cdo/configuration/smtpusessl>") = "1" .Item("http://schemas.microsoft.com/cdo/configuration/sendusername <http://schemas.microsoft.com/cdo/configuration/sendusername>") = "mim...@gmail.com <mailto:avdaembrag...@gmail.com>" .Item("http://schemas.microsoft.com/cdo/configuration/sendpassword <http://schemas.microsoft.com/cdo/configuration/sendpassword>") = "pass"
    .Update
  ENDWITH
  loMsg = CREATEOBJECT ("CDO.Message")

  WITH loMsg
    .Configuration = loCfg
    *-- Remitenete y destinatarios
.From = "Empresa S.R.L. <mim...@gmail.com <mailto:avdaembrag...@gmail.com>>" .To = maildest &&&& "Hernan <her...@hotmail.com.ar <mailto:hsuli...@compudisk.com.ar>>"
   &&     .Cc = ""

    *- Notificación de lectura
    .Fields("urn:schemas:mailheader:disposition-notification-to") = .From
    .Fields("urn:schemas:mailheader:return-receipt-to") = .From
    .Fields.Update
    *-- Tema
    *-- .Subject = "Ejemplo del " + TTOC(DATETIME())
    .Subject = asunto
    .TextBody = mensaje

 *****   .HTMLBody = ""

    atachfile = ALLTRIM(thisform.atach)

&&&  asunto = "Resumen Cta. Cte. "
&&& mensaje = "Adjuntamos resumen de su cuenta corriente. Atentamente. BsEstudio"

&&    *-- Formato HTML desde la Web
&& .CreateMHTMLBody("http://comunidadvfp.blogspot.com/p/acerca-de.html <http://comunidadvfp.blogspot.com/p/acerca-de.html>", 0)
    *-- Archivo adjunto
&&&&    lcFile = GETFILE()
&&&&    IF NOT EMPTY(lcFile)
      && .AddAttachment(lcFile)
     .AddAttachment(atachfile)
&&&&    ENDIF
  ENDWITH

    *-- Envio el mensaje
   loErr = loMsg.Send()

    IF ISNULL(loErr)
      loMsg = NULL
      loCfg = NULL
      MESSAGEBOX("Mensaje enviado!", "Envio Mail...")
    else
      MESSAGEBOX("No se pudo enviar el mensaje" + CHR(13) + ;
        "Error: " + TRANSFORM(loErr.ErrorNo) + CHR(13) + ;
        "Mensaje: " + loErr.Message , 16, "Error")
    endif






No lo hago por lote, lo hago individual, pero funciona de 10, no se si te sirve, habria que
serializar el proceso..

Saludos..

Hernan Suligoy



El 16/05/2017 a las 05:30 p.m., rafael copquin escribió:

Necesito generar un lote de facturas electrónicas en formato pdf y luego enviarlas automáticamente por correo.

Estuve viendo varias opciones que googlie por ahi, pero ninguna me funciona.

 1. Básicamente tengo un cursor con los datos de N facturas generadas
    en un lote con sus CAE recibidos.
 2. Ahora quiero generar sendos pdf (original y duplicado) y dejarlos
    grabados en una carpeta.
 3. Al mismo tiempo los quiero enviar automáticamente por email a sus
    respectivos clientes.

Sé que esto ya se ha hecho miles de veces, pero yo hasta ahora nunca las generé por lote (como es este caso) y agradecería un ejemplo de cómo se hace, o sea:

 1. cómo genero el pdf
 2. cómo se hace para que se grabe en la carpeta
 3. cómo se envía por email

Gracias a todos

Rafael Copquin



<http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient> Libre de virus. www.avg.com <http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient>

<#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>


Responder a