From 025712e8df0805398d67a0b786d05fe1626c10c9 Mon Sep 17 00:00:00 2001 From: rrene Date: Mon, 15 May 2023 11:41:58 -0700 Subject: [PATCH] -- mejora en liga a ruta de empresas, -- rutareportes --rutalogo --- App_Code/ClsPaginas.vb | 473 ++--------------------------------------- App_Code/Empresa.vb | 2 +- 2 files changed, 15 insertions(+), 460 deletions(-) diff --git a/App_Code/ClsPaginas.vb b/App_Code/ClsPaginas.vb index 7be3b6cb6..d4802efc4 100644 --- a/App_Code/ClsPaginas.vb +++ b/App_Code/ClsPaginas.vb @@ -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 diff --git a/App_Code/Empresa.vb b/App_Code/Empresa.vb index 83f419c58..062318423 100644 --- a/App_Code/Empresa.vb +++ b/App_Code/Empresa.vb @@ -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)