Files
SIG/Inventarios/CatAlmacenes.aspx.vb
2024-10-18 14:06:44 -07:00

381 lines
15 KiB
VB.net

Option Explicit On
Imports System.Data
Imports Extensiones
Partial Class Inventarios_CatAlmacenes
Inherits ClsPaginas
#Region " PROPIEDADES"
Private Property DtCuentasContables As Data.DataTable
Get
Return CType(ViewState("DtCuentasContables"), DataTable)
End Get
Set(value As Data.DataTable)
ViewState("DtCuentasContables") = value
End Set
End Property
'Private Property DtSubProyectos As DataTable
' Get
' Return If(IsNothing(ViewState("DtSubProyectos")), Nothing, CType(ViewState("DtSubProyectos"), DataTable))
' End Get
' Set(value As DataTable)
' ViewState("DtSubProyectos") = value
' End Set
'End Property
'Private Property CveSucursal As Integer
' Get
' If ViewState("CveSucursal") Is Nothing Then
' Return -1
' Else
' Return ViewState("CveSucursal").ToString.ToEntero
' End If
' End Get
' Set(value As Integer)
' ViewState("CveSucursal") = value
' End Set
'End Property
#End Region
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
ViewState("Orden") = ""
CargaCuentasContables()
CargaSubProyectos()
CargaTipoAlmacen()
CargaDatos()
CargaUsuarios()
CargaAlmacenVirtual()
End If
End Sub
Public Sub CargaDatos()
Dim ObjAlmacen As New ClsInventarios
If ObjAlmacen.GetAlmacenes(-1, -1, UsuarioActual.CveEmpresa, -1) Then
GvDatos.DataSource = ObjAlmacen.DtResultados
Else
GvDatos.DataSource = Nothing
End If
GvDatos.DataBind()
ObjAlmacen.Dispose()
End Sub
Private Sub CargaAlmacenVirtual()
If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then
divAlmacenesVirtuales.Visible = True
DdlAlmacenesVirtuales.DataSource = GlobalDTAlmacen(UsuarioActual.CveEmpresa, 24)
DdlAlmacenesVirtuales.DataBind()
DdlAlmacenesVirtuales.Items.Insert(0, New ListItem("Seleccione", "-1"))
End If
End Sub
#Region "C O M B O S"
Private Sub CargaSubProyectos()
DdlSubProyecto.DataSource = GlobalDTSubProyectos(UsuarioActual.CveEmpresa)
DdlSubProyectoFiltro.DataSource = GlobalDTSubProyectos(UsuarioActual.CveEmpresa)
DdlSubProyectoFiltro.DataBind()
DdlSubProyecto.DataBind()
End Sub
Private Sub CargaTipoAlmacen()
DdlTipoAlmacen.DataSource = GlobalDTTipoAlmacen(-1)
DdlTipoAlmacenFiltro.DataSource = GlobalDTTipoAlmacen(-1)
DdlTipoAlmacenFiltro.DataBind()
DdlTipoAlmacen.DataBind()
If UsuarioActual.Empresa.Funcionalidad(578) = "1" Then
DdlTipoAlmacen.SelectedValueExist("4") ' tipo consignación por default
End If
End Sub
Private Sub CargaUsuarios()
Dim DT As DataTable = GlobalDTUsuarios(-1, UsuarioActual.CveEmpresa).FiltraParametros(" Estatus = 1 ").Copy
DT.DefaultView.Sort = "Nombre ASC"
DT = DT.DefaultView.ToTable
DdlUsuariosAutoriza.DataSource = DT
DdlUsuariosAutoriza.DataBind()
DdlUsuariosAutoriza.Items.Insert(0, New ListItem("Seleccione uno", "-1"))
End Sub
Private Sub CargaCuentasContables()
If UsuarioActual.Empresa.TipoContabilizacion = 1 Then
divCuentasCompac.Visible = False
pnlCuentassig.Visible = True
Using ObjContabilidad As New ClsContabilidad
'UsuarioActual.Empresa.Funcionalidad(208).ToEntero
If ObjContabilidad.GetCuentas(-1, "-1", 1, UsuarioActual.CveEmpresa) Then
DdlCuentasSig.DataSource = ObjContabilidad.DtResultados
DdlCuentasSig.DataBind()
DdlCuentasSig.Items.Insert(0, New ListItem("Selecione", "-1"))
End If
End Using
Else
If UsuarioActual.Empresa.TipoContabilidad = 2 Then
divCuentasCompac.Visible = True
pnlCuentassig.Visible = False
Using ObjContabilidad As New ClsContPAQi(UsuarioActual.Empresa)
'UsuarioActual.Empresa.Funcionalidad(208).ToEntero
If ObjContabilidad.GetCuentasRecursiva(UsuarioActual.Empresa.Funcionalidad(208).ToEntero, 1) Then
DtCuentasContables = ObjContabilidad.DtResultados
Else
DtCuentasContables = Nothing
End If
End Using
DdlCuentasContables.DataSource = DtCuentasContables
DdlCuentasContables.DataBind()
End If
End If
UpAddAlmacen.Update()
End Sub
#End Region
#Region "G V D A T O S"
Protected Sub GvDatos_RowDataBound(ByVal sender As Object, ByVal e As GridViewRowEventArgs) Handles GvDatos.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
'If e.Row.RowIndex <= 1 Then
' e.Row.Cells(0).Width = Unit.Pixel(230)
' e.Row.Cells(1).Width = Unit.Pixel(170)
' e.Row.Cells(2).Width = Unit.Pixel(170)
' e.Row.Cells(3).Width = Unit.Pixel(100)
' e.Row.Cells(4).Width = Unit.Pixel(100)
' e.Row.Cells(5).Width = Unit.Pixel(65)
' e.Row.Cells(6).Width = Unit.Pixel(65)
' e.Row.Cells(7).Width = Unit.Pixel(65)
'End If
If e.Row.RowState = DataControlRowState.Alternate OrElse e.Row.RowState = DataControlRowState.Normal Then
'e.Row.Cells(0).HorizontalAlign = HorizontalAlign.Left
'e.Row.Cells(1).HorizontalAlign = HorizontalAlign.Center
'e.Row.Cells(2).HorizontalAlign = HorizontalAlign.Center
'e.Row.Cells(3).HorizontalAlign = HorizontalAlign.Center
'e.Row.Cells(4).HorizontalAlign = HorizontalAlign.Center
'e.Row.Cells(5).HorizontalAlign = HorizontalAlign.Center
'e.Row.Cells(6).HorizontalAlign = HorizontalAlign.Center
'e.Row.Cells(7).HorizontalAlign = HorizontalAlign.Center
End If
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.FCLiteral("LtlInventariable").Text = "True" Then
e.Row.FCLiteral("LtlInventariable").Text = "Si"
Else
e.Row.FCLiteral("LtlInventariable").Text = "No"
End If
End If
'Cargar Combos al Editar
If e.Row.RowState = DataControlRowState.Edit OrElse e.Row.RowState = 5 Then
'e.Row.FCDropDownList("DdlSucursal").DataSource = GlobalDTSucursales.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
'e.Row.FCDropDownList("DdlSucursal").DataBind()
'e.Row.FCDropDownList("DdlSucursal").SelectedValue = e.Row.DBCampo("CveSucursal")
e.Row.FCDropDownList("DdlTipoAlmacen").DataSource = GlobalDTTipoAlmacen(-1)
e.Row.FCDropDownList("DdlTipoAlmacen").DataBind()
e.Row.FCDropDownList("DdlTipoAlmacen").SelectedValue = e.Row.DBCampo("CveTipoAlmacen")
'e.Row.FCDropDownList("DdlModalidad").DataSource =
'e.Row.FCDropDownList("DdlModalidad").DataBind()
e.Row.FCDropDownList("DdlModalidad").Items.Add(New ListItem("Solo Existencia", "0"))
e.Row.FCDropDownList("DdlModalidad").Items.Add(New ListItem("Contable", "1"))
e.Row.FCDropDownList("DdlModalidad").SelectedValue = If(e.Row.DBCampo("Modalidad").ToString = "Contable", "1", "0")
End If
End If
End Sub
#End Region
#Region "O R D E N A M I E N T O"
'Private Sub OrdenaDatos()
' If (GvDatos.Rows.Count > 0) Then
' GvDatos.UseAccessibleHeader = True
' GvDatos.HeaderRow.TableSection = TableRowSection.TableHeader
' RegistraScript("OrdenarGV();")
' End If
'End Sub
#End Region
Private Sub RecargaGlobalAlmacenes()
GlobalDTAlmacen(UsuarioActual.CveEmpresa) = Nothing
'Dim ObjAlmacen As New ClsInventarios
'If ObjAlmacen.GetAlmacenes(-1, -1, -1, -1) Then
' Application("GlobalDTAlmacen") = ObjAlmacen.DtResultados
'End If
'ObjAlmacen.Dispose()
End Sub
Private Sub RecargaGlobalAlmacenesUsuarios()
GlobalDTAlmacenUsuarios(-1, UsuarioActual.CveEmpresa) = Nothing
End Sub
'Private Sub CargaSucursal()
' DtSubProyectos = GlobalDTSubProyectos(UsuarioActual.CveEmpresa).FiltraParametros("CveSubProyecto =" & DdlSubProyecto.SelectedValue.ToEntero)
' Dim dr As DataRow
' dr = DtSubProyectos(0)
' CveSucursal = dr("CveSucursal").ToString.ToEntero
'End Sub
Private Sub BtnAgregarAlmacen_Click(sender As Object, e As EventArgs) Handles BtnAgregarAlmacen.Click
'CargaSucursal()
Dim ObjAlmacen As New ClsInventarios
Dim TieneError As Boolean = False
Dim Estatus As Boolean = False
If ChkEstatus.Checked Then Estatus = True
Dim CuentaContable As Integer = 0
Dim CveCuenta As Integer = 0
If pnlCuentassig.Visible Then
CveCuenta = DdlCuentasSig.SelectedValue.ToEntero()
End If
If divCuentasCompac.Visible Then
CuentaContable = DdlCuentasContables.SelectedValue.ToEntero()
End If
If HdnModalidad.Value = "A" Then
If ObjAlmacen.AddAlmacen(TxtAlmacen.Text.Trim, DdlTipoAlmacen.SelectedValue.ToEntero, DdlModalidad.SelectedValue.ToEntero, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa,
CByte(DdlInventariable.SelectedValue), DdlSubProyecto.SelectedValue.ToEntero, TxtOrden.Text.ToEntero, CveCuenta, CveUsuarioAutoriza:=DdlUsuariosAutoriza.SelectedValue.ToEntero,
CveAlmacenVirtual:=DdlAlmacenesVirtuales.SelectedValue.ToEntero()) Then
Alert("El nuevo Almacen se guardó correctamente.", TipoMensaje.MsgInformacion)
UpDatos.Update()
ViewState("DTAlmacenes") = ObjAlmacen.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
RegistraScript(String.Format("$('#{0}').modal('hide');", "divAddAlmacen"))
CargaDatos()
'OrdenaDatos()
Else
TieneError = True
End If
ElseIf ObjAlmacen.UpdateAlmacen(TxtAlmacen.Text.Trim, DdlTipoAlmacen.SelectedValue.ToEntero, DdlModalidad.SelectedValue.ToEntero, Estatus, HdnID.Value.ToEntero, CByte(DdlInventariable.SelectedValue), DdlSubProyecto.SelectedValue.ToEntero, UsuarioActual.CveEmpresa, TxtOrden.Text.ToEntero, CveCuenta, CveUsuarioAutoriza:=DdlUsuariosAutoriza.SelectedValue.ToEntero, CveAlmacenVirtual:=DdlAlmacenesVirtuales.SelectedValue.ToEntero) Then
Alert("El Almacen se actualizo correctamente.", TipoMensaje.MsgInformacion)
UpDatos.Update()
ViewState("DTAlmacenes") = ObjAlmacen.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
RegistraScript(String.Format("$('#{0}').modal('hide');", "divAddAlmacen"))
CargaDatos()
'OrdenaDatos()
End If
ObjAlmacen.Dispose()
RecargaGlobalAlmacenes()
RecargaGlobalAlmacenesUsuarios()
End Sub
Public Sub Agregar()
HdnModalidad.Value = "A"
UpDatos.Update()
If DdlModalidad.SelectedValue.ToEntero = 1 Then
DdlCuentasContables.Visible = True
End If
BtnAgregarAlmacen.Text = "Agregar"
myModalLabel.InnerText = "Agregar Almacén"
TxtAlmacen.Text = ""
TxtOrden.Text = ""
ChkEstatus.Checked = True
divEstatus.Visible = False
DdlUsuariosAutoriza.SelectedValueExist("-1")
DdlAlmacenesVirtuales.SelectedValue = "-1"
UpAddAlmacen.Update()
RegistraScript(String.Format("$('#{0}').modal('show');", "divAddAlmacen"))
End Sub
Public Sub Delete_Click(sender As Object, e As EventArgs)
Dim ObjInv As New ClsInventarios()
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
HdnID.Value = GvRow.DataKey("CveAlmacen")
UpDatos.Update()
If ObjInv.RemoveAlmacen(HdnID.Value.ToEntero) Then
CargaDatos()
End If
Alert("Eliminado Correctamente.", TipoMensaje.MsgInformacion)
ObjInv.Dispose()
UpDatos.Update()
End Sub
Public Sub Edit_Click(sender As Object, e As EventArgs)
Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
HdnModalidad.Value = "U"
HdnID.Value = GvRow.DataKey("CveAlmacen")
UpDatos.Update()
BtnAgregarAlmacen.Text = "Actualizar"
myModalLabel.InnerText = "Actualizar Almacén"
DdlInventariable.SelectedValueExist(If((GvRow.DataKey("Inventariable")) = "True", 1, 0))
DdlModalidad.SelectedValueExist(If((GvRow.DataKey("Modalidad")) = "Solo Existencia", 0, 1))
divddlcc.Visible = If((DdlModalidad.SelectedValue.ToEntero) = 1, True, False)
DdlCuentasSig.SelectedValueExist(-1)
DdlCuentasSig.SelectedValueExist(GvRow.DataKey("CveCuenta"))
DdlSubProyecto.SelectedValueExist(GvRow.DataKey("CveSubProyecto"))
DdlTipoAlmacen.SelectedValueExist(GvRow.DataKey("CveTipoAlmacen"))
TxtAlmacen.Text = GvRow.DataKey("Almacen")
TxtOrden.Text = GvRow.DataKey("Orden")
DdlUsuariosAutoriza.SelectedValueExist(If(GvRow.DataKey("CveUsuarioAutoriza").ToEntero > 0, GvRow.DataKey("CveUsuarioAutoriza"), "-1"))
DdlAlmacenesVirtuales.SelectedValueExist(GvRow.DataKey("CveAlmacenVirtual"))
divEstatus.Visible = True
ChkEstatus.Checked = If((GvRow.DataKey("Estatus")) = "Activo", True, False)
UpAddAlmacen.Update()
RegistraScript(String.Format("$('#{0}').modal('show');", "divAddAlmacen"))
End Sub
Private Sub LnkAlmacen_Click(sender As Object, e As EventArgs) Handles LnkAlmacen.Click
Agregar()
End Sub
Private Sub DdlModalidad_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlModalidad.SelectedIndexChanged
If DdlModalidad.SelectedValue.ToEntero = 1 Then
divddlcc.Visible = True
CargaCuentasContables()
Else
divddlcc.Visible = False
End If
UpAddAlmacen.Update()
End Sub
Private Sub BtnConsultar_Click(sender As Object, e As EventArgs) Handles BtnConsultar.Click
Dim ObjAlmacen As New ClsInventarios
If ObjAlmacen.GetAlmacenes(DdlTipoAlmacenFiltro.SelectedValue.ToEntero, DdlModalidadFiltro.SelectedValue.ToEntero, UsuarioActual.CveEmpresa, DdlSubProyectoFiltro.SelectedValue.ToEntero) Then
GvDatos.DataSource = ObjAlmacen.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
GvDatos.DataBind()
Else
GvDatos.DataSource = Nothing
End If
ObjAlmacen.Dispose()
UpDatos.Update()
'OrdenaDatos()
End Sub
End Class