Skip to content
Snippets Groups Projects
Commit 6aaa6d2b authored by Antony Le Courtes's avatar Antony Le Courtes
Browse files

Ajout d'un COALESCE sur les date de fin de contrat dans MV_INTERVENANT.sql

parent 193730ad
Branches
Tags
No related merge requests found
CREATE
MATERIALIZED VIEW MV_INTERVENANT AS
WITH i AS (
SELECT DISTINCT code,
......@@ -30,7 +31,7 @@ WITH i AS (
JOIN octo.individu_unique@octoprod uni ON icto.individu_id = uni.c_individu_chaine
JOIN octo.v_individu_statut@octoprod vinds ON vinds.individu_id = uni.c_individu_chaine
WHERE (icto.d_debut - 184 <= SYSDATE OR icto.d_fin >= SYSDATE) AND icto.code_ose IS NOT NULL
WHERE (COALESCE(icto.d_debut, to_date('01/01/1900', 'dd/mm/YYYY')) - 184 <= SYSDATE OR COALESCE(icto.d_fin, to_date('01/01/9999', 'dd/mm/YYYY')) >= SYSDATE) AND icto.code_ose IS NOT NULL
UNION ALL
......@@ -52,7 +53,7 @@ WITH i AS (
FROM octo.individu_unique@octoprod uni
JOIN octo.individu_statut@octoprod inds ON inds.individu_id = uni.c_individu_chaine
LEFT JOIN octo.v_individu_statut@octoprod vinds ON vinds.individu_id = uni.c_individu_chaine
LEFT JOIN octo.v_individu_contrat_type_ose@octoprod icto ON uni.c_individu_chaine = icto.individu_id AND icto.d_debut - 184 <= SYSDATE AND icto.d_fin >= SYSDATE AND icto.code_ose IS NOT NULL AND icto.code_ose NOT IN('NON_AUTORISE')
LEFT JOIN octo.v_individu_contrat_type_ose@octoprod icto ON uni.c_individu_chaine = icto.individu_id AND COALESCE(icto.d_debut, to_date('01/01/1900', 'dd/mm/YYYY')) - 184 <= SYSDATE AND COALESCE(inds.d_fin, to_date('01/01/9999', 'dd/mm/YYYY')) >= SYSDATE AND icto.code_ose IS NOT NULL AND icto.code_ose NOT IN('NON_AUTORISE')
WHERE inds.d_debut - 184 <= SYSDATE
--On ne remonte pas de statut autre pour ceux qui ont déjà un certain type de contrat
--AND icto.individu_id IS NULL
......@@ -65,6 +66,8 @@ WITH i AS (
--AND (vinds.t_doctorant='N' OR vinds.individu_id IS NULL)
AND inds.c_source IN ('HARP', 'OCTO', 'SIHAM')
) t
),
--Trouver le tel pro principal de l'intervenant
......@@ -282,3 +285,7 @@ FROM i
--On récupére la discipline adaptée directement dans Octopus
LEFT JOIN cnua cnua ON cnua.individu_id = induni.c_individu_chaine
WHERE i.validite_fin >= (SYSDATE - (365 * 2))
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment