216 lines
9.6 KiB
VB.net
216 lines
9.6 KiB
VB.net
Option Explicit On
|
|
Option Strict On
|
|
|
|
Imports System.Data
|
|
Imports System.IO
|
|
Imports Extensiones
|
|
|
|
Partial Class Ventas_AuxiliarCliente
|
|
Inherits ClsPaginas
|
|
|
|
#Region " PROPIEDADES"
|
|
Private Property DtActivosFijos As DataTable
|
|
Get
|
|
Return CType(ViewState("DtActivosFijos"), DataTable)
|
|
End Get
|
|
Set(value As DataTable)
|
|
ViewState("DtActivosFijos") = value
|
|
End Set
|
|
End Property
|
|
|
|
Private ReadOnly Property CveActivoFijo As Integer
|
|
Get
|
|
Return ViewState("CveActivoFijo").ToString.ToEntero
|
|
End Get
|
|
End Property
|
|
|
|
Private Property DTAFCaracteristicas As DataTable
|
|
Get
|
|
Return CType(ViewState("DTAFCaracteristicas"), DataTable)
|
|
End Get
|
|
Set(value As DataTable)
|
|
ViewState("DTAFCaracteristicas") = value
|
|
End Set
|
|
End Property
|
|
#End Region
|
|
|
|
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
|
|
If Not Page.IsPostBack Then
|
|
CargaFiltros()
|
|
End If
|
|
End Sub
|
|
|
|
|
|
|
|
Private Sub CargaFiltros()
|
|
|
|
If (UsuarioActual.Empresa.Funcionalidad(105) = "1") Then
|
|
DdlClientes.setEsWebService(True)
|
|
DdlClientes.Attributes.Add("data-metodo", "getcliente")
|
|
DdlClientes.SelectedText = "Todos"
|
|
DdlClientes.SelectedValue = "-1"
|
|
Else
|
|
DdlClientes.setEsWebService(False)
|
|
DdlClientes.ddl.DataSource = GlobalDTCliente(UsuarioActual.CveEmpresa)
|
|
DdlClientes.ddl.DataBind()
|
|
DdlClientes.ddl.Items.Insert(0, New ListItem("Todos", "-1"))
|
|
End If
|
|
|
|
'DdlConceptosContables.DataSource = GlobalDTContaConceptosContables(-1)
|
|
'DdlConceptosContables.DataBind()
|
|
'DdlConceptosContables.Items.Insert(0, New ListItem("Todos", "-1"))
|
|
|
|
|
|
txtFechaI.Text = Now.AddDays(-30).ToString("dd/MM/yyyy")
|
|
txtFechaF.Text = Now.ToString("dd/MM/yyyy")
|
|
|
|
End Sub
|
|
|
|
Private Sub CargaDatos()
|
|
|
|
Dim ObjConta As New ClsContabilidad
|
|
|
|
'Falta PA
|
|
If ObjConta.GetClienteAuxiliar(DdlClientes.SelectedValue.ToEntero, -1, txtFechaI.Text.ToDate, txtFechaF.Text.ToDate, UsuarioActual.CveEmpresa, DdlOpcion.SelectedValue.ToEntero) Then
|
|
If DdlOpcion.SelectedValue.ToEntero = 2 Then
|
|
GvAuxCliente.DataSource = ObjConta.DtResultados.FiltraParametros($" IIF(ISNULL(CveConceptoContable,0) = 1 AND Importe >= 0,0,1) = 1")
|
|
Else
|
|
GvAuxCliente.DataSource = ObjConta.DtResultados
|
|
End If
|
|
Else
|
|
GvAuxCliente.DataSource = Nothing
|
|
End If
|
|
|
|
ObjConta.Dispose()
|
|
|
|
GvAuxCliente.DataBind()
|
|
|
|
UpDatos.Update()
|
|
|
|
End Sub
|
|
|
|
Protected Sub BtnConsultar_Click(sender As Object, e As EventArgs)
|
|
CargaDatos()
|
|
End Sub
|
|
|
|
Private Sub ImgExcel_Click(sender As Object, e As EventArgs) Handles ImgExcel.Click
|
|
ExportToExcelGTest(GvAuxCliente, "Auxiliar" & DdlClientes.SelectedText & ".xlsx", "Auxiliar Clientes", UsuarioActual)
|
|
End Sub
|
|
|
|
Public Overrides Sub VerifyRenderingInServerForm(ByVal control As Control)
|
|
End Sub
|
|
Public Sub ExportToExcelGTest(Gv As GridView, NombreArchivoXLSx As String, Optional Titulo As String = "Reporte", Optional Usuario As Usuario = Nothing)
|
|
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 worksheet = excel.Worksheets(0)
|
|
Dim num As Integer = worksheet.Rows.Count
|
|
If num > 128 Then num = 128
|
|
|
|
Dim columnCount = worksheet.CalculateMaxUsedColumns()
|
|
'If columnCount > 1 Then
|
|
' For i As Integer = 1 To columnCount - 1
|
|
' worksheet.Columns(i).AutoFit(1, worksheet.Rows(1), worksheet.Rows(num - 1))
|
|
' Next
|
|
'End If
|
|
|
|
worksheet.Rows.InsertEmpty(0, 7)
|
|
|
|
Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", Usuario.Empresa.Ruta))
|
|
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)
|
|
|
|
If Imagen.Exists Then
|
|
worksheet.Pictures.Add(logouri.ToString(), "A1", "B4")
|
|
End If
|
|
|
|
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 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
|
|
|
|
Dim FiltroCliente = worksheet.Cells.GetSubrangeAbsolute(5, celdasConTexto.FirstColumnIndex, 5, celdasConTexto.LastColumnIndex)
|
|
FiltroCliente.Merged = True
|
|
FiltroCliente.Value = String.Format("Cliente: {0} Fecha Inicio: {1} Fecha Fin: {2} Opción: {3}", DdlClientes.SelectedText, txtFechaI.Text, txtFechaF.Text, DdlOpcion.SelectedItem.Text)
|
|
FiltroCliente.Style.Font.Size = 12 * 20
|
|
FiltroCliente.Style.Font.Name = "Calibri Light"
|
|
FiltroCliente.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Left
|
|
FiltroCliente.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
|
|
|
|
For i = celdasConTexto.FirstColumnIndex To celdasConTexto.LastColumnIndex
|
|
worksheet.Rows(7).Cells(i).Style.Font.Size = 12 * 20
|
|
worksheet.Rows(7).Cells(i).Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center
|
|
worksheet.Rows(7).Cells(i).Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
|
|
worksheet.Rows(7).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(7).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 + 9
|
|
|
|
worksheet.Rows(IndexEndTable).Cells(0).Value = "Usuario Imprimió:"
|
|
worksheet.Rows(IndexEndTable + 1).Cells(0).Value = Usuario.Nombre
|
|
|
|
worksheet.Rows(IndexEndTable).Cells(4).Value = "Fecha Impresión: "
|
|
worksheet.Rows(IndexEndTable + 1).Cells(4).Value = DateTime.Now.ToString()
|
|
|
|
worksheet.Rows(IndexEndTable).Cells(8).Value = "Impreso en SIG"
|
|
End If
|
|
|
|
End Using
|
|
htw.Dispose()
|
|
|
|
excel.Save(HttpContext.Current.Response, NombreArchivoXLSx)
|
|
|
|
End Sub
|
|
Protected Sub GvAuxCliente_RowDataBound(sender As Object, e As GridViewRowEventArgs)
|
|
If e.Row.RowType = DataControlRowType.DataRow Then
|
|
If DdlOpcion.SelectedValue.ToEntero = 2 Then
|
|
If Not e.Row.DBCampo("CveConceptoContable").ToEntero > 0 Then
|
|
e.Row.CssClass = "Totales"
|
|
Else
|
|
e.Row.Cells(0).Text = ""
|
|
e.Row.Cells(7).Text = ""
|
|
End If
|
|
End If
|
|
If e.Row.DBCampo("TipoReferencia").ToEntero = 1 Then
|
|
e.Row.FCHyperLink("HplReferencia").NavigateUrl = $"/Bancos/IE.aspx?CveIE={e.Row.DBCampo("CveReferencia")}"
|
|
ElseIf e.Row.DBCampo("TipoReferencia").ToEntero = 2 Then
|
|
e.Row.FCHyperLink("HplReferencia").NavigateUrl = $"/Ventas/Ventas.aspx?CveVenta={e.Row.DBCampo("CveReferencia")}"
|
|
ElseIf e.Row.DBCampo("TipoReferencia").ToEntero = 3 Then
|
|
e.Row.FCHyperLink("HplReferencia").NavigateUrl = $"/Compras/Compras.aspx?CveCompra={e.Row.DBCampo("CveReferencia")}"
|
|
End If
|
|
|
|
If e.Row.DBCampo("CveConceptoContable").ToEntero = 1 AndAlso e.Row.DBCampo("Importe").ToString.ToDouble < 0 Then
|
|
e.Row.ForeColor = Drawing.Color.Red
|
|
End If
|
|
End If
|
|
End Sub
|
|
End Class
|