Files
SIG/Ventas/CatPromociones.aspx.vb

151 lines
4.5 KiB
VB.net

Option Explicit On
Option Strict On
Imports System.Data
Imports Extensiones
Partial Class Ventas_CatPromociones
Inherits ClsPaginas
#Region " PROPIEDADES "
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
#End Region
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
If UsuarioActual.TienePermisoProceso(386) Then
LnkAccInactivar.Visible = True
End If
InicializaControles()
OcultarMostrarInactivar(True)
CargaDatos()
End If
End Sub
Private Sub InicializaControles()
CargarCentrosDeCosto(Nothing, Nothing, Nothing, LblSubProyecto)
GvDatos.Columns(7).HeaderText = LblSubProyecto.Text
DdlSubProyecto.DataSource = GlobalDTSubProyectosUsuarios(UsuarioActual.CveUsuario, -1, UsuarioActual.CveEmpresa)
DdlSubProyecto.DataBind()
DdlSubProyecto.Items.Insert(0, New ListItem("Todos", "-1"))
DdlVendedor.DataSource = GlobalDTVendedores(UsuarioActual.CveEmpresa)
DdlVendedor.DataBind()
DdlVendedor.Items.Insert(0, New ListItem("Todos", "-1"))
Dim ObjPS As New ClsProductosServicios
If ObjPS.GetMarcas(UsuarioActual.CveEmpresa) Then
DdlMarca.DataSource = ObjPS.DtResultados
End If
ObjPS.Dispose()
DdlMarca.DataBind()
DdlMarca.Items.Insert(0, New ListItem("Todos", "-1"))
DdlClientes.setEsWebService(True)
'CARGA PS
DdlPS.setEsWebService(UsuarioActual.Empresa.Funcionalidad(105) = "1")
DdlPS.IncluyeTodos = True
If Not DdlPS.UsaWebService AndAlso CType(DdlPS.DataSource, DataTable) Is Nothing Then
DdlPS.DataSource = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa)
DdlPS.DataBind()
End If
End Sub
Private Sub CargaDatos()
Dim ObjVentas As New ClsVentas
Dim CveCliente As Integer = If(DdlClientes.SelectedValue.ToEntero > 0, DdlClientes.SelectedValue.ToEntero, -1)
Dim CvePS As Integer = If(DdlPS.SelectedValue.ToEntero > 0, DdlPS.SelectedValue.ToEntero, -1)
If ObjVentas.GetPromociones(-1, MinFecha, DdlVendedor.SelectedValue.ToEntero, CveCliente, DdlEstatus.SelectedValue.ToEntero, UsuarioActual.CveEmpresa, DdlSubProyecto.SelectedValue.ToEntero, CveUsuario:=UsuarioActual.CveUsuario,
CveMarca:=DdlMarca.SelectedValue.ToEntero, CvePS:=CvePS) Then
DtDatos = ObjVentas.DtResultados
Else
DtDatos = Nothing
Alert("Ocurrio un error al cargar las promociones. Por favor vuelva a intentar.", TipoMensaje.MsgError)
End If
If DtDatos IsNot Nothing Then
CargaGrid()
End If
End Sub
Private Sub CargaGrid()
GvDatos.DataSource = DtDatos
GvDatos.DataBind()
UpDatos.Update()
End Sub
Protected Sub BtnConsultar_Click(sender As Object, e As EventArgs)
CargaDatos()
End Sub
Protected Sub LnkAccInactivar_Click(sender As Object, e As EventArgs)
OcultarMostrarInactivar(True)
End Sub
Private Sub OcultarMostrarInactivar(Mostrar As Boolean)
GvDatos.Columns(0).Visible = Mostrar
LnkInactivar.Visible = Mostrar
UpInactivar.Update()
UpDatos.Update()
End Sub
Protected Sub LnkInactivar_Click(sender As Object, e As EventArgs)
Dim ObjVentas As New ClsVentas
ObjVentas.IniciaTransacSQL()
Dim ErrorProceo As Boolean = False
Dim ContInactivadas As Integer = 0
For Each GvRow As GridViewRow In GvDatos.Rows
Dim Chk As CheckBox = GvRow.FCCheckBox("chk")
Dim CvePromocion As Integer = GvRow.DataKey("CvePromocion").ToEntero
If Chk.Checked Then
If ObjVentas.UpdatePromocionEstatus(CvePromocion, False, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
ContInactivadas = ContInactivadas + 1
Else
ErrorProceo = True
Exit Sub
End If
End If
Next
If ErrorProceo Then
ObjVentas.RollBack()
Else
ObjVentas.Commit()
Alert($"Se inactivaron {ContInactivadas} promociones.")
OcultarMostrarInactivar(False)
End If
ObjVentas.Dispose()
End Sub
End Class