Resumen del mes en reporte diario en excel
This commit is contained in:
@@ -36,7 +36,7 @@ Partial Class Ventas_RepPS
|
||||
'DdlMarca.Items.Insert(0, New ListItem("Todos", "-1"))
|
||||
End If
|
||||
|
||||
If UsuarioActual.TienePermisoProceso(320) Then
|
||||
If UsuarioActual.TienePermisoProceso(320) OrElse UsuarioActual.CveRol = 1 Then
|
||||
LnkRepDiario.Visible = True
|
||||
End If
|
||||
|
||||
@@ -242,9 +242,11 @@ Partial Class Ventas_RepPS
|
||||
Dim TC As Integer = 1
|
||||
Dim TCEspecifico As Decimal = -1
|
||||
|
||||
Dim FechaConsulta As DateTime = Now
|
||||
|
||||
Dim DataSet As DataSet = New DataSet
|
||||
Dim ObjVentas As New ClsVentas()
|
||||
If ObjVentas.GetRepPSDiario(-1, -1, Now, UsuarioActual.CveEmpresa, CveUsuarioConsulta:=UsuarioActual.CveUsuario, GPO:=-1, CveMoneda:=CveMoneda, TipoCambio:=TC, TCEspecifico:=TCEspecifico) Then
|
||||
If ObjVentas.GetRepPSDiario(-1, -1, FechaConsulta, UsuarioActual.CveEmpresa, CveUsuarioConsulta:=UsuarioActual.CveUsuario, GPO:=-1, CveMoneda:=CveMoneda, TipoCambio:=TC, TCEspecifico:=TCEspecifico) Then
|
||||
DataSet = ObjVentas.DataSetResultados.Copy()
|
||||
End If
|
||||
ObjVentas.Dispose()
|
||||
@@ -254,7 +256,7 @@ Partial Class Ventas_RepPS
|
||||
|
||||
Dim FileExcel As New ExcelFile()
|
||||
|
||||
Dim worksheetName As String = $"{ToShortMonthName(Now).ToUpper()}{Now.Day}"
|
||||
Dim worksheetName As String = $"{ToShortMonthName(FechaConsulta).ToUpper()}{FechaConsulta.Day}"
|
||||
Const invalidCharsRegex As String = "[/\\*'?[\]:]+"
|
||||
Const maxLength As Integer = 31
|
||||
Dim safeName As String = Regex.Replace(worksheetName, invalidCharsRegex, " ").Replace(" ", " ").Trim()
|
||||
@@ -269,7 +271,7 @@ Partial Class Ventas_RepPS
|
||||
|
||||
Dim CellRangeTitulo = worksheet.Cells.GetSubrangeAbsolute(0, 0, 0, 12)
|
||||
CellRangeTitulo.Merged = True
|
||||
CellRangeTitulo.Value = $"{UsuarioActual.Empresa.Empresa}. VENTA DEL DIA {Now.Day} DE {ToMonthName(Now).ToUpper()} DEL {Now.Year}."
|
||||
CellRangeTitulo.Value = $"{UsuarioActual.Empresa.Empresa}. VENTA DEL DIA {FechaConsulta.Day} DE {ToMonthName(FechaConsulta).ToUpper()} DEL {FechaConsulta.Year}."
|
||||
CellRangeTitulo.Style.VerticalAlignment = VerticalAlignmentStyle.Center
|
||||
CellRangeTitulo.Style.HorizontalAlignment = HorizontalAlignmentStyle.Center
|
||||
|
||||
@@ -552,8 +554,8 @@ Partial Class Ventas_RepPS
|
||||
Dim IdxRefAnioAnteriorLlantas As Integer = IdxPorcentajes + 3
|
||||
|
||||
worksheet.Cells(IdxRefAnioAnteriorLlantas, 0).Value = "Sucursal"
|
||||
worksheet.Cells(IdxRefAnioAnteriorLlantas, 1).Value = (Now.Year - 1).ToString()
|
||||
worksheet.Cells(IdxRefAnioAnteriorLlantas, 2).Value = Now.Year.ToString()
|
||||
worksheet.Cells(IdxRefAnioAnteriorLlantas, 1).Value = (FechaConsulta.Year - 1).ToString()
|
||||
worksheet.Cells(IdxRefAnioAnteriorLlantas, 2).Value = FechaConsulta.Year.ToString()
|
||||
worksheet.Cells(IdxRefAnioAnteriorLlantas, 3).Value = "Dif"
|
||||
|
||||
Dim StyleTitleTable4 = worksheet.Cells.GetSubrangeAbsolute(IdxRefAnioAnteriorLlantas, 0, IdxRefAnioAnteriorLlantas, 3).Style
|
||||
@@ -614,13 +616,117 @@ Partial Class Ventas_RepPS
|
||||
DtAnioAnteriorLLantas.Dispose()
|
||||
#End Region
|
||||
|
||||
#Region "L L A N T A S M E S A Ñ O A N T E R I O R"
|
||||
Dim IdxRefMesAnioAnteriorLlantas As Integer = IdxAnioAnteriorLlantas + 3
|
||||
|
||||
worksheet.Cells.GetSubrangeAbsolute(IdxRefMesAnioAnteriorLlantas - 1, 1, IdxRefMesAnioAnteriorLlantas - 1, 3).Merged = True
|
||||
worksheet.Cells.GetSubrangeAbsolute(IdxRefMesAnioAnteriorLlantas - 1, 4, IdxRefMesAnioAnteriorLlantas - 1, 6).Merged = True
|
||||
worksheet.Cells(IdxRefMesAnioAnteriorLlantas - 1, 1).Value = "LLANTAS"
|
||||
worksheet.Cells(IdxRefMesAnioAnteriorLlantas - 1, 4).Value = "%"
|
||||
|
||||
worksheet.Cells(IdxRefMesAnioAnteriorLlantas, 0).Value = "Sucursal"
|
||||
worksheet.Cells(IdxRefMesAnioAnteriorLlantas, 1).Value = String.Format("{0} {1}", ToShortMonthName(FechaConsulta).ToUpper(), (FechaConsulta.Year - 1))
|
||||
worksheet.Cells(IdxRefMesAnioAnteriorLlantas, 2).Value = String.Format("{0} {1}", ToShortMonthName(FechaConsulta).ToUpper(), (FechaConsulta.Year))
|
||||
worksheet.Cells(IdxRefMesAnioAnteriorLlantas, 3).Value = "DIF %"
|
||||
worksheet.Cells(IdxRefMesAnioAnteriorLlantas, 4).Value = String.Format("{0} - %", (FechaConsulta.Year - 1))
|
||||
worksheet.Cells(IdxRefMesAnioAnteriorLlantas, 5).Value = String.Format("{0} - %", (FechaConsulta.Year))
|
||||
worksheet.Cells(IdxRefMesAnioAnteriorLlantas, 6).Value = "DIF %"
|
||||
|
||||
Dim StyleTitleTable5 = worksheet.Cells.GetSubrangeAbsolute(IdxRefMesAnioAnteriorLlantas - 1, 0, IdxRefMesAnioAnteriorLlantas - 1, 6).Style
|
||||
StyleTitleTable5.Font.Weight = ExcelFont.BoldWeight
|
||||
StyleTitleTable5.Font.Name = "Calibri"
|
||||
StyleTitleTable5.Font.Size = 8 * 20
|
||||
StyleTitleTable5.Borders.SetBorders(MultipleBorders.All, SpreadsheetColor.FromName(ColorName.Black), LineStyle.Thin)
|
||||
StyleTitleTable5.VerticalAlignment = VerticalAlignmentStyle.Center
|
||||
StyleTitleTable5.HorizontalAlignment = HorizontalAlignmentStyle.Center
|
||||
|
||||
Dim StyleSubTitleTable5 = worksheet.Cells.GetSubrangeAbsolute(IdxRefMesAnioAnteriorLlantas, 0, IdxRefMesAnioAnteriorLlantas, 6).Style
|
||||
StyleSubTitleTable5.Font.Weight = ExcelFont.BoldWeight
|
||||
StyleSubTitleTable5.Font.Name = "Calibri"
|
||||
StyleSubTitleTable5.Font.Size = 8 * 20
|
||||
StyleSubTitleTable5.Borders.SetBorders(MultipleBorders.All, SpreadsheetColor.FromName(ColorName.Black), LineStyle.Thin)
|
||||
StyleSubTitleTable5.VerticalAlignment = VerticalAlignmentStyle.Center
|
||||
StyleSubTitleTable5.HorizontalAlignment = HorizontalAlignmentStyle.Center
|
||||
|
||||
Dim DtMesAnioAnteriorLLantas As DataTable = DataSet.Tables(4)
|
||||
'INICIA DESDE LA CUARTA FILA
|
||||
Dim IdxMesAnioAnteriorLlantas As Integer = IdxRefMesAnioAnteriorLlantas + 1
|
||||
|
||||
For Each Row As DataRow In DtMesAnioAnteriorLLantas.Rows
|
||||
worksheet.Cells(IdxMesAnioAnteriorLlantas, 0).Value = Row("Sucursal")
|
||||
worksheet.Cells(IdxMesAnioAnteriorLlantas, 1).Value = Row("LLantasAnioAnterior")
|
||||
worksheet.Cells(IdxMesAnioAnteriorLlantas, 2).Value = Row("LLantas")
|
||||
worksheet.Cells(IdxMesAnioAnteriorLlantas, 3).Formula = $"=({worksheet.Cells(IdxMesAnioAnteriorLlantas, 2).Name} - {worksheet.Cells(IdxMesAnioAnteriorLlantas, 1).Name})"
|
||||
worksheet.Cells(IdxMesAnioAnteriorLlantas, 4).Formula = $"=+(({worksheet.Cells(IdxMesAnioAnteriorLlantas, 1).Name} * 1.07) - {worksheet.Cells(IdxMesAnioAnteriorLlantas, 2).Name}) /12"
|
||||
worksheet.Cells(IdxMesAnioAnteriorLlantas, 5).Formula = $"=+(({worksheet.Cells(IdxMesAnioAnteriorLlantas, 1).Name} * 1) - {worksheet.Cells(IdxMesAnioAnteriorLlantas, 2).Name}) /12"
|
||||
worksheet.Cells(IdxMesAnioAnteriorLlantas, 6).Formula = $"=+({worksheet.Cells(IdxMesAnioAnteriorLlantas, 2).Name} / {worksheet.Cells(IdxMesAnioAnteriorLlantas, 1).Name}) - 1"
|
||||
|
||||
Dim StyleData = worksheet.Cells.GetSubrangeAbsolute(IdxMesAnioAnteriorLlantas, 0, IdxMesAnioAnteriorLlantas, 6).Style
|
||||
StyleData.Font.Weight = ExcelFont.NormalWeight
|
||||
StyleData.Font.Name = "Calibri"
|
||||
StyleData.Font.Size = 8 * 20
|
||||
StyleData.VerticalAlignment = VerticalAlignmentStyle.Center
|
||||
StyleData.HorizontalAlignment = HorizontalAlignmentStyle.Center
|
||||
StyleData.Borders.SetBorders(MultipleBorders.All, SpreadsheetColor.FromName(ColorName.Black), LineStyle.Thin)
|
||||
StyleData.NumberFormat = "_-* #,##0.00_-;-* #,##0.00_-;_-* ""-""??_-;_-@_-"
|
||||
|
||||
IdxMesAnioAnteriorLlantas += 1
|
||||
Next
|
||||
|
||||
DtMesAnioAnteriorLLantas.Dispose()
|
||||
#End Region
|
||||
|
||||
#Region "L L A N T A S M E S A Ñ O A N T E R I O R"
|
||||
Dim IdxRefMesAnioAnteriorLlantasResumen As Integer = IdxMesAnioAnteriorLlantas + 2
|
||||
|
||||
worksheet.Cells(IdxRefMesAnioAnteriorLlantasResumen, 0).Value = "Mes"
|
||||
worksheet.Cells(IdxRefMesAnioAnteriorLlantasResumen, 1).Value = String.Format("{0}", (FechaConsulta.Year - 1))
|
||||
worksheet.Cells(IdxRefMesAnioAnteriorLlantasResumen, 2).Value = String.Format("{0}", (FechaConsulta.Year))
|
||||
worksheet.Cells(IdxRefMesAnioAnteriorLlantasResumen, 3).Value = "DIF UDS"
|
||||
worksheet.Cells(IdxRefMesAnioAnteriorLlantasResumen, 4).Value = "DIF %"
|
||||
|
||||
Dim StyleTitleTable6 = worksheet.Cells.GetSubrangeAbsolute(IdxRefMesAnioAnteriorLlantasResumen, 0, IdxRefMesAnioAnteriorLlantasResumen, 4).Style
|
||||
StyleTitleTable6.Font.Weight = ExcelFont.BoldWeight
|
||||
StyleTitleTable6.Font.Name = "Calibri"
|
||||
StyleTitleTable6.Font.Size = 8 * 20
|
||||
StyleTitleTable6.Borders.SetBorders(MultipleBorders.All, SpreadsheetColor.FromName(ColorName.Black), LineStyle.Thin)
|
||||
StyleTitleTable6.VerticalAlignment = VerticalAlignmentStyle.Center
|
||||
StyleTitleTable6.HorizontalAlignment = HorizontalAlignmentStyle.Center
|
||||
|
||||
|
||||
Dim DtMesAnioAnteriorLLantasResumen As DataTable = DataSet.Tables(5)
|
||||
'INICIA DESDE LA CUARTA FILA
|
||||
Dim IdxMesAnioAnteriorLlantasResumen As Integer = IdxRefMesAnioAnteriorLlantasResumen + 1
|
||||
|
||||
For Each Row As DataRow In DtMesAnioAnteriorLLantasResumen.Rows
|
||||
worksheet.Cells(IdxMesAnioAnteriorLlantasResumen, 0).Value = ToMonthName(FechaConsulta).ToUpper()
|
||||
worksheet.Cells(IdxMesAnioAnteriorLlantasResumen, 1).Value = Row("LLantasAnioAnterior")
|
||||
worksheet.Cells(IdxMesAnioAnteriorLlantasResumen, 2).Value = Row("LLantas")
|
||||
worksheet.Cells(IdxMesAnioAnteriorLlantasResumen, 3).Formula = $"=({worksheet.Cells(IdxMesAnioAnteriorLlantasResumen, 1).Name} - {worksheet.Cells(IdxMesAnioAnteriorLlantasResumen, 2).Name})"
|
||||
worksheet.Cells(IdxMesAnioAnteriorLlantasResumen, 4).Formula = $"=+({worksheet.Cells(IdxMesAnioAnteriorLlantasResumen, 2).Name} / {worksheet.Cells(IdxMesAnioAnteriorLlantasResumen, 1).Name})"
|
||||
|
||||
Dim StyleData = worksheet.Cells.GetSubrangeAbsolute(IdxMesAnioAnteriorLlantasResumen, 0, IdxMesAnioAnteriorLlantasResumen, 4).Style
|
||||
StyleData.Font.Weight = ExcelFont.NormalWeight
|
||||
StyleData.Font.Name = "Calibri"
|
||||
StyleData.Font.Size = 8 * 20
|
||||
StyleData.VerticalAlignment = VerticalAlignmentStyle.Center
|
||||
StyleData.HorizontalAlignment = HorizontalAlignmentStyle.Center
|
||||
StyleData.Borders.SetBorders(MultipleBorders.All, SpreadsheetColor.FromName(ColorName.Black), LineStyle.Thin)
|
||||
StyleData.NumberFormat = "_-* #,##0.00_-;-* #,##0.00_-;_-* ""-""??_-;_-@_-"
|
||||
|
||||
IdxMesAnioAnteriorLlantasResumen += 1
|
||||
Next
|
||||
|
||||
DtMesAnioAnteriorLLantasResumen.Dispose()
|
||||
#End Region
|
||||
|
||||
Dim columnCount = worksheet.CalculateMaxUsedColumns()
|
||||
|
||||
For i = 0 To columnCount
|
||||
worksheet.Columns(i).AutoFit(1, worksheet.Rows(0), worksheet.Rows(worksheet.Rows.Count - 1))
|
||||
Next
|
||||
|
||||
FileExcel.Save(Response, $"DIARIO_{Now.ToString("dd_MM_yyyy")}.xlsx", SaveOptions.XlsxDefault)
|
||||
FileExcel.Save(Response, $"DIARIO_{FechaConsulta.ToString("dd_MM_yyyy")}.xlsx", SaveOptions.XlsxDefault)
|
||||
|
||||
End If
|
||||
|
||||
|
||||
Reference in New Issue
Block a user