Agregando reporte de detalle de ventas mensuales

This commit is contained in:
Antonio Gonzalez
2020-02-29 13:51:35 -07:00
parent 17eae8bc5a
commit 73d110410e
6 changed files with 284 additions and 116 deletions

View File

@@ -4664,6 +4664,7 @@ Public Class ClsPaginas
PaginaDict.Add("/Ventas/CatCobranzaEstatus.aspx".ToUpper(), 7003)
PaginaDict.Add("/Ventas/CatCobranzaEstatusTurno.aspx".ToUpper(), 7004)
PaginaDict.Add("/Ventas/RepVentasMensuales.aspx".ToUpper(), 720)
PaginaDict.Add("/Ventas/RepVentasMensualesDetalle.aspx".ToUpper(), 721)
#End Region

View File

@@ -4238,6 +4238,27 @@ Public Class ClsVentas
End Try
Return retorno
End Function
Public Function GetRepVentasMensualesDetalle(CveEmpresa As Integer, CveCliente As Integer, FechaInicio As Date, FechaFin As Date, Optional CveSubProyecto As Integer = -1,
Optional CveVendedor As Integer = -1, Optional CveMarca As Integer = -1) As Boolean
Dim retorno As Boolean = False
DataAdapter("PA_Vta_VentasMensualesDetalleGet", CommandType.StoredProcedure)
With SqlAdapter.SelectCommand.Parameters
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
.Add("@CveCliente", SqlDbType.Int).Value = CveCliente
.Add("@FechaInicio", SqlDbType.DateTime).Value = FechaInicio
.Add("@FechaFin", SqlDbType.DateTime).Value = FechaFin
.Add("@CveSubProyecto", SqlDbType.Int).Value = CveSubProyecto
.Add("@CveMarca", SqlDbType.Int).Value = CveMarca
.Add("@CveVendedor", SqlDbType.Int).Value = CveVendedor
End With
Try
SqlAdapter.Fill(Data)
retorno = True
Catch ex As Exception
OnError("Ocurrió un error al obtener el reporte de ventas mensuales", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End Try
Return retorno
End Function
#Region "Conciliación emitidas SAT"
Public Function ConciliacionemitidasSATGet(cveEmpresa As Int32) As Boolean

View File

@@ -150,72 +150,72 @@
<Columns>
<asp:TemplateField HeaderText="Nombre Cliente" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblProveedor" runat="server" Text='<%# Eval("Nombre").ToString() %>'> </asp:Label>
<asp:HyperLink ID="HlkNombre" runat="server" Target="_blank" Text='<%# Eval("Nombre").ToString() %>'> </asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Ene" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblProveedor" runat="server" Text='<%# Eval("Ene").ToString() %>'> </asp:Label>
<asp:HyperLink ID="lblEne" runat="server" Target="_blank" Text='<%# Eval("Ene").ToString() %>'> </asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Feb" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblProveedor" runat="server" Text='<%# Eval("Feb").ToString() %>'> </asp:Label>
<asp:HyperLink ID="lblFeb" runat="server" Target="_blank" Text='<%# Eval("Feb").ToString() %>'> </asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Mzo" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblProveedor" runat="server" Text='<%# Eval("Mzo").ToString() %>'> </asp:Label>
<asp:HyperLink ID="lblMzo" runat="server" Target="_blank" Text='<%# Eval("Mzo").ToString() %>'> </asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Abr" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblProveedor" runat="server" Text='<%# Eval("Abr").ToString() %>'> </asp:Label>
<asp:HyperLink ID="lblAbr" runat="server" Target="_blank" Text='<%# Eval("Abr").ToString() %>'> </asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="May" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblProveedor" runat="server" Text='<%# Eval("May").ToString() %>'> </asp:Label>
<asp:HyperLink ID="lblMay" runat="server" Target="_blank" Text='<%# Eval("May").ToString() %>'> </asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Jun" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblProveedor" runat="server" Text='<%# Eval("Jun").ToString() %>'> </asp:Label>
<asp:HyperLink ID="lblJun" runat="server" Target="_blank" Text='<%# Eval("Jun").ToString() %>'> </asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Jul" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblProveedor" runat="server" Text='<%# Eval("Jul").ToString() %>'> </asp:Label>
<asp:HyperLink ID="lblJul" runat="server" Target="_blank" Text='<%# Eval("Jul").ToString() %>'> </asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Ago" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblProveedor" runat="server" Text='<%# Eval("Ago").ToString() %>'> </asp:Label>
<asp:HyperLink ID="lblAgo" runat="server" Target="_blank" Text='<%# Eval("Ago").ToString() %>'> </asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Sep" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblProveedor" runat="server" Text='<%# Eval("Sep").ToString() %>'> </asp:Label>
<asp:HyperLink ID="lblSep" runat="server" Target="_blank" Text='<%# Eval("Sep").ToString() %>'> </asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Oct" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblProveedor" runat="server" Text='<%# Eval("Oct").ToString() %>'> </asp:Label>
<asp:HyperLink ID="lblOct" runat="server" Target="_blank" Text='<%# Eval("Oct").ToString() %>'> </asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Nov" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblProveedor" runat="server" Text='<%# Eval("Nov").ToString() %>'> </asp:Label>
<asp:HyperLink ID="lblNov" runat="server" Target="_blank" Text='<%# Eval("Nov").ToString() %>'> </asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Dic" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblProveedor" runat="server" Text='<%# Eval("Dic").ToString() %>'> </asp:Label>
<asp:HyperLink ID="lblDic" runat="server" Target="_blank" Text='<%# Eval("Dic").ToString() %>'> </asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Total" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblProveedor" runat="server" Text='<%# Eval("Total").ToString() %>'> </asp:Label>
<asp:HyperLink ID="lblTotal" runat="server" Target="_blank" Text='<%# Eval("Total").ToString() %>'> </asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
</Columns>
@@ -227,106 +227,4 @@
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
<script src="/Metronic/assets/global/scripts/datatable.js"></script>
<script src="/Metronic/assets/global/plugins/datatables/all.min.js"></script>
<%--<script type="text/javascript">
function IrC(v) {
window.open('../Compras/Compras.aspx?CveCompra=' + v, '_blank');
}
function IrO(v) {
window.open('../OC/OC.aspx?OC=' + v, '_blank');
}
function IrP(v) {
window.open('../Compras/Proveedores.aspx?CveProveedor=' + v, '_blank');
}
var dTable;
function pageLoad() {
var Tam = TamañoVentana();
var Alto = Tam.height - 330;
if (Alto < 100) {
Alto = 100;
}
var rows = false;
var cont = 0;
$("#<%=GV.ClientID %> tr").each(function () {
cont++;
});
if (cont > 2) {
var head = $('<thead></thead>');
head.append($('#C_GV tr:nth-child(1)'));
$('#C_GV').prepend(head);
dTable = $('#C_GV').DataTable({
'order': [], 'orderable': true, scrollY: Alto + 'px', scrollCollapse: true, paging: false, searching: false, info: false
});
subHeaders();
}
}
$(window).resize(function () {
subHeaders();
dTable.columns.adjust().draw();
});
function subHeaders() {
$('#dvCa').css('visibility', 'hidden');
$("#<%=GV.ClientID %> tr").each(function() {
if (!this.rowIndex) return;
var celdas = [];
$(this).find('td').each(function (column, td) {
//scrollWidth
//celdas.push($(td).width());
var scrollWidt =0;
scrollWidt = $(td).prop('scrollWidth')
celdas.push($(td).prop('scrollWidth'));
//console.log('this ' + $(this).width());
//console.log('td ' + $(td).width());
});
var ancho = 0
ancho += celdas[0];
//console.log('ancho pro ' + ancho);
$('#dvPro').width(ancho);
ancho = 0;
ancho += celdas[1];
ancho += celdas[2];
ancho += celdas[3];
ancho += celdas[4];
// console.log('ancho req ' + ancho);
$('#dvReq').width(ancho);
ancho = 0;
ancho += celdas[5];
ancho += celdas[6];
ancho += celdas[7];
// console.log('ancho req ' + ancho);
$('#dvOc').width(ancho);
ancho = 0;
ancho += celdas[8];
ancho += celdas[9];
ancho += celdas[10];
// console.log('ancho req ' + ancho);
$('#dvCo').width(ancho);
ancho = 0;
$('#dvCa').css('visibility', 'visible');
return false;
});
}
</script> --%>
</asp:Content>

View File

@@ -85,4 +85,36 @@ Partial Class RepVentasMensuales
Public Sub LnkExportar_Click(sender As Object, e As EventArgs) Handles LnkExportar.Click
GV.ExportToExcel("Evaluaciones de Proveedores" & Now.ToShortDateString & ".xls")
End Sub
Protected Sub GV_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GV.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
Dim CveCliente As Integer = -1
Dim CveSubProyecto As Integer = -1
If DdlModalidad.SelectedValue = "0" Then
CveCliente = e.Row.DataKey("Clave").ToEntero
CveSubProyecto = DdlSubProyecto.SelectedValue.ToEntero
Else
CveSubProyecto = e.Row.DataKey("Clave")
End If
Dim FechaInicio As Date = TxtFechaI.Text
Dim FechaFin As Date = TxtFechaF.Text
Dim CveMarca As Integer = DdlMarca.SelectedValue.ToEntero
Dim CveVendedor As Integer = DdlVendedor.SelectedValue.ToEntero
Dim URL As String = String.Format("/Ventas/RepVentasMensualesDetalle.aspx?CveCliente={0}&CveSubProyecto={1}&FechaInicio={2}&FechaFin={3}&CveMarca={4}&CveVendedor={5}",
CveCliente, CveSubProyecto, FechaInicio, FechaFin, CveMarca, CveVendedor)
e.Row.FCHyperLink("HlkNombre").NavigateUrl = URL
e.Row.FCHyperLink("LblEne").NavigateUrl = URL
e.Row.FCHyperLink("LblFeb").NavigateUrl = URL
e.Row.FCHyperLink("LblMzo").NavigateUrl = URL
e.Row.FCHyperLink("LblAbr").NavigateUrl = URL
e.Row.FCHyperLink("LblMay").NavigateUrl = URL
e.Row.FCHyperLink("LblJun").NavigateUrl = URL
e.Row.FCHyperLink("LblJul").NavigateUrl = URL
e.Row.FCHyperLink("LblAgo").NavigateUrl = URL
e.Row.FCHyperLink("LblSep").NavigateUrl = URL
e.Row.FCHyperLink("LblOct").NavigateUrl = URL
e.Row.FCHyperLink("LblNov").NavigateUrl = URL
e.Row.FCHyperLink("LblDic").NavigateUrl = URL
End If
End Sub
End Class

View File

@@ -0,0 +1,142 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="RepVentasMensualesDetalle.aspx.vb" Inherits="RepVentasMensualesDetalle" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
<style>
.table-scrollable {
margin-top: 0px !important;
margin-bottom: 0px !important;
}
.dataTables_scrollHeadInner {
width: 100% !important;
background-color: #dddddd;
padding-left: 0px !important;
}
.dataTables_scrollFoot {
display: none;
position: static;
}
.table-scrollable {
margin: 0px !important;
}
.dataTables_scroll {
margin-bottom: 0px;
}
.table.dataTable {
margin-top: 0px !important;
}
.dataTables_scrollBody table th {
padding: 0px !important;
padding-right: 4px !important;
padding-left: 4px !important;
}
</style>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="HB" runat="Server">
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="E" runat="Server">
Rep. Detalle de la Venta Mensual
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<li>
<asp:LinkButton ID="LnkPDF" runat="server"><i class="fa fa-file-pdf-o" style="font-weight:bold;"></i> PDF</asp:LinkButton>
</li>
<li>
<asp:LinkButton ID="LnkExportar" runat="server"><i class="fa fa-file-excel-o" style="font-weight:bold;"></i> Excel</asp:LinkButton>
</li>
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
<div id="dvCuerpo" style="width: 100%">
<asp:UpdatePanel ID="UPDatos" runat="server" RenderMode="Inline" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GV" runat="server" GridLines="None" BorderWidth="0" UseAccessibleHeader="true" DataKeyNames="Nombre,Etiqueta,Ene,Feb,Mzo,Abr,May,Jun,Jul,Ago,Sep,Oct,Nov,Dic,Total"
CssClass="table table-striped table-advance table-hover Widthall ScrollAD" data-sort="true" ShowHeader="True" EmptyDataText="No se encontraron resultados." ShowHeaderWhenEmpty="true"
AutoGenerateColumns="False" AllowPaging="False" ShowFooter="False">
<Columns>
<asp:TemplateField HeaderText="Nombre Cliente" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblProveedor" runat="server" Text='<%# Eval("Nombre").ToString() %>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Ene" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblProveedor" runat="server" Text='<%# Eval("Ene").ToString() %>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Feb" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblProveedor" runat="server" Text='<%# Eval("Feb").ToString() %>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Mzo" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblProveedor" runat="server" Text='<%# Eval("Mzo").ToString() %>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Abr" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblProveedor" runat="server" Text='<%# Eval("Abr").ToString() %>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="May" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblProveedor" runat="server" Text='<%# Eval("May").ToString() %>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Jun" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblProveedor" runat="server" Text='<%# Eval("Jun").ToString() %>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Jul" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblProveedor" runat="server" Text='<%# Eval("Jul").ToString() %>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Ago" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblProveedor" runat="server" Text='<%# Eval("Ago").ToString() %>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Sep" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblProveedor" runat="server" Text='<%# Eval("Sep").ToString() %>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Oct" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblProveedor" runat="server" Text='<%# Eval("Oct").ToString() %>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Nov" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblProveedor" runat="server" Text='<%# Eval("Nov").ToString() %>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Dic" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblProveedor" runat="server" Text='<%# Eval("Dic").ToString() %>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Total" ItemStyle-HorizontalAlign="Left">
<ItemTemplate>
<asp:Label ID="lblProveedor" runat="server" Text='<%# Eval("Total").ToString() %>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
<script src="/Metronic/assets/global/scripts/datatable.js"></script>
<script src="/Metronic/assets/global/plugins/datatables/all.min.js"></script>
</asp:Content>

View File

@@ -0,0 +1,74 @@
Imports System.Data
Imports Extensiones
Imports Microsoft.Reporting.WebForms
Partial Class RepVentasMensualesDetalle
Inherits ClsPaginas
Private Property DtDatos As DataTable
Get
DtDatos = DirectCast(ViewState("DtDatos"), DataTable)
End Get
Set(ByVal value As DataTable)
ViewState("DtDatos") = value
End Set
End Property
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
CargaDatos()
End If
End Sub
Private Sub CargaDatos()
'URL DE PRUEBA
'/Ventas/RepVentasMensualesDetalle.aspx?CveCliente=270821&CveSubProyecto=-1&FechaInicio=2020-02-15&FechaFin=2020-02-20&CveMarca=-1&CveVendedor=-1
Dim FechaInicio As Date = Request.QueryString("FechaInicio")
Dim FechaFin As Date = Request.QueryString("FechaFin")
Dim CveCliente As Integer = Request.QueryString("CveCliente")
Dim CveSubProyecto As Integer = Request.QueryString("CveSubProyecto")
Dim CveMarca As Integer = Request.QueryString("CveMarca")
Dim CveVendedor As Integer = Request.QueryString("CveVendedor")
Dim ObjVentas As New ClsVentas
If ObjVentas.GetRepVentasMensualesDetalle(UsuarioActual.CveEmpresa, CveCliente, FechaInicio, FechaFin, CveSubProyecto, CveVendedor, CveMarca) Then
GV.DataSource = ObjVentas.DtResultados
DtDatos = ObjVentas.DtResultados
End If
ObjVentas.Dispose()
GV.DataBind()
End Sub
Public Sub LnkPDF_Click() Handles LnkPDF.Click
Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta))
Dim logouri = String.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa)
Dim params As New List(Of ReportParameter)
params.Add(New ReportParameter("pEmp", UsuarioActual.Empresa.Empresa))
If Imagen.Exists Then
params.Add(New ReportParameter("pImg", logouri))
Else
params.Add(New ReportParameter("pImg", ""))
End If
params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Usuario))
params.Add(New ReportParameter("FechaImpresion", Today))
params.Add(New ReportParameter("Modalidad", 2))
ImprimirPDF("Empresas/Grales/Formatos/RepVentasMensualesDetalle.rdlc", DtDatos, params, "Rep. Ventas Mensuales", "PDF", RDSName:="DataSet1")
End Sub
Public Sub LnkExportar_Click(sender As Object, e As EventArgs) Handles LnkExportar.Click
GV.ExportToExcel("Evaluaciones de Proveedores" & Now.ToShortDateString & ".xls")
End Sub
Public Sub GV_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GV.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.DataKey("Etiqueta") = "Padre" Then
e.Row.CssClass = "Totales"
ElseIf e.Row.DataKey("Etiqueta") = "SubPadre" Then
e.Row.CssClass = "SubTotales"
End If
End If
End Sub
End Class