Files
SIG/AC/PresupuestoEgresos.aspx.vb
JORGE LUIS CAUDILLO ESPARZA c35cf91883 Commit inicial Ventas Productivo
2019-08-14 16:40:54 -07:00

299 lines
14 KiB
VB.net

Option Explicit On
Option Strict On
Imports System.Data
Imports System.Linq
Imports Extensiones
Partial Class AC_PresupuestoEgresos2
Inherits ClsPaginas
#Region "PROPIEDADES"
Private Property CvePresupuestoEgresos As Integer
Get
CvePresupuestoEgresos = ViewState("CvePresupuestoEgresos").ToString.ToEntero
End Get
Set(value As Integer)
ViewState("CvePresupuestoEgresos") = value
End Set
End Property
Private Property EsProyecto As Integer
Get
EsProyecto = ViewState("EsProyecto").ToString.ToEntero
End Get
Set(value As Integer)
ViewState("EsProyecto") = value
End Set
End Property
Private Property Bloqueado As Integer
Get
Bloqueado = ViewState("Bloqueado").ToString.ToEntero
End Get
Set(value As Integer)
ViewState("Bloqueado") = value
End Set
End Property
#End Region
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
CvePresupuestoEgresos = IfNull(Request("CvePresupuestoEgresos"), "0").ToString.ToEntero
EsProyecto = IfNull(Request("EsProyecto"), "1").ToString.ToEntero
Bloqueado = IfNull(Request("Bloqueado"), "0").ToString.ToEntero
CargaDefault()
If CvePresupuestoEgresos > 0 Then
CargaDatos()
End If
If Bloqueado = 1 Then
btnGuardar.Visible = False
btnDividir.Visible = False
CboProgramaOperativo.Enabled = False
CboFuenteFinanciamiento.Enabled = False
CboTipoGasto.Enabled = False
CboUnidadAdministrativa.Enabled = False
CboClasificacionOG.Enabled = False
DdlEjercicio.Enabled = False
txtTotal.Enabled = False
txtEnero.Enabled = False
txtFebrero.Enabled = False
txtMarzo.Enabled = False
txtAbril.Enabled = False
txtMayo.Enabled = False
txtJunio.Enabled = False
txtJulio.Enabled = False
txtAgosto.Enabled = False
txtSeptiembre.Enabled = False
txtOctubre.Enabled = False
txtNoviembre.Enabled = False
txtDiciembre.Enabled = False
BtnCancelar.Text = "Regresar"
If EsProyecto = 0 Then
Alert("Este Anteproyecto ya se genero como Presupuesto.", TipoMensaje.MsgInformacion)
Else
Alert("Este Presupuesto ya se Autorizó.", TipoMensaje.MsgInformacion)
End If
End If
End If
End Sub
#Region " VALORES INICIALES "
Private Sub CargaDefault()
txtEnero.Attributes.Add("onKeyUp", "sumaTotal();")
txtFebrero.Attributes.Add("onKeyUp", "sumaTotal();")
txtMarzo.Attributes.Add("onKeyUp", "sumaTotal();")
txtAbril.Attributes.Add("onKeyUp", "sumaTotal();")
txtMayo.Attributes.Add("onKeyUp", "sumaTotal();")
txtJunio.Attributes.Add("onKeyUp", "sumaTotal();")
txtJulio.Attributes.Add("onKeyUp", "sumaTotal();")
txtAgosto.Attributes.Add("onKeyUp", "sumaTotal();")
txtSeptiembre.Attributes.Add("onKeyUp", "sumaTotal();")
txtOctubre.Attributes.Add("onKeyUp", "sumaTotal();")
txtNoviembre.Attributes.Add("onKeyUp", "sumaTotal();")
txtDiciembre.Attributes.Add("onKeyUp", "sumaTotal();")
CargaEjercicios()
CargaProgramaOperativo()
CargaFuenteFinanciamiento()
CargaTipoGasto()
CargaUnidadAdministrativa()
CargaClasificacionOG()
End Sub
#Region "COMBOS"
Private Sub CargaEjercicios()
Dim ClsConta As New ClsContPAQi(UsuarioActual.Empresa)
If ClsConta.GetEjercicios() Then
DdlEjercicio.DataSource = ClsConta.DtResultados
Else
DdlEjercicio.DataSource = Nothing
End If
ClsConta.Dispose()
DdlEjercicio.DataBind()
DdlEjercicio.SelectedValueExist(UsuarioActual.Empresa.EjercicioActual.ToString)
End Sub
Private Sub CargaProgramaOperativo()
CboProgramaOperativo.Items.Clear()
CboProgramaOperativo.DataSource = GlobalDTAC_ProgramaOperativo(UsuarioActual.CveEmpresa).FiltraParametros(String.Format("Ejercicio = {0} AND Bloqueado = 1", DdlEjercicio.SelectedValue.ToEntero))
CboProgramaOperativo.DataBind()
CboProgramaOperativo.Items.Insert(0, New ListItem("Seleccione", "-1"))
End Sub
Private Sub CargaFuenteFinanciamiento()
CboFuenteFinanciamiento.DataSource = GlobalDTAC_FuentesFinanciamiento(UsuarioActual.CveEmpresa)
CboFuenteFinanciamiento.DataBind()
CboFuenteFinanciamiento.Items.Insert(0, New ListItem("Seleccione", "-1"))
End Sub
Private Sub CargaTipoGasto()
CboTipoGasto.DataSource = GlobalDTAC_TipoGasto
CboTipoGasto.DataBind()
CboTipoGasto.Items.Insert(0, New ListItem("Seleccione", "-1"))
End Sub
Private Sub CargaUnidadAdministrativa()
CboUnidadAdministrativa.DataSource = GlobalDTAC_UnidadesAdministrativas(UsuarioActual.CveEmpresa)
CboUnidadAdministrativa.DataBind()
CboUnidadAdministrativa.Items.Insert(0, New ListItem("Seleccione", "-1"))
End Sub
Private Sub CargaClasificacionOG()
Dim Filtro As New StringBuilder
Filtro.AppendFormat("Afectable = {0}", "True")
CboClasificacionOG.DataSource = GlobalDTACClasificadorObjetoGasto(UsuarioActual.CveEmpresa).FiltraParametros(Filtro.ToString, "CodigoClasificacion")
CboClasificacionOG.DataBind()
CboClasificacionOG.Items.Insert(0, New ListItem("Seleccione", "-1"))
End Sub
#End Region
#End Region
Protected Sub DdlEjercicio_SelectedIndexChanged(sender As Object, e As EventArgs)
CargaProgramaOperativo()
End Sub
Public Sub CargaDatos()
Dim objAC As New ClsAC
If objAC.GetPresupuestoEgresos(CvePresupuestoEgresos, CBool(EsProyecto), -1, UsuarioActual.CveEmpresa) Then
If objAC.DtResultados.Rows.Count = 1 Then
DdlEjercicio.SelectedValue = objAC.DtResultados.Rows(0)("Ejercicio").ToString
CargaProgramaOperativo()
CboProgramaOperativo.SelectedValue = objAC.DtResultados.Rows(0)("CveProgramaOperativo").ToString
CboFuenteFinanciamiento.SelectedValue = objAC.DtResultados.Rows(0)("CveFuenteFinanciamiento").ToString
CboTipoGasto.SelectedValue = objAC.DtResultados.Rows(0)("CveTipoGasto").ToString
CboUnidadAdministrativa.SelectedValue = objAC.DtResultados.Rows(0)("CveUnidadAdministrativa").ToString
CboClasificacionOG.SelectedValue = objAC.DtResultados.Rows(0)("CveClasificacion").ToString
txtTotal.Text = objAC.DtResultados.Rows(0)("Total").ToString.FormatoNumero
txtEnero.Text = objAC.DtResultados.Rows(0)("Enero").ToString.FormatoNumero
txtFebrero.Text = objAC.DtResultados.Rows(0)("Febrero").ToString.FormatoNumero
txtMarzo.Text = objAC.DtResultados.Rows(0)("Marzo").ToString.FormatoNumero
txtAbril.Text = objAC.DtResultados.Rows(0)("Abril").ToString.FormatoNumero
txtMayo.Text = objAC.DtResultados.Rows(0)("Mayo").ToString.FormatoNumero
txtJunio.Text = objAC.DtResultados.Rows(0)("Junio").ToString.FormatoNumero
txtJulio.Text = objAC.DtResultados.Rows(0)("Julio").ToString.FormatoNumero
txtAgosto.Text = objAC.DtResultados.Rows(0)("Agosto").ToString.FormatoNumero
txtSeptiembre.Text = objAC.DtResultados.Rows(0)("Septiembre").ToString.FormatoNumero
txtOctubre.Text = objAC.DtResultados.Rows(0)("Octubre").ToString.FormatoNumero
txtNoviembre.Text = objAC.DtResultados.Rows(0)("Noviembre").ToString.FormatoNumero
txtDiciembre.Text = objAC.DtResultados.Rows(0)("Diciembre").ToString.FormatoNumero
End If
End If
objAC.Dispose()
End Sub
Protected Sub btnGuardar_Click(sender As Object, e As EventArgs) Handles btnGuardar.Click
Dim objAC As New ClsAC()
'Valida Ejercicio
If objAC.GetEjerciciosPresupuestoEgresos(UsuarioActual.CveEmpresa) AndAlso objAC.DtResultados.Rows.Count > -1 Then
Dim DtEjercicios = objAC.DtResultados.FiltraParametros(String.Format("Ejercicio = {0}", DdlEjercicio.SelectedValue))
If DtEjercicios.Rows.Count > 0 AndAlso DtEjercicios.Rows(0)("Bloqueado").ToString = "1" AndAlso txtTotal.Text.ToDecimal > 0 Then
Alert("El Presupuesto de Egresos del ejercicio seleccionado ya esta bloqueado, solo puede generar Presupuestos en ceros.", TipoMensaje.MsgAdvertencia)
objAC.Dispose()
Exit Sub
End If
Else
Alert("Ocurrió un error al verificar el Ejercicio. Por favor vuelva a intentar.", TipoMensaje.MsgError)
objAC.Dispose()
Exit Sub
End If
Dim Total As Double = txtTotal.Text.ToDouble
Dim Enero As Double = txtEnero.Text.ToDouble
Dim Febrero As Double = txtFebrero.Text.ToDouble
Dim Marzo As Double = txtMarzo.Text.ToDouble
Dim Abril As Double = txtAbril.Text.ToDouble
Dim Mayo As Double = txtMayo.Text.ToDouble
Dim Junio As Double = txtJunio.Text.ToDouble
Dim Julio As Double = txtJulio.Text.ToDouble
Dim Agosto As Double = txtAgosto.Text.ToDouble
Dim Septiembre As Double = txtSeptiembre.Text.ToDouble
Dim Octubre As Double = txtOctubre.Text.ToDouble
Dim Noviembre As Double = txtNoviembre.Text.ToDouble
Dim Diciembre As Double = txtDiciembre.Text.ToDouble
' Dim Ejercicio As Integer = 2015
Dim CveProgramaOperativo As Integer = CboProgramaOperativo.SelectedValue.ToString.ToEntero
Dim CveFuenteFinanciamiento As Integer = CboFuenteFinanciamiento.SelectedValue.ToString.ToEntero
Dim CveTipoGasto As Integer = CboTipoGasto.SelectedValue.ToString.ToEntero
Dim CveUnidadAdministrativa As Integer = CboUnidadAdministrativa.SelectedValue.ToString.ToEntero
Dim CveClasificacionOG As Integer = CboClasificacionOG.SelectedValue.ToString.ToEntero
If CvePresupuestoEgresos = 0 Then
If objAC.AddPresupuestoEgresos(DdlEjercicio.SelectedValue.ToEntero, CveProgramaOperativo, CveFuenteFinanciamiento, CveTipoGasto, CveUnidadAdministrativa, CveClasificacionOG, Total, Enero, Febrero, Marzo, Abril, Mayo, Junio, Julio, Agosto, Septiembre, Octubre, Noviembre, Diciembre, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) > 0 Then
Alert("El Presupuesto de Egreso se guardo Correctamente como Anteproyecto", TipoMensaje.MsgInformacion) '"document.location.href=""/AC/CatPresupuestoEgresos.aspx"""
Limpia()
End If
Else
If objAC.UpdatePresupuestoEgresos(CvePresupuestoEgresos, CveProgramaOperativo, CveFuenteFinanciamiento, CveTipoGasto, CveUnidadAdministrativa, CveClasificacionOG, Total, Enero, Febrero, Marzo, Abril, Mayo, Junio, Julio, Agosto, Septiembre, Octubre, Noviembre, Diciembre) Then
Alert("El Presupuesto de Egreso se actualizo Correctamente", TipoMensaje.MsgInformacion, "document.location.href=""/AC/CatPresupuestoEgresos.aspx""")
End If
End If
objAC.Dispose()
End Sub
Private Sub Limpia()
txtTotal.Text = ""
txtEnero.Text = ""
txtFebrero.Text = ""
txtMarzo.Text = ""
txtAbril.Text = ""
txtMayo.Text = ""
txtJunio.Text = ""
txtJulio.Text = ""
txtAgosto.Text = ""
txtSeptiembre.Text = ""
txtOctubre.Text = ""
txtNoviembre.Text = ""
txtDiciembre.Text = ""
CboClasificacionOG.SelectedValue = "-1"
End Sub
Protected Sub BtnProyecto_Click(sender As Object, e As EventArgs)
Dim AC As New ClsAC
Dim Total As Double = txtTotal.Text.ToDouble
Dim Enero As Double = txtEnero.Text.ToDouble
Dim Febrero As Double = txtFebrero.Text.ToDouble
Dim Marzo As Double = txtMarzo.Text.ToDouble
Dim Abril As Double = txtAbril.Text.ToDouble
Dim Mayo As Double = txtMayo.Text.ToDouble
Dim Junio As Double = txtJunio.Text.ToDouble
Dim Julio As Double = txtJulio.Text.ToDouble
Dim Agosto As Double = txtAgosto.Text.ToDouble
Dim Septiembre As Double = txtSeptiembre.Text.ToDouble
Dim Octubre As Double = txtOctubre.Text.ToDouble
Dim Noviembre As Double = txtNoviembre.Text.ToDouble
Dim Diciembre As Double = txtDiciembre.Text.ToDouble
'Dim Ejercicio As Integer = 2015
Dim CveProgramaOperativo As Integer = CboProgramaOperativo.SelectedValue.ToString.ToEntero
Dim CveFuenteFinanciamiento As Integer = CboFuenteFinanciamiento.SelectedValue.ToString.ToEntero
Dim CveTipoGasto As Integer = CboTipoGasto.SelectedValue.ToString.ToEntero
Dim CveUnidadAdministrativa As Integer = CboUnidadAdministrativa.SelectedValue.ToString.ToEntero
Dim CveClasificacionOG As Integer = CboClasificacionOG.SelectedValue.ToString.ToEntero
If CvePresupuestoEgresos > 0 Then
If AC.ProyectoPresupuestoEgresos(DdlEjercicio.SelectedValue.ToEntero, CveProgramaOperativo, CveFuenteFinanciamiento, CveTipoGasto, CveUnidadAdministrativa, CveClasificacionOG, Total, Enero, Febrero, Marzo, Abril, Mayo, Junio, Julio, Agosto, Septiembre, Octubre, Noviembre, Diciembre, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CvePresupuestoEgresos) Then
Alert("El Presupuesto de Egreso se ACTUALIZO Correctamente como PROYECTO", TipoMensaje.MsgInformacion, "document.location.href=""/AC/CatPresupuestoEgresos.aspx""")
End If
Else
Alert("ERROR", TipoMensaje.MsgError)
End If
End Sub
End Class