Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- View: esq_ceac_planclase.v_plan_clase_escuelas
- -- DROP VIEW esq_ceac_planclase.v_plan_clase_escuelas;
- CREATE OR REPLACE VIEW esq_ceac_planclase.v_plan_clase_escuelas AS
- SELECT DISTINCT (
- CASE
- WHEN da.idpersonal IS NOT NULL THEN da.idpersonal::text
- ELSE (( SELECT personal.idpersonal
- FROM esq_distributivos.distribucion_academica
- JOIN esq_distributivos.distribucion_academica_compartida ON distribucion_academica.iddistributivo = distribucion_academica_compartida.iddistributivo
- JOIN esq_datos_personales.personal ON personal.idpersonal = distribucion_academica_compartida.idpersonal
- JOIN esq_distributivos.materia_unica_compartida_configuracion ON distribucion_academica_compartida.idconfiguracion = materia_unica_compartida_configuracion.idconfiguracion
- WHERE materia_unica_compartida_configuracion.descripcion::text = 'TEORIA'::text AND materia_unica_compartida_configuracion.idperiodo = pd.idperiodo AND distribucion_academica_compartida.iddistributivo = da.iddistributivo
- LIMIT 1))::text
- END || (((((da.iddistributivo || abs(da.idmateria_unica)::text) || m.idmateria::text) || pd.idperiodo::text) || pd.idescuela::text) || me.idmalla::text))::numeric AS idregistro,
- pd.idperiodo,
- pa.nombre AS nperiodo,
- f.idfacultad,
- f.nombre AS nfacultad,
- pd.idescuela,
- e.nombre AS nescuela,
- me.idmalla,
- da.idmateria_unica,
- da.idparalelo,
- ( SELECT pa_1.nombre
- FROM esq_distributivos.paralelo pa_1
- WHERE pa_1.idparalelo = da.idparalelo) AS paralelo,
- ( SELECT DISTINCT materia.nombre
- FROM esq_mallas.materia
- WHERE materia.idmateria = m.idmateria AND materia.idtipo_perfil_profesional = m.idtipo_perfil_profesional) AS nombre,
- m.idtipo_perfil_profesional,
- m.idtipo_organizacion_curricular,
- ( SELECT materia_unica.iddepartamento
- FROM esq_distributivos.materia_unica
- WHERE materia_unica.idmateria_unica = da.idmateria_unica) AS iddepartamento,
- ( SELECT departamento.nombre
- FROM esq_distributivos.materia_unica
- JOIN esq_distributivos.departamento ON materia_unica.iddepartamento = departamento.iddepartamento
- WHERE materia_unica.idmateria_unica = da.idmateria_unica) AS ndepartamento,
- ( SELECT departamento.idfacultad
- FROM esq_distributivos.materia_unica
- JOIN esq_distributivos.departamento ON materia_unica.iddepartamento = departamento.iddepartamento
- WHERE materia_unica.idmateria_unica = da.idmateria_unica) AS idfacultadmateria,
- ( SELECT mu.nombre
- FROM esq_distributivos.materia_unica mu
- WHERE mu.idmateria_unica = da.idmateria_unica) AS nmateria_unica,
- ( SELECT mm.creditos
- FROM esq_mallas.malla_materia_nivel mm
- WHERE mm.idmalla = pd.idmalla AND mm.idescuela = pd.idescuela AND pd.idmateria = mm.idmateria) AS creditos_asignatura,
- CASE
- WHEN da.idpersonal IS NOT NULL THEN da.idpersonal
- ELSE ( SELECT personal.idpersonal
- FROM esq_distributivos.distribucion_academica
- JOIN esq_distributivos.distribucion_academica_compartida ON distribucion_academica.iddistributivo = distribucion_academica_compartida.iddistributivo
- JOIN esq_datos_personales.personal ON personal.idpersonal = distribucion_academica_compartida.idpersonal
- JOIN esq_distributivos.materia_unica_compartida_configuracion ON distribucion_academica_compartida.idconfiguracion = materia_unica_compartida_configuracion.idconfiguracion
- WHERE materia_unica_compartida_configuracion.descripcion::text = 'TEORIA'::text AND materia_unica_compartida_configuracion.idperiodo = pd.idperiodo AND distribucion_academica_compartida.iddistributivo = da.iddistributivo
- LIMIT 1)
- END AS idpersonal_docente,
- CASE
- WHEN da.idpersonal IS NOT NULL THEN ( SELECT (((COALESCE(personal.apellido1, ''::character varying)::text || ' '::text) || COALESCE(personal.apellido2, ''::character varying)::text) || ' '::text) || COALESCE(personal.nombres, ''::character varying)::text AS nom
- FROM esq_datos_personales.personal
- WHERE personal.idpersonal = da.idpersonal)
- ELSE ( SELECT concat(personal.apellido1, ' ', personal.apellido2, ' ', personal.nombres) AS nombre_docente_teoria
- FROM esq_distributivos.distribucion_academica
- JOIN esq_distributivos.distribucion_academica_compartida ON distribucion_academica.iddistributivo = distribucion_academica_compartida.iddistributivo
- JOIN esq_datos_personales.personal ON personal.idpersonal = distribucion_academica_compartida.idpersonal
- JOIN esq_distributivos.materia_unica_compartida_configuracion ON distribucion_academica_compartida.idconfiguracion = materia_unica_compartida_configuracion.idconfiguracion
- WHERE materia_unica_compartida_configuracion.descripcion::text = 'TEORIA'::text AND materia_unica_compartida_configuracion.idperiodo = pd.idperiodo AND distribucion_academica_compartida.iddistributivo = da.iddistributivo
- LIMIT 1)
- END AS docente,
- me.nombre AS nmalla,
- ( SELECT mm.materia_virtual
- FROM esq_mallas.malla_materia_nivel mm
- WHERE mm.idmalla = pd.idmalla AND mm.idescuela = pd.idescuela AND pd.idmateria = mm.idmateria) AS es_virtual,
- CASE
- WHEN pl.idregistro IS NOT NULL THEN
- CASE
- WHEN (( SELECT count(tbl_plc_unidades_seguimiento.idregistro) AS count
- FROM esq_ceac_planclase.tbl_plc_unidades_seguimiento
- WHERE tbl_plc_unidades_seguimiento.idplanclase = pl.idregistro AND tbl_plc_unidades_seguimiento.estado = 'ED'::text)) > 0 THEN 'ED'::text
- ELSE 'FN'::text
- END
- ELSE 'NE'::text
- END AS estado,
- CASE
- WHEN pl.idregistro IS NOT NULL THEN pl.idregistro
- ELSE 0::numeric
- END AS idplanclase,
- da.iddistributivo,
- ( SELECT count(t_1.idpersonal) AS count
- FROM ( SELECT DISTINCT id.idpersonal
- FROM esq_inscripciones.inscripcion_detalle id
- WHERE id.iddistributivo = da.iddistributivo AND id.anulado::text = 'N'::text AND (id.idperiodo IN ( SELECT pa_1.idperiodo
- FROM esq_periodos_academicos.periodo_academico pa_1
- JOIN esq_distributivos.departamento_periodo dp_1 ON dp_1.idperiodo = pa_1.idperiodo
- WHERE dp_1.id_departamento_periodo = da.iddepartamento_periodo))) t_1) AS num_estudiantes_registrados
- FROM esq_inscripciones.inscripcion_detalle pd
- JOIN esq_inscripciones.inscripcion i ON i.idinscripcion = pd.idinscripcion AND i.idperiodo = pd.idperiodo AND i.idescuela = pd.idescuela AND i.idpersonal = pd.idpersonal
- JOIN esq_distributivos.distribucion_academica da ON da.iddistributivo = pd.iddistributivo AND da.habilitado::text = 'S'::text
- JOIN esq_inscripciones.escuela e ON e.idescuela = pd.idescuela
- JOIN esq_inscripciones.facultad f ON f.idfacultad = e.idfacultad
- JOIN esq_periodos_academicos.periodo_academico pa ON pa.idperiodo = pd.idperiodo
- JOIN esq_mallas.materia m ON m.idmateria = pd.idmateria
- JOIN esq_mallas.malla_escuela me ON me.idmalla = pd.idmalla
- LEFT JOIN esq_ceac_planclase.tbl_plc_planclase pl ON pl.iddistributivo = da.iddistributivo::numeric
- ORDER BY (
- CASE
- WHEN pl.idregistro IS NOT NULL THEN
- CASE
- WHEN (( SELECT count(tbl_plc_unidades_seguimiento.idregistro) AS count
- FROM esq_ceac_planclase.tbl_plc_unidades_seguimiento
- WHERE tbl_plc_unidades_seguimiento.idplanclase = pl.idregistro AND tbl_plc_unidades_seguimiento.estado = 'ED'::text)) > 0 THEN 'ED'::text
- ELSE 'FN'::text
- END
- ELSE 'NE'::text
- END );
- ALTER TABLE esq_ceac_planclase.v_plan_clase_escuelas
- OWNER TO ceac_analitico;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement