Como configurar el gmail para poder enviar desde el programa los archivos digitales

52 views
Skip to first unread message

japama

unread,
Nov 7, 2023, 7:25:33 PM11/7/23
to vfp-factura-electronica-mexico
Hola Grupo

Alguien que pueda compartir como configurar el GMAIL para poder enviar desde mi programa los archivos de la factura.

Les agradezco mucho el apoyo que puedan brindarme.

Saludos

Eduardo perez schmidt

unread,
Nov 7, 2023, 8:23:08 PM11/7/23
to vfp-factura-ele...@googlegroups.com
Hola, te comparto el codigo
PROCEDURE enviaemail_gmail
PARAMETERS archivopdf,reporte
IF !FILE('&archivopdf')

IF EMPTY(cclie.correoe)
=MESSAGEBOX('El cliente no tiene cuenta de correo en el catßlogo de clientes....',_stop,'verificar')
RETURN
ENDIF
WAIT WINDOW 'Creando archivo pdf para adjuntar a correo electr¾nico...' nowait
WAIT WINDOW 'Enviando archivos por correo electr¾nico...' nowait
DO creapdf WITH archivopdf,reporte,detallar
ENDIF

#DEFINE CRLF CHR(13)+CHR(10)

************************ envio gmail
LOCAL mail_to, cFile, cfile2
RESTORE FROM &pdatos\_archivos.mem addi
* WAIT WINDOW archivopdf
DO case
case 'complem' $ archivopdf
IF EMPTY(cclie.correop)
xemail=TRIM(cclie.correoe)
ELSE
xemail=TRIM(cclie.correop)
ENDIF

SELECT cpagos
xref=''
GO top
DO WHILE !EOF()
xref=xref+TRIM(cpagos.serie)+ALLTRIM(STR(cpagos.factura))+'-'
SKIP
ENDDO
SELECT cpagos
GO top
strSubject = "Complemento de pago "+alLTRIM(STR(cpagos.consec))+' '+xtit
strBody = "Anexo les enviamos el Complemento de pago No. "+alLTRIM(STR(cpagos.consec))+', que ampara las facturas '+xref+CRLF+CRLF+xtit
CASE 'buzonfacturas_cfdi\facturas' $ archivopdf
xemail=TRIM(cclie.correoe)
SELECT curcoti
GO top
OTHERWISE
xemail=TRIM(cclie.correoe)
SELECT cfactura
strSubject = "CFDI "+TRIM(cfactura.serienota)+' '+LTRIM(STR(cfactura.numero))+' '+mtit
strBody = "Anexo les enviamos el Comprobante Fiscal Digital No. "+TRIM(cfactura.serienota)+' '+LTRIM(STR(cfactura.numero))+crlf+mtit
endcase
IF !'complem' $ archivopdf
IF MESSAGEBOX('Se envia el documento generado por correo electr¾nico?'+CHR(13)+CHR(13)+'correo-e: '+xemail,4+32,'confirmar')#6
retu
endif
endif
GO top



GO top
*mail_to = TRIM(correoe)
mail_from = _cliente_correo
ssl=1

cFile = archivopdf
cFile2 = STRTRAN(archivopdf,'.pdf','.xml')
*
Try
Local lcSchema, loConfig, loMsg, loError, lcErr
lcErr = ""
lcSchema = "http://schemas.microsoft.com/cdo/configuration/"
loConfig = Createobject("CDO.Configuration")
With loConfig.Fields
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") ="smtp.gmail.com"
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 465
.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") =.t.
.Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = .T.
.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
.Item("http://schemas.microsoft.com/cdo/configuration/sendusername") =TRIM(_cliente_correo)
.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") =TRIM(_pswd)
.Update
Endwith
loMsg = Createobject ("CDO.Message")

IF !EMPTY(cFile)
loMsg.AddAttachment(cFile)
ENDIF

IF !EMPTY(cFile2)
loMsg.AddAttachment(cFile2)
ENDIF


With loMsg
.Configuration = loConfig
.From = TRIM(mail_from)
* .to = TRIM(cclie.correoe)
.to = xemail
IF 'compl' $ archivopdf
.Subject = strsubject
.TextBody = strbody
else
.Subject = "CFDI "+TRIM(curcoti.serie)+' '+LTRIM(STR(curcoti.no_fact))+' '+mtit
.TextBody = "Anexo les enviamos el Comprobante Fiscal Digital No. "+TRIM(curcoti.serie)+' '+LTRIM(STR(curcoti.no_fact))+CRLF+mtit
endif
.send()
Endwith

Catch To loError

lcErr = [Error: ] + Str(loError.ERRORNO) + Chr(13) + ;
[Linea: ] + Str(loError.Lineno) + Chr(13) + ;
[Mensaje: ] + loError.Message

Finally

Release loConfig, loMsg
Store .Null. To loConfig, loMsg
If Empty(lcErr)
IF !'complem' $ archivopdf
Messagebox("Email enviado satisfactoriamente a:"+xemail, 64,'Envio de correo')
ELSE
WAIT WINDOW "Email enviado satisfactoriamente a: "+xemail timeout 4
endif
Else
Messagebox(lcErr, 16)
Endif
ENDTRY
RETURN

--
Has recibido este mensaje porque estás suscrito al grupo "vfp-factura-electronica-mexico" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a vfp-factura-electroni...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/vfp-factura-electronica-mexico/3407f342-94c1-4c7b-b589-f2d1f3eeb778n%40googlegroups.com.


--

Eduardo Pérez Schmidt
Sistemas Interactivos
Tel. Cel. 044 55 3474 3664
Reply all
Reply to author
Forward
0 new messages