-- mejora en liga a ruta de empresas,

-- rutareportes
--rutalogo
This commit is contained in:
2023-05-15 11:41:58 -07:00
parent cfcd6ae261
commit 025712e8df
2 changed files with 15 additions and 460 deletions

View File

@@ -5036,466 +5036,7 @@ Public Class ClsPaginas
End Sub
#End Region
#Region "IMPRIMIR FACTURA"
'Public Sub PdfFacturaPyME(ByRef Vta As Modelos.Factura, DT As DataTable, Optional Guardar As Boolean = True)
' Dim retorno As Byte() = Nothing
' 'DATOS GENERALES
' Dim Ruta As String = UsuarioActual.Empresa.Ruta
' Dim PathXML As String = $"{Ruta}XML\{Vta.TipoDocto}\{Vta.SerieFolio}.xml"
' Dim NombreArchivo As String = ""
' Dim NombreArchivoDescarga As String = ""
' Dim TipoDocumento As String = ""
' Dim TipoDocumentoRef As String = ""
' Dim AplicaPagare As String = "1"
' Dim RFCReceptor As String = ""
' If String.IsNullOrEmpty(Vta.RFCReceptor) Then
' RFCReceptor = Vta.Cliente.RFC
' If Vta.FacturarSucursal Then
' If Vta.ClienteSucursal IsNot Nothing Then
' RFCReceptor = Vta.ClienteSucursal.RFC
' End If
' End If
' Else
' RFCReceptor = Vta.RFCReceptor
' End If
' Dim RutaCBB As String = String.Format("{0}CBB\{1}.jpg", Ruta, Vta.SerieFolio)
' Dim ImagenCBB As New System.IO.FileInfo(RutaCBB)
' Dim ImgCBB As String '= String.Format("{0}://{1}:{2}/Empresas/{3}/CBB/{4}.jpg", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa, Vta.SerieFolio)
' Dim ImagenPath = String.Format("{0}Formatos\Suc{1}\logo.png", UsuarioActual.Empresa.Ruta, Vta.CveSucursal)
' Dim Logo As New System.IO.FileInfo(ImagenPath)
' Dim ImgLogo = New Uri(String.Format("{0}Empresas/{1}/Formatos/Suc{2}.png", UrlSitio, UsuarioActual.CveEmpresa, Vta.CveSucursal)).AbsoluteUri
' Dim SBDomicilioSucursal As New StringBuilder()
' Dim CiudadSucursal As String = String.Format("{0},{1}", Vta.SubProyecto.Municipio, Vta.SubProyecto.Estado)
' Dim DomicilioSucursal As String = ""
' SBDomicilioSucursal.AppendFormat("{0}", Vta.SubProyecto.Calle)
' If Vta.SubProyecto.NoExt.ToEntero > 0 Then SBDomicilioSucursal.AppendFormat(" No.Ext: {0}", Vta.SubProyecto.NoExt)
' If Vta.SubProyecto.NoInt.ToEntero > 0 Then SBDomicilioSucursal.AppendFormat(", No.Int: {0}", Vta.SubProyecto.NoInt)
' If Vta.SubProyecto.Colonia.Length > 0 Then SBDomicilioSucursal.AppendFormat(", Col: {0}", Vta.SubProyecto.Colonia)
' If Vta.SubProyecto.CP.ToEntero > 0 Then SBDomicilioSucursal.AppendFormat(", CP: {0}", Vta.SubProyecto.CP)
' If CiudadSucursal.Length > 0 Then SBDomicilioSucursal.AppendFormat(", {0}", CiudadSucursal)
' If Vta.SubProyecto.Pais.Length > 0 Then SBDomicilioSucursal.AppendFormat(", {0}", Vta.SubProyecto.Pais)
' DomicilioSucursal = SBDomicilioSucursal.ToString
' Dim Fecha As String = Vta.Fecha.ToShortDateString
' Dim SBDireccion As New StringBuilder()
' Dim SBLugar As New StringBuilder()
' Dim ClienteDireccion As String
' Dim ClienteLugar As String
' 'SI ESTA TIMBRADA - CON XML
' If File.Exists(PathXML) AndAlso Vta.Serie <> "VistaPrevia" Then 'Cuando es vista previe y coincide la serie y folio se ponen los datos fiscales
' Dim XmlDoc As New System.Xml.XmlDocument
' XmlDoc.Load(PathXML)
' Dim TC As Decimal = 1
' Try
' TC = XmlDoc.DocumentElement.Attributes("TipoCambio").InnerText.ToDecimal
' Catch ex As Exception
' TC = 1
' End Try
' Vta.FechaEmision = XmlDoc.DocumentElement.Attributes("fecha").InnerText.ToDate
' Vta.NoSerieCertificadoContribuyente = XmlDoc.DocumentElement.Attributes("noCertificado").InnerText
' Dim validaElemento = XmlDoc.DocumentElement("cfdi:Complemento")
' If Not IsNothing(validaElemento) Then
' For i As Integer = 0 To XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes.Count - 1
' If XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes(i).Name = "tfd:TimbreFiscalDigital" Then
' Vta.FolioFiscal = XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes(i).Attributes("UUID").InnerText
' Vta.NoSerieCertificado = XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes(i).Attributes("noCertificadoSAT").InnerText
' Vta.FechaCertificacion = XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes(i).Attributes("FechaTimbrado").InnerText.ToDate
' Vta.SelloCFDi = XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes(i).Attributes("selloCFD").InnerText
' Vta.SelloSAT = XmlDoc.DocumentElement("cfdi:Complemento").ChildNodes(i).Attributes("selloSAT").InnerText
' End If
' Next
' Else
' Vta.FolioFiscal = "Sin Timbrar"
' Vta.NoSerieCertificado = "Sin Timbrar"
' Vta.SelloCFDi = "Sin Timbrar"
' Vta.SelloSAT = "Sin Timbrar"
' End If
' 'SIN TIMBRAR - SIN XML
' Else
' Vta.FolioFiscal = "Sin Timbrar"
' Vta.NoSerieCertificado = "Sin Timbrar"
' Vta.SelloCFDi = "Sin Timbrar"
' Vta.SelloSAT = "Sin Timbrar"
' End If
' 'DIRECCION CLIENTE
' If Vta.CveClienteSucursal.ToEntero > 0 Then
' 'Si cliente tiene Noint, NoExt, CP
' SBDireccion.AppendFormat("{0}", Vta.ClienteSucursal.Direccion)
' If Vta.ClienteSucursal.NoExt.Length > 0 Then SBDireccion.AppendFormat(", No.Ext: {0}", Vta.ClienteSucursal.NoExt)
' If Vta.ClienteSucursal.NoInt.Length > 0 Then SBDireccion.AppendFormat(", No.Int: {0}", Vta.ClienteSucursal.NoInt)
' If UsuarioActual.CveEmpresa <> 66 Then SBDireccion.AppendFormat(", Col: {0}", Vta.ClienteSucursal.Colonia)
' If Not (UsuarioActual.CveEmpresa.Contiene(66, 81, 109) AndAlso Vta.TipoDocto = "Cot") Then
' If Vta.ClienteSucursal.CP.Length > 0 Then SBDireccion.AppendFormat(", CP: {0} ", Vta.ClienteSucursal.CP.Trim)
' End If
' 'Si cliente tiene Local, CD, Edo, Pais
' If Vta.ClienteSucursal.Localidad IsNot Nothing AndAlso Vta.ClienteSucursal.Localidad.Length > 0 Then SBLugar.AppendFormat("Loc: {0}, ", Vta.ClienteSucursal.Localidad)
' If Vta.ClienteSucursal.Municipio IsNot Nothing AndAlso Vta.ClienteSucursal.Municipio.Length > 0 Then SBLugar.AppendFormat("Cd: {0}, ", Vta.ClienteSucursal.Municipio)
' If Vta.ClienteSucursal.Estado IsNot Nothing AndAlso Vta.ClienteSucursal.Estado.Length > 0 Then SBLugar.AppendFormat(" Edo: {0}, ", Vta.ClienteSucursal.Estado)
' If Vta.ClienteSucursal.Pais IsNot Nothing AndAlso Vta.ClienteSucursal.Pais.Length > 0 Then SBLugar.AppendFormat(" País: {0} ", Vta.ClienteSucursal.Pais)
' Else
' SBDireccion.AppendFormat("{0}", Vta.Cliente.Direccion)
' If Vta.Cliente.NoExt.Length > 0 Then SBDireccion.AppendFormat(", No.Ext: {0}", Vta.Cliente.NoExt)
' If Vta.Cliente.NoInt.Length > 0 Then SBDireccion.AppendFormat(", No.Int: {0}", Vta.Cliente.NoInt)
' If UsuarioActual.CveEmpresa <> 66 Then SBDireccion.AppendFormat(", Col: {0}", Vta.Cliente.Colonia)
' If Not (UsuarioActual.CveEmpresa.Contiene(66, 81, 109) AndAlso Vta.TipoDocto = "Cot") Then
' If Vta.Cliente.CP.Length > 0 Then SBDireccion.AppendFormat(", CP: {0} ", Vta.Cliente.CP.Trim)
' End If
' 'Si cliente tiene Local, CD, Edo, Pais
' If Vta.Cliente.Localidad IsNot Nothing AndAlso Vta.Cliente.Localidad.Length > 0 Then SBLugar.AppendFormat("Loc: {0}, ", Vta.Cliente.Localidad)
' If Vta.Cliente.Ciudad IsNot Nothing AndAlso Vta.Cliente.Ciudad.Length > 0 Then SBLugar.AppendFormat("Cd: {0}, ", Vta.Cliente.Ciudad)
' If Vta.Cliente.Estado IsNot Nothing AndAlso Vta.Cliente.Estado.Length > 0 Then SBLugar.AppendFormat(" Edo: {0}, ", Vta.Cliente.Estado)
' If Vta.Cliente.Pais IsNot Nothing AndAlso Vta.Cliente.Pais.Length > 0 Then SBLugar.AppendFormat(" País: {0} ", Vta.Cliente.Pais)
' End If
' ClienteDireccion = SBDireccion.ToString
' ClienteLugar = SBLugar.ToString
' SBDireccion.Clear()
' SBLugar.Clear()
' 'LOGO
' Dim LogoRuta As String = ""
' 'POR SUCURSAL
' LogoRuta = String.Format("{0}Formatos\Suc{1}.png", UsuarioActual.Empresa.Ruta, Vta.CveSucursal)
' If File.Exists(LogoRuta) Then
' LogoRuta = String.Format("file://{0}Formatos\Suc{1}.png", UsuarioActual.Empresa.Ruta, Vta.CveSucursal)
' 'POR EMPRESA
' Else
' LogoRuta = String.Format("{0}Formatos\Logo.png", UsuarioActual.Empresa.Ruta)
' If File.Exists(LogoRuta) Then
' 'LogoRuta = String.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa)
' LogoRuta = String.Format("{0}", LogoRuta)
' End If
' End If
' 'LogoRuta = String.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa)
' LogoRuta = String.Format("{0}", LogoRuta)
' 'Si no tiene CBB, SE GENERA
' If Not ImagenCBB.Exists Then
' Dim CBB As New ClbNegBICFDv3_2.ClsNegCBBGenerar()
' CBB.GenerarCBB(UsuarioActual.Empresa.RFC, RFCReceptor, Vta.Total.ToString.ToDecimal, Vta.FolioFiscal, RutaCBB)
' End If
' ImgCBB = String.Format("{0}://{1}:{2}/Empresas/{3}/CBB/{4}.jpg", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa, Vta.SerieFolio)
' Dim CadenaOriginals As String = "||1.0|" + Vta.FolioFiscal + "|" + Vta.FechaCertificacion.ToString("yyyy-MM-dd") + "T" + Vta.FechaCertificacion.ToString("HH:mm:ss") + "|" + Vta.SelloCFDi + "|" + Vta.NoSerieCertificado + "||"
' If Not ImagenCBB.Exists Then ImgCBB = ""
' Dim RutaFormato As String = ""
' 'AQUI EMPIEZA LOS PARAMETROS
' Try
' Dim params = New List(Of CrystalParametro)
' 'CLIENTE
' params.Add(New CrystalParametro("ClienteCodigo", Vta.Cliente.Codigo))
' params.Add(New CrystalParametro("ClienteNombre", If(Vta.ClienteSucursal.ImprimeNombreSucursal = "True", If(Vta.CveClienteSucursal > 0, Vta.ClienteSucursal.Sucursal, Vta.Cliente.Nombre), If(Vta.AtencionA <> "" AndAlso Vta.TipoDocto.Contiene("Ing", "Rem") AndAlso RFCReceptor = "XAXX010101000", $"{Vta.Cliente.Nombre}({Vta.AtencionA})", Vta.Cliente.Nombre))))
' params.Add(New CrystalParametro("ClienteDireccion", ClienteDireccion))
' params.Add(New CrystalParametro("ClienteLugar", ClienteLugar))
' 'TOTALES
' params.Add(New CrystalParametro("SubTotal", Vta.SubTotal.ToString.FormatoNumero(2)))
' params.Add(New CrystalParametro("Descuento", Vta.Descuento.ToString.FormatoNumero(2)))
' params.Add(New CrystalParametro("Amortizacion", Vta.Amortizacion.ToString.FormatoNumero(2)))
' params.Add(New CrystalParametro("SubTotal2", (Vta.SubTotal - Vta.Descuento - Vta.Amortizacion).ToString.FormatoNumero(2)))
' params.Add(New CrystalParametro("IVA", Vta.IVA.ToString.FormatoNumero(2)))
' params.Add(New CrystalParametro("RetIVA", Vta.RetIVA.ToString.FormatoNumero(2)))
' params.Add(New CrystalParametro("RetISR", Vta.RetISR.ToString.FormatoNumero(2)))
' params.Add(New CrystalParametro("Total", Vta.Total.ToString.FormatoNumero(2)))
' params.Add(New CrystalParametro("ImporteLetra", Vta.Total.ToString.ToDouble.Texto2Letras(Vta.CveMoneda)))
' 'DATOS GENERALES
' params.Add(New CrystalParametro("Observaciones", Vta.Observaciones))
' params.Add(New CrystalParametro("CveVendedor", Vta.CveVendedor.ToString))
' 'params.Add(New CrystalParametro("Status", Vta.EstatusFactura))
' params.Add(New CrystalParametro("FechaSolicitud", Vta.Fecha.ToString("dd/MMMM/yyyy"))) ' se puede omitir
' params.Add(New CrystalParametro("Serie", Vta.Serie))
' params.Add(New CrystalParametro("Folio", Vta.Folio.ToString))
' params.Add(New CrystalParametro("DomicilioSucursal", DomicilioSucursal))
' params.Add(New CrystalParametro("Vencimiento", Vta.FechaVencimiento.ToString("dd/MM/yyyy")))
' params.Add(New CrystalParametro("FolioFiscal", Vta.FolioFiscal))
' params.Add(New CrystalParametro("FechaCertificacion", String.Format("{0}T{1}", Vta.FechaCertificacion.ToString("yyyy-MM-dd"), Vta.FechaCertificacion.ToString("HH:mm:ss"))))
' params.Add(New CrystalParametro("SelloCFDI", Vta.SelloCFDi))
' params.Add(New CrystalParametro("CadenaSAT", CadenaOriginals))
' params.Add(New CrystalParametro("SelloSAT", Vta.SelloSAT))
' params.Add(New CrystalParametro("QR", ImgCBB))
' params.Add(New CrystalParametro("ClienteRFC", RFCReceptor))
' params.Add(New CrystalParametro("FormaPago", Vta.FormaPagoText))
' params.Add(New CrystalParametro("Moneda", Vta.Moneda))
' params.Add(New CrystalParametro("TipoCambio", Vta.TipoCambio.ToString))
' params.Add(New CrystalParametro("CondicionPago", Vta.CondicionesPagoText))
' params.Add(New CrystalParametro("CadenaOriginal", CadenaOriginals))
' params.Add(New CrystalParametro("SerieCertificadoSAT", Vta.NoSerieCertificado))
' params.Add(New CrystalParametro("CertificadoContribuyente", Vta.NoSerieCertificadoContribuyente))
' params.Add(New CrystalParametro("NumCta", Vta.NumeroCuenta))
' params.Add(New CrystalParametro("LogoPath", LogoRuta))
' 'VENDEDOR
' Dim RowVendedor As DataRow = GlobalDTVendedores(-1).FiltroPrimero(String.Format("CveVendedor = {0}", Vta.CveVendedor.ToString))
' If Not IsNothing(RowVendedor) Then
' params.Add(New CrystalParametro("VendedorNombre", RowVendedor("Vendedor").ToString))
' params.Add(New CrystalParametro("VendedorMail", RowVendedor("Correo").ToString))
' params.Add(New CrystalParametro("VendedorTelefono", RowVendedor("Telefono").ToString))
' params.Add(New CrystalParametro("VendedorCelular", RowVendedor("Celular").ToString))
' End If
' params.Add(New CrystalParametro("CiudadSucursal", CiudadSucursal))
' params.Add(New CrystalParametro("OC", Vta.Det_OrdenCompra.ToString))
' If UsuarioActual.Empresa.Funcionalidad(508) = "1" Then
' params.Add(New CrystalParametro("IEPS", Vta.IEPS.ToString.FormatoNumero(2)))
' End If
' If Vta.CveClienteSucursal > 0 Then
' params.Add(New CrystalParametro("ClienteContactoMail", Vta.ClienteSucursal.CorreoSucursal))
' params.Add(New CrystalParametro("ClienteTelefono", Vta.ClienteSucursal.TelefonoSucursal))
' Else
' params.Add(New CrystalParametro("ClienteContactoMail", Vta.Cliente.MailCotizacion))
' params.Add(New CrystalParametro("ClienteTelefono", If(Vta.TipoDocto.Contiene("Ing", "Rem") AndAlso Vta.Cliente.Telefono.Length > 6, Vta.Cliente.Telefono, Vta.TelefonoGenerico)))
' End If
' If UsuarioActual.CveEmpresa.Contiene(17) Then
' params.Add(New CrystalParametro("MetodoPago", Vta.ClaveMetodoPagoSAT.ToString))
' Else
' params.Add(New CrystalParametro("MetodoPago", Vta.MetodoPago.ToString))
' End If
' Select Case Vta.TipoDocto
' Case "Ing"
' NombreArchivo = "Factura"
' NombreArchivoDescarga = "Factura"
' TipoDocumento = "INGRESO"
' 'GENERAL
' params.Add(New CrystalParametro("TipoDocumento", NombreArchivoDescarga))
' params.Add(New CrystalParametro("Tipo", TipoDocumento))
' params.Add(New CrystalParametro("Ref", TipoDocumentoRef))
' params.Add(New CrystalParametro("AplicaPagare", AplicaPagare))
' 'VSH
' If UsuarioActual.CveEmpresa.Contiene(4, 7, 11, 12, 122, 145) Then
' 'DATOS CLIENTES
' Dim ClienteRow = GlobalDTCliente(UsuarioActual.CveEmpresa).FiltroPrimero(String.Format("CveCliente = {0}", Vta.CveCliente.ToString))
' Dim DatosCliente = ""
' If ClienteRow IsNot Nothing Then
' DatosCliente = String.Format("{0} | {1} | {2}", Vta.SubProyecto.Municipio, ClienteRow("CuentaContable"), ClienteRow("Codigo"))
' End If
' params.Add(New CrystalParametro("DatosClientes", DatosCliente))
' params.Add(New CrystalParametro("Sucursal", Vta.SubProyecto.SubProyecto))
' End If
' 'COMPU, DN DIFUSA
' If UsuarioActual.CveEmpresa.Contiene(72, 80, 119) Then
' params.Add(New CrystalParametro("EstatusFactura", If(Vta.TipoEstatus = 5, Vta.EstatusFactura, "")))
' params.Add(New CrystalParametro("EstatusEntrega", If(Vta.Inv_CveEstatusEntrega = 1, Vta.Inv_EstatusEntrega, "")))
' params.Add(New CrystalParametro("PedidoContrato", Vta.PedidoContrato))
' params.Add(New CrystalParametro("DescripcionContrato", Vta.NumeroDescripcionContrato))
' params.Add(New CrystalParametro("MonedaAbreviatura", If(Vta.MonedaAbreviatura.ToString IsNot Nothing, Vta.MonedaAbreviatura.ToString, "")))
' params.Add(New CrystalParametro("UsuarioImprimio", UsuarioActual.Nombre))
' params.Add(New CrystalParametro("FechaImpresion", Now.ToDateTime.ToString))
' params.Add(New CrystalParametro("Sucursal", Vta.SubProyecto.SubProyecto))
' 'INE COMPLEMENTOS
' If UsuarioActual.CveEmpresa.Contiene(72) Then
' Dim INETipoProceso As String = ""
' Dim INETipoComite As String = ""
' Dim INEIdContabilidad As Integer = 0
' If Vta.ComplementoINE IsNot Nothing Then
' INETipoProceso = Vta.ComplementoINE.INETipoProceso
' INETipoComite = Vta.ComplementoINE.INETipoComite
' INEIdContabilidad = Vta.ComplementoINE.INEIdContabilidad
' End If
' params.Add(New CrystalParametro("INETipoProceso", INETipoProceso))
' params.Add(New CrystalParametro("INETipoComite", INETipoComite))
' params.Add(New CrystalParametro("INEIdContabilidad", INEIdContabilidad))
' params.Add(New CrystalParametro("Referencia", Vta.Cliente.ReferenciaFiscal))
' params.Add(New CrystalParametro("ClienteContacto", Vta.AtencionA))
' End If
' 'DIRECCION ENVIO
' If Vta.EnviarA.CveDireccionEnvio > 0 Then
' Dim StrEnvioDi As New StringBuilder
' StrEnvioDi.AppendFormat("{0}", Vta.EnviarA.EnvioDireccion)
' If Vta.EnviarA.EnvioNoExt IsNot Nothing AndAlso Vta.EnviarA.EnvioNoExt.Length > 0 Then StrEnvioDi.AppendFormat(", No.Ext: {0}", Vta.EnviarA.EnvioNoExt)
' If Vta.EnviarA.EnvioNoInt IsNot Nothing AndAlso Vta.EnviarA.EnvioNoInt.Length > 0 Then StrEnvioDi.AppendFormat(", No.Int: {0}", Vta.EnviarA.EnvioNoInt)
' params.Add(New CrystalParametro("EnvioDireccion", StrEnvioDi.ToString))
' params.Add(New CrystalParametro("EnvioNoExt", Vta.EnviarA.EnvioNoExt))
' params.Add(New CrystalParametro("EnvioNoInt", Vta.EnviarA.EnvioNoInt))
' params.Add(New CrystalParametro("EnvioColonia", Vta.EnviarA.EnvioColonia))
' params.Add(New CrystalParametro("EnvioCiudad", Vta.EnviarA.EnvioCiudad))
' params.Add(New CrystalParametro("EnvioEstado", Vta.EnviarA.EnvioEstado))
' params.Add(New CrystalParametro("EnvioContacto", Vta.EnviarA.EnvioContacto))
' params.Add(New CrystalParametro("EnvioDepartamento", Vta.EnviarA.EnvioDepartamento))
' params.Add(New CrystalParametro("EnvioCP", Vta.EnviarA.EnvioCP))
' Else
' If Vta.CveClienteSucursal.ToEntero > 0 Then
' Dim StrEnvioDi As New StringBuilder
' StrEnvioDi.AppendFormat("{0}", Vta.ClienteSucursal.Direccion)
' If Vta.ClienteSucursal.NoExt.Length > 0 Then StrEnvioDi.AppendFormat(", No.Ext: {0}", Vta.ClienteSucursal.NoExt)
' If Vta.ClienteSucursal.NoInt.Length > 0 Then StrEnvioDi.AppendFormat(", No.Int: {0}", Vta.ClienteSucursal.NoInt)
' params.Add(New CrystalParametro("EnvioDireccion", StrEnvioDi.ToString))
' params.Add(New CrystalParametro("EnvioColonia", If(Vta.ClienteSucursal.Colonia.Length > 0, Vta.ClienteSucursal.Colonia, "")))
' params.Add(New CrystalParametro("EnvioCiudad", If(Vta.ClienteSucursal.Municipio.Length > 0, Vta.ClienteSucursal.Municipio, "")))
' params.Add(New CrystalParametro("EnvioEstado", If(Vta.ClienteSucursal.Estado.Length > 0, Vta.ClienteSucursal.Estado, "")))
' params.Add(New CrystalParametro("EnvioCP", If(Vta.ClienteSucursal.CP.Length > 0, Vta.ClienteSucursal.CP, "")))
' Else
' Dim StrEnvioDi As New StringBuilder
' StrEnvioDi.AppendFormat("{0}", If(Vta.Cliente.Direccion.Length > 0, Vta.Cliente.Direccion, ""))
' If Vta.Cliente.NoExt.Length > 0 Then StrEnvioDi.AppendFormat(", No.Ext: {0}", Vta.Cliente.NoExt)
' If Vta.Cliente.NoInt.Length > 0 Then StrEnvioDi.AppendFormat(", No.Int: {0}", Vta.Cliente.NoInt)
' params.Add(New CrystalParametro("EnvioDireccion", StrEnvioDi.ToString))
' params.Add(New CrystalParametro("EnvioColonia", If(Vta.Cliente.Colonia.Length > 0, Vta.Cliente.Colonia, "")))
' params.Add(New CrystalParametro("EnvioCiudad", If(Vta.Cliente.Localidad IsNot Nothing And Vta.Cliente.Localidad.Length > 0, Vta.Cliente.Localidad, "")))
' params.Add(New CrystalParametro("EnvioEstado", If(Vta.Cliente.Estado.Length > 0, Vta.Cliente.Estado, "")))
' params.Add(New CrystalParametro("EnvioCP", If(Vta.Cliente.CP.Length > 0, Vta.Cliente.CP, "")))
' End If
' End If
' 'CLIENTE SUCURSAL
' If Vta.CveClienteSucursal.ToEntero > 0 Then
' params.Add(New CrystalParametro("ClienteCalle", If(Vta.ClienteSucursal.Direccion.Length > 0, Vta.ClienteSucursal.Direccion, "")))
' params.Add(New CrystalParametro("ClienteColonia", If(Vta.ClienteSucursal.Colonia.Length > 0, Vta.ClienteSucursal.Colonia, "")))
' params.Add(New CrystalParametro("ClienteCiudad", If(Vta.ClienteSucursal.Localidad IsNot Nothing And Vta.ClienteSucursal.Localidad.Length > 0, Vta.ClienteSucursal.Localidad, "")))
' params.Add(New CrystalParametro("ClienteMunicipio", If(Vta.ClienteSucursal.Municipio.Length > 0, Vta.ClienteSucursal.Municipio, "")))
' params.Add(New CrystalParametro("ClienteEstado", If(Vta.ClienteSucursal.Estado.Length > 0, Vta.ClienteSucursal.Estado, "")))
' params.Add(New CrystalParametro("ClienteCP", If(Vta.ClienteSucursal.CP.Length > 0, Vta.ClienteSucursal.CP, "")))
' params.Add(New CrystalParametro("ClienteNoInt", If(Vta.ClienteSucursal.NoInt.Length > 0, Vta.ClienteSucursal.NoInt, "")))
' params.Add(New CrystalParametro("ClienteNoExt", If(Vta.ClienteSucursal.NoExt.Length > 0, Vta.ClienteSucursal.NoExt, "")))
' params.Add(New CrystalParametro("ClientePais", If(Vta.ClienteSucursal.Pais.Length > 0, Vta.ClienteSucursal.Pais, "")))
' Else
' params.Add(New CrystalParametro("ClienteCalle", If(Vta.Cliente.Direccion.Length > 0, Vta.Cliente.Direccion, "")))
' params.Add(New CrystalParametro("ClienteColonia", If(Vta.Cliente.Colonia.Length > 0, Vta.Cliente.Colonia, "")))
' params.Add(New CrystalParametro("ClienteCiudad", If(Vta.Cliente.Localidad IsNot Nothing And Vta.Cliente.Localidad.Length > 0, Vta.Cliente.Localidad, "")))
' params.Add(New CrystalParametro("ClienteMunicipio", If(Vta.Cliente.Ciudad.Length > 0, Vta.Cliente.Ciudad, "")))
' params.Add(New CrystalParametro("ClienteEstado", If(Vta.Cliente.Estado.Length > 0, Vta.Cliente.Estado, "")))
' params.Add(New CrystalParametro("ClienteCP", If(Vta.Cliente.CP.Length > 0, Vta.Cliente.CP, "")))
' params.Add(New CrystalParametro("ClienteNoInt", If(Vta.Cliente.NoInt.Length > 0, Vta.Cliente.NoInt, "")))
' params.Add(New CrystalParametro("ClienteNoExt", If(Vta.Cliente.NoExt.Length > 0, Vta.Cliente.NoExt, "")))
' params.Add(New CrystalParametro("ClientePais", If(Vta.Cliente.Pais.Length > 0, Vta.Cliente.Pais, "")))
' End If
' End If
' RutaFormato = String.Format("{0}Formatos\{1}.mrt", UsuarioActual.Empresa.Ruta, NombreArchivo)
' Case "Egs"
' If UsuarioActual.CveEmpresa.Contiene(72, 80) Then
' NombreArchivo = "NotaCredito"
' Else
' NombreArchivo = "Factura"
' End If
' NombreArchivoDescarga = "Nota de Crédito"
' TipoDocumento = "EGRESO"
' TipoDocumentoRef = String.Format(": Ref.:{0}", Vta.RefDocto)
' AplicaPagare = "0"
' 'GENERAL
' params.Add(New CrystalParametro("TipoDocumento", NombreArchivoDescarga))
' params.Add(New CrystalParametro("Tipo", TipoDocumento))
' params.Add(New CrystalParametro("Ref", TipoDocumentoRef))
' params.Add(New CrystalParametro("AplicaPagare", AplicaPagare))
' params.Add(New CrystalParametro("Fecha", String.Format("{0}T{1}", Vta.Fecha.ToString("yyyy-MM-dd"), Vta.Fecha.ToString("HH:mm:ss"))))
' 'ALAN YEPIZ
' If UsuarioActual.CveEmpresa.Contiene(123) Then
' params.Add(New CrystalParametro("DiaExpedicion", String.Format("{0}", Vta.Fecha.ToDate.Day)))
' params.Add(New CrystalParametro("MesExpedicion", String.Format("{0}", Vta.Fecha.ToDate.Month)))
' params.Add(New CrystalParametro("AñoExpedicion", String.Format("{0}", Vta.Fecha.ToDate.Year)))
' End If
' 'COMPU, DN DIFUSA
' If UsuarioActual.CveEmpresa.Contiene(72, 80, 119) Then
' params.Add(New CrystalParametro("EstatusFactura", If(Vta.TipoEstatus = 5, Vta.EstatusFactura, "")))
' params.Add(New CrystalParametro("EstatusEntrega", If(Vta.Inv_CveEstatusEntrega = 1, Vta.Inv_EstatusEntrega, "")))
' params.Add(New CrystalParametro("PedidoContrato", Vta.PedidoContrato))
' params.Add(New CrystalParametro("MonedaAbreviatura", If(Vta.MonedaAbreviatura.ToString IsNot Nothing, Vta.MonedaAbreviatura.ToString, "")))
' params.Add(New CrystalParametro("UsuarioImprimio", UsuarioActual.Nombre))
' params.Add(New CrystalParametro("FechaImpresion", Now.ToDateTime.ToString))
' params.Add(New CrystalParametro("Sucursal", Vta.SubProyecto.SubProyecto))
' 'CLIENTE SUCURSAL
' If Vta.CveClienteSucursal.ToEntero > 0 Then
' params.Add(New CrystalParametro("ClienteCalle", If(Vta.ClienteSucursal.Direccion.Length > 0, Vta.ClienteSucursal.Direccion, "")))
' params.Add(New CrystalParametro("ClienteColonia", If(Vta.ClienteSucursal.Colonia.Length > 0, Vta.ClienteSucursal.Colonia, "")))
' params.Add(New CrystalParametro("ClienteCiudad", If(Vta.ClienteSucursal.Localidad IsNot Nothing And Vta.ClienteSucursal.Localidad.Length > 0, Vta.ClienteSucursal.Localidad, "")))
' params.Add(New CrystalParametro("ClienteMunicipio", If(Vta.ClienteSucursal.Municipio.Length > 0, Vta.ClienteSucursal.Municipio, "")))
' params.Add(New CrystalParametro("ClienteEstado", If(Vta.ClienteSucursal.Estado.Length > 0, Vta.ClienteSucursal.Estado, "")))
' params.Add(New CrystalParametro("ClienteCP", If(Vta.ClienteSucursal.CP.Length > 0, Vta.ClienteSucursal.CP, "")))
' params.Add(New CrystalParametro("ClienteNoInt", If(Vta.ClienteSucursal.NoInt.Length > 0, Vta.ClienteSucursal.NoInt, "")))
' params.Add(New CrystalParametro("ClienteNoExt", If(Vta.ClienteSucursal.NoExt.Length > 0, Vta.ClienteSucursal.NoExt, "")))
' params.Add(New CrystalParametro("ClientePais", If(Vta.ClienteSucursal.Pais.Length > 0, Vta.ClienteSucursal.Pais, "")))
' Else
' params.Add(New CrystalParametro("ClienteCalle", If(Vta.Cliente.Direccion.Length > 0, Vta.Cliente.Direccion, "")))
' params.Add(New CrystalParametro("ClienteColonia", If(Vta.Cliente.Colonia.Length > 0, Vta.Cliente.Colonia, "")))
' params.Add(New CrystalParametro("ClienteCiudad", If(Vta.Cliente.Localidad IsNot Nothing And Vta.Cliente.Localidad.Length > 0, Vta.Cliente.Localidad, "")))
' params.Add(New CrystalParametro("ClienteMunicipio", If(Vta.Cliente.Ciudad.Length > 0, Vta.Cliente.Ciudad, "")))
' params.Add(New CrystalParametro("ClienteEstado", If(Vta.Cliente.Estado.Length > 0, Vta.Cliente.Estado, "")))
' params.Add(New CrystalParametro("ClienteCP", If(Vta.Cliente.CP.Length > 0, Vta.Cliente.CP, "")))
' params.Add(New CrystalParametro("ClienteNoInt", If(Vta.Cliente.NoInt.Length > 0, Vta.Cliente.NoInt, "")))
' params.Add(New CrystalParametro("ClienteNoExt", If(Vta.Cliente.NoExt.Length > 0, Vta.Cliente.NoExt, "")))
' params.Add(New CrystalParametro("ClientePais", If(Vta.Cliente.Pais.Length > 0, Vta.Cliente.Pais, "")))
' End If
' End If
' RutaFormato = String.Format("{0}Formatos\{1}.mrt", UsuarioActual.Empresa.Ruta, "Factura")
' Case Else
' NombreArchivo = ""
' TipoDocumento = ""
' End Select
' If NombreArchivo = "" Then
' GuardaLog("No se especifico el tipo de Impresion de venta (Venta, Remision, Cotización, Nota de Crédito).")
' Exit Sub
' End If
' 'TERMINA REGION PARAMETROS
' Dim lrds As New List(Of ReportDataSource)
' 'Si es ECLIPSE CREAR COLUMAS PARA FIRMAS EN DtDetalle.
' If UsuarioActual.CveEmpresa.Contiene(1, 15, 17, 71, 76, 125) Then
' Dim DtDetalleFirmas As New DataTable
' DtDetalleFirmas.TableName = "DetalleFirma"
' DtDetalleFirmas = Vta.DtDetalle.Copy()
' 'SI NO TIENE LAS COLUMNAS DE FIRMAS LAS CREA.
' If Not DtDetalleFirmas.Columns.Contains("Titulo") Then
' DtDetalleFirmas.Columns.Add("Titulo", GetType(String))
' DtDetalleFirmas.Columns.Add("Nombre", GetType(String))
' DtDetalleFirmas.Columns.Add("Puesto", GetType(String))
' DtDetalleFirmas.Columns.Add("Lado", GetType(Integer))
' End If
' 'Se llenan los Rows de las columnas con los datos del DtFirmas
' For i As Integer = 0 To Vta.DtFirmas.Rows.Count - 1
' 'Si DtDetalle es menor al DtFirmas, crea un nuevo Row en DtDetalle y le asigna valor, Si no solo asigna valor
' If DtDetalleFirmas.Rows.Count < i + 1 Then
' Dim Dr = DtDetalleFirmas.NewRow
' Dr("Titulo") = Vta.DtFirmas(i)("Titulo").ToString
' Dr("Nombre") = Vta.DtFirmas(i)("Nombre").ToString
' Dr("Puesto") = Vta.DtFirmas(i)("Puesto").ToString
' Dr("Lado") = Vta.DtFirmas(i)("Lado").ToString.ToEntero
' DtDetalleFirmas.Rows.Add(Dr)
' Else
' DtDetalleFirmas(i)("Titulo") = Vta.DtFirmas(i)("Titulo").ToString
' DtDetalleFirmas(i)("Nombre") = Vta.DtFirmas(i)("Nombre").ToString
' DtDetalleFirmas(i)("Puesto") = Vta.DtFirmas(i)("Puesto").ToString
' DtDetalleFirmas(i)("Lado") = Vta.DtFirmas(i)("Lado").ToString.ToEntero
' End If
' Next i
' Dim rds As New ReportDataSource With {.Name = "DsOC", .Value = DtDetalleFirmas}
' lrds.Add(rds)
' Else
' Dim rds As New ReportDataSource With {.Name = "DsOC", .Value = Vta.DtDetalle}
' lrds.Add(rds)
' End If
' Dim rds1 As New ReportDataSource With {.Name = "DataSet1", .Value = If(Vta.DtDeduccion IsNot Nothing, Vta.DtDeduccion, New DataTable)} ' sino esta creado el objeto, lo creamos, para que no truene el reporte
' lrds.Add(rds1)
' 'DETALLE FIRMAS
' Dim rds2 As New ReportDataSource With {.Name = "DataSet2", .Value = If(Vta.DtFirmas IsNot Nothing, Vta.DtFirmas, New DataTable)} ' sino esta creado el objeto, lo creamos, para que no truene el reporte
' lrds.Add(rds2)
' Dim Archivo As New System.IO.FileInfo(RutaFormato)
' Dim DataSet As New DataSet
' Vta.DtDetalle.TableName = "Datos"
' Vta.DtDeduccion.TableName = "Deduccion"
' DataSet.Tables.Add(Vta.DtDetalle.Copy)
' DataSet.Tables.Add(Vta.DtDeduccion.Copy)
' If Archivo.Exists Then
' ImprimirbytesPDF(ImprimirPDFPyME(RutaFormato, DataSet, params, NombreArchivo, "PDF", MR:=Nothing), "Factura")
' If Guardar Then
' Dim ArchivoPDF As New System.IO.FileInfo(String.Format("{0}PDF\{1}\{2}.pdf", UsuarioActual.Empresa.Ruta, Vta.TipoDocto, Vta.SerieFolio))
' If Not ArchivoPDF.Exists Then
' Try
' DirectoryExistsCreate(String.Format("{0}PDF", UsuarioActual.Empresa.Ruta))
' DirectoryExistsCreate(String.Format("{0}PDF\{1}", UsuarioActual.Empresa.Ruta, Vta.TipoDocto))
' File.WriteAllBytes(String.Format("{0}PDF\{1}\{2}.pdf", UsuarioActual.Empresa.Ruta, Vta.TipoDocto, Vta.SerieFolio), retorno)
' Catch ex As Exception
' Alert("Ocurrió un error al generar el PDF", TipoMensaje.MsgAdvertencia)
' End Try
' Else
' Try
' ArchivoPDF.Delete()
' File.WriteAllBytes(String.Format("{0}PDF\{1}\{2}.pdf", UsuarioActual.Empresa.Ruta, Vta.TipoDocto, Vta.SerieFolio), retorno)
' Catch ex As Exception
' Alert("Ocurrió un error al generar el PDF", TipoMensaje.MsgAdvertencia)
' End Try
' End If
' End If
' Else
' params.Add(New CrystalParametro("Empresa", UsuarioActual.Empresa.Empresa))
' params.Add(New CrystalParametro("RFC", UsuarioActual.Empresa.RFC))
' ImprimirbytesPDF(ImprimirPDFPyME(RutaFormato, DataSet, params, NombreArchivo, "PDF", MR:=Nothing), "Factura")
' End If
' Catch ex As Exception
' GuardaLog(String.Format("Ocurrio un error al generar el reporte RLDC {0}", ex))
' End Try
'End Sub
Public Function PdfFactura(ByRef Vta As Modelos.Factura, Optional AplicaPagare As String = "0", Optional Guardar As Boolean = True, Optional SubReportData As Modelos.MSubReportData = Nothing, Optional UsarStimulsoft As Boolean = False) As Byte()
Dim retorno As Byte() = Nothing
' Dim ObjVentas As New ClsVentas
@@ -6646,6 +6187,20 @@ Public Class ClsPaginas
End If
End Sub
#End Region
Public Function RutaFormatoReporte(NombreReporte As String) As String
Dim Retorno As String = String.Format("{0}Formatos\{1}", UsuarioActual.Empresa.Ruta, NombreReporte)
If Not File.Exists(Retorno) Then
Retorno = $"{DirectorioEmpresas}Grales\Formatos\{NombreReporte}"
End If
Return Retorno
End Function
Public Function RutaImagenLogo() As String
Dim Retorno As String = "" 'si existe le agrega el texto ''file:// sino lo regresa vacío
Dim Ruta As String = String.Format("{0}Logo.png", UsuarioActual.Empresa.Ruta)
If File.Exists(Ruta) Then Retorno = $"file://{Ruta}"
Return Retorno
End Function
#Region "PDF OC NEW 3.0"
Public Function NewGeneraBytesOC(tCveOrdenCompra As Integer, Optional MR As ReportViewer = Nothing, Optional ConBitacora As Boolean = False) As Byte()
Dim bytes As Byte() = Nothing

View File

@@ -104,7 +104,7 @@ Public Class Empresa
If Not String.IsNullOrEmpty(_RutaArchivos) AndAlso ClsPaginas.EsProduccion Then
Return _RutaArchivos
Else
Return String.Format("{0}\{1}\", Extensiones.ModExtensiones.DirectorioEmpresas, Me.CveEmpresa)
Return String.Format("{0}{1}\", Extensiones.ModExtensiones.DirectorioEmpresas, Me.CveEmpresa)
End If
End Get
'Set(ByVal value As String)