private void CerrarSesion()
        {
            if (EventosFlags.CierreCajaEstado == CierreCajaEstadoEnum.Abierto)
            {
                var confirmation = new ConfirmationForm(Resources.CerrarSesionConfirmacionCajaAbirta,
                                                        Resources.TextoAceptar, Resources.TextoCancelar);

                if (confirmation.ShowDialog() == DialogResult.OK)
                {
                    var cerrarCajaForm = new CerrarCaja(controlarMargenes: true);
                    if (cerrarCajaForm.ShowDialog() == DialogResult.OK)
                    {
                        CerrarTodosLosTabs();
                        EventosFlags.CierreCajaEstado = CierreCajaEstadoEnum.Cerrado;
                        ControlarCierreCaja();
                        ToggleAccionesRelacionadasACierreDeCaja();

                        MembershipProvider.Logoff();
                        ToggleLoginItems();

                        AbrirTab(new CierreCajaDetalle(cerrarCajaForm.CierreCajaId));
                    }
                }
            }
            else
            {
                Logoff();
            }
            this.Text = this.Tag.ToString();
        }
        private void CerrarCaja(Action cancel = null, bool controlarMargenes = true, bool cerrarSesion = true)
        {
            using (var form = new CerrarCaja(controlarMargenes))
            {
                var result = form.ShowDialog();
                if (result == DialogResult.OK)
                {
                    CerrarTodosLosTabs();
                    EventosFlags.CierreCajaEstado = CierreCajaEstadoEnum.Cerrado;
                    ControlarCierreCaja();
                    ToggleAccionesRelacionadasACierreDeCaja();

                    if (cerrarSesion)
                    {
                        CerrarSesion();
                    }

                    AbrirTab(new CierreCajaDetalle(form.CierreCajaId));
                }
                else
                {
                    if (cancel != null)
                    {
                        cancel();
                    }
                }
            }
        }