protected void btnGuardarPregunta_Click(object sender, EventArgs e)
 {
     try
     {
         EINSTRUMENTOEMPLEADO objIE = (EINSTRUMENTOEMPLEADO)ViewState["Instrumento"];
         int Indice = 0;
         foreach (ESECCIONINSTRUMENTOEMPLEADO objSE in objIE.SECCIONES)
         {
             if (objSE.CODSECCIONINSTRUMENTO == Utiles.ConvertToDecimal(this.hdfCodSeccion.Value))
             {
                 EPREGUNTAEMPLEADO objPR = new EPREGUNTAEMPLEADO();
                 objPR.TEXTO       = txtPreguntaMant.Text;
                 objPR.DESCRIPCION = txtDescripPreguntaMant.Text;
                 objPR.ACCION      = txtAccionPreguntaMant.Text;
                 objPR.COMPROMISO  = txtCompromisoPreguntaMant.Text;
                 objPR.INDICADOR   = txtIndicadorPreguntaMant.Text;
                 objIE.SECCIONES[Indice].PREGUNTAS.Add(objPR);
             }
             Indice = Indice + 1;
         }
         ViewState["Instrumento"] = objIE;
         objWEB.LlenaGrilla(ref this.grdSecciones, objIE.SECCIONES.Cast <DomainObject>().ToList(), 100);
     }
     catch (Exception ex)
     {
         Log log = new Log();
         log.EscribirLog(ex);
         litCatchError.Visible = true;
         ScriptManager.RegisterStartupScript(this, this.GetType(), "modal", "Menu('0');", true);
     }
 }
        protected override IDbDataParameter[] GetUpdateParameters(DomainObject obj, DB db)
        {
            IDbDataParameter[] prms = db.GetArrayParameter(6);
            EPREGUNTAEMPLEADO  objPREGUNTAEMPLEADO = obj as EPREGUNTAEMPLEADO;

            //Poner las rutinas del Tools que se necesiten

            prms[0]               = db.GetParameter();
            prms[0].Value         = objPREGUNTAEMPLEADO.CODPREGUNTAEMPLEADO;
            prms[0].ParameterName = "@COD_PREGUNTA_EMPLEADO";

            prms[1]               = db.GetParameter();
            prms[1].Value         = objPREGUNTAEMPLEADO.TEXTO;
            prms[1].ParameterName = "@TEXTO";

            prms[2]               = db.GetParameter();
            prms[2].Value         = objPREGUNTAEMPLEADO.DESCRIPCION;
            prms[2].ParameterName = "@DESCRIPCION";

            prms[3]               = db.GetParameter();
            prms[3].Value         = objPREGUNTAEMPLEADO.ACCION;
            prms[3].ParameterName = "@ACCION";

            prms[4]               = db.GetParameter();
            prms[4].Value         = objPREGUNTAEMPLEADO.COMPROMISO;
            prms[4].ParameterName = "@COMPROMISO";

            prms[5]               = db.GetParameter();
            prms[5].Value         = objPREGUNTAEMPLEADO.INDICADOR;
            prms[5].ParameterName = "@INDICADOR";

            return(prms);
        }
        protected override IDbDataParameter[] GetDeleteParameters(DomainObject obj, DB db)
        {
            IDbDataParameter[] prms = db.GetArrayParameter(1);
            EPREGUNTAEMPLEADO  objPREGUNTAEMPLEADO = obj as EPREGUNTAEMPLEADO;

            prms[0]               = db.GetParameter();
            prms[0].Value         = objPREGUNTAEMPLEADO.CODPREGUNTAEMPLEADO;
            prms[0].ParameterName = "@COD_PREGUNTA_EMPLEADO";

            return(prms);
        }
        public bool ActualizarPreguntas(EINSTRUMENTOEMPLEADO objIE)
        {
            try
            {
                foreach (ESECCIONINSTRUMENTOEMPLEADO objSE in objIE.SECCIONES)
                {
                    BFPREGUNTASECCIONEMPLEADO objBFPSE = new BFPREGUNTASECCIONEMPLEADO();
                    objBFPSE.LimpiarPreguntaSeccionEmp(objSE.CODSECCIONINSTRUMENTO);

                    foreach (EPREGUNTAEMPLEADO objPR in objSE.PREGUNTAS)
                    {
                        EPREGUNTAEMPLEADO objPRE = new EPREGUNTAEMPLEADO();
                        objPRE.TEXTO       = objPR.TEXTO;
                        objPRE.DESCRIPCION = objPR.DESCRIPCION;
                        objPRE.ACCION      = objPR.ACCION;
                        objPRE.COMPROMISO  = objPR.COMPROMISO;
                        objPRE.INDICADOR   = objPR.INDICADOR;
                        if (objPRE.CODPREGUNTAEMPLEADO == 0)
                        {
                            objPRE.IsPersisted = false;
                            objPRE.Save();

                            EPREGUNTASECCIONEMPLEADO objPSE = new EPREGUNTASECCIONEMPLEADO();
                            objPSE.CODPREGUNTAEMPLEADO   = objPRE.CODPREGUNTAEMPLEADO;
                            objPSE.CODSECCIONINSTRUMENTO = objSE.CODSECCIONINSTRUMENTO;
                            objPSE.PONDERACION           = objPR.PONDERACION;
                            objPSE.IsPersisted           = false;
                            objPSE.Save();
                        }
                        else
                        {
                            objPRE.IsPersisted = true;
                            objPRE.Save();

                            EPREGUNTASECCIONEMPLEADO objPSE = new EPREGUNTASECCIONEMPLEADO();
                            objPSE.CODPREGUNTAEMPLEADO   = objPRE.CODPREGUNTAEMPLEADO;
                            objPSE.CODSECCIONINSTRUMENTO = objSE.CODSECCIONINSTRUMENTO;
                            objPSE.PONDERACION           = objPR.PONDERACION;
                            objPSE.IsPersisted           = true;
                            objPSE.Save();
                        }
                    }
                }

                return(true);
            }
            catch (Exception ex)
            {
                Log log = new Log();
                log.EscribirLog(ex);
                return(false);
            }
        }
 public bool Update(EPREGUNTAEMPLEADO objPREGUNTAEMPLEADO)
 {
     try
     {
         _objDAL.Update(objPREGUNTAEMPLEADO);
         return(true);
     }
     catch (Exception ex)
     {
         Log log = new Log();
         log.EscribirLog(ex);
         return(false);
     }
 }
 public bool Save(EPREGUNTAEMPLEADO objPREGUNTAEMPLEADO)
 {
     try
     {
         objPREGUNTAEMPLEADO.Save();
         return(true);
     }
     catch (Exception ex)
     {
         Log log = new Log();
         log.EscribirLog(ex);
         return(false);
     }
 }
Example #7
0
        public override void Fill(DomainObject obj, IDataReader dr)
        {
            ESECCIONINSTRUMENTOEMPLEADO objSECCIONINSTRUMENTOEMPLEADO = obj as ESECCIONINSTRUMENTOEMPLEADO;

            //Poner las rutinas del Tools que se necesiten

            objSECCIONINSTRUMENTOEMPLEADO.CODSECCIONINSTRUMENTO = Utiles.ConvertToDecimal(dr["COD_SECCION_INSTRUMENTO"]);

            objSECCIONINSTRUMENTOEMPLEADO.CODINSTRUMENTOEMPLEADO = Utiles.ConvertToDecimal(dr["COD_INSTRUMENTO_EMPLEADO"]);

            objSECCIONINSTRUMENTOEMPLEADO.NOMBRE = Utiles.ConvertToString(dr["NOMBRE"]);

            objSECCIONINSTRUMENTOEMPLEADO.DESCRIPCION = Utiles.ConvertToString(dr["DESCRIPCION"]);

            objSECCIONINSTRUMENTOEMPLEADO.ORDEN = Utiles.ConvertToInt16(dr["ORDEN"]);

            objSECCIONINSTRUMENTOEMPLEADO.PONDERACION = Utiles.ConvertToDouble(dr["PONDERACION"]);

            objSECCIONINSTRUMENTOEMPLEADO.RESULTADO = Utiles.ConvertToDouble(dr["RESULTADO"]);

            objSECCIONINSTRUMENTOEMPLEADO.FLAG_AGREGAR_PREGUNTAS = Utiles.ConvertToBoolean(dr["FLAG_AGREGAR_PREGUNTA"]);

            objSECCIONINSTRUMENTOEMPLEADO.COD_TIPO_SECCION = Utiles.ConvertToInt16(dr["COD_TIPO_SECCION"]);

            DLPREGUNTAEMPLEADOList   objDLPR = new DLPREGUNTAEMPLEADOList();
            List <EPREGUNTAEMPLEADO> lstPREG = objDLPR.GetPreguntasSeccionEmpleado(objSECCIONINSTRUMENTOEMPLEADO.CODSECCIONINSTRUMENTO);

            if (lstPREG.Count > 0)
            {
                objSECCIONINSTRUMENTOEMPLEADO.PREGUNTAS = lstPREG;
            }
            else
            {
                EPREGUNTAEMPLEADO objPR = new EPREGUNTAEMPLEADO();
                objSECCIONINSTRUMENTOEMPLEADO.PREGUNTAS.Add(objPR);
            }
        }
        public override void Fill(DomainObject obj, IDataReader dr)
        {
            EPREGUNTAEMPLEADO objPREGUNTAEMPLEADO = obj as EPREGUNTAEMPLEADO;

            //Poner las rutinas del Tools que se necesiten

            objPREGUNTAEMPLEADO.CODPREGUNTAEMPLEADO = Utiles.ConvertToDecimal(dr["COD_PREGUNTA_EMPLEADO"]);

            objPREGUNTAEMPLEADO.TEXTO = Utiles.ConvertToString(dr["TEXTO"]);

            objPREGUNTAEMPLEADO.DESCRIPCION = Utiles.ConvertToString(dr["DESCRIPCION"]);

            objPREGUNTAEMPLEADO.ACCION = Utiles.ConvertToString(dr["ACCION"]);

            objPREGUNTAEMPLEADO.COMPROMISO = Utiles.ConvertToString(dr["COMPROMISO"]);

            objPREGUNTAEMPLEADO.INDICADOR = Utiles.ConvertToString(dr["INDICADOR"]);

            objPREGUNTAEMPLEADO.PONDERACION = Utiles.ConvertToDouble(dr["PONDERACION"]);

            objPREGUNTAEMPLEADO.RESULTADO = Utiles.ConvertToDouble(dr["RESULTADO"]);

            objPREGUNTAEMPLEADO.COMENTARIO = Utiles.ConvertToString(dr["COMENTARIO"]);
        }
        protected override void SetPrimaryKey(DomainObject obj, long id)
        {
            EPREGUNTAEMPLEADO objRoot = obj as EPREGUNTAEMPLEADO;

            objRoot.CODPREGUNTAEMPLEADO = Utiles.ConvertToDecimal(id);
        }
        public bool Asignar(EINSTRUMENTO objINSTRUMENTO, List <EEMPLEADO> lstEM, string Nombre, DateTime Inicio, DateTime Fin, string Direccion)
        {
            try
            {
                EINSTRUMENTOEMPLEADO objIE = new EINSTRUMENTOEMPLEADO();
                objIE.CODINSTRUMENTO         = objINSTRUMENTO.CODINSTRUMENTO;
                objIE.NOMINSTRUMENTOEMPLEADO = Nombre;
                objIE.DESCRIPCION            = objINSTRUMENTO.DESCRIPCION;
                objIE.OBSERVACION            = objINSTRUMENTO.OBSERVACION;
                objIE.INICIOEVALUACION       = Inicio;
                objIE.FINEVALUACION          = Fin;
                objIE.CODESTADOEVAL          = 1;
                switch (Direccion)
                {
                case "Ascendente":
                    objIE.CODTIPOEVAL = 1;
                    foreach (EEMPLEADO objEM in lstEM)
                    {
                        objIE.RUTEMPLEADO  = objEM.RUTJEFE;
                        objIE.RUTEVALUADOR = objEM.RUTEMPLEADO;
                        objIE.RUTVISADOR   = objEM.RUTVISADOR;
                        objIE.Save();

                        foreach (ESECCION objSE in objINSTRUMENTO.SECCIONES)
                        {
                            ESECCIONINSTRUMENTOEMPLEADO objSIE = new ESECCIONINSTRUMENTOEMPLEADO();
                            objSIE.CODINSTRUMENTOEMPLEADO = objIE.CODINSTRUMENTOEMPLEADO;
                            objSIE.NOMBRE                 = objSE.NOMBRE;
                            objSIE.DESCRIPCION            = objSE.DESCRIPCION;
                            objSIE.ORDEN                  = objSE.ORDEN;
                            objSIE.PONDERACION            = objSE.PONDERACION;
                            objSIE.COD_TIPO_SECCION       = objSE.CODTIPOSECCION;
                            objSIE.FLAG_AGREGAR_PREGUNTAS = objSE.FLAG_AGREGAR_PREGUNTA;
                            objSIE.Save();

                            foreach (EPREGUNTA objPR in objSE.PREGUNTAS)
                            {
                                EPREGUNTAEMPLEADO objPRE = new EPREGUNTAEMPLEADO();
                                objPRE.TEXTO       = objPR.TEXTO;
                                objPRE.DESCRIPCION = objPR.DESCRIPCION;
                                objPRE.ACCION      = objPR.ACCION;
                                objPRE.COMPROMISO  = objPR.COMPROMISO;
                                objPRE.INDICADOR   = objPR.INDICADOR;
                                objPRE.Save();

                                EPREGUNTASECCIONEMPLEADO objPSE = new EPREGUNTASECCIONEMPLEADO();
                                objPSE.CODPREGUNTAEMPLEADO   = objPRE.CODPREGUNTAEMPLEADO;
                                objPSE.CODSECCIONINSTRUMENTO = objSIE.CODSECCIONINSTRUMENTO;
                                objPSE.PONDERACION           = objPR.PONDERACION;
                                objPSE.Save();
                            }
                        }
                        objIE.IsPersisted = false;
                    }
                    break;

                case "Descendente":
                    objIE.CODTIPOEVAL = 2;
                    foreach (EEMPLEADO objEM in lstEM)
                    {
                        objIE.RUTEMPLEADO  = objEM.RUTEMPLEADO;
                        objIE.RUTEVALUADOR = objEM.RUTJEFE;
                        objIE.RUTVISADOR   = objEM.RUTVISADOR;
                        objIE.Save();

                        foreach (ESECCION objSE in objINSTRUMENTO.SECCIONES)
                        {
                            ESECCIONINSTRUMENTOEMPLEADO objSIE = new ESECCIONINSTRUMENTOEMPLEADO();
                            objSIE.CODINSTRUMENTOEMPLEADO = objIE.CODINSTRUMENTOEMPLEADO;
                            objSIE.NOMBRE                 = objSE.NOMBRE;
                            objSIE.DESCRIPCION            = objSE.DESCRIPCION;
                            objSIE.ORDEN                  = objSE.ORDEN;
                            objSIE.PONDERACION            = objSE.PONDERACION;
                            objSIE.COD_TIPO_SECCION       = objSE.CODTIPOSECCION;
                            objSIE.FLAG_AGREGAR_PREGUNTAS = objSE.FLAG_AGREGAR_PREGUNTA;
                            objSIE.Save();

                            foreach (EPREGUNTA objPR in objSE.PREGUNTAS)
                            {
                                EPREGUNTAEMPLEADO objPRE = new EPREGUNTAEMPLEADO();
                                objPRE.TEXTO       = objPR.TEXTO;
                                objPRE.DESCRIPCION = objPR.DESCRIPCION;
                                objPRE.ACCION      = objPR.ACCION;
                                objPRE.COMPROMISO  = objPR.COMPROMISO;
                                objPRE.INDICADOR   = objPR.INDICADOR;
                                objPRE.Save();

                                EPREGUNTASECCIONEMPLEADO objPSE = new EPREGUNTASECCIONEMPLEADO();
                                objPSE.CODPREGUNTAEMPLEADO   = objPRE.CODPREGUNTAEMPLEADO;
                                objPSE.CODSECCIONINSTRUMENTO = objSIE.CODSECCIONINSTRUMENTO;
                                objPSE.PONDERACION           = objPR.PONDERACION;
                                objPSE.Save();
                            }
                        }
                        objIE.IsPersisted = false;
                    }
                    break;

                case "Ambas":
                    foreach (EEMPLEADO objEM in lstEM)
                    {
                        objIE.RUTEMPLEADO  = objEM.RUTJEFE;
                        objIE.RUTEVALUADOR = objEM.RUTEMPLEADO;
                        objIE.RUTVISADOR   = objEM.RUTVISADOR;
                        objIE.CODTIPOEVAL  = 1;
                        objIE.Save();

                        foreach (ESECCION objSE in objINSTRUMENTO.SECCIONES)
                        {
                            ESECCIONINSTRUMENTOEMPLEADO objSIE = new ESECCIONINSTRUMENTOEMPLEADO();
                            objSIE.CODINSTRUMENTOEMPLEADO = objIE.CODINSTRUMENTOEMPLEADO;
                            objSIE.NOMBRE                 = objSE.NOMBRE;
                            objSIE.DESCRIPCION            = objSE.DESCRIPCION;
                            objSIE.ORDEN                  = objSE.ORDEN;
                            objSIE.PONDERACION            = objSE.PONDERACION;
                            objSIE.COD_TIPO_SECCION       = objSE.CODTIPOSECCION;
                            objSIE.FLAG_AGREGAR_PREGUNTAS = objSE.FLAG_AGREGAR_PREGUNTA;
                            objSIE.Save();

                            foreach (EPREGUNTA objPR in objSE.PREGUNTAS)
                            {
                                EPREGUNTAEMPLEADO objPRE = new EPREGUNTAEMPLEADO();
                                objPRE.TEXTO       = objPR.TEXTO;
                                objPRE.DESCRIPCION = objPR.DESCRIPCION;
                                objPRE.ACCION      = objPR.ACCION;
                                objPRE.COMPROMISO  = objPR.COMPROMISO;
                                objPRE.INDICADOR   = objPR.INDICADOR;
                                objPRE.Save();

                                EPREGUNTASECCIONEMPLEADO objPSE = new EPREGUNTASECCIONEMPLEADO();
                                objPSE.CODPREGUNTAEMPLEADO   = objPRE.CODPREGUNTAEMPLEADO;
                                objPSE.CODSECCIONINSTRUMENTO = objSIE.CODSECCIONINSTRUMENTO;
                                objPSE.PONDERACION           = objPR.PONDERACION;
                                objPSE.Save();
                            }
                        }
                        objIE.IsPersisted = false;
                    }

                    foreach (EEMPLEADO objEM in lstEM)
                    {
                        objIE.RUTEMPLEADO  = objEM.RUTEMPLEADO;
                        objIE.RUTEVALUADOR = objEM.RUTJEFE;
                        objIE.RUTVISADOR   = objEM.RUTVISADOR;
                        objIE.CODTIPOEVAL  = 2;
                        objIE.Save();

                        foreach (ESECCION objSE in objINSTRUMENTO.SECCIONES)
                        {
                            ESECCIONINSTRUMENTOEMPLEADO objSIE = new ESECCIONINSTRUMENTOEMPLEADO();
                            objSIE.CODINSTRUMENTOEMPLEADO = objIE.CODINSTRUMENTOEMPLEADO;
                            objSIE.NOMBRE                 = objSE.NOMBRE;
                            objSIE.DESCRIPCION            = objSE.DESCRIPCION;
                            objSIE.ORDEN                  = objSE.ORDEN;
                            objSIE.PONDERACION            = objSE.PONDERACION;
                            objSIE.COD_TIPO_SECCION       = objSE.CODTIPOSECCION;
                            objSIE.FLAG_AGREGAR_PREGUNTAS = objSE.FLAG_AGREGAR_PREGUNTA;
                            objSIE.Save();

                            foreach (EPREGUNTA objPR in objSE.PREGUNTAS)
                            {
                                EPREGUNTAEMPLEADO objPRE = new EPREGUNTAEMPLEADO();
                                objPRE.TEXTO       = objPR.TEXTO;
                                objPRE.DESCRIPCION = objPR.DESCRIPCION;
                                objPRE.ACCION      = objPR.ACCION;
                                objPRE.COMPROMISO  = objPR.COMPROMISO;
                                objPRE.INDICADOR   = objPR.INDICADOR;
                                objPRE.Save();

                                EPREGUNTASECCIONEMPLEADO objPSE = new EPREGUNTASECCIONEMPLEADO();
                                objPSE.CODPREGUNTAEMPLEADO   = objPRE.CODPREGUNTAEMPLEADO;
                                objPSE.CODSECCIONINSTRUMENTO = objSIE.CODSECCIONINSTRUMENTO;
                                objPSE.PONDERACION           = objPR.PONDERACION;
                                objPSE.Save();
                            }
                        }
                        objIE.IsPersisted = false;
                    }
                    break;

                case "Par":
                    objIE.CODTIPOEVAL = 3;
                    foreach (EEMPLEADO objEM in lstEM)
                    {
                        objIE.RUTEMPLEADO  = objEM.RUTEMPLEADO;
                        objIE.RUTEVALUADOR = objEM.RUTJEFE;
                        objIE.RUTVISADOR   = objEM.RUTVISADOR;
                        objIE.Save();

                        foreach (ESECCION objSE in objINSTRUMENTO.SECCIONES)
                        {
                            ESECCIONINSTRUMENTOEMPLEADO objSIE = new ESECCIONINSTRUMENTOEMPLEADO();
                            objSIE.CODINSTRUMENTOEMPLEADO = objIE.CODINSTRUMENTOEMPLEADO;
                            objSIE.NOMBRE                 = objSE.NOMBRE;
                            objSIE.DESCRIPCION            = objSE.DESCRIPCION;
                            objSIE.ORDEN                  = objSE.ORDEN;
                            objSIE.PONDERACION            = objSE.PONDERACION;
                            objSIE.COD_TIPO_SECCION       = objSE.CODTIPOSECCION;
                            objSIE.FLAG_AGREGAR_PREGUNTAS = objSE.FLAG_AGREGAR_PREGUNTA;
                            objSIE.Save();

                            foreach (EPREGUNTA objPR in objSE.PREGUNTAS)
                            {
                                EPREGUNTAEMPLEADO objPRE = new EPREGUNTAEMPLEADO();
                                objPRE.TEXTO       = objPR.TEXTO;
                                objPRE.DESCRIPCION = objPR.DESCRIPCION;
                                objPRE.ACCION      = objPR.ACCION;
                                objPRE.COMPROMISO  = objPR.COMPROMISO;
                                objPRE.INDICADOR   = objPR.INDICADOR;
                                objPRE.Save();

                                EPREGUNTASECCIONEMPLEADO objPSE = new EPREGUNTASECCIONEMPLEADO();
                                objPSE.CODPREGUNTAEMPLEADO   = objPRE.CODPREGUNTAEMPLEADO;
                                objPSE.CODSECCIONINSTRUMENTO = objSIE.CODSECCIONINSTRUMENTO;
                                objPSE.PONDERACION           = objPR.PONDERACION;
                                objPSE.Save();
                            }
                        }
                        objIE.IsPersisted = false;
                    }
                    break;
                }

                BFINSTRUMENTO objBFIN = new BFINSTRUMENTO();
                EINSTRUMENTO  objIN   = objBFIN.GetINSTRUMENTO(Utiles.ConvertToInt64(objIE.CODINSTRUMENTO));
                if ((objIN.FLAGAUTOEVALUACION) && (Direccion != "Par"))
                {
                    objIE.CODTIPOEVAL = 1;
                    foreach (EEMPLEADO objEM in lstEM)
                    {
                        objIE.RUTEMPLEADO  = objEM.RUTEMPLEADO;
                        objIE.RUTEVALUADOR = objEM.RUTEMPLEADO;
                        objIE.RUTVISADOR   = objEM.RUTVISADOR;
                        objIE.Save();

                        foreach (ESECCION objSE in objINSTRUMENTO.SECCIONES)
                        {
                            ESECCIONINSTRUMENTOEMPLEADO objSIE = new ESECCIONINSTRUMENTOEMPLEADO();
                            objSIE.CODINSTRUMENTOEMPLEADO = objIE.CODINSTRUMENTOEMPLEADO;
                            objSIE.NOMBRE                 = objSE.NOMBRE;
                            objSIE.DESCRIPCION            = objSE.DESCRIPCION;
                            objSIE.ORDEN                  = objSE.ORDEN;
                            objSIE.PONDERACION            = objSE.PONDERACION;
                            objSIE.COD_TIPO_SECCION       = objSE.CODTIPOSECCION;
                            objSIE.FLAG_AGREGAR_PREGUNTAS = objSE.FLAG_AGREGAR_PREGUNTA;
                            objSIE.Save();

                            foreach (EPREGUNTA objPR in objSE.PREGUNTAS)
                            {
                                EPREGUNTAEMPLEADO objPRE = new EPREGUNTAEMPLEADO();
                                objPRE.TEXTO       = objPR.TEXTO;
                                objPRE.DESCRIPCION = objPR.DESCRIPCION;
                                objPRE.ACCION      = objPR.ACCION;
                                objPRE.COMPROMISO  = objPR.COMPROMISO;
                                objPRE.INDICADOR   = objPR.INDICADOR;
                                objPRE.Save();

                                EPREGUNTASECCIONEMPLEADO objPSE = new EPREGUNTASECCIONEMPLEADO();
                                objPSE.CODPREGUNTAEMPLEADO   = objPRE.CODPREGUNTAEMPLEADO;
                                objPSE.CODSECCIONINSTRUMENTO = objSIE.CODSECCIONINSTRUMENTO;
                                objPSE.PONDERACION           = objPR.PONDERACION;
                                objPSE.Save();
                            }
                        }
                        objIE.IsPersisted = false;
                    }
                }
                return(true);
            }
            catch (Exception ex)
            {
                Log log = new Log();
                log.EscribirLog(ex);
                return(false);
            }
        }
        public bool AsignarPorTipo(EINSTRUMENTO objINSTRUMENTO, List <EEMPLEADO> lstEM, string Nombre, DateTime Inicio, DateTime Fin, Int64 RutEmpresa, Int16 Tipo)
        {
            try
            {
                EINSTRUMENTOEMPLEADO objIE = new EINSTRUMENTOEMPLEADO();
                objIE.CODINSTRUMENTO         = objINSTRUMENTO.CODINSTRUMENTO;
                objIE.NOMINSTRUMENTOEMPLEADO = Nombre;
                objIE.DESCRIPCION            = objINSTRUMENTO.DESCRIPCION;
                objIE.OBSERVACION            = objINSTRUMENTO.OBSERVACION;
                objIE.INICIOEVALUACION       = Inicio;
                objIE.FINEVALUACION          = Fin;
                objIE.CODESTADOEVAL          = 1;
                objIE.RUT_EMPRESA            = RutEmpresa;
                switch (Tipo)
                {
                case 1:
                    objIE.CODTIPOEVAL = 1;
                    foreach (EEMPLEADO objEM in lstEM)
                    {
                        objIE.RUTEMPLEADO  = objEM.RUTEMPLEADO;
                        objIE.RUTEVALUADOR = objEM.RUTJEFE;
                        objIE.RUTVISADOR   = objEM.RUTVISADOR;
                        objIE.Save();

                        foreach (ESECCION objSE in objINSTRUMENTO.SECCIONES)
                        {
                            ESECCIONINSTRUMENTOEMPLEADO objSIE = new ESECCIONINSTRUMENTOEMPLEADO();
                            objSIE.CODINSTRUMENTOEMPLEADO = objIE.CODINSTRUMENTOEMPLEADO;
                            objSIE.NOMBRE                 = objSE.NOMBRE;
                            objSIE.DESCRIPCION            = objSE.DESCRIPCION;
                            objSIE.ORDEN                  = objSE.ORDEN;
                            objSIE.PONDERACION            = objSE.PONDERACION;
                            objSIE.COD_TIPO_SECCION       = objSE.CODTIPOSECCION;
                            objSIE.FLAG_AGREGAR_PREGUNTAS = objSE.FLAG_AGREGAR_PREGUNTA;
                            objSIE.Save();

                            foreach (EPREGUNTA objPR in objSE.PREGUNTAS)
                            {
                                EPREGUNTAEMPLEADO objPRE = new EPREGUNTAEMPLEADO();
                                objPRE.TEXTO       = objPR.TEXTO;
                                objPRE.DESCRIPCION = objPR.DESCRIPCION;
                                objPRE.ACCION      = objPR.ACCION;
                                objPRE.COMPROMISO  = objPR.COMPROMISO;
                                objPRE.INDICADOR   = objPR.INDICADOR;
                                objPRE.Save();

                                EPREGUNTASECCIONEMPLEADO objPSE = new EPREGUNTASECCIONEMPLEADO();
                                objPSE.CODPREGUNTAEMPLEADO   = objPRE.CODPREGUNTAEMPLEADO;
                                objPSE.CODSECCIONINSTRUMENTO = objSIE.CODSECCIONINSTRUMENTO;
                                objPSE.PONDERACION           = objPR.PONDERACION;
                                objPSE.Save();
                            }
                        }
                        objIE.IsPersisted = false;
                    }
                    break;

                case 2:
                    objIE.CODTIPOEVAL = 2;
                    foreach (EEMPLEADO objEM in lstEM)
                    {
                        objIE.RUTEMPLEADO  = objEM.RUTEMPLEADO;
                        objIE.RUTEVALUADOR = objEM.RUTJEFE;
                        objIE.RUTVISADOR   = objEM.RUTVISADOR;
                        objIE.Save();

                        foreach (ESECCION objSE in objINSTRUMENTO.SECCIONES)
                        {
                            ESECCIONINSTRUMENTOEMPLEADO objSIE = new ESECCIONINSTRUMENTOEMPLEADO();
                            objSIE.CODINSTRUMENTOEMPLEADO = objIE.CODINSTRUMENTOEMPLEADO;
                            objSIE.NOMBRE                 = objSE.NOMBRE;
                            objSIE.DESCRIPCION            = objSE.DESCRIPCION;
                            objSIE.ORDEN                  = objSE.ORDEN;
                            objSIE.PONDERACION            = objSE.PONDERACION;
                            objSIE.COD_TIPO_SECCION       = objSE.CODTIPOSECCION;
                            objSIE.FLAG_AGREGAR_PREGUNTAS = objSE.FLAG_AGREGAR_PREGUNTA;
                            objSIE.Save();

                            foreach (EPREGUNTA objPR in objSE.PREGUNTAS)
                            {
                                EPREGUNTAEMPLEADO objPRE = new EPREGUNTAEMPLEADO();
                                objPRE.TEXTO       = objPR.TEXTO;
                                objPRE.DESCRIPCION = objPR.DESCRIPCION;
                                objPRE.ACCION      = objPR.ACCION;
                                objPRE.COMPROMISO  = objPR.COMPROMISO;
                                objPRE.INDICADOR   = objPR.INDICADOR;
                                objPRE.Save();

                                EPREGUNTASECCIONEMPLEADO objPSE = new EPREGUNTASECCIONEMPLEADO();
                                objPSE.CODPREGUNTAEMPLEADO   = objPRE.CODPREGUNTAEMPLEADO;
                                objPSE.CODSECCIONINSTRUMENTO = objSIE.CODSECCIONINSTRUMENTO;
                                objPSE.PONDERACION           = objPR.PONDERACION;
                                objPSE.Save();
                            }
                        }
                        objIE.IsPersisted = false;
                    }
                    break;

                case 3:
                    objIE.CODTIPOEVAL = 3;
                    foreach (EEMPLEADO objEM in lstEM)
                    {
                        objIE.RUTEMPLEADO  = objEM.RUTEMPLEADO;
                        objIE.RUTEVALUADOR = objEM.RUTJEFE;
                        objIE.RUTVISADOR   = objEM.RUTVISADOR;
                        objIE.Save();

                        foreach (ESECCION objSE in objINSTRUMENTO.SECCIONES)
                        {
                            ESECCIONINSTRUMENTOEMPLEADO objSIE = new ESECCIONINSTRUMENTOEMPLEADO();
                            objSIE.CODINSTRUMENTOEMPLEADO = objIE.CODINSTRUMENTOEMPLEADO;
                            objSIE.NOMBRE                 = objSE.NOMBRE;
                            objSIE.DESCRIPCION            = objSE.DESCRIPCION;
                            objSIE.ORDEN                  = objSE.ORDEN;
                            objSIE.PONDERACION            = objSE.PONDERACION;
                            objSIE.COD_TIPO_SECCION       = objSE.CODTIPOSECCION;
                            objSIE.FLAG_AGREGAR_PREGUNTAS = objSE.FLAG_AGREGAR_PREGUNTA;
                            objSIE.Save();

                            foreach (EPREGUNTA objPR in objSE.PREGUNTAS)
                            {
                                EPREGUNTAEMPLEADO objPRE = new EPREGUNTAEMPLEADO();
                                objPRE.TEXTO       = objPR.TEXTO;
                                objPRE.DESCRIPCION = objPR.DESCRIPCION;
                                objPRE.ACCION      = objPR.ACCION;
                                objPRE.COMPROMISO  = objPR.COMPROMISO;
                                objPRE.INDICADOR   = objPR.INDICADOR;
                                objPRE.Save();

                                EPREGUNTASECCIONEMPLEADO objPSE = new EPREGUNTASECCIONEMPLEADO();
                                objPSE.CODPREGUNTAEMPLEADO   = objPRE.CODPREGUNTAEMPLEADO;
                                objPSE.CODSECCIONINSTRUMENTO = objSIE.CODSECCIONINSTRUMENTO;
                                objPSE.PONDERACION           = objPR.PONDERACION;
                                objPSE.Save();
                            }
                        }
                        objIE.IsPersisted = false;
                    }
                    break;

                case 4:
                    objIE.CODTIPOEVAL = 4;
                    foreach (EEMPLEADO objEM in lstEM)
                    {
                        objIE.RUTEMPLEADO  = objEM.RUTEMPLEADO;
                        objIE.RUTEVALUADOR = objEM.RUTEMPLEADO;
                        objIE.RUTVISADOR   = objEM.RUTVISADOR;
                        objIE.Save();

                        foreach (ESECCION objSE in objINSTRUMENTO.SECCIONES)
                        {
                            ESECCIONINSTRUMENTOEMPLEADO objSIE = new ESECCIONINSTRUMENTOEMPLEADO();
                            objSIE.CODINSTRUMENTOEMPLEADO = objIE.CODINSTRUMENTOEMPLEADO;
                            objSIE.NOMBRE                 = objSE.NOMBRE;
                            objSIE.DESCRIPCION            = objSE.DESCRIPCION;
                            objSIE.ORDEN                  = objSE.ORDEN;
                            objSIE.PONDERACION            = objSE.PONDERACION;
                            objSIE.COD_TIPO_SECCION       = objSE.CODTIPOSECCION;
                            objSIE.FLAG_AGREGAR_PREGUNTAS = objSE.FLAG_AGREGAR_PREGUNTA;
                            objSIE.Save();

                            foreach (EPREGUNTA objPR in objSE.PREGUNTAS)
                            {
                                EPREGUNTAEMPLEADO objPRE = new EPREGUNTAEMPLEADO();
                                objPRE.TEXTO       = objPR.TEXTO;
                                objPRE.DESCRIPCION = objPR.DESCRIPCION;
                                objPRE.ACCION      = objPR.ACCION;
                                objPRE.COMPROMISO  = objPR.COMPROMISO;
                                objPRE.INDICADOR   = objPR.INDICADOR;
                                objPRE.Save();

                                EPREGUNTASECCIONEMPLEADO objPSE = new EPREGUNTASECCIONEMPLEADO();
                                objPSE.CODPREGUNTAEMPLEADO   = objPRE.CODPREGUNTAEMPLEADO;
                                objPSE.CODSECCIONINSTRUMENTO = objSIE.CODSECCIONINSTRUMENTO;
                                objPSE.PONDERACION           = objPR.PONDERACION;
                                objPSE.Save();
                            }
                        }
                        objIE.IsPersisted = false;
                    }
                    break;
                }

                return(true);
            }
            catch (Exception ex)
            {
                Log log = new Log();
                log.EscribirLog(ex);
                return(false);
            }
        }