Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- select
- u.idperiodo,
- u.periodo,
- u.facultad,
- u.idfacultad ,
- u.departamento,
- u.iddepartamento ,
- u.idescuela,
- u.facultadEscuela,
- u.escuela,
- u.cedula,
- u.id_docente,
- u.docente,
- u.idcategoria,
- u.categoria,
- u.dedicacion,
- u.modalidad,
- round(u.h_docencia,2) as h_docencia,
- round(u.h_investigacion,2) as h_investigacion,
- round(u.h_gestion,2) as h_gestion,
- round(u.nd_hetero,2) as nd_hetero,
- round(u.nd_auto,2) as nd_auto,
- round(u.nd_direc,2) as nd_direc,
- round(u.nd_par,2) as nd_par,
- round(u.ni_auto,2) as ni_auto,
- round(u.ni_direc,2) as ni_direc,
- round(u.ni_par,2) as ni_par,
- round(u.ng_auto,2) as ng_auto,
- round(u.ng_par,2) as ng_par,
- round(u.ng_direc,2) as ng_direc,
- round((u.nd_hetero + u.nd_auto + u.nd_direc + u.nd_par),2) as "n_doc al 100%",
- round((u.ni_auto + u.ni_direc + u.ni_par),2) as "n_invest al 100%",
- round((u.ng_auto + u.ng_par + u.ng_direc),2) as "n_gest al 100%",
- round((u.nd_hetero + u.nd_auto + u.nd_direc + u.nd_par) * u.h_docencia/100,2) as n_doc_pond,
- round((u.ni_auto + u.ni_direc + u.ni_par) * u.h_investigacion/100,2) as n_inv_pond,
- round((u.ng_auto + u.ng_par + u.ng_direc) * u.h_gestion/100,2) as n_gest_pond,
- round((((u.nd_hetero + u.nd_auto + u.nd_direc + u.nd_par) * u.h_docencia/100)+
- ((u.ni_auto + u.ni_direc + u.ni_par) * u.h_investigacion/100)+
- ((u.ng_auto + u.ng_par + u.ng_direc) * u.h_gestion/100)),2) as "n_total ponderada",
- round(coalesce(cump.porc_cump_doc,0),2) as "cump_doc al 100%",
- round(coalesce(cump.porc_cump_inv,0),2) as "cump_inv al 100%",
- round(coalesce(cump.porc_cump_ges,0),2) as "cump_gest al 100%",
- round((coalesce(cump.porc_cump_doc,0) * u.h_docencia/100),2) as cump_doc_pond,
- round((coalesce(cump.porc_cump_inv,0) * u.h_investigacion/100),2) as cump_doc_pond,
- round((coalesce(cump.porc_cump_ges,0) * u.h_gestion/100),2) as cump_doc_pond,
- round(((coalesce(cump.porc_cump_doc,0) * u.h_docencia/100) +
- (coalesce(cump.porc_cump_inv,0) * u.h_investigacion/100) +
- (coalesce(cump.porc_cump_ges,0) * u.h_gestion/100)),2) as "cump_total ponderada",
- round((((coalesce(cump.porc_cump_doc,0) * u.h_docencia/100) +
- (coalesce(cump.porc_cump_inv,0) * u.h_investigacion/100) +
- (coalesce(cump.porc_cump_ges,0) * u.h_gestion/100))+
- (((u.nd_hetero + u.nd_auto + u.nd_direc + u.nd_par) * u.h_docencia/100)+
- ((u.ni_auto + u.ni_direc + u.ni_par) * u.h_investigacion/100)+
- ((u.ng_auto + u.ng_par + u.ng_direc) * u.h_gestion/100)))/2,2) as nota_final,
- tiip.meritos,
- tiip.penalizaciones,
- tied.descripcion as "OBSERVACIÓN"
- from (
- select
- pa.idperiodo,
- case when pa.idperiodo=139 then 138 when pa.idperiodo=149 then 148 else pa.idperiodo end as idperiodo_cump,
- pa.nombre as periodo,
- f.nombre as facultad,
- f.idfacultad ,
- xx.idescuela,
- xx.escuela,
- xx.facultadEscuela,
- d.iddepartamento,
- d.nombre as departamento,
- p.idpersonal as id_docente,
- p.cedula,
- concat(p.apellido1, ' ', p.apellido2, ' ', p.nombres) as docente,
- ct.idcategoria,
- ct.abrevia as categoria,
- dt.abrevia as dedicacion,
- ml.abrevia as modalidad,
- tiae.num_horas_docencia * 100/(tiae.total_horas-tiae.num_horas_otros) as h_docencia,
- tiae.num_horas_investigacion * 100/(tiae.total_horas-tiae.num_horas_otros) as h_investigacion,
- tiae.num_horas_gestion * 100/(tiae.total_horas-tiae.num_horas_otros) as h_gestion,
- coalesce((avg(tidr.nota) filter (where tidr.id_componente = 1 and tidr.id_carga_tipo = 1)/ 5) * 0.40 * 100,0) as nd_hetero,
- coalesce((avg(tidr.nota) filter (where tidr.id_componente = 2 and tidr.id_carga_tipo = 1)/ 5) * 0.20 * 100,0) as nd_auto,
- coalesce((avg(tidr.nota) filter (where tidr.id_componente = 3 and tidr.id_carga_tipo = 1)/ 5) * 0.30 * 100,0) as nd_direc,
- coalesce((avg(tidr.nota) filter (where tidr.id_componente = 4 and tidr.id_carga_tipo = 1)/ 5) * 0.10 * 100,0) as nd_par,
- coalesce((avg(tidr.nota) filter (where tidr.id_componente = 2 and tidr.id_carga_tipo = 2)/ 5) * 0.20 * 100,0) as ni_auto,
- coalesce((avg(tidr.nota) filter (where tidr.id_componente = 3 and tidr.id_carga_tipo = 2)/ 5) * 0.60 * 100,0) as ni_direc,
- coalesce((avg(tidr.nota) filter (where tidr.id_componente = 4 and tidr.id_carga_tipo = 2)/ 5) * 0.20 * 100,0) as ni_par,
- coalesce((avg(tidr.nota) filter (where tidr.id_componente = 2 and tidr.id_carga_tipo = 3)/ 5) * 0.20 * 100,0) as ng_auto,
- coalesce((avg(tidr.nota) filter (where tidr.id_componente = 4 and tidr.id_carga_tipo = 3)/ 5) * 0.20 * 100,0) as ng_par,
- coalesce((avg(tidr.nota) filter (where tidr.id_componente = 3 and tidr.id_carga_tipo = 3)/ 5) * 0.60 * 100,0) as ng_direc
- from
- esq_evaluacion.tbl_int_detalle_resultado tidr
- join (select da.idpersonal, id.idescuela,pa.idperiodo, e.nombre as escuela, f2.nombre as facultadEscuela
- from esq_inscripciones.inscripcion_detalle id
- join esq_inscripciones.inscripcion i on i.idinscripcion = id.idinscripcion and i.idperiodo = id.idperiodo
- join esq_distributivos.distribucion_academica da on da.iddistributivo = id.iddistributivo
- join esq_distributivos.materia_unica mu on mu.idmateria_unica = da.idmateria_unica
- join esq_datos_personales.personal p on p.idpersonal = da.idpersonal
- join esq_periodos_academicos.periodo_academico pa on pa.idperiodo = id.idperiodo
- join esq_inscripciones.escuela e on e.idescuela = id.idescuela
- join esq_inscripciones.facultad f2 on f2.idfacultad = e.idfacultad
- --join esq_datos_personales.p_capacitacion pc on pc.idpersonal = p.idpersonal and pc.fecha_inicio >= pa.fecha_inicio AND pc.fecha_inicio <= pa.fecha_final
- --where id.idperiodo in (138) --and id.idescuela = 27
- and da.idpersonal > 0
- group by pa.idperiodo,da.idpersonal,p.apellido1 , p.apellido2 , p.nombres,id.idescuela ,e.nombre,f2.nombre
- order by pa.idperiodo,p.apellido1 , p.apellido2 , p.nombres) xx on xx.idpersonal = tidr.id_docente and xx.idperiodo = tidr.id_periodo
- inner join esq_periodos_academicos.periodo_academico pa on pa.idperiodo = tidr.id_periodo
- inner join esq_datos_personales.personal p on p.idpersonal = tidr.id_docente
- inner join (select id_periodo,id_docente,id_dedicacion,id_categoria,id_modalidad_laboral,id_departamento,
- coalesce(sum(case when id_carga_administrativa_tipo = 1 then horas end),0) as num_horas_docencia,
- coalesce(sum(case when id_carga_administrativa_tipo = 2 then horas end),0) as num_horas_investigacion,
- coalesce(sum(case when id_carga_administrativa_tipo = 4 then horas end),0) as num_horas_vinculacion,
- coalesce(sum(case when id_carga_administrativa_tipo = 3 then horas end),0) as num_horas_gestion,
- coalesce(sum(case when id_carga_administrativa_tipo not in (1,2,3,4) then horas end),0) as num_horas_otros,
- coalesce(sum(horas),0) as total_horas
- from esq_evaluacion.tbl_int_actividades_evaluadas
- group by id_periodo,id_docente,id_dedicacion,id_categoria,id_modalidad_laboral,id_departamento) tiae on
- tiae.id_docente = tidr.id_docente
- and tidr.id_periodo = tiae.id_periodo
- inner join esq_distributivos.departamento d on
- d.iddepartamento = tiae.id_departamento
- inner join esq_inscripciones.facultad f on
- f.idfacultad = d.idfacultad
- inner join esq_distributivos.categoria_tipo ct on
- ct.idcategoria = tiae.id_categoria
- inner join esq_distributivos.dedicacion_tipo dt on
- dt.iddedicacion = tiae.id_dedicacion
- inner join esq_distributivos.modalidad_laboral ml on
- ml.idmodadalidad_laboral = tiae.id_modalidad_laboral
- --where pa.idperiodo = 148 and xx.idescuela = 27
- group by
- pa.idperiodo,f.nombre,f.idfacultad,xx.idescuela,xx.escuela,xx.facultadEscuela,d.iddepartamento,p.idpersonal,p.cedula,ct.idcategoria,ct.abrevia ,dt.abrevia ,
- ml.abrevia ,tiae.num_horas_docencia,tiae.total_horas,tiae.num_horas_investigacion,
- tiae.num_horas_gestion,tiae.num_horas_otros
- order by f.nombre,d.nombre) u
- left join (select tpcde.iddocente,tpcde.idperiodo,
- avg(case when tpcde.estado_validacion ='CMP' then 100
- when tpcde.estado_validacion ='PAR' then 50
- when tpcde.estado_validacion ='' then 100
- when tpcde.estado_validacion ='NCM' then 0 else 0 end)
- filter (where ca.idcarga_administrativa_tipo in (1,6)) as porc_cump_doc,
- avg(case when tpcde.estado_validacion ='CMP' then 100
- when tpcde.estado_validacion ='PAR' then 50
- when tpcde.estado_validacion ='' then 100
- when tpcde.estado_validacion ='NCM' then 0 else 0 end)
- filter (where ca.idcarga_administrativa_tipo in (2,7)) as porc_cump_inv,
- /*avg(case when tpcde.estado_validacion ='CMP' then 100
- when tpcde.estado_validacion ='PAR' then 50
- when tpcde.estado_validacion ='' then 100
- when tpcde.estado_validacion ='NCM' then 0 else 0 end)
- filter (where ca.idcarga_administrativa_tipo in (4,8)) as porc_cump_vin,*/
- avg(case when tpcde.estado_validacion ='CMP' then 100
- when tpcde.estado_validacion ='PAR' then 50
- when tpcde.estado_validacion ='' then 100
- when tpcde.estado_validacion ='NCM' then 0 else 0 end)
- filter (where ca.idcarga_administrativa_tipo in (3)) as porc_cump_ges
- from esq_evaluacion.tbl_plc_control_docente_evidencias tpcde
- inner join esq_distributivos.carga_administrativa ca on ca.idcarga_administrativa = tpcde.idcarga_administrativa
- where tpcde.id_rol_revisa is not null
- and (tpcde.url is not null or (tpcde.url is null
- and (tpcde.estado_validacion is not null or tpcde.estado_validacion != '')))
- group by tpcde.iddocente,tpcde.idperiodo) cump on
- cump.iddocente = u.id_docente
- and cump.idperiodo = u.idperiodo_cump
- left join (select id_docente,id_periodo,string_agg(observacion,', ') filter (where tipo = 'PEN') as penalizaciones,
- string_agg(observacion,', ') filter (where tipo = 'MRT') as meritos
- from esq_evaluacion.tbl_int_incentivos_penalizaciones group by
- id_docente,id_periodo) tiip on
- tiip.id_docente = u.id_docente
- and tiip.id_periodo = u.idperiodo
- left join (select id_docente,id_periodo, string_agg(descripcion,', ')as descripcion
- from esq_evaluacion.tbl_int_excepciones_docentes
- group by id_docente,id_periodo) tied on
- tied.id_docente = u.id_docente
- and tied.id_periodo = u.idperiodo
- where u.idperiodo in (138,139) and u.idescuela = 97 and u.idcategoria not in (15)
Add Comment
Please, Sign In to add comment