-- =====================================================================
-- Divers traitements sur les données après l'installation des données
-- =====================================================================
    
-- Pas d'utilisation du masquage des indicateurs.
-- Forçage de l'affichage.
UPDATE rh.t_indicateurs
SET is_hide = 0
;

-- Initialisation du paramétre de rubrique "Heures payées" à 0.
UPDATE rh.t_rubriques
SET heures_payees = '0'
WHERE heures_payees IS NULL
;

-- Initialisation des coefficients base/tx salarial/txpatronal lorsque null
UPDATE rh.t_rubriques
SET coefficient_base = 1
WHERE coefficient_base IS NULL
;

UPDATE rh.t_rubriques
SET coefficient_txs = 1
WHERE coefficient_txs IS NULL
;

UPDATE rh.t_rubriques
SET coefficient_txp = 1
WHERE coefficient_txp IS NULL
;

-- Initialisation du nombre d'heures mensuelles servant de base au calcul de l'ETP.
UPDATE rh.t_etablissements
SET base_calcul_etp = 151.67
WHERE 1!=1
	OR base_calcul_etp IS NULL
	OR base_calcul_etp = 0.0
;

-- Ajout des paramétrages.
DROP TABLE IF EXISTS w_divers
;
CREATE TEMP TABLE w_divers AS
SELECT
    'OCTIME_TPS_VALIDE' as code,
    'Compteur à utiliser pour le temps validé (5 ou 6).' as texte,
    '5' as valeur,
    NULL::date as valeur_date,
        'Compteur à utiliser pour le temps validé (5 ou 6).' as description
UNION
SELECT
    'OCTIME_TPS_VALIDE_A' as code,
    'Ajuster le temps validé.' as texte,
    '0' as valeur,
    NULL::date as valeur_date,
        'Ajuster le temps validé (0 désactivé par défaut).' as description
UNION
SELECT
    'OCTIME_VENTILATION',
    'Ventilation analytique Octime (0 désactivé).',
    '0',
    NULL::date,
        'Ventilation analytique Octime (0 désactivé).'
UNION
SELECT
    'OCTIME_SERVICE_ID',
    'Provenance du service Octime.',
    '2',
    NULL::date,
        'Provenance du service Octime.'
UNION
-- Paramétrage permettant de définir la provenance de la notion d'établissement Octime.
-- 0 = Manuel
-- 1-3 = niveaux Octime
-- 4 = cas Fondation Hopale où l'ent/ets est un préfixe du matricule.
SELECT
    'OCTIME_ETS_ID',
    'Provenance de l''établissement Octime.',
    '0',
    NULL::date,
        'Provenance de l''établissement Octime.'
UNION
-- Code établissement saisi à la main lorsque OCTIME_ETS_ID = 0.
-- Doit correspondre à t_entreprises.planning_code||t_etablissements.planning_code.
SELECT
    'OCTIME_ETS_MANUEL',
    'Code de l''établissement lorsque OCTIME_ETS_ID = 0.',
    '',
    NULL::date,
        'Code de l''établissement lorsque OCTIME_ETS_ID = 0'
UNION
SELECT
    'OCTIME_SALARIE',
    'Méthode de rapprochement salariés paie/planning.',
    '1',
    NULL::date,
        'Méthode de rapprochement salariés paie/planning.'
UNION
SELECT
    'OCTIME_INTERIM_STR',
    'Stratégie d''identification des intérimaires.',
    '0',
    NULL::date,
        'Stratégie d''identification des intérimaires.'
UNION
SELECT
    'OCTIME_INTERIM_PREFIXE',
    'Préfixe à ajouter aux matricules intérimaire.',
    '',
    NULL::date,
        'Préfixe à ajouter aux matricules intérimaire.'
UNION
SELECT
    'OCTIME_OLDMAT_PREFIXE',
    'Préfixe à ajouter aux matricules de l''ancien prestataire.',
    '',
    NULL::date,
        'Préfixe à ajouter aux matricules de l''ancien prestataire.'
UNION
SELECT
    'OCTIME_MAX_NIVEAU',
    'Niveau Octime maximum à importer.',
    '3',
    NULL::date,
        'Niveau Octime maximum à importer (3 par défaut, 4 maximum).'
UNION
SELECT
    'INTERIM_CNT_CODE',
    'Code du type de contrat intérim planning.',
    'INT',
    NULL::date,
        'Code du type de contrat intérim planning.'
UNION
SELECT
    'IMP_EXC_MAR',
    'Exclusion de motifs d''arrêt lors de l''import.',
    '',
    NULL::date,
        'Exclure des motifs d''arrêt lors de l''import'
UNION
SELECT
    'IMP_INC_MAR',
    'Inclusion de motifs d''arrêt lors de l''import.',
    '',
    NULL::date,
        'Séparer les codes par des virgules.'
UNION
SELECT
    'OPT_STD_HP',
    'Historique de paie classique ou paramétré.',
    '0',
    NULL::date,
        'Historique de paie classique ou paramétré.'
UNION
SELECT
    'OPT_INTERIM_PLANNING',
    'Remonter les intérimaires depuis le planning.',
    '0',
    NULL::date,
        'Remonter les intérimaires depuis le planning.'
UNION
SELECT
    'OPT_HP_UP',
    'Historique de paie màj (pour fusion).',
    '0',
    NULL::date,
        'Historique de paie màj (pour fusion).'
UNION
SELECT
    'OPT_CNT_FIN_FUSION',
    'Fusion des contrats consécutifs ayant le(s) motif(s) de fin paramétré(s) ici.',
    '',
    NULL::date,
        'Vide (défaut) : pas de fusion. Un ou plusieurs motifs (séparés par des virgules) : activé.'
UNION
SELECT
    'OPT_VENT_PAIE',
    'Remonter la ventilation de paie.',
    '1',
    NULL::date,
        '0 : pas de ventilation. 1 (défaut) : activé.'
UNION
SELECT
    'HEURES_W',
    'Heures Travaillées.',
    '0',
    NULL::date,
        'Calcul des Heures Travaillées (0 = Heures Payées - Heures NON Travaillées, 1 = Heures Travaillées)'
UNION
SELECT
    'SIGEMS_AUTO',
    'Sigems - Auto-détection du paramétrage des rubriques selon le compte.',
    '0',
    NULL::date,
        '0 = Non (par défaut), 1 = Oui (stratégie 1), N = futures stratégies...'
UNION
SELECT
    'SIGEMS_TS',
    'Sigems - Taxe sur les Salaires.',
    '0',
    NULL::date,
        'Intégration de la Taxe sur les Salaires (0 = Non, 1 = Oui)'
UNION
SELECT
    'SAGE_STATUT',
    'Sage - Statut iCTI.',
    'CATEGORIE',
    NULL::date,
        'Le statut iCTI doit être pris de la zone Sage "Catégorie" (CATEGORIE) ou "Niveau" (NIVEAU)'
UNION
SELECT
    'SAGE_GRILLE',
    'Sage - Grille iCTI.',
    'UNITE',
    NULL::date,
        'La grille iCTI doit être prise de la zone Sage "Unité" (UNITE) ou "Coefficient" (COEFFICIENT)'
UNION
SELECT
    'SAGE_QUALIFICATION',
    'Sage - Qualification iCTI.',
    'UNITE',
    NULL::date,
        'La qualification iCTI doit être pris de la zone Sage "Unité" (UNITE), "Département" (DEPARTEMENT), "Qualification" (QUALIFICATION) ou "Emploi" (EMPLOI)'
UNION
SELECT
    'SAGE_EMPLOI',
    'Sage - Code emploi iCTI.',
    'EMPLOI',
    NULL::date,
        'Le code emploi iCTI doit être pris de la zone Sage "Emploi" (EMPLOI) ou "Qualification" (QUALIFICATION)'
UNION
SELECT
    'SAGE_TYPE_HORAIRE',
    'Sage - Type d''horaire iCTI.',
    'VALEURCUMUL_81',
    NULL::date,
        'Le type d''horaire iCTI doit être pris de la zone Sage "Valeur cumul 81" (VALEURCUMUL_81) ou "Unité" (UNITE)'
UNION
SELECT
    'SAGE_SERVICE',
    'Sage - Service iCTI.',
    'SERVICE',
    NULL::date,
        'Le service iCTI doit être pris de la zone Sage "Service" (SERVICE) ou "Département" (DEPARTEMENT)'
UNION
SELECT
    'SAGE_TEMPS_TRAVAIL',
    'Sage - Type de temps de travail.',
    'ETP',
    NULL::date,
        'Privilégier l''ETP (ETP) ou l''Horaire (HORAIRE)'
UNION
SELECT
    'CEGID_SERVICE',
    'Cegid - Colonne où prendre les services iCTI.',
    '3',
    NULL::date,
        '1, 2 ou 3 (déf.).'
UNION
SELECT
    'CEGID_TYPE_CONTRAT',
    'Cegid - Colonne où prendre les types de contrat iCTI.',
    '1',
    NULL::date,
        '1 (déf.), 2, 3 ou 4.'
UNION
SELECT
    'CEGID_GRILLE',
    'Cegid - Colonne où prendre les grilles iCTI.',
    'GRILLE',
    NULL::date,
        'GRILLE (déf.) ou QUALIFICATION.'
UNION
SELECT
    'CEGID_QUALIFICATION',
    'Cegid - Colonne où prendre les qualifications iCTI.',
    'QUALIFICATION',
    NULL::date,
        'QUALIFICATION (déf.) ou EMPLOI.'
UNION
SELECT
    'CEGID_MOTIF_FIN',
    'Cegid - Colonne où prendre les motifs de fin iCTI.',
    '0',
    NULL::date,
        'O (déf.) ou 1.'
UNION
SELECT
    'CEGID_STATUT',
    'Cegid - Colonne où prendre les statuts iCTI.',
    'DADSCAT',
    NULL::date,
        'DADSCAT (déf.), DADSPROF ou INDICE.'
UNION
SELECT
    'CEGI_CST_FJ',
    'Constante CEGI codant pour les Forfaits Jours',
    'DADSH',
    NULL::date,
        'DADSH (défaut) ou autre.'
UNION
SELECT
    'CEGI_CODE_TTT',
    'Type de temps de travail tiré de la constante CEGI AAAAC',
    'AAAAC',
    NULL::date,
        'AAAAC (défaut), AARM ou autre.'
UNION
SELECT
    'CEGI_SEXE',
    'Cegi - Code sexe masculin.',
    '1',
    NULL::date,
        '1 par défaut (2 ou 3 sinon).'
UNION
SELECT
    'CEGI_GRILLE',
    'Cegi - Colonne où prendre les grilles iCTI.',
    'ECHELON',
    NULL::date,
        'ECHELON (déf.) ou GRILLE.'
UNION
SELECT
    'CEGID_GRP_GRILLE',
    'Cegi - Colonne où prendre les groupes de grille iCTI.',
    'COEFF',
    NULL::date,
        'COEFF (déf.), IND ou BUL.'
UNION
SELECT
    'CEGID_GRP_GRILLE_CST',
    'Cegi - Constante de paie où prendre le coefficient (CEGID_GRP_GRILLE = BUL).',
    '54',
    NULL::date,
        '54 (déf.) ou autre constante de paie.'
UNION
SELECT
    'CEGI_QUALIFICATION',
    'Cegi - Colonne où prendre les qualifications iCTI.',
    'QUALCONV',
    NULL::date,
        'QUALCONV (déf.), QUALIFICATION.'
UNION
SELECT
    'CEGI_CODE_EMPLOI',
    'Cegi - Colonne où prendre les codes emplois iCTI.',
    'MODCNT',
    NULL::date,
        'MODCNT (déf.), QUALIFICATION.'
UNION
SELECT
    'CEGI_STATUT',
    'Cegi - Colonne où prendre les statuts iCTI.',
    'CATSOC',
    NULL::date,
        'CATSOC (déf.), GRILLE.'
UNION
SELECT
    'CEGI_SITE_SERVICE',
    'Cegi Planning - Remonter la notion de site (=établissement).',
    '0',
    NULL::date,
        '0 = non (par déf.), 1 = oui.'
UNION
SELECT
    'CEGI_ABS_VALIDE',
    'Cegi Planning - Remonter UNIQUEMENT les absences validées.',
    '1',
    NULL::date,
        '1 = oui (par déf.), 0 = non.'
UNION
SELECT
    'CEGI_ABS_EXCL',
    'Cegi Planning - Codes absence à exclure.',
    '',
    NULL::date,
        'ex. : AMITH, JFCHO, ...'
UNION
SELECT
    'CEGI_PAUSE_EXCL',
    'Cegi Planning - Codes pauses à exclure.',
    '',
    NULL::date,
        'ex. : PAU, ...'
UNION
SELECT
    'CEGI_UNITE_HEURE',
    'Cegi Planning - Unités Cegi exprimées en heures.',
    '102',
    NULL::date,
        '102 (par déf.), valeurs séparées par des virgules.'
UNION
SELECT
    'CEGI_FORFAIT_JOUR',
    'Alimenter la base de la rubrique 1052 de forfait jour à partir de AAAAC.',
    '0',
    NULL::date,
        '0 (défaut) désactivé. Activé lorsqu''à 1.'
UNION
SELECT
    'CEGI_VENTILATION',
    'Remonter la ventilation analytique CEGI.',
    '0',
    NULL::date,
        '0 (défaut) désactivé. Activé lorsqu''entre 1 et 3.'
UNION
SELECT
    'CEGI_TPA_ID',
    'Identifiant Cegi du plan analytique à remonter.',
    '0',
    NULL::date,
        '0 (défaut) désactivé. Consulter la table prod_cegi.rhp_cmtyplana pour obtenir la valeur de TPA_ID.'
UNION
SELECT
    'SHS_ANCIENNETE',
    'SHS - Mode de calcul des anciennetés.',
    '0',
    NULL::date,
        'SHS - 0 = reprise du calcul SHS (défaut), 1 = calcul effectué par iCTI.'
UNION
SELECT
    'SHS_MOTIF',
    'SHS - Utiliser la précision à la place du motif d''arrêt.',
    '0',
    NULL::date,
        'Utiliser la précision à la place du motif d''arrêt (0 = Non par défaut, 1 = Oui)'
UNION
SELECT
    'PAIE_VENTILATION',
    'Remonter la ventilation analytique de paie.',
    '0',
    NULL::date,
        '0 (défaut) désactivé. Activé lorsqu''entre 1 et 3.'
UNION
SELECT
    'PEGASE_VEN_PROV',
    'Provenance de la ventilation PEGASE.',
    '1',
    NULL::date,
        'Onglet n°1 par défaut. Peut être 2, 3 ou plus selon les établissements.'
UNION
SELECT
    'BS_CLA_AGE',
    'Classe d''âges du Bilan Social.',
    'CTI_AGE',
    NULL::date,
        'Classe d''âges du Bilan Social.'
UNION
SELECT
    'BS_CLA_ANC',
    'Classe d''anciennetés du Bilan Social.',
    'CTI_ANC',
    NULL::date,
        'Classe d''anciennetés du Bilan Social.'
UNION
SELECT
    'FUSION_STRATEGIE',
    'Stratégie de rapprochement des matricules ancien/nouveau prestataire.',
    '0',
    NULL::date,
        'Stratégie de rapprochement des matricules ancien/nouveau prestataire.'
UNION
SELECT
    'FUSION_IGNORE_ARRETS',
    'Ignorer les arrêts de travail lors d''une fusion.',
    '0',
    NULL::date,
        'Ignorer les arrêts de travail lors d''une fusion.'
UNION
SELECT
    'EXERCICE_DECALE',
    'L''exercice de paie commence au mois de janvier (0) ou décembre (1).',
    '0',
    NULL::date,
        'L''exercice de paie commence au mois de janvier (0) ou décembre (1).'
UNION
SELECT
    'CORRECTION_DE_ETS',
    'Corriger la date d''entrée établissement en se basant sur la date de début du premier contrat.',
    '0',
    NULL::date,
        'Corriger la date d''entrée établissement en se basant sur la date de début du premier contrat.'
UNION
SELECT
    'CORRECTION_DS_ETS',
    'Corriger la date de sortie établissement en se basant sur la date de fin du dernier contrat.',
    '0',
    NULL::date,
        'Corriger la date de sortie établissement en se basant sur la date de fin du dernier contrat.'
UNION
SELECT
    'VENTIL_JOUR',
    'Ventilation par jour',
    '0',
    NULL::date,
        '(0) garder la ventilation du prestataire (1) Ventiler par jour (césure à minuit)'
UNION
SELECT
    'AGILETIME_PAUSE',
    'Id code(s) heure(s) de pause Agiletime',
    '21,27',
    NULL::date,
        'Définition du ou des id correspondant à des heures de pause à retrancher séparés par , sans espaces'
UNION
SELECT
    'AGILETIME_TODEL',
    'Id du code heure à ne pas prendre en compte',
    '15',
    NULL::date,
        'Définition du ou des id correspondant à des heures de pause à ignorer séparés par , sans espaces'
UNION
SELECT
    'QUALIF_ASSOC',
    'Association automatique des qualifications paie/planning',
    '2',
    NULL::date,
        '0: désactivé, 1: code, 2:texte, 3:les deux'
UNION
SELECT
    'SERVICE_ASSOC',
    'Association automatique des services paie/planning',
    '2',
    NULL::date,
        '0: désactivé, 1: code, 2:texte, 3:les deux'
UNION
SELECT
    'SENSPARAMETRE_CLASSE',
    'Sens consolidation classes/listes.',
    '0',
    NULL::date,
        '0: désactivé, M: Montant, D: Descendant'
UNION
SELECT
    'OPT_IMP_QUALIF',
    'Option d''import de la Qualification',
    '0',
    NULL::date,
        '0: valeur par défaut, 1: mise à jour du code et du texte'
UNION
SELECT
    'FUSIONSALARIE',
    'Fusion des salariés',
    '0',
    NULL::date,
        '1 = Fusion des salariés activée'
UNION
SELECT
    'FUSIONENTREESALARIE',
    'Fusion des dates entrées salariés (quelque soit entreprise)',
    '0',
    NULL::date,
        '1 = Fusion des dates entrée salariés activée'
UNION
SELECT
    'EXPERT_ACTIVE',
    'Contrôles EXPERT activés',
    '1',
    NULL::date,
        '1=Activé'
UNION
SELECT
    'EIG_SERVICE',
    'Provenance du service EIG',
    '0',
    NULL::date,
        '0: Service, 1: Section contrat, 2: Section contrat - Service'
UNION
SELECT
    'EIG_ETABLISSEMENT',
    'Provenance de l''établissement EIG',
    '1',
    NULL::date,
        '0: Bulletin, 1: Contrat, 2: Personne'
UNION
SELECT
    'ADP_TYPE_CONTRAT',
    'Colonne pour type de contrat ',
    '0',
    NULL::date,
        '0: Nature du contrat (cnlcnt), 1: Type de contrat (lnmcnt)'
UNION
SELECT
    'ADP_SERVICE_COLUMN',
    'Colonne pour service',
    'SACAFF',
    NULL::date,
        'SACAFF, SACAFFEC01, SACAFFEC02, SACAFFEC05 (dft)'
UNION
SELECT
    'CEGI_PLANNING_FORCE_TYPE_HORAIRE_ABSENCE',
    'Cegi Planning - Pour forcer des codes de types horaires en temps d''absence',
    '',
    NULL::date,
        'Valeurs séparées par des virgules'
UNION
SELECT
    'CPP_COEF_VALORISATION_INTERIM',
    'Coefficient de valorisation des moyennes salariales pour les intérimaires',
    '1.20',
    NULL::date,
        'Coefficient de valorisation des moyennes salariales pour les intérimaires'
UNION
SELECT
    'CPP_JOUR_DEBUT_MOIS_PAIE',
    'Croisement Paie Planning : Date du premier jour d''affectation de la paie',
    '1',
    NULL::date,
        'Croisement Paie Planning : Date du premier jour d''affectation de la paie'
UNION
SELECT
    'CEGI_PLANNING_ABSENCE_HEURE',
    'Cegi Planning - Codes d''absences dont l''unité de temps utilisée est l''heure',
    '',
    NULL::date,
        'Valeurs séparées par des virgules'
UNION
SELECT
    'CEGI_PLANNING_TYPE_HORAIRE_TEMPS_VALIDE_VERS_TEMPS_DU',
    'Cegi Planning - Codes de types horaires à transférer du temps_validé vers le temps_du',
    '',
    NULL::date,
        'Valeurs séparées par des virgules'
;

INSERT INTO rh.t_divers(
    code,
    texte,
    valeur,
    valeur_date,
    description)
SELECT
    code,
    texte,
    valeur,
    valeur_date,
    description
FROM w_divers
WHERE code NOT IN (SELECT code FROM rh.t_divers)
;

UPDATE rh.t_divers SET
                       texte = w_divers.texte,
                       description = w_divers.description
    FROM w_divers
WHERE 1=1
  AND t_divers.code = w_divers.code
  AND (1!=1
   OR t_divers.texte != w_divers.texte
   OR t_divers.description != w_divers.description)
;

-- Màj du paramétre par défaut CEGID_STATUT qui passe de DADS à DADSCAT.
UPDATE rh.t_divers SET
    valeur = 'DADSCAT'
WHERE 1=1
  AND code = 'CEGID_STATUT'
  AND valeur = 'DADS'
;

-- Maintenance de ce qui existe en prod (SALARIE_CORR => OCTIME_SALARIE).
UPDATE rh.t_divers
SET valeur = (SELECT valeur FROM rh.t_divers WHERE code = 'SALARIE_CORR')
WHERE 1=1
  AND code = 'OCTIME_SALARIE'
  AND (SELECT count(*) FROM rh.t_divers WHERE code = 'SALARIE_CORR') > 0
;

DELETE FROM rh.t_divers
WHERE code = 'SALARIE_CORR'
;

-- Création d'une liste CTI de rubrique(s) à paramétrer permettant d'identifier d'eventuelles rubriques d'heures contrat.
DROP TABLE IF EXISTS w_dbsetup
;

CREATE TEMP TABLE w_dbsetup (oid text, texte text,chapitre text,code text, is_cti text, contenu_by_code text, include_code text, exclude_code text, show_omit text, utilisateur_createur text, est_partagee_modification text,table_code text)
;

INSERT INTO w_dbsetup
VALUES('0',
       'Heures contrat',
       'Paramétrage',
       'CTI_HCNT',
       '1',
       '0',
       '',
       '',
       '0',
       '',
       '1',
       'RUP')
;

UPDATE rh.t_listes SET
                       texte = w_dbsetup.texte,
                       chapitre = w_dbsetup.chapitre,
                       table_id = t_listes_tables.oid,
                       is_cti = w_dbsetup.is_cti,
                       show_omit = w_dbsetup.show_omit,
                       contenu_by_code = w_dbsetup.contenu_by_code,
                       include_code = w_dbsetup.include_code,
                       exclude_code = w_dbsetup.exclude_code,
                       utilisateur_createur =
                           CASE
                               WHEN t_listes.utilisateur_createur = '' OR w_dbsetup.est_partagee_modification <> '1' THEN w_dbsetup.utilisateur_createur
                               ELSE t_listes.utilisateur_createur
                               END,
                       est_partagee_modification = w_dbsetup.est_partagee_modification
    FROM w_dbsetup, rh.t_listes_tables
WHERE true
  AND w_dbsetup.table_code = t_listes_tables.code
  AND t_listes.code = w_dbsetup.code
;

INSERT INTO rh.t_listes(code, texte, chapitre, table_id, is_cti, show_omit, contenu_by_code, include_code, exclude_code, utilisateur_createur, est_partagee_modification)
SELECT w_dbsetup.code,
       w_dbsetup.texte,
       w_dbsetup.chapitre,
       t_listes_tables.oid,
       w_dbsetup.is_cti,
       w_dbsetup.show_omit,
       w_dbsetup.contenu_by_code,
       w_dbsetup.include_code,
       w_dbsetup.exclude_code,
       w_dbsetup.utilisateur_createur,
       w_dbsetup.est_partagee_modification
FROM w_dbsetup,
     rh.t_listes_tables
WHERE true
  AND w_dbsetup.table_code = t_listes_tables.code
  AND w_dbsetup.code NOT IN (SELECT code FROM rh.t_listes)
;

-- Initialisation du code cotisation pour un salarié.
UPDATE rh.p_salaries
SET code_cotisation_id = 0
WHERE code_cotisation_id IS NULL
;

UPDATE rh.p_historique_paie
SET compte_id = 0
WHERE compte_id IS NULL
;

-- Màj des établissements dans p_contrats_mois lorsque non renseigné lors de l'import.
-- Doit aussi être effectué dans le SHARE à l'issu de chaque import.
UPDATE rh.p_contrats_mois SET
    etablissement_id = p_contrats.etablissement_id
    FROM rh.p_contrats
WHERE 1=1
  AND p_contrats_mois.contrat_id = p_contrats.oid
  AND p_contrats_mois.etablissement_id IS NULL
;

-- Màj de l'établissement pour chaque ligne de paie lorsque non renseigné.
-- Doit aussi être effectué dans le SHARE à l'issu de chaque import.
UPDATE rh.p_historique_paie SET
    etablissement_id = p_contrats_mois.etablissement_id
    FROM rh.p_contrats_mois
WHERE 1=1
  AND p_historique_paie.contrat_mois_id = p_contrats_mois.oid
  AND p_historique_paie.etablissement_id IS NULL
;

-- Alimentation des anciennetés en jours lorsque non renseigné lors de l'import.
-- (365 + 365 + 365 + 366) / (12 * 4) = 30.4375
UPDATE rh.p_contrats
SET anciennete_anterieure_jours = anciennete_anterieure_calculee_mois * 30.4375
WHERE 1!=1
	OR anciennete_anterieure_jours = 0
	OR anciennete_anterieure_jours IS NULL
;

UPDATE rh.p_contrats_mois
SET anciennete_jours = anciennete_mois * 30.4375
WHERE 1!=1
	OR anciennete_jours = 0
	OR anciennete_jours IS NULL
;

-- Correction sur les rapports Essentiels passés à is_hide = 1 par erreur.
UPDATE rh.t_rapports SET
    is_hide = '0'
WHERE 1=1
  AND code IN ('CTI_ESS_10', 'CTI_ESS_11')
  AND is_hide = '1'
;

-- Les Handicaps sont désactivés
TRUNCATE rh.p_handicap
;