public bool duplicar_Esquema_Para_Evaluacion(Puesto puestoAsociado, List<Candidato> cand_Seleccionados)
        {
            AdministradorBD admBD = new AdministradorBD();

            bool realizado = admBD.guardar_Evaluacion(puestoAsociado, cand_Seleccionados);

            if (realizado)
                return true;
            else
                return false;
        }
        public bool cambiarEstado(string alEstado, Cuestionario cuest)
        {
            AdministradorBD admBD = new AdministradorBD();  //intanciacion del administrador base de datos

            Estado nuevoEstado = new Estado(cuest, alEstado);
            cuest.Estado = nuevoEstado;
            bool seCambio_elEstado = admBD.guardarEstado(cuest.Estado); //se lo envia al Adm BD

            if (seCambio_elEstado == true)
                return true;
            else
            {
                MessageBox.Show("\tNo se realizo el cambio de estado de su cuestionario\n\nPor favor reinicie su sesión", "ADVERTENCIA", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return false;
            }
        }
        private bool crearBloque(List<PreguntaEvaluada> listaPreguntas, int pregXbloque, Cuestionario cuest)
        {
            AdministradorBD admBD = new AdministradorBD();  //intanciacion del administrador base de datos

            bool operacionRealizadaConExito = false;

            int numBloq = 1, contadorDeBloqueCreados = 0;
            int cantidadBloques = (listaPreguntas.Count / pregXbloque);

            for (int i = 0; i < listaPreguntas.Count; )
            {
                Bloque nuevoBloque = new Bloque(numBloq, cuest);
                for (int j = 0; j < pregXbloque; j++)
                {
                    nuevoBloque.addPreguntaEv(listaPreguntas[i]);
                    i++;
                }

                contadorDeBloqueCreados += 1;
                if (numBloq == 1)
                {
                    cuest.UltimoBloque = nuevoBloque;
                }
                numBloq++;

                switch (contadorDeBloqueCreados == cantidadBloques)
                {
                    case true:
                        {
                            nuevoBloque.marcarUltimobloque();
                            bool echo = admBD.guardarBloque(nuevoBloque); // mensaje se envia al Adm de BD
                            if (echo)
                                operacionRealizadaConExito = true;
                            else
                            {
                                MessageBox.Show("\tNo se pudieron resguardar los datos de su evaluación\nComuniquese con su evaluador", "ADVERTENCIA", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                                operacionRealizadaConExito = false;
                            }
                        }
                        break;
                    default:
                        {
                            bool echo = admBD.guardarBloque(nuevoBloque); // mensaje se envia al Adm de BD
                            if (echo)
                                operacionRealizadaConExito = true;
                            else
                            {
                                MessageBox.Show("\tNo se pudieron resguardar los datos de su evaluación\nComuniquese con su evaluador", "ADVERTENCIA", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                                operacionRealizadaConExito = false;
                            }
                        }
                        break;
                }
            }
            return operacionRealizadaConExito;
        }
        public bool resguardarCuestionario(Cuestionario cuest_)
        {
            AdministradorBD admBD = new AdministradorBD();

            bool seGuardaronAtrubutos = admBD.guardarAtributosCuestionario(cuest_);

            if (seGuardaronAtrubutos == true)
                return true;
            else
            {
                MessageBox.Show("Ocurrio un error al resguardar los datos del cuestionario\n\n\tReinicie su sesión\n\n\t\tDisculpe las molestias");
                return false;
            }
        }
        public Bloque proximoBloque(Bloque bloqAnterior)
        {
            AdministradorBD admBD = new AdministradorBD();  //intanciacion del administrador base de datos
            Cuestionario cuestAsociado = bloqAnterior.CuestAsociado;

            int nroProxBloque = bloqAnterior.NroBloque;
            nroProxBloque += 1;
            Bloque proxBloque = admBD.retornarBloque(cuestAsociado, nroProxBloque);
            cuestAsociado.UltimoBloque = proxBloque; //seteo el ultimo bloque
            return proxBloque;
        }
 /*
  * La mision que justifica la existencia de los gestores es hacer de "intermediario" entre las ENTIDADES y el resto del sistema
  * Por esto el gestor debe tener la responsabilidad de instanciar la/s que le corresponde gestionar
  */
 public PuestoEvaluado instanciarPuestoEvaluado(string codigo, string nombre, string empresa, string descripcion = null, List<Caracteristica> caracteristicas = null)
 {
     AdministradorBD admBD = new AdministradorBD();
     PuestoEvaluado nuevoPuestoEv = new PuestoEvaluado(codigo, nombre, empresa, DateTime.Now, descripcion, caracteristicas);
     return nuevoPuestoEv;
 }