Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- CREATE OR REPLACE VIEW esq_ceac_planclase.v_docentes_departamento_periodo AS
- SELECT DISTINCT distribucion_academica.idpersonal,
- ( SELECT departamento_docente.iddepartamento
- FROM esq_distributivos.departamento_docente
- WHERE departamento_docente.idpersonal = distribucion_academica.idpersonal) AS iddepartamento,
- departamento_periodo.idperiodo,
- concat(personal.apellido1, ' ', personal.apellido2, ' ', personal.nombres) AS nombre_docente,
- personal.cedula,
- personal.correo_personal_institucional,
- categoria_tipo.idcategoria,
- categoria_tipo.nombre AS categoria,
- dedicacion_tipo.iddedicacion,
- dedicacion_tipo.nombre AS dedicacion,
- modalidad_laboral.idmodadalidad_laboral,
- modalidad_laboral.nombre AS modalidadlaboral,
- personal.genero,
- ( SELECT departamento_1.idfacultad
- FROM esq_distributivos.departamento departamento_1
- JOIN esq_distributivos.departamento_docente ON departamento_1.iddepartamento = departamento_docente.iddepartamento
- WHERE departamento_docente.idpersonal = distribucion_academica.idpersonal) AS idfacultad,
- (distribucion_academica.idpersonal::text || departamento_periodo.idperiodo::text)::numeric AS idregistro
- FROM esq_distributivos.distribucion_academica
- JOIN esq_distributivos.departamento_periodo ON distribucion_academica.iddepartamento_periodo = departamento_periodo.id_departamento_periodo
- JOIN esq_datos_personales.personal ON distribucion_academica.idpersonal = personal.idpersonal
- JOIN esq_distributivos.categoria_tipo ON categoria_tipo.idcategoria = esq_distributivos.f_obtiene_dedicacion_categoria_modalidad_laboral(distribucion_academica.idpersonal, departamento_periodo.idperiodo, 2)
- JOIN esq_distributivos.dedicacion_tipo ON dedicacion_tipo.iddedicacion = esq_distributivos.f_obtiene_dedicacion_categoria_modalidad_laboral(distribucion_academica.idpersonal, departamento_periodo.idperiodo, 1)
- JOIN esq_distributivos.modalidad_laboral ON modalidad_laboral.idmodadalidad_laboral = esq_distributivos.f_obtiene_dedicacion_categoria_modalidad_laboral(distribucion_academica.idpersonal, departamento_periodo.idperiodo, 3)
- JOIN esq_distributivos.departamento ON departamento.iddepartamento = departamento_periodo.iddepartamento
- WHERE departamento_periodo.iddepartamento <> (-1) AND distribucion_academica.idpersonal > 0
- UNION
- SELECT DISTINCT da1.idpersonal,
- ( SELECT departamento_docente.iddepartamento
- FROM esq_distributivos.departamento_docente
- WHERE departamento_docente.idpersonal = da1.idpersonal) AS iddepartamento,
- dp.idperiodo,
- concat(personal.apellido1, ' ', personal.apellido2, ' ', personal.nombres) AS nombre_docente,
- personal.cedula,
- personal.correo_personal_institucional,
- categoria_tipo.idcategoria,
- categoria_tipo.nombre AS categoria,
- dedicacion_tipo.iddedicacion,
- dedicacion_tipo.nombre AS dedicacion,
- modalidad_laboral.idmodadalidad_laboral,
- modalidad_laboral.nombre AS modalidadlaboral,
- personal.genero,
- ( SELECT departamento_1.idfacultad
- FROM esq_distributivos.departamento departamento_1
- JOIN esq_distributivos.departamento_docente ON departamento_1.iddepartamento = departamento_docente.iddepartamento
- WHERE departamento_docente.idpersonal = da1.idpersonal) AS idfacultad,
- (da1.idpersonal::text || dp.idperiodo::text)::numeric AS idregistro
- FROM esq_distributivos.distribucion_academica dac
- JOIN esq_distributivos.distribucion_academica_compartida da1 ON da1.iddistributivo = dac.iddistributivo
- JOIN esq_distributivos.departamento_docente dc ON dc.idpersonal = da1.idpersonal
- JOIN esq_distributivos.departamento_periodo dp ON dp.id_departamento_periodo = dac.iddepartamento_periodo
- JOIN esq_datos_personales.personal ON da1.idpersonal = personal.idpersonal
- JOIN esq_distributivos.categoria_tipo ON categoria_tipo.idcategoria = esq_distributivos.f_obtiene_dedicacion_categoria_modalidad_laboral(da1.idpersonal, dp.idperiodo, 2)
- JOIN esq_distributivos.dedicacion_tipo ON dedicacion_tipo.iddedicacion = esq_distributivos.f_obtiene_dedicacion_categoria_modalidad_laboral(da1.idpersonal, dp.idperiodo, 1)
- JOIN esq_distributivos.modalidad_laboral ON modalidad_laboral.idmodadalidad_laboral = esq_distributivos.f_obtiene_dedicacion_categoria_modalidad_laboral(da1.idpersonal, dp.idperiodo, 3)
- WHERE dp.iddepartamento <> (-1) AND da1.idpersonal > 0;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement