using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Telerik.Web.UI;
using BE;
using BL;
using DL;
using Utilitaria;
using System.Data.SqlClient;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web.Services;
using System.Web.Script.Services;
using System.Threading;
using System.Globalization;

public partial class frmAsientos : System.Web.UI.Page
{
    Int32 EmpresaID;
    Int32 TipoDoc;
    protected void Page_Load(object sender, EventArgs e)
    {
        Thread.CurrentThread.CurrentCulture = new CultureInfo("es-PE");
        Thread.CurrentThread.CurrentUICulture = new CultureInfo("es-PE");
        if (Session["Usuario"] == null)
        {
            Response.Redirect(Utilitaria.Cls_Enums.CerrarSesion.Salir);
        }
        if (!string.IsNullOrEmpty(Session["MostrarControles"] as string))
        {
            if (Session["MostrarControles"].ToString() == "ReportesGerenciales")
            {
                string script = string.Format(
                    "(function() {{" +
                        "var fn1 = function() {{" +
                            "FiltrosReportesGereciales();" +
                            "Sys.Application.remove_load(fn1);" +
                        "}};" +
                        "Sys.Application.add_load(fn1);" +
                    "}})();");
                ScriptManager.RegisterStartupScript(this, this.GetType(), "myscript", script, true);
            }
            else if (Session["MostrarControles"].ToString() == "ReportesAnaliticos")
            {
                string script = string.Format(
                    "(function() {{" +
                        "var fn2 = function() {{" +
                            "FiltrosReportesAnaliticos();" +
                            "Sys.Application.remove_load(fn2);" +
                        "}};" +
                        "Sys.Application.add_load(fn2);" +
                    "}})();");
                ScriptManager.RegisterStartupScript(this, this.GetType(), "myscript", script, true);
            }
            else
            {
                string script = string.Format(
                    "(function() {{" +
                        "var fn3 = function() {{" +
                            "FiltrosRegistros();" +
                            "Sys.Application.remove_load(fn3);" +
                        "}};" +
                        "Sys.Application.add_load(fn3);" +
                    "}})();");
                ScriptManager.RegisterStartupScript(this, this.GetType(), "myscript", script, true);
            }
        }
        if (!Page.IsPostBack)
        {
            PopulateCombo_DiarioAuxiliar();
            PopulateCombo_PlanDeCuentaFinal();
            PopulateCombo_PlanDeCuentaInicial();
            PopulateCombo_Areas();
            PopulateCombo_UnidadesNegocio();
            PopulateCombo_TipoFormatoGGPP();
            PopulateCombo_Sucursales();
            PopulateCombo_LibrosContables();
            Combo_Moneda();
            PopulateCombo_Acumulado();
            llenarTipoDoc();
            //llenarEmpresa();
            s_listarMenuTV();
            this.imgLogo.ImageUrl = Session["imgLogoSGH"].ToString();
            this.imgLogoEmpresa.ImageUrl = Session["imgLogoEmpresa"].ToString();

        }
    }

    [System.Web.Services.WebMethod]
    public static void SetSessionValue(string key, string value)
    {
        HttpContext.Current.Session[key] = value;
    }

    [System.Web.Services.WebMethod]
    public static string GetSessionValue(string key)
    {
        if (HttpContext.Current.Session[key] != null)
        {
            return HttpContext.Current.Session[key].ToString();
        }
        else
        {
            return "Session value not found";
        }
    }

    private void PopulateCombo_TipoFormatoGGPP()
    {
        BLTipoFormatoDeGGyPP oBLTipoFormatoDeGGyPP = new BLTipoFormatoDeGGyPP();
        List<BETipoFormatoDeGGyPP> loTipoFormatoDeGGyPP;
        loTipoFormatoDeGGyPP = oBLTipoFormatoDeGGyPP.fnSelTipoFormatoDeGGyPPAll();
        for (int i = 0; i < loTipoFormatoDeGGyPP.Count; i++)
        {
            RadComboBoxItem item = new RadComboBoxItem();
            item.Text = (string)loTipoFormatoDeGGyPP[i].NombreTipoFormato;
            item.Value = loTipoFormatoDeGGyPP[i].TipoFormatoGGPPID.ToString();
            cbxTipoFormatoGGPP.Items.Add(item);
            item.DataBind();
        }
        oBLTipoFormatoDeGGyPP=null;
        loTipoFormatoDeGGyPP = null;
    }

    private void llenarEmpresa()
    {
        DataTable dt = new DataTable();

        SqlConnection sqlConnection1 = new SqlConnection(GetConnectionString());
        SqlCommand cmd = new SqlCommand();
        SqlDataReader reader;

        cmd.CommandText = "UCO_Empresas_Select_Din_PopUp";
        cmd.CommandType = CommandType.StoredProcedure;
        SqlParameter WhereCondition = cmd.Parameters.Add("@WhereCondition", SqlDbType.VarChar);
        SqlParameter OrderByExpression = cmd.Parameters.Add("@OrderByExpression", SqlDbType.VarChar);

        WhereCondition.Value = "";
        OrderByExpression.Value = "";

        cmd.Connection = sqlConnection1;

        sqlConnection1.Open();

        reader = cmd.ExecuteReader();
        dt.Load(reader);
        txtRucEmpresa.DataSource = dt.DefaultView;
        sqlConnection1.Close();
        //close DataReader
        
        reader.Close();
        
    }
    private void llenarTipoDoc()
    {
        SqlConnection sqlConnection1 = new SqlConnection(GetConnectionString());
        SqlCommand cmd = new SqlCommand();
        SqlDataReader reader;

        cmd.CommandText = "UCO_TipoDocumentos_Select";
        cmd.CommandType = CommandType.StoredProcedure;
        SqlParameter WhereCondition = cmd.Parameters.Add("@WhereCondition", SqlDbType.VarChar);
        SqlParameter OrderByExpression = cmd.Parameters.Add("@OrderByExpression", SqlDbType.VarChar);

        WhereCondition.Value = "";
        OrderByExpression.Value = "NombreDocumento";

        cmd.Connection = sqlConnection1;

        sqlConnection1.Open();

        reader = cmd.ExecuteReader();
        // Data is accessible through the DataReader object here.
        List<string> lista2 = new List<string>();
        while (reader.Read())
        {
            RadComboBoxItem item = new RadComboBoxItem();
            item.Text = (string)reader["NombreDocumento"].ToString().Trim();
            item.Value = reader["TipoDocumentoID"].ToString().Trim();
            cbxTipoDoc.Items.Add(item);
        }

        sqlConnection1.Close();
        //close DataReader
        reader.Close();
        
    }
    private void PopulateCombo_Sucursales()
    {
        BLHoteles oBLHoteles = new BLHoteles();
        List<BEHoteles> loHoteles;
        loHoteles = oBLHoteles.fnSelHotelesDin("where EstablecimientoID=" + Session["EmpresaID"].ToString().Trim(), "");
        for (int i = 0; i < loHoteles.Count; i++)
        {
            RadComboBoxItem item = new RadComboBoxItem();
            item.Text = (string)loHoteles[i].NombreHotel;
            item.Value = loHoteles[i].HotelID.ToString();
            cbxSucursal.Items.Add(item);
            item.DataBind();
        }
        oBLHoteles = null;
        loHoteles = null;
    }
    private void PopulateCombo_LibrosContables()
    {
        BLLibrosContables oBLLibrosContables = new BLLibrosContables();
        List<BELibrosContables> loLibrosContables;
        loLibrosContables = oBLLibrosContables.fnSelLibrosContablesDin("","");
        for (int i = 0; i < loLibrosContables.Count; i++)
        {
            cbxLibrosContables.Items.Insert(i, new RadComboBoxItem(loLibrosContables[i].NombreLibroContable.Trim()));
            cbxLibrosContables.Items[i].Value = Convert.ToString(loLibrosContables[i].LibroContableID);
        }
        oBLLibrosContables = null;
        loLibrosContables = null;
    }
    private void listar_SubDiario(String SubDiarioID)
    {

    }
    private void PopulateCombo_UnidadesNegocio()
    {
        BLUnidadesDeNegocio oBlUnidadesDeNegocio = new BLUnidadesDeNegocio();
        List<BEUnidadesDeNegocio> loUnidadesDeNegocio;

        RadComboBoxItem fixeditem = new RadComboBoxItem();
        fixeditem.Text = "Consolidado";
        fixeditem.Font.Italic = true;
        fixeditem.Value = "0";
        cbxUnidadDeNegocio.Items.Add(fixeditem);
        fixeditem.DataBind();

        RadComboBoxItem fixeditem2 = new RadComboBoxItem();
        fixeditem2.Text = "Consolidado por Area";
        fixeditem2.Font.Italic = true;
        fixeditem2.Value = "-1";
        cbxUnidadDeNegocio.Items.Add(fixeditem2);
        fixeditem2.DataBind();

        RadComboBoxItem fixeditem3 = new RadComboBoxItem();
        fixeditem3.Text = "Detallado por Asiento";
        fixeditem3.Font.Italic = true;
        fixeditem3.Value = "-2";
        cbxUnidadDeNegocio.Items.Add(fixeditem3);
        fixeditem3.DataBind();
        BEUnidadesDeNegocio oBEUnidadesDeNegocio = new BEUnidadesDeNegocio();
        oBEUnidadesDeNegocio.EstablecimientoID = Convert.ToInt32(Session["EmpresaID"].ToString());
        loUnidadesDeNegocio = oBlUnidadesDeNegocio.fnSelUnidadesDeNegocioDin(oBEUnidadesDeNegocio, "and EstablecimientoID=" + Session["EmpresaID"].ToString().Trim(), "");
        for (int i = 0; i < loUnidadesDeNegocio.Count; i++)
        {
            RadComboBoxItem item = new RadComboBoxItem();
            item.Text = (string)loUnidadesDeNegocio[i].NombreUnidadNegocio;
            item.Value = loUnidadesDeNegocio[i].UnidadNegocioID.ToString();
            cbxUnidadDeNegocio.Items.Add(item);
            item.DataBind();
        }
    }
    private void PopulateCombo_Areas()
    {
        BLAreas oBLAreas = new BLAreas();
        List<BEAreas> loAreas;
        cbxAreas.Items.Clear();
        cbxAreas.DataBind();
        RadComboBoxItem fixeditem = new RadComboBoxItem();
        fixeditem.Text = "Consolidado";
        fixeditem.Value = "0";
        cbxAreas.Items.Add(fixeditem);
        fixeditem.DataBind();
        loAreas = oBLAreas.fnSelAreasDin("estado=0 and EstablecimientoID=" + Session["EmpresaID"].ToString().Trim() , "2");
        for (int i = 0; i < loAreas.Count; i++)
        {
            RadComboBoxItem item = new RadComboBoxItem();
            item.Text = (string)loAreas[i].NombreArea;
            item.Value = loAreas[i].AreaId.ToString();
            cbxAreas.Items.Add(item);
            item.DataBind();
        }
        oBLAreas = null;
        loAreas = null;
        fixeditem = null;
    }

    private void PopulateCombo_PlanDeCuentaFinal()
    {
        BLPlanDeCuentas oBLPlanDeCuentas = new BLPlanDeCuentas();
        List<BEPlanDeCuentas> loPlanDeCuentas;
        RadComboBoxItem fixeditem = new RadComboBoxItem();
        fixeditem.Text = "Consolidado";
        fixeditem.Value = "0";
        cbxCtaFinal.Items.Add(fixeditem);
        fixeditem.DataBind();
        fixeditem = new RadComboBoxItem();
        fixeditem.Text = "Consolidado por Clase";
        fixeditem.Value = "-1";
        cbxCtaFinal.Items.Add(fixeditem);
        fixeditem.DataBind();
        loPlanDeCuentas = oBLPlanDeCuentas.fnSelPlanDeCuentasDin("Estado=0" + " and pdc.EstablecimientoID=" + Session["EmpresaID"].ToString().Trim(), "codigoplancuenta asc, NombrePlanCuenta asc",0);
        for (int i = 0; i < loPlanDeCuentas.Count; i++)
        {
            RadComboBoxItem item = new RadComboBoxItem();
            item.Text = loPlanDeCuentas[i].CodigoPlanCuenta + " -> " + (string)loPlanDeCuentas[i].NombrePlanCuenta;
            item.Value = loPlanDeCuentas[i].PlanCuentaID.ToString();
            cbxCtaFinal.Items.Add(item);
            item.DataBind();
        }
        oBLPlanDeCuentas = null;
        loPlanDeCuentas = null;
    }
    private void PopulateCombo_PlanDeCuentaInicial()
    {
        BLPlanDeCuentas oBLPlanDeCuentas = new BLPlanDeCuentas();
        List<BEPlanDeCuentas> loPlanDeCuentas;
        RadComboBoxItem fixeditem = new RadComboBoxItem();
        fixeditem.Text = "Consolidado";
        fixeditem.Value = "0";
        cbxCtaInicio.Items.Add(fixeditem);
        fixeditem.DataBind();
        fixeditem = new RadComboBoxItem();
        fixeditem.Text = "Consolidado por Clase";
        fixeditem.Value = "-1";
        cbxCtaInicio.Items.Add(fixeditem);
        fixeditem.DataBind();

        fixeditem = new RadComboBoxItem();
        fixeditem.Text = "Detallado por Asiento";
        fixeditem.Value = "-2";
        cbxCtaInicio.Items.Add(fixeditem);
        fixeditem.DataBind();
        loPlanDeCuentas = oBLPlanDeCuentas.fnSelPlanDeCuentasDin("Estado=0" + " and pdc.EstablecimientoID=" + Session["EmpresaID"].ToString().Trim(), "codigoplancuenta asc, NombrePlanCuenta asc", 0);
        for (int i = 0; i < loPlanDeCuentas.Count; i++)
        {
            RadComboBoxItem item = new RadComboBoxItem();
            item.Text = loPlanDeCuentas[i].CodigoPlanCuenta + " -> " + (string)loPlanDeCuentas[i].NombrePlanCuenta;
            item.Value = loPlanDeCuentas[i].PlanCuentaID.ToString();
            cbxCtaInicio.Items.Add(item);
            item.DataBind();
        }
        oBLPlanDeCuentas = null;
        loPlanDeCuentas = null;
    }
    private void PopulateCombo_DiarioAuxiliar()
    {
        BLSubDiarios oBLSubDiarios = new BLSubDiarios();
        List<BESubDiarios> loSubDiarios;
        loSubDiarios = oBLSubDiarios.fnSelSubDiariosDin("Estado=0", "NombreSubDiario asc");
        RadComboBoxItem fixeditem = new RadComboBoxItem();
        fixeditem.Text = "Consolidado";
        fixeditem.Value = "-1";
        cbxDiarioAuxiliar.Items.Add(fixeditem);
        fixeditem.DataBind();
        fixeditem = new RadComboBoxItem();
        fixeditem.Text = "Consolidado por Comprobante";
        fixeditem.Value = "-2";
        cbxDiarioAuxiliar.Items.Add(fixeditem);
        fixeditem.DataBind();
        RadComboBoxItem fixeditem1 = new RadComboBoxItem();
        fixeditem1.Text = "Detallado General";
        fixeditem1.Value = "0";
        cbxDiarioAuxiliar.Items.Add(fixeditem1);
        fixeditem1.DataBind();
        for (int i = 0; i < loSubDiarios.Count; i++)
        {
            RadComboBoxItem item = new RadComboBoxItem();
            item.Text = loSubDiarios[i].NombreSubDiario;
            item.Value = loSubDiarios[i].SubDiarioID.ToString();
            cbxDiarioAuxiliar.Items.Add(item);
            item.DataBind();
        }
        oBLSubDiarios = null;
        loSubDiarios = null;
    }
    
    private void Combo_Moneda()
    {
        BLMonedas oBEMonedas = new BLMonedas();
        List<BEMonedas> loMonedas;
        loMonedas = oBEMonedas.fnSelMonedasAll();
        for (int i = 0; i < loMonedas.Count; i++)
        {
            RadComboBoxItem item = new RadComboBoxItem();
            item.Text = loMonedas[i].Nombre.Trim();
            item.Value = loMonedas[i].MonedaID.ToString();
            cbxMoneda.Items.Add(item);
            item.DataBind();
        }
        oBEMonedas = null;
        loMonedas = null;
    }
    private void PopulateCombo_Acumulado()
    {
        RadComboBoxItem item = new RadComboBoxItem();
        item.Text = "Mensual";
        item.Value = "0";
        cbxAcumulado.Items.Add(item);
        item.DataBind();
        RadComboBoxItem _item = new RadComboBoxItem();
        _item.Text = "Acumulado";
        _item.Value = "1";
        cbxAcumulado.Items.Add(_item);
        _item.DataBind();
    }
   
    protected void showMessage(string strMessage)
    {
        ScriptManager.RegisterStartupScript(this, this.GetType(), "myscript", "alert('" + strMessage + "');", true);
    }
    protected void showPopup(String strPage, String strNombre)
    {
        ScriptManager.RegisterStartupScript(this, this.GetType(), "myscript", "AbreVentana('" + strPage + "', '" + strNombre + "');", true);
    }

    public String TipoReporte(Int32 TipoFormatoGGPPID)
    {
        string tipo = "";
        string connect = System.Configuration.ConfigurationManager.AppSettings["connectionstring"];
        SqlConnection scn = new SqlConnection(connect);
        string select = "SELECT TipoReporteBalanceId FROM TipoFormatoDeGGyPP WHERE TipoFormatoGGPPID = " + cbxTipoFormatoGGPP.SelectedValue.ToString().Trim();
        SqlCommand spcmd = new SqlCommand(select, scn);
        spcmd.CommandType = CommandType.Text;
        SqlDataReader dr;
        scn.Open();
        dr = spcmd.ExecuteReader();
        if (dr.HasRows)
        {
            while (dr.Read())
            {
                tipo = dr["TipoReporteBalanceId"].ToString().Trim();
            }
        }
        return tipo;
    }
    protected void btnBuscar_Click(object sender, EventArgs e)
    {
        String CodigoPlanCuenta1, CodigoPlanCuenta2;
 
        try { CodigoPlanCuenta1 = cbxCtaInicio.Text.Substring(0, (cbxCtaInicio.Text.IndexOf(' '))); }
        catch { CodigoPlanCuenta1 = ""; }
        try { CodigoPlanCuenta2 = cbxCtaFinal.Text.Substring(0, (cbxCtaFinal.Text.IndexOf(' '))); }
        catch { CodigoPlanCuenta2 = ""; }
        Session["MonedaID"] = cbxMoneda.SelectedValue.ToString();
        Session["Desde"] = txtDesde.SelectedDate;
        Session["Hasta"] = txtHasta.SelectedDate;

        if (cbxCtaInicio.SelectedValue.Trim() != "" && cbxCtaInicio.SelectedValue.Trim() != "0")
        {
            Session["CuentaInicio"] = cbxCtaInicio.Text.Substring(0, (cbxCtaInicio.Text.IndexOf(' ')));
        }
        else
        {
            Session["CuentaInicio"] = "";
        }
        if (cbxCtaFinal.SelectedValue.Trim() != "" && cbxCtaFinal.SelectedValue.Trim() != "0")
        {
            Session["CuentaFin"] = cbxCtaFinal.Text.Substring(0, (cbxCtaFinal.Text.IndexOf(' ')));
        }
        else
        {
            Session["CuentaFin"] = "";
        }
        if (cbxTipoFormatoGGPP.SelectedValue != "") //1. Si Estado Financiero///////////////////////////////////////////
        {
            if (cbxTipoFormatoGGPP.SelectedValue.ToString().Trim() != "04")
            {
                String formatoReporte = "";
                if (cbxTipoFormatoGGPP.SelectedValue.ToString().Trim() == "01")
                {
                    formatoReporte = "0";
                    if (cbxPeriodo.SelectedValue.ToString().Trim() == "")
                    {
                        showMessage("Seleccionar Mes");
                        return; 
                    }
                    Int32 Mes = Convert.ToInt32(cbxPeriodo.SelectedValue.ToString().Trim());
                    Response.Write(Cls_Utilitaria.f_Show("frmMayorizacion.aspx?PPGG=" + cbxTipoFormatoGGPP.SelectedValue.Trim() + "&Und=" + cbxUnidadDeNegocio.SelectedValue.Trim() + "&Area=" + cbxAreas.SelectedValue.Trim() + "&Scr=" + cbxSucursal.SelectedValue.Trim() + "&ACUM=" + cbxAcumulado.SelectedValue.Trim() + "&FormatoReporte=" + formatoReporte + "&Mes=" + Mes, "Mayorizacion"));
                }
                else if (cbxTipoFormatoGGPP.SelectedValue.ToString().Trim() == "02" || TipoReporte(Convert.ToInt32(cbxTipoFormatoGGPP.SelectedValue.ToString())) == "1")
                {
                    formatoReporte = "1";
                    if (cbxPeriodo.SelectedValue.ToString().Trim() == "")
                    {
                        showMessage("Seleccionar Mes");
                        return;
                    }
                    Int32 Mes = Convert.ToInt32(cbxPeriodo.SelectedValue.ToString().Trim());
                    Response.Write(Cls_Utilitaria.f_Show("frmMayorizacion.aspx?PPGG=" + cbxTipoFormatoGGPP.SelectedValue.Trim() + "&Und=" + cbxUnidadDeNegocio.SelectedValue.Trim() + "&Area=" + cbxAreas.SelectedValue.Trim() + "&Scr=" + cbxSucursal.SelectedValue.Trim() + "&ACUM=" + cbxAcumulado.SelectedValue.Trim() + "&FormatoReporte=" + formatoReporte + "&Mes=" + Mes, "Mayorizacion"));
                }
                else if (cbxTipoFormatoGGPP.SelectedValue.ToString().Trim() == "03" )
                {
                    formatoReporte = "2";
                    if (cbxPeriodo.SelectedValue.ToString().Trim() == "")
                    {
                        showMessage("Seleccionar Mes");
                        return;
                    }
                    Int32 Mes = Convert.ToInt32(cbxPeriodo.SelectedValue.ToString().Trim());
                    Response.Write(Cls_Utilitaria.f_Show("frmMayorizacion.aspx?PPGG=" + cbxTipoFormatoGGPP.SelectedValue.Trim() + "&Und=" + cbxUnidadDeNegocio.SelectedValue.Trim() + "&Area=" + cbxAreas.SelectedValue.Trim() + "&Scr=" + cbxSucursal.SelectedValue.Trim() + "&ACUM=" + cbxAcumulado.SelectedValue.Trim() + "&FormatoReporte=" + formatoReporte + "&Mes=" + Mes, "Mayorizacion"));
                }
                else if (cbxTipoFormatoGGPP.SelectedValue.ToString().Trim() == "05")
                {
                    String AreaEEFFMensual = "";
                    String UNGEEFFMensual = "";
                    formatoReporte = "0";
                    if (cbxAreas.SelectedValue.Trim() == "")
                    {
                        AreaEEFFMensual = "0";
                    }
                    else
                    {
                        AreaEEFFMensual = cbxAreas.SelectedValue.Trim();
                    }
                    if (cbxUnidadDeNegocio.SelectedValue.Trim() == "")
                    {
                        UNGEEFFMensual = "0";
                    }
                    else
                    {
                        UNGEEFFMensual = cbxUnidadDeNegocio.SelectedValue.Trim();
                    }
                    if (cbxPeriodo.SelectedValue.ToString().Trim() == "")
                    {
                        showMessage("Seleccionar Mes");
                        return;
                    }
                    Int32 Mes = Convert.ToInt32(cbxPeriodo.SelectedValue.ToString().Trim());
                    Response.Write(Cls_Utilitaria.f_Show("frmEEFFMensual.aspx?Mes=" + Mes + "&HTL=" + Session["HotelID"] + "&ARA=" + AreaEEFFMensual + "&UNG=" + UNGEEFFMensual + "&NVL=0&ACUM=" + this.cbxAcumulado.SelectedValue + "&TFGPID=01&NTF=" + cbxTipoFormatoGGPP.SelectedItem.Text.ToString().Trim() + "&FORMATOREPORTE=" + formatoReporte + "", ""));
                }
                else if (cbxTipoFormatoGGPP.SelectedValue.ToString().Trim() == "06")
                {
                    String AreaEEFFMensual = "";
                    String UNGEEFFMensual = "";
                    formatoReporte = "2";
                   
                    if (cbxAreas.SelectedValue.Trim() == "")
                    {
                        AreaEEFFMensual = "0";
                    }
                    else
                    {
                        AreaEEFFMensual = cbxAreas.SelectedValue.Trim();
                    }
                    if (cbxUnidadDeNegocio.SelectedValue.Trim() == "")
                    {
                        UNGEEFFMensual = "0";
                    }
                    else
                    {
                        UNGEEFFMensual = cbxUnidadDeNegocio.SelectedValue.Trim();
                    }
                    if (cbxPeriodo.SelectedValue.ToString().Trim() == "")
                    {
                        showMessage("Seleccionar Mes");
                        return;
                    }
                    Int32 Mes = Convert.ToInt32(cbxPeriodo.SelectedValue.ToString().Trim());
                    Response.Write(Cls_Utilitaria.f_Show("frmEEFFMensual.aspx?Mes=" + Mes + "&HTL=" + Session["HotelID"] + "&ARA=" + AreaEEFFMensual + "&UNG=" + UNGEEFFMensual + "&NVL=0&ACUM=" + this.cbxAcumulado.SelectedValue + "&TFGPID=02&NTF=" + cbxTipoFormatoGGPP.SelectedItem.Text.ToString().Trim() + "&FORMATOREPORTE=" + formatoReporte + "", ""));
                }
                else if (TipoReporte(Convert.ToInt32(cbxTipoFormatoGGPP.SelectedValue.ToString())) == "2")
                {
                    String AreaEEFFMensual = "";
                    String UNGEEFFMensual = "";
                    formatoReporte = "0";
                    if (cbxAreas.SelectedValue.Trim() == "")
                    {
                        AreaEEFFMensual = "0";
                    }
                    else
                    {
                        AreaEEFFMensual = cbxAreas.SelectedValue.Trim();
                    }
                    if (cbxUnidadDeNegocio.SelectedValue.Trim() == "")
                    {
                        UNGEEFFMensual = "0";
                    }
                    else
                    {
                        UNGEEFFMensual = cbxUnidadDeNegocio.SelectedValue.Trim();
                    }
                    if (cbxPeriodo.SelectedValue.ToString().Trim() == "")
                    {
                        showMessage("Seleccionar Mes");
                        return;
                    }
                    Int32 Mes = Convert.ToInt32(cbxPeriodo.SelectedValue.ToString().Trim());
                    Response.Write(Cls_Utilitaria.f_Show("frmEEFFMensual.aspx?Mes=" + Mes + "&HTL=" + Session["HotelID"] + "&ARA=" + AreaEEFFMensual + "&UNG=" + UNGEEFFMensual + "&NVL=0&ACUM=" + this.cbxAcumulado.SelectedValue + "&TFGPID=" + cbxTipoFormatoGGPP.SelectedValue.ToString().Trim() + "&NTF=" + cbxTipoFormatoGGPP.SelectedItem.Text.ToString().Trim() + "&FORMATOREPORTE=" + formatoReporte + "", ""));
                
                }
                else if (TipoReporte(Convert.ToInt32(cbxTipoFormatoGGPP.SelectedValue.ToString())) == "3")
                {
                    String AreaEEFFMensual = "";
                    String UNGEEFFMensual = "";
                    formatoReporte = "2";
                    if (cbxAreas.SelectedValue.Trim() == "")
                    {
                        AreaEEFFMensual = "0";
                    }
                    else
                    {
                        AreaEEFFMensual = cbxAreas.SelectedValue.Trim();
                    }
                    if (cbxUnidadDeNegocio.SelectedValue.Trim() == "")
                    {
                        UNGEEFFMensual = "0";
                    }
                    else
                    {
                        UNGEEFFMensual = cbxUnidadDeNegocio.SelectedValue.Trim();
                    }
                    if (cbxPeriodo.SelectedValue.ToString().Trim() == "")
                    {
                        showMessage("Seleccionar Mes");
                        return;
                    }
                    Int32 Mes = Convert.ToInt32(cbxPeriodo.SelectedValue.ToString().Trim());
                    Response.Write(Cls_Utilitaria.f_Show("frmEEFFMensual.aspx?Mes=" + Mes + "&HTL=" + Session["HotelID"] + "&ARA=" + AreaEEFFMensual + "&UNG=" + UNGEEFFMensual + "&NVL=0&ACUM=" + this.cbxAcumulado.SelectedValue + "&TFGPID=" + cbxTipoFormatoGGPP.SelectedValue.ToString().Trim() + "&NTF=" + cbxTipoFormatoGGPP.SelectedItem.Text.ToString().Trim() + "&FORMATOREPORTE=" + formatoReporte + "", ""));
                }
                else if (cbxTipoFormatoGGPP.SelectedValue.ToString().Trim() == "07")
                {
                    String AreaEEFFMensual = "";
                    String UNGEEFFMensual = "";
                    formatoReporte = "0";
                    if (cbxAreas.SelectedValue.Trim() == "")
                    {
                        AreaEEFFMensual = "0";
                    }
                    else
                    {
                        AreaEEFFMensual = cbxAreas.SelectedValue.Trim();
                    }
                    if (cbxUnidadDeNegocio.SelectedValue.Trim() == "")
                    {
                        UNGEEFFMensual = "0";
                    }
                    else
                    {
                        UNGEEFFMensual = cbxUnidadDeNegocio.SelectedValue.Trim();
                    }
                    if (cbxPeriodo.SelectedValue.ToString().Trim() == "")
                    {
                        showMessage("Seleccionar Mes");
                        return;
                    }
                    Int32 Mes = Convert.ToInt32(cbxPeriodo.SelectedValue.ToString().Trim());
                    Response.Write(Cls_Utilitaria.f_Show("frmEEFFMensual.aspx?Mes=" + Mes + "&HTL=" + Session["HotelID"] + "&ARA=" + AreaEEFFMensual + "&UNG=" + UNGEEFFMensual + "&NVL=0&ACUM=" + this.cbxAcumulado.SelectedValue + "&TFGPID=03&NTF=" + cbxTipoFormatoGGPP.SelectedItem.Text.ToString().Trim() + "&FORMATOREPORTE=" + formatoReporte + "", ""));
                }
            }
                        
            else
            {
                String HotelID = "0", strUNG = "0", strArea = "0";
                Int32 Mes = 0;

                if (!String.IsNullOrEmpty(this.cbxSucursal.SelectedValue.ToString().Trim()))
                {
                    HotelID = this.cbxSucursal.SelectedValue.ToString().Trim();
                }
                if (cbxPeriodo.SelectedValue.ToString().Trim() == "")
                {
                    showMessage("Seleccionar Mes");
                    return;
                }
                else
                {
                    Mes = Convert.ToInt32(cbxPeriodo.SelectedValue.ToString().Trim());
                }

                if (!String.IsNullOrEmpty(this.cbxUnidadDeNegocio.SelectedValue))
                {
                    strUNG = this.cbxUnidadDeNegocio.SelectedValue;
                }

                if (!String.IsNullOrEmpty(this.cbxAreas.SelectedValue))
                {
                    strArea = this.cbxAreas.SelectedValue;
                }

                Response.Write(Cls_Utilitaria.f_Show("BalanceComprobacion.aspx?MON=" + this.cbxMoneda.SelectedValue.ToString().Trim() + "&Mes=" + Mes + "&ACUM="+ this.cbxAcumulado.SelectedValue +"&HTL=" + HotelID + "&UNG=" + strUNG + "&ARA=" + strArea + "&NVL=0", "Balance de Comprobación"));
            }
        }
        else
        {
            if (cbxDiarioAuxiliar.SelectedValue != "" && cbxCtaInicio.SelectedValue == "" && cbxCtaFinal.SelectedValue == "")//2. Si Diario Auxiliar///////////////////////////////////////////
            {
                if (cbxDiarioAuxiliar.SelectedValue != "-1" && cbxDiarioAuxiliar.SelectedValue != "-2" && this.txtRucEmpresa.Text == "")
                {
                    if (ValidarFecha())
                    {
                        String FechaDesde = "";
                        String FechaHasta = "";
                        if (txtDesde.DbSelectedDate == null) { FechaDesde = ""; } else { FechaDesde = txtDesde.DbSelectedDate.ToString().Trim(); }
                        if (txtHasta.DbSelectedDate == null) { FechaHasta = ""; } else { FechaHasta = txtHasta.DbSelectedDate.ToString().Trim(); }
                        if (FechaDesde != "")
                        {
                            CreaoActCookie("FechaDesde", FechaDesde);
                        }
                        if (FechaHasta != "")
                        {
                            CreaoActCookie("FechaHasta", FechaHasta);
                        }
                        Response.Write(Cls_Utilitaria.f_Show("frmListaAsientos.aspx?ID=" + cbxDiarioAuxiliar.SelectedValue.Trim() + "&UNG=" + cbxUnidadDeNegocio.SelectedValue.Trim() + "&ARA=" + cbxAreas.SelectedValue.Trim() + "&HTL=" + cbxSucursal.SelectedValue.Trim()+ "&FD=" + FechaDesde + "&FH=" + FechaHasta + "&CI=" + cbxCtaInicio.SelectedValue.Trim() + "&CF=" + cbxCtaFinal.SelectedValue.Trim(), "Detallado"));
                    }
                }
                else if (cbxDiarioAuxiliar.SelectedValue == "-1" && this.txtRucEmpresa.Text == "")
                {
                    if (ValidarFecha())
                    {
                        String FechaDesde = "";
                        String FechaHasta = "";
                        if (txtDesde.DbSelectedDate == null) { FechaDesde = ""; } else { FechaDesde = txtDesde.DbSelectedDate.ToString().Trim(); }
                        if (txtHasta.DbSelectedDate == null) { FechaHasta = ""; } else { FechaHasta = txtHasta.DbSelectedDate.ToString().Trim(); }
                        if (FechaDesde != "")
                        {
                            CreaoActCookie("FechaDesde", FechaDesde);
                        }
                        if (FechaHasta != "")
                        {
                            CreaoActCookie("FechaHasta", FechaHasta);
                        }
                       // String CodigoPlanCuenta1, CodigoPlanCuenta2;

                        try { CodigoPlanCuenta1 = cbxCtaInicio.Text.Substring(0, (cbxCtaInicio.Text.IndexOf(' '))); }
                        catch { CodigoPlanCuenta1 = ""; }
                        try { CodigoPlanCuenta2 = cbxCtaFinal.Text.Substring(0, (cbxCtaFinal.Text.IndexOf(' '))); }
                        catch { CodigoPlanCuenta2 = ""; }

                        Response.Write(Cls_Utilitaria.f_Show("ConsolidadoDiarioAuxiliar.aspx?UNG=" + cbxUnidadDeNegocio.SelectedValue.Trim() + "&ARA=" + cbxAreas.SelectedValue.Trim() + "&HTL=" + cbxSucursal.SelectedValue.Trim() + "&FD=" + FechaDesde + "&FH=" + FechaHasta + "&CI=" + cbxCtaInicio.SelectedValue.Trim() + "&CF=" + cbxCtaFinal.SelectedValue.Trim() + "&CPC1=" + CodigoPlanCuenta1 + "&CPC2=" + CodigoPlanCuenta2, "Consolidado"));
                    }

                    else
                    {
                        showMessage("La Fecha Desde debe ser menor que la Fecha Hasta");
                        return;
                    }
                }
                else if (cbxDiarioAuxiliar.SelectedValue == "-2" && this.txtRucEmpresa.Text == "")
                {
                    if (ValidarFecha())
                    {
                        String FechaDesde = "";
                        String FechaHasta = "";
                        if (txtDesde.DbSelectedDate == null) { FechaDesde = ""; } else { FechaDesde = txtDesde.DbSelectedDate.ToString().Trim(); }
                        if (txtHasta.DbSelectedDate == null) { FechaHasta = ""; } else { FechaHasta = txtHasta.DbSelectedDate.ToString().Trim(); }
                        if (FechaDesde != "")
                        {
                            CreaoActCookie("FechaDesde", FechaDesde);
                        }
                        if (FechaHasta != "")
                        {
                            CreaoActCookie("FechaHasta", FechaHasta);
                        }
                        

                        try { CodigoPlanCuenta1 = cbxCtaInicio.Text.Substring(0, (cbxCtaInicio.Text.IndexOf(' '))); }
                        catch { CodigoPlanCuenta1 = ""; }
                        try { CodigoPlanCuenta2 = cbxCtaFinal.Text.Substring(0, (cbxCtaFinal.Text.IndexOf(' '))); }
                        catch { CodigoPlanCuenta2 = ""; }

                        Response.Write(Cls_Utilitaria.f_Show("ConsolidadoDiarioAuxiliarComprobante.aspx?UNG=" + cbxUnidadDeNegocio.SelectedValue.Trim() + "&ARA=" + cbxAreas.SelectedValue.Trim() + "&HTL=" + cbxSucursal.SelectedValue.Trim() + "&FD=" + FechaDesde + "&FH=" + FechaHasta + "&CI=" + cbxCtaInicio.SelectedValue.Trim() + "&CF=" + cbxCtaFinal.SelectedValue.Trim() + "&CPC1=" + CodigoPlanCuenta1 + "&CPC2=" + CodigoPlanCuenta2, "ConsolidadoComprobante"));
                    }
                    else
                    {
                        showMessage("La Fecha Desde debe ser menor que la Fecha Hasta");
                        return;
                    }
                }
                else if (this.txtRucEmpresa.Text != "" && Convert.ToInt32(this.cbxDiarioAuxiliar.SelectedValue) > 0)
                {
                    if (ValidarFecha())
                    {
                        String FechaDesde = "";
                        String FechaHasta = "";
                        try
                        {
                            FechaDesde = String.Format("{0:dd/MM/yyyy}", txtDesde.SelectedDate.Value);
                            CreaoActCookie("FechaDesde", FechaDesde);
                        }
                        catch { FechaDesde = ""; }
                        try
                        {
                            FechaHasta = String.Format("{0:dd/MM/yyyy}", txtHasta.SelectedDate.Value);
                            CreaoActCookie("FechaHasta", FechaHasta);
                        }
                        catch { FechaHasta = ""; }

                        String CodigoPlanCuenta;
                        try { CodigoPlanCuenta = cbxCtaInicio.Text.Substring(0, (cbxCtaInicio.Text.IndexOf(' '))); }
                        catch { CodigoPlanCuenta = ""; }

                        try { CodigoPlanCuenta2 = cbxCtaFinal.Text.Substring(0, (cbxCtaFinal.Text.IndexOf(' '))); }
                        catch { CodigoPlanCuenta2 = ""; }

                        Int32 diarioauxiliar = (cbxDiarioAuxiliar.SelectedValue == "" ? 0 : Convert.ToInt32(cbxDiarioAuxiliar.SelectedValue));
                        String whereDiarioAuxiliar = "";
                        if (diarioauxiliar > 0)
                        {
                            diarioauxiliar = diarioauxiliar;
                            whereDiarioAuxiliar = diarioauxiliar.ToString();
                        }
                        else
                        {
                            diarioauxiliar = 0;
                            whereDiarioAuxiliar = "";
                        }

                        if (txtRucEmpresa.Entries.Count > 0)
                        {
                            if (txtRucEmpresa.Entries[0].Value.ToString().Trim() == "")
                            {
                                EmpresaID = 0;
                            }
                            else
                            {
                                EmpresaID = Convert.ToInt32(txtRucEmpresa.Entries[0].Value.ToString().Trim());
                            }
                        }
                        else
                        {
                            EmpresaID = 0;
                        }

                        if (cbxTipoDoc.SelectedValue.ToString().Trim() == "")
                        {
                            TipoDoc = 0;
                        }
                        else
                        {
                            TipoDoc = Convert.ToInt32(cbxTipoDoc.SelectedValue.ToString().Trim());
                        }
                        Response.Write(Cls_Utilitaria.f_Show("frmAnalisisporCuenta.aspx?Mes=-1&CTAID=" +
                            CodigoPlanCuenta +//cbxCtaInicio.SelectedValue.Trim() +
                            "&CTAID2=" + CodigoPlanCuenta2 +//cbxCtaFinal.SelectedValue.Trim() +
                            "&HTL=" + Session["HotelID"] +
                            "&ARA=" + cbxAreas.SelectedValue.Trim() +
                            "&UNG=" + cbxUnidadDeNegocio.SelectedValue.Trim() +
                            "&FED=" + FechaDesde +
                            "&FEH=" + FechaHasta +
                            "&SUD=" + whereDiarioAuxiliar +
                            "&MON=" + Session["MonedaID"].ToString() +
                            "&SubdiarioID=" + whereDiarioAuxiliar +
                            "&EmpresaID=" + EmpresaID +
                            "&TipoDoc=" + TipoDoc +
                            "&ACUM=0", "AnalisisPorCuenta"));
                    }
                    else
                    {
                        showMessage("La Fecha Desde debe ser menor que la Fecha Hasta");
                        return;
                    }
                }
            }
            
            else
            {
                if (cbxLibrosContables.SelectedValue != "") //Si Libros Contables(Estado Cuenta)///////////////////////////
                    {
                        switch (cbxLibrosContables.SelectedValue)
                        {
                            case "5": Response.Write(Cls_Utilitaria.f_Show("EstadoCuenta.aspx?", "ConsolidadoGastoPorCentroCosto"));
                                break;
                            case "6": Response.Write(Cls_Utilitaria.f_Show("EstadoCuentaProveedor.aspx", "ConsolidadoProveedor"));
                                break;
                        }
                    }
                if ((cbxCtaInicio.SelectedValue == "0" || cbxCtaFinal.SelectedValue == "0") && cbxLibrosContables.SelectedValue == "")
                {
                    Response.Write(Cls_Utilitaria.f_Show("ConsolidadoSaldosPorCuenta.aspx?UNG=" + cbxUnidadDeNegocio.SelectedValue.Trim() + "&ARA=" + cbxAreas.SelectedValue.Trim() + "&HTL=" + cbxSucursal.SelectedValue.Trim(), "ConsolidadoSaldosPorCuenta"));
                }
                else if ((cbxCtaInicio.SelectedValue == "-1" || cbxCtaFinal.SelectedValue == "0") && cbxLibrosContables.SelectedValue == "")
                {
                    Response.Write(Cls_Utilitaria.f_Show("ConsolidadoDiarioAuxiliarClase.aspx?UNG=" + cbxUnidadDeNegocio.SelectedValue.Trim() + "&ARA=" + cbxAreas.SelectedValue.Trim() + "&HTL=" + cbxSucursal.SelectedValue.Trim() + "&FD=" + Session["Desde"].ToString() + "&FH=" + Session["Hasta"].ToString() + "&CI=" + cbxCtaInicio.SelectedValue.Trim() + "&CF=" + cbxCtaFinal.SelectedValue.Trim() + "&CPC1=&CPC2=", "ConsolidadoClase"));
                }
                else if ((cbxCtaInicio.SelectedValue == "-2" || cbxCtaFinal.SelectedValue == "0") && cbxLibrosContables.SelectedValue == "")
                {
                    Response.Write(Cls_Utilitaria.f_Show("DetalladoPorAsiento.aspx?SUBDI=" + cbxDiarioAuxiliar.SelectedValue.Trim() + "&UNG=" + cbxUnidadDeNegocio.SelectedValue.Trim() + "&ARA=" + cbxAreas.SelectedValue.Trim() + "&HTL=" + cbxSucursal.SelectedValue.Trim() + "&FD=" + Session["Desde"].ToString() + "&FH=" + Session["Hasta"].ToString() + "&CI=" + cbxCtaInicio.SelectedValue.Trim() + "&CF=" + cbxCtaFinal.SelectedValue.Trim() + "&CPC1=&CPC2=", "ConsolidadoClase"));
                }
                else if (this.txtRucEmpresa.Text != "")
                {
                    if (ValidarFecha())
                    {
                        String FechaDesde = "";
                        String FechaHasta = "";
                        try
                        {
                            FechaDesde = String.Format("{0:dd/MM/yyyy}", txtDesde.SelectedDate.Value);
                            CreaoActCookie("FechaDesde", FechaDesde);
                        }
                        catch { FechaDesde = ""; }
                        try
                        {
                            FechaHasta = String.Format("{0:dd/MM/yyyy}", txtHasta.SelectedDate.Value);
                            CreaoActCookie("FechaHasta", FechaHasta);
                        }
                        catch { FechaHasta = ""; }

                        String CodigoPlanCuenta;
                        try { CodigoPlanCuenta = cbxCtaInicio.Text.Substring(0, (cbxCtaInicio.Text.IndexOf(' '))); }
                        catch { CodigoPlanCuenta = ""; }

                        try { CodigoPlanCuenta2 = cbxCtaFinal.Text.Substring(0, (cbxCtaFinal.Text.IndexOf(' '))); }
                        catch { CodigoPlanCuenta2 = ""; }

                        Int32 diarioauxiliar = (cbxDiarioAuxiliar.SelectedValue == "" ? 0 : Convert.ToInt32(cbxDiarioAuxiliar.SelectedValue));
                        String whereDiarioAuxiliar = "";
                        if (diarioauxiliar > 0)
                        {
                            diarioauxiliar = diarioauxiliar;
                            whereDiarioAuxiliar = diarioauxiliar.ToString();
                        }
                        else
                        {
                            diarioauxiliar = 0;
                            whereDiarioAuxiliar = "";
                        }

                        if (txtRucEmpresa.Entries.Count > 0)
                        {
                            if (txtRucEmpresa.Entries[0].Value.ToString().Trim() == "")
                            {
                                EmpresaID = 0;
                            }
                            else
                            {
                                EmpresaID = Convert.ToInt32(txtRucEmpresa.Entries[0].Value.ToString().Trim());
                            }
                        }
                        else
                        {
                            EmpresaID = 0;
                        }

                        if (cbxTipoDoc.SelectedValue.ToString().Trim() == "")
                        {
                            TipoDoc = 0;
                        }
                        else
                        {
                            TipoDoc = Convert.ToInt32(cbxTipoDoc.SelectedValue.ToString().Trim());
                        }
                        Response.Write(Cls_Utilitaria.f_Show("frmAnalisisporCuenta.aspx?Mes=-1&CTAID=" +
                            CodigoPlanCuenta +//cbxCtaInicio.SelectedValue.Trim() +
                            "&CTAID2=" + CodigoPlanCuenta2 +//cbxCtaFinal.SelectedValue.Trim() +
                            "&HTL=" + Session["HotelID"] +
                            "&ARA=" + cbxAreas.SelectedValue.Trim() +
                            "&UNG=" + cbxUnidadDeNegocio.SelectedValue.Trim() +
                            "&FED=" + FechaDesde +
                            "&FEH=" + FechaHasta +
                            "&SUD=" + whereDiarioAuxiliar +
                            "&MON=" + Session["MonedaID"].ToString() +
                            "&SubdiarioID=" + whereDiarioAuxiliar +
                            "&EmpresaID=" + EmpresaID +
                            "&TipoDoc=" + TipoDoc +
                            "&ACUM=0", "AnalisisPorCuenta"));
                    }
                    else
                    {
                        showMessage("La Fecha Desde debe ser menor que la Fecha Hasta");
                        return;
                    }
                }
                
                else if ((cbxCtaInicio.SelectedValue != "" || cbxCtaFinal.SelectedValue != "") && cbxLibrosContables.SelectedValue == "")
                {
                    if (ValidarFecha())
                    {
                        String FechaDesde = "";
                        String FechaHasta = "";
                        try
                        {
                            FechaDesde = String.Format("{0:dd/MM/yyyy}", txtDesde.SelectedDate.Value);
                            CreaoActCookie("FechaDesde", FechaDesde);
                        }
                        catch { FechaDesde = ""; }
                        try
                        {
                            FechaHasta = String.Format("{0:dd/MM/yyyy}", txtHasta.SelectedDate.Value);
                            CreaoActCookie("FechaHasta", FechaHasta);
                        }
                        catch { FechaHasta = ""; }

                        String CodigoPlanCuenta;
                        try { CodigoPlanCuenta = cbxCtaInicio.Text.Substring(0, (cbxCtaInicio.Text.IndexOf(' '))); }
                        catch { CodigoPlanCuenta = ""; }

                        try { CodigoPlanCuenta2 = cbxCtaFinal.Text.Substring(0, (cbxCtaFinal.Text.IndexOf(' '))); }
                        catch { CodigoPlanCuenta2 = ""; }

                        Int32 diarioauxiliar = (cbxDiarioAuxiliar.SelectedValue == "" ? 0 : Convert.ToInt32(cbxDiarioAuxiliar.SelectedValue));
                        String whereDiarioAuxiliar = "";
                        if (diarioauxiliar > 0)
                        {
                            diarioauxiliar = diarioauxiliar;
                            whereDiarioAuxiliar = diarioauxiliar.ToString();
                        }else{
                            diarioauxiliar = 0;
                            whereDiarioAuxiliar = "";
                        }

                        if(txtRucEmpresa.Entries.Count > 0){
                            if (txtRucEmpresa.Entries[0].Value.ToString().Trim() == "")
                            {
                                EmpresaID = 0;
                            }
                            else
                            {
                                EmpresaID = Convert.ToInt32(txtRucEmpresa.Entries[0].Value.ToString().Trim());
                            }
                        }
                        else
                        {
                            EmpresaID = 0;
                        }
                        
                        if (cbxTipoDoc.SelectedValue.ToString().Trim() == ""){
                            TipoDoc = 0;
                        }
                        else
                        {
                            TipoDoc = Convert.ToInt32(cbxTipoDoc.SelectedValue.ToString().Trim());
                        }
                        Response.Write(Cls_Utilitaria.f_Show("frmAnalisisporCuenta.aspx?Mes=-1&CTAID=" +
                            CodigoPlanCuenta +//cbxCtaInicio.SelectedValue.Trim() +
                            "&CTAID2=" + CodigoPlanCuenta2 +//cbxCtaFinal.SelectedValue.Trim() +
                            "&HTL=" + Session["HotelID"] +
                            "&ARA=" + cbxAreas.SelectedValue.Trim() +
                            "&UNG=" + cbxUnidadDeNegocio.SelectedValue.Trim() +
                            "&FED=" + FechaDesde +
                            "&FEH=" + FechaHasta +
                            "&SUD=" + whereDiarioAuxiliar +
                            "&MON="+ Session["MonedaID"].ToString() +
                            "&SubdiarioID=" + whereDiarioAuxiliar +
                            "&EmpresaID=" + EmpresaID +
                            "&TipoDoc=" + TipoDoc +
                            "&ACUM=0", "AnalisisPorCuenta"));
                    }
                    else
                    {
                        showMessage("La Fecha Desde debe ser menor que la Fecha Hasta");
                        return;
                    }
                }

                
                else
                {
                    if (cbxUnidadDeNegocio.SelectedValue != "")
                    {
                        if (cbxUnidadDeNegocio.SelectedValue == "0")
                        {
                            Response.Write(Cls_Utilitaria.f_Show("ConsolidadoGastoPorCentroCosto.aspx?UNG=" + cbxUnidadDeNegocio.SelectedValue.Trim() + "&ARA=" + cbxAreas.SelectedValue.Trim() + "&HTL=" + cbxSucursal.SelectedValue.Trim() +"&MON=" + Session["MonedaID"].ToString(), "ConsolidadoGastoPorCentroCosto"));
                        }
                        else if (cbxUnidadDeNegocio.SelectedValue == "-1")
                        {
                            Response.Write(Cls_Utilitaria.f_Show("ConsolidadoUnidNegocio2.aspx?UNG=0&ARA=" + cbxAreas.SelectedValue.Trim() + "&HTL=" + cbxSucursal.SelectedValue.Trim() + "&MON=" + Session["MonedaID"].ToString(), "ConsolidadoGastoPorCentroCosto"));
                        }
                        else if (cbxUnidadDeNegocio.SelectedValue != "")
                        {
                            Response.Write(Cls_Utilitaria.f_Show("ConsolidadoGastoPorCentroCosto.aspx?UNG=" + cbxUnidadDeNegocio.SelectedValue.Trim() + "&ARA=" + cbxAreas.SelectedValue.Trim() + "&HTL=" + cbxSucursal.SelectedValue.Trim() + "&MON=" + Session["MonedaID"].ToString(), "ConsolidadoGastoPorCentroCosto"));
                        }
                    }
                    else if (cbxAreas.SelectedValue != "")
                    {
                        Response.Write(Cls_Utilitaria.f_Show("ConsolidadoGastosPorArea.aspx?UNG=" + cbxUnidadDeNegocio.SelectedValue.Trim() + "&ARA=" + cbxAreas.SelectedValue.Trim() + "&HTL=" + cbxSucursal.SelectedValue.Trim() + "&MON=" + Session["MonedaID"].ToString(), "ConsolidadoGastoPorCentroCosto"));
                    }
                    

                }
            }
            //////////////////// FIN ///////////////////////
        }
        if (cbxTipoFormatoGGPP.SelectedValue != string.Empty)
        {
            if (TipoReporte(Convert.ToInt32(cbxTipoFormatoGGPP.SelectedValue.ToString())) == "4")
            {
                string usuario = Convert.ToString(Session["Usuario"]);
                string nombreEmpresa = BL.BLSesiones.Instance.Establecimientos(Session["EmpresaID"].ToString().Trim());
                string nombrehotel = BL.BLSesiones.Instance.Empresa(Session["HotelID"].ToString().Trim());
               
                if (cbxPeriodo.SelectedValue == string.Empty)
                {
                    cbxPeriodo.SelectedValue = "1";
                }

                Response.Write(Cls_Utilitaria.f_Show("frmMatrizPorArea.html?MON=" + cbxMoneda.SelectedValue.Trim() + "&PER=" + cbxPeriodo.SelectedValue.Trim() + "&PERI=" + Session["txtperiodo"].ToString() + "&HTL=" + Session["HotelID"] + "&EMP=" + Session["EmpresaID"].ToString() + "&TPF=" + cbxAcumulado.SelectedValue.Trim() + null + null
                    + "&USER=" + usuario + "&NOMEMPR=" + nombreEmpresa + "&NOMHOT=" + nombrehotel, "frmMatrizPorArea.html"));
            }
        }
        
        CreaoActCookie("FechaDesde", this.txtDesde.SelectedDate.ToString());
        CreaoActCookie("FechaHasta", this.txtHasta.SelectedDate.ToString());
    }

    


     
    private static string GetConnectionString()
    {
        return ConfigurationManager.ConnectionStrings["SHIOL_CONTA_BTHConnectionString"].ConnectionString;
    }

    //ArrayList listaCampos = new ArrayList();
    
   

    [WebMethod]
    [ScriptMethod]
    public static string getServerDateTime(string msg)
    {
        String result = "Resultado : " + DateTime.Now + " - desde Codigo";
        return result;

    }

    [WebMethod]
    [ScriptMethod]
    public static List<string> DevolverCampos(int vMonedaID, int vPeriodoID, int vEjercicio, int vHotelID, int vEstablecimientoID, int vNivelID, int vAcumulado)
    {      
        List<string> result = new List<string>();
        int d = 0;
       // result = ListarCampos(vMonedaID, vPeriodoID, vEjercicio, vHotelID, vEstablecimientoID, vNivelID, vAcumulado);
        return result;
    }


    List<string> listaCampos2 = new List<string>();


    [WebMethod]
    [ScriptMethod]
    public static List<BEMonedas> ListarMonedas()
    {
        BLMonedas objMonedas = new BLMonedas();
        List<BEMonedas> ListaMonedas = new List<BEMonedas>();
        ListaMonedas = objMonedas.fnSelMonedasAll();
        return ListaMonedas;
    }

    [WebMethod]
    [ScriptMethod]
    public static List<string> ListarCampos(int vMonedaID, int vPeriodoID, int vEjercicio, int vHotelID, int vEstablecimientoID, int vNivelID, int vTipoFormato)
    {
        List<string> listaCampos = new List<string>();
        SqlConnection sqlConnection1 = new SqlConnection(GetConnectionString());
        SqlCommand cmd = new SqlCommand();
        SqlDataReader reader;

        cmd.CommandText = "UCO_MatrizPorAreaDeCostoPivotArea";
        cmd.CommandType = CommandType.StoredProcedure;
        SqlParameter MonedaID = cmd.Parameters.Add("@MonedaID", SqlDbType.Int);
        SqlParameter PeriodoID = cmd.Parameters.Add("@PeriodoID", SqlDbType.Int);
        SqlParameter Ejercicio = cmd.Parameters.Add("@Ejercicio", SqlDbType.Int);
        SqlParameter HotelID = cmd.Parameters.Add("@HotelID", SqlDbType.Int);
        SqlParameter EstablecimientoID = cmd.Parameters.Add("@EstablecimientoID", SqlDbType.Int);
        SqlParameter NivelID = cmd.Parameters.Add("@NivelID", SqlDbType.Int);    
        SqlParameter Acumulado = cmd.Parameters.Add("@Acumulado", SqlDbType.Int);

        MonedaID.Value = vMonedaID;
        PeriodoID.Value = vPeriodoID;
        Ejercicio.Value = vEjercicio;
        HotelID.Value = vHotelID;
        EstablecimientoID.Value = vEstablecimientoID;
        NivelID.Value = Convert.ToInt32(0);
        Acumulado.Value = vTipoFormato;

        cmd.Connection = sqlConnection1;

        sqlConnection1.Open();

        reader = cmd.ExecuteReader();
        // Data is accessible through the DataReader object here.
        List<string> lista2 = new List<string>();
        while (reader.Read())
        {
            lista2.Add(reader["NombreArea"].ToString().Trim());
        }

        listaCampos = lista2;
        sqlConnection1.Close();
        //close DataReader
        reader.Close();
        return listaCampos;
    }

    [WebMethod]
    [ScriptMethod]
    public static List<string> ListarDatos(int vMonedaID, int vPeriodoID, int vEjercicio, int vHotelID, int vEstablecimientoID, int vNivelID, int vTipoFormato, string vdesde, string vhasta)
    {
        List<string> listaDatos = new List<string>();
        //DateTime vdesde;
        //DateTime vhasta;
        //List<string> listaDatos = ListarCampos(vMonedaID, vPeriodoID, vEjercicio, vHotelID, vEstablecimientoID, vNivelID, vTipoFormato);
        SqlConnection sqlConnection1 = new SqlConnection(GetConnectionString());
        SqlCommand cmd = new SqlCommand();
        SqlDataReader reader;

        cmd.CommandText = "UCO_MatrizPorAreaDeCostoPivot";
        cmd.CommandType = CommandType.StoredProcedure;
        SqlParameter MonedaID = cmd.Parameters.Add("@MonedaID", SqlDbType.Int);
        SqlParameter PeriodoID = cmd.Parameters.Add("@PeriodoID", SqlDbType.Int);
        SqlParameter Ejercicio = cmd.Parameters.Add("@Ejercicio", SqlDbType.Int);
        SqlParameter HotelID = cmd.Parameters.Add("@HotelID", SqlDbType.Int);
        SqlParameter EstablecimientoID = cmd.Parameters.Add("@EstablecimientoID", SqlDbType.Int);
        SqlParameter NivelID = cmd.Parameters.Add("@NivelID", SqlDbType.Int);
        SqlParameter Acumulado = cmd.Parameters.Add("@Acumulado", SqlDbType.Int);
        SqlParameter desde = cmd.Parameters.Add("@desde", SqlDbType.DateTime);
        SqlParameter hasta = cmd.Parameters.Add("@hasta", SqlDbType.DateTime);

        MonedaID.Value = vMonedaID;
        PeriodoID.Value = vPeriodoID;
        Ejercicio.Value = vEjercicio;
        HotelID.Value = vHotelID;
        EstablecimientoID.Value = vEstablecimientoID;
        NivelID.Value = Convert.ToInt32(0);
        Acumulado.Value = vTipoFormato;

        DateTime InicioMes = new DateTime(vEjercicio, vPeriodoID, 1);
        DateTime FinMes = InicioMes.AddMonths(1).AddDays(-1);

        if (vdesde == null && vhasta == null)
        {
            vdesde = Convert.ToDateTime(InicioMes).ToString();
            vhasta = Convert.ToDateTime(FinMes).ToString();
        }
        desde.Value = vdesde;
        hasta.Value = vhasta;

        

        cmd.Connection = sqlConnection1;

        sqlConnection1.Open();

        reader = cmd.ExecuteReader();

        List<string> lista2 = new List<string>();
        List<string> listaTotales = new List<string>();
        DataTable dtCampos = new DataTable();

        //while (reader.Read())
        //{
        //    lista2.Add(reader[1].ToString());
        //}
        dtCampos.Load(reader);
        string campos = "";

        foreach (DataRow dtRow in dtCampos.Rows)
        {
            foreach (DataColumn dc in dtCampos.Columns)
            {
                campos += dtRow[dc].ToString() + "*";
            }
            campos = campos.Substring(0, campos.Length - 1);
            lista2.Add(campos);
            campos = "";
        }

        listaDatos = lista2;
        sqlConnection1.Close();
        //close DataReader
        reader.Close();
        return listaDatos;
    }

    [WebMethod]
    [ScriptMethod]
    public static List<string> ListarTotalesDatos(int vMonedaID, int vPeriodoID, int vEjercicio, int vHotelID, int vEstablecimientoID, int vNivelID, int vTipoFormato, string vdesde, string vhasta)
    {
        List<string> listaDatos = new List<string>();
        SqlConnection sqlConnection1 = new SqlConnection(GetConnectionString());
        SqlCommand cmd = new SqlCommand();
        SqlDataReader reader;

        cmd.CommandText = "UCO_MatrizPorAreaDeCostoPivot";
        cmd.CommandType = CommandType.StoredProcedure;
        SqlParameter MonedaID = cmd.Parameters.Add("@MonedaID", SqlDbType.Int);
        SqlParameter PeriodoID = cmd.Parameters.Add("@PeriodoID", SqlDbType.Int);
        SqlParameter Ejercicio = cmd.Parameters.Add("@Ejercicio", SqlDbType.Int);
        SqlParameter HotelID = cmd.Parameters.Add("@HotelID", SqlDbType.Int);
        SqlParameter EstablecimientoID = cmd.Parameters.Add("@EstablecimientoID", SqlDbType.Int);
        SqlParameter NivelID = cmd.Parameters.Add("@NivelID", SqlDbType.Int);
        SqlParameter Acumulado = cmd.Parameters.Add("@Acumulado", SqlDbType.Int);
        SqlParameter desde = cmd.Parameters.Add("@desde", SqlDbType.DateTime);
        SqlParameter hasta = cmd.Parameters.Add("@hasta", SqlDbType.DateTime);

        MonedaID.Value = vMonedaID;
        PeriodoID.Value = vPeriodoID;
        Ejercicio.Value = vEjercicio;
        HotelID.Value = vHotelID;
        EstablecimientoID.Value = vEstablecimientoID;
        NivelID.Value = Convert.ToInt32(0);
        Acumulado.Value = vTipoFormato;

        DateTime InicioMes = new DateTime(vEjercicio, vPeriodoID, 1);
        DateTime FinMes = InicioMes.AddMonths(1).AddDays(-1);

        if (vdesde == null && vhasta == null)
        {
            vdesde = Convert.ToDateTime(InicioMes).ToString();
            vhasta = Convert.ToDateTime(FinMes).ToString();
        }
        desde.Value = vdesde;
        hasta.Value = vhasta;

        cmd.Connection = sqlConnection1;
        sqlConnection1.Open();

        reader = cmd.ExecuteReader();
        // Data is accessible through the DataReader object here.
        List<string> lista3 = new List<string>();
        DataTable dtCampos = new DataTable();

            dtCampos.Load(reader);
            decimal totales = 0;
            foreach (DataColumn col in dtCampos.Columns)
            {
                if (col.DataType == typeof(System.Single)
                   || col.DataType == typeof(System.Double)
                   || col.DataType == typeof(System.Decimal)
                   || col.DataType == typeof(System.Int16)
                   || col.DataType == typeof(System.Int32)
                   || col.DataType == typeof(System.Int64))
                {
                    foreach (DataRow row in col.Table.Rows)
                    {
                        if (row[col].ToString() == null || row[col] == DBNull.Value || row[col].ToString() == string.Empty)
                        {
                           totales += 0;
                        }
                        else
                        {
                            totales += Convert.ToDecimal(row[col]);
                        }
                    }

                    lista3.Add(totales.ToString());

                    totales = 0;
                }
                else
                {
                    //lista3.Add(" ");
                }
            }

        listaDatos = lista3;
        sqlConnection1.Close();
        reader.Close();
        return listaDatos;
    }

   


    //////////////////// FIN ///////////////////////
    //////////////////// FIN ///////////////////////
    //////////////////// FIN ///////////////////////
    //////////////////// FIN ///////////////////////
    private Boolean ValidarFecha()
    {
        if (txtDesde.SelectedDate != null && txtHasta.SelectedDate != null)
        {
            if (txtDesde.SelectedDate <= txtHasta.SelectedDate)
                return true;
            else
                return false;
        }
        return true;
    }

    protected void btnLimpiar_Click(object sender, EventArgs e)
    {
        s_LimpiarFiltro();
    }

    private void s_LimpiarFiltro()
    {
        txtDesde.DbSelectedDate = "";
        txtHasta.DbSelectedDate = "";
        cbxDiarioAuxiliar.SelectedValue = "";
        cbxSucursal.SelectedValue = "";
        cbxCtaInicio.SelectedValue = "";
        cbxAreas.SelectedValue = "";
        cbxCtaFinal.SelectedValue = "";
        cbxLibrosContables.SelectedValue = "";
        cbxUnidadDeNegocio.SelectedValue = "";
        cbxTipoFormatoGGPP.SelectedValue = "";
        cbxTipoFormatoGGPP.Text = "";
        cbxUnidadDeNegocio.Text = "";
        cbxCtaFinal.Text = "";
        cbxAreas.Text = "";
        cbxSucursal.Text = "";
        cbxDiarioAuxiliar.Text = "";
        cbxLibrosContables.Text = "";
        cbxCtaInicio.Text = "";
    }

    private void s_LimpiarFiltroTabs()
    {
        cbxDiarioAuxiliar.SelectedValue = "";
        cbxSucursal.SelectedValue = "";
        cbxCtaInicio.SelectedValue = "";
        cbxAreas.SelectedValue = "";
        cbxCtaFinal.SelectedValue = "";
        cbxLibrosContables.SelectedValue = "";
        cbxUnidadDeNegocio.SelectedValue = "";
        cbxTipoFormatoGGPP.SelectedValue = "";
        cbxTipoFormatoGGPP.Text = "";
        cbxUnidadDeNegocio.Text = "";
        cbxCtaFinal.Text = "";
        cbxAreas.Text = "";
        cbxSucursal.Text = "";
        cbxDiarioAuxiliar.Text = "";
        cbxLibrosContables.Text = "";
        cbxCtaInicio.Text = "";
    }

    private void s_listarMenuTV()
    {
        BLUsuariosMenu objBLUsuarioMenu = new BLUsuariosMenu();
        BLMenues objBLMenues = new BLMenues();
        List<BEMenues> objBEListMenues = new List<BEMenues>();
        List<BEUsuariosMenu> col_Modulo = objBLUsuarioMenu.fnSelUsuariosMenus_MenuPadres(Convert.ToInt32(Session["UsuarioID"]));
        int i = 0;
        int intLimSup = 0;
        intLimSup = col_Modulo.Count();
        intLimSup -= 1;
        for (i = 0; i <= intLimSup; i++)
        {
            objBEListMenues = objBLMenues.fnSelMenues(col_Modulo[i].MenuID);
            s_AddMenuItemTV(Convert.ToString(objBEListMenues[i].MenuID));
        }
        objBLUsuarioMenu = null;
        objBLMenues = null;
        objBEListMenues = null;
    }
    private void s_AddMenuItemTV(String MenuPadreID)
    {
        BLMenues objBLMenues = new BLMenues();
        List<BEMenues> col_subModulo = new List<BEMenues>();
        col_subModulo = objBLMenues.fnSelMenuesDin("menupadreid=" + Convert.ToInt32(MenuPadreID.Trim()), "1 asc");
        int j = 0;
        int intLimSup = col_subModulo.Count() - 1;
        RadTreeView tvPrueba = (RadTreeView)cbxMenu.Items[0].FindControl("trMenu");
        RadTreeView tvPrueba_MenuNuevo = (RadTreeView)RadPanelBar1.FindItemByText("Configuracion").Items[0].FindControl("RadTreeView1");
        IRadTreeNodeContainer targetPadre = tvPrueba_MenuNuevo;
        for (j = 0; j <= intLimSup; j++)
        {
            {
                RadTreeNode addedNode = new RadTreeNode();
                addedNode.Text = col_subModulo[j].Nombre.Trim();
                addedNode.Value = col_subModulo[j].MenuID.ToString();
                addedNode.NavigateUrl = col_subModulo[j].NombreFormulario.Trim();
                addedNode.Target = "_Blank";
                targetPadre.Nodes.Add(addedNode);
                if (col_subModulo[j].NombreFormulario.Trim() == "#")
                {
                    IRadTreeNodeContainer targetPadre2 = tvPrueba_MenuNuevo;
                    targetPadre2 = tvPrueba_MenuNuevo.Nodes[j];
                    s_AddMenuItem2TV(targetPadre2, col_subModulo[j].MenuID.ToString());
                }
            }
        }
        objBLMenues = null;
        col_subModulo = null;
        tvPrueba_MenuNuevo.ExpandAllNodes();
    }
    private void s_AddMenuItem2TV(IRadTreeNodeContainer targetHijo, String subMenuPadreID)
    {
        BLMenues objBLMenues = new BLMenues();
        List<BEMenues> col_subModulo = new List<BEMenues>();
        col_subModulo = objBLMenues.fnSelMenuesDin("menupadreid=" + Convert.ToInt32(subMenuPadreID.Trim()), "1 asc");
        int j = 0;
        int intLimSup = col_subModulo.Count() - 1;

        for (j = 0; j <= intLimSup; j++)
        {
            {
                RadTreeNode addedNode = new RadTreeNode();
                addedNode.Text = col_subModulo[j].Nombre.Trim();
                addedNode.Value = col_subModulo[j].MenuID.ToString();
                addedNode.NavigateUrl = col_subModulo[j].NombreFormulario.Trim();
                addedNode.PostBack = true;
                addedNode.Target = "_Blank";
                targetHijo.Nodes.Add(addedNode);
            }
        }
        objBLMenues = null;
        col_subModulo = null;

    }

    private void CreaoActCookie(String name, String value)
    {
        if (Request.Cookies[name] == null)
        {
            HttpCookie myCookie = new HttpCookie(name, value);
            myCookie.Expires = DateTime.Now.AddDays(7);
            Response.Cookies.Add(myCookie);
        }
        else
        {
            HttpCookie myCookie = new HttpCookie(name);
            myCookie.Value = value;
            myCookie.Expires = DateTime.Now.AddDays(7);
            Response.Cookies.Add(myCookie);
        }
    }
    private String LeeCookie(String name)
    {
        HttpCookie myCookie = new HttpCookie(name);
        myCookie = Request.Cookies[name];
        if (myCookie != null)
            return myCookie.Value;
        else
            return "";
    }

    protected void btnLimpiarDesde_Click(object sender, ImageClickEventArgs e)
    {
        this.txtDesde.DbSelectedDate = null;
    }
    protected void btnLimpiarHasta_Click(object sender, ImageClickEventArgs e)
    {
        this.txtHasta.DbSelectedDate = null;
    }
    protected void btnLimpiarDiarioAuxiliar_Click(object sender, ImageClickEventArgs e)
    {
        this.cbxDiarioAuxiliar.ClearSelection();
        this.cbxDiarioAuxiliar.Text = String.Empty;
    }
    protected void btnLimpiarPeriodo_Click(object sender, ImageClickEventArgs e)
    {
        this.cbxPeriodo.ClearSelection();
        this.cbxPeriodo.Text = String.Empty;
        txtDesde.Enabled = true;
        txtHasta.Enabled = true;
        CreaoActCookie("Periodo", cbxPeriodo.SelectedValue.ToString());
    }
    protected void btnLimpiarCtaInicio_Click(object sender, ImageClickEventArgs e)
    {
        this.cbxCtaInicio.ClearSelection();
        this.cbxCtaInicio.Text = String.Empty;
    }
    protected void btnLimpiarCtaFinal_Click(object sender, ImageClickEventArgs e)
    {
        this.cbxCtaFinal.ClearSelection();
        this.cbxCtaFinal.Text = String.Empty;
    }
    protected void btnLimpiarTipoFormatoGGPP_Click(object sender, ImageClickEventArgs e)
    {
        this.cbxTipoFormatoGGPP.ClearSelection();
        this.cbxTipoFormatoGGPP.Text = String.Empty;
    }
    protected void btnLimpiarUnidaddeNegocio_Click(object sender, ImageClickEventArgs e)
    {
        this.cbxUnidadDeNegocio.ClearSelection();
        this.cbxUnidadDeNegocio.Text = String.Empty;
    }
    protected void btnLimpiarAreas_Click(object sender, ImageClickEventArgs e)
    {
        this.cbxAreas.ClearSelection();
        this.cbxAreas.Text = String.Empty;
    }
    protected void btnLimpiarSucursal_Click(object sender, ImageClickEventArgs e)
    {
        this.cbxSucursal.ClearSelection();
        this.cbxSucursal.Text = String.Empty;
    }
    protected void btnLimpiarEmpresa_Click(object sender, ImageClickEventArgs e)
    {
        this.txtRucEmpresa.Entries.Clear();
    }
    protected void btnLimpiarTipoDoc_Click(object sender, ImageClickEventArgs e)
    {
        this.cbxTipoDoc.ClearSelection();
        this.cbxTipoDoc.Text = String.Empty;
    }
    protected void btnLimpiarLibros_Click(object sender, ImageClickEventArgs e)
    {
        this.cbxLibrosContables.ClearSelection();
        this.cbxLibrosContables.Text = String.Empty;
    }
    public void RadAjaxManager1_AjaxRequest(object sender, AjaxRequestEventArgs e)
    {
        if(e.Argument.ToString() == "bloquearfechas")
        {
            if (Convert.ToInt32(cbxPeriodo.SelectedValue) > 0)
            {
                CreaoActCookie("Periodo", cbxPeriodo.SelectedValue.ToString());
            }
        }

        if (e.Argument.ToString() == "ReportesGerenciales")
        {
            Session["MostrarControles"] = "";
            Session["MostrarControles"] = "ReportesGerenciales";
        }

        if (e.Argument.ToString() == "ReportesAnaliticos")
        {
            Session["MostrarControles"] = "";
            Session["MostrarControles"] = "ReportesAnaliticos";
        }

        if (e.Argument.ToString() == "Registros")
        {
            Session["MostrarControles"] = "";
            Session["MostrarControles"] = "Registros";
        }
        if (e.Argument.ToString() == "LimpiarFiltrosTabs")
        {
            s_LimpiarFiltroTabs();
        }
    }
}