Files
SIG/Inventarios/Equivalencias.aspx.vb
2020-01-02 12:55:04 -07:00

206 lines
7.2 KiB
VB.net

Option Explicit On
Option Strict On
Imports System.Data
Imports Extensiones
Partial Class Inventarios_Equivalencias
Inherits ClsPaginas
#Region "Propiedades"
Public Property DtEquivalencias() As DataTable
Get
Return CType(ViewState("dtEquivalencias"), DataTable)
End Get
Set(value As DataTable)
ViewState("dtEquivalencias") = value
End Set
End Property
#End Region
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
If Not IsPostBack Then
inicializarTabla()
InicializarListas()
btAgregar.Enabled = False
End If
End Sub
#Region " INICIALIZA VALORES "
Private Sub CargaClasificaciones()
DdlClasificacion.DataSource = GlobalDTClasificaciones(UsuarioActual.CveEmpresa)
DdlClasificacion.DataBind()
End Sub
Private Sub InicializarListas()
'Llenar el dropdownlist de unidad de medida
ddlUnidad.DataSource = GlobalDTUnidadesMedida(UsuarioActual.CveEmpresa)
ddlUnidad.DataBind()
'Llenar el dropdownlist de Productosy servicios
ddlProducto.DataSource = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa)
ddlProducto.Items.Insert(0, New ListItem("----", "0"))
CargaClasificaciones()
End Sub
Protected Sub inicializarTabla()
Dim dt As New DataTable
dt.Columns.Add("No")
dt.Columns.Add("Cantidad")
dt.Columns.Add("CveUnidadMedida", Type.GetType("System.Int32"))
dt.Columns.Add("Unidad")
dt.Columns.Add("Precio")
dt.Columns.Add("Base")
Me.gvEquivalencias.DataSource = dt
Me.gvEquivalencias.DataBind()
Me.ViewState("dtEquivalencias") = dt
End Sub
#End Region
Protected Sub DdlClasificacion_SelectedIndexChanged(sender As Object, e As System.EventArgs) Handles DdlClasificacion.SelectedIndexChanged
If DdlClasificacion.SelectedValue = "-1" Then
ddlProducto.DataSource = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa)
ddlProducto.DataBind()
ddlProducto.Items.Insert(0, New ListItem("----", "-1"))
Else
ddlProducto.DataSource = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa, CveClasificacion:=DdlClasificacion.SelectedValue.ToEntero)
ddlProducto.DataBind()
ddlProducto.Items.Insert(0, New ListItem("----", "-1"))
End If
End Sub
Protected Sub ddlProducto_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ddlProducto.SelectedIndexChanged
gvEquivalencias.EditIndex = -1
If ddlProducto.SelectedValue = "0" Then
btAgregar.Enabled = False
Else
btAgregar.Enabled = True
End If
If btAgregar.Text = "Editar" Then
btAgregar.Text = "Agregar"
btCancelar.Visible = False
End If
CargaGV()
UPPEquiv.Update()
End Sub
#Region " AGREGAR "
Protected Sub btAgregar_Click(sender As Object, e As EventArgs) Handles btAgregar.Click
Dim Precio As Double = txtPrecio.Text.ToDouble
Dim CveUnidadMedida As Integer = ddlUnidad.SelectedValue.ToEntero
Dim Cantidad As Decimal = txtCantidad.Text.ToDecimal
Dim psEquivalencias As New ClsProductosServicios
If psEquivalencias.AddPSEquivalencias(ddlProducto.SelectedValue.ToEntero, CveUnidadMedida, Cantidad, False, Precio, 1) Then
txtCantidad.Text = ""
txtPrecio.Text = ""
ddlUnidad.SelectedIndex = -1
Alert("Equivalencia agrega con éxito.", TipoMensaje.MsgInformacion)
End If
psEquivalencias.Dispose()
CargaGV()
UPPEquiv.Update()
RecargaGlobal()
End Sub
#End Region
#Region " GV EQUIVALENCIAS "
Private Sub CargaGV()
Dim equivalencias As New ClsProductosServicios
If equivalencias.GetPSEquivalencias(ddlProducto.SelectedValue.ToEntero, UsuarioActual.CveEmpresa) Then
DtEquivalencias = equivalencias.DtResultados
gvEquivalencias.DataSource = DtEquivalencias
gvEquivalencias.DataBind()
End If
equivalencias.Dispose()
End Sub
Protected Sub gvEquivalencias_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles gvEquivalencias.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If CBool(e.Row.DBCampo("UnidadBase")) = True Then
e.Row.FCLinkButton("imgE").Visible = False
e.Row.FCLinkButton("imgD").Visible = False
End If
End If
End Sub
Protected Sub gvEquivalencias_RowDeleting(sender As Object, e As GridViewDeleteEventArgs) Handles gvEquivalencias.RowDeleting
Dim psEquivalencias As New ClsProductosServicios
Dim CveUnidadMedida As Integer = gvEquivalencias.DataKeys(e.RowIndex)("CveUM").ToString().ToEntero ' dt.Rows(e.RowIndex).Item("CveUnidadMedida")
If psEquivalencias.RemovePSEquivalencias(ddlProducto.SelectedValue.ToEntero, CveUnidadMedida) Then
gvEquivalencias.DataSource = psEquivalencias.DtResultados
DtEquivalencias = psEquivalencias.DtResultados
gvEquivalencias.DataBind()
End If
psEquivalencias.Dispose()
RecargaGlobal()
End Sub
Protected Sub EditRow(ByVal sender As Object, ByVal e As GridViewEditEventArgs) Handles gvEquivalencias.RowEditing
gvEquivalencias.EditIndex = e.NewEditIndex
gvEquivalencias.DataSource = DtEquivalencias
gvEquivalencias.DataBind()
End Sub
Protected Sub CancelEdit(ByVal sender As Object, ByVal e As GridViewCancelEditEventArgs)
gvEquivalencias.EditIndex = -1
gvEquivalencias.DataSource = DtEquivalencias
gvEquivalencias.DataBind()
End Sub
Protected Sub gvEquivalencias_RowUpdating(sender As Object, e As GridViewUpdateEventArgs) Handles gvEquivalencias.RowUpdating
Dim psEquivalencias As New ClsProductosServicios
Dim Mensaje As String = ""
Dim dt As DataTable
Dim cantidad As Decimal = DirectCast(gvEquivalencias.Rows(e.RowIndex).FindControl("txtECantidad"), TextBox).Text.ToDecimal
Dim precio As Double = DirectCast(gvEquivalencias.Rows(e.RowIndex).FindControl("txtEPrecio"), TextBox).Text.ToDouble
Dim CveUnidadMedida As Integer = DtEquivalencias.Rows(e.RowIndex).Item("CveUM").ToString.ToEntero
Dim CvePSE As Integer = ddlProducto.SelectedValue.ToEntero
If psEquivalencias.UpdatePSEquivalencias(CvePSE, CveUnidadMedida, cantidad, False, precio, UsuarioActual.CveUsuario) Then
dt = psEquivalencias.DtResultados
ViewState("dtEquivalencias") = dt
gvEquivalencias.EditIndex = -1
gvEquivalencias.DataSource = dt
gvEquivalencias.DataBind()
End If
psEquivalencias.Dispose()
RecargaGlobal()
End Sub
#End Region
#Region " RECARGA GLOBAL "
Private Sub RecargaGlobal()
'Dim equivalencias As New ClsProductosServicios
'If equivalencias.GetPSEquivalencias(-1, -1) Then
' GlobalDTProductosServiciosEquivalencias(-1, -1) = equivalencias.DtResultados
'End If
'equivalencias.Dispose()
End Sub
#End Region
End Class