diff --git a/App_Code/ClsPaginas.vb b/App_Code/ClsPaginas.vb
index 07b14f13b..87f743432 100644
--- a/App_Code/ClsPaginas.vb
+++ b/App_Code/ClsPaginas.vb
@@ -5175,7 +5175,7 @@ Public Class ClsPaginas
sw.Start()
Dim Bytes As Byte() = Nothing
- Dim bdir As String = ModExtensiones.DirectorioBaseEmpresas
+ Dim bdir As String = If(RutaReporte.Contains("Empresas"), ModExtensiones.DirectorioBaseEmpresas, AppDomain.CurrentDomain.BaseDirectory)
RutaReporte.Replace("/", "\")
If Not RutaReporte.ToUpper().StartsWith(bdir.ToUpper()) Then
RutaReporte = String.Format("{0}{1}", bdir, RutaReporte)
diff --git a/App_Code/modExtensiones.vb b/App_Code/modExtensiones.vb
index f06c81603..e9e3f36b6 100644
--- a/App_Code/modExtensiones.vb
+++ b/App_Code/modExtensiones.vb
@@ -140,7 +140,7 @@ Namespace Extensiones
Dim MensajeFormato = $"{Chr(13)}{Chr(10)}Log: {Mensaje} | Fecha:{Now.ToString("dd/MM/yyyy HH:mm")}"
Try
- ArchivoW = New StreamWriter($"{ModExtensiones.DirectorioBaseEmpresas}\Log\{Archivo}.txt", True, System.Text.Encoding.UTF8)
+ ArchivoW = New StreamWriter($"{AppDomain.CurrentDomain.BaseDirectory}\Log\{Archivo}.txt", True, System.Text.Encoding.UTF8)
Catch ex As UnauthorizedAccessException
'Alert("No hay permisos para guardar en el Log.", Extensiones.TipoMensaje.MsgError)
Exit Sub
@@ -185,7 +185,7 @@ Namespace Extensiones
Dim strLineaTMP As String
strLineaTMP = String.Format("{0} {1}:{2} {3} {0}", Chr(13), DateTime.Now.ToShortDateString, DateTime.Now.ToShortTimeString, pTexto)
Try
- ArchivoW = New StreamWriter(String.Format("{0}\LogMail.txt", ModExtensiones.DirectorioBaseEmpresas), True, System.Text.Encoding.UTF8)
+ ArchivoW = New StreamWriter(String.Format("{0}\LogMail.txt", AppDomain.CurrentDomain.BaseDirectory), True, System.Text.Encoding.UTF8)
Catch ex As Exception
Exit Sub
End Try
@@ -205,7 +205,7 @@ Namespace Extensiones
' strLineaTMP = Chr(13) & Chr(10) & Day(Now) & "/" & Month(Now) & "/" & Year(Now) & " " & Hour(Now) & ":" & Minuto & ". " & Str & Chr(13) & Chr(10)
strLineaTMP = String.Format("{0}{1} .. PAC: {2} - Modulo: {3} ..{4}:{5}", Chr(13), Chr(10), CvePAC, Modulo, Str, DateTime.Now.ToShortDateString, DateTime.Now.ToShortTimeString)
Try
- ArchivoW = New StreamWriter(String.Format("{0}\LogTimbrado.txt", ModExtensiones.DirectorioBaseEmpresas), True, System.Text.Encoding.UTF8)
+ ArchivoW = New StreamWriter(String.Format("{0}\LogTimbrado.txt", AppDomain.CurrentDomain.BaseDirectory), True, System.Text.Encoding.UTF8)
Catch ex As UnauthorizedAccessException
'Alert("No hay permisos para guardar en el Log.", Extensiones.TipoMensaje.MsgError)
Exit Sub
@@ -228,7 +228,7 @@ Namespace Extensiones
strLineaTMP = String.Format("{0} {1}:{2} {3} {0}", Chr(13), DateTime.Now.ToShortDateString, DateTime.Now.ToShortTimeString, pTexto)
Try
- ArchivoW = New StreamWriter(String.Format("{0}\LogCancelacionSAT.txt", ModExtensiones.DirectorioBaseEmpresas), True, System.Text.Encoding.UTF8)
+ ArchivoW = New StreamWriter(String.Format("{0}\LogCancelacionSAT.txt", AppDomain.CurrentDomain.BaseDirectory), True, System.Text.Encoding.UTF8)
Catch ex As Exception
Exit Sub
End Try
@@ -1962,7 +1962,7 @@ Namespace Extensiones
RecursivoLimpiaControlesExcel(GridView.Controls)
style.Append(" ")
page.EnableEventValidation = False
@@ -2002,7 +2002,7 @@ Namespace Extensiones
Dim Form As HtmlForm = New HtmlForm()
style.Append(" ")
RecursivoLimpiaControlesExcel(GridView.Controls)
@@ -2183,16 +2183,15 @@ Namespace Extensiones
worksheet.Rows(IndexEndTable).Cells(6).Value = "Fecha Impresión"
worksheet.Rows(IndexEndTable + 1).Cells(6).Value = DateTime.Now.ToString("dd/MM/yyyy")
- Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", Usuario.Empresa.Ruta))
-
- If Imagen.Exists Then
- Dim logouri = String.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", HttpContext.Current.Request.Url.Scheme, HttpContext.Current.Request.Url.Host, HttpContext.Current.Request.Url.Port, Usuario.CveEmpresa)
- Using webClient As New Net.WebClient()
- Dim imageBytes = webClient.DownloadData(logouri)
- Dim stream As New MemoryStream(imageBytes)
- worksheet.Pictures.Add(stream, ExcelPictureFormat.Png, "A1", AnchoImagen, AlturaImagen, LengthUnit.Pixel)
- 'worksheet.Pictures.Add(stream, GemBox.Spreadsheet.ExcelPictureFormat.Png, "A1", AnchoImagen, AlturaImagen, GemBox.Document.LengthUnit.Pixel)
- End Using
+ Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", Usuario.Empresa.Ruta))
+
+ If Imagen.Exists Then
+ Dim Ruta As String = String.Format("{0}/Logo.png", Usuario.Empresa.Ruta)
+ Using sr As New StreamReader(Ruta)
+ Dim ms As New MemoryStream()
+ sr.BaseStream.CopyTo(ms)
+ worksheet.Pictures.Add(ms, ExcelPictureFormat.Png, "A1", AnchoImagen, AlturaImagen, LengthUnit.Pixel)
+ End Using
End If
End If
@@ -2210,7 +2209,7 @@ Namespace Extensiones
Dim style As StringBuilder = New StringBuilder()
style.Append(" ")
'To Export all pages
'Gv.AllowPaging = False
@@ -3182,7 +3181,7 @@ Namespace Extensiones
Public Property descripcion As String
Public ReadOnly Property Extencion As String
Get
- Return IO.Path.GetExtension(String.Format("{0}{1}{2}", ModExtensiones.DirectorioBaseEmpresas, patch, filename)).Replace(".", "")
+ Return IO.Path.GetExtension(String.Format("{0}{1}{2}", If(patch.Contains("Empresas"), ModExtensiones.DirectorioBaseEmpresas, AppDomain.CurrentDomain.BaseDirectory), patch, filename)).Replace(".", "")
End Get
End Property
Public ReadOnly Property filenameO As String
@@ -3192,7 +3191,7 @@ Namespace Extensiones
End Property
Public ReadOnly Property FileUrl As String
Get
- Return String.Format("{0}{1}{2}", ModExtensiones.DirectorioBaseEmpresas, patch, filename)
+ Return String.Format("{0}{1}{2}", If(patch.Contains("Empresas"), ModExtensiones.DirectorioBaseEmpresas, AppDomain.CurrentDomain.BaseDirectory), patch, filename)
End Get
End Property
End Class
diff --git a/Bancos/IE.aspx.vb b/Bancos/IE.aspx.vb
index c787fdd5c..beb0c14e3 100644
--- a/Bancos/IE.aspx.vb
+++ b/Bancos/IE.aspx.vb
@@ -930,7 +930,7 @@ Partial Class Bancos_IE
If ObjIE.Comprobante <> "" Then
HplComprobante.Visible = True
- HplComprobante.NavigateUrl = String.Format("/Empresas/{0}/IE/{1}", UsuarioActual.CveEmpresa, ObjIE.Comprobante)
+ HplComprobante.NavigateUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", Encripta($"OP=IEComprobante&Comprobante={ObjIE.Comprobante}"))
End If
If CveIEDeposito > 0 Then
diff --git a/Compras/PopUpVerFactura.aspx.vb b/Compras/PopUpVerFactura.aspx.vb
index 5d0a34f8c..ddb90e086 100644
--- a/Compras/PopUpVerFactura.aspx.vb
+++ b/Compras/PopUpVerFactura.aspx.vb
@@ -186,9 +186,10 @@ Partial Class PopUpVerFactura
If Request("REPORTE") IsNot Nothing Then
CType(Session("DTPDF"), HtmlTable).ExportToPDF("Reporte")
- End If
-
- 'OPCIONES
+ End If
+
+ 'OPCIONES
+
If Request("P") IsNot Nothing AndAlso Decripta((Request("P").ToString)) <> "" Then
Dim UrlParametros As Hashtable = Parametros(Decripta((Request("P").ToString)))
If UrlParametros("OP") IsNot Nothing AndAlso UrlParametros("OP").ToString <> "" Then
@@ -235,10 +236,16 @@ Partial Class PopUpVerFactura
UsuarioToken.Empresa = ObjEmpresa.Empresa
End If
ObjEmpresa.Dispose()
- End Sub
+ End Sub
#End Region
+
+ Private Sub SeleccionaReporte(UrlParametros As Hashtable)
+
+ 'DESCARGA COMPROBANTE
+ If UrlParametros("OP").ToString = "IEComprobante" Then
+ DescargaComprobante(UrlParametros)
+ End If
- Private Sub SeleccionaReporte(UrlParametros As Hashtable)
'DESCARGA DOCUMENTO XML O PDF DE LA FACTURA COMPRA
If UrlParametros("OP").ToString = "Fact" Then
DescargaFactura(UrlParametros)
@@ -518,11 +525,30 @@ Partial Class PopUpVerFactura
ImprimirPDF("Empresas/Grales/Formatos/RepCortes.rdlc", lrds, params, "ReporteCortes", Formato)
End If
- End Sub
-
+ End Sub
+
#End Region
-
+
#Region " OP = FACTURA - IMPRIME COMPRA"
+ Private Sub DescargaComprobante(Parametros As Hashtable)
+ If Parametros("COMPROBANTE") IsNot Nothing Then
+
+ Dim Path As String = String.Format("{0}IE\{1}", UsuarioActual.Empresa.Ruta, Parametros("COMPROBANTE"))
+ Dim Archivo As New System.IO.FileInfo(Path)
+
+ If Archivo.Exists Then
+ HttpContext.Current.Response.Clear()
+ HttpContext.Current.Response.ClearContent()
+ HttpContext.Current.Response.ContentType = "application/octet-stream"
+ HttpContext.Current.Response.AppendHeader("Content-disposition", String.Format("attachment; filename={0}", Archivo.Name))
+ HttpContext.Current.Response.AddHeader("Content-Length", Archivo.Length.ToString())
+ HttpContext.Current.Response.TransmitFile(Path)
+ 'HttpContext.Current.Response.Flush()
+ HttpContext.Current.Response.End()
+ End If
+ Archivo = Nothing
+ End If
+ End Sub
Private Sub DescargaFactura(Parametros As Hashtable)
If Parametros("CVEFACTURA") IsNot Nothing AndAlso Parametros("CVEFACTURA").ToString.ToEntero > 0 Then
Dim Exten As String = If(Parametros("EXT").ToString.ToLower = "xml", "xml", "pdf")
diff --git a/Compras/eFacturas.aspx.vb b/Compras/eFacturas.aspx.vb
index 86b0b4428..60ee8f5b2 100644
--- a/Compras/eFacturas.aspx.vb
+++ b/Compras/eFacturas.aspx.vb
@@ -2603,17 +2603,50 @@ Partial Class Compras_eFacturas
End Set
End Property
+ Property DT_ComprasSinIE As DataTable
+ Get
+ If ViewState("DT_ComprasSinIE") Is Nothing Then
+ Return New DataTable
+ Else
+ Return DirectCast(ViewState("DT_ComprasSinIE"), DataTable)
+ End If
+ End Get
+ Set(value As DataTable)
+ ViewState("DT_ComprasSinIE") = value
+ End Set
+ End Property
+
+
+
+ 'Property ComplementoComprasSinIE As String
+ ' Get
+ ' If ViewState("ComplementoComprasSinIE") Is Nothing Then
+ ' Return ""
+ ' Else
+ ' Return ViewState("ComplementoComprasSinIE").ToString
+ ' End If
+ ' End Get
+ ' Set(value As String)
+ ' ViewState("ComplementoComprasSinIE") = value
+ ' End Set
+ 'End Property
+
+
#Region "V I N C U L A R P A G O"
Protected Sub LnkAgregarPago_Click(sender As Object, e As EventArgs)
+ Dim sbSinIE As New StringBuilder
+ HdnCveIE.Value = ""
MSGComplemento = ""
ViculacionConPUE = False
ListaComprasPUE.Clear()
ComplementoConPUE = ""
+ DT_ComprasSinIE = New DataTable
+
Dim ListaComprasPUEInterna As New List(Of Integer)
@@ -2809,6 +2842,26 @@ Partial Class Compras_eFacturas
End If
Next
+
+ DT_ComprasSinIE.Columns.Add("CveCompra", GetType(Integer))
+ DT_ComprasSinIE.Columns.Add("CveFactura", GetType(Integer))
+ DT_ComprasSinIE.Columns.Add("SerieFolioPago")
+ DT_ComprasSinIE.Columns.Add("SerieFolioCompra")
+
+ For Each dRow As DataRow In DTDocumentosRelacionados.Rows
+ Dim nRow As DataRow = DT_ComprasSinIE.NewRow
+ nRow("CveCompra") = dRow("CveCompra").ToString.ToEntero
+ ' nRow("CveFactura") = dRow("CveFactura").ToString.ToEntero
+ nRow("SerieFolioPago") = $"{SeriePago}-{FolioPago}"
+ nRow("SerieFolioCompra") = dRow("SerieFolioCompra").ToString
+
+ DT_ComprasSinIE.Rows.Add(nRow)
+
+
+ Next
+
+
+
Else
Alert("Ocurrió un error al cargar los archivos de complementos pago", TipoMensaje.MsgError)
End If
@@ -2876,6 +2929,12 @@ Partial Class Compras_eFacturas
ImporteIES = ObjCompras.DtResultados.FiltraParametros("CveIE > 0").SUM("Importe")
+
+
+
+
+
+
DiferenciaImportes = Monto - ImporteIES
ObjCompras.Dispose()
@@ -2962,19 +3021,25 @@ Partial Class Compras_eFacturas
If ViculacionConPUE Then
-
-
-
For Each CveCompraVinculada In ListaComprasPUE
-
objEventos.AddEventoBitacora($"Complemento { ComplementoConPUE } vinculado manualmente (Compra PUE) ", "", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveCompra:=CveCompraVinculada)
Next
+ End If
+
+
+ If HdnCveIE.Value.ToEntero > 0 Then
+
+
+ For Each dRow As DataRow In DT_ComprasSinIE.Rows
+ objEventos.AddEventoBitacora($"Complemento { dRow("SerieFolioPago").ToString } vinculado manualmente a compra {dRow("SerieFolioCompra").ToString}", "", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveCompra:=dRow("CveCompra").ToString.ToEntero)
+ Next
End If
+
ObjCompra.Commit()
Alert("El pago fue vinculado correctamente", TipoMensaje.MsgInformacion)
diff --git a/Inventarios/KardexAlmacenHorizontal.aspx.vb b/Inventarios/KardexAlmacenHorizontal.aspx.vb
index 2b5325e8f..46040fdab 100644
--- a/Inventarios/KardexAlmacenHorizontal.aspx.vb
+++ b/Inventarios/KardexAlmacenHorizontal.aspx.vb
@@ -246,10 +246,96 @@ Partial Class Inventarios_KardexAlmacen
If DdlProveedor.SelectedValue.ToEntero > 0 Then StrFiltro.AppendFormat("Proveedor: {0},", DdlProveedor.SelectedText)
If ddlProducto2.SelectedValue.ToEntero > 0 Then StrFiltro.AppendFormat(" Producto/Servicio: {0},", ddlProducto2.SelectedText)
If TxtFechaF.Text <> "" Then StrFiltro.AppendFormat(" Fecha Fin: {0}", TxtFechaF.Text)
- GvDatos.ExportToExcelG("ExistenciasHorizontal.xlsx", "Existencias Almacen", UsuarioActual, StrFiltro.ToString, 100, 200)
+ ExportToExcelG(GvDatos, "ExistenciasHorizontal.xlsx", "Existencias Almacen", UsuarioActual, StrFiltro.ToString, 100, 200)
Else
Alert("Debe consultar para generar un excel", TipoMensaje.MsgAdvertencia)
End If
+ End Sub
+
+ Public Sub ExportToExcelG(Gv As GridView, NombreArchivoXLSx As String, Optional Titulo As String = "Reporte", Optional Usuario As Usuario = Nothing, Optional Filtros As String = "", Optional AlturaImagen As Double = 100, Optional AnchoImagen As Double = 100)
+ Dim sw As New StringWriter()
+ Dim htw As New HtmlTextWriter(sw)
+ Gv.RenderControl(htw)
+ GemBox.Spreadsheet.SpreadsheetInfo.SetLicense("ESWN-4QFD-26JF-1SZ8")
+
+ Dim excel As GemBox.Spreadsheet.ExcelFile
+ Dim options = GemBox.Spreadsheet.LoadOptions.HtmlDefault
+ Using htmlStream = New MemoryStream(options.Encoding.GetBytes(sw.ToString()))
+ excel = GemBox.Spreadsheet.ExcelFile.Load(htmlStream, options)
+ If Usuario IsNot Nothing Then
+ Dim TotalRowHeader As Integer = 8
+ Dim TotalRowFooter As Integer = 2
+
+ Dim worksheet = excel.Worksheets(0)
+ worksheet.Rows.InsertEmpty(0, TotalRowHeader)
+ Dim celdasConTexto = worksheet.GetUsedCellRange(True)
+ celdasConTexto.Style.Font.Name = "Calibri Light"
+
+ Dim RangoNombreEmpresa = worksheet.Cells.GetSubrangeAbsolute(1, celdasConTexto.FirstColumnIndex, 1, celdasConTexto.LastColumnIndex)
+ RangoNombreEmpresa.Merged = True
+ RangoNombreEmpresa.Value = Usuario.Empresa.Empresa
+ RangoNombreEmpresa.Style.Font.Size = 18 * 20
+ RangoNombreEmpresa.Style.Font.Name = "Calibri Light"
+ RangoNombreEmpresa.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center
+ RangoNombreEmpresa.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
+
+
+ Dim RangoFiltros = worksheet.Cells.GetSubrangeAbsolute(6, celdasConTexto.FirstColumnIndex, 6, celdasConTexto.LastColumnIndex)
+ RangoFiltros.Merged = True
+ RangoFiltros.Value = Filtros
+ RangoFiltros.Style.Font.Size = 15 * 20
+ RangoFiltros.Style.Font.Name = "Calibri Light"
+ RangoFiltros.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Left
+ RangoFiltros.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
+
+
+ Dim RangoTitulo = worksheet.Cells.GetSubrangeAbsolute(3, celdasConTexto.FirstColumnIndex, 3, celdasConTexto.LastColumnIndex)
+ RangoTitulo.Merged = True
+ RangoTitulo.Value = Titulo
+ RangoTitulo.Style.Font.Size = 20 * 20
+ RangoTitulo.Style.Font.Name = "Calibri Light"
+ RangoTitulo.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center
+ RangoTitulo.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
+
+ For i = celdasConTexto.FirstColumnIndex To celdasConTexto.LastColumnIndex
+ worksheet.Rows(8).Cells(i).Style.Font.Size = 12 * 20
+ worksheet.Rows(8).Cells(i).Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center
+ worksheet.Rows(8).Cells(i).Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
+ worksheet.Rows(8).Cells(i).Style.FillPattern.SetPattern(GemBox.Spreadsheet.FillPatternStyle.Solid, GemBox.Spreadsheet.SpreadsheetColor.FromArgb(75, 119, 190), GemBox.Spreadsheet.SpreadsheetColor.FromArgb(255, 255, 255))
+ worksheet.Rows(8).Cells(i).Style.Font.Color = GemBox.Spreadsheet.SpreadsheetColor.FromArgb(255, 255, 255)
+ If i > 0 Then
+ Try
+ worksheet.Columns(i).AutoFit(1)
+ Catch ex As Exception
+ End Try
+ End If
+ Next
+
+ Dim IndexEndTable As Integer = Gv.Rows.Count + TotalRowHeader + TotalRowFooter
+
+ worksheet.Rows(IndexEndTable).Cells(2).Value = "Usuario Imprimió"
+ worksheet.Rows(IndexEndTable + 1).Cells(2).Value = Usuario.Nombre
+
+ worksheet.Rows(IndexEndTable).Cells(6).Value = "Fecha Impresión"
+ worksheet.Rows(IndexEndTable + 1).Cells(6).Value = DateTime.Now.ToString("dd/MM/yyyy")
+
+ Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", Usuario.Empresa.Ruta))
+
+ If Imagen.Exists Then
+ Dim Ruta As String = String.Format("{0}/Logo.png", Usuario.Empresa.Ruta)
+ Using sr As New StreamReader(Ruta)
+ Dim ms As New MemoryStream()
+ sr.BaseStream.CopyTo(ms)
+ worksheet.Pictures.Add(ms, ExcelPictureFormat.Png, "A1", AnchoImagen, AlturaImagen, LengthUnit.Pixel)
+ End Using
+ End If
+ End If
+
+ End Using
+ htw.Dispose()
+
+ excel.Save(HttpContext.Current.Response, $"{NombreArchivoXLSx}.xlsx")
+
End Sub
Public Overrides Sub VerifyRenderingInServerForm(ByVal control As Control)
End Sub