Commit ca9bb21f authored by Antony Le Courtes's avatar Antony Le Courtes
Browse files

Quelques adaptation connecteur MV_INTERVENANT.sql octopus

parent 948b8435
Loading
Loading
Loading
Loading
+15 −13
Changes for doc/Connecteurs Import/Octopus/MV_INTERVENANT.sql: 15 added lines, 13 removed lines.
Original line number Diff line number Diff line
@@ -30,7 +30,8 @@ MATERIALIZED VIEW MV_INTERVENANT_OCTO AS
                 --Combinaison des témoins octopus pour récupérer les bonnes populations
                 AND  ((inds.t_enseignant = 'O' AND inds.t_vacataire = 'O')
                 		OR (inds.t_enseignant = 'O' AND inds.t_heberge = 'O')
                 		OR (inds.t_vacataire = 'O'))
                 		OR (inds.t_vacataire = 'O')
                        OR (inds.t_heberge = 'O'))
                 AND inds.c_source IN ('HARP', 'OCTO', 'SIHAM')


@@ -71,25 +72,27 @@ MATERIALIZED VIEW MV_INTERVENANT_OCTO AS
			   		u.c_src_individu,
			   		CASE WHEN u.c_source = 'SIHAM' THEN 1
			            WHEN u.c_source = 'HARP'  THEN 2
			    	    WHEN u.c_source = 'APO'   THEN 3
                        WHEN u.c_source = 'OCTO'  THEN 3
			    	    WHEN u.c_source = 'APO'   THEN 4
			       END                  ordre_source
				FROM octo.individu_unique@octoprod u
	 		)
     )
SELECT DISTINCT
    /*Octopus id, id unique pour un individu immuable dans le temps, remplace le code harpege*/
    i.code                                                       code,
    ltrim(TO_CHAR(i.code, '99999999'))                                   code,
    'Octopus'                                                            z_source_id,
    /* Code RH : on alimene le code RH uniquement si la source de l'individu est HARP ou SIHAM*/
    CASE
        WHEN (induni.c_source = 'HARP' OR induni.c_source = 'SIHAM')
            THEN induni.c_src_individu
            THEN ltrim(TO_CHAR(induni.c_src_individu, '99999999'))
        ELSE NULL END                                                    code_rh,
    indc.ldap_uid                                                        utilisateur_code,
    str.code                                                     z_structure_code,
    CASE
    str.code                                                             z_structure_id,
    /*CASE
        WHEN str2.code <> str.code THEN str2.code
        ELSE NULL
        END                                                      z_structure_code_n2,
        END                                                      z_structure_id_n2,*/
    i.z_statut_id                                                        z_statut_id,
    grade.c_grade                                                        z_grade_id,
    /* Données nécessaires pour calculer la discipline */
@@ -116,7 +119,7 @@ SELECT DISTINCT
    indc.email                                                           email_pro,
    ind.email_perso                                                      email_perso,
    /* Adresse */
    trim(adr.adresse1 || ' ' || adr.adresse2 || ' ' || adresse3) adresse_precisions,
    trim(adr.adresse1 || CHR(13) || adr.adresse2 || CHR(13) || adresse3) adresse_precisions,
    CAST(NULL AS varchar2(255))                                          adresse_numero,
    CAST(NULL AS varchar2(255))                                          z_adresse_numero_compl_id,
    CAST(NULL AS varchar2(255))                                          z_adresse_voirie_id,
@@ -124,14 +127,14 @@ SELECT DISTINCT
    CAST(NULL AS varchar2(255))                                          adresse_lieu_dit,
    adr.code_postal                                                      adresse_code_postal,
    adr.ville_nom                                                        adresse_commune,
    adr.pays_id                                                  z_adresse_pays_id,
    pays.code_pays                                                       z_adresse_pays_id,
    /* INSEE */
    CAST(NULL AS varchar2(255))                                          numero_insee,
    CAST(NULL AS varchar2(255))                                  numero_insee_provisoire,
    CAST(NULL AS numeric(1))                                             numero_insee_provisoire,
    /* Banque */
    CAST(NULL AS varchar2(255))                                          iban,
    CAST(NULL AS varchar2(255))                                          bic,
    CAST(NULL AS varchar2(255))                                  rib_hors_sepa,
    CAST(NULL AS numeric(1))                                             rib_hors_sepa,
    /* Données complémentaires */
    CAST(NULL AS varchar2(255))                                          autre_1,
    CAST(NULL AS varchar2(255))                                          autre_2,
@@ -153,8 +156,6 @@ SELECT DISTINCT
FROM i
         JOIN induni
              ON i.code = induni.c_individu_chaine --AND induni.c_source IN ('HARP', 'OCTO', 'SIHAM'))
--         JOIN mapping_code_rh maprh ON maprh.c_individu_chaine = induni.c_individu_chaine
--		 JOIN octo.individu_statut@octoprod inds ON inds.individu_id = induni.c_individu_chaine AND inds.c_source IN ('HARP', 'OCTO', 'SIHAM')
         LEFT JOIN octo.individu@octoprod ind ON ind.c_individu_chaine = induni.c_individu_chaine
    --On récupére la structure principale de l'individu
         LEFT JOIN structure_principale_individu spi ON spi.c_individu_chaine = induni.c_individu_chaine
@@ -170,6 +171,7 @@ FROM i
         LEFT JOIN octo.v_individu_adresse_perso@octoprod adr
                   ON adr.individu_id = induni.c_individu_chaine
                       AND (t_principale = 'O' AND adr.source_id IN ('HARP', 'SIHAM'))
         LEFT JOIN octo.pays@octoprod pays ON pays.id = adr.pays_id
    --On récupére le téléphone pro principal de l'indivdu
         LEFT JOIN telephone_pro_principal telpro ON telpro.individu_id = induni.c_individu_chaine
    -- On ne prend que les comptes qui ne sont pas étudiants