diff --git a/App_Code/ClsVentas.vb b/App_Code/ClsVentas.vb
index 6a4739cf8..9e3fe70cf 100644
--- a/App_Code/ClsVentas.vb
+++ b/App_Code/ClsVentas.vb
@@ -1346,7 +1346,7 @@ Public Class ClsVentas
Public Function GetRepVentas(FechaI As Date, FechaF As Date, FechaIEjec As Date, FechaFEjec As Date, CveCliente As Integer, CveSubProyectoEjecucion As Integer,
CveVendedor As String, CveUsuario As Integer, CveEstatus As String, IVA As String, CveEmpresa As Integer, Gpo As Integer, Optional TipoDocto As String = "-1",
Optional CveProyecto As Integer = -1, Optional CveSubProyecto As String = "-1", Optional TipoCambio As Integer = 1, Optional TCEspecifico As Decimal = -1, Optional CveUsuarioConsulta As Integer = -1,
- Optional CveClienteClasificacion As Integer = -1, Optional CveCondicionesPago As Integer = -1, Optional TipoCliente As Integer = -1) As Boolean
+ Optional CveClienteClasificacion As Integer = -1, Optional CveCondicionesPago As Integer = -1, Optional TipoCliente As Integer = -1, Optional ModalidadContable As Boolean = False) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_Vta_VentasGetRep")
@@ -1373,6 +1373,7 @@ Public Class ClsVentas
.Add("@CveClienteClasificacion", SqlDbType.Int).Value = CveClienteClasificacion
.Add("@CveCondicionesPago", SqlDbType.Int).Value = CveCondicionesPago
.Add("@TipoCliente", SqlDbType.Int).Value = TipoCliente
+ .Add("@ModalidadContable", SqlDbType.Bit).Value = ModalidadContable
End With
Try
@@ -1477,7 +1478,7 @@ Public Class ClsVentas
Vendedor As String, CveUsuario As Integer, CveEstatus As String, FechaI As Date, FechaF As Date, CveCorte As Integer, TipoDocto As String,
CveSubProyectoEjecucion As Integer, CveEmpresa As Integer, FechaIEjec As Date, FechaFEjec As Date, Optional CveProyecto As Integer = -1,
Optional CveSubProyecto As String = "-1", Optional TipoCambio As Integer = 1, Optional TCEspecifico As Decimal = -1, Optional CveMoneda As Integer = -1, Optional CveUsuarioConsulta As Integer = -1,
- Optional CveClienteClasificacion As Integer = -1, Optional CveCondicionesPago As Integer = -1, Optional TipoCliente As Integer = -1) As Boolean
+ Optional CveClienteClasificacion As Integer = -1, Optional CveCondicionesPago As Integer = -1, Optional TipoCliente As Integer = -1, Optional ModalidadContable As Boolean = False) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_Vta_VentasGetRepDetalle")
@@ -1509,6 +1510,7 @@ Public Class ClsVentas
.Add("@CveClienteClasificacion", SqlDbType.Int).Value = CveClienteClasificacion
.Add("@CveCondicionesPago", SqlDbType.Int).Value = CveCondicionesPago
.Add("@TipoCliente", SqlDbType.Int).Value = TipoCliente
+ .Add("@ModalidadContable", SqlDbType.Bit).Value = ModalidadContable
End With
Try
diff --git a/Ventas/RepVentaDetalle.aspx b/Ventas/RepVentaDetalle.aspx
index 0dc5dd450..9cb218984 100644
--- a/Ventas/RepVentaDetalle.aspx
+++ b/Ventas/RepVentaDetalle.aspx
@@ -303,6 +303,12 @@
+
+
+
+
+
+
diff --git a/Ventas/RepVentaDetalle.aspx.vb b/Ventas/RepVentaDetalle.aspx.vb
index 4e35dd634..324054b77 100644
--- a/Ventas/RepVentaDetalle.aspx.vb
+++ b/Ventas/RepVentaDetalle.aspx.vb
@@ -450,8 +450,8 @@ Partial Class RepVentaDetalle
ConfiguraEmpresa()
UPDatos.Update()
End Sub
- Private Sub CargaDatos()
- Dim ObjVentas As New ClsVentas()
+ Private Sub CargaDatos()
+
Dim AnioMes = If(Request("AnioMes") IsNot Nothing, Request("AnioMes").ToString, "-1").ToString
Dim Fecha = If(Request("Fecha") IsNot Nothing, Request("Fecha").ToString, "-1").ToString
Dim IVA = If(Request("IVA") IsNot Nothing, Request("IVA").ToString, "-1").ToString
@@ -478,12 +478,15 @@ Partial Class RepVentaDetalle
FechaIEjec = If(IsDate(TxtFechaIEjec.Text.Trim()), TxtFechaIEjec.Text.Trim.ToDate, MinFecha)
FechaFEjec = If(IsDate(TxtFechaFEjec.Text.Trim()), TxtFechaFEjec.Text.Trim.ToDate, MaxFecha)
- 'FechaI, FechaF, -1, UsuarioActual.CveEmpresa, DdlGrupo.SelectedValue.ToEntero
+ Dim ModalidadContable As Boolean = CBool(If(Request("ModalidadContable") IsNot Nothing, Request("ModalidadContable").ToEntero(), 0))
+
+ Dim ObjVentas As New ClsVentas()
+ 'FechaI, FechaF, -1, UsuarioActual.CveEmpresa, DdlGrupo.SelectedValue.ToEntero
If ObjVentas.GetRepVentasDetalle(DdlGrupo.SelectedValue.ToEntero, Anio.ToEntero, Mes.ToEntero, AnioMes, Fecha, CveCliente,
IVA, Vendedores, DdlUsuario.SelectedValue.ToEntero, Estatus, FechaI, FechaF,
CveCorte.ToEntero, TipoComprobante, DdlSubProyectoEjecucion.SelectedValue.ToEntero, UsuarioActual.CveEmpresa, FechaIEjec, FechaFEjec,
CveProyecto, Sucursales, TipoCambio, TCEspecifico, CveMoneda, CveUsuarioConsulta:=UsuarioActual.CveUsuario, CveClienteClasificacion:=DdlClienteClasificacion.SelectedValue.ToEntero,
- CveCondicionesPago:=CveCondicionesPago, TipoCliente:=DdlTipoCliente.SelectedValue.ToEntero) Then
+ CveCondicionesPago:=CveCondicionesPago, TipoCliente:=DdlTipoCliente.SelectedValue.ToEntero, ModalidadContable:=ModalidadContable) Then
DtVentas = AddRows(ObjVentas.DtResultados)
ImgImprimir.Enabled = True
GvDatos.DataSource = AddRows(ObjVentas.DtResultados)
@@ -491,9 +494,11 @@ Partial Class RepVentaDetalle
Else
GvDatos.DataSource = Nothing
GvVsh.DataSource = Nothing
- End If
- Agrupador = DdlGrupo.SelectedItem.Text
+ End If
ObjVentas.Dispose()
+
+ Agrupador = DdlGrupo.SelectedItem.Text
+
GvDatos.DataBind()
GvVsh.DataBind()
End Sub
diff --git a/Ventas/RepVentas.aspx b/Ventas/RepVentas.aspx
index ebafa4a4f..699b91e4a 100644
--- a/Ventas/RepVentas.aspx
+++ b/Ventas/RepVentas.aspx
@@ -293,8 +293,12 @@
-
-
+
+
+
+
+
+
diff --git a/Ventas/RepVentas.aspx.vb b/Ventas/RepVentas.aspx.vb
index 9694e4ff0..548d83a87 100644
--- a/Ventas/RepVentas.aspx.vb
+++ b/Ventas/RepVentas.aspx.vb
@@ -10,8 +10,8 @@ Imports System.IO
Imports System.Xml
Partial Class Ventas_RepVentas
- Inherits ClsPaginas
-
+ Inherits ClsPaginas
+
#Region "Propiedades"
Private Property Opcion As String
Get
@@ -74,12 +74,12 @@ Partial Class Ventas_RepVentas
Set(value As DataTable)
ViewState("DtColor") = value
End Set
- End Property
-
-
-
+ End Property
+
+
+
#End Region
-
+
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
TipoCambio = 1
@@ -117,11 +117,11 @@ Partial Class Ventas_RepVentas
End If
End If
- End Sub
-
-
+ End Sub
+
+
#Region " CARGA COMBOS "
-
+
Private Sub CargaGrupo()
DdlGrupo.Items.Insert(0, New ListItem("Año", "1"))
DdlGrupo.Items.Insert(1, New ListItem("Mes", "2"))
@@ -284,10 +284,10 @@ Partial Class Ventas_RepVentas
DdlSubProyecto.DataSource = GlobalDTSubProyectos(DdlProyecto.SelectedValue.ToEntero, CveEmpresa:=UsuarioActual.CveEmpresa)
DdlSubProyecto.DataBind()
'DdlSubProyecto.Items.Insert(0, New ListItem("Todos", "-1"))
- End Sub
-
+ End Sub
+
#End Region
-
+
#Region " CARGA DATOS "
Protected Sub BtnConsultar_Click(sender As Object, e As System.EventArgs) Handles BtnConsultar.Click
CargaDatos()
@@ -321,7 +321,7 @@ Partial Class Ventas_RepVentas
If ObjVentas.GetRepVentas(FechaI, FechaF, FechaIEjec, FechaFEjec, CveCliente, DdlSubProyectoEjecucion.SelectedValue.ToEntero, Vendedores,
DdlUsuario.SelectedValue.ToEntero, Estatus, "-1", UsuarioActual.CveEmpresa, DdlGrupo.SelectedValue.ToEntero, TipoComprobante, DdlProyecto.SelectedValue.ToEntero, Sucursales, RblTipoCambio.SelectedValue.ToEntero, TCEspecifico, CveUsuarioConsulta:=UsuarioActual.CveUsuario,
- CveClienteClasificacion:=DdlClienteClasificacion.SelectedValue.ToEntero, CveCondicionesPago:=DdlCondicionesPago.SelectedValue.ToEntero, TipoCliente:=DdlTipoCliente.SelectedValue.ToEntero) Then
+ CveClienteClasificacion:=DdlClienteClasificacion.SelectedValue.ToEntero, CveCondicionesPago:=DdlCondicionesPago.SelectedValue.ToEntero, TipoCliente:=DdlTipoCliente.SelectedValue.ToEntero, ModalidadContable:=ChkModalidadContable.Checked) Then
GvDatos.DataSource = ObjVentas.DtResultados
DtVentas = ObjVentas.DtResultados
Else
@@ -332,12 +332,12 @@ Partial Class Ventas_RepVentas
CveProyecto = DdlProyecto.SelectedValue.ToEntero
ObjVentas.Dispose()
GvDatos.DataBind()
- End Sub
-
+ End Sub
+
#End Region
-
+
#Region "SELECTED INDEX CHANGE"
-
+
Protected Sub DdlClienteClasificacion_SelectedIndexChanged(sender As Object, e As EventArgs)
CargaClientes()
End Sub
@@ -380,10 +380,10 @@ Partial Class Ventas_RepVentas
CargaDatos()
RegistraScript(String.Format("$('#{0}').modal('hide');", "DivTipoCambio"))
UPDatos.Update()
- End Sub
-
+ End Sub
+
#End Region
-
+
#Region " GV DATOS - ROW DATABOUND "
Protected Sub GvDatos_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatos.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
@@ -417,11 +417,60 @@ Partial Class Ventas_RepVentas
Else
CveSubProyecto = e.Row.DBCampo("CveSubProyecto")
CveProyecto = e.Row.DBCampo("CveProyecto")
- End If
-
-
- 'LIGA A DETALLE
- Dim Liga As String = $"/Ventas/RepVentaDetalle.aspx?GPO={DdlGrupo.SelectedValue}&Anio={e.Row.DBCampo("Anio")}&Mes={e.Row.DBCampo("Mes")}&AnioMes={e.Row.DBCampo("AnioMes")}&Fecha={e.Row.DBCampo("Fecha")}&AnioEjec={e.Row.DBCampo("AnioEjec")}&MesEjec={e.Row.DBCampo("MesEjec")}&AnioMesEjec={e.Row.DBCampo("AnioMesEjec")}&FechaEjec={e.Row.DBCampo("FechaEjec")}&CveCliente={e.Row.DBCampo("CveCliente")}&CveVendedor={ e.Row.DBCampo("CveVendedor")}&CveUsuario={e.Row.DBCampo("CveUsuario")}&CveEstatusFactura={e.Row.DBCampo("CveEstatusFactura")}&FechaI={FechaI}&FechaF={FechaF}&FechaIEjec={FechaIEjec}&FechaFEjec={FechaFEjec}&IVA={e.Row.DBCampo("GPO_IVA")}&CveCorte={ e.Row.DBCampo("CveCorte")}&TipoDocto={ DdlTipoComprobante.GetSelectedValuesM}&CveSubProyectoEjecucion={e.Row.DBCampo("CveSubProyectoEjecucion")}&CveSubProyecto={CveSubProyecto}&CveProyecto={CveProyecto}&TipoCambio={TipoCambio}&TCEspecifico={TCEspecifico}&CveMoneda={CveMoneda}&CveClienteClasificacion={e.Row.DBCampo("CveClienteClasificacion")}&CveCondicionesPago={DdlCondicionesPago.SelectedValue}&TipoCliente={ If(DdlGrupo.SelectedValue.ToEntero = 20, e.Row.DBCampo("TipoCliente"), DdlTipoCliente.SelectedValue)}"
+ End If
+
+ Dim FechaInicial As String = FechaI
+ Dim FechaFinal As String = FechaF
+
+ If Not e.Row.DBCampo("GPO").Contains("Total") Then
+ Select Case DdlGrupo.SelectedValue.ToEntero()
+ Case 2 ' MES
+ Dim FechaIRef As DateTime = FechaI.ToDateTime()
+ Dim FechaFRef As DateTime = FechaF.ToDateTime()
+
+ Dim Anio As Integer = FechaFRef.Year
+ Dim Mes As Integer = e.Row.DBCampo("Mes").ToEntero()
+ Dim lastDayOfMonth = DateTime.DaysInMonth(Anio, Mes)
+
+ Dim Dia As Integer = FechaFRef.Day
+
+ If e.Row.DBCampo("Mes").ToEntero() <> FechaFRef.Month Then
+ Dia = lastDayOfMonth
+ End If
+
+ If e.Row.DBCampo("Mes").ToEntero() <> FechaIRef.Month Then
+ FechaInicial = New DateTime(Anio, Mes, 1).ToString("dd/MM/yyyy")
+ End If
+
+ FechaFinal = New DateTime(Anio, Mes, Dia).ToString("dd/MM/yyyy")
+ Case 3 ' AÑO/MES
+ Dim FechaIRef As DateTime = FechaI.ToDateTime()
+ Dim FechaFRef As DateTime = FechaF.ToDateTime()
+
+ Dim Anio As Integer = e.Row.DBCampo("Anio").ToEntero()
+ Dim Mes As Integer = e.Row.DBCampo("Mes").ToEntero()
+ Dim lastDayOfMonth = DateTime.DaysInMonth(Anio, Mes)
+
+ Dim Dia As Integer = FechaFRef.Day
+
+ If e.Row.DBCampo("Mes").ToEntero() <> FechaFRef.Month Then
+ Dia = lastDayOfMonth
+ End If
+
+ If e.Row.DBCampo("Mes").ToEntero() <> FechaIRef.Month Then
+ FechaInicial = New DateTime(Anio, Mes, 1).ToString("dd/MM/yyyy")
+ End If
+
+ FechaFinal = New DateTime(Anio, Mes, Dia).ToString("dd/MM/yyyy")
+ Case 4 ' FECHA
+ FechaInicial = e.Row.DBCampo("Fecha").ToDateTime().ToString("dd/MM/yyyy")
+ FechaFinal = e.Row.DBCampo("Fecha").ToDateTime().ToString("dd/MM/yyyy")
+ End Select
+ End If
+
+
+ 'LIGA A DETALLE
+ Dim Liga As String = $"/Ventas/RepVentaDetalle.aspx?GPO={DdlGrupo.SelectedValue}&Anio={e.Row.DBCampo("Anio")}&Mes={e.Row.DBCampo("Mes")}&AnioMes={e.Row.DBCampo("AnioMes")}&Fecha={e.Row.DBCampo("Fecha")}&AnioEjec={e.Row.DBCampo("AnioEjec")}&MesEjec={e.Row.DBCampo("MesEjec")}&AnioMesEjec={e.Row.DBCampo("AnioMesEjec")}&FechaEjec={e.Row.DBCampo("FechaEjec")}&CveCliente={e.Row.DBCampo("CveCliente")}&CveVendedor={ e.Row.DBCampo("CveVendedor")}&CveUsuario={e.Row.DBCampo("CveUsuario")}&CveEstatusFactura={e.Row.DBCampo("CveEstatusFactura")}&FechaI={FechaInicial}&FechaF={FechaFinal}&FechaIEjec={FechaIEjec}&FechaFEjec={FechaFEjec}&IVA={e.Row.DBCampo("GPO_IVA")}&CveCorte={ e.Row.DBCampo("CveCorte")}&TipoDocto={ DdlTipoComprobante.GetSelectedValuesM}&CveSubProyectoEjecucion={e.Row.DBCampo("CveSubProyectoEjecucion")}&CveSubProyecto={CveSubProyecto}&CveProyecto={CveProyecto}&TipoCambio={TipoCambio}&TCEspecifico={TCEspecifico}&CveMoneda={CveMoneda}&CveClienteClasificacion={e.Row.DBCampo("CveClienteClasificacion")}&CveCondicionesPago={DdlCondicionesPago.SelectedValue}&TipoCliente={ If(DdlGrupo.SelectedValue.ToEntero = 20, e.Row.DBCampo("TipoCliente"), DdlTipoCliente.SelectedValue)}&ModalidadContable={If(ChkModalidadContable.Checked, 1, 0)}"
e.Row.FCLiteral("LtlGrupo").Text = "" & e.Row.FCLiteral("LtlGrupo").Text & ""
@@ -434,9 +483,9 @@ Partial Class Ventas_RepVentas
End If
End If
- End Sub
+ End Sub
#End Region
-
+
#Region " PERSONALIZAR "
Protected Sub BtnPersonalizar_Click(sender As Object, e As System.EventArgs)
Personaliza()
@@ -519,18 +568,18 @@ Partial Class Ventas_RepVentas
UPDatos.Update()
- End Sub
+ End Sub
#End Region
-
+
#Region " EXCEL "
Protected Sub ImgExcel_Click(sender As Object, e As EventArgs) Handles ImgExcel.Click
'GvDatos.ExportToExcel("ReporteVentas" & Now.ToShortDateString)
GenerarPDF("Excel")
- End Sub
+ End Sub
#End Region
-
+
#Region "PDF"
-
+
Private Sub GenerarPDF(Optional Formato As String = "PDF")
If DtVentas IsNot Nothing Then
Dim StrFiltro As New StringBuilder
@@ -602,10 +651,10 @@ Partial Class Ventas_RepVentas
Response.AppendHeader("Content-Disposition", "attachment; filename=ReporteHP.csv")
Response.Write(Str.ToString)
Context.Response.End()
- End Sub
-
+ End Sub
+
#End Region
-
+
#Region "XML-CONFIGURACIÓN"
Private Sub XmlConf(CveUsuario As Integer, CveModulo As Integer, Values As String(,))
Dim settings As New XmlWriterSettings()
@@ -644,11 +693,11 @@ Partial Class Ventas_RepVentas
{"SucursalEjecuccion", DdlSubProyectoEjecucion.Text.ToString()},
{"Proyecto", DdlProyecto.Text.ToString()}
}
- End Sub
+ End Sub
#End Region
-
+
#Region "GRAFICA"
-
+
Protected Sub LnkVerGrafica_Click(sender As Object, e As EventArgs)
If Not DtVentas IsNot Nothing AndAlso DtVentas.Rows.Count > 0 Then
Alert("No hay datos disponibles", TipoMensaje.MsgAdvertencia)
@@ -778,9 +827,9 @@ Partial Class Ventas_RepVentas
Protected Sub DdlVer_SelectedIndexChanged(sender As Object, e As EventArgs)
CambioGrafica()
- End Sub
-
+ End Sub
+
#End Region
-
-
+
+
End Class