Option Explicit On Option Strict On Imports Extensiones Partial Class AC_ProgramaOperativo Inherits ClsPaginas #Region "PROPIEDADES" Private Property CveProgramaOperativo As Integer Get CveProgramaOperativo = ViewState("CveProgramaOperativo").ToString.ToEntero End Get Set(value As Integer) ViewState("CveProgramaOperativo") = 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 EventArgs) Handles Me.Load If Not Page.IsPostBack Then CveProgramaOperativo = IfNull(Request("CveProgramaOperativo"), "0").ToString.ToEntero EsProyecto = IfNull(Request("EsProyecto"), "1").ToString.ToEntero Bloqueado = IfNull(Request("Bloqueado"), "0").ToString.ToEntero CargaDefault() If CveProgramaOperativo > 0 Then CargaDatos() ElseIf CveProgramaOperativo = 0 Then 'BtnProyecto.Visible = False End If If Bloqueado = 1 Then btnGuardar.Visible = False 'BtnProyecto.Visible = False btnDividir.Visible = False CboClasificacionAdministrativa.Enabled = False CboClasificacionFuncional.Enabled = False CboClasificacionGeografica.Enabled = False CboEjeRector.Enabled = False CboEstrategia.Enabled = False CboLineaAccion.Enabled = False CboMeta.Enabled = False CboPrograma.Enabled = False CboProgramaCONAC.Enabled = False CboUM.Enabled = False DdlEjercicio.Enabled = False txtClave.Enabled = False txtProgramaOperativo.Enabled = False txtProblematica.Enabled = False txtCausa.Enabled = False txtEfecto.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 PROYECTO. Nota: Solo se pueden ver los datos", TipoMensaje.MsgInformacion) Else Alert("Este PROYECTO ya se AUTORIZO. Nota: Solo se pueden ver los datos", TipoMensaje.MsgInformacion) End If End If If EsProyecto = 1 Then 'BtnProyecto.Text = "Bloquear Proyecto" End If End If End Sub #Region " VALORES INICIALES " Private Sub CargaDefault() LblEjercicio.Text = String.Format("Periodo: {0}", UsuarioActual.Empresa.EjercicioActual) 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() CargaProgramaCONAC() CargaClasificacionGeografica() CargaClasificacionFuncional() CargaClasificacionAdministrativa() CargaUM() CargaEjeRector() 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 CargaProgramaCONAC() CboProgramaCONAC.DataSource = GlobalDTAC_ProgramasCONAC CboProgramaCONAC.DataBind() CboProgramaCONAC.Items.Insert(0, New ListItem("Seleccione", "-1")) End Sub Private Sub CargaClasificacionGeografica() CboClasificacionGeografica.DataSource = GlobalDTAC_ClasificacionGeografica(UsuarioActual.CveEmpresa) CboClasificacionGeografica.DataBind() CboClasificacionGeografica.Items.Insert(0, New ListItem("Seleccione", "-1")) End Sub Private Sub CargaClasificacionFuncional() CboClasificacionFuncional.DataSource = GlobalDTAC_ClasificacionFuncional(UsuarioActual.CveEmpresa).FiltraParametros("", "CodClasificacionFuncional") CboClasificacionFuncional.DataBind() CboClasificacionFuncional.Items.Insert(0, New ListItem("Seleccione", "-1")) End Sub Private Sub CargaClasificacionAdministrativa() CboClasificacionAdministrativa.DataSource = GlobalDTAC_ClasificacionAdministrativa(UsuarioActual.CveEmpresa) CboClasificacionAdministrativa.DataBind() CboClasificacionAdministrativa.Items.Insert(0, New ListItem("Seleccione", "-1")) End Sub Private Sub CargaEjeRector() CboEjeRector.DataSource = GlobalDTAC_PD_EjeRector(UsuarioActual.CveEmpresa) CboEjeRector.DataBind() CboEjeRector.Items.Insert(0, New ListItem("Seleccione", "-1")) End Sub Private Sub CargaProgramas() CboPrograma.Items.Clear() If CboEjeRector.SelectedValue.ToEntero <> -1 Then CboPrograma.DataSource = GlobalDTAC_PD_Programas(CboEjeRector.SelectedValue.ToEntero) CboPrograma.DataBind() End If CboPrograma.Items.Insert(0, New ListItem("Seleccione", "-1")) CboPrograma_SelectedIndexChanged(New Object, New EventArgs) End Sub Private Sub CargaEstrategias() CboEstrategia.Items.Clear() If CboPrograma.SelectedValue.ToEntero <> -1 Then CboEstrategia.DataSource = GlobalDTAC_PD_Estrategias(CboPrograma.SelectedValue.ToEntero) CboEstrategia.DataBind() End If CboEstrategia.Items.Insert(0, New ListItem("Seleccione", "-1")) CboEstrategia_SelectedIndexChanged(New Object, New EventArgs) End Sub Private Sub CargaLineasAccion() CboLineaAccion.Items.Clear() If CboEstrategia.SelectedValue.ToEntero <> -1 Then CboLineaAccion.DataSource = GlobalDTAC_PD_LineasAccion(CboEstrategia.SelectedValue.ToEntero) CboLineaAccion.DataBind() End If CboLineaAccion.Items.Insert(0, New ListItem("Seleccione", "-1")) CboLineaAccion_SelectedIndexChanged(New Object, New EventArgs) End Sub Private Sub CargaMetas() CboMeta.Items.Clear() If CboLineaAccion.SelectedValue.ToEntero <> -1 Then CboMeta.DataSource = GlobalDTAC_PD_Metas(CboLineaAccion.SelectedValue.ToEntero) CboMeta.DataBind() End If CboMeta.Items.Insert(0, New ListItem("Seleccione", "-1")) End Sub Private Sub CargaUM() CboUM.DataSource = GlobalDTUnidadesMedida(UsuarioActual.CveEmpresa) CboUM.DataBind() CboUM.Items.Insert(0, New ListItem("Seleccione", "-1")) End Sub Protected Sub CboEjeRector_SelectedIndexChanged(sender As Object, e As EventArgs) Handles CboEjeRector.SelectedIndexChanged CargaProgramas() End Sub Protected Sub CboPrograma_SelectedIndexChanged(sender As Object, e As EventArgs) Handles CboPrograma.SelectedIndexChanged CargaEstrategias() End Sub Protected Sub CboEstrategia_SelectedIndexChanged(sender As Object, e As EventArgs) Handles CboEstrategia.SelectedIndexChanged CargaLineasAccion() End Sub Protected Sub CboLineaAccion_SelectedIndexChanged(sender As Object, e As EventArgs) Handles CboLineaAccion.SelectedIndexChanged CargaMetas() End Sub #End Region #End Region Protected Sub CargaDatos() Dim objAC As New ClsAC If objAC.GetProgramasOperativos(CveProgramaOperativo, UsuarioActual.CveEmpresa, CBool(EsProyecto)) Then If objAC.DtResultados.Rows.Count = 1 Then txtClave.Text = objAC.DtResultados.Rows(0)("Clave").ToString txtProgramaOperativo.Text = objAC.DtResultados.Rows(0)("ProgramaOperativo").ToString CboClasificacionFuncional.SelectedValue = objAC.DtResultados.Rows(0)("CveClasificacionFuncional").ToString CboClasificacionAdministrativa.SelectedValue = objAC.DtResultados.Rows(0)("CveClasificacionAdministrativa").ToString CboProgramaCONAC.SelectedValue = objAC.DtResultados.Rows(0)("CveProgramaCONAC").ToString CboClasificacionGeografica.SelectedValue = objAC.DtResultados.Rows(0)("CveClasificacionGeografica").ToString txtProblematica.Text = objAC.DtResultados.Rows(0)("Problematica").ToString txtCausa.Text = objAC.DtResultados.Rows(0)("Causa").ToString txtEfecto.Text = objAC.DtResultados.Rows(0)("Efecto").ToString DdlEjercicio.SelectedValue = objAC.DtResultados.Rows(0)("Ejercicio").ToString CboEjeRector.SelectedValue = objAC.DtResultados.Rows(0)("CveEjeRector").ToString CboEjeRector_SelectedIndexChanged(New Object, New EventArgs) CboPrograma.SelectedValue = objAC.DtResultados.Rows(0)("CvePrograma").ToString CboPrograma_SelectedIndexChanged(New Object, New EventArgs) CboEstrategia.SelectedValue = objAC.DtResultados.Rows(0)("CveEstrategia").ToString CboEstrategia_SelectedIndexChanged(New Object, New EventArgs) CboLineaAccion.SelectedValue = objAC.DtResultados.Rows(0)("CveLineaAccion").ToString CboLineaAccion_SelectedIndexChanged(New Object, New EventArgs) CboMeta.SelectedValue = objAC.DtResultados.Rows(0)("CveMeta").ToString CboUM.SelectedValue = objAC.DtResultados.Rows(0)("CveUM").ToString txtTotal.Text = objAC.DtResultados.Rows(0)("Total").ToString.ToDouble.ToString("##############.####") txtEnero.Text = objAC.DtResultados.Rows(0)("Enero").ToString.ToDouble.ToString("##############.####") txtFebrero.Text = objAC.DtResultados.Rows(0)("Febrero").ToString.ToDouble.ToString("##############.####") txtMarzo.Text = objAC.DtResultados.Rows(0)("Marzo").ToString.ToDouble.ToString("##############.####") txtAbril.Text = objAC.DtResultados.Rows(0)("Abril").ToString.ToDouble.ToString("##############.####") txtMayo.Text = objAC.DtResultados.Rows(0)("Mayo").ToString.ToDouble.ToString("##############.####") txtJunio.Text = objAC.DtResultados.Rows(0)("Junio").ToString.ToDouble.ToString("##############.####") txtJulio.Text = objAC.DtResultados.Rows(0)("Julio").ToString.ToDouble.ToString("##############.####") txtAgosto.Text = objAC.DtResultados.Rows(0)("Agosto").ToString.ToDouble.ToString("##############.####") txtSeptiembre.Text = objAC.DtResultados.Rows(0)("Septiembre").ToString.ToDouble.ToString("##############.####") txtOctubre.Text = objAC.DtResultados.Rows(0)("Octubre").ToString.ToDouble.ToString("##############.####") txtNoviembre.Text = objAC.DtResultados.Rows(0)("Noviembre").ToString.ToDouble.ToString("##############.####") txtDiciembre.Text = objAC.DtResultados.Rows(0)("Diciembre").ToString.ToDouble.ToString("##############.####") Else ViewState("CveProgramaOperativo") = 0 Alert("No se encontro el Programa Operativo", TipoMensaje.MsgAdvertencia) 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.GetEjerciciosProgramasOperativos(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 Plan Operativo Anual del ejercicio seleccionado ya esta bloqueado.", 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.Replace(",", "").Trim.ToDouble Dim Enero As Double = txtEnero.Text.Replace(",", "").Trim.ToDouble Dim Febrero As Double = txtFebrero.Text.Replace(",", "").Trim.ToDouble Dim Marzo As Double = txtMarzo.Text.Replace(",", "").Trim.ToDouble Dim Abril As Double = txtAbril.Text.Replace(",", "").Trim.ToDouble Dim Mayo As Double = txtMayo.Text.Replace(",", "").Trim.ToDouble Dim Junio As Double = txtJunio.Text.Replace(",", "").Trim.ToDouble Dim Julio As Double = txtJulio.Text.Replace(",", "").Trim.ToDouble Dim Agosto As Double = txtAgosto.Text.Replace(",", "").Trim.ToDouble Dim Septiembre As Double = txtSeptiembre.Text.Replace(",", "").Trim.ToDouble Dim Octubre As Double = txtOctubre.Text.Replace(",", "").Trim.ToDouble Dim Noviembre As Double = txtNoviembre.Text.Replace(",", "").Trim.ToDouble Dim Diciembre As Double = txtDiciembre.Text.Replace(",", "").Trim.ToDouble If CveProgramaOperativo = 0 Then If objAC.AddProgramaOperativo(txtClave.Text, txtProgramaOperativo.Text, CboClasificacionFuncional.SelectedValue.ToEntero, CboClasificacionAdministrativa.SelectedValue.ToEntero, CboProgramaCONAC.SelectedValue.ToEntero, CboClasificacionGeografica.SelectedValue.ToEntero, txtProblematica.Text, txtCausa.Text, txtEfecto.Text, CboMeta.SelectedValue.ToEntero, CboUM.SelectedValue.ToEntero, Total, Enero, Febrero, Marzo, Abril, Mayo, Junio, Julio, Agosto, Septiembre, Octubre, Noviembre, Diciembre, DdlEjercicio.SelectedValue.ToEntero, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then Alert("El Programa Operativo se guardo Correctamente", TipoMensaje.MsgInformacion, "document.location.href=""/AC/RepProgramaOperativo.aspx""") End If Else If objAC.UpdateProgramaOperativo(CveProgramaOperativo, txtClave.Text, txtProgramaOperativo.Text, CboClasificacionFuncional.SelectedValue.ToEntero, CboClasificacionAdministrativa.SelectedValue.ToEntero, CboProgramaCONAC.SelectedValue.ToEntero, CboClasificacionGeografica.SelectedValue.ToEntero, txtProblematica.Text, txtCausa.Text, txtEfecto.Text, CboMeta.SelectedValue.ToEntero, CboUM.SelectedValue.ToEntero, Total, Enero, Febrero, Marzo, Abril, Mayo, Junio, Julio, Agosto, Septiembre, Octubre, Noviembre, Diciembre, DdlEjercicio.SelectedValue.ToEntero) Then Alert("El Programa Operativo se actualizo Correctamente", TipoMensaje.MsgInformacion, "document.location.href=""/AC/RepProgramaOperativo.aspx""") End If End If objAC.Dispose() End Sub 'Protected Sub BtnProyecto_Click(sender As Object, e As EventArgs) Handles BtnProyecto.Click ' Dim objAC As New ClsAC() ' Dim Total As Double = txtTotal.Text.Replace(",", "").Trim.ToDouble ' Dim Enero As Double = txtEnero.Text.Replace(",", "").Trim.ToDouble ' Dim Febrero As Double = txtFebrero.Text.Replace(",", "").Trim.ToDouble ' Dim Marzo As Double = txtMarzo.Text.Replace(",", "").Trim.ToDouble ' Dim Abril As Double = txtAbril.Text.Replace(",", "").Trim.ToDouble ' Dim Mayo As Double = txtMayo.Text.Replace(",", "").Trim.ToDouble ' Dim Junio As Double = txtJunio.Text.Replace(",", "").Trim.ToDouble ' Dim Julio As Double = txtJulio.Text.Replace(",", "").Trim.ToDouble ' Dim Agosto As Double = txtAgosto.Text.Replace(",", "").Trim.ToDouble ' Dim Septiembre As Double = txtSeptiembre.Text.Replace(",", "").Trim.ToDouble ' Dim Octubre As Double = txtOctubre.Text.Replace(",", "").Trim.ToDouble ' Dim Noviembre As Double = txtNoviembre.Text.Replace(",", "").Trim.ToDouble ' Dim Diciembre As Double = txtDiciembre.Text.Replace(",", "").Trim.ToDouble ' If CveProgramaOperativo > 0 Then ' If objAC.ProyectoProgramaOperativo(txtClave.Text, txtProgramaOperativo.Text, CboClasificacionFuncional.SelectedValue.ToEntero, CboClasificacionAdministrativa.SelectedValue.ToEntero, CboProgramaCONAC.SelectedValue.ToEntero, CboClasificacionGeografica.SelectedValue.ToEntero, ' txtProblematica.Text, txtCausa.Text, txtEfecto.Text, CboMeta.SelectedValue.ToEntero, CboUM.SelectedValue.ToEntero, Total, ' Enero, Febrero, Marzo, Abril, Mayo, Junio, Julio, Agosto, Septiembre, Octubre, Noviembre, Diciembre, DdlEjercicio.SelectedValue.ToEntero, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveProgramaOperativo) Then ' Alert("El Programa Operativo se ACTUALIZO Correctamente como PROYECTO", TipoMensaje.MsgInformacion, "document.location.href=""/AC/RepProgramaOperativo.aspx""") ' GlobalDTAC_ProgramaOperativo(-1) = objAC.DtResultados ' End If ' Else ' Alert("ERROR", TipoMensaje.MsgError) ' End If ' If EsProyecto = 1 Then ' If objAC.BloquearProgramaOperativo(CveProgramaOperativo) Then ' Alert("El Programa Operativo se ACTUALIZO Correctamente como PROYECTO AUTORIZADO", TipoMensaje.MsgInformacion, "document.location.href=""/AC/RepProgramaOperativo.aspx""") ' End If ' End If ' objAC.Dispose() 'End Sub End Class