diff --git a/App_Code/Modelos.vb b/App_Code/Modelos.vb
index f242730dd..1b88ed2c4 100644
--- a/App_Code/Modelos.vb
+++ b/App_Code/Modelos.vb
@@ -3574,21 +3574,6 @@ Namespace Modelos
End If
Next
- If ObjConta.ValidacionesPrePoliza(ObjFactura.CvePrePoliza, UsuarioActual, Opcion:=5) Then
- If ObjConta.ValorPolizaDescuadre > 0 Then
- ErrorPrepoliza = True
- GuardaLogAD($"Ventas/Ventas-ProcesoPrePolizas | Error:{ObjConta.MensajePolizaDescuadre} Diferencia:{ObjConta.ValorDiferencia} | CvePrePoliza:{ObjFactura.CvePrePoliza}", "LogPrePolizas")
-
- 'SIRVE PARA VER LA PREPOLIZA QUE SE VALIDA
- 'If ObjConta.GetPrePolizasDetalle(ObjFactura.CvePrePoliza) Then
- ' Dim DtTest = ObjConta.DtResultados
- 'End If
- End If
-
- importeMovimiento = 0
- importeMX = 0
- End If
-
If ErrorPrepoliza Then
Exit For
End If
@@ -3651,15 +3636,12 @@ Namespace Modelos
End If
End If
- If ObjConta.ValidacionesPrePoliza(ObjFactura.CvePrePoliza, UsuarioActual, Opcion:=5) Then
- If ObjConta.ValorPolizaDescuadre > 0 Then
- ErrorPrepoliza = True
- GuardaLogAD($"Ventas/Ventas-ProcesoPrePolizas | Error:{ObjConta.MensajePolizaDescuadre} Diferencia:{ObjConta.ValorDiferencia} | CvePrePoliza:{ObjFactura.CvePrePoliza}", "LogPrePolizas")
- End If
- End If
-
End If
End If
+
+ importeMovimiento = 0
+ importeMX = 0
+
End If
End If
diff --git a/App_Code/Timbrado.vb b/App_Code/Timbrado.vb
index cdfff5558..19b3bbb23 100644
--- a/App_Code/Timbrado.vb
+++ b/App_Code/Timbrado.vb
@@ -352,7 +352,7 @@ Public Class Timbrado
Dim UsuarioServicio As String = If(CvePACCancelacion = 2, Empresa.RFC, "rene.molina@adsistemas.mx")
Dim ClaveServicio As String = If(CvePACCancelacion = 2, Empresa.RFC.ToLower, "rene2018")
Dim Clave As String = Empresa.ContraseñaKey
- Dim UrlServicio As String = "https://servicios.gofac.com.mx/cancelacion.asmx" ' Produccion
+ Dim UrlServicio As String = "https://cfdi.gofac.com.mx/timbrado.asmx" ' Produccion
If Not Empresa.FacturaProduccion Then
ArchivoLLave = $"{Empresa.Ruta}Certificados\CSD01_ZUÑ920208KL4.key"
@@ -360,6 +360,7 @@ Public Class Timbrado
UsuarioServicio = "UserTest"
ClaveServicio = "1234567890"
+ UrlServicio = "https://servicios.gofac.com.mx/cancelacion.asmx" ' Produccion
End If
#Region "Valida"
If Not File.Exists(ArchivoCertificado) Then
@@ -2877,7 +2878,7 @@ concep.DescripcionesEspecificas.NumeroSerie)
Dim TimbraProduccion As Boolean = True
If Not Directory.Exists(RutaArchivo) Then Directory.CreateDirectory(RutaArchivo)
- UrlServicio = "https://pruebas.gofac.com.mx/timbrado.asmx?WSDL"
+ UrlServicio = "https://cfdi.gofac.com.mx/timbrado.asmx?WSDL"
If Not ClsPaginas.EsProduccion AndAlso (Not UsuarioActual.Empresa.FacturaProduccion OrElse UsuarioActual.CveEmpresa = 1) Then
EmisorRFC = "EKU9003173C9"
@@ -2897,6 +2898,8 @@ concep.DescripcionesEspecificas.NumeroSerie)
UsuarioServicio = "UserTest"
ClaveServicio = "1234567890"
UsuarioActual.Empresa.CodigoRegimenFiscal = "601"
+
+ UrlServicio = "https://pruebas.gofac.com.mx/timbrado.asmx?WSDL"
End If
#Region "Valida"
diff --git a/Empresas/189/Formatos/Factura.mrt b/Empresas/189/Formatos/Factura.mrt
index 1b3733a19..c576c96ae 100644
--- a/Empresas/189/Formatos/Factura.mrt
+++ b/Empresas/189/Formatos/Factura.mrt
@@ -593,7 +593,7 @@ iigAooooAKKKKAP/2Q==
True
Transparent
True
- 0.12,2.4,9.62,2.28
+ 0.12,2.4,9.62,2.48
Myriad Pro,9,Regular,Point,False,0
@@ -601,8 +601,8 @@ iigAooooAKKKKAP/2Q==
Textbox20
- <div><b>Facturado a: </b></div><div><b>Cliente: </b>{ClienteCodigo} - {ClienteNombre} </div><div><b>RFC:</b> {ClienteRFC}
-<b>Colonia: </b> {ClienteColonia} </div><div><b>Ciudad: </b>{ClienteCiudad} <b>Estado: </b> {ClienteEstado}</div><div><b>Municipio y/o Delegación: </b>{ClienteMunicipio} </div><div><b>Pais:</b> {ClientePais} <b> CP: </b>{ClienteCP}</div>
+ <div><font size="8"><b>Facturado a: </b></font></div><div><font size="8"><b>Cliente: </b>{ClienteCodigo} - {ClienteNombre} </font></div><div><font size="8"><b>RFC:</b> {ClienteRFC}
+<b>Colonia: </b> {ClienteColonia} </font></div><div><font size="8"><b>Ciudad: </b>{ClienteCiudad} <b>Estado: </b> {ClienteEstado}</font></div><div><font size="8"><b>Municipio y/o Delegación: </b>{ClienteMunicipio} </font></div><div><font size="8"><b>Pais:</b> {ClientePais} <b> CP: </b>{ClienteCP}</font></div><div><font face="Myriad Pro" style="" size="8"><b>Régimen Fiscal:</b> {ClienteRegimenFiscal}</font></div>
Black
Wysiwyg
Expression
@@ -6326,8 +6326,8 @@ FUERO DE MI DOMICILIO. LA CANTIDAD DE $ {Total} SON: {(ImporteLetra)}.
Factura
12/30/2024 5:44:19 PM
7/11/2022 2:49:19 PM
- C:\inetpub\WWWSigGit\Empresas\189\Formatos\Factura.mrt
- e8b162183e2340d1bbaad55d91fb8962
+ Factura.mrt
+ e849bb4463e44732ae40e92228d31a35
Factura
Centimeters
2022.4.5.0
diff --git a/Ventas/CatAutorizacionLimites.aspx.vb b/Ventas/CatAutorizacionLimites.aspx.vb
index 1af186047..44e55bb52 100644
--- a/Ventas/CatAutorizacionLimites.aspx.vb
+++ b/Ventas/CatAutorizacionLimites.aspx.vb
@@ -37,6 +37,14 @@ Partial Class Ventas_CatAutorizacionLimites
DdlCliente.setEsWebService(True)
DdlClienteFiltro.setEsWebService(True)
+ If Request("CveCliente") IsNot Nothing AndAlso Request("CveCliente").ToString().ToEntero() > 0 Then
+ Dim CveCliente As Integer = Request("CveCliente").ToString().ToEntero()
+ Dim Cliente As String = GlobalDTCliente(UsuarioActual.CveEmpresa, Estatus:=-1, CveCliente:=CveCliente).FiltroPrimeroValor("NombreComercial")
+
+ DdlClienteFiltro.SelectedValue = CveCliente.ToString()
+ DdlCliente.SelectedText = Cliente
+ End If
+
'Dim EsWS = If(UsuarioActual.Empresa.Funcionalidad(105) = "1" Or UsuarioActual.Empresa.Funcionalidad(141) = "1", True, False)
'If EsWS Then
' DdlCliente.setEsWebService(True)
diff --git a/Ventas/Clientes.aspx.vb b/Ventas/Clientes.aspx.vb
index dc24d778c..682877531 100644
--- a/Ventas/Clientes.aspx.vb
+++ b/Ventas/Clientes.aspx.vb
@@ -4908,8 +4908,8 @@ Partial Class Clientes
If Not TieneError Then
If IVA > 0 Then
- If ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, -IVA, -IVA, 13, "Traspaso de saldos de anticipos.IVA", "Traspaso de saldos de anticipos.IVA", CveCliente:=Gvr.DataKey("CveCliente").ToEntero(), CveIE:=Gvr.DataKey("CveIE").ToEntero(), PorcentajeImpuesto:=Gvr.DataKey("PorcentajeIVA").ToDecimal, Contabilizable:=False) Then
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, IVA, IVA, 13, "Traspaso de saldos de anticipos. IVA", "Traspaso de saldos de anticipos.IVA", CveCliente:=CveCliente, CveIE:=Gvr.DataKey("CveIE").ToEntero(), PorcentajeImpuesto:=Gvr.DataKey("PorcentajeIVA").ToDecimal, Contabilizable:=False) Then
+ If ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, -IVA, -IVA, 13, "Traspaso de saldos de anticipos.IVA", "Traspaso de saldos de anticipos.IVA", CveCliente:=Gvr.DataKey("CveCliente").ToEntero(), CveIE:=Gvr.DataKey("CveIE").ToEntero(), PorcentajeImpuesto:=Gvr.DataKey("PorcentajeIVA").ToDecimal, CveVenta:=CveVenta, Contabilizable:=False) Then
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, IVA, IVA, 13, "Traspaso de saldos de anticipos. IVA", "Traspaso de saldos de anticipos.IVA", CveCliente:=CveCliente, CveIE:=Gvr.DataKey("CveIE").ToEntero(), PorcentajeImpuesto:=Gvr.DataKey("PorcentajeIVA").ToDecimal, CveVenta:=CveVenta, Contabilizable:=False) Then
TieneError = True
End If
Else
diff --git a/Ventas/PVCobranza.aspx.vb b/Ventas/PVCobranza.aspx.vb
index f4e24585b..4aa31d642 100644
--- a/Ventas/PVCobranza.aspx.vb
+++ b/Ventas/PVCobranza.aspx.vb
@@ -853,94 +853,108 @@ Partial Class Ventas_PVCobranza
If MsgError = "" Then
ObjVentas2.Commit()
Dim msBuild As New StringBuilder()
- Dim MsgTimbrado As String = ""
- Dim DebeTimbrar As Boolean = True
+ Try
- Dim SeTimbro As Boolean = False
- Dim SeTimbroNC As Boolean = False
+ Dim MsgTimbrado As String = ""
+
+ Dim DebeTimbrar As Boolean = True
+
+ Dim SeTimbro As Boolean = False
+ Dim SeTimbroNC As Boolean = False
+
+ 'SI SE GENERO FACTURA DE INGRESO, TIMBRARLA DESPUES DE REALIZAR EL PAGO
+ If DebeTimbrar AndAlso respFactura IsNot Nothing Then
+ Try
+ 'VERIFICA SI SE GENERO NC
+ If respNC IsNot Nothing Then
+ AjustarTimbre(respFactura.Factura, respNC.Factura)
+ MsgTimbrado = TimbrarFactura(respFactura.Factura, respNC.Factura, SeTimbro, SeTimbroNC)
+ Else
+ AjustarTimbre(respFactura.Factura, Nothing)
+ MsgTimbrado = TimbrarFactura(respFactura.Factura, Nothing, SeTimbro, SeTimbroNC)
+ End If
+
+ If Not String.IsNullOrEmpty(MsgTimbrado) Then
+ Dim StrEr As String = $"
Comprobante no emitido :
{MsgTimbrado}
Por favor inténtelo de nuevo a través del botón 'Emitir' en ventas.
"
+ MsgTimbrado = StrEr
+ End If
+ Catch ex As Exception
+ GuardaLogAD(ex.ToString())
+ msBuild.AppendFormat("
{0}
", MsgTimbrado)
+ End Try
- 'SI SE GENERO FACTURA DE INGRESO, TIMBRARLA DESPUES DE REALIZAR EL PAGO
- If DebeTimbrar AndAlso respFactura IsNot Nothing Then
- 'VERIFICA SI SE GENERO NC
- If respNC IsNot Nothing Then
- AjustarTimbre(respFactura.Factura, respNC.Factura)
- MsgTimbrado = TimbrarFactura(respFactura.Factura, respNC.Factura, SeTimbro, SeTimbroNC)
- Else
- AjustarTimbre(respFactura.Factura, Nothing)
- MsgTimbrado = TimbrarFactura(respFactura.Factura, Nothing, SeTimbro, SeTimbroNC)
End If
- If Not String.IsNullOrEmpty(MsgTimbrado) Then
- Dim StrEr As String = $"
Comprobante no emitido :
{MsgTimbrado}
Por favor inténtelo de nuevo a través del botón 'Emitir' en ventas.
"
- MsgTimbrado = StrEr
- End If
+ If respFactura IsNot Nothing Then
+ If RegistrarPago Then
+ msBuild.Append("Pago Registrado correctamente.
")
+ End If
- End If
+ msBuild.AppendFormat(" La factura {1} se genero correctamente.
", respFactura.CveVenta, respFactura.SerieFolio)
- If respFactura IsNot Nothing Then
- If RegistrarPago Then
- msBuild.Append("Pago Registrado correctamente.
")
- End If
-
- msBuild.AppendFormat(" La factura {1} se genero correctamente.
", respFactura.CveVenta, respFactura.SerieFolio)
-
- If SeTimbro Then
- Dim xml = String.Format("", Encripta(String.Format("OP=FactVta&CVEVENTA={0}&EXT={1}&SERIEFOLIO={2}&TIPODOCTO={3}", respFactura.CveVenta, "XML", respFactura.SerieFolio, respFactura.Factura.TipoDocto)))
- msBuild.AppendFormat("{0}", xml)
- End If
-
- Dim pdf = String.Format("", Encripta(String.Format("OP=VTA&CVEVENTA={0}&PAG=1", respFactura.CveVenta)))
- msBuild.AppendFormat("{0}", pdf)
-
- If respFactura.Factura.Inv_CveMovimiento > 0 Then
- msBuild.AppendFormat("Movimiento de Almacén
", respFactura.Factura.Inv_CveMovimiento)
- End If
-
- If respNC IsNot Nothing Then
- msBuild.AppendFormat(" La nota de crédito {1} se genero correctamente.
", respNC.CveVenta, respNC.SerieFolio)
- If SeTimbroNC Then
- Dim xml = String.Format("", Encripta(String.Format("OP=FactVta&CVEVENTA={0}&EXT={1}&SERIEFOLIO={2}&TIPODOCTO={3}", respNC.CveVenta, "XML", respNC.SerieFolio, respNC.Factura.TipoDocto)))
+ If SeTimbro Then
+ Dim xml = String.Format("", Encripta(String.Format("OP=FactVta&CVEVENTA={0}&EXT={1}&SERIEFOLIO={2}&TIPODOCTO={3}", respFactura.CveVenta, "XML", respFactura.SerieFolio, respFactura.Factura.TipoDocto)))
msBuild.AppendFormat("{0}", xml)
End If
- Dim pdfNC = String.Format("", Encripta(String.Format("OP=VTA&CVEVENTA={0}&PAG=1", respNC.CveVenta)))
- msBuild.AppendFormat("{0}", pdfNC)
- End If
+ Dim pdf = String.Format("", Encripta(String.Format("OP=VTA&CVEVENTA={0}&PAG=1", respFactura.CveVenta)))
+ msBuild.AppendFormat("{0}", pdf)
+
+ If respFactura.Factura.Inv_CveMovimiento > 0 Then
+ msBuild.AppendFormat("Movimiento de Almacén
", respFactura.Factura.Inv_CveMovimiento)
+ End If
+
+ If respNC IsNot Nothing Then
+ msBuild.AppendFormat(" La nota de crédito {1} se genero correctamente.
", respNC.CveVenta, respNC.SerieFolio)
+ If SeTimbroNC Then
+ Dim xml = String.Format("", Encripta(String.Format("OP=FactVta&CVEVENTA={0}&EXT={1}&SERIEFOLIO={2}&TIPODOCTO={3}", respNC.CveVenta, "XML", respNC.SerieFolio, respNC.Factura.TipoDocto)))
+ msBuild.AppendFormat("{0}", xml)
+ End If
+
+ Dim pdfNC = String.Format("", Encripta(String.Format("OP=VTA&CVEVENTA={0}&PAG=1", respNC.CveVenta)))
+ msBuild.AppendFormat("{0}", pdfNC)
+ End If
- If respNC IsNot Nothing Then
- If respNC IsNot Nothing AndAlso respNC.Factura IsNot Nothing AndAlso respNC.Factura.DtAnticiposAplicados IsNot Nothing Then
- For Each dr As DataRow In respNC.Factura.DtAnticiposAplicados.Rows
- msBuild.AppendLine($"
Imprimir Saldo Aplicado {dr("Folio").ToString}
")
- Next
- End If
+ Next
+ End If
- Else
- If respFactura IsNot Nothing AndAlso respFactura.Factura IsNot Nothing AndAlso respFactura.Factura.DtAnticiposAplicados IsNot Nothing Then
- For Each dr As DataRow In respFactura.Factura.DtAnticiposAplicados.Rows
- msBuild.AppendLine($"
Imprimir Saldo Aplicado {dr("Folio").ToString}
")
- Next
+ Next
+ End If
End If
+
+ If Not String.IsNullOrEmpty(MsgTimbrado) Then
+ msBuild.AppendFormat("
{0}
", MsgTimbrado)
+ End If
+
+ Else
+ msBuild.Append($"Pago Registrado correctamente.
Imprimir ticket")
End If
- If Not String.IsNullOrEmpty(MsgTimbrado) Then
- msBuild.AppendFormat("
{0}
", MsgTimbrado)
- End If
+ Catch ex As Exception
+ GuardaLogAD(ex.ToString())
+ msBuild.Append("Ocurrio un error posterior al pago")
+ End Try
- Else
- msBuild.Append($"Pago Registrado correctamente.
Imprimir ticket")
- End If
Alert(msBuild.ToString(), TipoMensaje.MsgInformacion)
Else
@@ -958,6 +972,19 @@ Partial Class Ventas_PVCobranza
If UsuarioActual.Empresa.Funcionalidad(109) = "1" Then
ImpresionDirectaPDF(CveVenta)
End If
+
+ If UsuarioActual.Empresa.Funcionalidad(382) = "1" Then
+ 'ENVIO DE CORREO
+ Try
+ If respFactura IsNot Nothing AndAlso respFactura.Factura IsNot Nothing Then
+ Dim EnviarMail As Boolean = respFactura.Factura.Cliente.EnviarFactura = "Si"
+ Dim Hilo As New System.Threading.Thread(Sub() EnviarMailFactura(EnviarMail, respFactura.Factura, UsuarioActual))
+ Hilo.Start()
+ End If
+ Catch ex As Exception
+ GuardaLogAD(ex.ToString())
+ End Try
+ End If
LimpiarDatos()
CargaDatos()
@@ -2123,9 +2150,11 @@ Partial Class Ventas_PVCobranza
End Sub
Protected Sub LnkSolicitarActivarAnticipo_Click(sender As Object, e As EventArgs)
- Dim CveCliente As Integer = -1
+
'falta sacar a los usuarios a notificar.
Dim gvr As GridViewRow = DirectCast(DirectCast(sender, LinkButton).BindingContainer, GridViewRow)
+
+ Dim CveCliente As Integer = gvr.DataKey("CveCliente").ToEntero()
Dim Folio As String = gvr.DataKey("Folio")
Dim Importe As Decimal = gvr.FCTextBox(String.Format("TxtAnticipo{0}", gvr.RowIndex)).Text.ToDecimal
Dim Saldo As Decimal = gvr.DataKey("Saldo").ToDecimal()
@@ -2158,7 +2187,8 @@ Partial Class Ventas_PVCobranza
Arr.Add($"$ {Importe}")
If NumeroTelefono.Length = 12 Then
- EnvioMsg = EnviarNotificacionWhatsAppPlantilla(NumeroTelefono, "solicitud_autorizacion_anticipo", Arr, $"https://grupodiaz.adssistemas.mx.com/Clientes/Clientes.aspx?CveCliente={CveCliente}")
+ EnvioMsg = EnviarNotificacionWhatsAppPlantilla(NumeroTelefono, "solicitud_autorizacion_anticipo", Arr, $"https://grupodiaz.adssistemas.mx.com/Ventas/CatAutorizacionLimites.aspx?CveCliente={CveCliente}")
+ ClsSisNotificaciones.EnviarAlerta("Solicitud de Anticipo", $"Solicitud de activación de anticipo Folio: {Folio}
Ir Activar", dr("CveUsuario").ToString, Tipo:=TipoNotificacion.ToastInformacionB)
End If
Next
@@ -2168,7 +2198,7 @@ Partial Class Ventas_PVCobranza
Dim CveIE As Integer = gvr.DataKey("CveIE").ToEntero()
Dim ObjVta As New ClsVentas
- If ObjVta.AddAutorizacionLimite(UsuarioActual.CveEmpresa, gvr.DataKey("CveCliente").ToEntero(), CveVendedor, Saldo, 0, UsuarioActual.CveUsuario, 1, TipoDocumento:="Ant", DiasVencidos:=1, CveVenta:=CveVenta, CveIE:=CveIE) Then
+ If ObjVta.AddAutorizacionLimite(UsuarioActual.CveEmpresa, CveCliente, CveVendedor, Saldo, 0, UsuarioActual.CveUsuario, 1, TipoDocumento:="Ant", DiasVencidos:=1, CveVenta:=CveVenta, CveIE:=CveIE) Then
Dim msgAlert = "La autorización se agregó correctamente."
If EnvioMsg Then
msgAlert = $"{msgAlert} Se envió una notificación de autorización a los usuarios"
@@ -2775,6 +2805,131 @@ Partial Class Ventas_PVCobranza
#End Region
+ Private Sub EnviarMailFactura(EnviaCorreo As Boolean, Factura As Modelos.Factura, UsuarioActual As Usuario)
+ 'GUARDA PDF
+ Dim LocalSerieFolio As String = Factura.SerieFolio
+ Dim LocalTipoDocto As String = Factura.TipoDocto
+
+ Dim ArchivoPDF As String = String.Format("{0}PDF\{1}\{2}.pdf", UsuarioActual.Empresa.Ruta, LocalTipoDocto, LocalSerieFolio)
+
+ 'TIMBRADO NUEVO
+ Try
+ If Not File.Exists(ArchivoPDF) Then
+ GenerarPDFVenta(Factura.CveVenta, AplicaPagare:="1", GuardarPDF:=True, RegenerarPDF:=True, DescargarArchivo:=False)
+ End If
+ Catch ex As Exception
+ GuardaLogAD(ex.ToString())
+ End Try
+
+ Dim ErrorCorreo As Boolean = False
+
+ If EnviaCorreo Then
+ If Factura IsNot Nothing Then
+ Dim ArchivoXML As String = String.Format("{0}XML\{1}\{2}.xml", UsuarioActual.Empresa.Ruta, LocalTipoDocto, LocalSerieFolio)
+
+ Try
+ Dim FIXML As New FileInfo(ArchivoXML)
+ Dim FIPDF As New FileInfo(ArchivoPDF)
+ If FIXML.Exists AndAlso FIPDF.Exists Then
+ MandaMails(UsuarioActual, Factura, Factura.TipoDocto, LocalSerieFolio, EnviaCorreo, ArchivoXML, ArchivoPDF)
+ Else
+ ErrorCorreo = True
+ End If
+ Catch ex As Exception
+ ErrorCorreo = True
+ End Try
+ Else
+ ErrorCorreo = True
+ End If
+
+ If ErrorCorreo Then
+ Dim ObjVentas As New ClsVentas(UsuarioActual:=UsuarioActual)
+ If EnviaCorreo Then
+ ObjVentas.UpdateVentaMail(3, Factura.CveVenta)
+ Else
+ ObjVentas.UpdateVentaMail(0, Factura.CveVenta)
+ End If
+ ObjVentas.Dispose()
+ End If
+ End If
+
+ End Sub
+
+
+ Private Sub MandaMails(UsuarioActual As Usuario, ObjFactura As Modelos.Factura, TipoDocto As String, SerieFolio As String, EnviarFactura As Boolean, XML As String, PDF As String)
+
+ Dim ObjMail As New ClsSisMail()
+ Dim ResultadoMail As Integer = 0
+
+ Dim CorreoDestino As String = ObjFactura.Cliente.Mail
+
+ Try
+
+ Dim Asunto As String = String.Empty
+ Dim Cuerpo As String = String.Empty
+
+ Dim TipoComprobante As String = ""
+
+ If TipoDocto = "Ing" Then TipoComprobante = "Factura"
+ If TipoDocto = "Egs" Then TipoComprobante = "Nota de Crédito"
+
+ If UsuarioActual.Empresa.PlantillaMailVenta.Trim.Length > 0 Then
+ Cuerpo = UsuarioActual.Empresa.PlantillaMailVenta
+ Cuerpo = Cuerpo.Replace("{""NombreEmpresa""}", UsuarioActual.Empresa.Empresa)
+ Cuerpo = Cuerpo.Replace("{""NombreCliente""}", ObjFactura.Cliente.NombreComercial)
+ Cuerpo = Cuerpo.Replace("{""TipoDocumento""}", TipoComprobante)
+ Cuerpo = Cuerpo.Replace("{""Fecha""}", ObjFactura.Fecha.ToString("dd/MM/yyyy"))
+ Cuerpo = Cuerpo.Replace("{""Total""}", ObjFactura.Total.ToString("N2"))
+ Cuerpo = Cuerpo.Replace("{""FechaVencimiento""}", ObjFactura.FechaVencimiento.ToString("dd/MM/yyyy"))
+ Cuerpo = Cuerpo.Replace("{""SerieFolio""}", SerieFolio)
+ Asunto = Asunto.Replace("{""AtencionA""}", ObjFactura.AtencionA)
+ Asunto = Asunto.Replace("{""Sucursal""}", ObjFactura.SubProyecto.SubProyecto)
+ Asunto = Asunto.Replace("{""DescripcionVenta""}", ObjFactura.DescripcionVenta)
+ Asunto = Asunto.Replace("{""FolioFactura""}", ObjFactura.SerieFolio)
+ End If
+
+ If UsuarioActual.Empresa.AsuntoPlantillaMailVenta.Trim.Length > 0 Then
+ Asunto = UsuarioActual.Empresa.AsuntoPlantillaMailVenta
+ Asunto = Asunto.Replace("{""NombreEmpresa""}", UsuarioActual.Empresa.Empresa)
+ Asunto = Asunto.Replace("{""NombreCliente""}", ObjFactura.Cliente.NombreComercial)
+ Asunto = Asunto.Replace("{""TipoDocumento""}", TipoComprobante)
+ Cuerpo = Cuerpo.Replace("{""Fecha""}", ObjFactura.Fecha.ToString("dd/MM/yyyy"))
+ Cuerpo = Cuerpo.Replace("{""Total""}", ObjFactura.Total.ToString("N2"))
+ Cuerpo = Cuerpo.Replace("{""FechaVencimiento""}", ObjFactura.FechaVencimiento.ToString("dd/MM/yyyy"))
+ Asunto = Asunto.Replace("{""SerieFolio""}", SerieFolio)
+ Asunto = Asunto.Replace("{""AtencionA""}", ObjFactura.AtencionA)
+ Asunto = Asunto.Replace("{""Sucursal""}", ObjFactura.SubProyecto.SubProyecto)
+ Asunto = Asunto.Replace("{""DescripcionVenta""}", ObjFactura.DescripcionVenta)
+ Asunto = Asunto.Replace("{""FolioFactura""}", ObjFactura.SerieFolio)
+ End If
+
+ If Not EnviarFactura Then
+ ResultadoMail = 0
+ End If
+
+ Dim LSRutasMail As New List(Of ClsSisMail.ArchivoMail)
+ LSRutasMail.Add(New ClsSisMail.ArchivoMail With {.Ruta = PDF})
+ LSRutasMail.Add(New ClsSisMail.ArchivoMail With {.Ruta = XML})
+
+ Dim DisplayName As String = ""
+
+ If ObjMail.SendMail(UsuarioActual.Empresa, CorreoDestino, Asunto, Cuerpo, "", LSRutasMail, Displayname:=DisplayName) Then
+ ResultadoMail = 1
+ Else
+ ResultadoMail = 3
+ End If
+
+ Catch ex As Exception
+ OnError("Ocurrió error al mandar el Mail", ex)
+ ResultadoMail = 3
+ Finally
+ Dim ObjVentas As New ClsVentas(UsuarioActual:=UsuarioActual)
+ ObjVentas.UpdateVentaMail(ResultadoMail, ObjFactura.CveVenta)
+ ObjVentas.Dispose()
+ End Try
+
+ End Sub
+
End Class
Public Class MRespuestaSAT