From 2ac594fb64daf00c70e6750ff6128f7d4eff34dc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Laurent=20L=C3=A9cluse?= <laurent.lecluse@unicaen.fr> Date: Fri, 28 Jun 2019 16:12:59 +0200 Subject: [PATCH] Nouveau script d'installation de la BDD --- admin/src/BddAdmin/Schema.php | 2 +- bdd/install.sql | 1437 +- data/ddl.php | 51527 ++++++++++++++++++++++++++++++++ 3 files changed, 52377 insertions(+), 589 deletions(-) create mode 100644 data/ddl.php diff --git a/admin/src/BddAdmin/Schema.php b/admin/src/BddAdmin/Schema.php index 928862558e..6530ffd155 100644 --- a/admin/src/BddAdmin/Schema.php +++ b/admin/src/BddAdmin/Schema.php @@ -545,7 +545,7 @@ class Schema if (substr(trim($qr), -1) != ';') { $qr .= ';'; } - $sql .= "$qr\n/--\n\n"; + $sql .= "$qr\n/\n\n"; } $sql .= "\n\n\n"; } diff --git a/bdd/install.sql b/bdd/install.sql index 007aed053a..d34b08d4fd 100644 --- a/bdd/install.sql +++ b/bdd/install.sql @@ -456,6 +456,7 @@ CREATE TABLE "ADRESSE_STRUCTURE" CREATE TABLE "AFFECTATION" ( "ID" NUMBER(*,0) NOT NULL ENABLE, + "UTILISATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "ROLE_ID" NUMBER(*,0) NOT NULL ENABLE, "STRUCTURE_ID" NUMBER(*,0), "SOURCE_ID" NUMBER(*,0) NOT NULL ENABLE, @@ -465,8 +466,7 @@ CREATE TABLE "AFFECTATION" "HISTO_MODIFICATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, "HISTO_MODIFICATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_DESTRUCTION" DATE, - "HISTO_DESTRUCTEUR_ID" NUMBER(*,0), - "UTILISATEUR_ID" NUMBER(*,0) NOT NULL ENABLE + "HISTO_DESTRUCTEUR_ID" NUMBER(*,0) ); / @@ -491,16 +491,16 @@ COMMENT ON TABLE "AFFECTATION_RECHERCHE" IS 'Un chercheur peut avoir plusieurs a CREATE TABLE "AGREMENT" ( "ID" NUMBER(*,0) NOT NULL ENABLE, - "STRUCTURE_ID" NUMBER, + "TYPE_AGREMENT_ID" NUMBER(*,0) NOT NULL ENABLE, "INTERVENANT_ID" NUMBER(*,0) NOT NULL ENABLE, + "DATE_DECISION" DATE NOT NULL ENABLE, "HISTO_CREATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, "HISTO_CREATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_MODIFICATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, "HISTO_MODIFICATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_DESTRUCTION" DATE, "HISTO_DESTRUCTEUR_ID" NUMBER(*,0), - "DATE_DECISION" DATE NOT NULL ENABLE, - "TYPE_AGREMENT_ID" NUMBER(*,0) NOT NULL ENABLE + "STRUCTURE_ID" NUMBER ); / @@ -554,7 +554,10 @@ CREATE TABLE "CC_ACTIVITE" CREATE TABLE "CENTRE_COUT" ( "ID" NUMBER(*,0) NOT NULL ENABLE, + "CODE" VARCHAR2(50 CHAR) NOT NULL ENABLE, "LIBELLE" VARCHAR2(200 CHAR) NOT NULL ENABLE, + "ACTIVITE_ID" NUMBER(*,0) NOT NULL ENABLE, + "TYPE_RESSOURCE_ID" NUMBER(*,0) NOT NULL ENABLE, "PARENT_ID" NUMBER(*,0), "SOURCE_ID" NUMBER(*,0) NOT NULL ENABLE, "SOURCE_CODE" VARCHAR2(100 CHAR) NOT NULL ENABLE, @@ -564,10 +567,7 @@ CREATE TABLE "CENTRE_COUT" "HISTO_MODIFICATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_DESTRUCTION" DATE, "HISTO_DESTRUCTEUR_ID" NUMBER(*,0), - "ACTIVITE_ID" NUMBER(*,0) NOT NULL ENABLE, - "TYPE_RESSOURCE_ID" NUMBER(*,0) NOT NULL ENABLE, - "UNITE_BUDGETAIRE" VARCHAR2(15 CHAR), - "CODE" VARCHAR2(50 CHAR) NOT NULL ENABLE + "UNITE_BUDGETAIRE" VARCHAR2(15 CHAR) ); / @@ -631,17 +631,17 @@ CREATE TABLE "CONTRAT" ( "ID" NUMBER(*,0) NOT NULL ENABLE, "TYPE_CONTRAT_ID" NUMBER(*,0) NOT NULL ENABLE, "INTERVENANT_ID" NUMBER(*,0) NOT NULL ENABLE, + "STRUCTURE_ID" NUMBER(*,0) NOT NULL ENABLE, + "VALIDATION_ID" NUMBER(*,0), + "NUMERO_AVENANT" NUMBER DEFAULT 0 NOT NULL ENABLE, + "DATE_RETOUR_SIGNE" DATE, "HISTO_CREATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, "HISTO_CREATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_MODIFICATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, "HISTO_MODIFICATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_DESTRUCTION" DATE, "HISTO_DESTRUCTEUR_ID" NUMBER(*,0), - "STRUCTURE_ID" NUMBER(*,0) NOT NULL ENABLE, "CONTRAT_ID" NUMBER, - "DATE_RETOUR_SIGNE" DATE, - "NUMERO_AVENANT" NUMBER DEFAULT 0 NOT NULL ENABLE, - "VALIDATION_ID" NUMBER(*,0), "TOTAL_HETD" FLOAT(126) ); / @@ -689,16 +689,16 @@ CREATE TABLE "DISCIPLINE" "LIBELLE_LONG" VARCHAR2(200 CHAR) NOT NULL ENABLE, "SOURCE_ID" NUMBER(*,0) NOT NULL ENABLE, "SOURCE_CODE" VARCHAR2(100 CHAR) NOT NULL ENABLE, + "CODES_CORRESP_1" VARCHAR2(1000 CHAR), + "CODES_CORRESP_2" VARCHAR2(1000 CHAR), + "CODES_CORRESP_3" VARCHAR2(1000 CHAR), + "CODES_CORRESP_4" VARCHAR2(1000 CHAR), "HISTO_CREATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, "HISTO_CREATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_MODIFICATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, "HISTO_MODIFICATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_DESTRUCTION" DATE, - "HISTO_DESTRUCTEUR_ID" NUMBER(*,0), - "CODES_CORRESP_1" VARCHAR2(1000 CHAR), - "CODES_CORRESP_2" VARCHAR2(1000 CHAR), - "CODES_CORRESP_3" VARCHAR2(1000 CHAR), - "CODES_CORRESP_4" VARCHAR2(1000 CHAR) + "HISTO_DESTRUCTEUR_ID" NUMBER(*,0) ); / @@ -737,10 +737,10 @@ CREATE TABLE "DOSSIER" "HISTO_DESTRUCTION" DATE, "HISTO_DESTRUCTEUR_ID" NUMBER(*,0), "NUMERO_INSEE_EST_PROVISOIRE" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE, - "DATE_NAISSANCE" DATE, - "DEPT_NAISSANCE_ID" NUMBER(*,0), "EMAIL_PERSO" VARCHAR2(128 CHAR), + "DATE_NAISSANCE" DATE, "PAYS_NAISSANCE_ID" NUMBER(*,0), + "DEPT_NAISSANCE_ID" NUMBER(*,0), "VILLE_NAISSANCE" VARCHAR2(128 CHAR), "INTERVENANT_ID" NUMBER(*,0) NOT NULL ENABLE ); @@ -748,6 +748,7 @@ CREATE TABLE "DOSSIER" CREATE TABLE "DOTATION" ( "ID" NUMBER(*,0) NOT NULL ENABLE, + "TYPE_RESSOURCE_ID" NUMBER(*,0) NOT NULL ENABLE, "ANNEE_ID" NUMBER(*,0) NOT NULL ENABLE, "STRUCTURE_ID" NUMBER(*,0) NOT NULL ENABLE, "HEURES" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, @@ -758,15 +759,13 @@ CREATE TABLE "DOTATION" "HISTO_DESTRUCTION" DATE, "HISTO_DESTRUCTEUR_ID" NUMBER(*,0), "ANNEE_CIVILE" NUMBER(*,0) NOT NULL ENABLE, - "LIBELLE" VARCHAR2(100 CHAR) NOT NULL ENABLE, - "TYPE_RESSOURCE_ID" NUMBER(*,0) NOT NULL ENABLE + "LIBELLE" VARCHAR2(100 CHAR) NOT NULL ENABLE ); / CREATE TABLE "EFFECTIFS" ( "ID" NUMBER(*,0) NOT NULL ENABLE, "ELEMENT_PEDAGOGIQUE_ID" NUMBER(*,0) NOT NULL ENABLE, - "ANNEE_ID" NUMBER NOT NULL ENABLE, "FI" NUMBER(*,0) DEFAULT 0 NOT NULL ENABLE, "FC" NUMBER(*,0) DEFAULT 0 NOT NULL ENABLE, "FA" NUMBER(*,0) DEFAULT 0 NOT NULL ENABLE, @@ -777,7 +776,8 @@ CREATE TABLE "EFFECTIFS" "HISTO_MODIFICATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, "HISTO_MODIFICATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_DESTRUCTION" DATE, - "HISTO_DESTRUCTEUR_ID" NUMBER(*,0) + "HISTO_DESTRUCTEUR_ID" NUMBER(*,0), + "ANNEE_ID" NUMBER NOT NULL ENABLE ); / @@ -796,10 +796,14 @@ CREATE TABLE "ELEMENT_MODULATEUR" CREATE TABLE "ELEMENT_PEDAGOGIQUE" ( "ID" NUMBER(*,0) NOT NULL ENABLE, + "CODE" VARCHAR2(50 CHAR) NOT NULL ENABLE, "LIBELLE" VARCHAR2(200 CHAR) NOT NULL ENABLE, "ETAPE_ID" NUMBER(*,0) NOT NULL ENABLE, "STRUCTURE_ID" NUMBER(*,0) NOT NULL ENABLE, "PERIODE_ID" NUMBER(*,0), + "TAUX_FI" FLOAT(126) DEFAULT 1 NOT NULL ENABLE, + "TAUX_FC" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, + "TAUX_FA" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, "TAUX_FOAD" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, "FI" NUMBER(1,0) DEFAULT 1 NOT NULL ENABLE, "FC" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE, @@ -812,12 +816,8 @@ CREATE TABLE "ELEMENT_PEDAGOGIQUE" "HISTO_MODIFICATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_DESTRUCTION" DATE, "HISTO_DESTRUCTEUR_ID" NUMBER(*,0), - "TAUX_FA" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, - "TAUX_FC" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, - "TAUX_FI" FLOAT(126) DEFAULT 1 NOT NULL ENABLE, "ANNEE_ID" NUMBER(*,0) NOT NULL ENABLE, - "DISCIPLINE_ID" NUMBER(*,0), - "CODE" VARCHAR2(50 CHAR) NOT NULL ENABLE + "DISCIPLINE_ID" NUMBER(*,0) ); / @@ -856,11 +856,14 @@ CREATE TABLE "ETABLISSEMENT" CREATE TABLE "ETAPE" ( "ID" NUMBER(*,0) NOT NULL ENABLE, + "CODE" VARCHAR2(50 CHAR) NOT NULL ENABLE, "LIBELLE" VARCHAR2(200 CHAR) NOT NULL ENABLE, + "ANNEE_ID" NUMBER(*,0) NOT NULL ENABLE, "TYPE_FORMATION_ID" NUMBER(*,0) NOT NULL ENABLE, "NIVEAU" NUMBER(*,0), "SPECIFIQUE_ECHANGES" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE, "STRUCTURE_ID" NUMBER(*,0) NOT NULL ENABLE, + "DOMAINE_FONCTIONNEL_ID" NUMBER(*,0) NOT NULL ENABLE, "SOURCE_ID" NUMBER(*,0) NOT NULL ENABLE, "SOURCE_CODE" VARCHAR2(100 CHAR) NOT NULL ENABLE, "HISTO_CREATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, @@ -868,10 +871,7 @@ CREATE TABLE "ETAPE" "HISTO_MODIFICATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, "HISTO_MODIFICATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_DESTRUCTION" DATE, - "HISTO_DESTRUCTEUR_ID" NUMBER(*,0), - "DOMAINE_FONCTIONNEL_ID" NUMBER(*,0) NOT NULL ENABLE, - "ANNEE_ID" NUMBER(*,0) NOT NULL ENABLE, - "CODE" VARCHAR2(50 CHAR) NOT NULL ENABLE + "HISTO_DESTRUCTEUR_ID" NUMBER(*,0) ); / @@ -948,6 +948,7 @@ CREATE TABLE "FONCTION_REFERENTIEL" "CODE" VARCHAR2(32 CHAR) NOT NULL ENABLE, "LIBELLE_LONG" VARCHAR2(100 CHAR) NOT NULL ENABLE, "LIBELLE_COURT" VARCHAR2(40 CHAR) NOT NULL ENABLE, + "DOMAINE_FONCTIONNEL_ID" NUMBER NOT NULL ENABLE, "PLAFOND" FLOAT(126), "HISTO_CREATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, "HISTO_CREATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, @@ -956,7 +957,6 @@ CREATE TABLE "FONCTION_REFERENTIEL" "HISTO_DESTRUCTION" DATE, "HISTO_DESTRUCTEUR_ID" NUMBER(*,0), "STRUCTURE_ID" NUMBER(*,0), - "DOMAINE_FONCTIONNEL_ID" NUMBER NOT NULL ENABLE, "ETAPE_REQUISE" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE, "SERVICE_STATUTAIRE" NUMBER(1,0) DEFAULT 1 NOT NULL ENABLE, "PARENT_ID" NUMBER(*,0) @@ -987,19 +987,19 @@ CREATE TABLE "FORMULE_RESULTAT" "TYPE_VOLUME_HORAIRE_ID" NUMBER(*,0) NOT NULL ENABLE, "ETAT_VOLUME_HORAIRE_ID" NUMBER(*,0) NOT NULL ENABLE, "SERVICE_DU" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, + "SERVICE_FI" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, + "SERVICE_FA" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, + "SERVICE_FC" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, + "SERVICE_REFERENTIEL" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, "HEURES_COMPL_FI" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, "HEURES_COMPL_FA" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, "HEURES_COMPL_FC" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, + "HEURES_COMPL_FC_MAJOREES" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, "HEURES_COMPL_REFERENTIEL" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, + "TOTAL" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, + "SOLDE" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, "SOUS_SERVICE" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, - "HEURES_COMPL_FC_MAJOREES" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, "HEURES_COMPL" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, - "SERVICE_FA" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, - "SERVICE_FC" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, - "SERVICE_FI" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, - "SERVICE_REFERENTIEL" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, - "SOLDE" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, - "TOTAL" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, "TYPE_INTERVENANT_CODE" VARCHAR2(5 CHAR) NOT NULL ENABLE ) NOLOGGING; / @@ -1008,13 +1008,13 @@ CREATE TABLE "FORMULE_RESULTAT_SERVICE" ( "ID" NUMBER(*,0) NOT NULL ENABLE, "FORMULE_RESULTAT_ID" NUMBER(*,0) NOT NULL ENABLE, "SERVICE_ID" NUMBER(*,0) NOT NULL ENABLE, + "SERVICE_FI" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, + "SERVICE_FA" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, + "SERVICE_FC" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, "HEURES_COMPL_FI" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, "HEURES_COMPL_FA" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, "HEURES_COMPL_FC" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, "HEURES_COMPL_FC_MAJOREES" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, - "SERVICE_FA" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, - "SERVICE_FC" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, - "SERVICE_FI" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, "TOTAL" FLOAT(126) DEFAULT 0 NOT NULL ENABLE ) NOLOGGING; / @@ -1023,8 +1023,8 @@ CREATE TABLE "FORMULE_RESULTAT_SERVICE_REF" ( "ID" NUMBER(*,0) NOT NULL ENABLE, "FORMULE_RESULTAT_ID" NUMBER(*,0) NOT NULL ENABLE, "SERVICE_REFERENTIEL_ID" NUMBER(*,0) NOT NULL ENABLE, - "HEURES_COMPL_REFERENTIEL" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, "SERVICE_REFERENTIEL" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, + "HEURES_COMPL_REFERENTIEL" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, "TOTAL" FLOAT(126) DEFAULT 0 NOT NULL ENABLE ) NOLOGGING; / @@ -1033,13 +1033,13 @@ CREATE TABLE "FORMULE_RESULTAT_VH" ( "ID" NUMBER(*,0) NOT NULL ENABLE, "FORMULE_RESULTAT_ID" NUMBER(*,0) NOT NULL ENABLE, "VOLUME_HORAIRE_ID" NUMBER(*,0) NOT NULL ENABLE, + "SERVICE_FI" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, + "SERVICE_FA" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, + "SERVICE_FC" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, "HEURES_COMPL_FI" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, "HEURES_COMPL_FA" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, "HEURES_COMPL_FC" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, "HEURES_COMPL_FC_MAJOREES" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, - "SERVICE_FA" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, - "SERVICE_FC" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, - "SERVICE_FI" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, "TOTAL" FLOAT(126) DEFAULT 0 NOT NULL ENABLE ) NOLOGGING; / @@ -1048,8 +1048,8 @@ CREATE TABLE "FORMULE_RESULTAT_VH_REF" ( "ID" NUMBER(*,0) NOT NULL ENABLE, "FORMULE_RESULTAT_ID" NUMBER(*,0) NOT NULL ENABLE, "VOLUME_HORAIRE_REF_ID" NUMBER(*,0) NOT NULL ENABLE, - "HEURES_COMPL_REFERENTIEL" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, "SERVICE_REFERENTIEL" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, + "HEURES_COMPL_REFERENTIEL" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, "TOTAL" FLOAT(126) DEFAULT 0 NOT NULL ENABLE ) NOLOGGING; / @@ -1106,7 +1106,6 @@ CREATE TABLE "FORMULE_TEST_VOLUME_HORAIRE" "TAUX_FI" FLOAT(126) DEFAULT 1 NOT NULL ENABLE, "TAUX_FA" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, "TAUX_FC" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, - "TYPE_INTERVENTION_CODE" VARCHAR2(15 CHAR), "PONDERATION_SERVICE_DU" FLOAT(126) DEFAULT 1 NOT NULL ENABLE, "PONDERATION_SERVICE_COMPL" FLOAT(126) DEFAULT 1 NOT NULL ENABLE, "PARAM_1" VARCHAR2(100 CHAR), @@ -1133,7 +1132,8 @@ CREATE TABLE "FORMULE_TEST_VOLUME_HORAIRE" "C_HEURES_COMPL_FC" FLOAT(126), "C_HEURES_COMPL_FC_MAJOREES" FLOAT(126), "C_HEURES_COMPL_REFERENTIEL" FLOAT(126), - "DEBUG_INFO" CLOB + "DEBUG_INFO" CLOB, + "TYPE_INTERVENTION_CODE" VARCHAR2(15 CHAR) ); / @@ -1215,12 +1215,12 @@ CREATE TABLE "INDICATEUR" "ORDRE" NUMBER(*,0) DEFAULT 100 NOT NULL ENABLE, "ENABLED" NUMBER(1,0) DEFAULT 1 NOT NULL ENABLE, "NUMERO" NUMBER DEFAULT 0 NOT NULL ENABLE, - "LIBELLE_PLURIEL" VARCHAR2(255 CHAR) NOT NULL ENABLE, "LIBELLE_SINGULIER" VARCHAR2(255 CHAR) NOT NULL ENABLE, - "MESSAGE" VARCHAR2(800 CHAR), + "LIBELLE_PLURIEL" VARCHAR2(255 CHAR) NOT NULL ENABLE, "ROUTE" VARCHAR2(250 CHAR) NOT NULL ENABLE, "TEM_DISTINCT" NUMBER(1,0) DEFAULT 1 NOT NULL ENABLE, - "TEM_NOT_STRUCTURE" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE + "TEM_NOT_STRUCTURE" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE, + "MESSAGE" VARCHAR2(800 CHAR) ); / @@ -1244,10 +1244,10 @@ CREATE TABLE "INDIC_MODIF_DOSSIER" CREATE TABLE "INTERVENANT" ( "ID" NUMBER(*,0) NOT NULL ENABLE, - "CIVILITE_ID" NUMBER(*,0) NOT NULL ENABLE, + "CIVILITE_ID" NUMBER(*,0), "NOM_USUEL" VARCHAR2(60 CHAR) NOT NULL ENABLE, "PRENOM" VARCHAR2(60 CHAR) NOT NULL ENABLE, - "NOM_PATRONYMIQUE" VARCHAR2(60 CHAR) NOT NULL ENABLE, + "NOM_PATRONYMIQUE" VARCHAR2(60 CHAR), "DATE_NAISSANCE" DATE NOT NULL ENABLE, "VILLE_NAISSANCE_CODE_INSEE" VARCHAR2(5 CHAR), "VILLE_NAISSANCE_LIBELLE" VARCHAR2(60 CHAR), @@ -1255,7 +1255,7 @@ CREATE TABLE "INTERVENANT" "TEL_MOBILE" VARCHAR2(20 CHAR), "EMAIL" VARCHAR2(255 CHAR), "STATUT_ID" NUMBER(*,0) NOT NULL ENABLE, - "STRUCTURE_ID" NUMBER(*,0) NOT NULL ENABLE, + "STRUCTURE_ID" NUMBER(*,0), "DISCIPLINE_ID" NUMBER(*,0), "SOURCE_ID" NUMBER(*,0) NOT NULL ENABLE, "SOURCE_CODE" VARCHAR2(100 CHAR), @@ -1264,6 +1264,7 @@ CREATE TABLE "INTERVENANT" "NUMERO_INSEE_PROVISOIRE" NUMBER(1,0), "IBAN" VARCHAR2(50 CHAR), "BIC" VARCHAR2(20 CHAR), + "MONTANT_INDEMNITE_FC" FLOAT(126), "HISTO_CREATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, "HISTO_CREATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_MODIFICATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, @@ -1273,13 +1274,12 @@ CREATE TABLE "INTERVENANT" "PREMIER_RECRUTEMENT" NUMBER(1,0), "ANNEE_ID" NUMBER(*,0) NOT NULL ENABLE, "GRADE_ID" NUMBER(*,0), - "MONTANT_INDEMNITE_FC" FLOAT(126), "CRITERE_RECHERCHE" VARCHAR2(255 CHAR), "CODE" VARCHAR2(60 CHAR), - "PAYS_NAISSANCE_ID" NUMBER(*,0) NOT NULL ENABLE, + "UTILISATEUR_CODE" VARCHAR2(60 CHAR), + "PAYS_NAISSANCE_ID" NUMBER(*,0), "DEP_NAISSANCE_ID" NUMBER(*,0), - "PAYS_NATIONALITE_ID" NUMBER(*,0), - "UTILISATEUR_CODE" VARCHAR2(60 CHAR) + "PAYS_NATIONALITE_ID" NUMBER(*,0) ); / @@ -1313,8 +1313,14 @@ CREATE TABLE "LISTE_NOIRE" CREATE TABLE "MISE_EN_PAIEMENT" ( "ID" NUMBER(*,0) NOT NULL ENABLE, + "FORMULE_RES_SERVICE_ID" NUMBER(*,0), + "FORMULE_RES_SERVICE_REF_ID" NUMBER(*,0), "DATE_MISE_EN_PAIEMENT" DATE, "PERIODE_PAIEMENT_ID" NUMBER(*,0), + "CENTRE_COUT_ID" NUMBER(*,0) NOT NULL ENABLE, + "DOMAINE_FONCTIONNEL_ID" NUMBER(*,0), + "TYPE_HEURES_ID" NUMBER(*,0) NOT NULL ENABLE, + "HEURES" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, "VALIDATION_ID" NUMBER(*,0), "DATE_VALIDATION" DATE, "HISTO_CREATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, @@ -1322,13 +1328,7 @@ CREATE TABLE "MISE_EN_PAIEMENT" "HISTO_MODIFICATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, "HISTO_MODIFICATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_DESTRUCTION" DATE, - "HISTO_DESTRUCTEUR_ID" NUMBER(*,0), - "CENTRE_COUT_ID" NUMBER(*,0) NOT NULL ENABLE, - "FORMULE_RES_SERVICE_ID" NUMBER(*,0), - "FORMULE_RES_SERVICE_REF_ID" NUMBER(*,0), - "HEURES" FLOAT(126) DEFAULT 0 NOT NULL ENABLE, - "TYPE_HEURES_ID" NUMBER(*,0) NOT NULL ENABLE, - "DOMAINE_FONCTIONNEL_ID" NUMBER(*,0) + "HISTO_DESTRUCTEUR_ID" NUMBER(*,0) ); / @@ -1408,13 +1408,13 @@ CREATE TABLE "MOTIF_MODIFICATION_SERVICE" "CODE" VARCHAR2(64 CHAR) NOT NULL ENABLE, "LIBELLE" VARCHAR2(150 CHAR) NOT NULL ENABLE, "MULTIPLICATEUR" NUMBER(*,0) NOT NULL ENABLE, + "DECHARGE" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE, "HISTO_CREATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, "HISTO_CREATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_MODIFICATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, "HISTO_MODIFICATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_DESTRUCTION" DATE, - "HISTO_DESTRUCTEUR_ID" NUMBER(*,0), - "DECHARGE" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE + "HISTO_DESTRUCTEUR_ID" NUMBER(*,0) ); / @@ -1455,10 +1455,10 @@ CREATE TABLE "NOEUD" CREATE TABLE "NOTIFICATION_INDICATEUR" ( "ID" NUMBER(*,0) NOT NULL ENABLE, "INDICATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, + "AFFECTATION_ID" NUMBER(*,0) NOT NULL ENABLE, "FREQUENCE" NUMBER(*,0), "DATE_ABONNEMENT" DATE NOT NULL ENABLE, "DATE_DERN_NOTIF" DATE, - "AFFECTATION_ID" NUMBER(*,0) NOT NULL ENABLE, "IN_HOME" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE ); / @@ -1507,6 +1507,8 @@ CREATE TABLE "PERIODE" "CODE" VARCHAR2(3 CHAR) NOT NULL ENABLE, "LIBELLE_LONG" VARCHAR2(40 CHAR) NOT NULL ENABLE, "LIBELLE_COURT" VARCHAR2(15 CHAR), + "ECART_MOIS" NUMBER NOT NULL ENABLE, + "ECART_MOIS_PAIEMENT" NUMBER NOT NULL ENABLE, "ORDRE" NUMBER(*,0) NOT NULL ENABLE, "ENSEIGNEMENT" NUMBER(1,0), "PAIEMENT" NUMBER(1,0), @@ -1515,23 +1517,21 @@ CREATE TABLE "PERIODE" "HISTO_MODIFICATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, "HISTO_MODIFICATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_DESTRUCTION" DATE, - "HISTO_DESTRUCTEUR_ID" NUMBER(*,0), - "ECART_MOIS" NUMBER NOT NULL ENABLE, - "ECART_MOIS_PAIEMENT" NUMBER NOT NULL ENABLE + "HISTO_DESTRUCTEUR_ID" NUMBER(*,0) ); / CREATE TABLE "PIECE_JOINTE" ( "ID" NUMBER(*,0) NOT NULL ENABLE, "TYPE_PIECE_JOINTE_ID" NUMBER(*,0) NOT NULL ENABLE, + "INTERVENANT_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_CREATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, "HISTO_CREATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_MODIFICATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, "HISTO_MODIFICATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_DESTRUCTION" DATE, "HISTO_DESTRUCTEUR_ID" NUMBER(*,0), - "VALIDATION_ID" NUMBER(*,0), - "INTERVENANT_ID" NUMBER(*,0) NOT NULL ENABLE + "VALIDATION_ID" NUMBER(*,0) ); / @@ -1567,9 +1567,9 @@ CREATE TABLE "PLAFOND_ETAT" CREATE TABLE "PRIVILEGE" ( "ID" NUMBER(*,0) NOT NULL ENABLE, + "CATEGORIE_ID" NUMBER(*,0) NOT NULL ENABLE, "CODE" VARCHAR2(150 CHAR) NOT NULL ENABLE, "LIBELLE" VARCHAR2(200 CHAR) NOT NULL ENABLE, - "CATEGORIE_ID" NUMBER(*,0) NOT NULL ENABLE, "ORDRE" NUMBER(*,0) ); / @@ -1585,16 +1585,16 @@ CREATE TABLE "REGLE_STRUCTURE_VALIDATION" CREATE TABLE "ROLE" ( "ID" NUMBER(*,0) NOT NULL ENABLE, + "CODE" VARCHAR2(64 CHAR) NOT NULL ENABLE, + "LIBELLE" VARCHAR2(50 CHAR) NOT NULL ENABLE, + "PERIMETRE_ID" NUMBER(*,0) NOT NULL ENABLE, + "PEUT_CHANGER_STRUCTURE" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE, "HISTO_CREATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, "HISTO_CREATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_MODIFICATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, "HISTO_MODIFICATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_DESTRUCTION" DATE, - "HISTO_DESTRUCTEUR_ID" NUMBER(*,0), - "CODE" VARCHAR2(64 CHAR) NOT NULL ENABLE, - "LIBELLE" VARCHAR2(50 CHAR) NOT NULL ENABLE, - "PERIMETRE_ID" NUMBER(*,0) NOT NULL ENABLE, - "PEUT_CHANGER_STRUCTURE" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE + "HISTO_DESTRUCTEUR_ID" NUMBER(*,0) ); / @@ -1754,16 +1754,16 @@ CREATE TABLE "STATUT_INTERVENANT" "PEUT_SAISIR_SERVICE" NUMBER(1,0) NOT NULL ENABLE, "PEUT_CHOISIR_DANS_DOSSIER" NUMBER(1,0) NOT NULL ENABLE, "PEUT_SAISIR_DOSSIER" NUMBER(1,0) NOT NULL ENABLE, + "PEUT_SAISIR_REFERENTIEL" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE, "PEUT_SAISIR_MOTIF_NON_PAIEMENT" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE, "PEUT_AVOIR_CONTRAT" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE, - "PEUT_SAISIR_REFERENTIEL" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE, "PLAFOND_HC_HORS_REMU_FC" FLOAT(126) DEFAULT 9999 NOT NULL ENABLE, "PLAFOND_HC_REMU_FC" FLOAT(126) DEFAULT 13502 NOT NULL ENABLE, "DEPASSEMENT_SERVICE_DU_SANS_HC" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE, "PEUT_CLOTURER_SAISIE" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE, - "TEM_BIATSS" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE, "PEUT_SAISIR_SERVICE_EXT" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE, - "TEM_ATV" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE + "TEM_ATV" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE, + "TEM_BIATSS" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE ); / @@ -1775,8 +1775,12 @@ CREATE TABLE "STATUT_PRIVILEGE" CREATE TABLE "STRUCTURE" ( "ID" NUMBER(*,0) NOT NULL ENABLE, - "LIBELLE_LONG" VARCHAR2(100 CHAR) NOT NULL ENABLE, + "CODE" VARCHAR2(50 CHAR) NOT NULL ENABLE, "LIBELLE_COURT" VARCHAR2(25 CHAR) NOT NULL ENABLE, + "LIBELLE_LONG" VARCHAR2(100 CHAR) NOT NULL ENABLE, + "CONTACT_PJ" VARCHAR2(255 CHAR), + "ENSEIGNEMENT" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE, + "AFF_ADRESSE_CONTRAT" NUMBER(1,0) DEFAULT 1 NOT NULL ENABLE, "SOURCE_ID" NUMBER(*,0) NOT NULL ENABLE, "SOURCE_CODE" VARCHAR2(100 CHAR), "HISTO_CREATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, @@ -1785,10 +1789,6 @@ CREATE TABLE "STRUCTURE" "HISTO_MODIFICATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_DESTRUCTION" DATE, "HISTO_DESTRUCTEUR_ID" NUMBER(*,0), - "CONTACT_PJ" VARCHAR2(255 CHAR), - "AFF_ADRESSE_CONTRAT" NUMBER(1,0) DEFAULT 1 NOT NULL ENABLE, - "ENSEIGNEMENT" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE, - "CODE" VARCHAR2(50 CHAR) NOT NULL ENABLE, "PLAFOND_REFERENTIEL" FLOAT(126) ); / @@ -1796,8 +1796,8 @@ CREATE TABLE "STRUCTURE" CREATE TABLE "SYNC_LOG" ( "ID" NUMBER(*,0) NOT NULL ENABLE, "DATE_SYNC" DATE NOT NULL ENABLE, - "SOURCE_CODE" VARCHAR2(200 CHAR), "TABLE_NAME" VARCHAR2(30 CHAR), + "SOURCE_CODE" VARCHAR2(200 CHAR), "MESSAGE" VARCHAR2(4000 CHAR) ); / @@ -2023,7 +2023,7 @@ CREATE TABLE "TBL_SERVICE" "ETAPE_HISTO" NUMBER(1,0) DEFAULT 1 NOT NULL ENABLE, "HAS_HEURES_MAUVAISE_PERIODE" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE, "SERVICE_ID" NUMBER(*,0) NOT NULL ENABLE, - "INTERVENANT_STRUCTURE_ID" NUMBER(*,0) NOT NULL ENABLE, + "INTERVENANT_STRUCTURE_ID" NUMBER(*,0), "TYPE_INTERVENANT_ID" NUMBER(*,0) NOT NULL ENABLE, "TYPE_INTERVENANT_CODE" VARCHAR2(5 CHAR) NOT NULL ENABLE, "TYPE_VOLUME_HORAIRE_CODE" VARCHAR2(15 CHAR), @@ -2164,13 +2164,13 @@ CREATE TABLE "TYPE_DOTATION" "LIBELLE" VARCHAR2(200 CHAR) NOT NULL ENABLE, "SOURCE_CODE" VARCHAR2(100 CHAR), "SOURCE_ID" NUMBER(*,0) NOT NULL ENABLE, + "TYPE_RESSOURCE_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_CREATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, "HISTO_CREATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_MODIFICATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, "HISTO_MODIFICATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_DESTRUCTION" DATE, - "HISTO_DESTRUCTEUR_ID" NUMBER(*,0), - "TYPE_RESSOURCE_ID" NUMBER(*,0) NOT NULL ENABLE + "HISTO_DESTRUCTEUR_ID" NUMBER(*,0) ); / @@ -2230,13 +2230,13 @@ CREATE TABLE "TYPE_INTERVENTION" "ORDRE" NUMBER(*,0) NOT NULL ENABLE, "TAUX_HETD_SERVICE" FLOAT(126) DEFAULT 1 NOT NULL ENABLE, "TAUX_HETD_COMPLEMENTAIRE" FLOAT(126) DEFAULT 1 NOT NULL ENABLE, + "VISIBLE" NUMBER(1,0) NOT NULL ENABLE, "HISTO_CREATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, "HISTO_CREATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_MODIFICATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, "HISTO_MODIFICATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_DESTRUCTION" DATE, "HISTO_DESTRUCTEUR_ID" NUMBER(*,0), - "VISIBLE" NUMBER(1,0) NOT NULL ENABLE, "ANNEE_DEBUT_ID" NUMBER(*,0), "ANNEE_FIN_ID" NUMBER(*,0), "REGLE_FOAD" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE, @@ -2275,14 +2275,14 @@ CREATE TABLE "TYPE_INTERVENTION_STRUCTURE" "TYPE_INTERVENTION_ID" NUMBER(*,0) NOT NULL ENABLE, "STRUCTURE_ID" NUMBER(*,0) NOT NULL ENABLE, "VISIBLE" NUMBER(1,0) NOT NULL ENABLE, + "ANNEE_DEBUT_ID" NUMBER(*,0), + "ANNEE_FIN_ID" NUMBER(*,0), "HISTO_CREATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, "HISTO_CREATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_MODIFICATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, "HISTO_MODIFICATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_DESTRUCTION" DATE, - "HISTO_DESTRUCTEUR_ID" NUMBER(*,0), - "ANNEE_DEBUT_ID" NUMBER(*,0), - "ANNEE_FIN_ID" NUMBER(*,0) + "HISTO_DESTRUCTEUR_ID" NUMBER(*,0) ); / @@ -2321,14 +2321,14 @@ CREATE TABLE "TYPE_MODULATEUR_STRUCTURE" ( "ID" NUMBER(*,0) NOT NULL ENABLE, "TYPE_MODULATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "STRUCTURE_ID" NUMBER(*,0) NOT NULL ENABLE, + "ANNEE_DEBUT_ID" NUMBER(*,0), + "ANNEE_FIN_ID" NUMBER(*,0), "HISTO_CREATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, "HISTO_CREATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_MODIFICATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, "HISTO_MODIFICATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_DESTRUCTION" DATE, - "HISTO_DESTRUCTEUR_ID" NUMBER(*,0), - "ANNEE_DEBUT_ID" NUMBER(*,0), - "ANNEE_FIN_ID" NUMBER(*,0) + "HISTO_DESTRUCTEUR_ID" NUMBER(*,0) ); / @@ -2362,8 +2362,8 @@ CREATE TABLE "TYPE_PIECE_JOINTE_STATUT" "HISTO_DESTRUCTEUR_ID" NUMBER(*,0), "ANNEE_DEBUT_ID" NUMBER(*,0), "ANNEE_FIN_ID" NUMBER(*,0), - "FC" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE, - "CHANGEMENT_RIB" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE + "CHANGEMENT_RIB" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE, + "FC" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE ); / @@ -2417,7 +2417,7 @@ CREATE TABLE "VALIDATION" ( "ID" NUMBER(*,0) NOT NULL ENABLE, "TYPE_VALIDATION_ID" NUMBER(*,0) NOT NULL ENABLE, "INTERVENANT_ID" NUMBER(*,0) NOT NULL ENABLE, - "STRUCTURE_ID" NUMBER(*,0) NOT NULL ENABLE, + "STRUCTURE_ID" NUMBER(*,0), "HISTO_CREATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, "HISTO_CREATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_MODIFICATION" DATE DEFAULT SYSDATE NOT NULL ENABLE, @@ -2486,6 +2486,7 @@ CREATE TABLE "VOLUME_HORAIRE_CHARGE" CREATE TABLE "VOLUME_HORAIRE_ENS" ( "ID" NUMBER(*,0) NOT NULL ENABLE, + "ELEMENT_PEDAGOGIQUE_ID" NUMBER(*,0) NOT NULL ENABLE, "TYPE_INTERVENTION_ID" NUMBER(*,0) NOT NULL ENABLE, "HEURES" FLOAT(126) NOT NULL ENABLE, "SOURCE_ID" NUMBER(*,0) NOT NULL ENABLE, @@ -2496,7 +2497,6 @@ CREATE TABLE "VOLUME_HORAIRE_ENS" "HISTO_MODIFICATEUR_ID" NUMBER(*,0) NOT NULL ENABLE, "HISTO_DESTRUCTION" DATE, "HISTO_DESTRUCTEUR_ID" NUMBER(*,0), - "ELEMENT_PEDAGOGIQUE_ID" NUMBER(*,0) NOT NULL ENABLE, "GROUPES" FLOAT(126) ); / @@ -2532,12 +2532,12 @@ CREATE TABLE "WF_ETAPE" ( "ID" NUMBER(*,0) NOT NULL ENABLE, "CODE" VARCHAR2(64 CHAR) NOT NULL ENABLE, "ORDRE" NUMBER(*,0) DEFAULT 1 NOT NULL ENABLE, - "DESC_NON_FRANCHIE" VARCHAR2(250 CHAR) NOT NULL ENABLE, - "DESC_SANS_OBJECTIF" VARCHAR2(250 CHAR), - "LIBELLE_AUTRES" VARCHAR2(150 CHAR) NOT NULL ENABLE, "LIBELLE_INTERVENANT" VARCHAR2(150 CHAR) NOT NULL ENABLE, - "OBLIGATOIRE" NUMBER(1,0) DEFAULT 1 NOT NULL ENABLE, + "LIBELLE_AUTRES" VARCHAR2(150 CHAR) NOT NULL ENABLE, "ROUTE" VARCHAR2(200 CHAR) NOT NULL ENABLE, + "DESC_NON_FRANCHIE" VARCHAR2(250 CHAR) NOT NULL ENABLE, + "OBLIGATOIRE" NUMBER(1,0) DEFAULT 1 NOT NULL ENABLE, + "DESC_SANS_OBJECTIF" VARCHAR2(250 CHAR), "ROUTE_INTERVENANT" VARCHAR2(200 CHAR) ); / @@ -3014,7 +3014,12 @@ WITH hs AS ( SELECT contrat_id, sum(heures) "serviceTotal" FROM V_CONTRAT_SERVICES GROUP BY contrat_id ) SELECT + ct.annee_id, + ct.structure_id, + ct.intervenant_id, + ct.formule_resultat_id, ct.id contrat_id, + ct."annee", ct."nom", ct."prenom", @@ -3058,56 +3063,58 @@ SELECT END "titreCourt" FROM ( -SELECT - c.*, - a.libelle "annee", - COALESCE(d.nom_usuel,i.nom_usuel) "nom", - COALESCE(d.prenom,i.prenom) "prenom", - civ.libelle_court "civilite", - CASE WHEN civ.sexe = 'F' THEN 'e' ELSE '' END "e", - to_char(COALESCE(d.date_naissance,i.date_naissance), 'dd/mm/YYYY') "dateNaissance", - COALESCE(d.adresse,ose_divers.formatted_adresse( - ai.NO_VOIE, ai.NOM_VOIE, ai.BATIMENT, ai.MENTION_COMPLEMENTAIRE, ai.LOCALITE, - ai.CODE_POSTAL, ai.VILLE, ai.PAYS_LIBELLE)) "adresse", - COALESCE(d.numero_insee,i.numero_insee || ' ' || COALESCE(LPAD(i.numero_insee_cle,2,'0'),'')) "numInsee", - si.libelle "statut", - replace(ltrim(to_char(COALESCE(fr.total,0), '999999.00')),'.',',') "totalHETD", - replace(ltrim(to_char(COALESCE(th.valeur,0), '999999.00')),'.',',') "tauxHoraireValeur", - COALESCE(to_char(th.histo_creation, 'dd/mm/YYYY'), 'TAUX INTROUVABLE') "tauxHoraireDate", - to_char(COALESCE(v.histo_creation, c.histo_creation), 'dd/mm/YYYY') "dateSignature", - CASE WHEN c.structure_id <> COALESCE(cp.structure_id,0) THEN 'modifié' ELSE 'complété' END "modifieComplete", - CASE WHEN s.aff_adresse_contrat = 1 THEN - ' signé à l''adresse suivante :' || CHR(13) || CHR(10) || - s.libelle_court || ' - ' || REPLACE(ose_divers.formatted_adresse( - astr.NO_VOIE, astr.NOM_VOIE, null, null, astr.LOCALITE, - astr.CODE_POSTAL, astr.VILLE, null), CHR(13), ' - ') - ELSE '' END "exemplaire2", - replace(ltrim(to_char(COALESCE(hs."serviceTotal",0), '999999.00')),'.',',') "serviceTotal", - CASE WHEN c.contrat_id IS NULL THEN 1 ELSE 0 END est_contrat, - CASE WHEN v.id IS NULL THEN 1 ELSE 0 END est_projet, - si.tem_atv est_atv + SELECT + c.*, + i.annee_id annee_id, + fr.id formule_resultat_id, + a.libelle "annee", + COALESCE(d.nom_usuel,i.nom_usuel) "nom", + COALESCE(d.prenom,i.prenom) "prenom", + civ.libelle_court "civilite", + CASE WHEN civ.sexe = 'F' THEN 'e' ELSE '' END "e", + to_char(COALESCE(d.date_naissance,i.date_naissance), 'dd/mm/YYYY') "dateNaissance", + COALESCE(d.adresse,ose_divers.formatted_adresse( + ai.NO_VOIE, ai.NOM_VOIE, ai.BATIMENT, ai.MENTION_COMPLEMENTAIRE, ai.LOCALITE, + ai.CODE_POSTAL, ai.VILLE, ai.PAYS_LIBELLE)) "adresse", + COALESCE(d.numero_insee,i.numero_insee || ' ' || COALESCE(LPAD(i.numero_insee_cle,2,'0'),'')) "numInsee", + si.libelle "statut", + replace(ltrim(to_char(COALESCE(fr.total,0), '999999.00')),'.',',') "totalHETD", + replace(ltrim(to_char(COALESCE(th.valeur,0), '999999.00')),'.',',') "tauxHoraireValeur", + COALESCE(to_char(th.histo_creation, 'dd/mm/YYYY'), 'TAUX INTROUVABLE') "tauxHoraireDate", + to_char(COALESCE(v.histo_creation, c.histo_creation), 'dd/mm/YYYY') "dateSignature", + CASE WHEN c.structure_id <> COALESCE(cp.structure_id,0) THEN 'modifié' ELSE 'complété' END "modifieComplete", + CASE WHEN s.aff_adresse_contrat = 1 THEN + ' signé à l''adresse suivante :' || CHR(13) || CHR(10) || + s.libelle_court || ' - ' || REPLACE(ose_divers.formatted_adresse( + astr.NO_VOIE, astr.NOM_VOIE, null, null, astr.LOCALITE, + astr.CODE_POSTAL, astr.VILLE, null), CHR(13), ' - ') + ELSE '' END "exemplaire2", + replace(ltrim(to_char(COALESCE(hs."serviceTotal",0), '999999.00')),'.',',') "serviceTotal", + CASE WHEN c.contrat_id IS NULL THEN 1 ELSE 0 END est_contrat, + CASE WHEN v.id IS NULL THEN 1 ELSE 0 END est_projet, + si.tem_atv est_atv -FROM - contrat c - JOIN type_contrat tc ON tc.id = c.type_contrat_id - JOIN intervenant i ON i.id = c.intervenant_id - JOIN annee a ON a.id = i.annee_id - JOIN statut_intervenant si ON si.id = i.statut_id - JOIN structure s ON s.id = c.structure_id - LEFT JOIN adresse_structure astr ON astr.structure_id = s.id AND astr.principale = 1 AND astr.histo_destruction IS NULL - LEFT JOIN dossier d ON d.intervenant_id = i.id AND d.histo_destruction IS NULL - JOIN civilite civ ON civ.id = COALESCE(d.civilite_id,i.civilite_id) - LEFT JOIN validation v ON v.id = c.validation_id AND v.histo_destruction IS NULL - LEFT JOIN adresse_intervenant ai ON ai.intervenant_id = i.id AND ai.histo_destruction IS NULL - - JOIN type_volume_horaire tvh ON tvh.code = 'PREVU' - JOIN etat_volume_horaire evh ON evh.code = 'valide' - LEFT JOIN formule_resultat fr ON fr.intervenant_id = i.id AND fr.type_volume_horaire_id = tvh.id AND fr.etat_volume_horaire_id = evh.id - LEFT JOIN taux_horaire_hetd th ON c.histo_creation BETWEEN th.histo_creation AND COALESCE(th.histo_destruction,SYSDATE) - LEFT JOIN hs ON hs.contrat_id = c.id - LEFT JOIN contrat cp ON cp.id = c.contrat_id -WHERE - c.histo_destruction IS NULL + FROM + contrat c + JOIN type_contrat tc ON tc.id = c.type_contrat_id + JOIN intervenant i ON i.id = c.intervenant_id + JOIN annee a ON a.id = i.annee_id + JOIN statut_intervenant si ON si.id = i.statut_id + JOIN structure s ON s.id = c.structure_id + LEFT JOIN adresse_structure astr ON astr.structure_id = s.id AND astr.principale = 1 AND astr.histo_destruction IS NULL + LEFT JOIN dossier d ON d.intervenant_id = i.id AND d.histo_destruction IS NULL + JOIN civilite civ ON civ.id = COALESCE(d.civilite_id,i.civilite_id) + LEFT JOIN validation v ON v.id = c.validation_id AND v.histo_destruction IS NULL + LEFT JOIN adresse_intervenant ai ON ai.intervenant_id = i.id AND ai.histo_destruction IS NULL + + JOIN type_volume_horaire tvh ON tvh.code = 'PREVU' + JOIN etat_volume_horaire evh ON evh.code = 'valide' + LEFT JOIN formule_resultat fr ON fr.intervenant_id = i.id AND fr.type_volume_horaire_id = tvh.id AND fr.etat_volume_horaire_id = evh.id + LEFT JOIN taux_horaire_hetd th ON c.histo_creation BETWEEN th.histo_creation AND COALESCE(th.histo_destruction,SYSDATE) + LEFT JOIN hs ON hs.contrat_id = c.id + LEFT JOIN contrat cp ON cp.id = c.contrat_id + WHERE + c.histo_destruction IS NULL ) ct; / @@ -3749,8 +3756,9 @@ FROM ( t2.structure_id structure_id, t2.periode_paiement_id periode_id, i.id intervenant_id, - - '''' || TRIM( i.numero_insee || NVL(TRIM(i.numero_insee_cle),'00') ) insee, + CASE WHEN i.numero_insee IS NULL THEN '''' ELSE + '''' || TRIM(i.numero_insee) || COALESCE(LPAD(TRIM(i.numero_insee_cle), 2, '0'),'00') + END insee, i.nom_usuel || ',' || i.prenom nom, t2.code_origine code_origine, CASE WHEN ind <> CEIL(t2.nbu/max_nbu) THEN max_nbu ELSE t2.nbu - max_nbu*(ind-1) END nbu, @@ -4182,7 +4190,7 @@ SELECT FROM formule_resultat_vh_ref frvr JOIN formule_resultat fr ON fr.id = frvr.formule_resultat_id - JOIN volume_horaire_ref vhr ON vhr.id = frvr.volume_horaire_ref_id + JOIN volume_horaire_ref vhr ON vhr.id = frvr.volume_horaire_ref_id AND vhr.histo_destruction IS NULL JOIN service_referentiel sr ON sr.id = vhr.service_referentiel_id AND sr.intervenant_id = fr.intervenant_id AND sr.histo_destruction IS NULL UNION ALL @@ -4543,6 +4551,61 @@ GROUP BY i.id, i.annee_id, i.structure_id, ti.code, si.service_statutaire, si.depassement_service_du_sans_hc; / +CREATE OR REPLACE FORCE VIEW V_FORMULE_LOCAL_I_PARAMS AS +SELECT + null intervenant_id, + null param_1, + null param_2, + null param_3, + null param_4, + null param_5 +FROM + dual; +/ + +CREATE OR REPLACE FORCE VIEW V_FORMULE_LOCAL_VH_PARAMS AS +SELECT + vh.id volume_horaire_id, + null volume_horaire_ref_id, + str.code param_1, + null param_2, + null param_3, + null param_4, + null param_5 +FROM + volume_horaire vh + JOIN service s ON s.id = vh.service_id + JOIN intervenant i ON i.id = s.intervenant_id + LEFT JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + JOIN structure str ON str.id = COALESCE(ep.structure_id,i.structure_id) +WHERE + vh.histo_destruction IS NULL + AND s.histo_destruction IS NULL + AND vh.heures <> 0 + AND vh.motif_non_paiement_id IS NULL + AND s.intervenant_id = COALESCE( OSE_FORMULE.GET_INTERVENANT_ID, s.intervenant_id ) + +UNION ALL + +SELECT + null volume_horaire_id, + vhr.id volume_horaire_ref_id, + str.code param_1, + null param_2, + null param_3, + null param_4, + null param_5 +FROM + volume_horaire_ref vhr + JOIN service_referentiel sr ON sr.id = vhr.service_referentiel_id + JOIN structure str ON str.id = sr.structure_id +WHERE + vhr.histo_destruction IS NULL + AND sr.histo_destruction IS NULL + AND vhr.heures <> 0 + AND sr.intervenant_id = COALESCE( OSE_FORMULE.GET_INTERVENANT_ID, sr.intervenant_id ); +/ + CREATE OR REPLACE FORCE VIEW V_FORMULE_VOLUME_HORAIRE AS SELECT rownum ordre, @@ -7856,6 +7919,9 @@ CREATE OR REPLACE PACKAGE FORMULE_ENSICAEN AS FUNCTION calcCell( c VARCHAR2, l NUMERIC ) RETURN FLOAT; + FUNCTION INTERVENANT_QUERY RETURN CLOB; + FUNCTION VOLUME_HORAIRE_QUERY RETURN CLOB; + END FORMULE_ENSICAEN; / @@ -7865,6 +7931,9 @@ CREATE OR REPLACE PACKAGE "FORMULE_MONTPELLIER" AS FUNCTION calcCell( c VARCHAR2, l NUMERIC ) RETURN FLOAT; + FUNCTION INTERVENANT_QUERY RETURN CLOB; + FUNCTION VOLUME_HORAIRE_QUERY RETURN CLOB; + END FORMULE_MONTPELLIER; / @@ -7874,6 +7943,9 @@ CREATE OR REPLACE PACKAGE FORMULE_NANTERRE AS FUNCTION calcCell( c VARCHAR2, l NUMERIC ) RETURN FLOAT; + FUNCTION INTERVENANT_QUERY RETURN CLOB; + FUNCTION VOLUME_HORAIRE_QUERY RETURN CLOB; + END FORMULE_NANTERRE; / @@ -7883,6 +7955,9 @@ CREATE OR REPLACE PACKAGE "FORMULE_UBO" AS FUNCTION calcCell( c VARCHAR2, l NUMERIC ) RETURN FLOAT; + FUNCTION INTERVENANT_QUERY RETURN CLOB; + FUNCTION VOLUME_HORAIRE_QUERY RETURN CLOB; + END FORMULE_UBO; / @@ -7892,6 +7967,9 @@ CREATE OR REPLACE PACKAGE "FORMULE_ULHN" AS FUNCTION calcCell( c VARCHAR2, l NUMERIC ) RETURN FLOAT; + FUNCTION INTERVENANT_QUERY RETURN CLOB; + FUNCTION VOLUME_HORAIRE_QUERY RETURN CLOB; + END FORMULE_ULHN; / @@ -7906,6 +7984,9 @@ CREATE OR REPLACE PACKAGE "FORMULE_UNICAEN" AS PROCEDURE PURGE_EM_NON_FC; + FUNCTION INTERVENANT_QUERY RETURN CLOB; + FUNCTION VOLUME_HORAIRE_QUERY RETURN CLOB; + END FORMULE_UNICAEN; / @@ -8664,6 +8745,41 @@ CREATE OR REPLACE PACKAGE BODY FORMULE_ENSICAEN AS END LOOP; END; + + + FUNCTION INTERVENANT_QUERY RETURN CLOB IS + BEGIN + RETURN ' + SELECT + fi.*, + NULL param_1, + NULL param_2, + NULL param_3, + NULL param_4, + NULL param_5 + FROM + v_formule_intervenant fi + '; + END; + + + + FUNCTION VOLUME_HORAIRE_QUERY RETURN CLOB IS + BEGIN + RETURN ' + SELECT + fvh.*, + NULL param_1, + NULL param_2, + NULL param_3, + NULL param_4, + NULL param_5 + FROM + v_formule_volume_horaire fvh + ORDER BY + ordre'; + END; + END FORMULE_ENSICAEN; / @@ -8689,7 +8805,7 @@ CREATE OR REPLACE PACKAGE BODY "FORMULE_MONTPELLIER" AS PROCEDURE dbg( val CLOB ) IS BEGIN ose_formule.volumes_horaires.items(debugLine).debug_info := - ose_formule.volumes_horaires.items(debugLine).debug_info || val; + ose_formule.volumes_horaires.items(debugLine).debug_info || val; END; @@ -9169,7 +9285,6 @@ CREATE OR REPLACE PACKAGE BODY "FORMULE_MONTPELLIER" AS END IF; - -- x =SI(ESTVIDE(composante_affectation);0;SI(OU(ESTVIDE($C21);NON(C21="Référentiel");ET(HC=0;H21="Non"));0;SI(H21="Non";O21;SI($M21>0;(($M21*$N21)+($I21-$M21)*J21);$K21)))) WHEN c = 'x' AND v >= 1 THEN IF i.type_intervenant_code = 'E' THEN @@ -9285,11 +9400,46 @@ CREATE OR REPLACE PACKAGE BODY "FORMULE_MONTPELLIER" AS END LOOP; END; -END FORMULE_MONTPELLIER; -/ -CREATE OR REPLACE PACKAGE BODY FORMULE_NANTERRE AS - decalageLigne NUMERIC DEFAULT 21; + + FUNCTION INTERVENANT_QUERY RETURN CLOB IS + BEGIN + RETURN ' + SELECT + fi.*, + NULL param_1, + NULL param_2, + NULL param_3, + NULL param_4, + NULL param_5 + FROM + v_formule_intervenant fi + '; + END; + + + + FUNCTION VOLUME_HORAIRE_QUERY RETURN CLOB IS + BEGIN + RETURN ' + SELECT + fvh.*, + NULL param_1, + NULL param_2, + NULL param_3, + NULL param_4, + NULL param_5 + FROM + v_formule_volume_horaire fvh + ORDER BY + ordre'; + END; + +END FORMULE_MONTPELLIER; +/ + +CREATE OR REPLACE PACKAGE BODY FORMULE_NANTERRE AS + decalageLigne NUMERIC DEFAULT 21; /* Stockage des valeurs intermédiaires */ @@ -10095,6 +10245,43 @@ CREATE OR REPLACE PACKAGE BODY FORMULE_NANTERRE AS END LOOP; END; + + + FUNCTION INTERVENANT_QUERY RETURN CLOB IS + BEGIN + RETURN ' + SELECT + fi.*, + NULL param_1, + NULL param_2, + NULL param_3, + NULL param_4, + NULL param_5 + FROM + v_formule_intervenant fi + '; + END; + + + + FUNCTION VOLUME_HORAIRE_QUERY RETURN CLOB IS + BEGIN + RETURN ' + SELECT + fvh.*, + str.code param_1, + NULL param_2, + NULL param_3, + NULL param_4, + NULL param_5 + FROM + v_formule_volume_horaire fvh + JOIN intervenant i ON i.id = fvh.intervenant_id + LEFT JOIN structure str ON str.id = COALESCE(fvh.structure_id,i.structure_id) + ORDER BY + ordre'; + END; + END FORMULE_NANTERRE; / @@ -11027,6 +11214,43 @@ CREATE OR REPLACE PACKAGE BODY "FORMULE_UBO" AS END LOOP; END; + + + FUNCTION INTERVENANT_QUERY RETURN CLOB IS + BEGIN + RETURN ' + SELECT + fi.*, + CASE WHEN fi.type_intervenant_code = ''P'' AND si.source_code NOT IN (''ATER'',''ATER_MI_TPS'',''LECTEUR'') THEN ''oui'' ELSE ''non'' END param_1, + NULL param_2, + NULL param_3, + NULL param_4, + NULL param_5 + FROM + v_formule_intervenant fi + JOIN intervenant i ON i.id = fi.intervenant_id + JOIN statut_intervenant si ON si.id = i.id + '; + END; + + + + FUNCTION VOLUME_HORAIRE_QUERY RETURN CLOB IS + BEGIN + RETURN ' + SELECT + fvh.*, + NULL param_1, + NULL param_2, + NULL param_3, + NULL param_4, + NULL param_5 + FROM + v_formule_volume_horaire fvh + ORDER BY + ordre'; + END; + END FORMULE_UBO; / @@ -11422,6 +11646,41 @@ CREATE OR REPLACE PACKAGE BODY "FORMULE_ULHN" AS END LOOP; END; + + + FUNCTION INTERVENANT_QUERY RETURN CLOB IS + BEGIN + RETURN ' + SELECT + fi.*, + NULL param_1, + NULL param_2, + NULL param_3, + NULL param_4, + NULL param_5 + FROM + v_formule_intervenant fi + '; + END; + + + + FUNCTION VOLUME_HORAIRE_QUERY RETURN CLOB IS + BEGIN + RETURN ' + SELECT + fvh.*, + NULL param_1, + NULL param_2, + NULL param_3, + NULL param_4, + NULL param_5 + FROM + v_formule_volume_horaire fvh + ORDER BY + ordre'; + END; + END FORMULE_ULHN; / @@ -12421,6 +12680,41 @@ CREATE OR REPLACE PACKAGE BODY "FORMULE_UNICAEN" AS END; + + + FUNCTION INTERVENANT_QUERY RETURN CLOB IS + BEGIN + RETURN ' + SELECT + fi.*, + NULL param_1, + NULL param_2, + NULL param_3, + NULL param_4, + NULL param_5 + FROM + v_formule_intervenant fi + '; + END; + + + + FUNCTION VOLUME_HORAIRE_QUERY RETURN CLOB IS + BEGIN + RETURN ' + SELECT + fvh.*, + NULL param_1, + NULL param_2, + NULL param_3, + NULL param_4, + NULL param_5 + FROM + v_formule_volume_horaire fvh + ORDER BY + ordre'; + END; + END FORMULE_UNICAEN; / @@ -13420,54 +13714,46 @@ CREATE OR REPLACE PACKAGE BODY "OSE_FORMULE" AS PROCEDURE LOAD_INTERVENANT_FROM_BDD IS - dsdushc NUMERIC DEFAULT 0; + cur SYS_REFCURSOR; + query CLOB; + i_dep_service_du_sans_hc NUMERIC DEFAULT 0; BEGIN intervenant.service_du := 0; intervenant.total := NULL; intervenant.solde := NULL; - SELECT - fi.intervenant_id, - fi.annee_id, - fi.structure_id, - fi.type_intervenant_code, - fi.heures_service_statutaire, - fi.depassement_service_du_sans_hc, - fi.heures_service_modifie, - fi.heures_decharge, - fli.param_1, - fli.param_2, - fli.param_3, - fli.param_4, - fli.param_5 - INTO - intervenant.id, - intervenant.annee_id, - intervenant.structure_id, - intervenant.type_intervenant_code, - intervenant.heures_service_statutaire, - dsdushc, - intervenant.heures_service_modifie, - intervenant.heures_decharge, - intervenant.param_1, - intervenant.param_2, - intervenant.param_3, - intervenant.param_4, - intervenant.param_5 - FROM - v_formule_intervenant fi - LEFT JOIN v_formule_local_i_params fli ON fli.intervenant_id = fi.intervenant_id - WHERE - fi.intervenant_id = intervenant.id; + EXECUTE IMMEDIATE 'SELECT ' || formule_definition.package_name || '.intervenant_query FROM DUAL' INTO query; + OPEN cur FOR query; - intervenant.depassement_service_du_sans_hc := (dsdushc = 1); - intervenant.service_du := CASE - WHEN intervenant.depassement_service_du_sans_hc -- HC traitées comme du service - OR intervenant.heures_decharge < 0 -- s'il y a une décharge => aucune HC + LOOP + FETCH cur INTO + intervenant.id, + intervenant.annee_id, + intervenant.structure_id, + intervenant.type_intervenant_code, + intervenant.heures_service_statutaire, + i_dep_service_du_sans_hc, + intervenant.heures_service_modifie, + intervenant.heures_decharge, + intervenant.param_1, + intervenant.param_2, + intervenant.param_3, + intervenant.param_4, + intervenant.param_5 + ; - THEN 9999 - ELSE intervenant.heures_service_statutaire + intervenant.heures_service_modifie - END; + intervenant.depassement_service_du_sans_hc := (i_dep_service_du_sans_hc = 1); + intervenant.service_du := CASE + WHEN intervenant.depassement_service_du_sans_hc -- HC traitées comme du service + OR intervenant.heures_decharge < 0 -- s'il y a une décharge => aucune HC + + THEN 9999 + ELSE intervenant.heures_service_statutaire + intervenant.heures_service_modifie + END; + + EXIT WHEN cur%NOTFOUND; + END LOOP; + CLOSE cur; EXCEPTION WHEN NO_DATA_FOUND THEN intervenant.id := NULL; @@ -13563,58 +13849,77 @@ CREATE OR REPLACE PACKAGE BODY "OSE_FORMULE" AS PROCEDURE LOAD_VH_FROM_BDD IS + cur SYS_REFCURSOR; + query CLOB; + vh_ordre NUMERIC; + vh_id NUMERIC; + vh_type_intervention_id NUMERIC; + vh_horaire_debut DATE; + vh_horaire_fin DATE; + vh_intervenant_id NUMERIC; + vh_type_volume_horaire_id NUMERIC; + vh_etat_volume_horaire_id NUMERIC; + vh_structure_is_affectation NUMERIC; + vh_structure_is_univ NUMERIC; vh t_volume_horaire; etat_volume_horaire_id NUMERIC DEFAULT 1; - structure_univ NUMERIC; length NUMERIC; BEGIN all_volumes_horaires.delete; - SELECT to_number(valeur) INTO structure_univ FROM parametre WHERE nom = 'structure_univ'; + EXECUTE IMMEDIATE 'SELECT ' || formule_definition.package_name || '.volume_horaire_query FROM DUAL' INTO query; + OPEN cur FOR query; - FOR d IN ( - SELECT - fvh.*, flvh.param_1, flvh.param_2, flvh.param_3, flvh.param_4, flvh.param_5 - FROM - v_formule_volume_horaire fvh - LEFT JOIN v_formule_local_vh_params flvh ON COALESCE(to_number(flvh.volume_horaire_id),0) = COALESCE(fvh.volume_horaire_id,0) AND COALESCE(to_number(flvh.volume_horaire_ref_id),0) = COALESCE(fvh.volume_horaire_ref_id,0) - ORDER BY - ordre - ) LOOP - vh.volume_horaire_id := d.volume_horaire_id; - vh.volume_horaire_ref_id := d.volume_horaire_ref_id; - vh.service_id := d.service_id; - vh.service_referentiel_id := d.service_referentiel_id; - vh.taux_fi := d.taux_fi; - vh.taux_fa := d.taux_fa; - vh.taux_fc := d.taux_fc; - vh.ponderation_service_du := d.ponderation_service_du; - vh.ponderation_service_compl := d.ponderation_service_compl; - vh.structure_id := d.structure_id; - vh.structure_is_affectation := d.structure_is_affectation = 1; - vh.structure_is_univ := d.structure_is_univ = 1; - vh.service_statutaire := d.service_statutaire = 1; - vh.heures := d.heures; - vh.type_intervention_code := d.type_intervention_code; - vh.taux_service_du := d.taux_service_du; - vh.taux_service_compl := d.taux_service_compl; - vh.param_1 := d.param_1; - vh.param_2 := d.param_2; - vh.param_3 := d.param_3; - vh.param_4 := d.param_4; - vh.param_5 := d.param_5; - - FOR etat_volume_horaire_id IN 1 .. d.etat_volume_horaire_id LOOP + LOOP + FETCH cur INTO + vh_ordre, + vh_id, + vh.volume_horaire_id, + vh.volume_horaire_ref_id, + vh.service_id, + vh.service_referentiel_id, + vh_intervenant_id, + vh_type_intervention_id, + vh_type_volume_horaire_id, + vh_etat_volume_horaire_id, + vh.taux_fi, + vh.taux_fa, + vh.taux_fc, + vh.structure_id, + vh_structure_is_affectation, + vh_structure_is_univ, + vh.ponderation_service_du, + vh.ponderation_service_compl, + vh.service_statutaire, + vh.heures, + vh_horaire_debut, + vh_horaire_fin, + vh.type_intervention_code, + vh.taux_service_du, + vh.taux_service_compl, + vh.param_1, + vh.param_2, + vh.param_3, + vh.param_4, + vh.param_5 + ; + vh.structure_is_affectation := vh_structure_is_affectation = 1; + vh.structure_is_univ := vh_structure_is_univ = 1; + + FOR etat_volume_horaire_id IN 1 .. vh_etat_volume_horaire_id LOOP BEGIN - length := all_volumes_horaires(d.intervenant_id)(d.type_volume_horaire_id)(etat_volume_horaire_id).length; + length := all_volumes_horaires(vh_intervenant_id)(vh_type_volume_horaire_id)(etat_volume_horaire_id).length; EXCEPTION WHEN NO_DATA_FOUND THEN length := 0; END; length := length + 1; - all_volumes_horaires(d.intervenant_id)(d.type_volume_horaire_id)(etat_volume_horaire_id).length := length; - all_volumes_horaires(d.intervenant_id)(d.type_volume_horaire_id)(etat_volume_horaire_id).items(length) := vh; + all_volumes_horaires(vh_intervenant_id)(vh_type_volume_horaire_id)(etat_volume_horaire_id).length := length; + all_volumes_horaires(vh_intervenant_id)(vh_type_volume_horaire_id)(etat_volume_horaire_id).items(length) := vh; END LOOP; + + EXIT WHEN cur%NOTFOUND; END LOOP; + CLOSE cur; END; @@ -17230,6 +17535,9 @@ CREATE INDEX ADRESSE_INTERVENANT_HMFK_IDX ON ADRESSE_INTERVENANT (HISTO_MODIFICA CREATE UNIQUE INDEX ADRESSE_INTERVENANT_PK ON ADRESSE_INTERVENANT (ID); / +CREATE INDEX ADRESSE_INTERVENANT_SOURCE_FK ON ADRESSE_INTERVENANT (SOURCE_ID); +/ + CREATE UNIQUE INDEX ADRESSE_INTERVENANT_SOURCE_UN ON ADRESSE_INTERVENANT (SOURCE_CODE); / @@ -17248,9 +17556,15 @@ CREATE INDEX ADRESSE_STRUCTURE_HMFK_IDX ON ADRESSE_STRUCTURE (HISTO_MODIFICATEUR CREATE UNIQUE INDEX ADRESSE_STRUCTURE_PK ON ADRESSE_STRUCTURE (ID); / +CREATE INDEX ADRESSE_STRUCTURE_SOURCE_FK ON ADRESSE_STRUCTURE (SOURCE_ID); +/ + CREATE UNIQUE INDEX ADRESSE_STRUCTURE_SOURCE_UN ON ADRESSE_STRUCTURE (SOURCE_CODE); / +CREATE INDEX ADRESSE_STRUCTURE_STRUCTURE_FK ON ADRESSE_STRUCTURE (STRUCTURE_ID); +/ + CREATE INDEX AFFECTATION_HCFK_IDX ON AFFECTATION (HISTO_CREATEUR_ID); / @@ -17263,6 +17577,9 @@ CREATE INDEX AFFECTATION_HMFK_IDX ON AFFECTATION (HISTO_MODIFICATEUR_ID); CREATE UNIQUE INDEX AFFECTATION_PK ON AFFECTATION (ID); / +CREATE INDEX AFFECTATION_RECHERCH_SOURCE_FK ON AFFECTATION_RECHERCHE (SOURCE_ID); +/ + CREATE INDEX AFFECTATION_ROLE_FK_IDX ON AFFECTATION (ROLE_ID); / @@ -17275,10 +17592,10 @@ CREATE INDEX AFFECTATION_R_HDFK_IDX ON AFFECTATION_RECHERCHE (HISTO_DESTRUCTEUR_ CREATE INDEX AFFECTATION_R_HMFK_IDX ON AFFECTATION_RECHERCHE (HISTO_MODIFICATEUR_ID); / -CREATE UNIQUE INDEX AFFECTATION_R_PK ON AFFECTATION_RECHERCHE (ID); +CREATE INDEX AFFECTATION_R_INTERVENANT_FK ON AFFECTATION_RECHERCHE (INTERVENANT_ID); / -CREATE INDEX AFFECTATION_R_SOURCE_FK_IDX ON AFFECTATION_RECHERCHE (SOURCE_ID); +CREATE UNIQUE INDEX AFFECTATION_R_PK ON AFFECTATION_RECHERCHE (ID); / CREATE UNIQUE INDEX AFFECTATION_R_SRC_UN ON AFFECTATION_RECHERCHE (SOURCE_CODE); @@ -17323,24 +17640,12 @@ CREATE INDEX AGREMENT_TYPE_AGREMENT_FK_IDX ON AGREMENT (TYPE_AGREMENT_ID); CREATE UNIQUE INDEX AGREMENT__UN ON AGREMENT (TYPE_AGREMENT_ID, INTERVENANT_ID, STRUCTURE_ID, HISTO_DESTRUCTION); / -CREATE INDEX AII_FK_IDX ON ADRESSE_INTERVENANT (INTERVENANT_ID); -/ - -CREATE INDEX AI_SOURCE_FK_IDX ON ADRESSE_INTERVENANT (SOURCE_ID); +CREATE INDEX AII_FK ON ADRESSE_INTERVENANT (INTERVENANT_ID); / CREATE UNIQUE INDEX ANNEE_PK ON ANNEE (ID); / -CREATE INDEX AR_INTERVENANT_FK_IDX ON AFFECTATION_RECHERCHE (INTERVENANT_ID); -/ - -CREATE INDEX AS_SOURCE_FK_IDX ON ADRESSE_STRUCTURE (SOURCE_ID); -/ - -CREATE INDEX AS_STRUCTURE_FK_IDX ON ADRESSE_STRUCTURE (STRUCTURE_ID); -/ - CREATE UNIQUE INDEX CAMPAGNE_PK_IDX ON CAMPAGNE_SAISIE (ID); / @@ -17359,10 +17664,7 @@ CREATE UNIQUE INDEX CATEGORIE_PRIVILEGE__UN ON CATEGORIE_PRIVILEGE (CODE); CREATE INDEX CCEP_CENTRE_COUT_FK_IDX ON CENTRE_COUT_EP (CENTRE_COUT_ID); / -CREATE INDEX CCEP_EP_FK_IDX ON CENTRE_COUT_EP (ELEMENT_PEDAGOGIQUE_ID); -/ - -CREATE INDEX CCEP_SOURCE_FK_IDX ON CENTRE_COUT_EP (SOURCE_ID); +CREATE INDEX CCEP_ELEMENT_PEDAGOGIQUE_FK ON CENTRE_COUT_EP (ELEMENT_PEDAGOGIQUE_ID); / CREATE INDEX CCEP_TYPE_HEURES_FK_IDX ON CENTRE_COUT_EP (TYPE_HEURES_ID); @@ -17404,9 +17706,6 @@ CREATE UNIQUE INDEX CC_ACTIVITE_PK ON CC_ACTIVITE (ID); CREATE INDEX CC_ACTIVITE_REF ON CC_ACTIVITE (REFERENTIEL); / -CREATE INDEX CC_TYPE_RESSOURCE_FK_IDX ON CENTRE_COUT (TYPE_RESSOURCE_ID); -/ - CREATE INDEX CENTRE_COUT_ACTIVITE_FK_IDX ON CENTRE_COUT (ACTIVITE_ID); / @@ -17425,6 +17724,9 @@ CREATE INDEX CENTRE_COUT_EP_HMFK_IDX ON CENTRE_COUT_EP (HISTO_MODIFICATEUR_ID); CREATE UNIQUE INDEX CENTRE_COUT_EP_PK ON CENTRE_COUT_EP (ID); / +CREATE INDEX CENTRE_COUT_EP_SOURCE_FK ON CENTRE_COUT_EP (SOURCE_ID); +/ + CREATE UNIQUE INDEX CENTRE_COUT_EP__UN ON CENTRE_COUT_EP (CENTRE_COUT_ID, ELEMENT_PEDAGOGIQUE_ID, TYPE_HEURES_ID, HISTO_DESTRUCTION); / @@ -17455,6 +17757,12 @@ CREATE INDEX CENTRE_COUT_STRUCTURE_HMFK_IDX ON CENTRE_COUT_STRUCTURE (HISTO_MODI CREATE UNIQUE INDEX CENTRE_COUT_STRUCTURE_PK_IDX ON CENTRE_COUT_STRUCTURE (ID); / +CREATE INDEX CENTRE_COUT_TYPE_RESSOURCE_FK ON CENTRE_COUT (TYPE_RESSOURCE_ID); +/ + +CREATE INDEX CHEMIN_PEDAGOGIQUE_ETAPE_FK ON CHEMIN_PEDAGOGIQUE (ETAPE_ID); +/ + CREATE INDEX CHEMIN_PEDAGOGIQUE_HCFK_IDX ON CHEMIN_PEDAGOGIQUE (HISTO_CREATEUR_ID); / @@ -17467,6 +17775,12 @@ CREATE INDEX CHEMIN_PEDAGOGIQUE_HMFK_IDX ON CHEMIN_PEDAGOGIQUE (HISTO_MODIFICATE CREATE UNIQUE INDEX CHEMIN_PEDAGOGIQUE_PK ON CHEMIN_PEDAGOGIQUE (ID); / +CREATE INDEX CHEMIN_PEDAGOGIQUE_SOURCE_FK ON CHEMIN_PEDAGOGIQUE (SOURCE_ID); +/ + +CREATE UNIQUE INDEX CHEMIN_PEDAGOGIQUE__UN ON CHEMIN_PEDAGOGIQUE (ELEMENT_PEDAGOGIQUE_ID, ETAPE_ID, HISTO_DESTRUCTION); +/ + CREATE UNIQUE INDEX CHEMIN_PEDAGO_SRC_ID_UN ON CHEMIN_PEDAGOGIQUE (SOURCE_CODE); / @@ -17536,12 +17850,6 @@ CREATE UNIQUE INDEX CORPS_SOURCE_UN ON CORPS (SOURCE_CODE); CREATE INDEX CPEP_FK_IDX ON CHEMIN_PEDAGOGIQUE (ELEMENT_PEDAGOGIQUE_ID); / -CREATE INDEX CP_ETAPE_FK_IDX ON CHEMIN_PEDAGOGIQUE (ETAPE_ID); -/ - -CREATE INDEX CP_SOURCE_FK_IDX ON CHEMIN_PEDAGOGIQUE (SOURCE_ID); -/ - CREATE INDEX CS_TYPE_INTERVENANT_FK_IDX ON CAMPAGNE_SAISIE (TYPE_INTERVENANT_ID); / @@ -17563,9 +17871,6 @@ CREATE UNIQUE INDEX DEPARTEMENT_PK ON DEPARTEMENT (ID); CREATE INDEX DEPARTEMENT_SOURCE_FK_IDX ON DEPARTEMENT (SOURCE_ID); / -CREATE INDEX DF_SOURCE_FK_IDX ON DOMAINE_FONCTIONNEL (SOURCE_ID); -/ - CREATE INDEX DISCIPLINE_HCFK_IDX ON DISCIPLINE (HISTO_CREATEUR_ID); / @@ -17596,6 +17901,9 @@ CREATE INDEX DOMAINE_FONCTIONNEL_HMFK_IDX ON DOMAINE_FONCTIONNEL (HISTO_MODIFICA CREATE UNIQUE INDEX DOMAINE_FONCTIONNEL_PK ON DOMAINE_FONCTIONNEL (ID); / +CREATE INDEX DOMAINE_FONCTIONNEL_SOURCE_FK ON DOMAINE_FONCTIONNEL (SOURCE_ID); +/ + CREATE INDEX DOSSIER_D_FK ON DOSSIER (DEPT_NAISSANCE_ID); / @@ -17638,7 +17946,7 @@ CREATE UNIQUE INDEX DOTATION_PK ON DOTATION (ID); CREATE INDEX DOTATION_STRUCTURE_FK_IDX ON DOTATION (STRUCTURE_ID); / -CREATE INDEX DOTATION_TYPE_DOTATION_FK_IDX ON DOTATION (TYPE_RESSOURCE_ID); +CREATE INDEX DOTATION_TYPE_RESSOURCE_FK ON DOTATION (TYPE_RESSOURCE_ID); / CREATE UNIQUE INDEX DOTATION__UN ON DOTATION (TYPE_RESSOURCE_ID, ANNEE_ID, ANNEE_CIVILE, STRUCTURE_ID, LIBELLE, HISTO_DESTRUCTION); @@ -17686,6 +17994,12 @@ CREATE UNIQUE INDEX ELEMENT_MODULATEUR_PK ON ELEMENT_MODULATEUR (ID); CREATE UNIQUE INDEX ELEMENT_MODULATEUR__UN ON ELEMENT_MODULATEUR (ELEMENT_ID, MODULATEUR_ID, HISTO_DESTRUCTION); / +CREATE INDEX ELEMENT_PEDAGOGIQUE_ANNEE_FK ON ELEMENT_PEDAGOGIQUE (ANNEE_ID); +/ + +CREATE INDEX ELEMENT_PEDAGOGIQUE_ETAPE_FK ON ELEMENT_PEDAGOGIQUE (ETAPE_ID); +/ + CREATE INDEX ELEMENT_PEDAGOGIQUE_HCFK_IDX ON ELEMENT_PEDAGOGIQUE (HISTO_CREATEUR_ID); / @@ -17695,9 +18009,15 @@ CREATE INDEX ELEMENT_PEDAGOGIQUE_HDFK_IDX ON ELEMENT_PEDAGOGIQUE (HISTO_DESTRUCT CREATE INDEX ELEMENT_PEDAGOGIQUE_HMFK_IDX ON ELEMENT_PEDAGOGIQUE (HISTO_MODIFICATEUR_ID); / +CREATE INDEX ELEMENT_PEDAGOGIQUE_PERIODE_FK ON ELEMENT_PEDAGOGIQUE (PERIODE_ID); +/ + CREATE UNIQUE INDEX ELEMENT_PEDAGOGIQUE_PK ON ELEMENT_PEDAGOGIQUE (ID); / +CREATE INDEX ELEMENT_PEDAGOGIQUE_SOURCE_FK ON ELEMENT_PEDAGOGIQUE (SOURCE_ID); +/ + CREATE INDEX ELEMENT_TAUX_REGIMES_HCFK_IDX ON ELEMENT_TAUX_REGIMES (HISTO_CREATEUR_ID); / @@ -17710,6 +18030,9 @@ CREATE INDEX ELEMENT_TAUX_REGIMES_HMFK_IDX ON ELEMENT_TAUX_REGIMES (HISTO_MODIFI CREATE UNIQUE INDEX ELEMENT_TAUX_REGIMES_PK ON ELEMENT_TAUX_REGIMES (ID); / +CREATE INDEX ELEMENT_TAUX_REGIMES_SOURCE_FK ON ELEMENT_TAUX_REGIMES (SOURCE_ID); +/ + CREATE UNIQUE INDEX ELEMENT_TAUX_REGIMES__UN ON ELEMENT_TAUX_REGIMES (SOURCE_CODE, HISTO_DESTRUCTION); / @@ -17725,9 +18048,6 @@ CREATE INDEX EM_MODULATEUR_FK_IDX ON ELEMENT_MODULATEUR (MODULATEUR_ID); CREATE INDEX EPS_FK_IDX ON ELEMENT_PEDAGOGIQUE (STRUCTURE_ID); / -CREATE INDEX EP_ANNEE_FK_IDX ON ELEMENT_PEDAGOGIQUE (ANNEE_ID); -/ - CREATE UNIQUE INDEX EP_CODE_UN ON ELEMENT_PEDAGOGIQUE (CODE, HISTO_DESTRUCTION, ANNEE_ID); / @@ -17737,15 +18057,6 @@ CREATE UNIQUE INDEX EP_CODE__UN ON ELEMENT_PEDAGOGIQUE (SOURCE_CODE, ANNEE_ID); CREATE INDEX EP_DISCIPLINE_FK_IDX ON ELEMENT_PEDAGOGIQUE (DISCIPLINE_ID); / -CREATE INDEX EP_ETAPE_FK_IDX ON ELEMENT_PEDAGOGIQUE (ETAPE_ID); -/ - -CREATE INDEX EP_PERIODE_FK_IDX ON ELEMENT_PEDAGOGIQUE (PERIODE_ID); -/ - -CREATE INDEX EP_SOURCE_FK_IDX ON ELEMENT_PEDAGOGIQUE (SOURCE_ID); -/ - CREATE UNIQUE INDEX EP_SRC_UN ON ELEMENT_PEDAGOGIQUE (SOURCE_CODE, ANNEE_ID, HISTO_DESTRUCTION); / @@ -17767,13 +18078,16 @@ CREATE INDEX ETABLISSEMENT_SOURCE_FK_IDX ON ETABLISSEMENT (SOURCE_ID); CREATE UNIQUE INDEX ETABLISSEMENT_SOURCE_ID_UN ON ETABLISSEMENT (SOURCE_CODE); / -CREATE INDEX ETAPE_ANNEE_IDX ON ETAPE (ANNEE_ID); +CREATE UNIQUE INDEX ETABLISSEMENT_SOURCE_UN ON ETABLISSEMENT (SOURCE_CODE, HISTO_DESTRUCTION); +/ + +CREATE INDEX ETAPE_ANNEE_FK ON ETAPE (ANNEE_ID); / CREATE UNIQUE INDEX ETAPE_CODE_UN ON ETAPE (CODE, ANNEE_ID, HISTO_DESTRUCTION); / -CREATE INDEX ETAPE_DF_FK_IDX ON ETAPE (DOMAINE_FONCTIONNEL_ID); +CREATE INDEX ETAPE_DOMAINE_FONCTIONNEL_FK ON ETAPE (DOMAINE_FONCTIONNEL_ID); / CREATE INDEX ETAPE_HCFK_IDX ON ETAPE (HISTO_CREATEUR_ID); @@ -17815,9 +18129,6 @@ CREATE UNIQUE INDEX ETAT_VOLUME_HORAIRE__UN ON ETAT_VOLUME_HORAIRE (CODE); CREATE INDEX ETR_ELEMENT_FK_IDX ON ELEMENT_TAUX_REGIMES (ELEMENT_PEDAGOGIQUE_ID); / -CREATE INDEX ETR_SOURCE_FK_IDX ON ELEMENT_TAUX_REGIMES (SOURCE_ID); -/ - CREATE INDEX FICHIER_HCFK_IDX ON FICHIER (HISTO_CREATEUR_ID); / @@ -17890,13 +18201,13 @@ CREATE UNIQUE INDEX FORMULE_TEST_VOLUME_HORAIRE_PK ON FORMULE_TEST_VOLUME_HORAIR CREATE UNIQUE INDEX FORMULE__UN ON FORMULE (LIBELLE); / -CREATE INDEX FRES_EVH_FK_IDX ON FORMULE_RESULTAT (ETAT_VOLUME_HORAIRE_ID); +CREATE INDEX FRES_ETAT_VOLUME_HORAIRE_FK ON FORMULE_RESULTAT (ETAT_VOLUME_HORAIRE_ID); / CREATE INDEX FRES_INTERVENANT_FK_IDX ON FORMULE_RESULTAT (INTERVENANT_ID); / -CREATE INDEX FRES_TVH_FK_IDX ON FORMULE_RESULTAT (TYPE_VOLUME_HORAIRE_ID); +CREATE INDEX FRES_TYPE_VOLUME_HORAIRE_FK ON FORMULE_RESULTAT (TYPE_VOLUME_HORAIRE_ID); / CREATE INDEX FRR_FORMULE_RESULTAT_FK_IDX ON FORMULE_RESULTAT_SERVICE_REF (FORMULE_RESULTAT_ID); @@ -17905,7 +18216,7 @@ CREATE INDEX FRR_FORMULE_RESULTAT_FK_IDX ON FORMULE_RESULTAT_SERVICE_REF (FORMUL CREATE UNIQUE INDEX FRSR_PK ON FORMULE_RESULTAT_SERVICE_REF (ID); / -CREATE INDEX FRSR_SR_FK_IDX ON FORMULE_RESULTAT_SERVICE_REF (SERVICE_REFERENTIEL_ID); +CREATE INDEX FRSR_SERVICE_REFERENTIEL_FK ON FORMULE_RESULTAT_SERVICE_REF (SERVICE_REFERENTIEL_ID); / CREATE INDEX FRS_FORMULE_RESULTAT_FK_IDX ON FORMULE_RESULTAT_SERVICE (FORMULE_RESULTAT_ID); @@ -17917,7 +18228,7 @@ CREATE INDEX FRS_SERVICE_FK_IDX ON FORMULE_RESULTAT_SERVICE (SERVICE_ID); CREATE INDEX FRVHR_FORMULE_RESULTAT_FK_IDX ON FORMULE_RESULTAT_VH_REF (FORMULE_RESULTAT_ID); / -CREATE INDEX FRVHR_VHR_FK_IDX ON FORMULE_RESULTAT_VH_REF (VOLUME_HORAIRE_REF_ID); +CREATE INDEX FRVHR_VOLUME_HORAIRE_REF_FK ON FORMULE_RESULTAT_VH_REF (VOLUME_HORAIRE_REF_ID); / CREATE INDEX FRVH_FORMULE_RESULTAT_FK_IDX ON FORMULE_RESULTAT_VH (FORMULE_RESULTAT_ID); @@ -17941,7 +18252,7 @@ CREATE INDEX GRADE_HMFK_IDX ON GRADE (HISTO_MODIFICATEUR_ID); CREATE UNIQUE INDEX GRADE_PK ON GRADE (ID); / -CREATE INDEX GROUPE_EP_FK_IDX ON GROUPE (ELEMENT_PEDAGOGIQUE_ID); +CREATE INDEX GROUPE_ELEMENT_PEDAGOGIQUE_FK ON GROUPE (ELEMENT_PEDAGOGIQUE_ID); / CREATE INDEX GROUPE_HCFK_IDX ON GROUPE (HISTO_CREATEUR_ID); @@ -17956,9 +18267,6 @@ CREATE INDEX GROUPE_HMFK_IDX ON GROUPE (HISTO_MODIFICATEUR_ID); CREATE UNIQUE INDEX GROUPE_PK ON GROUPE (ID); / -CREATE INDEX GROUPE_TI_FK_IDX ON GROUPE (TYPE_INTERVENTION_ID); -/ - CREATE INDEX GROUPE_TYPE_FORMATION_HCFK_IDX ON GROUPE_TYPE_FORMATION (HISTO_CREATEUR_ID); / @@ -17971,10 +18279,13 @@ CREATE INDEX GROUPE_TYPE_FORMATION_HMFK_IDX ON GROUPE_TYPE_FORMATION (HISTO_MODI CREATE UNIQUE INDEX GROUPE_TYPE_FORMATION_PK ON GROUPE_TYPE_FORMATION (ID); / -CREATE UNIQUE INDEX GROUPE__UN ON GROUPE (ELEMENT_PEDAGOGIQUE_ID, HISTO_DESTRUCTEUR_ID, TYPE_INTERVENTION_ID); +CREATE INDEX GROUPE_TYPE_FORMATIO_SOURCE_FK ON GROUPE_TYPE_FORMATION (SOURCE_ID); / -CREATE INDEX GTYPE_FORMATION_SOURCE_FK_IDX ON GROUPE_TYPE_FORMATION (SOURCE_ID); +CREATE INDEX GROUPE_TYPE_INTERVENTION_FK ON GROUPE (TYPE_INTERVENTION_ID); +/ + +CREATE UNIQUE INDEX GROUPE__UN ON GROUPE (ELEMENT_PEDAGOGIQUE_ID, HISTO_DESTRUCTEUR_ID, TYPE_INTERVENTION_ID); / CREATE UNIQUE INDEX GTYPE_FORMATION_SOURCE_UN ON GROUPE_TYPE_FORMATION (SOURCE_CODE); @@ -18001,7 +18312,7 @@ CREATE UNIQUE INDEX IMPORT_TABLES_PK ON IMPORT_TABLES (TABLE_NAME); CREATE UNIQUE INDEX INDICATEUR_PK ON INDICATEUR (ID); / -CREATE INDEX INDIC_DIFF_DOSSIER_INT_FK_IDX ON INDIC_MODIF_DOSSIER (INTERVENANT_ID); +CREATE INDEX INDIC_DIFF_DOSSIER_INT_FK ON INDIC_MODIF_DOSSIER (INTERVENANT_ID); / CREATE INDEX INDIC_MODIF_DOSSIER_HCFK_IDX ON INDIC_MODIF_DOSSIER (HISTO_CREATEUR_ID); @@ -18025,7 +18336,7 @@ CREATE INDEX INTERVENANT_ANNEE_FK_IDX ON INTERVENANT (ANNEE_ID); CREATE UNIQUE INDEX INTERVENANT_CODE_UN ON INTERVENANT (CODE, ANNEE_ID); / -CREATE INDEX INTERVENANT_DEP_NAISSANCE_IDX ON INTERVENANT (DEP_NAISSANCE_ID); +CREATE INDEX INTERVENANT_DEPARTEMENT_FK ON INTERVENANT (DEP_NAISSANCE_ID); / CREATE INDEX INTERVENANT_DISCIPLINE_FK_IDX ON INTERVENANT (DISCIPLINE_ID); @@ -18052,10 +18363,10 @@ CREATE INDEX INTERVENANT_NOM_PATRO_IDX ON INTERVENANT (NOM_PATRONYMIQUE); CREATE INDEX INTERVENANT_NOM_USUEL_IDX ON INTERVENANT (NOM_USUEL); / -CREATE INDEX INTERVENANT_PAYS_NAISSANCE_IDX ON INTERVENANT (PAYS_NAISSANCE_ID); +CREATE INDEX INTERVENANT_PAYS_NAISS_FK ON INTERVENANT (PAYS_NAISSANCE_ID); / -CREATE INDEX INTERVENANT_PAYS_NAT_IDX ON INTERVENANT (PAYS_NATIONALITE_ID); +CREATE INDEX INTERVENANT_PAYS_NAT_FK ON INTERVENANT (PAYS_NATIONALITE_ID); / CREATE UNIQUE INDEX INTERVENANT_PK ON INTERVENANT (ID); @@ -18070,9 +18381,6 @@ CREATE INDEX INTERVENANT_RECHERCHE_IDX ON INTERVENANT (CRITERE_RECHERCHE); CREATE UNIQUE INDEX INTERVENANT_SAISIE_PK ON INTERVENANT_SAISIE (ID); / -CREATE INDEX INTERVENANT_SAISIE_STT_IDX ON INTERVENANT_SAISIE (STATUT_ID); -/ - CREATE UNIQUE INDEX INTERVENANT_SAISIE__UN ON INTERVENANT_SAISIE (INTERVENANT_ID); / @@ -18082,6 +18390,9 @@ CREATE INDEX INTERVENANT_SOURCE_CODE_IDX ON INTERVENANT (SOURCE_CODE); CREATE INDEX INTERVENANT_SOURCE_FK_IDX ON INTERVENANT (SOURCE_ID); / +CREATE UNIQUE INDEX INTERVENANT_SOURCE_UN ON INTERVENANT (SOURCE_CODE, ANNEE_ID, HISTO_DESTRUCTION); +/ + CREATE UNIQUE INDEX INTERVENANT_SOURCE__UN ON INTERVENANT (SOURCE_CODE, ANNEE_ID); / @@ -18094,31 +18405,34 @@ CREATE INDEX INTERVENANT_STRUCTURE_FK_IDX ON INTERVENANT (STRUCTURE_ID); CREATE UNIQUE INDEX INTERVENANT_UTIL_CODE_UN ON INTERVENANT (UTILISATEUR_CODE, ANNEE_ID, STATUT_ID); / -CREATE INDEX LIEN_HISTO_CREATEUR_IDX ON LIEN (HISTO_CREATEUR_ID); +CREATE INDEX IS_STATUT_INTERVENANT_FK ON INTERVENANT_SAISIE (STATUT_ID); +/ + +CREATE INDEX LIEN_HCFK ON LIEN (HISTO_CREATEUR_ID); / -CREATE INDEX LIEN_HISTO_DESTRUCTEUR_IDX ON LIEN (HISTO_DESTRUCTEUR_ID); +CREATE INDEX LIEN_HDFK ON LIEN (HISTO_DESTRUCTEUR_ID); / -CREATE INDEX LIEN_HISTO_MODIFICATEUR_IDX ON LIEN (HISTO_MODIFICATEUR_ID); +CREATE INDEX LIEN_HMFK ON LIEN (HISTO_MODIFICATEUR_ID); / -CREATE INDEX LIEN_NOEUD_INF_IDX ON LIEN (NOEUD_INF_ID); +CREATE INDEX LIEN_NOEUD_INF_FK ON LIEN (NOEUD_INF_ID); / -CREATE INDEX LIEN_NOEUD_SUP_IDX ON LIEN (NOEUD_SUP_ID); +CREATE INDEX LIEN_NOEUD_SUP_FK ON LIEN (NOEUD_SUP_ID); / CREATE UNIQUE INDEX LIEN_PK ON LIEN (ID); / -CREATE INDEX LIEN_SOURCE_IDX ON LIEN (SOURCE_ID); +CREATE INDEX LIEN_SOURCE_FK ON LIEN (SOURCE_ID); / CREATE UNIQUE INDEX LIEN_SRC_UN ON LIEN (SOURCE_CODE, HISTO_DESTRUCTION); / -CREATE INDEX LIEN_STRUCTURE_IDX ON LIEN (STRUCTURE_ID); +CREATE INDEX LIEN_STRUCTURE_FK ON LIEN (STRUCTURE_ID); / CREATE INDEX MEP_CENTRE_COUT_FK_IDX ON MISE_EN_PAIEMENT (CENTRE_COUT_ID); @@ -18133,15 +18447,9 @@ CREATE INDEX MEP_FR_SERVICE_FK_IDX ON MISE_EN_PAIEMENT (FORMULE_RES_SERVICE_ID); CREATE INDEX MEP_FR_SERVICE_REF_FK_IDX ON MISE_EN_PAIEMENT (FORMULE_RES_SERVICE_REF_ID); / -CREATE INDEX MEP_PERIODE_FK_IDX ON MISE_EN_PAIEMENT (PERIODE_PAIEMENT_ID); -/ - CREATE INDEX MEP_TYPE_HEURES_FK_IDX ON MISE_EN_PAIEMENT (TYPE_HEURES_ID); / -CREATE INDEX MEP_VALIDATION_FK_IDX ON MISE_EN_PAIEMENT (VALIDATION_ID); -/ - CREATE INDEX MISE_EN_PAIEMENT_HCFK_IDX ON MISE_EN_PAIEMENT (HISTO_CREATEUR_ID); / @@ -18151,19 +18459,25 @@ CREATE INDEX MISE_EN_PAIEMENT_HDFK_IDX ON MISE_EN_PAIEMENT (HISTO_DESTRUCTEUR_ID CREATE INDEX MISE_EN_PAIEMENT_HMFK_IDX ON MISE_EN_PAIEMENT (HISTO_MODIFICATEUR_ID); / +CREATE INDEX MISE_EN_PAIEMENT_PERIODE_FK ON MISE_EN_PAIEMENT (PERIODE_PAIEMENT_ID); +/ + CREATE UNIQUE INDEX MISE_EN_PAIEMENT_PK ON MISE_EN_PAIEMENT (ID); / -CREATE INDEX MMSD_HCFK_IDX ON MOTIF_MODIFICATION_SERVICE (HISTO_CREATEUR_ID); +CREATE INDEX MISE_EN_PAIEMENT_VALIDATION_FK ON MISE_EN_PAIEMENT (VALIDATION_ID); / -CREATE INDEX MMSD_HDFK_IDX ON MOTIF_MODIFICATION_SERVICE (HISTO_DESTRUCTEUR_ID); +CREATE UNIQUE INDEX MODELE_CONTRAT_PK ON MODELE_CONTRAT (ID); / -CREATE INDEX MMSD_HMFK_IDX ON MOTIF_MODIFICATION_SERVICE (HISTO_MODIFICATEUR_ID); +CREATE INDEX MODIFICATION_SERVICE_DU_HCFK ON MODIFICATION_SERVICE_DU (HISTO_CREATEUR_ID); / -CREATE UNIQUE INDEX MODELE_CONTRAT_PK ON MODELE_CONTRAT (ID); +CREATE INDEX MODIFICATION_SERVICE_DU_HDFK ON MODIFICATION_SERVICE_DU (HISTO_DESTRUCTEUR_ID); +/ + +CREATE INDEX MODIFICATION_SERVICE_DU_HMFK ON MODIFICATION_SERVICE_DU (HISTO_MODIFICATEUR_ID); / CREATE UNIQUE INDEX MODIFICATION_SERVICE_DU_PK ON MODIFICATION_SERVICE_DU (ID); @@ -18181,7 +18495,7 @@ CREATE INDEX MODULATEUR_HMFK_IDX ON MODULATEUR (HISTO_MODIFICATEUR_ID); CREATE UNIQUE INDEX MODULATEUR_PK ON MODULATEUR (ID); / -CREATE INDEX MODULATEUR_TM_FK_IDX ON MODULATEUR (TYPE_MODULATEUR_ID); +CREATE INDEX MODULATEUR_TYPE_MODULATEUR_FK ON MODULATEUR (TYPE_MODULATEUR_ID); / CREATE UNIQUE INDEX MODULATEUR__UN ON MODULATEUR (CODE); @@ -18190,61 +18504,61 @@ CREATE UNIQUE INDEX MODULATEUR__UN ON MODULATEUR (CODE); CREATE UNIQUE INDEX MOTIF_MODIFICATION_SERVICE_PK ON MOTIF_MODIFICATION_SERVICE (ID); / -CREATE UNIQUE INDEX MOTIF_MODIFICATION_SERVIC_UK1 ON MOTIF_MODIFICATION_SERVICE (CODE); +CREATE INDEX MOTIF_MODIFICATION_SERVIC_HCFK ON MOTIF_MODIFICATION_SERVICE (HISTO_CREATEUR_ID); / -CREATE INDEX MOTIF_NON_PAIEMENT_HCFK_IDX ON MOTIF_NON_PAIEMENT (HISTO_CREATEUR_ID); +CREATE INDEX MOTIF_MODIFICATION_SERVIC_HDFK ON MOTIF_MODIFICATION_SERVICE (HISTO_DESTRUCTEUR_ID); / -CREATE INDEX MOTIF_NON_PAIEMENT_HDFK_IDX ON MOTIF_NON_PAIEMENT (HISTO_DESTRUCTEUR_ID); +CREATE INDEX MOTIF_MODIFICATION_SERVIC_HMFK ON MOTIF_MODIFICATION_SERVICE (HISTO_MODIFICATEUR_ID); / -CREATE INDEX MOTIF_NON_PAIEMENT_HMFK_IDX ON MOTIF_NON_PAIEMENT (HISTO_MODIFICATEUR_ID); +CREATE UNIQUE INDEX MOTIF_MODIFICATION_SERVIC_UK1 ON MOTIF_MODIFICATION_SERVICE (CODE); / -CREATE UNIQUE INDEX MOTIF_NON_PAIEMENT_PK ON MOTIF_NON_PAIEMENT (ID); +CREATE INDEX MOTIF_NON_PAIEMENT_HCFK_IDX ON MOTIF_NON_PAIEMENT (HISTO_CREATEUR_ID); / -CREATE INDEX MSD_HCFK_IDX ON MODIFICATION_SERVICE_DU (HISTO_CREATEUR_ID); +CREATE INDEX MOTIF_NON_PAIEMENT_HDFK_IDX ON MOTIF_NON_PAIEMENT (HISTO_DESTRUCTEUR_ID); / -CREATE INDEX MSD_HDFK_IDX ON MODIFICATION_SERVICE_DU (HISTO_DESTRUCTEUR_ID); +CREATE INDEX MOTIF_NON_PAIEMENT_HMFK_IDX ON MOTIF_NON_PAIEMENT (HISTO_MODIFICATEUR_ID); / -CREATE INDEX MSD_HMFK_IDX ON MODIFICATION_SERVICE_DU (HISTO_MODIFICATEUR_ID); +CREATE UNIQUE INDEX MOTIF_NON_PAIEMENT_PK ON MOTIF_NON_PAIEMENT (ID); / CREATE INDEX MSD_INTERVENANT_FK_IDX ON MODIFICATION_SERVICE_DU (INTERVENANT_ID); / -CREATE INDEX NOEUD_ANNEE_IDX ON NOEUD (ANNEE_ID); +CREATE INDEX NOEUD_ANNEE_FK ON NOEUD (ANNEE_ID); / -CREATE INDEX NOEUD_EP_IDX ON NOEUD (ELEMENT_PEDAGOGIQUE_ID); +CREATE INDEX NOEUD_ELEMENT_PEDAGOGIQUE_FK ON NOEUD (ELEMENT_PEDAGOGIQUE_ID); / -CREATE INDEX NOEUD_ETAPE_IDX ON NOEUD (ETAPE_ID); +CREATE INDEX NOEUD_ETAPE_FK ON NOEUD (ETAPE_ID); / -CREATE INDEX NOEUD_HISTO_CREATEUR_IDX ON NOEUD (HISTO_CREATEUR_ID); +CREATE INDEX NOEUD_HCFK ON NOEUD (HISTO_CREATEUR_ID); / -CREATE INDEX NOEUD_HISTO_DESTRUCTEUR_IDX ON NOEUD (HISTO_DESTRUCTEUR_ID); +CREATE INDEX NOEUD_HDFK ON NOEUD (HISTO_DESTRUCTEUR_ID); / -CREATE INDEX NOEUD_HISTO_MODIFICATEUR_IDX ON NOEUD (HISTO_MODIFICATEUR_ID); +CREATE INDEX NOEUD_HMFK ON NOEUD (HISTO_MODIFICATEUR_ID); / CREATE UNIQUE INDEX NOEUD_PK ON NOEUD (ID); / -CREATE INDEX NOEUD_SOURCE_IDX ON NOEUD (SOURCE_ID); +CREATE INDEX NOEUD_SOURCE_FK ON NOEUD (SOURCE_ID); / CREATE UNIQUE INDEX NOEUD_SRC_UN ON NOEUD (SOURCE_CODE, HISTO_DESTRUCTION); / -CREATE INDEX NOEUD_STRUCTURE_IDX ON NOEUD (STRUCTURE_ID); +CREATE INDEX NOEUD_STRUCTURE_FK ON NOEUD (STRUCTURE_ID); / CREATE UNIQUE INDEX NOTIFICATION_INDICATEUR__UN ON NOTIFICATION_INDICATEUR (INDICATEUR_ID, AFFECTATION_ID); @@ -18271,9 +18585,6 @@ CREATE INDEX PARAMETRE_HMFK_IDX ON PARAMETRE (HISTO_MODIFICATEUR_ID); CREATE UNIQUE INDEX PARAMETRE_PK ON PARAMETRE (ID); / -CREATE UNIQUE INDEX PARAMETRE_UK ON PARAMETRE (NOM); -/ - CREATE INDEX PAYS_HCFK_IDX ON PAYS (HISTO_CREATEUR_ID); / @@ -18289,6 +18600,9 @@ CREATE UNIQUE INDEX PAYS_PK ON PAYS (ID); CREATE INDEX PAYS_SOURCE_FK_IDX ON PAYS (SOURCE_ID); / +CREATE UNIQUE INDEX PAYS_SRC_UN ON PAYS (SOURCE_ID, SOURCE_CODE, HISTO_DESTRUCTION); +/ + CREATE UNIQUE INDEX PERIMETRE_CODE_UN ON PERIMETRE (CODE); / @@ -18331,6 +18645,9 @@ CREATE INDEX PIECE_JOINTE_HDFK_IDX ON PIECE_JOINTE (HISTO_DESTRUCTEUR_ID); CREATE INDEX PIECE_JOINTE_HMFK_IDX ON PIECE_JOINTE (HISTO_MODIFICATEUR_ID); / +CREATE INDEX PIECE_JOINTE_INTERVENANT_FK ON PIECE_JOINTE (INTERVENANT_ID); +/ + CREATE UNIQUE INDEX PIECE_JOINTE_PK ON PIECE_JOINTE (ID); / @@ -18340,9 +18657,6 @@ CREATE INDEX PIECE_JOINTE_VFK_IDX ON PIECE_JOINTE (VALIDATION_ID); CREATE UNIQUE INDEX PIECE_JOINTE__UN ON PIECE_JOINTE (TYPE_PIECE_JOINTE_ID, INTERVENANT_ID, HISTO_DESTRUCTION); / -CREATE INDEX PJ_DOSSIER_FK_IDX ON PIECE_JOINTE (INTERVENANT_ID); -/ - CREATE INDEX PJ_TYPE_PIECE_JOINTE_FK_IDX ON PIECE_JOINTE (TYPE_PIECE_JOINTE_ID); / @@ -18391,10 +18705,10 @@ CREATE UNIQUE INDEX ROLE_PK ON ROLE (ID); CREATE UNIQUE INDEX ROLE_PRIVILEGE_PK ON ROLE_PRIVILEGE (PRIVILEGE_ID, ROLE_ID); / -CREATE INDEX ROLE_PRIVILEGE_ROLE_FK_IDX ON ROLE_PRIVILEGE (ROLE_ID); +CREATE INDEX ROLE_PRIVILEGE_PRIVILEGE_FK ON ROLE_PRIVILEGE (PRIVILEGE_ID); / -CREATE INDEX RP_PRIVILEGE_FK_IDX ON ROLE_PRIVILEGE (PRIVILEGE_ID); +CREATE INDEX ROLE_PRIVILEGE_ROLE_FK_IDX ON ROLE_PRIVILEGE (ROLE_ID); / CREATE INDEX RSV_TYPE_INTERVENANT_FK_IDX ON REGLE_STRUCTURE_VALIDATION (TYPE_INTERVENANT_ID); @@ -18403,34 +18717,34 @@ CREATE INDEX RSV_TYPE_INTERVENANT_FK_IDX ON REGLE_STRUCTURE_VALIDATION (TYPE_INT CREATE INDEX RSV_TYPE_VOLUME_HORAIRE_FK_IDX ON REGLE_STRUCTURE_VALIDATION (TYPE_VOLUME_HORAIRE_ID); / -CREATE INDEX SCENARIO_HC_IDX ON SCENARIO (HISTO_CREATEUR_ID); +CREATE INDEX SCENARIO_HCFK ON SCENARIO (HISTO_CREATEUR_ID); / -CREATE INDEX SCENARIO_HD_IDX ON SCENARIO (HISTO_DESTRUCTEUR_ID); +CREATE INDEX SCENARIO_HDFK ON SCENARIO (HISTO_DESTRUCTEUR_ID); / -CREATE INDEX SCENARIO_HM_IDX ON SCENARIO (HISTO_MODIFICATEUR_ID); +CREATE INDEX SCENARIO_HMFK ON SCENARIO (HISTO_MODIFICATEUR_ID); / -CREATE INDEX SCENARIO_LIEN_HC_IDX ON SCENARIO_LIEN (HISTO_CREATEUR_ID); +CREATE INDEX SCENARIO_LIEN_HCFK ON SCENARIO_LIEN (HISTO_CREATEUR_ID); / -CREATE INDEX SCENARIO_LIEN_HD_IDX ON SCENARIO_LIEN (HISTO_DESTRUCTEUR_ID); +CREATE INDEX SCENARIO_LIEN_HDFK ON SCENARIO_LIEN (HISTO_DESTRUCTEUR_ID); / -CREATE INDEX SCENARIO_LIEN_HM_IDX ON SCENARIO_LIEN (HISTO_MODIFICATEUR_ID); +CREATE INDEX SCENARIO_LIEN_HMFK ON SCENARIO_LIEN (HISTO_MODIFICATEUR_ID); / -CREATE INDEX SCENARIO_LIEN_LIEN_IDX ON SCENARIO_LIEN (LIEN_ID); +CREATE INDEX SCENARIO_LIEN_LIEN_FK ON SCENARIO_LIEN (LIEN_ID); / CREATE UNIQUE INDEX SCENARIO_LIEN_PK ON SCENARIO_LIEN (ID); / -CREATE INDEX SCENARIO_LIEN_SCENARIO_IDX ON SCENARIO_LIEN (SCENARIO_ID); +CREATE INDEX SCENARIO_LIEN_SCENARIO_FK ON SCENARIO_LIEN (SCENARIO_ID); / -CREATE INDEX SCENARIO_LIEN_SOURCE_IDX ON SCENARIO_LIEN (SOURCE_ID); +CREATE INDEX SCENARIO_LIEN_SOURCE_FK ON SCENARIO_LIEN (SOURCE_ID); / CREATE UNIQUE INDEX SCENARIO_LIEN_SRC_UN ON SCENARIO_LIEN (SOURCE_CODE, HISTO_DESTRUCTION); @@ -18442,43 +18756,28 @@ CREATE UNIQUE INDEX SCENARIO_LIEN__UN ON SCENARIO_LIEN (SCENARIO_ID, LIEN_ID, HI CREATE UNIQUE INDEX SCENARIO_NOEUD_EFFECTIF_PK ON SCENARIO_NOEUD_EFFECTIF (ID); / -CREATE INDEX SCENARIO_NOEUD_EFFECTIF_SN_IDX ON SCENARIO_NOEUD_EFFECTIF (SCENARIO_NOEUD_ID); -/ - -CREATE INDEX SCENARIO_NOEUD_EFFECTIF_TH_IDX ON SCENARIO_NOEUD_EFFECTIF (TYPE_HEURES_ID); -/ - -CREATE INDEX SCENARIO_NOEUD_EFF_ETP_IDX ON SCENARIO_NOEUD_EFFECTIF (ETAPE_ID); -/ - -CREATE INDEX SCENARIO_NOEUD_HC_IDX ON SCENARIO_NOEUD (HISTO_CREATEUR_ID); +CREATE INDEX SCENARIO_NOEUD_HCFK ON SCENARIO_NOEUD (HISTO_CREATEUR_ID); / -CREATE INDEX SCENARIO_NOEUD_HD_IDX ON SCENARIO_NOEUD (HISTO_DESTRUCTEUR_ID); +CREATE INDEX SCENARIO_NOEUD_HDFK ON SCENARIO_NOEUD (HISTO_DESTRUCTEUR_ID); / -CREATE INDEX SCENARIO_NOEUD_HM_IDX ON SCENARIO_NOEUD (HISTO_MODIFICATEUR_ID); +CREATE INDEX SCENARIO_NOEUD_HMFK ON SCENARIO_NOEUD (HISTO_MODIFICATEUR_ID); / -CREATE INDEX SCENARIO_NOEUD_NOEUD_IDX ON SCENARIO_NOEUD (NOEUD_ID); +CREATE INDEX SCENARIO_NOEUD_NOEUD_FK ON SCENARIO_NOEUD (NOEUD_ID); / CREATE UNIQUE INDEX SCENARIO_NOEUD_PK ON SCENARIO_NOEUD (ID); / -CREATE INDEX SCENARIO_NOEUD_SCENARIO_IDX ON SCENARIO_NOEUD (SCENARIO_ID); +CREATE INDEX SCENARIO_NOEUD_SCENARIO_FK ON SCENARIO_NOEUD (SCENARIO_ID); / CREATE UNIQUE INDEX SCENARIO_NOEUD_SEUIL_PK ON SCENARIO_NOEUD_SEUIL (ID); / -CREATE INDEX SCENARIO_NOEUD_SEUIL_SN_IDX ON SCENARIO_NOEUD_SEUIL (SCENARIO_NOEUD_ID); -/ - -CREATE INDEX SCENARIO_NOEUD_SEUIL_TI_IDX ON SCENARIO_NOEUD_SEUIL (TYPE_INTERVENTION_ID); -/ - -CREATE INDEX SCENARIO_NOEUD_SOURCE_IDX ON SCENARIO_NOEUD (SOURCE_ID); +CREATE INDEX SCENARIO_NOEUD_SOURCE_FK ON SCENARIO_NOEUD (SOURCE_ID); / CREATE UNIQUE INDEX SCENARIO_NOEUD_SRC_UN ON SCENARIO_NOEUD (SOURCE_CODE, HISTO_DESTRUCTION); @@ -18490,7 +18789,10 @@ CREATE UNIQUE INDEX SCENARIO_NOEUD__UN ON SCENARIO_NOEUD (SCENARIO_ID, NOEUD_ID, CREATE UNIQUE INDEX SCENARIO_PK ON SCENARIO (ID); / -CREATE INDEX SCENARIO_STRUCTURE_IDX ON SCENARIO (STRUCTURE_ID); +CREATE INDEX SCENARIO_STRUCTURE_FK ON SCENARIO (STRUCTURE_ID); +/ + +CREATE INDEX SERVICE_ELEMENT_PEDAGOGIQUE_FK ON SERVICE (ELEMENT_PEDAGOGIQUE_ID); / CREATE INDEX SERVICE_ETABLISSEMENT_FK_IDX ON SERVICE (ETABLISSEMENT_ID); @@ -18532,34 +18834,46 @@ CREATE UNIQUE INDEX SERVICE_SOURCE_UN ON SERVICE (SOURCE_CODE, HISTO_DESTRUCTION CREATE UNIQUE INDEX SERVICE__UN ON SERVICE (INTERVENANT_ID, ELEMENT_PEDAGOGIQUE_ID, ETABLISSEMENT_ID, HISTO_DESTRUCTION); / -CREATE INDEX SEUIL_CHARGE_ANNEE_IDX ON SEUIL_CHARGE (ANNEE_ID); +CREATE INDEX SEUIL_CHARGE_ANNEE_FK ON SEUIL_CHARGE (ANNEE_ID); / -CREATE INDEX SEUIL_CHARGE_GTF_IDX ON SEUIL_CHARGE (GROUPE_TYPE_FORMATION_ID); +CREATE UNIQUE INDEX SEUIL_CHARGE_PK ON SEUIL_CHARGE (ID); / -CREATE INDEX SEUIL_CHARGE_HC_IDX ON SEUIL_CHARGE (HISTO_CREATEUR_ID); +CREATE INDEX SEUIL_CH_GT_FORMATION_FK ON SEUIL_CHARGE (GROUPE_TYPE_FORMATION_ID); / -CREATE INDEX SEUIL_CHARGE_HD_IDX ON SEUIL_CHARGE (HISTO_DESTRUCTEUR_ID); +CREATE INDEX SEUIL_CH_SCENARIO_FK ON SEUIL_CHARGE (SCENARIO_ID); / -CREATE INDEX SEUIL_CHARGE_HM_IDX ON SEUIL_CHARGE (HISTO_MODIFICATEUR_ID); +CREATE INDEX SEUIL_CH_STRUCTURE_FK ON SEUIL_CHARGE (STRUCTURE_ID); / -CREATE UNIQUE INDEX SEUIL_CHARGE_PK ON SEUIL_CHARGE (ID); +CREATE INDEX SEUIL_CH_TYPE_INTERVENTION_FK ON SEUIL_CHARGE (TYPE_INTERVENTION_ID); +/ + +CREATE INDEX SEUIL_CH_UTILISATEUR_HCFK ON SEUIL_CHARGE (HISTO_CREATEUR_ID); +/ + +CREATE INDEX SEUIL_CH_UTILISATEUR_HDFK ON SEUIL_CHARGE (HISTO_DESTRUCTEUR_ID); / -CREATE INDEX SEUIL_CHARGE_SCENARIO_IDX ON SEUIL_CHARGE (SCENARIO_ID); +CREATE INDEX SEUIL_CH_UTILISATEUR_HMFK ON SEUIL_CHARGE (HISTO_MODIFICATEUR_ID); / -CREATE INDEX SEUIL_CHARGE_STRUCTURE_IDX ON SEUIL_CHARGE (STRUCTURE_ID); +CREATE INDEX SNE_ETAPE_FK ON SCENARIO_NOEUD_EFFECTIF (ETAPE_ID); / -CREATE INDEX SEUIL_CHARGE_TI_IDX ON SEUIL_CHARGE (TYPE_INTERVENTION_ID); +CREATE INDEX SNE_SCENARIO_NOEUD_FK ON SCENARIO_NOEUD_EFFECTIF (SCENARIO_NOEUD_ID); / -CREATE INDEX SI_SOURCE_FK_IDX ON STATUT_INTERVENANT (SOURCE_ID); +CREATE INDEX SNE_TYPE_HEURES_FK ON SCENARIO_NOEUD_EFFECTIF (TYPE_HEURES_ID); +/ + +CREATE INDEX SNS_SCENARIO_NOEUD_FK ON SCENARIO_NOEUD_SEUIL (SCENARIO_NOEUD_ID); +/ + +CREATE INDEX SNS_TYPE_INTERVENTION_FK ON SCENARIO_NOEUD_SEUIL (TYPE_INTERVENTION_ID); / CREATE UNIQUE INDEX SOURCE_CODE_UN ON SOURCE (CODE); @@ -18592,6 +18906,9 @@ CREATE UNIQUE INDEX STATUT_INTERVENANT_ODRE_UN ON STATUT_INTERVENANT (HISTO_DEST CREATE UNIQUE INDEX STATUT_INTERVENANT_PK ON STATUT_INTERVENANT (ID); / +CREATE INDEX STATUT_INTERVENANT_SOURCE_FK ON STATUT_INTERVENANT (SOURCE_ID); +/ + CREATE INDEX STATUT_INTERVENANT_TYPE_FK_IDX ON STATUT_INTERVENANT (TYPE_INTERVENANT_ID); / @@ -18628,9 +18945,6 @@ CREATE UNIQUE INDEX STRUCTURE_SOURCE_CODE_UN ON STRUCTURE (SOURCE_CODE, HISTO_DE CREATE UNIQUE INDEX SYNC_LOG_PK ON SYNC_LOG (ID); / -CREATE INDEX S_ELEMENT_PEDAGOGIQUE_FK_IDX ON SERVICE (ELEMENT_PEDAGOGIQUE_ID); -/ - CREATE INDEX TAS_STATUT_INTERVENANT_FK_IDX ON TYPE_AGREMENT_STATUT (STATUT_INTERVENANT_ID); / @@ -18682,7 +18996,7 @@ CREATE UNIQUE INDEX TBL_CHARGENS_SEUILS_DEF__UN ON TBL_CHARGENS_SEUILS_DEF (SCEN CREATE UNIQUE INDEX TBL_CHARGENS__UN ON TBL_CHARGENS (ANNEE_ID, NOEUD_ID, SCENARIO_ID, TYPE_HEURES_ID, TYPE_INTERVENTION_ID, ELEMENT_PEDAGOGIQUE_ID, ETAPE_ID, ETAPE_ENS_ID, STRUCTURE_ID, GROUPE_TYPE_FORMATION_ID); / -CREATE INDEX TBL_CLOTURE_REALISE_ANN_FK_IDX ON TBL_CLOTURE_REALISE (ANNEE_ID); +CREATE INDEX TBL_CLOTURE_REALISE_ANNEE_FK ON TBL_CLOTURE_REALISE (ANNEE_ID); / CREATE UNIQUE INDEX TBL_CLOTURE_REALISE_PK_IDX ON TBL_CLOTURE_REALISE (ID); @@ -18706,22 +19020,22 @@ CREATE INDEX TBL_CONTRAT_STRUCTURE_FK_IDX ON TBL_CONTRAT (STRUCTURE_ID); CREATE UNIQUE INDEX TBL_CONTRAT__UN_IDX ON TBL_CONTRAT (INTERVENANT_ID, STRUCTURE_ID, TO_DELETE); / -CREATE INDEX TBL_CSD_ANNEE_IDX ON TBL_CHARGENS_SEUILS_DEF (ANNEE_ID); +CREATE INDEX TBL_CSD_ANNEE_FK ON TBL_CHARGENS_SEUILS_DEF (ANNEE_ID); / -CREATE INDEX TBL_CSD_GTF_IDX ON TBL_CHARGENS_SEUILS_DEF (GROUPE_TYPE_FORMATION_ID); +CREATE INDEX TBL_CSD_GTF_FK ON TBL_CHARGENS_SEUILS_DEF (GROUPE_TYPE_FORMATION_ID); / -CREATE INDEX TBL_CSD_SCENARIO_IDX ON TBL_CHARGENS_SEUILS_DEF (SCENARIO_ID); +CREATE INDEX TBL_CSD_SCENARIO_FK ON TBL_CHARGENS_SEUILS_DEF (SCENARIO_ID); / -CREATE INDEX TBL_CSD_STRUCTURE_IDX ON TBL_CHARGENS_SEUILS_DEF (STRUCTURE_ID); +CREATE INDEX TBL_CSD_STRUCTURE_FK ON TBL_CHARGENS_SEUILS_DEF (STRUCTURE_ID); / -CREATE INDEX TBL_CSD_TYPE_INTERVENTION_IDX ON TBL_CHARGENS_SEUILS_DEF (TYPE_INTERVENTION_ID); +CREATE INDEX TBL_CSD_TYPE_INTERVENTION_FK ON TBL_CHARGENS_SEUILS_DEF (TYPE_INTERVENTION_ID); / -CREATE INDEX TBL_DEMS_TBL_NAME_IDX ON TBL_DEMS (TBL_NAME); +CREATE INDEX TBL_DEMS_TBL_FK ON TBL_DEMS (TBL_NAME); / CREATE UNIQUE INDEX TBL_DMEP_LIQUIDATION_PK_IDX ON TBL_DMEP_LIQUIDATION (ID); @@ -18736,7 +19050,7 @@ CREATE INDEX TBL_DMLIQ_ANNEE_FK_IDX ON TBL_DMEP_LIQUIDATION (ANNEE_ID); CREATE INDEX TBL_DMLIQ_STRUCTURE_FK_IDX ON TBL_DMEP_LIQUIDATION (STRUCTURE_ID); / -CREATE INDEX TBL_DMLIQ_TYPE_RESSOUR_FK ON TBL_DMEP_LIQUIDATION (TYPE_RESSOURCE_ID); +CREATE INDEX TBL_DMLIQ_TYPE_RESSOURCE_FK ON TBL_DMEP_LIQUIDATION (TYPE_RESSOURCE_ID); / CREATE INDEX TBL_DOSSIER_ANNEE_FK_IDX ON TBL_DOSSIER (ANNEE_ID); @@ -18757,25 +19071,25 @@ CREATE UNIQUE INDEX TBL_DOSSIER__UN_IDX ON TBL_DOSSIER (INTERVENANT_ID, TO_DELET CREATE INDEX TBL_LIEN_ACTIF_IDX ON TBL_LIEN (ACTIF); / -CREATE INDEX TBL_LIEN_LIEN_IDX ON TBL_LIEN (LIEN_ID); +CREATE INDEX TBL_LIEN_LIEN_FK ON TBL_LIEN (LIEN_ID); / -CREATE INDEX TBL_LIEN_NOEUD_INF_IDX ON TBL_LIEN (NOEUD_INF_ID); +CREATE INDEX TBL_LIEN_NOEUD_INF_FK ON TBL_LIEN (NOEUD_INF_ID); / -CREATE INDEX TBL_LIEN_NOEUD_SUP_IDX ON TBL_LIEN (NOEUD_SUP_ID); +CREATE INDEX TBL_LIEN_NOEUD_SUP_FK ON TBL_LIEN (NOEUD_SUP_ID); / CREATE UNIQUE INDEX TBL_LIEN_PK ON TBL_LIEN (ID); / -CREATE INDEX TBL_LIEN_SCENARIO_IDX ON TBL_LIEN (SCENARIO_ID); +CREATE INDEX TBL_LIEN_SCENARIO_FK ON TBL_LIEN (SCENARIO_ID); / -CREATE INDEX TBL_LIEN_SCENARIO_LIEN_IDX ON TBL_LIEN (SCENARIO_LIEN_ID); +CREATE INDEX TBL_LIEN_SCENARIO_LIEN_FK ON TBL_LIEN (SCENARIO_LIEN_ID); / -CREATE INDEX TBL_LIEN_STRUCTURE_IDX ON TBL_LIEN (STRUCTURE_ID); +CREATE INDEX TBL_LIEN_STRUCTURE_FK ON TBL_LIEN (STRUCTURE_ID); / CREATE INDEX TBL_NOEUD_ANNEE_IDX ON TBL_NOEUD (ANNEE_ID); @@ -18805,7 +19119,7 @@ CREATE INDEX TBL_PAIEMENT_FRSR_FK_IDX ON TBL_PAIEMENT (FORMULE_RES_SERVICE_REF_I CREATE INDEX TBL_PAIEMENT_FRS_FK_IDX ON TBL_PAIEMENT (FORMULE_RES_SERVICE_ID); / -CREATE INDEX TBL_PAIEMENT_INTERV_FK_IDX ON TBL_PAIEMENT (INTERVENANT_ID); +CREATE INDEX TBL_PAIEMENT_INTERVENANT_FK ON TBL_PAIEMENT (INTERVENANT_ID); / CREATE INDEX TBL_PAIEMENT_MEP_FK_IDX ON TBL_PAIEMENT (MISE_EN_PAIEMENT_ID); @@ -18841,7 +19155,7 @@ CREATE INDEX TBL_PJD_INTERVENANT_FK_IDX ON TBL_PIECE_JOINTE_DEMANDE (INTERVENANT CREATE UNIQUE INDEX TBL_PJD_PK_IDX ON TBL_PIECE_JOINTE_DEMANDE (ID); / -CREATE INDEX TBL_PJD_TPJ_FK_IDX ON TBL_PIECE_JOINTE_DEMANDE (TYPE_PIECE_JOINTE_ID); +CREATE INDEX TBL_PJD_TYPE_PIECE_JOINTE_FK ON TBL_PIECE_JOINTE_DEMANDE (TYPE_PIECE_JOINTE_ID); / CREATE UNIQUE INDEX TBL_PJD_UN_IDX ON TBL_PIECE_JOINTE_DEMANDE (TYPE_PIECE_JOINTE_ID, INTERVENANT_ID, TO_DELETE); @@ -18862,7 +19176,7 @@ CREATE INDEX TBL_PJF_PIECE_JOINTE_FK_IDX ON TBL_PIECE_JOINTE_FOURNIE (PIECE_JOIN CREATE UNIQUE INDEX TBL_PJF_PK_IDX ON TBL_PIECE_JOINTE_FOURNIE (ID); / -CREATE INDEX TBL_PJF_TPJ_FK_IDX ON TBL_PIECE_JOINTE_FOURNIE (TYPE_PIECE_JOINTE_ID); +CREATE INDEX TBL_PJF_TYPE_PIECE_JOINTE_FK ON TBL_PIECE_JOINTE_FOURNIE (TYPE_PIECE_JOINTE_ID); / CREATE UNIQUE INDEX TBL_PJF_UN_IDX ON TBL_PIECE_JOINTE_FOURNIE (TYPE_PIECE_JOINTE_ID, INTERVENANT_ID, VALIDATION_ID, FICHIER_ID); @@ -18874,7 +19188,7 @@ CREATE INDEX TBL_PJF_VALIDATION_FK_IDX ON TBL_PIECE_JOINTE_FOURNIE (VALIDATION_I CREATE INDEX TBL_PJ_INTERVENANT_FK_IDX ON TBL_PIECE_JOINTE (INTERVENANT_ID); / -CREATE INDEX TBL_PJ_TPJ_FK_IDX ON TBL_PIECE_JOINTE (TYPE_PIECE_JOINTE_ID); +CREATE INDEX TBL_PJ_TYPE_PIECE_JOINTE_FK ON TBL_PIECE_JOINTE (TYPE_PIECE_JOINTE_ID); / CREATE UNIQUE INDEX TBL_PK ON TBL (TBL_NAME); @@ -18895,7 +19209,7 @@ CREATE INDEX TBL_SERVICE_INTERVENANT_FK_IDX ON TBL_SERVICE (INTERVENANT_ID); CREATE INDEX TBL_SERVICE_PERIODE_EP_FK_IDX ON TBL_SERVICE (ELEMENT_PEDAGOGIQUE_PERIODE_ID); / -CREATE UNIQUE INDEX TBL_SERVICE_PK_IDX ON TBL_SERVICE (ID); +CREATE UNIQUE INDEX TBL_SERVICE_PK ON TBL_SERVICE (ID); / CREATE UNIQUE INDEX TBL_SERVICE_REFERENTIEL_PK_IDX ON TBL_SERVICE_REFERENTIEL (ID); @@ -18910,7 +19224,7 @@ CREATE INDEX TBL_SERVICE_REF_ANNEE_FK_IDX ON TBL_SERVICE_REFERENTIEL (ANNEE_ID); CREATE INDEX TBL_SERVICE_REF_INTERVENANT_FK ON TBL_SERVICE_REFERENTIEL (INTERVENANT_ID); / -CREATE INDEX TBL_SERVICE_REF_STRUCTU_FK_IDX ON TBL_SERVICE_REFERENTIEL (STRUCTURE_ID); +CREATE INDEX TBL_SERVICE_REF_STRUCTURE_FK ON TBL_SERVICE_REFERENTIEL (STRUCTURE_ID); / CREATE INDEX TBL_SERVICE_REF_TVH_FK_IDX ON TBL_SERVICE_REFERENTIEL (TYPE_VOLUME_HORAIRE_ID); @@ -18934,7 +19248,7 @@ CREATE INDEX TBL_SERVICE_STRUCTURE_FKV1_IDX ON TBL_SERVICE (INTERVENANT_STRUCTUR CREATE INDEX TBL_SERVICE_STRUCTURE_FK_IDX ON TBL_SERVICE (STRUCTURE_ID); / -CREATE INDEX TBL_SERVICE_TINTERV_FK_IDX ON TBL_SERVICE (TYPE_INTERVENANT_ID); +CREATE INDEX TBL_SERVICE_TINTERVENANT_FK ON TBL_SERVICE (TYPE_INTERVENANT_ID); / CREATE INDEX TBL_SERVICE_TVH_FK_IDX ON TBL_SERVICE (TYPE_VOLUME_HORAIRE_ID); @@ -18946,7 +19260,7 @@ CREATE INDEX TBL_SERVICE_TVH_IDX_IDX ON TBL_SERVICE (TYPE_VOLUME_HORAIRE_CODE); CREATE INDEX TBL_SERVICE_TYPE_INT_IDX ON TBL_SERVICE (TYPE_INTERVENANT_CODE); / -CREATE UNIQUE INDEX TBL_SERVICE__UN_IDX ON TBL_SERVICE (SERVICE_ID, TYPE_VOLUME_HORAIRE_ID, TO_DELETE); +CREATE UNIQUE INDEX TBL_SERVICE__UN ON TBL_SERVICE (SERVICE_ID, TYPE_VOLUME_HORAIRE_ID, TO_DELETE); / CREATE UNIQUE INDEX TBL_VALIDATION_ENSEIGNEMENT_PK ON TBL_VALIDATION_ENSEIGNEMENT (ID); @@ -18958,7 +19272,7 @@ CREATE UNIQUE INDEX TBL_VALIDATION_ENSEIGNEMENT_UN ON TBL_VALIDATION_ENSEIGNEMEN CREATE UNIQUE INDEX TBL_VALIDATION_REFERENTIEL_PK ON TBL_VALIDATION_REFERENTIEL (ID); / -CREATE UNIQUE INDEX TBL_VALIDATION_REFERENTIEL__UN ON TBL_VALIDATION_REFERENTIEL (INTERVENANT_ID, STRUCTURE_ID, TYPE_VOLUME_HORAIRE_ID, SERVICE_REFERENTIEL_ID, VALIDATION_ID, VOLUME_HORAIRE_REF_ID, TO_DELETE); +CREATE UNIQUE INDEX TBL_VALIDATION_REFERENTIEL__UN ON TBL_VALIDATION_REFERENTIEL (INTERVENANT_ID, STRUCTURE_ID, TYPE_VOLUME_HORAIRE_ID, SERVICE_REFERENTIEL_ID, VOLUME_HORAIRE_REF_ID, VALIDATION_ID, TO_DELETE); / CREATE INDEX TBL_WORKFLOW_ANNEE_FK_IDX ON TBL_WORKFLOW (ANNEE_ID); @@ -18979,7 +19293,7 @@ CREATE UNIQUE INDEX TBL_WORKFLOW_PK_IDX ON TBL_WORKFLOW (ID); CREATE INDEX TBL_WORKFLOW_SFK_IDX ON TBL_WORKFLOW (STRUCTURE_ID); / -CREATE INDEX TBL_WORKFLOW_TINTERV_FK_IDX ON TBL_WORKFLOW (TYPE_INTERVENANT_ID); +CREATE INDEX TBL_WORKFLOW_TINTERVENANT_FK ON TBL_WORKFLOW (TYPE_INTERVENANT_ID); / CREATE INDEX TBL_WORKFLOW_TYPE_INT_IDX ON TBL_WORKFLOW (TYPE_INTERVENANT_CODE); @@ -18994,10 +19308,7 @@ CREATE INDEX TD_TYPE_RESSOURCE_FK_IDX ON TYPE_DOTATION (TYPE_RESSOURCE_ID); CREATE UNIQUE INDEX TEST_BUFFER_PK ON TEST_BUFFER (ID); / -CREATE INDEX TIEP_EP_FK_IDX ON TYPE_INTERVENTION_EP (ELEMENT_PEDAGOGIQUE_ID); -/ - -CREATE INDEX TIEP_SOURCE_FK_IDX ON TYPE_INTERVENTION_EP (SOURCE_ID); +CREATE INDEX TIEP_ELEMENT_PEDAGOGIQUE_FK ON TYPE_INTERVENTION_EP (ELEMENT_PEDAGOGIQUE_ID); / CREATE INDEX TIEP_TYPE_INTERVENTION_FK_IDX ON TYPE_INTERVENTION_EP (TYPE_INTERVENTION_ID); @@ -19009,15 +19320,6 @@ CREATE INDEX TIS_ANNEE_DEBUT_FK_IDX ON TYPE_INTERVENTION_STRUCTURE (ANNEE_DEBUT_ CREATE INDEX TIS_ANNEE_FIN_FK_IDX ON TYPE_INTERVENTION_STRUCTURE (ANNEE_FIN_ID); / -CREATE INDEX TIS_HCFK_IDX ON TYPE_INTERVENTION_STRUCTURE (HISTO_CREATEUR_ID); -/ - -CREATE INDEX TIS_HDFK_IDX ON TYPE_INTERVENTION_STRUCTURE (HISTO_DESTRUCTEUR_ID); -/ - -CREATE INDEX TIS_HMFK_IDX ON TYPE_INTERVENTION_STRUCTURE (HISTO_MODIFICATEUR_ID); -/ - CREATE INDEX TIS_STRUCTURE_FK_IDX ON TYPE_INTERVENTION_STRUCTURE (STRUCTURE_ID); / @@ -19027,9 +19329,6 @@ CREATE INDEX TIS_TYPE_INTERVENTION_FK_IDX ON TYPE_INTERVENTION_STRUCTURE (TYPE_I CREATE INDEX TME_ELEMENT_PEDAGOGIQUE_FK_IDX ON TYPE_MODULATEUR_EP (ELEMENT_PEDAGOGIQUE_ID); / -CREATE INDEX TME_SOURCE_FK_IDX ON TYPE_MODULATEUR_EP (SOURCE_ID); -/ - CREATE INDEX TME_TYPE_MODULATEUR_FK_IDX ON TYPE_MODULATEUR_EP (TYPE_MODULATEUR_ID); / @@ -19039,34 +19338,16 @@ CREATE INDEX TMS_ANNEE_DEBUT_FK_IDX ON TYPE_MODULATEUR_STRUCTURE (ANNEE_DEBUT_ID CREATE INDEX TMS_ANNEE_FIN_FK_IDX ON TYPE_MODULATEUR_STRUCTURE (ANNEE_FIN_ID); / -CREATE INDEX TMS_HCFK_IDX ON TYPE_MODULATEUR_STRUCTURE (HISTO_CREATEUR_ID); -/ - -CREATE INDEX TMS_HDFK_IDX ON TYPE_MODULATEUR_STRUCTURE (HISTO_DESTRUCTEUR_ID); -/ - -CREATE INDEX TMS_HMFK_IDX ON TYPE_MODULATEUR_STRUCTURE (HISTO_MODIFICATEUR_ID); -/ - CREATE INDEX TMS_STRUCTURE_FK_IDX ON TYPE_MODULATEUR_STRUCTURE (STRUCTURE_ID); / CREATE INDEX TMS_TYPE_MODUL_FK_IDX ON TYPE_MODULATEUR_STRUCTURE (TYPE_MODULATEUR_ID); / -CREATE INDEX TPJS_ANNEE_DEBUT_IDX ON TYPE_PIECE_JOINTE_STATUT (ANNEE_DEBUT_ID); -/ - -CREATE INDEX TPJS_ANNEE_FIN_IDX ON TYPE_PIECE_JOINTE_STATUT (ANNEE_FIN_ID); +CREATE INDEX TPJS_ANNEE_DEB_FK ON TYPE_PIECE_JOINTE_STATUT (ANNEE_DEBUT_ID); / -CREATE INDEX TPJS_HCFK_IDX ON TYPE_PIECE_JOINTE_STATUT (HISTO_CREATEUR_ID); -/ - -CREATE INDEX TPJS_HDFK_IDX ON TYPE_PIECE_JOINTE_STATUT (HISTO_DESTRUCTEUR_ID); -/ - -CREATE INDEX TPJS_HMFK_IDX ON TYPE_PIECE_JOINTE_STATUT (HISTO_MODIFICATEUR_ID); +CREATE INDEX TPJS_ANNEE_FIN_FK ON TYPE_PIECE_JOINTE_STATUT (ANNEE_FIN_ID); / CREATE INDEX TPJS_STATUT_INTERVENANT_FK_IDX ON TYPE_PIECE_JOINTE_STATUT (STATUT_INTERVENANT_ID); @@ -19111,9 +19392,6 @@ CREATE INDEX TVR_STRUCTURE_FK_IDX ON TBL_VALIDATION_REFERENTIEL (STRUCTURE_ID); CREATE INDEX TVR_TYPE_VOLUME_HORAIRE_FK_IDX ON TBL_VALIDATION_REFERENTIEL (TYPE_VOLUME_HORAIRE_ID); / -CREATE UNIQUE INDEX TVR_UN_IDX ON TBL_VALIDATION_REFERENTIEL (INTERVENANT_ID, STRUCTURE_ID, TYPE_VOLUME_HORAIRE_ID, SERVICE_REFERENTIEL_ID, VOLUME_HORAIRE_REF_ID, VALIDATION_ID, TO_DELETE); -/ - CREATE INDEX TVR_VALIDATION_FK_IDX ON TBL_VALIDATION_REFERENTIEL (VALIDATION_ID); / @@ -19231,6 +19509,12 @@ CREATE INDEX TYPE_INTERVENANT_HMFK_IDX ON TYPE_INTERVENANT (HISTO_MODIFICATEUR_I CREATE UNIQUE INDEX TYPE_INTERVENANT_PK ON TYPE_INTERVENANT (ID); / +CREATE INDEX TYPE_INTERVENTION_ANNEE_FK ON TYPE_INTERVENTION (ANNEE_DEBUT_ID); +/ + +CREATE INDEX TYPE_INTERVENTION_ANNEE_FKV1 ON TYPE_INTERVENTION (ANNEE_FIN_ID); +/ + CREATE INDEX TYPE_INTERVENTION_EP_HCFK_IDX ON TYPE_INTERVENTION_EP (HISTO_CREATEUR_ID); / @@ -19243,6 +19527,9 @@ CREATE INDEX TYPE_INTERVENTION_EP_HMFK_IDX ON TYPE_INTERVENTION_EP (HISTO_MODIFI CREATE UNIQUE INDEX TYPE_INTERVENTION_EP_PK ON TYPE_INTERVENTION_EP (ID); / +CREATE INDEX TYPE_INTERVENTION_EP_SOURCE_FK ON TYPE_INTERVENTION_EP (SOURCE_ID); +/ + CREATE INDEX TYPE_INTERVENTION_HCFK_IDX ON TYPE_INTERVENTION (HISTO_CREATEUR_ID); / @@ -19264,10 +19551,13 @@ CREATE UNIQUE INDEX TYPE_INTERVENTION_STATUT__UN ON TYPE_INTERVENTION_STATUT (TY CREATE UNIQUE INDEX TYPE_INTERVENTION_STRUCTURE_PK ON TYPE_INTERVENTION_STRUCTURE (ID); / -CREATE INDEX TYPE_INTERV_ANNEE_DEBUT_IDX ON TYPE_INTERVENTION (ANNEE_DEBUT_ID); +CREATE INDEX TYPE_INTERVENTION_STRUCTU_HCFK ON TYPE_INTERVENTION_STRUCTURE (HISTO_CREATEUR_ID); +/ + +CREATE INDEX TYPE_INTERVENTION_STRUCTU_HDFK ON TYPE_INTERVENTION_STRUCTURE (HISTO_DESTRUCTEUR_ID); / -CREATE INDEX TYPE_INTERV_ANNEE_FIN_IDX ON TYPE_INTERVENTION (ANNEE_FIN_ID); +CREATE INDEX TYPE_INTERVENTION_STRUCTU_HMFK ON TYPE_INTERVENTION_STRUCTURE (HISTO_MODIFICATEUR_ID); / CREATE INDEX TYPE_MODULATEUR_EP_HCFK_IDX ON TYPE_MODULATEUR_EP (HISTO_CREATEUR_ID); @@ -19282,6 +19572,9 @@ CREATE INDEX TYPE_MODULATEUR_EP_HMFK_IDX ON TYPE_MODULATEUR_EP (HISTO_MODIFICATE CREATE UNIQUE INDEX TYPE_MODULATEUR_EP_PK ON TYPE_MODULATEUR_EP (ID); / +CREATE INDEX TYPE_MODULATEUR_EP_SOURCE_FK ON TYPE_MODULATEUR_EP (SOURCE_ID); +/ + CREATE UNIQUE INDEX TYPE_MODULATEUR_EP__UN ON TYPE_MODULATEUR_EP (SOURCE_CODE); / @@ -19300,10 +19593,19 @@ CREATE INDEX TYPE_MODULATEUR_HMFK_IDX ON TYPE_MODULATEUR (HISTO_MODIFICATEUR_ID) CREATE UNIQUE INDEX TYPE_MODULATEUR_PK ON TYPE_MODULATEUR (ID); / +CREATE INDEX TYPE_MODULATEUR_STRUCTURE_HCFK ON TYPE_MODULATEUR_STRUCTURE (HISTO_CREATEUR_ID); +/ + +CREATE INDEX TYPE_MODULATEUR_STRUCTURE_HDFK ON TYPE_MODULATEUR_STRUCTURE (HISTO_DESTRUCTEUR_ID); +/ + +CREATE INDEX TYPE_MODULATEUR_STRUCTURE_HMFK ON TYPE_MODULATEUR_STRUCTURE (HISTO_MODIFICATEUR_ID); +/ + CREATE UNIQUE INDEX TYPE_MODULATEUR_STRUCTURE_PK ON TYPE_MODULATEUR_STRUCTURE (ID); / -CREATE UNIQUE INDEX TYPE_MODULATEUR_STRUCTURE_UN ON TYPE_MODULATEUR_STRUCTURE (TYPE_MODULATEUR_ID, STRUCTURE_ID); +CREATE UNIQUE INDEX TYPE_MODULATEUR_STRUCTURE_UN ON TYPE_MODULATEUR_STRUCTURE (TYPE_MODULATEUR_ID, STRUCTURE_ID, ANNEE_DEBUT_ID, HISTO_DESTRUCTION); / CREATE INDEX TYPE_PIECE_JOINTE_HCFK_IDX ON TYPE_PIECE_JOINTE (HISTO_CREATEUR_ID); @@ -19318,6 +19620,15 @@ CREATE INDEX TYPE_PIECE_JOINTE_HMFK_IDX ON TYPE_PIECE_JOINTE (HISTO_MODIFICATEUR CREATE UNIQUE INDEX TYPE_PIECE_JOINTE_PK ON TYPE_PIECE_JOINTE (ID); / +CREATE INDEX TYPE_PIECE_JOINTE_STATUT_HCFK ON TYPE_PIECE_JOINTE_STATUT (HISTO_CREATEUR_ID); +/ + +CREATE INDEX TYPE_PIECE_JOINTE_STATUT_HDFK ON TYPE_PIECE_JOINTE_STATUT (HISTO_DESTRUCTEUR_ID); +/ + +CREATE INDEX TYPE_PIECE_JOINTE_STATUT_HMFK ON TYPE_PIECE_JOINTE_STATUT (HISTO_MODIFICATEUR_ID); +/ + CREATE UNIQUE INDEX TYPE_PIECE_JOINTE_STATUT_PK ON TYPE_PIECE_JOINTE_STATUT (ID); / @@ -19354,6 +19665,9 @@ CREATE UNIQUE INDEX TYPE_VOLUME_HORAIRE_PK ON TYPE_VOLUME_HORAIRE (ID); CREATE UNIQUE INDEX TYPE_VOLUME_HORAIRE__UN ON TYPE_VOLUME_HORAIRE (CODE); / +CREATE UNIQUE INDEX USER_PASSWORD_RESET_TOKEN_UN ON UTILISATEUR (PASSWORD_RESET_TOKEN); +/ + CREATE UNIQUE INDEX UTILISATEUR_PK ON UTILISATEUR (ID); / @@ -19393,13 +19707,16 @@ CREATE UNIQUE INDEX VERSION_PK ON VERSION (NUMERO); CREATE UNIQUE INDEX VHC_HISTO_UN ON VOLUME_HORAIRE_CHARGE (SOURCE_CODE, HISTO_DESTRUCTION); / -CREATE INDEX VHENS_EP_FK_IDX ON VOLUME_HORAIRE_ENS (ELEMENT_PEDAGOGIQUE_ID); +CREATE INDEX VHC_SCENARIO_FK ON VOLUME_HORAIRE_CHARGE (SCENARIO_ID); / -CREATE INDEX VHENS_TYPE_INTERVENTION_FK_IDX ON VOLUME_HORAIRE_ENS (TYPE_INTERVENTION_ID); +CREATE INDEX VHC_TYPE_INTERVENTION_FK ON VOLUME_HORAIRE_CHARGE (TYPE_INTERVENTION_ID); / -CREATE INDEX VHE_SOURCE_FK_IDX ON VOLUME_HORAIRE_ENS (SOURCE_ID); +CREATE INDEX VHENS_ELEMENT_PEDAGOGIQUE_FK ON VOLUME_HORAIRE_ENS (ELEMENT_PEDAGOGIQUE_ID); +/ + +CREATE INDEX VHENS_TYPE_INTERVENTION_FK_IDX ON VOLUME_HORAIRE_ENS (TYPE_INTERVENTION_ID); / CREATE INDEX VHIT_FK_IDX ON VOLUME_HORAIRE (TYPE_INTERVENTION_ID); @@ -19417,34 +19734,28 @@ CREATE INDEX VHR_TYPE_VOLUME_HORAIRE_FK_IDX ON VOLUME_HORAIRE_REF (TYPE_VOLUME_H CREATE INDEX VH_PERIODE_FK_IDX ON VOLUME_HORAIRE (PERIODE_ID); / -CREATE INDEX VH_SERVICES_FK_IDX ON VOLUME_HORAIRE (SERVICE_ID); -/ - CREATE INDEX VH_TYPE_VOLUME_HORAIRE_FK_IDX ON VOLUME_HORAIRE (TYPE_VOLUME_HORAIRE_ID); / -CREATE INDEX VOLUME_HORAIRE_CHARGE_HC_IDX ON VOLUME_HORAIRE_CHARGE (HISTO_CREATEUR_ID); +CREATE INDEX VOLUMES_HORAIRES_SERVICES_FK ON VOLUME_HORAIRE (SERVICE_ID); / -CREATE INDEX VOLUME_HORAIRE_CHARGE_HD_IDX ON VOLUME_HORAIRE_CHARGE (HISTO_DESTRUCTEUR_ID); +CREATE INDEX VOLUME_HORAIRE_CHARGE_HCFK ON VOLUME_HORAIRE_CHARGE (HISTO_CREATEUR_ID); / -CREATE INDEX VOLUME_HORAIRE_CHARGE_HM_IDX ON VOLUME_HORAIRE_CHARGE (HISTO_MODIFICATEUR_ID); -/ - -CREATE UNIQUE INDEX VOLUME_HORAIRE_CHARGE_PK ON VOLUME_HORAIRE_CHARGE (ID); +CREATE INDEX VOLUME_HORAIRE_CHARGE_HDFK ON VOLUME_HORAIRE_CHARGE (HISTO_DESTRUCTEUR_ID); / -CREATE INDEX VOLUME_HORAIRE_CHARGE_SC_IDX ON VOLUME_HORAIRE_CHARGE (SCENARIO_ID); +CREATE INDEX VOLUME_HORAIRE_CHARGE_HMFK ON VOLUME_HORAIRE_CHARGE (HISTO_MODIFICATEUR_ID); / -CREATE INDEX VOLUME_HORAIRE_CHARGE_SRC_IDX ON VOLUME_HORAIRE_CHARGE (SOURCE_ID); +CREATE UNIQUE INDEX VOLUME_HORAIRE_CHARGE_PK ON VOLUME_HORAIRE_CHARGE (ID); / -CREATE INDEX VOLUME_HORAIRE_CHARGE_TI_IDX ON VOLUME_HORAIRE_CHARGE (TYPE_INTERVENTION_ID); +CREATE UNIQUE INDEX VOLUME_HORAIRE_CHARGE__UN ON VOLUME_HORAIRE_CHARGE (ELEMENT_PEDAGOGIQUE_ID, TYPE_INTERVENTION_ID, HISTO_DESTRUCTION); / -CREATE UNIQUE INDEX VOLUME_HORAIRE_CHARGE__UN ON VOLUME_HORAIRE_CHARGE (ELEMENT_PEDAGOGIQUE_ID, TYPE_INTERVENTION_ID, HISTO_DESTRUCTION); +CREATE INDEX VOLUME_HORAIRE_CHARG_SOURCE_FK ON VOLUME_HORAIRE_CHARGE (SOURCE_ID); / CREATE INDEX VOLUME_HORAIRE_CONTRAT_FK_IDX ON VOLUME_HORAIRE (CONTRAT_ID); @@ -19462,6 +19773,9 @@ CREATE INDEX VOLUME_HORAIRE_ENS_HMFK_IDX ON VOLUME_HORAIRE_ENS (HISTO_MODIFICATE CREATE UNIQUE INDEX VOLUME_HORAIRE_ENS_PK ON VOLUME_HORAIRE_ENS (ID); / +CREATE INDEX VOLUME_HORAIRE_ENS_SOURCE_FK ON VOLUME_HORAIRE_ENS (SOURCE_ID); +/ + CREATE UNIQUE INDEX VOLUME_HORAIRE_ENS_UK1 ON VOLUME_HORAIRE_ENS (SOURCE_CODE, HISTO_DESTRUCTION); / @@ -19694,6 +20008,9 @@ ALTER TABLE IMPORT_TABLES ADD CONSTRAINT IMPORT_TABLES_PK PRIMARY KEY (TABLE_NAM ALTER TABLE INDICATEUR ADD CONSTRAINT INDICATEUR_PK PRIMARY KEY (ID) USING INDEX INDICATEUR_PK ENABLE; / +ALTER TABLE INDIC_MODIF_DOSSIER ADD CONSTRAINT INDIC_MODIF_DOSSIER_PK PRIMARY KEY (ID) USING INDEX INDIC_MODIF_DOSSIER_PK ENABLE; +/ + ALTER TABLE LISTE_NOIRE ADD CONSTRAINT INTERVENANT_LISTE_NOIRE_PK PRIMARY KEY (CODE) USING INDEX INTERVENANT_LISTE_NOIRE_PK ENABLE; / @@ -19838,19 +20155,19 @@ ALTER TABLE TBL_LIEN ADD CONSTRAINT TBL_LIEN_PK PRIMARY KEY (ID) USING INDEX TBL ALTER TABLE TBL_PAIEMENT ADD CONSTRAINT TBL_PAIEMENT_PK PRIMARY KEY (ID) USING INDEX TBL_PAIEMENT_PK_IDX ENABLE; / -ALTER TABLE TBL_PIECE_JOINTE_DEMANDE ADD CONSTRAINT TBL_PIECE_JOINTE_DEMANDE_PK PRIMARY KEY (ID) USING INDEX TBL_PJD_PK_IDX ENABLE; +ALTER TABLE TBL_PIECE_JOINTE ADD CONSTRAINT TBL_PIECE_JOINTE_PK PRIMARY KEY (ID) USING INDEX TBL_PIECE_JOINTE_PK_IDX ENABLE; / -ALTER TABLE TBL_PIECE_JOINTE_FOURNIE ADD CONSTRAINT TBL_PIECE_JOINTE_FOURNIE_PK PRIMARY KEY (ID) USING INDEX TBL_PJF_PK_IDX ENABLE; +ALTER TABLE TBL_PIECE_JOINTE_DEMANDE ADD CONSTRAINT TBL_PJD_PK PRIMARY KEY (ID) USING INDEX TBL_PJD_PK_IDX ENABLE; / -ALTER TABLE TBL_PIECE_JOINTE ADD CONSTRAINT TBL_PIECE_JOINTE_PK PRIMARY KEY (ID) USING INDEX TBL_PIECE_JOINTE_PK_IDX ENABLE; +ALTER TABLE TBL_PIECE_JOINTE_FOURNIE ADD CONSTRAINT TBL_PJF_PK PRIMARY KEY (ID) USING INDEX TBL_PJF_PK_IDX ENABLE; / ALTER TABLE TBL ADD CONSTRAINT TBL_PK PRIMARY KEY (TBL_NAME) USING INDEX TBL_PK ENABLE; / -ALTER TABLE TBL_SERVICE ADD CONSTRAINT TBL_SERVICE_PK PRIMARY KEY (ID) USING INDEX TBL_SERVICE_PK_IDX ENABLE; +ALTER TABLE TBL_SERVICE ADD CONSTRAINT TBL_SERVICE_PK PRIMARY KEY (ID) USING INDEX TBL_SERVICE_PK ENABLE; / ALTER TABLE TBL_SERVICE_REFERENTIEL ADD CONSTRAINT TBL_SERVICE_REFERENTIEL_PK PRIMARY KEY (ID) USING INDEX TBL_SERVICE_REFERENTIEL_PK_IDX ENABLE; @@ -19964,9 +20281,6 @@ ALTER TABLE WF_ETAPE_DEP ADD CONSTRAINT WF_ETAPE_DEP_PK PRIMARY KEY (ID) USING I ALTER TABLE WF_ETAPE ADD CONSTRAINT WF_ETAPE_PK PRIMARY KEY (ID) USING INDEX WF_ETAPE_PK ENABLE; / -ALTER TABLE INDIC_MODIF_DOSSIER ADD CONSTRAINT indic_diff_dossier_PK PRIMARY KEY (ID) USING INDEX INDIC_MODIF_DOSSIER_PK ENABLE; -/ - @@ -19987,7 +20301,7 @@ ALTER TABLE ADRESSE_INTERVENANT ADD CONSTRAINT ADRESSE_INTERVENANT_HMFK FOREIGN / ALTER TABLE ADRESSE_INTERVENANT ADD CONSTRAINT ADRESSE_INTERVENANT_SOURCE_FK FOREIGN KEY (SOURCE_ID) - REFERENCES SOURCE (ID) ON DELETE CASCADE ENABLE; + REFERENCES SOURCE (ID) ENABLE; / ALTER TABLE ADRESSE_STRUCTURE ADD CONSTRAINT ADRESSE_STRUCTURE_HCFK FOREIGN KEY (HISTO_CREATEUR_ID) @@ -20003,7 +20317,7 @@ ALTER TABLE ADRESSE_STRUCTURE ADD CONSTRAINT ADRESSE_STRUCTURE_HMFK FOREIGN KEY / ALTER TABLE ADRESSE_STRUCTURE ADD CONSTRAINT ADRESSE_STRUCTURE_SOURCE_FK FOREIGN KEY (SOURCE_ID) - REFERENCES SOURCE (ID) ON DELETE CASCADE ENABLE; + REFERENCES SOURCE (ID) ENABLE; / ALTER TABLE ADRESSE_STRUCTURE ADD CONSTRAINT ADRESSE_STRUCTURE_STRUCTURE_FK FOREIGN KEY (STRUCTURE_ID) @@ -20147,7 +20461,7 @@ ALTER TABLE CENTRE_COUT_EP ADD CONSTRAINT CENTRE_COUT_EP_HMFK FOREIGN KEY (HISTO / ALTER TABLE CENTRE_COUT_EP ADD CONSTRAINT CENTRE_COUT_EP_SOURCE_FK FOREIGN KEY (SOURCE_ID) - REFERENCES SOURCE (ID) ON DELETE CASCADE ENABLE; + REFERENCES SOURCE (ID) ENABLE; / ALTER TABLE CENTRE_COUT ADD CONSTRAINT CENTRE_COUT_HCFK FOREIGN KEY (HISTO_CREATEUR_ID) @@ -20163,7 +20477,7 @@ ALTER TABLE CENTRE_COUT ADD CONSTRAINT CENTRE_COUT_HMFK FOREIGN KEY (HISTO_MODIF / ALTER TABLE CENTRE_COUT ADD CONSTRAINT CENTRE_COUT_SOURCE_FK FOREIGN KEY (SOURCE_ID) - REFERENCES SOURCE (ID) ON DELETE CASCADE ENABLE; + REFERENCES SOURCE (ID) ENABLE; / ALTER TABLE CENTRE_COUT_STRUCTURE ADD CONSTRAINT CENTRE_COUT_STRUCTURE_HCFK FOREIGN KEY (HISTO_CREATEUR_ID) @@ -20203,7 +20517,7 @@ ALTER TABLE CHEMIN_PEDAGOGIQUE ADD CONSTRAINT CHEMIN_PEDAGOGIQUE_HMFK FOREIGN KE / ALTER TABLE CHEMIN_PEDAGOGIQUE ADD CONSTRAINT CHEMIN_PEDAGOGIQUE_SOURCE_FK FOREIGN KEY (SOURCE_ID) - REFERENCES SOURCE (ID) ON DELETE CASCADE ENABLE; + REFERENCES SOURCE (ID) ENABLE; / ALTER TABLE CONTRAT ADD CONSTRAINT CONTRAT_CONTRAT_FK FOREIGN KEY (CONTRAT_ID) @@ -20259,7 +20573,7 @@ ALTER TABLE CORPS ADD CONSTRAINT CORPS_HMFK FOREIGN KEY (HISTO_MODIFICATEUR_ID) / ALTER TABLE CORPS ADD CONSTRAINT CORPS_SOURCE_FK FOREIGN KEY (SOURCE_ID) - REFERENCES SOURCE (ID) ON DELETE CASCADE ENABLE; + REFERENCES SOURCE (ID) ENABLE; / ALTER TABLE CHEMIN_PEDAGOGIQUE ADD CONSTRAINT CPEP_FK FOREIGN KEY (ELEMENT_PEDAGOGIQUE_ID) @@ -20483,7 +20797,7 @@ ALTER TABLE ETABLISSEMENT ADD CONSTRAINT ETABLISSEMENT_HMFK FOREIGN KEY (HISTO_M / ALTER TABLE ETABLISSEMENT ADD CONSTRAINT ETABLISSEMENT_SOURCE_FK FOREIGN KEY (SOURCE_ID) - REFERENCES SOURCE (ID) ON DELETE CASCADE ENABLE; + REFERENCES SOURCE (ID) ENABLE; / ALTER TABLE ETAPE ADD CONSTRAINT ETAPE_ANNEE_FK FOREIGN KEY (ANNEE_ID) @@ -20706,6 +21020,10 @@ ALTER TABLE HISTO_INTERVENANT_SERVICE ADD CONSTRAINT HSM_UTILISATEUR_FK FOREIGN REFERENCES UTILISATEUR (ID) ON DELETE CASCADE ENABLE; / +ALTER TABLE INDIC_MODIF_DOSSIER ADD CONSTRAINT INDIC_DIFF_DOSSIER_INT_FK FOREIGN KEY (INTERVENANT_ID) + REFERENCES INTERVENANT (ID) ON DELETE CASCADE ENABLE; +/ + ALTER TABLE INDIC_MODIF_DOSSIER ADD CONSTRAINT INDIC_MODIF_DOSSIER_HCFK FOREIGN KEY (HISTO_CREATEUR_ID) REFERENCES UTILISATEUR (ID) ENABLE; / @@ -20763,7 +21081,7 @@ ALTER TABLE INTERVENANT_SAISIE ADD CONSTRAINT INTERVENANT_SAISIE_INTERV_FK FOREI / ALTER TABLE INTERVENANT ADD CONSTRAINT INTERVENANT_SOURCE_FK FOREIGN KEY (SOURCE_ID) - REFERENCES SOURCE (ID) ON DELETE CASCADE ENABLE; + REFERENCES SOURCE (ID) ENABLE; / ALTER TABLE INTERVENANT ADD CONSTRAINT INTERVENANT_STATUT_FK FOREIGN KEY (STATUT_ID) @@ -21815,7 +22133,7 @@ ALTER TABLE TYPE_DOTATION ADD CONSTRAINT TYPE_DOTATION_HMFK FOREIGN KEY (HISTO_M / ALTER TABLE TYPE_DOTATION ADD CONSTRAINT TYPE_DOTATION_SOURCE_FK FOREIGN KEY (SOURCE_ID) - REFERENCES SOURCE (ID) ON DELETE CASCADE ENABLE; + REFERENCES SOURCE (ID) ENABLE; / ALTER TABLE TYPE_FORMATION ADD CONSTRAINT TYPE_FORMATION_GROUPE_FK FOREIGN KEY (GROUPE_ID) @@ -21887,7 +22205,7 @@ ALTER TABLE TYPE_INTERVENTION_EP ADD CONSTRAINT TYPE_INTERVENTION_EP_HMFK FOREIG / ALTER TABLE TYPE_INTERVENTION_EP ADD CONSTRAINT TYPE_INTERVENTION_EP_SOURCE_FK FOREIGN KEY (SOURCE_ID) - REFERENCES SOURCE (ID) ON DELETE CASCADE ENABLE; + REFERENCES SOURCE (ID) ENABLE; / ALTER TABLE TYPE_INTERVENTION ADD CONSTRAINT TYPE_INTERVENTION_HCFK FOREIGN KEY (HISTO_CREATEUR_ID) @@ -22166,10 +22484,6 @@ ALTER TABLE WF_DEP_BLOQUANTE ADD CONSTRAINT WF_DB_TBL_WORKFLOW_FK FOREIGN KEY (T REFERENCES TBL_WORKFLOW (ID) ON DELETE CASCADE ENABLE; / -ALTER TABLE INDIC_MODIF_DOSSIER ADD CONSTRAINT indic_diff_dossier_INT_FK FOREIGN KEY (INTERVENANT_ID) - REFERENCES INTERVENANT (ID) ON DELETE CASCADE ENABLE; -/ - @@ -22186,7 +22500,7 @@ ALTER TABLE ADRESSE_INTERVENANT ADD CONSTRAINT ADRESSE_INTERVENANT__UN UNIQUE (I ALTER TABLE ADRESSE_STRUCTURE ADD CONSTRAINT ADRESSE_STRUCTURE_SOURCE_UN UNIQUE (SOURCE_CODE) USING INDEX ADRESSE_STRUCTURE_SOURCE_UN ENABLE; / -ALTER TABLE AFFECTATION_RECHERCHE ADD CONSTRAINT AFFECTATION_RECHERCH_SRC_UN UNIQUE (SOURCE_CODE) USING INDEX AFFECTATION_R_SRC_UN ENABLE; +ALTER TABLE AFFECTATION_RECHERCHE ADD CONSTRAINT AFFECTATION_RECHERCH_SOURCE_UN UNIQUE (SOURCE_CODE) USING INDEX AFFECTATION_R_SRC_UN ENABLE; / ALTER TABLE AFFECTATION ADD CONSTRAINT AFFECTATION_SOURCE_UN UNIQUE (SOURCE_CODE) USING INDEX AFFECTATION_SOURCE_UN ENABLE; @@ -22207,16 +22521,16 @@ ALTER TABLE CATEGORIE_PRIVILEGE ADD CONSTRAINT CATEGORIE_PRIVILEGE__UN UNIQUE (C ALTER TABLE CENTRE_COUT_STRUCTURE ADD CONSTRAINT CCS_CC_S__UN UNIQUE (CENTRE_COUT_ID, STRUCTURE_ID, HISTO_DESTRUCTION) USING INDEX CCS_CC_S__UN_IDX ENABLE; / -ALTER TABLE CENTRE_COUT_STRUCTURE ADD CONSTRAINT CCS_SOURCE_CODE_UN UNIQUE (SOURCE_CODE, HISTO_DESTRUCTION) USING INDEX CCS_SOURCE_CODE_UN_IDX ENABLE; +ALTER TABLE CENTRE_COUT_EP ADD CONSTRAINT CENTRE_COUT_EP__UN UNIQUE (CENTRE_COUT_ID, ELEMENT_PEDAGOGIQUE_ID, TYPE_HEURES_ID, HISTO_DESTRUCTION) USING INDEX CENTRE_COUT_EP__UN ENABLE; / -ALTER TABLE CENTRE_COUT_EP ADD CONSTRAINT CENTRE_COUT_EP__UN UNIQUE (CENTRE_COUT_ID, ELEMENT_PEDAGOGIQUE_ID, TYPE_HEURES_ID, HISTO_DESTRUCTION) USING INDEX CENTRE_COUT_EP__UN ENABLE; +ALTER TABLE CENTRE_COUT_STRUCTURE ADD CONSTRAINT CENTRE_COUT_STRUCTUR_SOURCE_UN UNIQUE (SOURCE_CODE, HISTO_DESTRUCTION) USING INDEX CCS_SOURCE_CODE_UN_IDX ENABLE; / -ALTER TABLE CHEMIN_PEDAGOGIQUE ADD CONSTRAINT CHEMIN_PEDAGOGIQUE__UN UNIQUE (ELEMENT_PEDAGOGIQUE_ID, ETAPE_ID) ENABLE; +ALTER TABLE CHEMIN_PEDAGOGIQUE ADD CONSTRAINT CHEMIN_PEDAGOGIQUE_SOURCE_UN UNIQUE (SOURCE_CODE) USING INDEX CHEMIN_PEDAGO_SRC_ID_UN ENABLE; / -ALTER TABLE CHEMIN_PEDAGOGIQUE ADD CONSTRAINT CHEMIN_PEDAGO_SRC_ID_UN UNIQUE (SOURCE_CODE) USING INDEX CHEMIN_PEDAGO_SRC_ID_UN ENABLE; +ALTER TABLE CHEMIN_PEDAGOGIQUE ADD CONSTRAINT CHEMIN_PEDAGOGIQUE__UN UNIQUE (ELEMENT_PEDAGOGIQUE_ID, ETAPE_ID, HISTO_DESTRUCTION) USING INDEX CHEMIN_PEDAGOGIQUE__UN ENABLE; / ALTER TABLE CIVILITE ADD CONSTRAINT CIVILITE_LIBELLE_COURT_UN UNIQUE (LIBELLE_COURT) USING INDEX CIVILITE_LIBELLE_COURT_UN ENABLE; @@ -22237,31 +22551,31 @@ ALTER TABLE DOSSIER ADD CONSTRAINT DOSSIER_UK1 UNIQUE (HISTO_DESTRUCTION) USING ALTER TABLE DOTATION ADD CONSTRAINT DOTATION__UN UNIQUE (TYPE_RESSOURCE_ID, ANNEE_ID, ANNEE_CIVILE, STRUCTURE_ID, LIBELLE, HISTO_DESTRUCTION) USING INDEX DOTATION__UN ENABLE; / -ALTER TABLE EFFECTIFS ADD CONSTRAINT EFFECTIFS__UN UNIQUE (SOURCE_CODE, ANNEE_ID) USING INDEX EFFECTIFS__UN ENABLE; +ALTER TABLE EFFECTIFS ADD CONSTRAINT EFFECTIFS_SOURCE_UN UNIQUE (SOURCE_CODE, ANNEE_ID) USING INDEX EFFECTIFS__UN ENABLE; / ALTER TABLE ELEMENT_MODULATEUR ADD CONSTRAINT ELEMENT_MODULATEUR__UN UNIQUE (ELEMENT_ID, MODULATEUR_ID, HISTO_DESTRUCTION) USING INDEX ELEMENT_MODULATEUR__UN ENABLE; / -ALTER TABLE ELEMENT_TAUX_REGIMES ADD CONSTRAINT ELEMENT_TAUX_REGIMES__UN UNIQUE (SOURCE_CODE, HISTO_DESTRUCTION) USING INDEX ELEMENT_TAUX_REGIMES__UN ENABLE; +ALTER TABLE ELEMENT_PEDAGOGIQUE ADD CONSTRAINT ELEMENT_PEDAGOGIQUE_SOURCE_UN UNIQUE (SOURCE_CODE, ANNEE_ID, HISTO_DESTRUCTION) USING INDEX EP_SRC_UN ENABLE; / -ALTER TABLE ELEMENT_TAUX_REGIMES ADD CONSTRAINT ELEMENT_TAUX_REGIMES__UNV1 UNIQUE (ELEMENT_PEDAGOGIQUE_ID, HISTO_DESTRUCTION) USING INDEX ELEMENT_TAUX_REGIMES__UNV1 ENABLE; +ALTER TABLE ELEMENT_TAUX_REGIMES ADD CONSTRAINT ELEMENT_TAUX_REGIMES_SOURCE_UN UNIQUE (SOURCE_CODE, HISTO_DESTRUCTION) USING INDEX ELEMENT_TAUX_REGIMES__UN ENABLE; / -ALTER TABLE ELEMENT_PEDAGOGIQUE ADD CONSTRAINT EP_CODE_UN UNIQUE (CODE, HISTO_DESTRUCTION, ANNEE_ID) USING INDEX EP_CODE_UN ENABLE; +ALTER TABLE ELEMENT_TAUX_REGIMES ADD CONSTRAINT ELEMENT_TAUX_REGIMES__UNV1 UNIQUE (ELEMENT_PEDAGOGIQUE_ID, HISTO_DESTRUCTION) USING INDEX ELEMENT_TAUX_REGIMES__UNV1 ENABLE; / -ALTER TABLE ELEMENT_PEDAGOGIQUE ADD CONSTRAINT EP_SRC_UN UNIQUE (SOURCE_CODE, ANNEE_ID, HISTO_DESTRUCTION) USING INDEX EP_SRC_UN ENABLE; +ALTER TABLE ELEMENT_PEDAGOGIQUE ADD CONSTRAINT EP_CODE_UN UNIQUE (CODE, HISTO_DESTRUCTION, ANNEE_ID) USING INDEX EP_CODE_UN ENABLE; / -ALTER TABLE ETABLISSEMENT ADD CONSTRAINT ETABLISSEMENT_SOURCE_ID_UN UNIQUE (SOURCE_CODE) USING INDEX ETABLISSEMENT_SOURCE_ID_UN ENABLE; +ALTER TABLE ETABLISSEMENT ADD CONSTRAINT ETABLISSEMENT_SOURCE_UN UNIQUE (SOURCE_CODE, HISTO_DESTRUCTION) USING INDEX ETABLISSEMENT_SOURCE_UN ENABLE; / ALTER TABLE ETAPE ADD CONSTRAINT ETAPE_CODE_UN UNIQUE (CODE, ANNEE_ID, HISTO_DESTRUCTION) USING INDEX ETAPE_CODE_UN ENABLE; / -ALTER TABLE ETAPE ADD CONSTRAINT ETAPE_SRC_UN UNIQUE (SOURCE_CODE, HISTO_DESTRUCTION, ANNEE_ID) USING INDEX ETAPE_SRC_UN ENABLE; +ALTER TABLE ETAPE ADD CONSTRAINT ETAPE_SOURCE_UN UNIQUE (SOURCE_CODE, HISTO_DESTRUCTION, ANNEE_ID) USING INDEX ETAPE_SRC_UN ENABLE; / ALTER TABLE ETAT_SORTIE ADD CONSTRAINT ETAT_SORTIE_CODE_UN UNIQUE (CODE) USING INDEX ETAT_SORTIE_CODE_UN ENABLE; @@ -22282,10 +22596,10 @@ ALTER TABLE FORMULE_TEST_STRUCTURE ADD CONSTRAINT FORMULE_TEST_STRUCTURE__UN UNI ALTER TABLE FORMULE ADD CONSTRAINT FORMULE__UN UNIQUE (LIBELLE) USING INDEX FORMULE__UN ENABLE; / -ALTER TABLE GROUPE ADD CONSTRAINT GROUPE__UN UNIQUE (ELEMENT_PEDAGOGIQUE_ID, HISTO_DESTRUCTEUR_ID, TYPE_INTERVENTION_ID) USING INDEX GROUPE__UN ENABLE; +ALTER TABLE GROUPE_TYPE_FORMATION ADD CONSTRAINT GROUPE_TYPE_FORMATIO_SOURCE_UN UNIQUE (SOURCE_CODE) USING INDEX GTYPE_FORMATION_SOURCE_UN ENABLE; / -ALTER TABLE GROUPE_TYPE_FORMATION ADD CONSTRAINT GTYPE_FORMATION_SOURCE_UN UNIQUE (SOURCE_CODE) USING INDEX GTYPE_FORMATION_SOURCE_UN ENABLE; +ALTER TABLE GROUPE ADD CONSTRAINT GROUPE__UN UNIQUE (ELEMENT_PEDAGOGIQUE_ID, HISTO_DESTRUCTEUR_ID, TYPE_INTERVENTION_ID) USING INDEX GROUPE__UN ENABLE; / ALTER TABLE HISTO_INTERVENANT_SERVICE ADD CONSTRAINT HISTO_INTERVENANT_SERVICE__UN UNIQUE (INTERVENANT_ID, TYPE_VOLUME_HORAIRE_ID, REFERENTIEL) USING INDEX HISTO_INTERVENANT_SERVICE__UN ENABLE; @@ -22297,13 +22611,13 @@ ALTER TABLE INTERVENANT ADD CONSTRAINT INTERVENANT_CODE_UN UNIQUE (CODE, ANNEE_I ALTER TABLE INTERVENANT_SAISIE ADD CONSTRAINT INTERVENANT_SAISIE__UN UNIQUE (INTERVENANT_ID) USING INDEX INTERVENANT_SAISIE__UN ENABLE; / -ALTER TABLE INTERVENANT ADD CONSTRAINT INTERVENANT_SOURCE__UN UNIQUE (SOURCE_CODE, ANNEE_ID) USING INDEX INTERVENANT_SOURCE__UN ENABLE; +ALTER TABLE INTERVENANT ADD CONSTRAINT INTERVENANT_SOURCE_UN UNIQUE (SOURCE_CODE, ANNEE_ID, HISTO_DESTRUCTION) USING INDEX INTERVENANT_SOURCE_UN ENABLE; / ALTER TABLE INTERVENANT ADD CONSTRAINT INTERVENANT_UTIL_CODE_UN UNIQUE (UTILISATEUR_CODE, ANNEE_ID, STATUT_ID) USING INDEX INTERVENANT_UTIL_CODE_UN ENABLE; / -ALTER TABLE LIEN ADD CONSTRAINT LIEN_SRC_UN UNIQUE (SOURCE_CODE, HISTO_DESTRUCTION) USING INDEX LIEN_SRC_UN ENABLE; +ALTER TABLE LIEN ADD CONSTRAINT LIEN_SOURCE_UN UNIQUE (SOURCE_CODE, HISTO_DESTRUCTION) USING INDEX LIEN_SRC_UN ENABLE; / ALTER TABLE MODULATEUR ADD CONSTRAINT MODULATEUR__UN UNIQUE (CODE) USING INDEX MODULATEUR__UN ENABLE; @@ -22312,13 +22626,13 @@ ALTER TABLE MODULATEUR ADD CONSTRAINT MODULATEUR__UN UNIQUE (CODE) USING INDEX M ALTER TABLE MOTIF_MODIFICATION_SERVICE ADD CONSTRAINT MOTIF_MODIFICATION_SERVIC_UK1 UNIQUE (CODE) USING INDEX MOTIF_MODIFICATION_SERVIC_UK1 ENABLE; / -ALTER TABLE NOEUD ADD CONSTRAINT NOEUD_SRC_UN UNIQUE (SOURCE_CODE, HISTO_DESTRUCTION) USING INDEX NOEUD_SRC_UN ENABLE; +ALTER TABLE NOEUD ADD CONSTRAINT NOEUD_SOURCE_UN UNIQUE (SOURCE_CODE, HISTO_DESTRUCTION) USING INDEX NOEUD_SRC_UN ENABLE; / ALTER TABLE NOTIFICATION_INDICATEUR ADD CONSTRAINT NOTIFICATION_INDICATEUR__UN UNIQUE (INDICATEUR_ID, AFFECTATION_ID) USING INDEX NOTIFICATION_INDICATEUR__UN ENABLE; / -ALTER TABLE PARAMETRE ADD CONSTRAINT PARAMETRE_UK UNIQUE (NOM) USING INDEX PARAMETRE_UK ENABLE; +ALTER TABLE PAYS ADD CONSTRAINT PAYS_SRC_UN UNIQUE (SOURCE_ID, SOURCE_CODE, HISTO_DESTRUCTION) USING INDEX PAYS_SRC_UN ENABLE; / ALTER TABLE PERIMETRE ADD CONSTRAINT PERIMETRE_CODE_UN UNIQUE (CODE) USING INDEX PERIMETRE_CODE_UN ENABLE; @@ -22342,13 +22656,13 @@ ALTER TABLE REGLE_STRUCTURE_VALIDATION ADD CONSTRAINT REGLE_STRUCTURE_VALIDATION ALTER TABLE ROLE ADD CONSTRAINT ROLE_CODE_UN UNIQUE (CODE) USING INDEX ROLE_CODE_UN ENABLE; / -ALTER TABLE SCENARIO_LIEN ADD CONSTRAINT SCENARIO_LIEN_SRC_UN UNIQUE (SOURCE_CODE, HISTO_DESTRUCTION) USING INDEX SCENARIO_LIEN_SRC_UN ENABLE; +ALTER TABLE SCENARIO_LIEN ADD CONSTRAINT SCENARIO_LIEN_SOURCE_UN UNIQUE (SOURCE_CODE, HISTO_DESTRUCTION) USING INDEX SCENARIO_LIEN_SRC_UN ENABLE; / ALTER TABLE SCENARIO_LIEN ADD CONSTRAINT SCENARIO_LIEN__UN UNIQUE (SCENARIO_ID, LIEN_ID, HISTO_DESTRUCTION) USING INDEX SCENARIO_LIEN__UN ENABLE; / -ALTER TABLE SCENARIO_NOEUD ADD CONSTRAINT SCENARIO_NOEUD_SRC_UN UNIQUE (SOURCE_CODE, HISTO_DESTRUCTION) USING INDEX SCENARIO_NOEUD_SRC_UN ENABLE; +ALTER TABLE SCENARIO_NOEUD ADD CONSTRAINT SCENARIO_NOEUD_SOURCE_UN UNIQUE (SOURCE_CODE, HISTO_DESTRUCTION) USING INDEX SCENARIO_NOEUD_SRC_UN ENABLE; / ALTER TABLE SCENARIO_NOEUD ADD CONSTRAINT SCENARIO_NOEUD__UN UNIQUE (SCENARIO_ID, NOEUD_ID, HISTO_DESTRUCTION) USING INDEX SCENARIO_NOEUD__UN ENABLE; @@ -22369,13 +22683,13 @@ ALTER TABLE SOURCE ADD CONSTRAINT SOURCE_CODE_UN UNIQUE (CODE) USING INDEX SOURC ALTER TABLE STATUT_INTERVENANT ADD CONSTRAINT STATUT_INTERVENANT_ODRE_UN UNIQUE (HISTO_DESTRUCTION, ORDRE) USING INDEX STATUT_INTERVENANT_ODRE_UN ENABLE; / -ALTER TABLE STATUT_INTERVENANT ADD CONSTRAINT STATUT_INTERVENANT__UN UNIQUE (SOURCE_CODE) USING INDEX STATUT_INTERVENANT__UN ENABLE; +ALTER TABLE STATUT_INTERVENANT ADD CONSTRAINT STATUT_INTERVENANT_SOURCE_UN UNIQUE (SOURCE_CODE) USING INDEX STATUT_INTERVENANT__UN ENABLE; / ALTER TABLE STRUCTURE ADD CONSTRAINT STRUCTURE_CODE_UN UNIQUE (CODE, HISTO_DESTRUCTION) USING INDEX STRUCTURE_CODE_UN ENABLE; / -ALTER TABLE STRUCTURE ADD CONSTRAINT STRUCTURE_SOURCE_CODE_UN UNIQUE (SOURCE_CODE, HISTO_DESTRUCTION) USING INDEX STRUCTURE_SOURCE_CODE_UN ENABLE; +ALTER TABLE STRUCTURE ADD CONSTRAINT STRUCTURE_SOURCE_UN UNIQUE (SOURCE_CODE, HISTO_DESTRUCTION) USING INDEX STRUCTURE_SOURCE_CODE_UN ENABLE; / ALTER TABLE TBL_AGREMENT ADD CONSTRAINT TBL_AGREMENT__UN UNIQUE (TYPE_AGREMENT_ID, INTERVENANT_ID, STRUCTURE_ID, TO_DELETE) USING INDEX TBL_AGREMENT__UN_IDX ENABLE; @@ -22417,13 +22731,13 @@ ALTER TABLE TBL_SERVICE_REFERENTIEL ADD CONSTRAINT TBL_SERVICE_REFERENTIEL__UN U ALTER TABLE TBL_SERVICE_SAISIE ADD CONSTRAINT TBL_SERVICE_SAISIE__UN UNIQUE (INTERVENANT_ID, TO_DELETE) USING INDEX TBL_SERVICE_SAISIE_UN_IDX ENABLE; / -ALTER TABLE TBL_SERVICE ADD CONSTRAINT TBL_SERVICE__UN UNIQUE (SERVICE_ID, TYPE_VOLUME_HORAIRE_ID, TO_DELETE) USING INDEX TBL_SERVICE__UN_IDX ENABLE; +ALTER TABLE TBL_SERVICE ADD CONSTRAINT TBL_SERVICE__UN UNIQUE (SERVICE_ID, TYPE_VOLUME_HORAIRE_ID, TO_DELETE) USING INDEX TBL_SERVICE__UN ENABLE; / ALTER TABLE TBL_VALIDATION_ENSEIGNEMENT ADD CONSTRAINT TBL_VALIDATION_ENSEIGNEMENT_UN UNIQUE (INTERVENANT_ID, STRUCTURE_ID, TYPE_VOLUME_HORAIRE_ID, SERVICE_ID, VOLUME_HORAIRE_ID, VALIDATION_ID, TO_DELETE) USING INDEX TBL_VALIDATION_ENSEIGNEMENT_UN ENABLE; / -ALTER TABLE TBL_VALIDATION_REFERENTIEL ADD CONSTRAINT TBL_VALIDATION_REFERENTIEL__UN UNIQUE (INTERVENANT_ID, STRUCTURE_ID, TYPE_VOLUME_HORAIRE_ID, SERVICE_REFERENTIEL_ID, VOLUME_HORAIRE_REF_ID, VALIDATION_ID, TO_DELETE) USING INDEX TVR_UN_IDX ENABLE; +ALTER TABLE TBL_VALIDATION_REFERENTIEL ADD CONSTRAINT TBL_VALIDATION_REFERENTIEL__UN UNIQUE (INTERVENANT_ID, STRUCTURE_ID, TYPE_VOLUME_HORAIRE_ID, SERVICE_REFERENTIEL_ID, VOLUME_HORAIRE_REF_ID, VALIDATION_ID, TO_DELETE) USING INDEX TBL_VALIDATION_REFERENTIEL__UN ENABLE; / ALTER TABLE TBL_WORKFLOW ADD CONSTRAINT TBL_WORKFLOW__UN UNIQUE (INTERVENANT_ID, ETAPE_ID, STRUCTURE_ID) USING INDEX TBL_WORKFLOW__UN ENABLE; @@ -22435,7 +22749,7 @@ ALTER TABLE TYPE_AGREMENT_STATUT ADD CONSTRAINT TYPE_AGREMENT_STATUT__UN UNIQUE ALTER TABLE TYPE_AGREMENT ADD CONSTRAINT TYPE_AGREMENT__UN UNIQUE (CODE) USING INDEX TYPE_AGREMENT__UN ENABLE; / -ALTER TABLE TYPE_FORMATION ADD CONSTRAINT TYPE_FORMATION__UN UNIQUE (SOURCE_CODE) USING INDEX TYPE_FORMATION__UN ENABLE; +ALTER TABLE TYPE_FORMATION ADD CONSTRAINT TYPE_FORMATION_SOURCE_UN UNIQUE (SOURCE_CODE) USING INDEX TYPE_FORMATION__UN ENABLE; / ALTER TABLE TYPE_HEURES ADD CONSTRAINT TYPE_HEURES_UN UNIQUE (CODE) USING INDEX TYPE_HEURES_UN ENABLE; @@ -22447,13 +22761,13 @@ ALTER TABLE TYPE_INTERVENANT ADD CONSTRAINT TYPE_INTERVENANT_CODE_UN UNIQUE (COD ALTER TABLE TYPE_INTERVENTION_STATUT ADD CONSTRAINT TYPE_INTERVENTION_STATUT__UN UNIQUE (TYPE_INTERVENTION_ID, STATUT_INTERVENANT_ID) USING INDEX TYPE_INTERVENTION_STATUT__UN ENABLE; / -ALTER TABLE TYPE_MODULATEUR_EP ADD CONSTRAINT TYPE_MODULATEUR_EP__UN UNIQUE (SOURCE_CODE) USING INDEX TYPE_MODULATEUR_EP__UN ENABLE; +ALTER TABLE TYPE_MODULATEUR_EP ADD CONSTRAINT TYPE_MODULATEUR_EP_SOURCE_UN UNIQUE (SOURCE_CODE) USING INDEX TYPE_MODULATEUR_EP__UN ENABLE; / ALTER TABLE TYPE_MODULATEUR_EP ADD CONSTRAINT TYPE_MODULATEUR_EP__UNV1 UNIQUE (TYPE_MODULATEUR_ID, ELEMENT_PEDAGOGIQUE_ID) USING INDEX TYPE_MODULATEUR_EP__UNV1 ENABLE; / -ALTER TABLE TYPE_MODULATEUR_STRUCTURE ADD CONSTRAINT TYPE_MODULATEUR_STRUCTURE_UN UNIQUE (TYPE_MODULATEUR_ID, STRUCTURE_ID) USING INDEX TYPE_MODULATEUR_STRUCTURE_UN ENABLE; +ALTER TABLE TYPE_MODULATEUR_STRUCTURE ADD CONSTRAINT TYPE_MODULATEUR_STRUCTURE_UN UNIQUE (TYPE_MODULATEUR_ID, STRUCTURE_ID, ANNEE_DEBUT_ID, HISTO_DESTRUCTION) USING INDEX TYPE_MODULATEUR_STRUCTURE_UN ENABLE; / ALTER TABLE TYPE_VOLUME_HORAIRE ADD CONSTRAINT TYPE_VOLUME_HORAIRE__UN UNIQUE (CODE) USING INDEX TYPE_VOLUME_HORAIRE__UN ENABLE; @@ -22462,13 +22776,13 @@ ALTER TABLE TYPE_VOLUME_HORAIRE ADD CONSTRAINT TYPE_VOLUME_HORAIRE__UN UNIQUE (C ALTER TABLE UTILISATEUR ADD CONSTRAINT UTILISATEUR_USERNAME_UN UNIQUE (USERNAME) USING INDEX UTILISATEUR_USERNAME_UN ENABLE; / -ALTER TABLE VOLUME_HORAIRE_CHARGE ADD CONSTRAINT VHC_HISTO_UN UNIQUE (SOURCE_CODE, HISTO_DESTRUCTION) USING INDEX VHC_HISTO_UN ENABLE; +ALTER TABLE VOLUME_HORAIRE_CHARGE ADD CONSTRAINT VOLUME_HORAIRE_CHARGE__UN UNIQUE (ELEMENT_PEDAGOGIQUE_ID, TYPE_INTERVENTION_ID, HISTO_DESTRUCTION) USING INDEX VOLUME_HORAIRE_CHARGE__UN ENABLE; / -ALTER TABLE VOLUME_HORAIRE_CHARGE ADD CONSTRAINT VOLUME_HORAIRE_CHARGE__UN UNIQUE (ELEMENT_PEDAGOGIQUE_ID, TYPE_INTERVENTION_ID, HISTO_DESTRUCTION) USING INDEX VOLUME_HORAIRE_CHARGE__UN ENABLE; +ALTER TABLE VOLUME_HORAIRE_CHARGE ADD CONSTRAINT VOLUME_HORAIRE_CHARG_SOURCE_UN UNIQUE (SOURCE_CODE, HISTO_DESTRUCTION) USING INDEX VHC_HISTO_UN ENABLE; / -ALTER TABLE VOLUME_HORAIRE_ENS ADD CONSTRAINT VOLUME_HORAIRE_ENS_UK1 UNIQUE (SOURCE_CODE, HISTO_DESTRUCTION) USING INDEX VOLUME_HORAIRE_ENS_UK1 ENABLE; +ALTER TABLE VOLUME_HORAIRE_ENS ADD CONSTRAINT VOLUME_HORAIRE_ENS_SOURCE_UN UNIQUE (SOURCE_CODE, HISTO_DESTRUCTION) USING INDEX VOLUME_HORAIRE_ENS_UK1 ENABLE; / ALTER TABLE VOLUME_HORAIRE_REF ADD CONSTRAINT VOLUME_HORAIRE_REF_SOURCE_UN UNIQUE (SOURCE_CODE, HISTO_DESTRUCTION) USING INDEX VOLUME_HORAIRE_REF_SOURCE_UN ENABLE; @@ -23794,62 +24108,9 @@ END; - - - -CREATE OR REPLACE FORCE VIEW V_FORMULE_LOCAL_I_PARAMS AS -SELECT - null intervenant_id, - null param_1, - null param_2, - null param_3, - null param_4, - null param_5 -FROM - dual; -/ - -CREATE OR REPLACE FORCE VIEW V_FORMULE_LOCAL_VH_PARAMS AS -SELECT - vh.id volume_horaire_id, - null volume_horaire_ref_id, - str.code param_1, - null param_2, - null param_3, - null param_4, - null param_5 -FROM - volume_horaire vh - JOIN service s ON s.id = vh.service_id - JOIN intervenant i ON i.id = s.intervenant_id - LEFT JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id - JOIN structure str ON str.id = COALESCE(ep.structure_id,i.structure_id) -WHERE - vh.histo_destruction IS NULL - AND s.histo_destruction IS NULL - AND vh.heures <> 0 - AND vh.motif_non_paiement_id IS NULL - AND s.intervenant_id = COALESCE( OSE_FORMULE.GET_INTERVENANT_ID, s.intervenant_id ) - -UNION ALL - -SELECT - null volume_horaire_id, - vhr.id volume_horaire_ref_id, - str.code param_1, - null param_2, - null param_3, - null param_4, - null param_5 -FROM - volume_horaire_ref vhr - JOIN service_referentiel sr ON sr.id = vhr.service_referentiel_id - JOIN structure str ON str.id = sr.structure_id -WHERE - vhr.histo_destruction IS NULL - AND sr.histo_destruction IS NULL - AND vhr.heures <> 0 - AND sr.intervenant_id = COALESCE( OSE_FORMULE.GET_INTERVENANT_ID, sr.intervenant_id ); +-------------------------------------------------- +-- Données de la base de données OSE +-------------------------------------------------- @@ -24523,7 +24784,7 @@ INSERT INTO TYPE_VOLUME_HORAIRE(ID, CODE, LIBELLE, ORDRE) VALUES (2, q'[REALISE] -- Table UTILISATEUR -INSERT INTO UTILISATEUR(ID, USERNAME, EMAIL, DISPLAY_NAME, PASSWORD, STATE, CODE) VALUES (UTILISATEUR_ID_SEQ.NEXTVAL, q'[oseappli]', q'[dsi.applications@unicaen.fr]', q'[Application OSE]', 'x', 1, NULL); +INSERT INTO UTILISATEUR(ID, USERNAME, EMAIL, DISPLAY_NAME, PASSWORD, STATE, CODE, PASSWORD_RESET_TOKEN) VALUES (UTILISATEUR_ID_SEQ.NEXTVAL, q'[oseappli]', q'[dsi.applications@unicaen.fr]', q'[Application OSE]', 'x', 1, NULL, NULL); -- Table WF_ETAPE diff --git a/data/ddl.php b/data/ddl.php new file mode 100644 index 0000000000..fab350c8c8 --- /dev/null +++ b/data/ddl.php @@ -0,0 +1,51527 @@ +<?php return array ( + 'BddAdmin\\Ddl\\DdlSequence' => + array ( + 'ADRESSE_INTERVENANT_ID_SEQ' => + array ( + 'name' => 'ADRESSE_INTERVENANT_ID_SEQ', + ), + 'ADRESSE_STRUCTURE_ID_SEQ' => + array ( + 'name' => 'ADRESSE_STRUCTURE_ID_SEQ', + ), + 'AFFECTATION_ID_SEQ' => + array ( + 'name' => 'AFFECTATION_ID_SEQ', + ), + 'AFFECTATION_RECHERCHE_ID_SEQ' => + array ( + 'name' => 'AFFECTATION_RECHERCHE_ID_SEQ', + ), + 'AGREMENT_ID_SEQ' => + array ( + 'name' => 'AGREMENT_ID_SEQ', + ), + 'CAMPAGNE_SAISIE_ID_SEQ' => + array ( + 'name' => 'CAMPAGNE_SAISIE_ID_SEQ', + ), + 'CATEGORIE_PRIVILEGE_ID_SEQ' => + array ( + 'name' => 'CATEGORIE_PRIVILEGE_ID_SEQ', + ), + 'CC_ACTIVITE_ID_SEQ' => + array ( + 'name' => 'CC_ACTIVITE_ID_SEQ', + ), + 'CENTRE_COUT_EP_ID_SEQ' => + array ( + 'name' => 'CENTRE_COUT_EP_ID_SEQ', + ), + 'CENTRE_COUT_ID_SEQ' => + array ( + 'name' => 'CENTRE_COUT_ID_SEQ', + ), + 'CENTRE_COUT_STRUCTURE_ID_SEQ' => + array ( + 'name' => 'CENTRE_COUT_STRUCTURE_ID_SEQ', + ), + 'CHEMIN_PEDAGOGIQUE_ID_SEQ' => + array ( + 'name' => 'CHEMIN_PEDAGOGIQUE_ID_SEQ', + ), + 'CIVILITE_ID_SEQ' => + array ( + 'name' => 'CIVILITE_ID_SEQ', + ), + 'CONTRAT_FICHIER_ID_SEQ' => + array ( + 'name' => 'CONTRAT_FICHIER_ID_SEQ', + ), + 'CONTRAT_ID_SEQ' => + array ( + 'name' => 'CONTRAT_ID_SEQ', + ), + 'CORPS_ID_SEQ' => + array ( + 'name' => 'CORPS_ID_SEQ', + ), + 'DEPARTEMENT_ID_SEQ' => + array ( + 'name' => 'DEPARTEMENT_ID_SEQ', + ), + 'DISCIPLINE_ID_SEQ' => + array ( + 'name' => 'DISCIPLINE_ID_SEQ', + ), + 'DOMAINE_FONCTIONNEL_ID_SEQ' => + array ( + 'name' => 'DOMAINE_FONCTIONNEL_ID_SEQ', + ), + 'DOSSIER_ID_SEQ' => + array ( + 'name' => 'DOSSIER_ID_SEQ', + ), + 'DOTATION_ID_SEQ' => + array ( + 'name' => 'DOTATION_ID_SEQ', + ), + 'EFFECTIFS_ID_SEQ' => + array ( + 'name' => 'EFFECTIFS_ID_SEQ', + ), + 'ELEMENT_MODULATEUR_ID_SEQ' => + array ( + 'name' => 'ELEMENT_MODULATEUR_ID_SEQ', + ), + 'ELEMENT_PEDAGOGIQUE_ID_SEQ' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_ID_SEQ', + ), + 'ELEMENT_TAUX_REGIMES_ID_SEQ' => + array ( + 'name' => 'ELEMENT_TAUX_REGIMES_ID_SEQ', + ), + 'ETABLISSEMENT_ID_SEQ' => + array ( + 'name' => 'ETABLISSEMENT_ID_SEQ', + ), + 'ETAPE_ID_SEQ' => + array ( + 'name' => 'ETAPE_ID_SEQ', + ), + 'ETAT_SORTIE_ID_SEQ' => + array ( + 'name' => 'ETAT_SORTIE_ID_SEQ', + ), + 'FICHIER_ID_SEQ' => + array ( + 'name' => 'FICHIER_ID_SEQ', + ), + 'FONCTION_REFERENTIEL_ID_SEQ' => + array ( + 'name' => 'FONCTION_REFERENTIEL_ID_SEQ', + ), + 'FORMULE_RESULTAT_ID_SEQ' => + array ( + 'name' => 'FORMULE_RESULTAT_ID_SEQ', + ), + 'FORMULE_RESULTAT_SERVIC_ID_SEQ' => + array ( + 'name' => 'FORMULE_RESULTAT_SERVIC_ID_SEQ', + ), + 'FORMULE_RESULTAT_VH_ID_SEQ' => + array ( + 'name' => 'FORMULE_RESULTAT_VH_ID_SEQ', + ), + 'FORMULE_RESULTAT_VH_REF_ID_SEQ' => + array ( + 'name' => 'FORMULE_RESULTAT_VH_REF_ID_SEQ', + ), + 'FTEST_INTERVENANT_ID_SEQ' => + array ( + 'name' => 'FTEST_INTERVENANT_ID_SEQ', + ), + 'FTEST_STRUCTURE_ID_SEQ' => + array ( + 'name' => 'FTEST_STRUCTURE_ID_SEQ', + ), + 'FTEST_VOLUME_HORAIRE_ID_SEQ' => + array ( + 'name' => 'FTEST_VOLUME_HORAIRE_ID_SEQ', + ), + 'GRADE_ID_SEQ' => + array ( + 'name' => 'GRADE_ID_SEQ', + ), + 'GROUPE_ID_SEQ' => + array ( + 'name' => 'GROUPE_ID_SEQ', + ), + 'GROUPE_TYPE_FORMATION_ID_SEQ' => + array ( + 'name' => 'GROUPE_TYPE_FORMATION_ID_SEQ', + ), + 'HISTO_INTERVENANT_SERVI_ID_SEQ' => + array ( + 'name' => 'HISTO_INTERVENANT_SERVI_ID_SEQ', + ), + 'INDICATEUR_ID_SEQ' => + array ( + 'name' => 'INDICATEUR_ID_SEQ', + ), + 'INDIC_MODIF_DOSSIER_ID_SEQ' => + array ( + 'name' => 'INDIC_MODIF_DOSSIER_ID_SEQ', + ), + 'INTERVENANT_ID_SEQ' => + array ( + 'name' => 'INTERVENANT_ID_SEQ', + ), + 'INTERVENANT_SAISIE_ID_SEQ' => + array ( + 'name' => 'INTERVENANT_SAISIE_ID_SEQ', + ), + 'LIEN_ID_SEQ' => + array ( + 'name' => 'LIEN_ID_SEQ', + ), + 'MISE_EN_PAIEMENT_ID_SEQ' => + array ( + 'name' => 'MISE_EN_PAIEMENT_ID_SEQ', + ), + 'MODELE_CONTRAT_ID_SEQ' => + array ( + 'name' => 'MODELE_CONTRAT_ID_SEQ', + ), + 'MODIFICATION_SERVICE_DU_ID_SEQ' => + array ( + 'name' => 'MODIFICATION_SERVICE_DU_ID_SEQ', + ), + 'MODULATEUR_ID_SEQ' => + array ( + 'name' => 'MODULATEUR_ID_SEQ', + ), + 'MOTIF_MODIFICATION_SERV_ID_SEQ' => + array ( + 'name' => 'MOTIF_MODIFICATION_SERV_ID_SEQ', + ), + 'MOTIF_NON_PAIEMENT_ID_SEQ' => + array ( + 'name' => 'MOTIF_NON_PAIEMENT_ID_SEQ', + ), + 'NOEUD_ID_SEQ' => + array ( + 'name' => 'NOEUD_ID_SEQ', + ), + 'NOTIFICATION_INDICATEUR_ID_SEQ' => + array ( + 'name' => 'NOTIFICATION_INDICATEUR_ID_SEQ', + ), + 'PARAMETRE_ID_SEQ' => + array ( + 'name' => 'PARAMETRE_ID_SEQ', + ), + 'PAYS_ID_SEQ' => + array ( + 'name' => 'PAYS_ID_SEQ', + ), + 'PERIMETRE_ID_SEQ' => + array ( + 'name' => 'PERIMETRE_ID_SEQ', + ), + 'PERIODE_ID_SEQ' => + array ( + 'name' => 'PERIODE_ID_SEQ', + ), + 'PIECE_JOINTE_FICHIER_ID_SEQ' => + array ( + 'name' => 'PIECE_JOINTE_FICHIER_ID_SEQ', + ), + 'PIECE_JOINTE_ID_SEQ' => + array ( + 'name' => 'PIECE_JOINTE_ID_SEQ', + ), + 'PLAFOND_APPLICATION_ID_SEQ' => + array ( + 'name' => 'PLAFOND_APPLICATION_ID_SEQ', + ), + 'PLAFOND_ETAT_ID_SEQ' => + array ( + 'name' => 'PLAFOND_ETAT_ID_SEQ', + ), + 'PRIVILEGE_ID_SEQ' => + array ( + 'name' => 'PRIVILEGE_ID_SEQ', + ), + 'REGLE_STRUCTURE_VALIDAT_ID_SEQ' => + array ( + 'name' => 'REGLE_STRUCTURE_VALIDAT_ID_SEQ', + ), + 'ROLE_ID_SEQ' => + array ( + 'name' => 'ROLE_ID_SEQ', + ), + 'ROLE_PRIVILEGE_ID_SEQ' => + array ( + 'name' => 'ROLE_PRIVILEGE_ID_SEQ', + ), + 'SCENARIO_ID_SEQ' => + array ( + 'name' => 'SCENARIO_ID_SEQ', + ), + 'SCENARIO_LIEN_ID_SEQ' => + array ( + 'name' => 'SCENARIO_LIEN_ID_SEQ', + ), + 'SCENARIO_NOEUD_EFFECTIF_ID_SEQ' => + array ( + 'name' => 'SCENARIO_NOEUD_EFFECTIF_ID_SEQ', + ), + 'SCENARIO_NOEUD_ID_SEQ' => + array ( + 'name' => 'SCENARIO_NOEUD_ID_SEQ', + ), + 'SCENARIO_NOEUD_SEUIL_ID_SEQ' => + array ( + 'name' => 'SCENARIO_NOEUD_SEUIL_ID_SEQ', + ), + 'SERVICE_ID_SEQ' => + array ( + 'name' => 'SERVICE_ID_SEQ', + ), + 'SERVICE_REFERENTIEL_ID_SEQ' => + array ( + 'name' => 'SERVICE_REFERENTIEL_ID_SEQ', + ), + 'SEUIL_CHARGE_ID_SEQ' => + array ( + 'name' => 'SEUIL_CHARGE_ID_SEQ', + ), + 'SOURCE_ID_SEQ' => + array ( + 'name' => 'SOURCE_ID_SEQ', + ), + 'STATUT_INTERVENANT_ID_SEQ' => + array ( + 'name' => 'STATUT_INTERVENANT_ID_SEQ', + ), + 'STATUT_PRIVILEGE_ID_SEQ' => + array ( + 'name' => 'STATUT_PRIVILEGE_ID_SEQ', + ), + 'STRUCTURE_ID_SEQ' => + array ( + 'name' => 'STRUCTURE_ID_SEQ', + ), + 'SYNC_LOG_ID_SEQ' => + array ( + 'name' => 'SYNC_LOG_ID_SEQ', + ), + 'TAUX_HORAIRE_HETD_ID_SEQ' => + array ( + 'name' => 'TAUX_HORAIRE_HETD_ID_SEQ', + ), + 'TBL_AGREMENT_ID_SEQ' => + array ( + 'name' => 'TBL_AGREMENT_ID_SEQ', + ), + 'TBL_CHARGENS_ID_SEQ' => + array ( + 'name' => 'TBL_CHARGENS_ID_SEQ', + ), + 'TBL_CHARGENS_SEUILS_DEF_ID_SEQ' => + array ( + 'name' => 'TBL_CHARGENS_SEUILS_DEF_ID_SEQ', + ), + 'TBL_CLOTURE_REALISE_ID_SEQ' => + array ( + 'name' => 'TBL_CLOTURE_REALISE_ID_SEQ', + ), + 'TBL_CONTRAT_ID_SEQ' => + array ( + 'name' => 'TBL_CONTRAT_ID_SEQ', + ), + 'TBL_DEMS_ID_SEQ' => + array ( + 'name' => 'TBL_DEMS_ID_SEQ', + ), + 'TBL_DMEP_LIQUIDATION_ID_SEQ' => + array ( + 'name' => 'TBL_DMEP_LIQUIDATION_ID_SEQ', + ), + 'TBL_DOSSIER_ID_SEQ' => + array ( + 'name' => 'TBL_DOSSIER_ID_SEQ', + ), + 'TBL_LIEN_ID_SEQ' => + array ( + 'name' => 'TBL_LIEN_ID_SEQ', + ), + 'TBL_NOEUD_ID_SEQ' => + array ( + 'name' => 'TBL_NOEUD_ID_SEQ', + ), + 'TBL_PAIEMENT_ID_SEQ' => + array ( + 'name' => 'TBL_PAIEMENT_ID_SEQ', + ), + 'TBL_PIECE_JOINTE_DEMAND_ID_SEQ' => + array ( + 'name' => 'TBL_PIECE_JOINTE_DEMAND_ID_SEQ', + ), + 'TBL_PIECE_JOINTE_FOURNI_ID_SEQ' => + array ( + 'name' => 'TBL_PIECE_JOINTE_FOURNI_ID_SEQ', + ), + 'TBL_PIECE_JOINTE_ID_SEQ' => + array ( + 'name' => 'TBL_PIECE_JOINTE_ID_SEQ', + ), + 'TBL_SERVICE_ID_SEQ' => + array ( + 'name' => 'TBL_SERVICE_ID_SEQ', + ), + 'TBL_SERVICE_REFERENTIEL_ID_SEQ' => + array ( + 'name' => 'TBL_SERVICE_REFERENTIEL_ID_SEQ', + ), + 'TBL_SERVICE_SAISIE_ID_SEQ' => + array ( + 'name' => 'TBL_SERVICE_SAISIE_ID_SEQ', + ), + 'TBL_VALIDATION_ENSEIGNE_ID_SEQ' => + array ( + 'name' => 'TBL_VALIDATION_ENSEIGNE_ID_SEQ', + ), + 'TBL_VALIDATION_REFERENT_ID_SEQ' => + array ( + 'name' => 'TBL_VALIDATION_REFERENT_ID_SEQ', + ), + 'TBL_WORKFLOW_ID_SEQ' => + array ( + 'name' => 'TBL_WORKFLOW_ID_SEQ', + ), + 'TEST_BUFFER_ID_SEQ' => + array ( + 'name' => 'TEST_BUFFER_ID_SEQ', + ), + 'TYPE_AGREMENT_ID_SEQ' => + array ( + 'name' => 'TYPE_AGREMENT_ID_SEQ', + ), + 'TYPE_AGREMENT_STATUT_ID_SEQ' => + array ( + 'name' => 'TYPE_AGREMENT_STATUT_ID_SEQ', + ), + 'TYPE_CONTRAT_ID_SEQ' => + array ( + 'name' => 'TYPE_CONTRAT_ID_SEQ', + ), + 'TYPE_DOTATION_ID_SEQ' => + array ( + 'name' => 'TYPE_DOTATION_ID_SEQ', + ), + 'TYPE_FORMATION_ID_SEQ' => + array ( + 'name' => 'TYPE_FORMATION_ID_SEQ', + ), + 'TYPE_HEURES_ID_SEQ' => + array ( + 'name' => 'TYPE_HEURES_ID_SEQ', + ), + 'TYPE_INTERVENANT_ID_SEQ' => + array ( + 'name' => 'TYPE_INTERVENANT_ID_SEQ', + ), + 'TYPE_INTERVENTION_EP_ID_SEQ' => + array ( + 'name' => 'TYPE_INTERVENTION_EP_ID_SEQ', + ), + 'TYPE_INTERVENTION_ID_SEQ' => + array ( + 'name' => 'TYPE_INTERVENTION_ID_SEQ', + ), + 'TYPE_INTERVENTION_STATU_ID_SEQ' => + array ( + 'name' => 'TYPE_INTERVENTION_STATU_ID_SEQ', + ), + 'TYPE_INTERVENTION_STRUC_ID_SEQ' => + array ( + 'name' => 'TYPE_INTERVENTION_STRUC_ID_SEQ', + ), + 'TYPE_MODULATEUR_EP_ID_SEQ' => + array ( + 'name' => 'TYPE_MODULATEUR_EP_ID_SEQ', + ), + 'TYPE_MODULATEUR_ID_SEQ' => + array ( + 'name' => 'TYPE_MODULATEUR_ID_SEQ', + ), + 'TYPE_MODULATEUR_STRUCTU_ID_SEQ' => + array ( + 'name' => 'TYPE_MODULATEUR_STRUCTU_ID_SEQ', + ), + 'TYPE_PIECE_JOINTE_ID_SEQ' => + array ( + 'name' => 'TYPE_PIECE_JOINTE_ID_SEQ', + ), + 'TYPE_PIECE_JOINTE_STATU_ID_SEQ' => + array ( + 'name' => 'TYPE_PIECE_JOINTE_STATU_ID_SEQ', + ), + 'TYPE_RESSOURCE_ID_SEQ' => + array ( + 'name' => 'TYPE_RESSOURCE_ID_SEQ', + ), + 'TYPE_VALIDATION_ID_SEQ' => + array ( + 'name' => 'TYPE_VALIDATION_ID_SEQ', + ), + 'UTILISATEUR_ID_SEQ' => + array ( + 'name' => 'UTILISATEUR_ID_SEQ', + ), + 'VALIDATION_ID_SEQ' => + array ( + 'name' => 'VALIDATION_ID_SEQ', + ), + 'VALIDATION_VOL_HORAIRE_ID_SEQ' => + array ( + 'name' => 'VALIDATION_VOL_HORAIRE_ID_SEQ', + ), + 'VALIDATION_VOL_HORAIRE__ID_SEQ' => + array ( + 'name' => 'VALIDATION_VOL_HORAIRE__ID_SEQ', + ), + 'VOLUME_HORAIRE_CHARGE_ID_SEQ' => + array ( + 'name' => 'VOLUME_HORAIRE_CHARGE_ID_SEQ', + ), + 'VOLUME_HORAIRE_ENS_ID_SEQ' => + array ( + 'name' => 'VOLUME_HORAIRE_ENS_ID_SEQ', + ), + 'VOLUME_HORAIRE_ID_SEQ' => + array ( + 'name' => 'VOLUME_HORAIRE_ID_SEQ', + ), + 'VOLUME_HORAIRE_REF_ID_SEQ' => + array ( + 'name' => 'VOLUME_HORAIRE_REF_ID_SEQ', + ), + 'WF_DEP_BLOQUANTE_ID_SEQ' => + array ( + 'name' => 'WF_DEP_BLOQUANTE_ID_SEQ', + ), + 'WF_ETAPE_DEP_ID_SEQ' => + array ( + 'name' => 'WF_ETAPE_DEP_ID_SEQ', + ), + 'WF_ETAPE_ID_SEQ' => + array ( + 'name' => 'WF_ETAPE_ID_SEQ', + ), + ), + 'BddAdmin\\Ddl\\DdlTable' => + array ( + 'ADRESSE_INTERVENANT' => + array ( + 'name' => 'ADRESSE_INTERVENANT', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'ADRESSE_INTERVENANT_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'INTERVENANT_ID' => + array ( + 'name' => 'INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TEL_DOMICILE' => + array ( + 'name' => 'TEL_DOMICILE', + 'type' => 'VARCHAR2', + 'length' => 25, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'MENTION_COMPLEMENTAIRE' => + array ( + 'name' => 'MENTION_COMPLEMENTAIRE', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BATIMENT' => + array ( + 'name' => 'BATIMENT', + 'type' => 'VARCHAR2', + 'length' => 60, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'NO_VOIE' => + array ( + 'name' => 'NO_VOIE', + 'type' => 'VARCHAR2', + 'length' => 20, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'NOM_VOIE' => + array ( + 'name' => 'NOM_VOIE', + 'type' => 'VARCHAR2', + 'length' => 120, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'LOCALITE' => + array ( + 'name' => 'LOCALITE', + 'type' => 'VARCHAR2', + 'length' => 120, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'CODE_POSTAL' => + array ( + 'name' => 'CODE_POSTAL', + 'type' => 'VARCHAR2', + 'length' => 15, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'VILLE' => + array ( + 'name' => 'VILLE', + 'type' => 'VARCHAR2', + 'length' => 120, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'PAYS_CODE_INSEE' => + array ( + 'name' => 'PAYS_CODE_INSEE', + 'type' => 'VARCHAR2', + 'length' => 3, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'PAYS_LIBELLE' => + array ( + 'name' => 'PAYS_LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'ADRESSE_STRUCTURE' => + array ( + 'name' => 'ADRESSE_STRUCTURE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'ADRESSE_STRUCTURE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'STRUCTURE_ID' => + array ( + 'name' => 'STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'PRINCIPALE' => + array ( + 'name' => 'PRINCIPALE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => true, + 'default' => NULL, + ), + 'TELEPHONE' => + array ( + 'name' => 'TELEPHONE', + 'type' => 'VARCHAR2', + 'length' => 20, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'NO_VOIE' => + array ( + 'name' => 'NO_VOIE', + 'type' => 'VARCHAR2', + 'length' => 10, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'NOM_VOIE' => + array ( + 'name' => 'NOM_VOIE', + 'type' => 'VARCHAR2', + 'length' => 60, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'LOCALITE' => + array ( + 'name' => 'LOCALITE', + 'type' => 'VARCHAR2', + 'length' => 26, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'CODE_POSTAL' => + array ( + 'name' => 'CODE_POSTAL', + 'type' => 'VARCHAR2', + 'length' => 15, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'VILLE' => + array ( + 'name' => 'VILLE', + 'type' => 'VARCHAR2', + 'length' => 26, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'PAYS_CODE_INSEE' => + array ( + 'name' => 'PAYS_CODE_INSEE', + 'type' => 'VARCHAR2', + 'length' => 3, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'PAYS_LIBELLE' => + array ( + 'name' => 'PAYS_LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 30, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'AFFECTATION' => + array ( + 'name' => 'AFFECTATION', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'AFFECTATION_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'UTILISATEUR_ID' => + array ( + 'name' => 'UTILISATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ROLE_ID' => + array ( + 'name' => 'ROLE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'STRUCTURE_ID' => + array ( + 'name' => 'STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'AFFECTATION_RECHERCHE' => + array ( + 'name' => 'AFFECTATION_RECHERCHE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => 'Un chercheur peut avoir plusieurs affectations de recherche', + 'sequence' => 'AFFECTATION_RECHERCHE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'INTERVENANT_ID' => + array ( + 'name' => 'INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'STRUCTURE_ID' => + array ( + 'name' => 'STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'LABO_LIBELLE' => + array ( + 'name' => 'LABO_LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 300, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'AGREMENT' => + array ( + 'name' => 'AGREMENT', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'AGREMENT_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_AGREMENT_ID' => + array ( + 'name' => 'TYPE_AGREMENT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'INTERVENANT_ID' => + array ( + 'name' => 'INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'DATE_DECISION' => + array ( + 'name' => 'DATE_DECISION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'STRUCTURE_ID' => + array ( + 'name' => 'STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'ANNEE' => + array ( + 'name' => 'ANNEE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => NULL, + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 9, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'DATE_DEBUT' => + array ( + 'name' => 'DATE_DEBUT', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'DATE_FIN' => + array ( + 'name' => 'DATE_FIN', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ACTIVE' => + array ( + 'name' => 'ACTIVE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'TAUX_HETD' => + array ( + 'name' => 'TAUX_HETD', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'CAMPAGNE_SAISIE' => + array ( + 'name' => 'CAMPAGNE_SAISIE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'CAMPAGNE_SAISIE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_INTERVENANT_ID' => + array ( + 'name' => 'TYPE_INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_VOLUME_HORAIRE_ID' => + array ( + 'name' => 'TYPE_VOLUME_HORAIRE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'DATE_DEBUT' => + array ( + 'name' => 'DATE_DEBUT', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'DATE_FIN' => + array ( + 'name' => 'DATE_FIN', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'MESSAGE_INTERVENANT' => + array ( + 'name' => 'MESSAGE_INTERVENANT', + 'type' => 'VARCHAR2', + 'length' => 300, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'MESSAGE_AUTRES' => + array ( + 'name' => 'MESSAGE_AUTRES', + 'type' => 'VARCHAR2', + 'length' => 300, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ANNEE_ID' => + array ( + 'name' => 'ANNEE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + ), + ), + 'CATEGORIE_PRIVILEGE' => + array ( + 'name' => 'CATEGORIE_PRIVILEGE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'CATEGORIE_PRIVILEGE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 150, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 200, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ORDRE' => + array ( + 'name' => 'ORDRE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'CC_ACTIVITE' => + array ( + 'name' => 'CC_ACTIVITE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'CC_ACTIVITE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 200, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'FI' => + array ( + 'name' => 'FI', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => NULL, + ), + 'FA' => + array ( + 'name' => 'FA', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => NULL, + ), + 'FC' => + array ( + 'name' => 'FC', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => NULL, + ), + 'FC_MAJOREES' => + array ( + 'name' => 'FC_MAJOREES', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => NULL, + ), + 'REFERENTIEL' => + array ( + 'name' => 'REFERENTIEL', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'CENTRE_COUT' => + array ( + 'name' => 'CENTRE_COUT', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'CENTRE_COUT_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 200, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ACTIVITE_ID' => + array ( + 'name' => 'ACTIVITE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_RESSOURCE_ID' => + array ( + 'name' => 'TYPE_RESSOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'PARENT_ID' => + array ( + 'name' => 'PARENT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'UNITE_BUDGETAIRE' => + array ( + 'name' => 'UNITE_BUDGETAIRE', + 'type' => 'VARCHAR2', + 'length' => 15, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'CENTRE_COUT_EP' => + array ( + 'name' => 'CENTRE_COUT_EP', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'CENTRE_COUT_EP_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CENTRE_COUT_ID' => + array ( + 'name' => 'CENTRE_COUT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ELEMENT_PEDAGOGIQUE_ID' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_HEURES_ID' => + array ( + 'name' => 'TYPE_HEURES_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'CENTRE_COUT_STRUCTURE' => + array ( + 'name' => 'CENTRE_COUT_STRUCTURE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'CENTRE_COUT_STRUCTURE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CENTRE_COUT_ID' => + array ( + 'name' => 'CENTRE_COUT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'STRUCTURE_ID' => + array ( + 'name' => 'STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'UNITE_BUDGETAIRE' => + array ( + 'name' => 'UNITE_BUDGETAIRE', + 'type' => 'VARCHAR2', + 'length' => 15, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'CHEMIN_PEDAGOGIQUE' => + array ( + 'name' => 'CHEMIN_PEDAGOGIQUE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'CHEMIN_PEDAGOGIQUE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ELEMENT_PEDAGOGIQUE_ID' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ETAPE_ID' => + array ( + 'name' => 'ETAPE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ORDRE' => + array ( + 'name' => 'ORDRE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'CIVILITE' => + array ( + 'name' => 'CIVILITE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'CIVILITE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE_COURT' => + array ( + 'name' => 'LIBELLE_COURT', + 'type' => 'VARCHAR2', + 'length' => 5, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE_LONG' => + array ( + 'name' => 'LIBELLE_LONG', + 'type' => 'VARCHAR2', + 'length' => 15, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SEXE' => + array ( + 'name' => 'SEXE', + 'type' => 'VARCHAR2', + 'length' => 1, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + ), + ), + 'CONTRAT' => + array ( + 'name' => 'CONTRAT', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'CONTRAT_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_CONTRAT_ID' => + array ( + 'name' => 'TYPE_CONTRAT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'INTERVENANT_ID' => + array ( + 'name' => 'INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'STRUCTURE_ID' => + array ( + 'name' => 'STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'VALIDATION_ID' => + array ( + 'name' => 'VALIDATION_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'NUMERO_AVENANT' => + array ( + 'name' => 'NUMERO_AVENANT', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => '0', + ), + 'DATE_RETOUR_SIGNE' => + array ( + 'name' => 'DATE_RETOUR_SIGNE', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'CONTRAT_ID' => + array ( + 'name' => 'CONTRAT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'TOTAL_HETD' => + array ( + 'name' => 'TOTAL_HETD', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'CONTRAT_FICHIER' => + array ( + 'name' => 'CONTRAT_FICHIER', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'CONTRAT_FICHIER_ID_SEQ', + 'columns' => + array ( + 'CONTRAT_ID' => + array ( + 'name' => 'CONTRAT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'FICHIER_ID' => + array ( + 'name' => 'FICHIER_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + ), + ), + 'CORPS' => + array ( + 'name' => 'CORPS', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'CORPS_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE_LONG' => + array ( + 'name' => 'LIBELLE_LONG', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE_COURT' => + array ( + 'name' => 'LIBELLE_COURT', + 'type' => 'VARCHAR2', + 'length' => 20, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'DEPARTEMENT' => + array ( + 'name' => 'DEPARTEMENT', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'DEPARTEMENT_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE_LONG' => + array ( + 'name' => 'LIBELLE_LONG', + 'type' => 'VARCHAR2', + 'length' => 120, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'LIBELLE_COURT' => + array ( + 'name' => 'LIBELLE_COURT', + 'type' => 'VARCHAR2', + 'length' => 60, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 5, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'DISCIPLINE' => + array ( + 'name' => 'DISCIPLINE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'DISCIPLINE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE_COURT' => + array ( + 'name' => 'LIBELLE_COURT', + 'type' => 'VARCHAR2', + 'length' => 20, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'LIBELLE_LONG' => + array ( + 'name' => 'LIBELLE_LONG', + 'type' => 'VARCHAR2', + 'length' => 200, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODES_CORRESP_1' => + array ( + 'name' => 'CODES_CORRESP_1', + 'type' => 'VARCHAR2', + 'length' => 1000, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'CODES_CORRESP_2' => + array ( + 'name' => 'CODES_CORRESP_2', + 'type' => 'VARCHAR2', + 'length' => 1000, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'CODES_CORRESP_3' => + array ( + 'name' => 'CODES_CORRESP_3', + 'type' => 'VARCHAR2', + 'length' => 1000, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'CODES_CORRESP_4' => + array ( + 'name' => 'CODES_CORRESP_4', + 'type' => 'VARCHAR2', + 'length' => 1000, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'DOMAINE_FONCTIONNEL' => + array ( + 'name' => 'DOMAINE_FONCTIONNEL', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'DOMAINE_FONCTIONNEL_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 200, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'DOSSIER' => + array ( + 'name' => 'DOSSIER', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'DOSSIER_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'NOM_USUEL' => + array ( + 'name' => 'NOM_USUEL', + 'type' => 'VARCHAR2', + 'length' => 128, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'NOM_PATRONYMIQUE' => + array ( + 'name' => 'NOM_PATRONYMIQUE', + 'type' => 'VARCHAR2', + 'length' => 128, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'PRENOM' => + array ( + 'name' => 'PRENOM', + 'type' => 'VARCHAR2', + 'length' => 128, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CIVILITE_ID' => + array ( + 'name' => 'CIVILITE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'NUMERO_INSEE' => + array ( + 'name' => 'NUMERO_INSEE', + 'type' => 'VARCHAR2', + 'length' => 20, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'STATUT_ID' => + array ( + 'name' => 'STATUT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ADRESSE' => + array ( + 'name' => 'ADRESSE', + 'type' => 'VARCHAR2', + 'length' => 1024, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'EMAIL' => + array ( + 'name' => 'EMAIL', + 'type' => 'VARCHAR2', + 'length' => 128, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'TELEPHONE' => + array ( + 'name' => 'TELEPHONE', + 'type' => 'VARCHAR2', + 'length' => 20, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'PREMIER_RECRUTEMENT' => + array ( + 'name' => 'PREMIER_RECRUTEMENT', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'PERTE_EMPLOI' => + array ( + 'name' => 'PERTE_EMPLOI', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => true, + 'default' => NULL, + ), + 'RIB' => + array ( + 'name' => 'RIB', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'NUMERO_INSEE_EST_PROVISOIRE' => + array ( + 'name' => 'NUMERO_INSEE_EST_PROVISOIRE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'EMAIL_PERSO' => + array ( + 'name' => 'EMAIL_PERSO', + 'type' => 'VARCHAR2', + 'length' => 128, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'DATE_NAISSANCE' => + array ( + 'name' => 'DATE_NAISSANCE', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'PAYS_NAISSANCE_ID' => + array ( + 'name' => 'PAYS_NAISSANCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'DEPT_NAISSANCE_ID' => + array ( + 'name' => 'DEPT_NAISSANCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'VILLE_NAISSANCE' => + array ( + 'name' => 'VILLE_NAISSANCE', + 'type' => 'VARCHAR2', + 'length' => 128, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'INTERVENANT_ID' => + array ( + 'name' => 'INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + ), + ), + 'DOTATION' => + array ( + 'name' => 'DOTATION', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'DOTATION_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_RESSOURCE_ID' => + array ( + 'name' => 'TYPE_RESSOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ANNEE_ID' => + array ( + 'name' => 'ANNEE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'STRUCTURE_ID' => + array ( + 'name' => 'STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HEURES' => + array ( + 'name' => 'HEURES', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ANNEE_CIVILE' => + array ( + 'name' => 'ANNEE_CIVILE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + ), + ), + 'EFFECTIFS' => + array ( + 'name' => 'EFFECTIFS', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'EFFECTIFS_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ELEMENT_PEDAGOGIQUE_ID' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'FI' => + array ( + 'name' => 'FI', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => '0', + ), + 'FC' => + array ( + 'name' => 'FC', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => '0', + ), + 'FA' => + array ( + 'name' => 'FA', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => '0', + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ANNEE_ID' => + array ( + 'name' => 'ANNEE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + ), + ), + 'ELEMENT_MODULATEUR' => + array ( + 'name' => 'ELEMENT_MODULATEUR', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'ELEMENT_MODULATEUR_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ELEMENT_ID' => + array ( + 'name' => 'ELEMENT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'MODULATEUR_ID' => + array ( + 'name' => 'MODULATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'ELEMENT_PEDAGOGIQUE' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'ELEMENT_PEDAGOGIQUE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 200, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ETAPE_ID' => + array ( + 'name' => 'ETAPE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'STRUCTURE_ID' => + array ( + 'name' => 'STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'PERIODE_ID' => + array ( + 'name' => 'PERIODE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'TAUX_FI' => + array ( + 'name' => 'TAUX_FI', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '1', + ), + 'TAUX_FC' => + array ( + 'name' => 'TAUX_FC', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'TAUX_FA' => + array ( + 'name' => 'TAUX_FA', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'TAUX_FOAD' => + array ( + 'name' => 'TAUX_FOAD', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'FI' => + array ( + 'name' => 'FI', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '1', + ), + 'FC' => + array ( + 'name' => 'FC', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'FA' => + array ( + 'name' => 'FA', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ANNEE_ID' => + array ( + 'name' => 'ANNEE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'DISCIPLINE_ID' => + array ( + 'name' => 'DISCIPLINE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'ELEMENT_TAUX_REGIMES' => + array ( + 'name' => 'ELEMENT_TAUX_REGIMES', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'ELEMENT_TAUX_REGIMES_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ELEMENT_PEDAGOGIQUE_ID' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TAUX_FI' => + array ( + 'name' => 'TAUX_FI', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => NULL, + ), + 'TAUX_FC' => + array ( + 'name' => 'TAUX_FC', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => NULL, + ), + 'TAUX_FA' => + array ( + 'name' => 'TAUX_FA', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'ETABLISSEMENT' => + array ( + 'name' => 'ETABLISSEMENT', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'ETABLISSEMENT_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LOCALISATION' => + array ( + 'name' => 'LOCALISATION', + 'type' => 'VARCHAR2', + 'length' => 60, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'DEPARTEMENT' => + array ( + 'name' => 'DEPARTEMENT', + 'type' => 'VARCHAR2', + 'length' => 3, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'ETAPE' => + array ( + 'name' => 'ETAPE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'ETAPE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 200, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ANNEE_ID' => + array ( + 'name' => 'ANNEE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_FORMATION_ID' => + array ( + 'name' => 'TYPE_FORMATION_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'NIVEAU' => + array ( + 'name' => 'NIVEAU', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'SPECIFIQUE_ECHANGES' => + array ( + 'name' => 'SPECIFIQUE_ECHANGES', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'STRUCTURE_ID' => + array ( + 'name' => 'STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'DOMAINE_FONCTIONNEL_ID' => + array ( + 'name' => 'DOMAINE_FONCTIONNEL_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'ETAT_SORTIE' => + array ( + 'name' => 'ETAT_SORTIE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'ETAT_SORTIE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 150, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 250, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'FICHIER' => + array ( + 'name' => 'FICHIER', + 'type' => 'BLOB', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'REQUETE' => + array ( + 'name' => 'REQUETE', + 'type' => 'VARCHAR2', + 'length' => 4000, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'CLE' => + array ( + 'name' => 'CLE', + 'type' => 'VARCHAR2', + 'length' => 30, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'CSV_PARAMS' => + array ( + 'name' => 'CSV_PARAMS', + 'type' => 'CLOB', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'PDF_TRAITEMENT' => + array ( + 'name' => 'PDF_TRAITEMENT', + 'type' => 'CLOB', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC1_NOM' => + array ( + 'name' => 'BLOC1_NOM', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC1_ZONE' => + array ( + 'name' => 'BLOC1_ZONE', + 'type' => 'VARCHAR2', + 'length' => 80, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC2_NOM' => + array ( + 'name' => 'BLOC2_NOM', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC1_REQUETE' => + array ( + 'name' => 'BLOC1_REQUETE', + 'type' => 'VARCHAR2', + 'length' => 4000, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC2_ZONE' => + array ( + 'name' => 'BLOC2_ZONE', + 'type' => 'VARCHAR2', + 'length' => 80, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC2_REQUETE' => + array ( + 'name' => 'BLOC2_REQUETE', + 'type' => 'VARCHAR2', + 'length' => 4000, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC3_NOM' => + array ( + 'name' => 'BLOC3_NOM', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC3_ZONE' => + array ( + 'name' => 'BLOC3_ZONE', + 'type' => 'VARCHAR2', + 'length' => 80, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC3_REQUETE' => + array ( + 'name' => 'BLOC3_REQUETE', + 'type' => 'VARCHAR2', + 'length' => 4000, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC4_NOM' => + array ( + 'name' => 'BLOC4_NOM', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC4_ZONE' => + array ( + 'name' => 'BLOC4_ZONE', + 'type' => 'VARCHAR2', + 'length' => 80, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC4_REQUETE' => + array ( + 'name' => 'BLOC4_REQUETE', + 'type' => 'VARCHAR2', + 'length' => 4000, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC5_NOM' => + array ( + 'name' => 'BLOC5_NOM', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC5_ZONE' => + array ( + 'name' => 'BLOC5_ZONE', + 'type' => 'VARCHAR2', + 'length' => 80, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC5_REQUETE' => + array ( + 'name' => 'BLOC5_REQUETE', + 'type' => 'VARCHAR2', + 'length' => 4000, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC6_NOM' => + array ( + 'name' => 'BLOC6_NOM', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC6_REQUETE' => + array ( + 'name' => 'BLOC6_REQUETE', + 'type' => 'VARCHAR2', + 'length' => 4000, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC6_ZONE' => + array ( + 'name' => 'BLOC6_ZONE', + 'type' => 'VARCHAR2', + 'length' => 80, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC7_NOM' => + array ( + 'name' => 'BLOC7_NOM', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC7_ZONE' => + array ( + 'name' => 'BLOC7_ZONE', + 'type' => 'VARCHAR2', + 'length' => 80, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC7_REQUETE' => + array ( + 'name' => 'BLOC7_REQUETE', + 'type' => 'VARCHAR2', + 'length' => 4000, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC8_NOM' => + array ( + 'name' => 'BLOC8_NOM', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC8_ZONE' => + array ( + 'name' => 'BLOC8_ZONE', + 'type' => 'VARCHAR2', + 'length' => 80, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC8_REQUETE' => + array ( + 'name' => 'BLOC8_REQUETE', + 'type' => 'VARCHAR2', + 'length' => 4000, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC9_NOM' => + array ( + 'name' => 'BLOC9_NOM', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC9_ZONE' => + array ( + 'name' => 'BLOC9_ZONE', + 'type' => 'VARCHAR2', + 'length' => 80, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC9_REQUETE' => + array ( + 'name' => 'BLOC9_REQUETE', + 'type' => 'VARCHAR2', + 'length' => 4000, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC10_NOM' => + array ( + 'name' => 'BLOC10_NOM', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC10_ZONE' => + array ( + 'name' => 'BLOC10_ZONE', + 'type' => 'VARCHAR2', + 'length' => 80, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC10_REQUETE' => + array ( + 'name' => 'BLOC10_REQUETE', + 'type' => 'VARCHAR2', + 'length' => 4000, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'AUTO_BREAK' => + array ( + 'name' => 'AUTO_BREAK', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '1', + ), + ), + ), + 'ETAT_VOLUME_HORAIRE' => + array ( + 'name' => 'ETAT_VOLUME_HORAIRE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => NULL, + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 30, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 80, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ORDRE' => + array ( + 'name' => 'ORDRE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + ), + ), + 'FICHIER' => + array ( + 'name' => 'FICHIER', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'FICHIER_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'NOM' => + array ( + 'name' => 'NOM', + 'type' => 'VARCHAR2', + 'length' => 128, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE' => + array ( + 'name' => 'TYPE', + 'type' => 'VARCHAR2', + 'length' => 128, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TAILLE' => + array ( + 'name' => 'TAILLE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CONTENU' => + array ( + 'name' => 'CONTENU', + 'type' => 'BLOB', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'DESCRIPTION' => + array ( + 'name' => 'DESCRIPTION', + 'type' => 'VARCHAR2', + 'length' => 256, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'VALIDATION_ID' => + array ( + 'name' => 'VALIDATION_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'FONCTION_REFERENTIEL' => + array ( + 'name' => 'FONCTION_REFERENTIEL', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'FONCTION_REFERENTIEL_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 32, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE_LONG' => + array ( + 'name' => 'LIBELLE_LONG', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE_COURT' => + array ( + 'name' => 'LIBELLE_COURT', + 'type' => 'VARCHAR2', + 'length' => 40, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'DOMAINE_FONCTIONNEL_ID' => + array ( + 'name' => 'DOMAINE_FONCTIONNEL_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'PLAFOND' => + array ( + 'name' => 'PLAFOND', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'STRUCTURE_ID' => + array ( + 'name' => 'STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ETAPE_REQUISE' => + array ( + 'name' => 'ETAPE_REQUISE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'SERVICE_STATUTAIRE' => + array ( + 'name' => 'SERVICE_STATUTAIRE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '1', + ), + 'PARENT_ID' => + array ( + 'name' => 'PARENT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'FORMULE' => + array ( + 'name' => 'FORMULE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => NULL, + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'PACKAGE_NAME' => + array ( + 'name' => 'PACKAGE_NAME', + 'type' => 'VARCHAR2', + 'length' => 30, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'PROCEDURE_NAME' => + array ( + 'name' => 'PROCEDURE_NAME', + 'type' => 'VARCHAR2', + 'length' => 30, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'I_PARAM_1_LIBELLE' => + array ( + 'name' => 'I_PARAM_1_LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'I_PARAM_2_LIBELLE' => + array ( + 'name' => 'I_PARAM_2_LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'I_PARAM_3_LIBELLE' => + array ( + 'name' => 'I_PARAM_3_LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'I_PARAM_4_LIBELLE' => + array ( + 'name' => 'I_PARAM_4_LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'I_PARAM_5_LIBELLE' => + array ( + 'name' => 'I_PARAM_5_LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'VH_PARAM_1_LIBELLE' => + array ( + 'name' => 'VH_PARAM_1_LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'VH_PARAM_2_LIBELLE' => + array ( + 'name' => 'VH_PARAM_2_LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'VH_PARAM_3_LIBELLE' => + array ( + 'name' => 'VH_PARAM_3_LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'VH_PARAM_4_LIBELLE' => + array ( + 'name' => 'VH_PARAM_4_LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'VH_PARAM_5_LIBELLE' => + array ( + 'name' => 'VH_PARAM_5_LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'FORMULE_RESULTAT' => + array ( + 'name' => 'FORMULE_RESULTAT', + 'temporary' => false, + 'logging' => false, + 'commentaire' => NULL, + 'sequence' => 'FORMULE_RESULTAT_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'INTERVENANT_ID' => + array ( + 'name' => 'INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_VOLUME_HORAIRE_ID' => + array ( + 'name' => 'TYPE_VOLUME_HORAIRE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ETAT_VOLUME_HORAIRE_ID' => + array ( + 'name' => 'ETAT_VOLUME_HORAIRE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SERVICE_DU' => + array ( + 'name' => 'SERVICE_DU', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'SERVICE_FI' => + array ( + 'name' => 'SERVICE_FI', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'SERVICE_FA' => + array ( + 'name' => 'SERVICE_FA', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'SERVICE_FC' => + array ( + 'name' => 'SERVICE_FC', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'SERVICE_REFERENTIEL' => + array ( + 'name' => 'SERVICE_REFERENTIEL', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'HEURES_COMPL_FI' => + array ( + 'name' => 'HEURES_COMPL_FI', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'HEURES_COMPL_FA' => + array ( + 'name' => 'HEURES_COMPL_FA', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'HEURES_COMPL_FC' => + array ( + 'name' => 'HEURES_COMPL_FC', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'HEURES_COMPL_FC_MAJOREES' => + array ( + 'name' => 'HEURES_COMPL_FC_MAJOREES', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'HEURES_COMPL_REFERENTIEL' => + array ( + 'name' => 'HEURES_COMPL_REFERENTIEL', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'TOTAL' => + array ( + 'name' => 'TOTAL', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'SOLDE' => + array ( + 'name' => 'SOLDE', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'SOUS_SERVICE' => + array ( + 'name' => 'SOUS_SERVICE', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'HEURES_COMPL' => + array ( + 'name' => 'HEURES_COMPL', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'TYPE_INTERVENANT_CODE' => + array ( + 'name' => 'TYPE_INTERVENANT_CODE', + 'type' => 'VARCHAR2', + 'length' => 5, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + ), + ), + 'FORMULE_RESULTAT_SERVICE' => + array ( + 'name' => 'FORMULE_RESULTAT_SERVICE', + 'temporary' => false, + 'logging' => false, + 'commentaire' => NULL, + 'sequence' => 'FORMULE_RESULTAT_SERVIC_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'FORMULE_RESULTAT_ID' => + array ( + 'name' => 'FORMULE_RESULTAT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SERVICE_ID' => + array ( + 'name' => 'SERVICE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SERVICE_FI' => + array ( + 'name' => 'SERVICE_FI', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'SERVICE_FA' => + array ( + 'name' => 'SERVICE_FA', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'SERVICE_FC' => + array ( + 'name' => 'SERVICE_FC', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'HEURES_COMPL_FI' => + array ( + 'name' => 'HEURES_COMPL_FI', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'HEURES_COMPL_FA' => + array ( + 'name' => 'HEURES_COMPL_FA', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'HEURES_COMPL_FC' => + array ( + 'name' => 'HEURES_COMPL_FC', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'HEURES_COMPL_FC_MAJOREES' => + array ( + 'name' => 'HEURES_COMPL_FC_MAJOREES', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'TOTAL' => + array ( + 'name' => 'TOTAL', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + ), + ), + 'FORMULE_RESULTAT_SERVICE_REF' => + array ( + 'name' => 'FORMULE_RESULTAT_SERVICE_REF', + 'temporary' => false, + 'logging' => false, + 'commentaire' => NULL, + 'sequence' => 'FORMULE_RESULTAT_SERVIC_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'FORMULE_RESULTAT_ID' => + array ( + 'name' => 'FORMULE_RESULTAT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SERVICE_REFERENTIEL_ID' => + array ( + 'name' => 'SERVICE_REFERENTIEL_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SERVICE_REFERENTIEL' => + array ( + 'name' => 'SERVICE_REFERENTIEL', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'HEURES_COMPL_REFERENTIEL' => + array ( + 'name' => 'HEURES_COMPL_REFERENTIEL', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'TOTAL' => + array ( + 'name' => 'TOTAL', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + ), + ), + 'FORMULE_RESULTAT_VH' => + array ( + 'name' => 'FORMULE_RESULTAT_VH', + 'temporary' => false, + 'logging' => false, + 'commentaire' => NULL, + 'sequence' => 'FORMULE_RESULTAT_VH_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'FORMULE_RESULTAT_ID' => + array ( + 'name' => 'FORMULE_RESULTAT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'VOLUME_HORAIRE_ID' => + array ( + 'name' => 'VOLUME_HORAIRE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SERVICE_FI' => + array ( + 'name' => 'SERVICE_FI', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'SERVICE_FA' => + array ( + 'name' => 'SERVICE_FA', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'SERVICE_FC' => + array ( + 'name' => 'SERVICE_FC', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'HEURES_COMPL_FI' => + array ( + 'name' => 'HEURES_COMPL_FI', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'HEURES_COMPL_FA' => + array ( + 'name' => 'HEURES_COMPL_FA', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'HEURES_COMPL_FC' => + array ( + 'name' => 'HEURES_COMPL_FC', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'HEURES_COMPL_FC_MAJOREES' => + array ( + 'name' => 'HEURES_COMPL_FC_MAJOREES', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'TOTAL' => + array ( + 'name' => 'TOTAL', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + ), + ), + 'FORMULE_RESULTAT_VH_REF' => + array ( + 'name' => 'FORMULE_RESULTAT_VH_REF', + 'temporary' => false, + 'logging' => false, + 'commentaire' => NULL, + 'sequence' => 'FORMULE_RESULTAT_VH_REF_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'FORMULE_RESULTAT_ID' => + array ( + 'name' => 'FORMULE_RESULTAT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'VOLUME_HORAIRE_REF_ID' => + array ( + 'name' => 'VOLUME_HORAIRE_REF_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SERVICE_REFERENTIEL' => + array ( + 'name' => 'SERVICE_REFERENTIEL', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'HEURES_COMPL_REFERENTIEL' => + array ( + 'name' => 'HEURES_COMPL_REFERENTIEL', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'TOTAL' => + array ( + 'name' => 'TOTAL', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + ), + ), + 'FORMULE_TEST_INTERVENANT' => + array ( + 'name' => 'FORMULE_TEST_INTERVENANT', + 'temporary' => false, + 'logging' => true, + 'commentaire' => 'sequence=FTEST_INTERVENANT_ID_SEQ;', + 'sequence' => 'FTEST_INTERVENANT_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 150, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'FORMULE_ID' => + array ( + 'name' => 'FORMULE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ANNEE_ID' => + array ( + 'name' => 'ANNEE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_INTERVENANT_ID' => + array ( + 'name' => 'TYPE_INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => '1', + ), + 'STRUCTURE_TEST_ID' => + array ( + 'name' => 'STRUCTURE_TEST_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_VOLUME_HORAIRE_ID' => + array ( + 'name' => 'TYPE_VOLUME_HORAIRE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => '1', + ), + 'ETAT_VOLUME_HORAIRE_ID' => + array ( + 'name' => 'ETAT_VOLUME_HORAIRE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => '1', + ), + 'HEURES_DECHARGE' => + array ( + 'name' => 'HEURES_DECHARGE', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => NULL, + ), + 'HEURES_SERVICE_STATUTAIRE' => + array ( + 'name' => 'HEURES_SERVICE_STATUTAIRE', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'HEURES_SERVICE_MODIFIE' => + array ( + 'name' => 'HEURES_SERVICE_MODIFIE', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'DEPASSEMENT_SERVICE_DU_SANS_HC' => + array ( + 'name' => 'DEPASSEMENT_SERVICE_DU_SANS_HC', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'PARAM_1' => + array ( + 'name' => 'PARAM_1', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'PARAM_2' => + array ( + 'name' => 'PARAM_2', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'PARAM_3' => + array ( + 'name' => 'PARAM_3', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'PARAM_4' => + array ( + 'name' => 'PARAM_4', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'PARAM_5' => + array ( + 'name' => 'PARAM_5', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'A_SERVICE_DU' => + array ( + 'name' => 'A_SERVICE_DU', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'C_SERVICE_DU' => + array ( + 'name' => 'C_SERVICE_DU', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => true, + 'default' => NULL, + ), + 'DEBUG_INFO' => + array ( + 'name' => 'DEBUG_INFO', + 'type' => 'CLOB', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'TAUX_TP_SERVICE_DU' => + array ( + 'name' => 'TAUX_TP_SERVICE_DU', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '1', + ), + 'TAUX_AUTRE_SERVICE_DU' => + array ( + 'name' => 'TAUX_AUTRE_SERVICE_DU', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '1', + ), + 'TAUX_AUTRE_SERVICE_COMPL' => + array ( + 'name' => 'TAUX_AUTRE_SERVICE_COMPL', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '1', + ), + 'TAUX_CM_SERVICE_DU' => + array ( + 'name' => 'TAUX_CM_SERVICE_DU', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '1.5', + ), + 'TAUX_CM_SERVICE_COMPL' => + array ( + 'name' => 'TAUX_CM_SERVICE_COMPL', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '1.5', + ), + 'TAUX_TP_SERVICE_COMPL' => + array ( + 'name' => 'TAUX_TP_SERVICE_COMPL', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '2/3', + ), + ), + ), + 'FORMULE_TEST_STRUCTURE' => + array ( + 'name' => 'FORMULE_TEST_STRUCTURE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => 'sequence=FTEST_STRUCTURE_ID_SEQ;', + 'sequence' => 'FTEST_STRUCTURE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 80, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'UNIVERSITE' => + array ( + 'name' => 'UNIVERSITE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + ), + ), + 'FORMULE_TEST_VOLUME_HORAIRE' => + array ( + 'name' => 'FORMULE_TEST_VOLUME_HORAIRE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => 'sequence=FTEST_VOLUME_HORAIRE_ID_SEQ;', + 'sequence' => 'FTEST_VOLUME_HORAIRE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'INTERVENANT_TEST_ID' => + array ( + 'name' => 'INTERVENANT_TEST_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'STRUCTURE_TEST_ID' => + array ( + 'name' => 'STRUCTURE_TEST_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'REFERENTIEL' => + array ( + 'name' => 'REFERENTIEL', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'SERVICE_STATUTAIRE' => + array ( + 'name' => 'SERVICE_STATUTAIRE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '1', + ), + 'TAUX_FI' => + array ( + 'name' => 'TAUX_FI', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '1', + ), + 'TAUX_FA' => + array ( + 'name' => 'TAUX_FA', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'TAUX_FC' => + array ( + 'name' => 'TAUX_FC', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'PONDERATION_SERVICE_DU' => + array ( + 'name' => 'PONDERATION_SERVICE_DU', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '1', + ), + 'PONDERATION_SERVICE_COMPL' => + array ( + 'name' => 'PONDERATION_SERVICE_COMPL', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '1', + ), + 'PARAM_1' => + array ( + 'name' => 'PARAM_1', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'PARAM_2' => + array ( + 'name' => 'PARAM_2', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'PARAM_3' => + array ( + 'name' => 'PARAM_3', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'PARAM_4' => + array ( + 'name' => 'PARAM_4', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'PARAM_5' => + array ( + 'name' => 'PARAM_5', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HEURES' => + array ( + 'name' => 'HEURES', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'A_SERVICE_FI' => + array ( + 'name' => 'A_SERVICE_FI', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => true, + 'default' => NULL, + ), + 'A_SERVICE_FA' => + array ( + 'name' => 'A_SERVICE_FA', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => true, + 'default' => NULL, + ), + 'A_SERVICE_FC' => + array ( + 'name' => 'A_SERVICE_FC', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => true, + 'default' => NULL, + ), + 'A_SERVICE_REFERENTIEL' => + array ( + 'name' => 'A_SERVICE_REFERENTIEL', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => true, + 'default' => NULL, + ), + 'A_HEURES_COMPL_FI' => + array ( + 'name' => 'A_HEURES_COMPL_FI', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => true, + 'default' => NULL, + ), + 'A_HEURES_COMPL_FA' => + array ( + 'name' => 'A_HEURES_COMPL_FA', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => true, + 'default' => NULL, + ), + 'A_HEURES_COMPL_FC' => + array ( + 'name' => 'A_HEURES_COMPL_FC', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => true, + 'default' => NULL, + ), + 'A_HEURES_COMPL_FC_MAJOREES' => + array ( + 'name' => 'A_HEURES_COMPL_FC_MAJOREES', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => true, + 'default' => NULL, + ), + 'A_HEURES_COMPL_REFERENTIEL' => + array ( + 'name' => 'A_HEURES_COMPL_REFERENTIEL', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => true, + 'default' => NULL, + ), + 'C_SERVICE_FI' => + array ( + 'name' => 'C_SERVICE_FI', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => true, + 'default' => NULL, + ), + 'C_SERVICE_FA' => + array ( + 'name' => 'C_SERVICE_FA', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => true, + 'default' => NULL, + ), + 'C_SERVICE_FC' => + array ( + 'name' => 'C_SERVICE_FC', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => true, + 'default' => NULL, + ), + 'C_SERVICE_REFERENTIEL' => + array ( + 'name' => 'C_SERVICE_REFERENTIEL', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => true, + 'default' => NULL, + ), + 'C_HEURES_COMPL_FI' => + array ( + 'name' => 'C_HEURES_COMPL_FI', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => true, + 'default' => NULL, + ), + 'C_HEURES_COMPL_FA' => + array ( + 'name' => 'C_HEURES_COMPL_FA', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => true, + 'default' => NULL, + ), + 'C_HEURES_COMPL_FC' => + array ( + 'name' => 'C_HEURES_COMPL_FC', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => true, + 'default' => NULL, + ), + 'C_HEURES_COMPL_FC_MAJOREES' => + array ( + 'name' => 'C_HEURES_COMPL_FC_MAJOREES', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => true, + 'default' => NULL, + ), + 'C_HEURES_COMPL_REFERENTIEL' => + array ( + 'name' => 'C_HEURES_COMPL_REFERENTIEL', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => true, + 'default' => NULL, + ), + 'DEBUG_INFO' => + array ( + 'name' => 'DEBUG_INFO', + 'type' => 'CLOB', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'TYPE_INTERVENTION_CODE' => + array ( + 'name' => 'TYPE_INTERVENTION_CODE', + 'type' => 'VARCHAR2', + 'length' => 15, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'GRADE' => + array ( + 'name' => 'GRADE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'GRADE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE_LONG' => + array ( + 'name' => 'LIBELLE_LONG', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE_COURT' => + array ( + 'name' => 'LIBELLE_COURT', + 'type' => 'VARCHAR2', + 'length' => 20, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ECHELLE' => + array ( + 'name' => 'ECHELLE', + 'type' => 'VARCHAR2', + 'length' => 10, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'CORPS_ID' => + array ( + 'name' => 'CORPS_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'GROUPE' => + array ( + 'name' => 'GROUPE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'GROUPE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ELEMENT_PEDAGOGIQUE_ID' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_INTERVENTION_ID' => + array ( + 'name' => 'TYPE_INTERVENTION_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'NOMBRE' => + array ( + 'name' => 'NOMBRE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + ), + ), + 'GROUPE_TYPE_FORMATION' => + array ( + 'name' => 'GROUPE_TYPE_FORMATION', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'GROUPE_TYPE_FORMATION_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE_COURT' => + array ( + 'name' => 'LIBELLE_COURT', + 'type' => 'VARCHAR2', + 'length' => 20, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE_LONG' => + array ( + 'name' => 'LIBELLE_LONG', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ORDRE' => + array ( + 'name' => 'ORDRE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'PERTINENCE_NIVEAU' => + array ( + 'name' => 'PERTINENCE_NIVEAU', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '1', + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'HISTO_INTERVENANT_SERVICE' => + array ( + 'name' => 'HISTO_INTERVENANT_SERVICE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'HISTO_INTERVENANT_SERVI_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'INTERVENANT_ID' => + array ( + 'name' => 'INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_VOLUME_HORAIRE_ID' => + array ( + 'name' => 'TYPE_VOLUME_HORAIRE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'REFERENTIEL' => + array ( + 'name' => 'REFERENTIEL', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + ), + ), + 'IMPORT_TABLES' => + array ( + 'name' => 'IMPORT_TABLES', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => NULL, + 'columns' => + array ( + 'TABLE_NAME' => + array ( + 'name' => 'TABLE_NAME', + 'type' => 'VARCHAR2', + 'length' => 30, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SYNC_FILTRE' => + array ( + 'name' => 'SYNC_FILTRE', + 'type' => 'VARCHAR2', + 'length' => 2000, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'SYNC_ENABLED' => + array ( + 'name' => 'SYNC_ENABLED', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'SYNC_JOB' => + array ( + 'name' => 'SYNC_JOB', + 'type' => 'VARCHAR2', + 'length' => 40, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'SYNC_HOOK_BEFORE' => + array ( + 'name' => 'SYNC_HOOK_BEFORE', + 'type' => 'VARCHAR2', + 'length' => 4000, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'SYNC_HOOK_AFTER' => + array ( + 'name' => 'SYNC_HOOK_AFTER', + 'type' => 'VARCHAR2', + 'length' => 4000, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ORDRE' => + array ( + 'name' => 'ORDRE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'INDICATEUR' => + array ( + 'name' => 'INDICATEUR', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'INDICATEUR_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE' => + array ( + 'name' => 'TYPE', + 'type' => 'VARCHAR2', + 'length' => 64, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ORDRE' => + array ( + 'name' => 'ORDRE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => '100', + ), + 'ENABLED' => + array ( + 'name' => 'ENABLED', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '1', + ), + 'NUMERO' => + array ( + 'name' => 'NUMERO', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => '0', + ), + 'LIBELLE_SINGULIER' => + array ( + 'name' => 'LIBELLE_SINGULIER', + 'type' => 'VARCHAR2', + 'length' => 255, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE_PLURIEL' => + array ( + 'name' => 'LIBELLE_PLURIEL', + 'type' => 'VARCHAR2', + 'length' => 255, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ROUTE' => + array ( + 'name' => 'ROUTE', + 'type' => 'VARCHAR2', + 'length' => 250, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TEM_DISTINCT' => + array ( + 'name' => 'TEM_DISTINCT', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '1', + ), + 'TEM_NOT_STRUCTURE' => + array ( + 'name' => 'TEM_NOT_STRUCTURE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'MESSAGE' => + array ( + 'name' => 'MESSAGE', + 'type' => 'VARCHAR2', + 'length' => 800, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'INDIC_MODIF_DOSSIER' => + array ( + 'name' => 'INDIC_MODIF_DOSSIER', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'INDIC_MODIF_DOSSIER_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'INTERVENANT_ID' => + array ( + 'name' => 'INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ATTR_NAME' => + array ( + 'name' => 'ATTR_NAME', + 'type' => 'VARCHAR2', + 'length' => 128, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ATTR_OLD_SOURCE_NAME' => + array ( + 'name' => 'ATTR_OLD_SOURCE_NAME', + 'type' => 'VARCHAR2', + 'length' => 128, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ATTR_OLD_VALUE' => + array ( + 'name' => 'ATTR_OLD_VALUE', + 'type' => 'VARCHAR2', + 'length' => 1024, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ATTR_NEW_SOURCE_NAME' => + array ( + 'name' => 'ATTR_NEW_SOURCE_NAME', + 'type' => 'VARCHAR2', + 'length' => 128, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ATTR_NEW_VALUE' => + array ( + 'name' => 'ATTR_NEW_VALUE', + 'type' => 'VARCHAR2', + 'length' => 1024, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'EST_CREATION_DOSSIER' => + array ( + 'name' => 'EST_CREATION_DOSSIER', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => '0', + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + ), + ), + 'INTERVENANT' => + array ( + 'name' => 'INTERVENANT', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'INTERVENANT_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CIVILITE_ID' => + array ( + 'name' => 'CIVILITE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'NOM_USUEL' => + array ( + 'name' => 'NOM_USUEL', + 'type' => 'VARCHAR2', + 'length' => 60, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'PRENOM' => + array ( + 'name' => 'PRENOM', + 'type' => 'VARCHAR2', + 'length' => 60, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'NOM_PATRONYMIQUE' => + array ( + 'name' => 'NOM_PATRONYMIQUE', + 'type' => 'VARCHAR2', + 'length' => 60, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'DATE_NAISSANCE' => + array ( + 'name' => 'DATE_NAISSANCE', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'VILLE_NAISSANCE_CODE_INSEE' => + array ( + 'name' => 'VILLE_NAISSANCE_CODE_INSEE', + 'type' => 'VARCHAR2', + 'length' => 5, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'VILLE_NAISSANCE_LIBELLE' => + array ( + 'name' => 'VILLE_NAISSANCE_LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 60, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'TEL_PRO' => + array ( + 'name' => 'TEL_PRO', + 'type' => 'VARCHAR2', + 'length' => 20, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'TEL_MOBILE' => + array ( + 'name' => 'TEL_MOBILE', + 'type' => 'VARCHAR2', + 'length' => 20, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'EMAIL' => + array ( + 'name' => 'EMAIL', + 'type' => 'VARCHAR2', + 'length' => 255, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'STATUT_ID' => + array ( + 'name' => 'STATUT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'STRUCTURE_ID' => + array ( + 'name' => 'STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'DISCIPLINE_ID' => + array ( + 'name' => 'DISCIPLINE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'NUMERO_INSEE' => + array ( + 'name' => 'NUMERO_INSEE', + 'type' => 'VARCHAR2', + 'length' => 13, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'NUMERO_INSEE_CLE' => + array ( + 'name' => 'NUMERO_INSEE_CLE', + 'type' => 'VARCHAR2', + 'length' => 2, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'NUMERO_INSEE_PROVISOIRE' => + array ( + 'name' => 'NUMERO_INSEE_PROVISOIRE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => true, + 'default' => NULL, + ), + 'IBAN' => + array ( + 'name' => 'IBAN', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BIC' => + array ( + 'name' => 'BIC', + 'type' => 'VARCHAR2', + 'length' => 20, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'MONTANT_INDEMNITE_FC' => + array ( + 'name' => 'MONTANT_INDEMNITE_FC', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'PREMIER_RECRUTEMENT' => + array ( + 'name' => 'PREMIER_RECRUTEMENT', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => true, + 'default' => NULL, + ), + 'ANNEE_ID' => + array ( + 'name' => 'ANNEE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'GRADE_ID' => + array ( + 'name' => 'GRADE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'CRITERE_RECHERCHE' => + array ( + 'name' => 'CRITERE_RECHERCHE', + 'type' => 'VARCHAR2', + 'length' => 255, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 60, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'UTILISATEUR_CODE' => + array ( + 'name' => 'UTILISATEUR_CODE', + 'type' => 'VARCHAR2', + 'length' => 60, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'PAYS_NAISSANCE_ID' => + array ( + 'name' => 'PAYS_NAISSANCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'DEP_NAISSANCE_ID' => + array ( + 'name' => 'DEP_NAISSANCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'PAYS_NATIONALITE_ID' => + array ( + 'name' => 'PAYS_NATIONALITE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'INTERVENANT_SAISIE' => + array ( + 'name' => 'INTERVENANT_SAISIE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'INTERVENANT_SAISIE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'INTERVENANT_ID' => + array ( + 'name' => 'INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'STATUT_ID' => + array ( + 'name' => 'STATUT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'LIEN' => + array ( + 'name' => 'LIEN', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'LIEN_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'NOEUD_SUP_ID' => + array ( + 'name' => 'NOEUD_SUP_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'NOEUD_INF_ID' => + array ( + 'name' => 'NOEUD_INF_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'STRUCTURE_ID' => + array ( + 'name' => 'STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'LISTE_NOIRE' => + array ( + 'name' => 'LISTE_NOIRE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => NULL, + 'columns' => + array ( + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + ), + ), + 'MISE_EN_PAIEMENT' => + array ( + 'name' => 'MISE_EN_PAIEMENT', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'MISE_EN_PAIEMENT_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'FORMULE_RES_SERVICE_ID' => + array ( + 'name' => 'FORMULE_RES_SERVICE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'FORMULE_RES_SERVICE_REF_ID' => + array ( + 'name' => 'FORMULE_RES_SERVICE_REF_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'DATE_MISE_EN_PAIEMENT' => + array ( + 'name' => 'DATE_MISE_EN_PAIEMENT', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'PERIODE_PAIEMENT_ID' => + array ( + 'name' => 'PERIODE_PAIEMENT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'CENTRE_COUT_ID' => + array ( + 'name' => 'CENTRE_COUT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'DOMAINE_FONCTIONNEL_ID' => + array ( + 'name' => 'DOMAINE_FONCTIONNEL_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'TYPE_HEURES_ID' => + array ( + 'name' => 'TYPE_HEURES_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HEURES' => + array ( + 'name' => 'HEURES', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'VALIDATION_ID' => + array ( + 'name' => 'VALIDATION_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'DATE_VALIDATION' => + array ( + 'name' => 'DATE_VALIDATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'MODELE_CONTRAT' => + array ( + 'name' => 'MODELE_CONTRAT', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'MODELE_CONTRAT_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 250, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'STATUT_INTERVENANT_ID' => + array ( + 'name' => 'STATUT_INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'STRUCTURE_ID' => + array ( + 'name' => 'STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'FICHIER' => + array ( + 'name' => 'FICHIER', + 'type' => 'BLOB', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'REQUETE' => + array ( + 'name' => 'REQUETE', + 'type' => 'VARCHAR2', + 'length' => 4000, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC1_NOM' => + array ( + 'name' => 'BLOC1_NOM', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC1_ZONE' => + array ( + 'name' => 'BLOC1_ZONE', + 'type' => 'VARCHAR2', + 'length' => 80, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC1_REQUETE' => + array ( + 'name' => 'BLOC1_REQUETE', + 'type' => 'VARCHAR2', + 'length' => 4000, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC2_NOM' => + array ( + 'name' => 'BLOC2_NOM', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC2_ZONE' => + array ( + 'name' => 'BLOC2_ZONE', + 'type' => 'VARCHAR2', + 'length' => 80, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC2_REQUETE' => + array ( + 'name' => 'BLOC2_REQUETE', + 'type' => 'VARCHAR2', + 'length' => 4000, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC3_NOM' => + array ( + 'name' => 'BLOC3_NOM', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC3_ZONE' => + array ( + 'name' => 'BLOC3_ZONE', + 'type' => 'VARCHAR2', + 'length' => 80, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC3_REQUETE' => + array ( + 'name' => 'BLOC3_REQUETE', + 'type' => 'VARCHAR2', + 'length' => 4000, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC4_NOM' => + array ( + 'name' => 'BLOC4_NOM', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC4_ZONE' => + array ( + 'name' => 'BLOC4_ZONE', + 'type' => 'VARCHAR2', + 'length' => 80, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC4_REQUETE' => + array ( + 'name' => 'BLOC4_REQUETE', + 'type' => 'VARCHAR2', + 'length' => 4000, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC5_NOM' => + array ( + 'name' => 'BLOC5_NOM', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC5_ZONE' => + array ( + 'name' => 'BLOC5_ZONE', + 'type' => 'VARCHAR2', + 'length' => 80, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC5_REQUETE' => + array ( + 'name' => 'BLOC5_REQUETE', + 'type' => 'VARCHAR2', + 'length' => 4000, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC6_NOM' => + array ( + 'name' => 'BLOC6_NOM', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC6_ZONE' => + array ( + 'name' => 'BLOC6_ZONE', + 'type' => 'VARCHAR2', + 'length' => 80, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC6_REQUETE' => + array ( + 'name' => 'BLOC6_REQUETE', + 'type' => 'VARCHAR2', + 'length' => 4000, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC7_NOM' => + array ( + 'name' => 'BLOC7_NOM', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC7_ZONE' => + array ( + 'name' => 'BLOC7_ZONE', + 'type' => 'VARCHAR2', + 'length' => 80, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC7_REQUETE' => + array ( + 'name' => 'BLOC7_REQUETE', + 'type' => 'VARCHAR2', + 'length' => 4000, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC8_NOM' => + array ( + 'name' => 'BLOC8_NOM', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC8_ZONE' => + array ( + 'name' => 'BLOC8_ZONE', + 'type' => 'VARCHAR2', + 'length' => 80, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC8_REQUETE' => + array ( + 'name' => 'BLOC8_REQUETE', + 'type' => 'VARCHAR2', + 'length' => 4000, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC9_NOM' => + array ( + 'name' => 'BLOC9_NOM', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC9_ZONE' => + array ( + 'name' => 'BLOC9_ZONE', + 'type' => 'VARCHAR2', + 'length' => 80, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC9_REQUETE' => + array ( + 'name' => 'BLOC9_REQUETE', + 'type' => 'VARCHAR2', + 'length' => 4000, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC10_NOM' => + array ( + 'name' => 'BLOC10_NOM', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC10_ZONE' => + array ( + 'name' => 'BLOC10_ZONE', + 'type' => 'VARCHAR2', + 'length' => 80, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'BLOC10_REQUETE' => + array ( + 'name' => 'BLOC10_REQUETE', + 'type' => 'VARCHAR2', + 'length' => 4000, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'MODIFICATION_SERVICE_DU' => + array ( + 'name' => 'MODIFICATION_SERVICE_DU', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'MODIFICATION_SERVICE_DU_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'INTERVENANT_ID' => + array ( + 'name' => 'INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HEURES' => + array ( + 'name' => 'HEURES', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => NULL, + ), + 'MOTIF_ID' => + array ( + 'name' => 'MOTIF_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'COMMENTAIRES' => + array ( + 'name' => 'COMMENTAIRES', + 'type' => 'VARCHAR2', + 'length' => 4000, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'MODULATEUR' => + array ( + 'name' => 'MODULATEUR', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'MODULATEUR_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 30, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 40, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_MODULATEUR_ID' => + array ( + 'name' => 'TYPE_MODULATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'PONDERATION_SERVICE_DU' => + array ( + 'name' => 'PONDERATION_SERVICE_DU', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => NULL, + ), + 'PONDERATION_SERVICE_COMPL' => + array ( + 'name' => 'PONDERATION_SERVICE_COMPL', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'MOTIF_MODIFICATION_SERVICE' => + array ( + 'name' => 'MOTIF_MODIFICATION_SERVICE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'MOTIF_MODIFICATION_SERV_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 64, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 150, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'MULTIPLICATEUR' => + array ( + 'name' => 'MULTIPLICATEUR', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'DECHARGE' => + array ( + 'name' => 'DECHARGE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'MOTIF_NON_PAIEMENT' => + array ( + 'name' => 'MOTIF_NON_PAIEMENT', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'MOTIF_NON_PAIEMENT_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 3, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE_COURT' => + array ( + 'name' => 'LIBELLE_COURT', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE_LONG' => + array ( + 'name' => 'LIBELLE_LONG', + 'type' => 'VARCHAR2', + 'length' => 200, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'NOEUD' => + array ( + 'name' => 'NOEUD', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'NOEUD_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 255, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LISTE' => + array ( + 'name' => 'LISTE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'ANNEE_ID' => + array ( + 'name' => 'ANNEE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ETAPE_ID' => + array ( + 'name' => 'ETAPE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ELEMENT_PEDAGOGIQUE_ID' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'STRUCTURE_ID' => + array ( + 'name' => 'STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'NOTIFICATION_INDICATEUR' => + array ( + 'name' => 'NOTIFICATION_INDICATEUR', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'NOTIFICATION_INDICATEUR_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'INDICATEUR_ID' => + array ( + 'name' => 'INDICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'AFFECTATION_ID' => + array ( + 'name' => 'AFFECTATION_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'FREQUENCE' => + array ( + 'name' => 'FREQUENCE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'DATE_ABONNEMENT' => + array ( + 'name' => 'DATE_ABONNEMENT', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'DATE_DERN_NOTIF' => + array ( + 'name' => 'DATE_DERN_NOTIF', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'IN_HOME' => + array ( + 'name' => 'IN_HOME', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + ), + ), + 'PARAMETRE' => + array ( + 'name' => 'PARAMETRE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'PARAMETRE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'NOM' => + array ( + 'name' => 'NOM', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'VALEUR' => + array ( + 'name' => 'VALEUR', + 'type' => 'VARCHAR2', + 'length' => 200, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'DESCRIPTION' => + array ( + 'name' => 'DESCRIPTION', + 'type' => 'VARCHAR2', + 'length' => 500, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'PAYS' => + array ( + 'name' => 'PAYS', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'PAYS_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE_LONG' => + array ( + 'name' => 'LIBELLE_LONG', + 'type' => 'VARCHAR2', + 'length' => 120, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE_COURT' => + array ( + 'name' => 'LIBELLE_COURT', + 'type' => 'VARCHAR2', + 'length' => 60, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TEMOIN_UE' => + array ( + 'name' => 'TEMOIN_UE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => NULL, + ), + 'VALIDITE_DEBUT' => + array ( + 'name' => 'VALIDITE_DEBUT', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'VALIDITE_FIN' => + array ( + 'name' => 'VALIDITE_FIN', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'PERIMETRE' => + array ( + 'name' => 'PERIMETRE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'PERIMETRE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 30, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 150, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + ), + ), + 'PERIODE' => + array ( + 'name' => 'PERIODE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'PERIODE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 3, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE_LONG' => + array ( + 'name' => 'LIBELLE_LONG', + 'type' => 'VARCHAR2', + 'length' => 40, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE_COURT' => + array ( + 'name' => 'LIBELLE_COURT', + 'type' => 'VARCHAR2', + 'length' => 15, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ECART_MOIS' => + array ( + 'name' => 'ECART_MOIS', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ECART_MOIS_PAIEMENT' => + array ( + 'name' => 'ECART_MOIS_PAIEMENT', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ORDRE' => + array ( + 'name' => 'ORDRE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ENSEIGNEMENT' => + array ( + 'name' => 'ENSEIGNEMENT', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => true, + 'default' => NULL, + ), + 'PAIEMENT' => + array ( + 'name' => 'PAIEMENT', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'PIECE_JOINTE' => + array ( + 'name' => 'PIECE_JOINTE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'PIECE_JOINTE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_PIECE_JOINTE_ID' => + array ( + 'name' => 'TYPE_PIECE_JOINTE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'INTERVENANT_ID' => + array ( + 'name' => 'INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'VALIDATION_ID' => + array ( + 'name' => 'VALIDATION_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'PIECE_JOINTE_FICHIER' => + array ( + 'name' => 'PIECE_JOINTE_FICHIER', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'PIECE_JOINTE_FICHIER_ID_SEQ', + 'columns' => + array ( + 'PIECE_JOINTE_ID' => + array ( + 'name' => 'PIECE_JOINTE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'FICHIER_ID' => + array ( + 'name' => 'FICHIER_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + ), + ), + 'PLAFOND' => + array ( + 'name' => 'PLAFOND', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => NULL, + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 40, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 150, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + ), + ), + 'PLAFOND_APPLICATION' => + array ( + 'name' => 'PLAFOND_APPLICATION', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'PLAFOND_APPLICATION_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'PLAFOND_ID' => + array ( + 'name' => 'PLAFOND_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'PLAFOND_ETAT_ID' => + array ( + 'name' => 'PLAFOND_ETAT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ANNEE_DEBUT_ID' => + array ( + 'name' => 'ANNEE_DEBUT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ANNEE_FIN_ID' => + array ( + 'name' => 'ANNEE_FIN_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'TYPE_VOLUME_HORAIRE_ID' => + array ( + 'name' => 'TYPE_VOLUME_HORAIRE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + ), + ), + 'PLAFOND_ETAT' => + array ( + 'name' => 'PLAFOND_ETAT', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'PLAFOND_ETAT_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 20, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + ), + ), + 'PRIVILEGE' => + array ( + 'name' => 'PRIVILEGE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'PRIVILEGE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CATEGORIE_ID' => + array ( + 'name' => 'CATEGORIE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 150, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 200, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ORDRE' => + array ( + 'name' => 'ORDRE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'REGLE_STRUCTURE_VALIDATION' => + array ( + 'name' => 'REGLE_STRUCTURE_VALIDATION', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'REGLE_STRUCTURE_VALIDAT_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_VOLUME_HORAIRE_ID' => + array ( + 'name' => 'TYPE_VOLUME_HORAIRE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_INTERVENANT_ID' => + array ( + 'name' => 'TYPE_INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'PRIORITE' => + array ( + 'name' => 'PRIORITE', + 'type' => 'VARCHAR2', + 'length' => 20, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'MESSAGE' => + array ( + 'name' => 'MESSAGE', + 'type' => 'VARCHAR2', + 'length' => 500, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'ROLE' => + array ( + 'name' => 'ROLE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'ROLE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 64, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'PERIMETRE_ID' => + array ( + 'name' => 'PERIMETRE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'PEUT_CHANGER_STRUCTURE' => + array ( + 'name' => 'PEUT_CHANGER_STRUCTURE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'ROLE_PRIVILEGE' => + array ( + 'name' => 'ROLE_PRIVILEGE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'ROLE_PRIVILEGE_ID_SEQ', + 'columns' => + array ( + 'ROLE_ID' => + array ( + 'name' => 'ROLE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'PRIVILEGE_ID' => + array ( + 'name' => 'PRIVILEGE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + ), + ), + 'SCENARIO' => + array ( + 'name' => 'SCENARIO', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'SCENARIO_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 200, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'STRUCTURE_ID' => + array ( + 'name' => 'STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'TYPE' => + array ( + 'name' => 'TYPE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 2, + 'nullable' => false, + 'default' => '0', + ), + ), + ), + 'SCENARIO_LIEN' => + array ( + 'name' => 'SCENARIO_LIEN', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'SCENARIO_LIEN_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SCENARIO_ID' => + array ( + 'name' => 'SCENARIO_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIEN_ID' => + array ( + 'name' => 'LIEN_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ACTIF' => + array ( + 'name' => 'ACTIF', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '1', + ), + 'POIDS' => + array ( + 'name' => 'POIDS', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '1', + ), + 'CHOIX_MINIMUM' => + array ( + 'name' => 'CHOIX_MINIMUM', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => '0', + ), + 'CHOIX_MAXIMUM' => + array ( + 'name' => 'CHOIX_MAXIMUM', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => '0', + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'SCENARIO_NOEUD' => + array ( + 'name' => 'SCENARIO_NOEUD', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'SCENARIO_NOEUD_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SCENARIO_ID' => + array ( + 'name' => 'SCENARIO_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'NOEUD_ID' => + array ( + 'name' => 'NOEUD_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ASSIDUITE' => + array ( + 'name' => 'ASSIDUITE', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HEURES' => + array ( + 'name' => 'HEURES', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'SCENARIO_NOEUD_EFFECTIF' => + array ( + 'name' => 'SCENARIO_NOEUD_EFFECTIF', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'SCENARIO_NOEUD_EFFECTIF_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SCENARIO_NOEUD_ID' => + array ( + 'name' => 'SCENARIO_NOEUD_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_HEURES_ID' => + array ( + 'name' => 'TYPE_HEURES_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'EFFECTIF' => + array ( + 'name' => 'EFFECTIF', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'ETAPE_ID' => + array ( + 'name' => 'ETAPE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + ), + ), + 'SCENARIO_NOEUD_SEUIL' => + array ( + 'name' => 'SCENARIO_NOEUD_SEUIL', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'SCENARIO_NOEUD_SEUIL_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SCENARIO_NOEUD_ID' => + array ( + 'name' => 'SCENARIO_NOEUD_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_INTERVENTION_ID' => + array ( + 'name' => 'TYPE_INTERVENTION_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'OUVERTURE' => + array ( + 'name' => 'OUVERTURE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => '0', + ), + 'DEDOUBLEMENT' => + array ( + 'name' => 'DEDOUBLEMENT', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => '0', + ), + 'ASSIDUITE' => + array ( + 'name' => 'ASSIDUITE', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'SERVICE' => + array ( + 'name' => 'SERVICE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'SERVICE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'INTERVENANT_ID' => + array ( + 'name' => 'INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ELEMENT_PEDAGOGIQUE_ID' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ETABLISSEMENT_ID' => + array ( + 'name' => 'ETABLISSEMENT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'DESCRIPTION' => + array ( + 'name' => 'DESCRIPTION', + 'type' => 'VARCHAR2', + 'length' => 4000, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'SERVICE_REFERENTIEL' => + array ( + 'name' => 'SERVICE_REFERENTIEL', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'SERVICE_REFERENTIEL_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'FONCTION_ID' => + array ( + 'name' => 'FONCTION_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'INTERVENANT_ID' => + array ( + 'name' => 'INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'STRUCTURE_ID' => + array ( + 'name' => 'STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'COMMENTAIRES' => + array ( + 'name' => 'COMMENTAIRES', + 'type' => 'VARCHAR2', + 'length' => 256, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'FORMATION' => + array ( + 'name' => 'FORMATION', + 'type' => 'VARCHAR2', + 'length' => 256, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + ), + ), + 'SEUIL_CHARGE' => + array ( + 'name' => 'SEUIL_CHARGE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'SEUIL_CHARGE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SCENARIO_ID' => + array ( + 'name' => 'SCENARIO_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'STRUCTURE_ID' => + array ( + 'name' => 'STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'GROUPE_TYPE_FORMATION_ID' => + array ( + 'name' => 'GROUPE_TYPE_FORMATION_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'TYPE_INTERVENTION_ID' => + array ( + 'name' => 'TYPE_INTERVENTION_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'DEDOUBLEMENT' => + array ( + 'name' => 'DEDOUBLEMENT', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ANNEE_ID' => + array ( + 'name' => 'ANNEE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + ), + ), + 'SOURCE' => + array ( + 'name' => 'SOURCE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'SOURCE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 15, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 30, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'IMPORTABLE' => + array ( + 'name' => 'IMPORTABLE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => NULL, + ), + ), + ), + 'STATUT_INTERVENANT' => + array ( + 'name' => 'STATUT_INTERVENANT', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'STATUT_INTERVENANT_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 128, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SERVICE_STATUTAIRE' => + array ( + 'name' => 'SERVICE_STATUTAIRE', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => NULL, + ), + 'DEPASSEMENT' => + array ( + 'name' => 'DEPASSEMENT', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => NULL, + ), + 'PLAFOND_REFERENTIEL' => + array ( + 'name' => 'PLAFOND_REFERENTIEL', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'MAXIMUM_HETD' => + array ( + 'name' => 'MAXIMUM_HETD', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'TYPE_INTERVENANT_ID' => + array ( + 'name' => 'TYPE_INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ORDRE' => + array ( + 'name' => 'ORDRE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'NON_AUTORISE' => + array ( + 'name' => 'NON_AUTORISE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => NULL, + ), + 'PEUT_SAISIR_SERVICE' => + array ( + 'name' => 'PEUT_SAISIR_SERVICE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => NULL, + ), + 'PEUT_CHOISIR_DANS_DOSSIER' => + array ( + 'name' => 'PEUT_CHOISIR_DANS_DOSSIER', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => NULL, + ), + 'PEUT_SAISIR_DOSSIER' => + array ( + 'name' => 'PEUT_SAISIR_DOSSIER', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => NULL, + ), + 'PEUT_SAISIR_REFERENTIEL' => + array ( + 'name' => 'PEUT_SAISIR_REFERENTIEL', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'PEUT_SAISIR_MOTIF_NON_PAIEMENT' => + array ( + 'name' => 'PEUT_SAISIR_MOTIF_NON_PAIEMENT', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'PEUT_AVOIR_CONTRAT' => + array ( + 'name' => 'PEUT_AVOIR_CONTRAT', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'PLAFOND_HC_HORS_REMU_FC' => + array ( + 'name' => 'PLAFOND_HC_HORS_REMU_FC', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '9999', + ), + 'PLAFOND_HC_REMU_FC' => + array ( + 'name' => 'PLAFOND_HC_REMU_FC', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '13502', + ), + 'DEPASSEMENT_SERVICE_DU_SANS_HC' => + array ( + 'name' => 'DEPASSEMENT_SERVICE_DU_SANS_HC', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'PEUT_CLOTURER_SAISIE' => + array ( + 'name' => 'PEUT_CLOTURER_SAISIE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'PEUT_SAISIR_SERVICE_EXT' => + array ( + 'name' => 'PEUT_SAISIR_SERVICE_EXT', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'TEM_ATV' => + array ( + 'name' => 'TEM_ATV', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'TEM_BIATSS' => + array ( + 'name' => 'TEM_BIATSS', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + ), + ), + 'STATUT_PRIVILEGE' => + array ( + 'name' => 'STATUT_PRIVILEGE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'STATUT_PRIVILEGE_ID_SEQ', + 'columns' => + array ( + 'STATUT_ID' => + array ( + 'name' => 'STATUT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'PRIVILEGE_ID' => + array ( + 'name' => 'PRIVILEGE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + ), + ), + 'STRUCTURE' => + array ( + 'name' => 'STRUCTURE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'STRUCTURE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE_COURT' => + array ( + 'name' => 'LIBELLE_COURT', + 'type' => 'VARCHAR2', + 'length' => 25, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE_LONG' => + array ( + 'name' => 'LIBELLE_LONG', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CONTACT_PJ' => + array ( + 'name' => 'CONTACT_PJ', + 'type' => 'VARCHAR2', + 'length' => 255, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ENSEIGNEMENT' => + array ( + 'name' => 'ENSEIGNEMENT', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'AFF_ADRESSE_CONTRAT' => + array ( + 'name' => 'AFF_ADRESSE_CONTRAT', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '1', + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'PLAFOND_REFERENTIEL' => + array ( + 'name' => 'PLAFOND_REFERENTIEL', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'SYNC_LOG' => + array ( + 'name' => 'SYNC_LOG', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'SYNC_LOG_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'DATE_SYNC' => + array ( + 'name' => 'DATE_SYNC', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TABLE_NAME' => + array ( + 'name' => 'TABLE_NAME', + 'type' => 'VARCHAR2', + 'length' => 30, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 200, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'MESSAGE' => + array ( + 'name' => 'MESSAGE', + 'type' => 'VARCHAR2', + 'length' => 4000, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'TAUX_HORAIRE_HETD' => + array ( + 'name' => 'TAUX_HORAIRE_HETD', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'TAUX_HORAIRE_HETD_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'VALEUR' => + array ( + 'name' => 'VALEUR', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'TBL' => + array ( + 'name' => 'TBL', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => NULL, + 'columns' => + array ( + 'TBL_NAME' => + array ( + 'name' => 'TBL_NAME', + 'type' => 'VARCHAR2', + 'length' => 30, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TABLE_NAME' => + array ( + 'name' => 'TABLE_NAME', + 'type' => 'VARCHAR2', + 'length' => 30, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'VIEW_NAME' => + array ( + 'name' => 'VIEW_NAME', + 'type' => 'VARCHAR2', + 'length' => 30, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'SEQUENCE_NAME' => + array ( + 'name' => 'SEQUENCE_NAME', + 'type' => 'VARCHAR2', + 'length' => 30, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'CONSTRAINT_NAME' => + array ( + 'name' => 'CONSTRAINT_NAME', + 'type' => 'VARCHAR2', + 'length' => 30, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'CUSTOM_CALCUL_PROC' => + array ( + 'name' => 'CUSTOM_CALCUL_PROC', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ORDRE' => + array ( + 'name' => 'ORDRE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => '1', + ), + 'FEUILLE_DE_ROUTE' => + array ( + 'name' => 'FEUILLE_DE_ROUTE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + ), + ), + 'TBL_AGREMENT' => + array ( + 'name' => 'TBL_AGREMENT', + 'temporary' => false, + 'logging' => false, + 'commentaire' => NULL, + 'sequence' => 'TBL_AGREMENT_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ANNEE_ID' => + array ( + 'name' => 'ANNEE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_AGREMENT_ID' => + array ( + 'name' => 'TYPE_AGREMENT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'INTERVENANT_ID' => + array ( + 'name' => 'INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'STRUCTURE_ID' => + array ( + 'name' => 'STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'OBLIGATOIRE' => + array ( + 'name' => 'OBLIGATOIRE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => NULL, + ), + 'AGREMENT_ID' => + array ( + 'name' => 'AGREMENT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'TO_DELETE' => + array ( + 'name' => 'TO_DELETE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + ), + ), + 'TBL_CHARGENS' => + array ( + 'name' => 'TBL_CHARGENS', + 'temporary' => false, + 'logging' => false, + 'commentaire' => NULL, + 'sequence' => 'TBL_CHARGENS_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ANNEE_ID' => + array ( + 'name' => 'ANNEE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'NOEUD_ID' => + array ( + 'name' => 'NOEUD_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SCENARIO_ID' => + array ( + 'name' => 'SCENARIO_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_HEURES_ID' => + array ( + 'name' => 'TYPE_HEURES_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_INTERVENTION_ID' => + array ( + 'name' => 'TYPE_INTERVENTION_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ELEMENT_PEDAGOGIQUE_ID' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ETAPE_ID' => + array ( + 'name' => 'ETAPE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ETAPE_ENS_ID' => + array ( + 'name' => 'ETAPE_ENS_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'STRUCTURE_ID' => + array ( + 'name' => 'STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'GROUPE_TYPE_FORMATION_ID' => + array ( + 'name' => 'GROUPE_TYPE_FORMATION_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'OUVERTURE' => + array ( + 'name' => 'OUVERTURE', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => NULL, + ), + 'DEDOUBLEMENT' => + array ( + 'name' => 'DEDOUBLEMENT', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => NULL, + ), + 'ASSIDUITE' => + array ( + 'name' => 'ASSIDUITE', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => NULL, + ), + 'EFFECTIF' => + array ( + 'name' => 'EFFECTIF', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => NULL, + ), + 'HEURES_ENS' => + array ( + 'name' => 'HEURES_ENS', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => NULL, + ), + 'GROUPES' => + array ( + 'name' => 'GROUPES', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => NULL, + ), + 'HEURES' => + array ( + 'name' => 'HEURES', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => NULL, + ), + 'HETD' => + array ( + 'name' => 'HETD', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => NULL, + ), + 'TO_DELETE' => + array ( + 'name' => 'TO_DELETE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + ), + ), + 'TBL_CHARGENS_SEUILS_DEF' => + array ( + 'name' => 'TBL_CHARGENS_SEUILS_DEF', + 'temporary' => false, + 'logging' => false, + 'commentaire' => NULL, + 'sequence' => 'TBL_CHARGENS_SEUILS_DEF_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ANNEE_ID' => + array ( + 'name' => 'ANNEE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SCENARIO_ID' => + array ( + 'name' => 'SCENARIO_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'STRUCTURE_ID' => + array ( + 'name' => 'STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'GROUPE_TYPE_FORMATION_ID' => + array ( + 'name' => 'GROUPE_TYPE_FORMATION_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_INTERVENTION_ID' => + array ( + 'name' => 'TYPE_INTERVENTION_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'DEDOUBLEMENT' => + array ( + 'name' => 'DEDOUBLEMENT', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => NULL, + ), + 'TO_DELETE' => + array ( + 'name' => 'TO_DELETE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + ), + ), + 'TBL_CLOTURE_REALISE' => + array ( + 'name' => 'TBL_CLOTURE_REALISE', + 'temporary' => false, + 'logging' => false, + 'commentaire' => NULL, + 'sequence' => 'TBL_CLOTURE_REALISE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ANNEE_ID' => + array ( + 'name' => 'ANNEE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'INTERVENANT_ID' => + array ( + 'name' => 'INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'PEUT_CLOTURER_SAISIE' => + array ( + 'name' => 'PEUT_CLOTURER_SAISIE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'CLOTURE' => + array ( + 'name' => 'CLOTURE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'TO_DELETE' => + array ( + 'name' => 'TO_DELETE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + ), + ), + 'TBL_CONTRAT' => + array ( + 'name' => 'TBL_CONTRAT', + 'temporary' => false, + 'logging' => false, + 'commentaire' => NULL, + 'sequence' => 'TBL_CONTRAT_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ANNEE_ID' => + array ( + 'name' => 'ANNEE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'INTERVENANT_ID' => + array ( + 'name' => 'INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'PEUT_AVOIR_CONTRAT' => + array ( + 'name' => 'PEUT_AVOIR_CONTRAT', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'STRUCTURE_ID' => + array ( + 'name' => 'STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'NBVH' => + array ( + 'name' => 'NBVH', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'EDITE' => + array ( + 'name' => 'EDITE', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'SIGNE' => + array ( + 'name' => 'SIGNE', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'TO_DELETE' => + array ( + 'name' => 'TO_DELETE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + ), + ), + 'TBL_DEMS' => + array ( + 'name' => 'TBL_DEMS', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'TBL_DEMS_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TBL_NAME' => + array ( + 'name' => 'TBL_NAME', + 'type' => 'VARCHAR2', + 'length' => 30, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'C1' => + array ( + 'name' => 'C1', + 'type' => 'VARCHAR2', + 'length' => 30, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'V1' => + array ( + 'name' => 'V1', + 'type' => 'VARCHAR2', + 'length' => 80, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'C2' => + array ( + 'name' => 'C2', + 'type' => 'VARCHAR2', + 'length' => 30, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'V2' => + array ( + 'name' => 'V2', + 'type' => 'VARCHAR2', + 'length' => 80, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'C3' => + array ( + 'name' => 'C3', + 'type' => 'VARCHAR2', + 'length' => 30, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'V3' => + array ( + 'name' => 'V3', + 'type' => 'VARCHAR2', + 'length' => 80, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'C4' => + array ( + 'name' => 'C4', + 'type' => 'VARCHAR2', + 'length' => 30, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'V4' => + array ( + 'name' => 'V4', + 'type' => 'VARCHAR2', + 'length' => 80, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'C5' => + array ( + 'name' => 'C5', + 'type' => 'VARCHAR2', + 'length' => 30, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'V5' => + array ( + 'name' => 'V5', + 'type' => 'VARCHAR2', + 'length' => 80, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'SQLCOND' => + array ( + 'name' => 'SQLCOND', + 'type' => 'VARCHAR2', + 'length' => 3500, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'TBL_DMEP_LIQUIDATION' => + array ( + 'name' => 'TBL_DMEP_LIQUIDATION', + 'temporary' => false, + 'logging' => false, + 'commentaire' => NULL, + 'sequence' => 'TBL_DMEP_LIQUIDATION_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ANNEE_ID' => + array ( + 'name' => 'ANNEE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_RESSOURCE_ID' => + array ( + 'name' => 'TYPE_RESSOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'STRUCTURE_ID' => + array ( + 'name' => 'STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HEURES' => + array ( + 'name' => 'HEURES', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'TO_DELETE' => + array ( + 'name' => 'TO_DELETE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + ), + ), + 'TBL_DOSSIER' => + array ( + 'name' => 'TBL_DOSSIER', + 'temporary' => false, + 'logging' => false, + 'commentaire' => NULL, + 'sequence' => 'TBL_DOSSIER_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ANNEE_ID' => + array ( + 'name' => 'ANNEE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'INTERVENANT_ID' => + array ( + 'name' => 'INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'PEUT_SAISIR_DOSSIER' => + array ( + 'name' => 'PEUT_SAISIR_DOSSIER', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'DOSSIER_ID' => + array ( + 'name' => 'DOSSIER_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'VALIDATION_ID' => + array ( + 'name' => 'VALIDATION_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'TO_DELETE' => + array ( + 'name' => 'TO_DELETE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + ), + ), + 'TBL_LIEN' => + array ( + 'name' => 'TBL_LIEN', + 'temporary' => false, + 'logging' => false, + 'commentaire' => NULL, + 'sequence' => 'TBL_LIEN_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIEN_ID' => + array ( + 'name' => 'LIEN_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SCENARIO_ID' => + array ( + 'name' => 'SCENARIO_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SCENARIO_LIEN_ID' => + array ( + 'name' => 'SCENARIO_LIEN_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'NOEUD_SUP_ID' => + array ( + 'name' => 'NOEUD_SUP_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'NOEUD_INF_ID' => + array ( + 'name' => 'NOEUD_INF_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'STRUCTURE_ID' => + array ( + 'name' => 'STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ACTIF' => + array ( + 'name' => 'ACTIF', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '1', + ), + 'POIDS' => + array ( + 'name' => 'POIDS', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => '1', + ), + 'CHOIX_MINIMUM' => + array ( + 'name' => 'CHOIX_MINIMUM', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'CHOIX_MAXIMUM' => + array ( + 'name' => 'CHOIX_MAXIMUM', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'NB_CHOIX' => + array ( + 'name' => 'NB_CHOIX', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => '1', + ), + 'TOTAL_POIDS' => + array ( + 'name' => 'TOTAL_POIDS', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '1', + ), + 'TO_DELETE' => + array ( + 'name' => 'TO_DELETE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'MAX_POIDS' => + array ( + 'name' => 'MAX_POIDS', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => '1', + ), + ), + ), + 'TBL_PAIEMENT' => + array ( + 'name' => 'TBL_PAIEMENT', + 'temporary' => false, + 'logging' => false, + 'commentaire' => NULL, + 'sequence' => 'TBL_PAIEMENT_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ANNEE_ID' => + array ( + 'name' => 'ANNEE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'INTERVENANT_ID' => + array ( + 'name' => 'INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'STRUCTURE_ID' => + array ( + 'name' => 'STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'MISE_EN_PAIEMENT_ID' => + array ( + 'name' => 'MISE_EN_PAIEMENT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'PERIODE_PAIEMENT_ID' => + array ( + 'name' => 'PERIODE_PAIEMENT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'TO_DELETE' => + array ( + 'name' => 'TO_DELETE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'HEURES_A_PAYER' => + array ( + 'name' => 'HEURES_A_PAYER', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'HEURES_A_PAYER_POND' => + array ( + 'name' => 'HEURES_A_PAYER_POND', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'HEURES_DEMANDEES' => + array ( + 'name' => 'HEURES_DEMANDEES', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'HEURES_PAYEES' => + array ( + 'name' => 'HEURES_PAYEES', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'FORMULE_RES_SERVICE_ID' => + array ( + 'name' => 'FORMULE_RES_SERVICE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'FORMULE_RES_SERVICE_REF_ID' => + array ( + 'name' => 'FORMULE_RES_SERVICE_REF_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'TBL_PIECE_JOINTE' => + array ( + 'name' => 'TBL_PIECE_JOINTE', + 'temporary' => false, + 'logging' => false, + 'commentaire' => NULL, + 'sequence' => 'TBL_PIECE_JOINTE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ANNEE_ID' => + array ( + 'name' => 'ANNEE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_PIECE_JOINTE_ID' => + array ( + 'name' => 'TYPE_PIECE_JOINTE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'INTERVENANT_ID' => + array ( + 'name' => 'INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'DEMANDEE' => + array ( + 'name' => 'DEMANDEE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'FOURNIE' => + array ( + 'name' => 'FOURNIE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'VALIDEE' => + array ( + 'name' => 'VALIDEE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'TO_DELETE' => + array ( + 'name' => 'TO_DELETE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'HEURES_POUR_SEUIL' => + array ( + 'name' => 'HEURES_POUR_SEUIL', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + ), + ), + 'TBL_PIECE_JOINTE_DEMANDE' => + array ( + 'name' => 'TBL_PIECE_JOINTE_DEMANDE', + 'temporary' => false, + 'logging' => false, + 'commentaire' => NULL, + 'sequence' => 'TBL_PIECE_JOINTE_DEMAND_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ANNEE_ID' => + array ( + 'name' => 'ANNEE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_PIECE_JOINTE_ID' => + array ( + 'name' => 'TYPE_PIECE_JOINTE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'INTERVENANT_ID' => + array ( + 'name' => 'INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TO_DELETE' => + array ( + 'name' => 'TO_DELETE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'HEURES_POUR_SEUIL' => + array ( + 'name' => 'HEURES_POUR_SEUIL', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + ), + ), + 'TBL_PIECE_JOINTE_FOURNIE' => + array ( + 'name' => 'TBL_PIECE_JOINTE_FOURNIE', + 'temporary' => false, + 'logging' => false, + 'commentaire' => NULL, + 'sequence' => 'TBL_PIECE_JOINTE_FOURNI_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ANNEE_ID' => + array ( + 'name' => 'ANNEE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_PIECE_JOINTE_ID' => + array ( + 'name' => 'TYPE_PIECE_JOINTE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'INTERVENANT_ID' => + array ( + 'name' => 'INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'VALIDATION_ID' => + array ( + 'name' => 'VALIDATION_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'FICHIER_ID' => + array ( + 'name' => 'FICHIER_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'TO_DELETE' => + array ( + 'name' => 'TO_DELETE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'PIECE_JOINTE_ID' => + array ( + 'name' => 'PIECE_JOINTE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + ), + ), + 'TBL_SERVICE' => + array ( + 'name' => 'TBL_SERVICE', + 'temporary' => false, + 'logging' => false, + 'commentaire' => NULL, + 'sequence' => 'TBL_SERVICE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ANNEE_ID' => + array ( + 'name' => 'ANNEE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'INTERVENANT_ID' => + array ( + 'name' => 'INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'PEUT_SAISIR_SERVICE' => + array ( + 'name' => 'PEUT_SAISIR_SERVICE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'TYPE_VOLUME_HORAIRE_ID' => + array ( + 'name' => 'TYPE_VOLUME_HORAIRE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'STRUCTURE_ID' => + array ( + 'name' => 'STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'NBVH' => + array ( + 'name' => 'NBVH', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'VALIDE' => + array ( + 'name' => 'VALIDE', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'TO_DELETE' => + array ( + 'name' => 'TO_DELETE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'ELEMENT_PEDAGOGIQUE_ID' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ELEMENT_PEDAGOGIQUE_PERIODE_ID' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_PERIODE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ETAPE_ID' => + array ( + 'name' => 'ETAPE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ELEMENT_PEDAGOGIQUE_HISTO' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_HISTO', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '1', + ), + 'ETAPE_HISTO' => + array ( + 'name' => 'ETAPE_HISTO', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '1', + ), + 'HAS_HEURES_MAUVAISE_PERIODE' => + array ( + 'name' => 'HAS_HEURES_MAUVAISE_PERIODE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'SERVICE_ID' => + array ( + 'name' => 'SERVICE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'INTERVENANT_STRUCTURE_ID' => + array ( + 'name' => 'INTERVENANT_STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'TYPE_INTERVENANT_ID' => + array ( + 'name' => 'TYPE_INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_INTERVENANT_CODE' => + array ( + 'name' => 'TYPE_INTERVENANT_CODE', + 'type' => 'VARCHAR2', + 'length' => 5, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_VOLUME_HORAIRE_CODE' => + array ( + 'name' => 'TYPE_VOLUME_HORAIRE_CODE', + 'type' => 'VARCHAR2', + 'length' => 15, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HEURES' => + array ( + 'name' => 'HEURES', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + ), + ), + 'TBL_SERVICE_REFERENTIEL' => + array ( + 'name' => 'TBL_SERVICE_REFERENTIEL', + 'temporary' => false, + 'logging' => false, + 'commentaire' => NULL, + 'sequence' => 'TBL_SERVICE_REFERENTIEL_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ANNEE_ID' => + array ( + 'name' => 'ANNEE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'INTERVENANT_ID' => + array ( + 'name' => 'INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'PEUT_SAISIR_SERVICE' => + array ( + 'name' => 'PEUT_SAISIR_SERVICE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'TYPE_VOLUME_HORAIRE_ID' => + array ( + 'name' => 'TYPE_VOLUME_HORAIRE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'STRUCTURE_ID' => + array ( + 'name' => 'STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'NBVH' => + array ( + 'name' => 'NBVH', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'VALIDE' => + array ( + 'name' => 'VALIDE', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'TO_DELETE' => + array ( + 'name' => 'TO_DELETE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + ), + ), + 'TBL_SERVICE_SAISIE' => + array ( + 'name' => 'TBL_SERVICE_SAISIE', + 'temporary' => false, + 'logging' => false, + 'commentaire' => NULL, + 'sequence' => 'TBL_SERVICE_SAISIE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ANNEE_ID' => + array ( + 'name' => 'ANNEE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'INTERVENANT_ID' => + array ( + 'name' => 'INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'PEUT_SAISIR_SERVICE' => + array ( + 'name' => 'PEUT_SAISIR_SERVICE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'PEUT_SAISIR_REFERENTIEL' => + array ( + 'name' => 'PEUT_SAISIR_REFERENTIEL', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'HEURES_SERVICE_PREV' => + array ( + 'name' => 'HEURES_SERVICE_PREV', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'HEURES_REFERENTIEL_PREV' => + array ( + 'name' => 'HEURES_REFERENTIEL_PREV', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'HEURES_SERVICE_REAL' => + array ( + 'name' => 'HEURES_SERVICE_REAL', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'HEURES_REFERENTIEL_REAL' => + array ( + 'name' => 'HEURES_REFERENTIEL_REAL', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'TO_DELETE' => + array ( + 'name' => 'TO_DELETE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + ), + ), + 'TBL_VALIDATION_ENSEIGNEMENT' => + array ( + 'name' => 'TBL_VALIDATION_ENSEIGNEMENT', + 'temporary' => false, + 'logging' => false, + 'commentaire' => NULL, + 'sequence' => 'TBL_VALIDATION_ENSEIGNE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ANNEE_ID' => + array ( + 'name' => 'ANNEE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'INTERVENANT_ID' => + array ( + 'name' => 'INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'STRUCTURE_ID' => + array ( + 'name' => 'STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_VOLUME_HORAIRE_ID' => + array ( + 'name' => 'TYPE_VOLUME_HORAIRE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SERVICE_ID' => + array ( + 'name' => 'SERVICE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'VALIDATION_ID' => + array ( + 'name' => 'VALIDATION_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'TO_DELETE' => + array ( + 'name' => 'TO_DELETE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'VOLUME_HORAIRE_ID' => + array ( + 'name' => 'VOLUME_HORAIRE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'AUTO_VALIDATION' => + array ( + 'name' => 'AUTO_VALIDATION', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + ), + ), + 'TBL_VALIDATION_REFERENTIEL' => + array ( + 'name' => 'TBL_VALIDATION_REFERENTIEL', + 'temporary' => false, + 'logging' => false, + 'commentaire' => NULL, + 'sequence' => 'TBL_VALIDATION_REFERENT_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ANNEE_ID' => + array ( + 'name' => 'ANNEE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'INTERVENANT_ID' => + array ( + 'name' => 'INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'STRUCTURE_ID' => + array ( + 'name' => 'STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_VOLUME_HORAIRE_ID' => + array ( + 'name' => 'TYPE_VOLUME_HORAIRE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SERVICE_REFERENTIEL_ID' => + array ( + 'name' => 'SERVICE_REFERENTIEL_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'VALIDATION_ID' => + array ( + 'name' => 'VALIDATION_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'TO_DELETE' => + array ( + 'name' => 'TO_DELETE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'VOLUME_HORAIRE_REF_ID' => + array ( + 'name' => 'VOLUME_HORAIRE_REF_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'AUTO_VALIDATION' => + array ( + 'name' => 'AUTO_VALIDATION', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + ), + ), + 'TBL_WORKFLOW' => + array ( + 'name' => 'TBL_WORKFLOW', + 'temporary' => false, + 'logging' => false, + 'commentaire' => NULL, + 'sequence' => 'TBL_WORKFLOW_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'INTERVENANT_ID' => + array ( + 'name' => 'INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ETAPE_ID' => + array ( + 'name' => 'ETAPE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'STRUCTURE_ID' => + array ( + 'name' => 'STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => 'null', + ), + 'ATTEIGNABLE' => + array ( + 'name' => 'ATTEIGNABLE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '1', + ), + 'TO_DELETE' => + array ( + 'name' => 'TO_DELETE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'REALISATION' => + array ( + 'name' => 'REALISATION', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'OBJECTIF' => + array ( + 'name' => 'OBJECTIF', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '1', + ), + 'ANNEE_ID' => + array ( + 'name' => 'ANNEE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_INTERVENANT_ID' => + array ( + 'name' => 'TYPE_INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_INTERVENANT_CODE' => + array ( + 'name' => 'TYPE_INTERVENANT_CODE', + 'type' => 'VARCHAR2', + 'length' => 5, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ETAPE_CODE' => + array ( + 'name' => 'ETAPE_CODE', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'STATUT_INTERVENANT_ID' => + array ( + 'name' => 'STATUT_INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + ), + ), + 'TEST_BUFFER' => + array ( + 'name' => 'TEST_BUFFER', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'TEST_BUFFER_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TABLE_NAME' => + array ( + 'name' => 'TABLE_NAME', + 'type' => 'VARCHAR2', + 'length' => 30, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'DATA_ID' => + array ( + 'name' => 'DATA_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + ), + ), + 'TMP_SCENARIO_NOEUD_EFFECTIF' => + array ( + 'name' => 'TMP_SCENARIO_NOEUD_EFFECTIF', + 'temporary' => true, + 'logging' => false, + 'commentaire' => NULL, + 'sequence' => NULL, + 'columns' => + array ( + 'SCENARIO_NOEUD_ID' => + array ( + 'name' => 'SCENARIO_NOEUD_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_HEURES_ID' => + array ( + 'name' => 'TYPE_HEURES_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ETAPE_ID' => + array ( + 'name' => 'ETAPE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'EFFECTIF' => + array ( + 'name' => 'EFFECTIF', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'TYPE_AGREMENT' => + array ( + 'name' => 'TYPE_AGREMENT', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'TYPE_AGREMENT_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 60, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 256, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'TYPE_AGREMENT_STATUT' => + array ( + 'name' => 'TYPE_AGREMENT_STATUT', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'TYPE_AGREMENT_STATUT_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_AGREMENT_ID' => + array ( + 'name' => 'TYPE_AGREMENT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'STATUT_INTERVENANT_ID' => + array ( + 'name' => 'STATUT_INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'OBLIGATOIRE' => + array ( + 'name' => 'OBLIGATOIRE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'PREMIER_RECRUTEMENT' => + array ( + 'name' => 'PREMIER_RECRUTEMENT', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'TYPE_CONTRAT' => + array ( + 'name' => 'TYPE_CONTRAT', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'TYPE_CONTRAT_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 15, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 60, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'TYPE_DOTATION' => + array ( + 'name' => 'TYPE_DOTATION', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'TYPE_DOTATION_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 200, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_RESSOURCE_ID' => + array ( + 'name' => 'TYPE_RESSOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'TYPE_FORMATION' => + array ( + 'name' => 'TYPE_FORMATION', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'TYPE_FORMATION_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE_LONG' => + array ( + 'name' => 'LIBELLE_LONG', + 'type' => 'VARCHAR2', + 'length' => 80, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE_COURT' => + array ( + 'name' => 'LIBELLE_COURT', + 'type' => 'VARCHAR2', + 'length' => 15, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'GROUPE_ID' => + array ( + 'name' => 'GROUPE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'SERVICE_STATUTAIRE' => + array ( + 'name' => 'SERVICE_STATUTAIRE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '1', + ), + ), + ), + 'TYPE_HEURES' => + array ( + 'name' => 'TYPE_HEURES', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'TYPE_HEURES_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 20, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE_COURT' => + array ( + 'name' => 'LIBELLE_COURT', + 'type' => 'VARCHAR2', + 'length' => 15, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE_LONG' => + array ( + 'name' => 'LIBELLE_LONG', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ORDRE' => + array ( + 'name' => 'ORDRE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_HEURES_ELEMENT_ID' => + array ( + 'name' => 'TYPE_HEURES_ELEMENT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ELIGIBLE_CENTRE_COUT_EP' => + array ( + 'name' => 'ELIGIBLE_CENTRE_COUT_EP', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '1', + ), + 'ELIGIBLE_EXTRACTION_PAIE' => + array ( + 'name' => 'ELIGIBLE_EXTRACTION_PAIE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '1', + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ENSEIGNEMENT' => + array ( + 'name' => 'ENSEIGNEMENT', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '1', + ), + ), + ), + 'TYPE_INTERVENANT' => + array ( + 'name' => 'TYPE_INTERVENANT', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'TYPE_INTERVENANT_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 1, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'TYPE_INTERVENTION' => + array ( + 'name' => 'TYPE_INTERVENTION', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'TYPE_INTERVENTION_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 10, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 60, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ORDRE' => + array ( + 'name' => 'ORDRE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TAUX_HETD_SERVICE' => + array ( + 'name' => 'TAUX_HETD_SERVICE', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '1', + ), + 'TAUX_HETD_COMPLEMENTAIRE' => + array ( + 'name' => 'TAUX_HETD_COMPLEMENTAIRE', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '1', + ), + 'VISIBLE' => + array ( + 'name' => 'VISIBLE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ANNEE_DEBUT_ID' => + array ( + 'name' => 'ANNEE_DEBUT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ANNEE_FIN_ID' => + array ( + 'name' => 'ANNEE_FIN_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'REGLE_FOAD' => + array ( + 'name' => 'REGLE_FOAD', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'REGLE_FC' => + array ( + 'name' => 'REGLE_FC', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'TYPE_INTERVENTION_MAQUETTE_ID' => + array ( + 'name' => 'TYPE_INTERVENTION_MAQUETTE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'VISIBLE_EXTERIEUR' => + array ( + 'name' => 'VISIBLE_EXTERIEUR', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '1', + ), + ), + ), + 'TYPE_INTERVENTION_EP' => + array ( + 'name' => 'TYPE_INTERVENTION_EP', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'TYPE_INTERVENTION_EP_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_INTERVENTION_ID' => + array ( + 'name' => 'TYPE_INTERVENTION_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ELEMENT_PEDAGOGIQUE_ID' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'TYPE_INTERVENTION_STATUT' => + array ( + 'name' => 'TYPE_INTERVENTION_STATUT', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'TYPE_INTERVENTION_STATU_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_INTERVENTION_ID' => + array ( + 'name' => 'TYPE_INTERVENTION_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'STATUT_INTERVENANT_ID' => + array ( + 'name' => 'STATUT_INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TAUX_HETD_SERVICE' => + array ( + 'name' => 'TAUX_HETD_SERVICE', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => true, + 'default' => NULL, + ), + 'TAUX_HETD_COMPLEMENTAIRE' => + array ( + 'name' => 'TAUX_HETD_COMPLEMENTAIRE', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'TYPE_INTERVENTION_STRUCTURE' => + array ( + 'name' => 'TYPE_INTERVENTION_STRUCTURE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'TYPE_INTERVENTION_STRUC_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_INTERVENTION_ID' => + array ( + 'name' => 'TYPE_INTERVENTION_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'STRUCTURE_ID' => + array ( + 'name' => 'STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'VISIBLE' => + array ( + 'name' => 'VISIBLE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => NULL, + ), + 'ANNEE_DEBUT_ID' => + array ( + 'name' => 'ANNEE_DEBUT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ANNEE_FIN_ID' => + array ( + 'name' => 'ANNEE_FIN_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'TYPE_MODULATEUR' => + array ( + 'name' => 'TYPE_MODULATEUR', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'TYPE_MODULATEUR_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 10, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'PUBLIQUE' => + array ( + 'name' => 'PUBLIQUE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => NULL, + ), + 'OBLIGATOIRE' => + array ( + 'name' => 'OBLIGATOIRE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => NULL, + ), + 'SAISIE_PAR_ENSEIGNANT' => + array ( + 'name' => 'SAISIE_PAR_ENSEIGNANT', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'TYPE_MODULATEUR_EP' => + array ( + 'name' => 'TYPE_MODULATEUR_EP', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'TYPE_MODULATEUR_EP_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_MODULATEUR_ID' => + array ( + 'name' => 'TYPE_MODULATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ELEMENT_PEDAGOGIQUE_ID' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'TYPE_MODULATEUR_STRUCTURE' => + array ( + 'name' => 'TYPE_MODULATEUR_STRUCTURE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'TYPE_MODULATEUR_STRUCTU_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_MODULATEUR_ID' => + array ( + 'name' => 'TYPE_MODULATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'STRUCTURE_ID' => + array ( + 'name' => 'STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ANNEE_DEBUT_ID' => + array ( + 'name' => 'ANNEE_DEBUT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ANNEE_FIN_ID' => + array ( + 'name' => 'ANNEE_FIN_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'TYPE_PIECE_JOINTE' => + array ( + 'name' => 'TYPE_PIECE_JOINTE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'TYPE_PIECE_JOINTE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 64, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 150, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'URL_MODELE_DOC' => + array ( + 'name' => 'URL_MODELE_DOC', + 'type' => 'VARCHAR2', + 'length' => 256, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ORDRE' => + array ( + 'name' => 'ORDRE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => '1', + ), + ), + ), + 'TYPE_PIECE_JOINTE_STATUT' => + array ( + 'name' => 'TYPE_PIECE_JOINTE_STATUT', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'TYPE_PIECE_JOINTE_STATU_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_PIECE_JOINTE_ID' => + array ( + 'name' => 'TYPE_PIECE_JOINTE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'STATUT_INTERVENANT_ID' => + array ( + 'name' => 'STATUT_INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'OBLIGATOIRE' => + array ( + 'name' => 'OBLIGATOIRE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SEUIL_HETD' => + array ( + 'name' => 'SEUIL_HETD', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'PREMIER_RECRUTEMENT' => + array ( + 'name' => 'PREMIER_RECRUTEMENT', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ANNEE_DEBUT_ID' => + array ( + 'name' => 'ANNEE_DEBUT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ANNEE_FIN_ID' => + array ( + 'name' => 'ANNEE_FIN_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'CHANGEMENT_RIB' => + array ( + 'name' => 'CHANGEMENT_RIB', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'FC' => + array ( + 'name' => 'FC', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + ), + ), + 'TYPE_RESSOURCE' => + array ( + 'name' => 'TYPE_RESSOURCE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'TYPE_RESSOURCE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 50, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 200, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'FI' => + array ( + 'name' => 'FI', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => NULL, + ), + 'FA' => + array ( + 'name' => 'FA', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => NULL, + ), + 'FC' => + array ( + 'name' => 'FC', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => NULL, + ), + 'FC_MAJOREES' => + array ( + 'name' => 'FC_MAJOREES', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => NULL, + ), + 'REFERENTIEL' => + array ( + 'name' => 'REFERENTIEL', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ETABLISSEMENT' => + array ( + 'name' => 'ETABLISSEMENT', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + ), + ), + 'TYPE_VALIDATION' => + array ( + 'name' => 'TYPE_VALIDATION', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'TYPE_VALIDATION_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 25, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 60, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'TYPE_VOLUME_HORAIRE' => + array ( + 'name' => 'TYPE_VOLUME_HORAIRE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => NULL, + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 15, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE' => + array ( + 'name' => 'LIBELLE', + 'type' => 'VARCHAR2', + 'length' => 60, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ORDRE' => + array ( + 'name' => 'ORDRE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + ), + ), + 'UTILISATEUR' => + array ( + 'name' => 'UTILISATEUR', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'UTILISATEUR_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'USERNAME' => + array ( + 'name' => 'USERNAME', + 'type' => 'VARCHAR2', + 'length' => 255, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'EMAIL' => + array ( + 'name' => 'EMAIL', + 'type' => 'VARCHAR2', + 'length' => 255, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'DISPLAY_NAME' => + array ( + 'name' => 'DISPLAY_NAME', + 'type' => 'VARCHAR2', + 'length' => 64, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'PASSWORD' => + array ( + 'name' => 'PASSWORD', + 'type' => 'VARCHAR2', + 'length' => 128, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'STATE' => + array ( + 'name' => 'STATE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 60, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'PASSWORD_RESET_TOKEN' => + array ( + 'name' => 'PASSWORD_RESET_TOKEN', + 'type' => 'VARCHAR2', + 'length' => 256, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => 'null', + ), + ), + ), + 'VALIDATION' => + array ( + 'name' => 'VALIDATION', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'VALIDATION_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_VALIDATION_ID' => + array ( + 'name' => 'TYPE_VALIDATION_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'INTERVENANT_ID' => + array ( + 'name' => 'INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'STRUCTURE_ID' => + array ( + 'name' => 'STRUCTURE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'VALIDATION_VOL_HORAIRE' => + array ( + 'name' => 'VALIDATION_VOL_HORAIRE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'VALIDATION_VOL_HORAIRE_ID_SEQ', + 'columns' => + array ( + 'VALIDATION_ID' => + array ( + 'name' => 'VALIDATION_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'VOLUME_HORAIRE_ID' => + array ( + 'name' => 'VOLUME_HORAIRE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + ), + ), + 'VALIDATION_VOL_HORAIRE_REF' => + array ( + 'name' => 'VALIDATION_VOL_HORAIRE_REF', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'VALIDATION_VOL_HORAIRE__ID_SEQ', + 'columns' => + array ( + 'VALIDATION_ID' => + array ( + 'name' => 'VALIDATION_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'VOLUME_HORAIRE_REF_ID' => + array ( + 'name' => 'VOLUME_HORAIRE_REF_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + ), + ), + 'VERSION' => + array ( + 'name' => 'VERSION', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => NULL, + 'columns' => + array ( + 'NUMERO' => + array ( + 'name' => 'NUMERO', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + ), + ), + 'VOLUME_HORAIRE' => + array ( + 'name' => 'VOLUME_HORAIRE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'VOLUME_HORAIRE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_VOLUME_HORAIRE_ID' => + array ( + 'name' => 'TYPE_VOLUME_HORAIRE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SERVICE_ID' => + array ( + 'name' => 'SERVICE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'PERIODE_ID' => + array ( + 'name' => 'PERIODE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_INTERVENTION_ID' => + array ( + 'name' => 'TYPE_INTERVENTION_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HEURES' => + array ( + 'name' => 'HEURES', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'MOTIF_NON_PAIEMENT_ID' => + array ( + 'name' => 'MOTIF_NON_PAIEMENT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'CONTRAT_ID' => + array ( + 'name' => 'CONTRAT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'AUTO_VALIDATION' => + array ( + 'name' => 'AUTO_VALIDATION', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'HORAIRE_DEBUT' => + array ( + 'name' => 'HORAIRE_DEBUT', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HORAIRE_FIN' => + array ( + 'name' => 'HORAIRE_FIN', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'VOLUME_HORAIRE_CHARGE' => + array ( + 'name' => 'VOLUME_HORAIRE_CHARGE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'VOLUME_HORAIRE_CHARGE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SCENARIO_ID' => + array ( + 'name' => 'SCENARIO_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ELEMENT_PEDAGOGIQUE_ID' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_INTERVENTION_ID' => + array ( + 'name' => 'TYPE_INTERVENTION_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'GROUPES' => + array ( + 'name' => 'GROUPES', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => '0', + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'VOLUME_HORAIRE_ENS' => + array ( + 'name' => 'VOLUME_HORAIRE_ENS', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'VOLUME_HORAIRE_ENS_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ELEMENT_PEDAGOGIQUE_ID' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_INTERVENTION_ID' => + array ( + 'name' => 'TYPE_INTERVENTION_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HEURES' => + array ( + 'name' => 'HEURES', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'GROUPES' => + array ( + 'name' => 'GROUPES', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'VOLUME_HORAIRE_REF' => + array ( + 'name' => 'VOLUME_HORAIRE_REF', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'VOLUME_HORAIRE_REF_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TYPE_VOLUME_HORAIRE_ID' => + array ( + 'name' => 'TYPE_VOLUME_HORAIRE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SERVICE_REFERENTIEL_ID' => + array ( + 'name' => 'SERVICE_REFERENTIEL_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HEURES' => + array ( + 'name' => 'HEURES', + 'type' => 'FLOAT', + 'length' => 0, + 'scale' => NULL, + 'precision' => 126, + 'nullable' => false, + 'default' => '0', + ), + 'HISTO_CREATION' => + array ( + 'name' => 'HISTO_CREATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_CREATEUR_ID' => + array ( + 'name' => 'HISTO_CREATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_MODIFICATION' => + array ( + 'name' => 'HISTO_MODIFICATION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => 'SYSDATE', + ), + 'HISTO_MODIFICATEUR_ID' => + array ( + 'name' => 'HISTO_MODIFICATEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'HISTO_DESTRUCTION' => + array ( + 'name' => 'HISTO_DESTRUCTION', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HISTO_DESTRUCTEUR_ID' => + array ( + 'name' => 'HISTO_DESTRUCTEUR_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'SOURCE_ID' => + array ( + 'name' => 'SOURCE_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'SOURCE_CODE' => + array ( + 'name' => 'SOURCE_CODE', + 'type' => 'VARCHAR2', + 'length' => 100, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'AUTO_VALIDATION' => + array ( + 'name' => 'AUTO_VALIDATION', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'HORAIRE_DEBUT' => + array ( + 'name' => 'HORAIRE_DEBUT', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'HORAIRE_FIN' => + array ( + 'name' => 'HORAIRE_FIN', + 'type' => 'DATE', + 'length' => 0, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'WF_DEP_BLOQUANTE' => + array ( + 'name' => 'WF_DEP_BLOQUANTE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'WF_DEP_BLOQUANTE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'WF_ETAPE_DEP_ID' => + array ( + 'name' => 'WF_ETAPE_DEP_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TBL_WORKFLOW_ID' => + array ( + 'name' => 'TBL_WORKFLOW_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'TO_DELETE' => + array ( + 'name' => 'TO_DELETE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + ), + ), + 'WF_ETAPE' => + array ( + 'name' => 'WF_ETAPE', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'WF_ETAPE_ID_SEQ', + 'columns' => + array ( + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'CODE' => + array ( + 'name' => 'CODE', + 'type' => 'VARCHAR2', + 'length' => 64, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ORDRE' => + array ( + 'name' => 'ORDRE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => '1', + ), + 'LIBELLE_INTERVENANT' => + array ( + 'name' => 'LIBELLE_INTERVENANT', + 'type' => 'VARCHAR2', + 'length' => 150, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LIBELLE_AUTRES' => + array ( + 'name' => 'LIBELLE_AUTRES', + 'type' => 'VARCHAR2', + 'length' => 150, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ROUTE' => + array ( + 'name' => 'ROUTE', + 'type' => 'VARCHAR2', + 'length' => 200, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'DESC_NON_FRANCHIE' => + array ( + 'name' => 'DESC_NON_FRANCHIE', + 'type' => 'VARCHAR2', + 'length' => 250, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'OBLIGATOIRE' => + array ( + 'name' => 'OBLIGATOIRE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '1', + ), + 'DESC_SANS_OBJECTIF' => + array ( + 'name' => 'DESC_SANS_OBJECTIF', + 'type' => 'VARCHAR2', + 'length' => 250, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'ROUTE_INTERVENANT' => + array ( + 'name' => 'ROUTE_INTERVENANT', + 'type' => 'VARCHAR2', + 'length' => 200, + 'scale' => NULL, + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + ), + ), + 'WF_ETAPE_DEP' => + array ( + 'name' => 'WF_ETAPE_DEP', + 'temporary' => false, + 'logging' => true, + 'commentaire' => NULL, + 'sequence' => 'WF_ETAPE_DEP_ID_SEQ', + 'columns' => + array ( + 'ETAPE_SUIV_ID' => + array ( + 'name' => 'ETAPE_SUIV_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ETAPE_PREC_ID' => + array ( + 'name' => 'ETAPE_PREC_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'LOCALE' => + array ( + 'name' => 'LOCALE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'INTEGRALE' => + array ( + 'name' => 'INTEGRALE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'PARTIELLE' => + array ( + 'name' => 'PARTIELLE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + 'ID' => + array ( + 'name' => 'ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => false, + 'default' => NULL, + ), + 'ACTIVE' => + array ( + 'name' => 'ACTIVE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '1', + ), + 'TYPE_INTERVENANT_ID' => + array ( + 'name' => 'TYPE_INTERVENANT_ID', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => NULL, + 'nullable' => true, + 'default' => NULL, + ), + 'OBLIGATOIRE' => + array ( + 'name' => 'OBLIGATOIRE', + 'type' => 'NUMBER', + 'length' => 0, + 'scale' => '0', + 'precision' => 1, + 'nullable' => false, + 'default' => '0', + ), + ), + ), + ), + 'BddAdmin\\Ddl\\DdlPrimaryConstraint' => + array ( + 'ADRESSE_INTERVENANT_PK' => + array ( + 'name' => 'ADRESSE_INTERVENANT_PK', + 'table' => 'ADRESSE_INTERVENANT', + 'index' => 'ADRESSE_INTERVENANT_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'ADRESSE_STRUCTURE_PK' => + array ( + 'name' => 'ADRESSE_STRUCTURE_PK', + 'table' => 'ADRESSE_STRUCTURE', + 'index' => 'ADRESSE_STRUCTURE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'AFFECTATION_PK' => + array ( + 'name' => 'AFFECTATION_PK', + 'table' => 'AFFECTATION', + 'index' => 'AFFECTATION_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'AFFECTATION_R_PK' => + array ( + 'name' => 'AFFECTATION_R_PK', + 'table' => 'AFFECTATION_RECHERCHE', + 'index' => 'AFFECTATION_R_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'AGREMENT_PK' => + array ( + 'name' => 'AGREMENT_PK', + 'table' => 'AGREMENT', + 'index' => 'AGREMENT_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'ANNEE_PK' => + array ( + 'name' => 'ANNEE_PK', + 'table' => 'ANNEE', + 'index' => 'ANNEE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'CAMPAGNE_PK' => + array ( + 'name' => 'CAMPAGNE_PK', + 'table' => 'CAMPAGNE_SAISIE', + 'index' => 'CAMPAGNE_PK_IDX', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'CATEGORIE_PRIVILEGE_PK' => + array ( + 'name' => 'CATEGORIE_PRIVILEGE_PK', + 'table' => 'CATEGORIE_PRIVILEGE', + 'index' => 'CATEGORIE_PRIVILEGE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'CC_ACTIVITE_PK' => + array ( + 'name' => 'CC_ACTIVITE_PK', + 'table' => 'CC_ACTIVITE', + 'index' => 'CC_ACTIVITE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'CENTRE_COUT_EP_PK' => + array ( + 'name' => 'CENTRE_COUT_EP_PK', + 'table' => 'CENTRE_COUT_EP', + 'index' => 'CENTRE_COUT_EP_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'CENTRE_COUT_PK' => + array ( + 'name' => 'CENTRE_COUT_PK', + 'table' => 'CENTRE_COUT', + 'index' => 'CENTRE_COUT_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'CENTRE_COUT_STRUCTURE_PK' => + array ( + 'name' => 'CENTRE_COUT_STRUCTURE_PK', + 'table' => 'CENTRE_COUT_STRUCTURE', + 'index' => 'CENTRE_COUT_STRUCTURE_PK_IDX', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'CHEMIN_PEDAGOGIQUE_PK' => + array ( + 'name' => 'CHEMIN_PEDAGOGIQUE_PK', + 'table' => 'CHEMIN_PEDAGOGIQUE', + 'index' => 'CHEMIN_PEDAGOGIQUE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'CIVILITE_PK' => + array ( + 'name' => 'CIVILITE_PK', + 'table' => 'CIVILITE', + 'index' => 'CIVILITE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'CONTRAT_FICHIER_PK' => + array ( + 'name' => 'CONTRAT_FICHIER_PK', + 'table' => 'CONTRAT_FICHIER', + 'index' => 'CONTRAT_FICHIER_PK', + 'columns' => + array ( + 0 => 'CONTRAT_ID', + 1 => 'FICHIER_ID', + ), + ), + 'CONTRAT_PK' => + array ( + 'name' => 'CONTRAT_PK', + 'table' => 'CONTRAT', + 'index' => 'CONTRAT_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'CORPS_PK' => + array ( + 'name' => 'CORPS_PK', + 'table' => 'CORPS', + 'index' => 'CORPS_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'DEPARTEMENT_PK' => + array ( + 'name' => 'DEPARTEMENT_PK', + 'table' => 'DEPARTEMENT', + 'index' => 'DEPARTEMENT_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'DISCIPLINE_PK' => + array ( + 'name' => 'DISCIPLINE_PK', + 'table' => 'DISCIPLINE', + 'index' => 'DISCIPLINE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'DOMAINE_FONCTIONNEL_PK' => + array ( + 'name' => 'DOMAINE_FONCTIONNEL_PK', + 'table' => 'DOMAINE_FONCTIONNEL', + 'index' => 'DOMAINE_FONCTIONNEL_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'DOSSIER_PK' => + array ( + 'name' => 'DOSSIER_PK', + 'table' => 'DOSSIER', + 'index' => 'DOSSIER_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'DOTATION_PK' => + array ( + 'name' => 'DOTATION_PK', + 'table' => 'DOTATION', + 'index' => 'DOTATION_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'EFFECTIFS_PK' => + array ( + 'name' => 'EFFECTIFS_PK', + 'table' => 'EFFECTIFS', + 'index' => 'EFFECTIFS_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'ELEMENT_MODULATEUR_PK' => + array ( + 'name' => 'ELEMENT_MODULATEUR_PK', + 'table' => 'ELEMENT_MODULATEUR', + 'index' => 'ELEMENT_MODULATEUR_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'ELEMENT_PEDAGOGIQUE_PK' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_PK', + 'table' => 'ELEMENT_PEDAGOGIQUE', + 'index' => 'ELEMENT_PEDAGOGIQUE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'ELEMENT_TAUX_REGIMES_PK' => + array ( + 'name' => 'ELEMENT_TAUX_REGIMES_PK', + 'table' => 'ELEMENT_TAUX_REGIMES', + 'index' => 'ELEMENT_TAUX_REGIMES_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'ETABLISSEMENT_PK' => + array ( + 'name' => 'ETABLISSEMENT_PK', + 'table' => 'ETABLISSEMENT', + 'index' => 'ETABLISSEMENT_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'ETAPE_PK' => + array ( + 'name' => 'ETAPE_PK', + 'table' => 'ETAPE', + 'index' => 'ETAPE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'ETAT_SORTIE_PK' => + array ( + 'name' => 'ETAT_SORTIE_PK', + 'table' => 'ETAT_SORTIE', + 'index' => 'ETAT_SORTIE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'ETAT_VOLUME_HORAIRE_PK' => + array ( + 'name' => 'ETAT_VOLUME_HORAIRE_PK', + 'table' => 'ETAT_VOLUME_HORAIRE', + 'index' => 'ETAT_VOLUME_HORAIRE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'FICHIER_PK' => + array ( + 'name' => 'FICHIER_PK', + 'table' => 'FICHIER', + 'index' => 'FICHIER_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'FONCTION_REFERENTIEL_PK' => + array ( + 'name' => 'FONCTION_REFERENTIEL_PK', + 'table' => 'FONCTION_REFERENTIEL', + 'index' => 'FONCTION_REFERENTIEL_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'FORMULE_PK' => + array ( + 'name' => 'FORMULE_PK', + 'table' => 'FORMULE', + 'index' => 'FORMULE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'FORMULE_RESULTAT_PK' => + array ( + 'name' => 'FORMULE_RESULTAT_PK', + 'table' => 'FORMULE_RESULTAT', + 'index' => 'FORMULE_RESULTAT_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'FORMULE_RESULTAT_SERVICE_PK' => + array ( + 'name' => 'FORMULE_RESULTAT_SERVICE_PK', + 'table' => 'FORMULE_RESULTAT_SERVICE', + 'index' => 'FORMULE_RESULTAT_SERVICE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'FORMULE_RESULTAT_VH_PK' => + array ( + 'name' => 'FORMULE_RESULTAT_VH_PK', + 'table' => 'FORMULE_RESULTAT_VH', + 'index' => 'FORMULE_RESULTAT_VH_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'FORMULE_RESULTAT_VH_REF_PK' => + array ( + 'name' => 'FORMULE_RESULTAT_VH_REF_PK', + 'table' => 'FORMULE_RESULTAT_VH_REF', + 'index' => 'FORMULE_RESULTAT_VH_REF_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'FORMULE_TEST_INTERVENANT_PK' => + array ( + 'name' => 'FORMULE_TEST_INTERVENANT_PK', + 'table' => 'FORMULE_TEST_INTERVENANT', + 'index' => 'FORMULE_TEST_INTERVENANT_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'FORMULE_TEST_STRUCTURE_PK' => + array ( + 'name' => 'FORMULE_TEST_STRUCTURE_PK', + 'table' => 'FORMULE_TEST_STRUCTURE', + 'index' => 'FORMULE_TEST_STRUCTURE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'FORMULE_TEST_VOLUME_HORAIRE_PK' => + array ( + 'name' => 'FORMULE_TEST_VOLUME_HORAIRE_PK', + 'table' => 'FORMULE_TEST_VOLUME_HORAIRE', + 'index' => 'FORMULE_TEST_VOLUME_HORAIRE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'FRSR_PK' => + array ( + 'name' => 'FRSR_PK', + 'table' => 'FORMULE_RESULTAT_SERVICE_REF', + 'index' => 'FRSR_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'GRADE_PK' => + array ( + 'name' => 'GRADE_PK', + 'table' => 'GRADE', + 'index' => 'GRADE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'GROUPE_PK' => + array ( + 'name' => 'GROUPE_PK', + 'table' => 'GROUPE', + 'index' => 'GROUPE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'GROUPE_TYPE_FORMATION_PK' => + array ( + 'name' => 'GROUPE_TYPE_FORMATION_PK', + 'table' => 'GROUPE_TYPE_FORMATION', + 'index' => 'GROUPE_TYPE_FORMATION_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'HISTO_SERVICE_MODIFICATION_PK' => + array ( + 'name' => 'HISTO_SERVICE_MODIFICATION_PK', + 'table' => 'HISTO_INTERVENANT_SERVICE', + 'index' => 'HISTO_SERVICE_MODIFICATION_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'IMPORT_TABLES_PK' => + array ( + 'name' => 'IMPORT_TABLES_PK', + 'table' => 'IMPORT_TABLES', + 'index' => 'IMPORT_TABLES_PK', + 'columns' => + array ( + 0 => 'TABLE_NAME', + ), + ), + 'INDICATEUR_PK' => + array ( + 'name' => 'INDICATEUR_PK', + 'table' => 'INDICATEUR', + 'index' => 'INDICATEUR_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'INDIC_MODIF_DOSSIER_PK' => + array ( + 'name' => 'INDIC_MODIF_DOSSIER_PK', + 'table' => 'INDIC_MODIF_DOSSIER', + 'index' => 'INDIC_MODIF_DOSSIER_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'INTERVENANT_LISTE_NOIRE_PK' => + array ( + 'name' => 'INTERVENANT_LISTE_NOIRE_PK', + 'table' => 'LISTE_NOIRE', + 'index' => 'INTERVENANT_LISTE_NOIRE_PK', + 'columns' => + array ( + 0 => 'CODE', + ), + ), + 'INTERVENANT_PK' => + array ( + 'name' => 'INTERVENANT_PK', + 'table' => 'INTERVENANT', + 'index' => 'INTERVENANT_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'INTERVENANT_SAISIE_PK' => + array ( + 'name' => 'INTERVENANT_SAISIE_PK', + 'table' => 'INTERVENANT_SAISIE', + 'index' => 'INTERVENANT_SAISIE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'LIEN_PK' => + array ( + 'name' => 'LIEN_PK', + 'table' => 'LIEN', + 'index' => 'LIEN_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'MISE_EN_PAIEMENT_PK' => + array ( + 'name' => 'MISE_EN_PAIEMENT_PK', + 'table' => 'MISE_EN_PAIEMENT', + 'index' => 'MISE_EN_PAIEMENT_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'MODELE_CONTRAT_PK' => + array ( + 'name' => 'MODELE_CONTRAT_PK', + 'table' => 'MODELE_CONTRAT', + 'index' => 'MODELE_CONTRAT_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'MODIFICATION_SERVICE_DU_PK' => + array ( + 'name' => 'MODIFICATION_SERVICE_DU_PK', + 'table' => 'MODIFICATION_SERVICE_DU', + 'index' => 'MODIFICATION_SERVICE_DU_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'MODULATEUR_PK' => + array ( + 'name' => 'MODULATEUR_PK', + 'table' => 'MODULATEUR', + 'index' => 'MODULATEUR_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'MOTIF_MODIFICATION_SERVICE_PK' => + array ( + 'name' => 'MOTIF_MODIFICATION_SERVICE_PK', + 'table' => 'MOTIF_MODIFICATION_SERVICE', + 'index' => 'MOTIF_MODIFICATION_SERVICE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'MOTIF_NON_PAIEMENT_PK' => + array ( + 'name' => 'MOTIF_NON_PAIEMENT_PK', + 'table' => 'MOTIF_NON_PAIEMENT', + 'index' => 'MOTIF_NON_PAIEMENT_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'NOEUD_PK' => + array ( + 'name' => 'NOEUD_PK', + 'table' => 'NOEUD', + 'index' => 'NOEUD_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'NOTIF_INDICATEUR_PK' => + array ( + 'name' => 'NOTIF_INDICATEUR_PK', + 'table' => 'NOTIFICATION_INDICATEUR', + 'index' => 'NOTIF_INDICATEUR_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'PARAMETRE_PK' => + array ( + 'name' => 'PARAMETRE_PK', + 'table' => 'PARAMETRE', + 'index' => 'PARAMETRE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'PAYS_PK' => + array ( + 'name' => 'PAYS_PK', + 'table' => 'PAYS', + 'index' => 'PAYS_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'PERIMETRE_PK' => + array ( + 'name' => 'PERIMETRE_PK', + 'table' => 'PERIMETRE', + 'index' => 'PERIMETRE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'PERIODE_PK' => + array ( + 'name' => 'PERIODE_PK', + 'table' => 'PERIODE', + 'index' => 'PERIODE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'PIECE_JOINTE_FICHIER_PK' => + array ( + 'name' => 'PIECE_JOINTE_FICHIER_PK', + 'table' => 'PIECE_JOINTE_FICHIER', + 'index' => 'PIECE_JOINTE_FICHIER_PK', + 'columns' => + array ( + 0 => 'PIECE_JOINTE_ID', + 1 => 'FICHIER_ID', + ), + ), + 'PIECE_JOINTE_PK' => + array ( + 'name' => 'PIECE_JOINTE_PK', + 'table' => 'PIECE_JOINTE', + 'index' => 'PIECE_JOINTE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'PLAFOND_APPLICATION_PK' => + array ( + 'name' => 'PLAFOND_APPLICATION_PK', + 'table' => 'PLAFOND_APPLICATION', + 'index' => 'PLAFOND_APPLICATION_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'PLAFOND_ETAT_PK' => + array ( + 'name' => 'PLAFOND_ETAT_PK', + 'table' => 'PLAFOND_ETAT', + 'index' => 'PLAFOND_ETAT_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'PLAFOND_PK' => + array ( + 'name' => 'PLAFOND_PK', + 'table' => 'PLAFOND', + 'index' => 'PLAFOND_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'PRIVILEGE_PK' => + array ( + 'name' => 'PRIVILEGE_PK', + 'table' => 'PRIVILEGE', + 'index' => 'PRIVILEGE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'REGLE_STRUCTURE_VALIDATION_PK' => + array ( + 'name' => 'REGLE_STRUCTURE_VALIDATION_PK', + 'table' => 'REGLE_STRUCTURE_VALIDATION', + 'index' => 'REGLE_STRUCTURE_VALIDATION_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'ROLE_PK' => + array ( + 'name' => 'ROLE_PK', + 'table' => 'ROLE', + 'index' => 'ROLE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'ROLE_PRIVILEGE_PK' => + array ( + 'name' => 'ROLE_PRIVILEGE_PK', + 'table' => 'ROLE_PRIVILEGE', + 'index' => 'ROLE_PRIVILEGE_PK', + 'columns' => + array ( + 0 => 'PRIVILEGE_ID', + 1 => 'ROLE_ID', + ), + ), + 'SCENARIO_LIEN_PK' => + array ( + 'name' => 'SCENARIO_LIEN_PK', + 'table' => 'SCENARIO_LIEN', + 'index' => 'SCENARIO_LIEN_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'SCENARIO_NOEUD_EFFECTIF_PK' => + array ( + 'name' => 'SCENARIO_NOEUD_EFFECTIF_PK', + 'table' => 'SCENARIO_NOEUD_EFFECTIF', + 'index' => 'SCENARIO_NOEUD_EFFECTIF_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'SCENARIO_NOEUD_PK' => + array ( + 'name' => 'SCENARIO_NOEUD_PK', + 'table' => 'SCENARIO_NOEUD', + 'index' => 'SCENARIO_NOEUD_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'SCENARIO_NOEUD_SEUIL_PK' => + array ( + 'name' => 'SCENARIO_NOEUD_SEUIL_PK', + 'table' => 'SCENARIO_NOEUD_SEUIL', + 'index' => 'SCENARIO_NOEUD_SEUIL_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'SCENARIO_PK' => + array ( + 'name' => 'SCENARIO_PK', + 'table' => 'SCENARIO', + 'index' => 'SCENARIO_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'SERVICE_PK' => + array ( + 'name' => 'SERVICE_PK', + 'table' => 'SERVICE', + 'index' => 'SERVICE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'SERVICE_REFERENTIEL_PK' => + array ( + 'name' => 'SERVICE_REFERENTIEL_PK', + 'table' => 'SERVICE_REFERENTIEL', + 'index' => 'SERVICE_REFERENTIEL_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'SEUIL_CHARGE_PK' => + array ( + 'name' => 'SEUIL_CHARGE_PK', + 'table' => 'SEUIL_CHARGE', + 'index' => 'SEUIL_CHARGE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'SOURCE_PK' => + array ( + 'name' => 'SOURCE_PK', + 'table' => 'SOURCE', + 'index' => 'SOURCE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'STATUT_INTERVENANT_PK' => + array ( + 'name' => 'STATUT_INTERVENANT_PK', + 'table' => 'STATUT_INTERVENANT', + 'index' => 'STATUT_INTERVENANT_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'STATUT_PRIVILEGE_PK' => + array ( + 'name' => 'STATUT_PRIVILEGE_PK', + 'table' => 'STATUT_PRIVILEGE', + 'index' => 'STATUT_PRIVILEGE_PK', + 'columns' => + array ( + 0 => 'STATUT_ID', + 1 => 'PRIVILEGE_ID', + ), + ), + 'STRUCTURE_PK' => + array ( + 'name' => 'STRUCTURE_PK', + 'table' => 'STRUCTURE', + 'index' => 'STRUCTURE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'SYNC_LOG_PK' => + array ( + 'name' => 'SYNC_LOG_PK', + 'table' => 'SYNC_LOG', + 'index' => 'SYNC_LOG_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TAUX_HORAIRE_HETD_PK' => + array ( + 'name' => 'TAUX_HORAIRE_HETD_PK', + 'table' => 'TAUX_HORAIRE_HETD', + 'index' => 'TAUX_HORAIRE_HETD_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_AGREMENT_PK' => + array ( + 'name' => 'TBL_AGREMENT_PK', + 'table' => 'TBL_AGREMENT', + 'index' => 'TBL_AGREMENT_PK_IDX', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_CHARGENS_PK' => + array ( + 'name' => 'TBL_CHARGENS_PK', + 'table' => 'TBL_CHARGENS', + 'index' => 'TBL_CHARGENS_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_CHARGENS_SEUILS_DEF_PK' => + array ( + 'name' => 'TBL_CHARGENS_SEUILS_DEF_PK', + 'table' => 'TBL_CHARGENS_SEUILS_DEF', + 'index' => 'TBL_CHARGENS_SEUILS_DEF_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_CLOTURE_REALISE_PK' => + array ( + 'name' => 'TBL_CLOTURE_REALISE_PK', + 'table' => 'TBL_CLOTURE_REALISE', + 'index' => 'TBL_CLOTURE_REALISE_PK_IDX', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_CONTRAT_PK' => + array ( + 'name' => 'TBL_CONTRAT_PK', + 'table' => 'TBL_CONTRAT', + 'index' => 'TBL_CONTRAT_PK_IDX', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_DMEP_LIQUIDATION_PK' => + array ( + 'name' => 'TBL_DMEP_LIQUIDATION_PK', + 'table' => 'TBL_DMEP_LIQUIDATION', + 'index' => 'TBL_DMEP_LIQUIDATION_PK_IDX', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_DOSSIER_PK' => + array ( + 'name' => 'TBL_DOSSIER_PK', + 'table' => 'TBL_DOSSIER', + 'index' => 'TBL_DOSSIER_PK_IDX', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_LIEN_PK' => + array ( + 'name' => 'TBL_LIEN_PK', + 'table' => 'TBL_LIEN', + 'index' => 'TBL_LIEN_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_PAIEMENT_PK' => + array ( + 'name' => 'TBL_PAIEMENT_PK', + 'table' => 'TBL_PAIEMENT', + 'index' => 'TBL_PAIEMENT_PK_IDX', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_PIECE_JOINTE_PK' => + array ( + 'name' => 'TBL_PIECE_JOINTE_PK', + 'table' => 'TBL_PIECE_JOINTE', + 'index' => 'TBL_PIECE_JOINTE_PK_IDX', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_PJD_PK' => + array ( + 'name' => 'TBL_PJD_PK', + 'table' => 'TBL_PIECE_JOINTE_DEMANDE', + 'index' => 'TBL_PJD_PK_IDX', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_PJF_PK' => + array ( + 'name' => 'TBL_PJF_PK', + 'table' => 'TBL_PIECE_JOINTE_FOURNIE', + 'index' => 'TBL_PJF_PK_IDX', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_PK' => + array ( + 'name' => 'TBL_PK', + 'table' => 'TBL', + 'index' => 'TBL_PK', + 'columns' => + array ( + 0 => 'TBL_NAME', + ), + ), + 'TBL_SERVICE_PK' => + array ( + 'name' => 'TBL_SERVICE_PK', + 'table' => 'TBL_SERVICE', + 'index' => 'TBL_SERVICE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_SERVICE_REFERENTIEL_PK' => + array ( + 'name' => 'TBL_SERVICE_REFERENTIEL_PK', + 'table' => 'TBL_SERVICE_REFERENTIEL', + 'index' => 'TBL_SERVICE_REFERENTIEL_PK_IDX', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_SERVICE_SAISIE_PK' => + array ( + 'name' => 'TBL_SERVICE_SAISIE_PK', + 'table' => 'TBL_SERVICE_SAISIE', + 'index' => 'TBL_SERVICE_SAISIE_PK_IDX', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_VALIDATION_ENSEIGNEMENT_PK' => + array ( + 'name' => 'TBL_VALIDATION_ENSEIGNEMENT_PK', + 'table' => 'TBL_VALIDATION_ENSEIGNEMENT', + 'index' => 'TBL_VALIDATION_ENSEIGNEMENT_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_VALIDATION_REFERENTIEL_PK' => + array ( + 'name' => 'TBL_VALIDATION_REFERENTIEL_PK', + 'table' => 'TBL_VALIDATION_REFERENTIEL', + 'index' => 'TBL_VALIDATION_REFERENTIEL_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_WORKFLOW_PK' => + array ( + 'name' => 'TBL_WORKFLOW_PK', + 'table' => 'TBL_WORKFLOW', + 'index' => 'TBL_WORKFLOW_PK_IDX', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TEST_BUFFER_PK' => + array ( + 'name' => 'TEST_BUFFER_PK', + 'table' => 'TEST_BUFFER', + 'index' => 'TEST_BUFFER_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_AGREMENT_PK' => + array ( + 'name' => 'TYPE_AGREMENT_PK', + 'table' => 'TYPE_AGREMENT', + 'index' => 'TYPE_AGREMENT_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_AGREMENT_STATUT_PK' => + array ( + 'name' => 'TYPE_AGREMENT_STATUT_PK', + 'table' => 'TYPE_AGREMENT_STATUT', + 'index' => 'TYPE_AGREMENT_STATUT_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_CONTRAT_PK' => + array ( + 'name' => 'TYPE_CONTRAT_PK', + 'table' => 'TYPE_CONTRAT', + 'index' => 'TYPE_CONTRAT_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_DOTATION_PK' => + array ( + 'name' => 'TYPE_DOTATION_PK', + 'table' => 'TYPE_DOTATION', + 'index' => 'TYPE_DOTATION_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_FORMATION_PK' => + array ( + 'name' => 'TYPE_FORMATION_PK', + 'table' => 'TYPE_FORMATION', + 'index' => 'TYPE_FORMATION_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_HEURES_PK' => + array ( + 'name' => 'TYPE_HEURES_PK', + 'table' => 'TYPE_HEURES', + 'index' => 'TYPE_HEURES_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_INTERVENANT_PK' => + array ( + 'name' => 'TYPE_INTERVENANT_PK', + 'table' => 'TYPE_INTERVENANT', + 'index' => 'TYPE_INTERVENANT_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_INTERVENTION_EP_PK' => + array ( + 'name' => 'TYPE_INTERVENTION_EP_PK', + 'table' => 'TYPE_INTERVENTION_EP', + 'index' => 'TYPE_INTERVENTION_EP_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_INTERVENTION_PK' => + array ( + 'name' => 'TYPE_INTERVENTION_PK', + 'table' => 'TYPE_INTERVENTION', + 'index' => 'TYPE_INTERVENTION_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_INTERVENTION_STATUT_PK' => + array ( + 'name' => 'TYPE_INTERVENTION_STATUT_PK', + 'table' => 'TYPE_INTERVENTION_STATUT', + 'index' => 'TYPE_INTERVENTION_STATUT_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_INTERVENTION_STRUCTURE_PK' => + array ( + 'name' => 'TYPE_INTERVENTION_STRUCTURE_PK', + 'table' => 'TYPE_INTERVENTION_STRUCTURE', + 'index' => 'TYPE_INTERVENTION_STRUCTURE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_MODULATEUR_EP_PK' => + array ( + 'name' => 'TYPE_MODULATEUR_EP_PK', + 'table' => 'TYPE_MODULATEUR_EP', + 'index' => 'TYPE_MODULATEUR_EP_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_MODULATEUR_PK' => + array ( + 'name' => 'TYPE_MODULATEUR_PK', + 'table' => 'TYPE_MODULATEUR', + 'index' => 'TYPE_MODULATEUR_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_MODULATEUR_STRUCTURE_PK' => + array ( + 'name' => 'TYPE_MODULATEUR_STRUCTURE_PK', + 'table' => 'TYPE_MODULATEUR_STRUCTURE', + 'index' => 'TYPE_MODULATEUR_STRUCTURE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_PIECE_JOINTE_PK' => + array ( + 'name' => 'TYPE_PIECE_JOINTE_PK', + 'table' => 'TYPE_PIECE_JOINTE', + 'index' => 'TYPE_PIECE_JOINTE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_PIECE_JOINTE_STATUT_PK' => + array ( + 'name' => 'TYPE_PIECE_JOINTE_STATUT_PK', + 'table' => 'TYPE_PIECE_JOINTE_STATUT', + 'index' => 'TYPE_PIECE_JOINTE_STATUT_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_RESSOURCE_PK' => + array ( + 'name' => 'TYPE_RESSOURCE_PK', + 'table' => 'TYPE_RESSOURCE', + 'index' => 'TYPE_RESSOURCE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_VALIDATION_PK' => + array ( + 'name' => 'TYPE_VALIDATION_PK', + 'table' => 'TYPE_VALIDATION', + 'index' => 'TYPE_VALIDATION_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_VOLUME_HORAIRE_PK' => + array ( + 'name' => 'TYPE_VOLUME_HORAIRE_PK', + 'table' => 'TYPE_VOLUME_HORAIRE', + 'index' => 'TYPE_VOLUME_HORAIRE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'UTILISATEUR_PK' => + array ( + 'name' => 'UTILISATEUR_PK', + 'table' => 'UTILISATEUR', + 'index' => 'UTILISATEUR_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'VALIDATION_PK' => + array ( + 'name' => 'VALIDATION_PK', + 'table' => 'VALIDATION', + 'index' => 'VALIDATION_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'VALIDATION_VOL_HORAIRE_PK' => + array ( + 'name' => 'VALIDATION_VOL_HORAIRE_PK', + 'table' => 'VALIDATION_VOL_HORAIRE', + 'index' => 'VALIDATION_VOL_HORAIRE_PK', + 'columns' => + array ( + 0 => 'VALIDATION_ID', + 1 => 'VOLUME_HORAIRE_ID', + ), + ), + 'VALIDATION_VOL_HORAIRE_REF_PK' => + array ( + 'name' => 'VALIDATION_VOL_HORAIRE_REF_PK', + 'table' => 'VALIDATION_VOL_HORAIRE_REF', + 'index' => 'VALIDATION_VOL_HORAIRE_REF_PK', + 'columns' => + array ( + 0 => 'VALIDATION_ID', + 1 => 'VOLUME_HORAIRE_REF_ID', + ), + ), + 'VERSION_PK' => + array ( + 'name' => 'VERSION_PK', + 'table' => 'VERSION', + 'index' => 'VERSION_PK', + 'columns' => + array ( + 0 => 'NUMERO', + ), + ), + 'VOLUME_HORAIRE_CHARGE_PK' => + array ( + 'name' => 'VOLUME_HORAIRE_CHARGE_PK', + 'table' => 'VOLUME_HORAIRE_CHARGE', + 'index' => 'VOLUME_HORAIRE_CHARGE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'VOLUME_HORAIRE_ENS_PK' => + array ( + 'name' => 'VOLUME_HORAIRE_ENS_PK', + 'table' => 'VOLUME_HORAIRE_ENS', + 'index' => 'VOLUME_HORAIRE_ENS_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'VOLUME_HORAIRE_PK' => + array ( + 'name' => 'VOLUME_HORAIRE_PK', + 'table' => 'VOLUME_HORAIRE', + 'index' => 'VOLUME_HORAIRE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'VOLUME_HORAIRE_REF_PK' => + array ( + 'name' => 'VOLUME_HORAIRE_REF_PK', + 'table' => 'VOLUME_HORAIRE_REF', + 'index' => 'VOLUME_HORAIRE_REF_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'WF_DEPS_BLOQUANTES_PK' => + array ( + 'name' => 'WF_DEPS_BLOQUANTES_PK', + 'table' => 'WF_DEP_BLOQUANTE', + 'index' => 'WF_DEPS_BLOQUANTES_PK_IDX', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'WF_ETAPE_DEP_PK' => + array ( + 'name' => 'WF_ETAPE_DEP_PK', + 'table' => 'WF_ETAPE_DEP', + 'index' => 'WF_ETAPE_DEP_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'WF_ETAPE_PK' => + array ( + 'name' => 'WF_ETAPE_PK', + 'table' => 'WF_ETAPE', + 'index' => 'WF_ETAPE_PK', + 'columns' => + array ( + 0 => 'ID', + ), + ), + ), + 'BddAdmin\\Ddl\\DdlPackage' => + array ( + 'FORMULE_ENSICAEN' => + array ( + 'name' => 'FORMULE_ENSICAEN', + 'definition' => 'CREATE OR REPLACE PACKAGE FORMULE_ENSICAEN AS + + PROCEDURE CALCUL_RESULTAT; + + FUNCTION calcCell( c VARCHAR2, l NUMERIC ) RETURN FLOAT; + + FUNCTION INTERVENANT_QUERY RETURN CLOB; + FUNCTION VOLUME_HORAIRE_QUERY RETURN CLOB; + +END FORMULE_ENSICAEN;', + 'body' => 'CREATE OR REPLACE PACKAGE BODY FORMULE_ENSICAEN AS + decalageLigne NUMERIC DEFAULT 20; + + + /* Stockage des valeurs intermédiaires */ + TYPE t_cell IS RECORD ( + valeur FLOAT, + enCalcul BOOLEAN DEFAULT FALSE + ); + TYPE t_cells IS TABLE OF t_cell INDEX BY PLS_INTEGER; + TYPE t_coll IS RECORD ( + cells t_cells + ); + TYPE t_colls IS TABLE OF t_coll INDEX BY VARCHAR2(50); + feuille t_colls; + + debugLine NUMERIC; + + + PROCEDURE dbg( val CLOB ) IS + BEGIN + ose_formule.volumes_horaires.items(debugLine).debug_info := + ose_formule.volumes_horaires.items(debugLine).debug_info || val; + END; + + + PROCEDURE dbgi( val CLOB ) IS + BEGIN + ose_formule.intervenant.debug_info := ose_formule.intervenant.debug_info || val; + END; + + PROCEDURE dbgDump( val CLOB ) IS + BEGIN + dbg(\'<div class="dbg-dump">\' || val || \'</div>\'); + END; + + PROCEDURE dbgCell( c VARCHAR2, l NUMERIC, val FLOAT ) IS + ligne NUMERIC; + BEGIN + ligne := l; + IF l <> 0 THEN + ligne := ligne + decalageLigne; + END IF; + + dbgi( \'[cell|\' || c || \'|\' || ligne || \'|\' || val ); + END; + + PROCEDURE dbgCalc( fncName VARCHAR2, c VARCHAR2, res FLOAT ) IS + BEGIN + dbgi( \'[calc|\' || fncName || \'|\' || c || \'|\' || res ); + END; + + FUNCTION cell( c VARCHAR2, l NUMERIC DEFAULT 0 ) RETURN FLOAT IS + val FLOAT; + BEGIN + IF feuille.exists(c) THEN + IF feuille(c).cells.exists(l) THEN + IF feuille(c).cells(l).enCalcul THEN + raise_application_error( -20001, \'Dépendance cyclique : la cellule [\' || c || \';\' || l || \'] est déjà en cours de calcul\'); + END IF; + RETURN feuille(c).cells(l).valeur; + END IF; + END IF; + + feuille(c).cells(l).enCalcul := true; + val := calcCell( c, l ); + IF ose_formule.debug_actif THEN + dbgCell( c, l, val ); + END IF; + feuille(c).cells(l).valeur := val; + feuille(c).cells(l).enCalcul := false; + + RETURN val; + END; + + FUNCTION mainCell( libelle VARCHAR2, c VARCHAR2, l NUMERIC ) RETURN FLOAT IS + val FLOAT; + BEGIN + debugLine := l; + val := cell(c,l); + + RETURN val; + END; + + FUNCTION calcFnc( fncName VARCHAR2, c VARCHAR2 ) RETURN FLOAT IS + val FLOAT; + cellRes FLOAT; + BEGIN + IF feuille.exists(\'__\' || fncName || \'__\' || c || \'__\') THEN + IF feuille(\'__\' || fncName || \'__\' || c || \'__\').cells.exists(1) THEN + RETURN feuille(\'__\' || fncName || \'__\' || c || \'__\').cells(1).valeur; + END IF; + END IF; + CASE + -- Liste des fonctions supportées + + WHEN fncName = \'total\' THEN + val := 0; + FOR l IN 1 .. ose_formule.volumes_horaires.length LOOP + val := val + COALESCE(cell(c, l),0); + END LOOP; + + WHEN fncName = \'max\' THEN + val := NULL; + FOR l IN 1 .. ose_formule.volumes_horaires.length LOOP + cellRes := cell(c,l); + IF val IS NULL OR val < cellRes THEN + val := cellRes; + END IF; + END LOOP; + + -- fin de la liste des fonctions supportées + ELSE + raise_application_error( -20001, \'La formule "\' || fncName || \'" n\'\'existe pas!\'); + END CASE; + IF ose_formule.debug_actif THEN + dbgCalc(fncName, c, val ); + END IF; + feuille(\'__\' || fncName || \'__\' || c || \'__\').cells(1).valeur := val; + + RETURN val; + END; + + + FUNCTION calcVersion RETURN NUMERIC IS + BEGIN + RETURN 1; + END; + + + + FUNCTION calcCell( c VARCHAR2, l NUMERIC ) RETURN FLOAT IS + vh ose_formule.t_volume_horaire; + i ose_formule.t_intervenant; + v NUMERIC; + val FLOAT; + BEGIN + v := calcVersion; + + i := ose_formule.intervenant; + IF l > 0 THEN + vh := ose_formule.volumes_horaires.items(l); + END IF; + CASE + + + + -- service_realise =SOMME($O$21:$O$40) + WHEN c = \'service_realise\' AND v >= 1 THEN + RETURN calcFnc(\'total\', \'o\'); + + + + -- hc =SOMME($R$21:$R$40) + WHEN c = \'hc\' AND v >= 1 THEN + RETURN calcFnc(\'total\', \'r\'); + + + + -- j =SI(ESTVIDE(C21);0;RECHERCHEH(SI(ET(C21="TP";TP_vaut_TD="Oui");"TD";C21);types_intervention;2;0)) + -- j =RECHERCHEH(SI(ET(C21="TP";TP_vaut_TD="Oui");"TD";C21);types_intervention;2;0) + WHEN c = \'j\' AND v >= 1 THEN + RETURN vh.taux_service_du; + + + + -- k =SI(ESTVIDE(C21);0;RECHERCHEH(C21;types_intervention;3;0)) + WHEN c = \'k\' AND v >= 1 THEN + RETURN vh.taux_service_compl; + + + + -- l =SI(H21="Oui";I21*J21;0) + WHEN c = \'l\' AND v >= 1 THEN + IF vh.service_statutaire THEN + RETURN vh.heures * cell(\'j\',l); + ELSE + RETURN 0; + END IF; + + + + -- n =SI($L$41>0;L21/$L$41;0) + WHEN c = \'n\' AND v >= 1 THEN + IF calcFnc(\'total\', \'l\') > 0 THEN + RETURN cell(\'l\',l) / calcFnc(\'total\', \'l\'); + ELSE + RETURN 0; + END IF; + + + + -- o =MIN(service_du;$L$41)*N21 + WHEN c = \'o\' AND v >= 1 THEN + RETURN LEAST(i.service_du, calcFnc(\'total\', \'l\')) * cell(\'n\',l); + + + + -- p =SI(L21<>0;O21/L21;0) + WHEN c = \'p\' AND v >= 1 THEN + IF cell(\'l\',l) <> 0 THEN + RETURN cell(\'o\',l) / cell(\'l\',l); + ELSE + RETURN 0; + END IF; + + + + -- q =SI($L$41>service_du;1-P21;0) + WHEN c = \'q\' AND v >= 1 THEN + IF calcFnc(\'total\', \'l\') > i.service_du THEN + RETURN 1 - cell(\'p\',l); + ELSE + RETURN 0; + END IF; + + + + -- r =SI(HC_autorisees="Oui";I21*Q21*K21;0) + WHEN c = \'r\' AND v >= 1 THEN + IF NOT i.depassement_service_du_sans_hc THEN + RETURN vh.heures * cell(\'q\',l) * cell(\'k\',l); + ELSE + RETURN 0; + END IF; + + + + -- t =SI(OU(ESTVIDE($C21);$C21="Référentiel");0;$O21*D21) + WHEN c = \'t\' AND v >= 1 THEN + IF vh.volume_horaire_ref_id IS NOT NULL THEN + RETURN 0; + ELSE + RETURN cell(\'o\',l) * vh.taux_fi; + END IF; + + + + -- u =SI(OU(ESTVIDE($C21);$C21="Référentiel");0;$O21*E21) + WHEN c = \'u\' AND v >= 1 THEN + IF vh.volume_horaire_ref_id IS NOT NULL THEN + RETURN 0; + ELSE + RETURN cell(\'o\',l) * vh.taux_fa; + END IF; + + + + -- v =SI(OU(ESTVIDE($C21);$C21="Référentiel");0;$O21*F21) + WHEN c = \'v\' AND v >= 1 THEN + IF vh.volume_horaire_ref_id IS NOT NULL THEN + RETURN 0; + ELSE + RETURN cell(\'o\',l) * vh.taux_fc; + END IF; + + + + -- w =SI($C21="Référentiel";$O21;0) + WHEN c = \'w\' AND v >= 1 THEN + IF vh.volume_horaire_ref_id IS NOT NULL THEN + RETURN cell(\'o\',l); + ELSE + RETURN 0; + END IF; + + + + -- x =SI(OU(ESTVIDE($C21);$C21="Référentiel");0;$R21*D21) + WHEN c = \'x\' AND v >= 1 THEN + IF vh.volume_horaire_ref_id IS NOT NULL THEN + RETURN 0; + ELSE + RETURN cell(\'r\',l) * vh.taux_fi; + END IF; + + + + -- y =SI(OU(ESTVIDE($C21);$C21="Référentiel");0;$R21*E21) + WHEN c = \'y\' AND v >= 1 THEN + IF vh.volume_horaire_ref_id IS NOT NULL THEN + RETURN 0; + ELSE + RETURN cell(\'r\',l) * vh.taux_fa; + END IF; + + + + -- z =SI(OU(ESTVIDE($C21);$C21="Référentiel");0;$R21*F21) + WHEN c = \'z\' AND v >= 1 THEN + IF vh.volume_horaire_ref_id IS NOT NULL THEN + RETURN 0; + ELSE + RETURN cell(\'r\',l) * vh.taux_fc; + END IF; + + + + -- aa =0 + WHEN c = \'aa\' AND v >= 1 THEN + RETURN 0; + + + + -- ab =SI($C21="Référentiel";$R21;0) + WHEN c = \'ab\' AND v >= 1 THEN + IF vh.volume_horaire_ref_id IS NOT NULL THEN + RETURN cell(\'r\',l); + ELSE + RETURN 0; + END IF; + + + + ELSE + raise_application_error( -20001, \'La colonne c=\' || c || \', l=\' || l || \' n\'\'existe pas!\'); + END CASE; END; + + + + PROCEDURE CALCUL_RESULTAT IS + BEGIN + feuille.delete; + + -- transmission des résultats aux volumes horaires et volumes horaires référentiel + FOR l IN 1 .. ose_formule.volumes_horaires.length LOOP + ose_formule.volumes_horaires.items(l).service_fi := mainCell(\'Service FI\', \'t\',l); + ose_formule.volumes_horaires.items(l).service_fa := mainCell(\'Service FA\', \'u\',l); + ose_formule.volumes_horaires.items(l).service_fc := mainCell(\'Service FC\', \'v\',l); + ose_formule.volumes_horaires.items(l).service_referentiel := mainCell(\'Service référentiel\', \'w\',l); + ose_formule.volumes_horaires.items(l).heures_compl_fi := mainCell(\'Heures compl. FI\', \'x\',l); + ose_formule.volumes_horaires.items(l).heures_compl_fa := mainCell(\'Heures compl. FA\', \'y\',l); + ose_formule.volumes_horaires.items(l).heures_compl_fc := mainCell(\'Heures compl. FC\', \'z\',l); + ose_formule.volumes_horaires.items(l).heures_compl_fc_majorees := mainCell(\'Heures compl. FC Maj.\', \'aa\',l); + ose_formule.volumes_horaires.items(l).heures_compl_referentiel := mainCell(\'Heures compl. référentiel\', \'ab\',l); + END LOOP; + END; + + + + FUNCTION INTERVENANT_QUERY RETURN CLOB IS + BEGIN + RETURN \' + SELECT + fi.*, + NULL param_1, + NULL param_2, + NULL param_3, + NULL param_4, + NULL param_5 + FROM + v_formule_intervenant fi + \'; + END; + + + + FUNCTION VOLUME_HORAIRE_QUERY RETURN CLOB IS + BEGIN + RETURN \' + SELECT + fvh.*, + NULL param_1, + NULL param_2, + NULL param_3, + NULL param_4, + NULL param_5 + FROM + v_formule_volume_horaire fvh + ORDER BY + ordre\'; + END; + +END FORMULE_ENSICAEN;', + ), + 'FORMULE_MONTPELLIER' => + array ( + 'name' => 'FORMULE_MONTPELLIER', + 'definition' => 'CREATE OR REPLACE PACKAGE "FORMULE_MONTPELLIER" AS + + PROCEDURE CALCUL_RESULTAT; + + FUNCTION calcCell( c VARCHAR2, l NUMERIC ) RETURN FLOAT; + + FUNCTION INTERVENANT_QUERY RETURN CLOB; + FUNCTION VOLUME_HORAIRE_QUERY RETURN CLOB; + +END FORMULE_MONTPELLIER;', + 'body' => 'CREATE OR REPLACE PACKAGE BODY "FORMULE_MONTPELLIER" AS + decalageLigne NUMERIC DEFAULT 20; + + + /* Stockage des valeurs intermédiaires */ + TYPE t_cell IS RECORD ( + valeur FLOAT, + enCalcul BOOLEAN DEFAULT FALSE + ); + TYPE t_cells IS TABLE OF t_cell INDEX BY PLS_INTEGER; + TYPE t_coll IS RECORD ( + cells t_cells + ); + TYPE t_colls IS TABLE OF t_coll INDEX BY VARCHAR2(50); + feuille t_colls; + + debugLine NUMERIC; + + + PROCEDURE dbg( val CLOB ) IS + BEGIN + ose_formule.volumes_horaires.items(debugLine).debug_info := + ose_formule.volumes_horaires.items(debugLine).debug_info || val; + END; + + + PROCEDURE dbgi( val CLOB ) IS + BEGIN + ose_formule.intervenant.debug_info := ose_formule.intervenant.debug_info || val; + END; + + PROCEDURE dbgDump( val CLOB ) IS + BEGIN + dbg(\'<div class="dbg-dump">\' || val || \'</div>\'); + END; + + PROCEDURE dbgCell( c VARCHAR2, l NUMERIC, val FLOAT ) IS + ligne NUMERIC; + BEGIN + ligne := l; + IF l <> 0 THEN + ligne := ligne + decalageLigne; + END IF; + + dbgi( \'[cell|\' || c || \'|\' || ligne || \'|\' || val ); + END; + + PROCEDURE dbgCalc( fncName VARCHAR2, c VARCHAR2, res FLOAT ) IS + BEGIN + dbgi( \'[calc|\' || fncName || \'|\' || c || \'|\' || res ); + END; + + FUNCTION cell( c VARCHAR2, l NUMERIC DEFAULT 0 ) RETURN FLOAT IS + val FLOAT; + BEGIN + IF feuille.exists(c) THEN + IF feuille(c).cells.exists(l) THEN + IF feuille(c).cells(l).enCalcul THEN + raise_application_error( -20001, \'Dépendance cyclique : la cellule [\' || c || \';\' || l || \'] est déjà en cours de calcul\'); + END IF; + RETURN feuille(c).cells(l).valeur; + END IF; + END IF; + + feuille(c).cells(l).enCalcul := true; + val := calcCell( c, l ); + IF ose_formule.debug_actif THEN + dbgCell( c, l, val ); + END IF; + feuille(c).cells(l).valeur := val; + feuille(c).cells(l).enCalcul := false; + + RETURN val; + END; + + FUNCTION mainCell( libelle VARCHAR2, c VARCHAR2, l NUMERIC ) RETURN FLOAT IS + val FLOAT; + BEGIN + debugLine := l; + val := cell(c,l); + + RETURN val; + END; + + FUNCTION calcFnc( fncName VARCHAR2, c VARCHAR2 ) RETURN FLOAT IS + val FLOAT; + cellRes FLOAT; + BEGIN + IF feuille.exists(\'__\' || fncName || \'__\' || c || \'__\') THEN + IF feuille(\'__\' || fncName || \'__\' || c || \'__\').cells.exists(1) THEN + RETURN feuille(\'__\' || fncName || \'__\' || c || \'__\').cells(1).valeur; + END IF; + END IF; + CASE + -- Liste des fonctions supportées + + WHEN fncName = \'total\' THEN + val := 0; + FOR l IN 1 .. ose_formule.volumes_horaires.length LOOP + val := val + COALESCE(cell(c, l),0); + END LOOP; + + WHEN fncName = \'max\' THEN + val := NULL; + FOR l IN 1 .. ose_formule.volumes_horaires.length LOOP + cellRes := cell(c,l); + IF val IS NULL OR val < cellRes THEN + val := cellRes; + END IF; + END LOOP; +--UM + WHEN fncName = \'last\' THEN + val := NULL; + FOR l IN 1 .. ose_formule.volumes_horaires.length LOOP + cellRes := cell(c,l); + val := cellRes; + END LOOP; + + + -- fin de la liste des fonctions supportées + ELSE + raise_application_error( -20001, \'La formule "\' || fncName || \'" n\'\'existe pas!\'); + END CASE; + IF ose_formule.debug_actif THEN + dbgCalc(fncName, c, val ); + END IF; + feuille(\'__\' || fncName || \'__\' || c || \'__\').cells(1).valeur := val; + + RETURN val; + END; + + + FUNCTION calcVersion RETURN NUMERIC IS + BEGIN + RETURN 1; + END; + + + + FUNCTION calcCell( c VARCHAR2, l NUMERIC ) RETURN FLOAT IS + vh ose_formule.t_volume_horaire; + i ose_formule.t_intervenant; + v NUMERIC; + val FLOAT; + BEGIN + v := calcVersion; + + i := ose_formule.intervenant; + IF l > 0 THEN + vh := ose_formule.volumes_horaires.items(l); + END IF; + CASE + + + -- J = SI(ESTVIDE(C21);0;RECHERCHEH(SI(ET(C21="TP";TP_vaut_TD="Oui");"TD";C21);types_intervention;2;0)) + WHEN c = \'j\' AND v >= 1 THEN + RETURN vh.taux_service_du * vh.ponderation_service_du; + + + + -- K = SI(H21="Oui";I21*J21;0) + WHEN c = \'k\' AND v >= 1 THEN + IF vh.service_statutaire THEN + RETURN vh.heures * cell(\'j\',l); + ELSE + RETURN 0; + END IF; + + + + -- l = SI(OU(L20+K21>service_du;L20=service_du);service_du;L20+K21) + -- UM l =SI(K21 < 0;L20+K21;SI(OU(L20+K21>service_du;L20=service_du);service_du;L20+K21)) +/* + WHEN c = \'l\' AND v >= 1 THEN + IF l < 1 THEN + RETURN 0; + END IF; + IF (cell(\'l\', l-1) + cell(\'k\',l) > i.service_du) OR (cell(\'l\', l-1) = i.service_du) THEN + RETURN ose_formule.intervenant.service_du; + ELSE + RETURN cell(\'l\', l-1) + cell(\'k\',l); + END IF; +*/ + +-- UM + + WHEN c = \'l\' AND v >= 1 THEN + IF l < 1 THEN + RETURN 0; + END IF; + IF cell(\'k\',l) < 0 THEN + RETURN cell(\'l\', l-1) + cell(\'k\',l); + ELSE + IF (cell(\'l\', l-1) + cell(\'k\',l) > i.service_du) OR (cell(\'l\', l-1) = i.service_du) THEN + RETURN ose_formule.intervenant.service_du; + ELSE + RETURN cell(\'l\', l-1) + cell(\'k\',l); + END IF; + END IF; + + -- m = SI(OU(ESTVIDE(composante_affectation);L20=service_du);SI(H21<>"Oui";0;I21);SI(J21>0;SI(L20+K21<service_du;0;((L20+K21)-service_du)/J21);0)) + -- composante_affectation vide si vacataire +/* WHEN c = \'m\' AND v >= 1 THEN + -- OU(ESTVIDE(composante_affectation);L20=service_du) + IF i.type_intervenant_code = \'E\' OR cell(\'l\',l-1) = i.service_du THEN + -- SI(H21<>"Oui";0;I21); + IF NOT vh.service_statutaire THEN + RETURN 0; + ELSE + RETURN vh.heures; + END IF; + ELSE + -- SI(J21>0;SI(L20+K21<service_du;0;((L20+K21)-service_du)/J21);0) + IF cell(\'j\',l) > 0 THEN + IF cell(\'l\',l-1) + cell(\'k\',l) < ose_formule.intervenant.service_du THEN + RETURN 0; + ELSE + RETURN (cell(\'l\',l-1) + cell(\'k\',l) - ose_formule.intervenant.service_du) / cell(\'j\',l); + END IF; + ELSE + RETURN 0; + END IF; + END IF; +*/ +-- UM +-- m =SI(OU(ESTVIDE(composante_affectation);OU(L20=service_du;I21<0));SI(OU(H21<>"Oui";L21<service_du);0;I21);SI(J21>0;SI(L20+K21<service_du;0;((L20+K21)-service_du)/J21);0)) + WHEN c = \'m\' AND v >= 1 THEN + --SI(OU(ESTVIDE(composante_affectation);OU(L20=service_du;I21<0)) + IF i.type_intervenant_code = \'E\' OR cell(\'l\',l-1) = i.service_du OR ( cell(\'l\',l-1) = i.service_du and cell(\'k\',l)<0) THEN + -- SI(OU(H21<>"Oui";L21<service_du);0;I21); + IF NOT vh.service_statutaire OR (cell(\'l\',l) < i.service_du and cell(\'k\',l)<0) THEN + RETURN 0; + ELSE + RETURN vh.heures; + END IF; + ELSE + -- SI(J21>0;SI(L20+K21<service_du;0;((L20+K21)-service_du)/J21);0) + IF cell(\'j\',l) > 0 THEN + IF cell(\'l\',l-1) + cell(\'k\',l) < ose_formule.intervenant.service_du THEN + RETURN 0; + ELSE + RETURN (cell(\'l\',l-1) + cell(\'k\',l) - ose_formule.intervenant.service_du) / cell(\'j\',l); + END IF; + ELSE + RETURN 0; + END IF; + END IF; + + + + -- n = SI(ESTVIDE(C21);0;RECHERCHEH(C21;types_intervention;3;0)) + WHEN c = \'n\' AND v >= 1 THEN + RETURN vh.taux_service_compl * vh.ponderation_service_compl; + + + + -- o = SI(OU(service_realise<service_du;HC_autorisees<>"Oui");0;(M21+SI(H21<>"Oui";I21;0))*N21) + -- service_realise = MAX($L$21:$L$50) + -- service_du = ose_formule.intervenant.service_du + -- HC_autorisees = ose_formule.intervenant.depassement_service_du_sans_hc = false +/* WHEN c = \'o\' AND v >= 1 THEN + IF (calcFnc(\'max\',\'l\') < ose_formule.intervenant.service_du) OR ose_formule.intervenant.depassement_service_du_sans_hc THEN + RETURN 0; + ELSE + IF vh.service_statutaire THEN + RETURN cell(\'m\',l) * cell(\'n\',l); + ELSE + RETURN (cell(\'m\',l) + vh.heures) * cell(\'n\',l); + END IF; + END IF; +*/ +-- UM + WHEN c = \'o\' AND v >= 1 THEN + IF (calcFnc(\'last\',\'l\') < ose_formule.intervenant.service_du) OR ose_formule.intervenant.depassement_service_du_sans_hc THEN + RETURN 0; + ELSE + IF vh.service_statutaire THEN + RETURN cell(\'m\',l) * cell(\'n\',l); + ELSE + RETURN (cell(\'m\',l) + vh.heures) * cell(\'n\',l); + END IF; + END IF; + + + -- q =SI(ESTVIDE(C21);0;SI(H21="Non";0;SI(C21="TP";1;RECHERCHEH(C21;types_intervention;2;0)))) + -- q =SI(H21="Non";0;SI(C21="TP";1;RECHERCHEH(C21;types_intervention;2;0))) + WHEN c = \'q\' AND v >= 1 THEN + IF NOT vh.service_statutaire THEN + RETURN 0; + ELSE + -- SI(C21="TP";1;RECHERCHEH(C21;types_intervention;2;0)) + IF vh.type_intervention_code = \'TP\' THEN + RETURN 1; + ELSE + RETURN vh.taux_service_du; + END IF; + + END IF; + + + + -- r =I21*Q21 + WHEN c = \'r\' AND v >= 1 THEN + RETURN vh.heures * cell(\'q\',l); + + + + -- r136 =SOMME.SI(B$21:B$50;composante_affectation;R$21:R$50) + WHEN c = \'r136\' AND v >= 1 THEN + val := 0; + FOR i IN 1 .. ose_formule.volumes_horaires.length LOOP + IF ose_formule.volumes_horaires.items(i).structure_is_affectation THEN + val := val + cell(\'r\',i); + END IF; + END LOOP; + RETURN val; + + + + -- r137 =SOMME.SI(B$21:B$50;"<>"&composante_affectation;R$21:R$50) + WHEN c = \'r137\' AND v >= 1 THEN + val := 0; + FOR i IN 1 .. ose_formule.volumes_horaires.length LOOP + IF NOT ose_formule.volumes_horaires.items(i).structure_is_affectation THEN + val := val + cell(\'r\',i); + END IF; + END LOOP; + RETURN val; + + + + -- s =SI(H21="Non";O21;SI(B21=composante_affectation;SI($R$136=0;0;R21*$T$136);SI($R$137=0;0;R21*$T$137))) + WHEN c = \'s\' AND v >= 1 THEN + IF NOT vh.service_statutaire THEN + RETURN cell(\'o\', l); + ELSE + IF vh.structure_is_affectation THEN + IF cell(\'r136\') = 0 THEN + RETURN 0; + ELSE + RETURN cell(\'r\', l) * cell(\'t136\'); + END IF; + ELSE + IF cell(\'r137\') = 0 THEN + RETURN 0; + ELSE + RETURN cell(\'r\', l) * cell(\'t137\'); + END IF; + END IF; + END IF; + + + + -- s136 =SI(OU(HC=0;R136<service_du);0;SI(pour_les_autres_composantes=0;HC ;SI((HC_Budg-pour_les_autres_composantes)<(HC_Budg*(R136-service_du)/R132);HC_Budg*(R136-service_du)/R132;HC_Budg-pour_les_autres_composantes))) + -- s136 =SI(OU(HC=0;R136<service_du);0;SI(pour_les_autres_composantes=0;HC_Budg;SI((HC_Budg-pour_les_autres_composantes)<(HC_Budg*(R136-service_du)/R132);HC_Budg*(R136-service_du)/R132;HC_Budg-pour_les_autres_composantes))) + -- pour_les_autres_composantes = R137 + WHEN c = \'s136\' AND v >= 1 THEN + IF calcFnc(\'total\',\'o\') = 0 OR cell(\'r136\') < ose_formule.intervenant.service_du THEN + RETURN 0; + ELSE + -- SI(R137=0;HC;SI((HC_Budg-R137)<(HC_Budg*(R136-service_du)/R132);HC_Budg*(R136-service_du)/R132;HC_Budg-R137)) + IF cell(\'r137\') = 0 THEN + RETURN cell(\'hc_budg\'); + ELSE + -- SI((HC_Budg-R137)<(HC_Budg*(R136-service_du)/R132);HC_Budg*(R136-service_du)/R132;HC_Budg-R137) + IF (cell(\'hc_budg\')-cell(\'r137\'))<(cell(\'hc_budg\')*(cell(\'r136\')-ose_formule.intervenant.service_du)/calcFnc(\'total\',\'r\')) THEN + -- HC_Budg*(R136-service_du)/R132 + RETURN cell(\'hc_budg\')*(cell(\'r136\')-ose_formule.intervenant.service_du)/calcFnc(\'total\',\'r\'); + ELSE + -- HC_Budg-R137 + RETURN cell(\'hc_budg\')-cell(\'r137\'); + END IF; + END IF; + END IF; + + + + -- s137 =SI(R137=0;0;SI(HC=0;0;HC_Budg-S136)) + WHEN c = \'s137\' AND v >= 1 THEN + IF cell(\'r137\') = 0 THEN + RETURN 0; + ELSE + IF calcFnc(\'total\',\'o\') = 0 THEN + RETURN 0; + ELSE + RETURN cell(\'hc_budg\') - cell(\'s136\'); + END IF; + END IF; + + + + -- s138 =SOMME(S136:S137) + WHEN c = \'s138\' AND v >= 1 THEN + RETURN cell(\'s136\') + cell(\'s138\'); + + + + -- t136 =SI(R136=0;0;S136/R136) + WHEN c = \'t136\' AND v >= 1 THEN + IF cell(\'r136\') = 0 THEN + RETURN 0; + ELSE + RETURN cell(\'s136\') / cell(\'r136\'); + END IF; + + + + -- t137 =SI(R137=0;0;S137/R137) + WHEN c = \'t137\' AND v >= 1 THEN + IF cell(\'r137\') = 0 THEN + RETURN 0; + ELSE + RETURN cell(\'s137\') / cell(\'r137\'); + END IF; + + + + -- u = SI(OU(ESTVIDE($C21);$C21="Référentiel";ET(HC=0;H21="Non"));0;SI(H21="Non";O21*$D21;SI($M21>0;(($M21*$N21)+($I21-$M21)*J21)*$D21;$K21*$D21))) + -- u =SI(ESTVIDE(composante_affectation);0;SI(OU(ESTVIDE($C21);$C21="Référentiel";ET(HC=0;H21="Non"));0;SI(H21="Non";O21*$D21;SI($M21>0;(($M21*$N21)+($I21-$M21)*J21)*$D21;$K21*$D21)))) + WHEN c = \'u\' AND v >= 1 THEN + IF i.type_intervenant_code = \'E\' THEN + RETURN 0; + ELSE + -- OU(ESTVIDE($C21);$C21="Référentiel";ET(HC=0;H21="Non")) + IF vh.volume_horaire_ref_id IS NOT NULL OR (calcFnc(\'total\',\'o\')=0 AND NOT vh.service_statutaire) THEN + RETURN 0; + ELSE + -- SI(H21="Non";O21*$D21;SI($M21>0;(($M21*$N21)+($I21-$M21)*J21)*$D21;$K21*$D21)) + IF NOT vh.service_statutaire THEN + RETURN cell(\'o\',l) * vh.taux_fi; + ELSE + -- SI($M21>0;(($M21*$N21)+($I21-$M21)*J21)*$D21;$K21*$D21) + IF cell(\'m\',l) > 0 THEN + -- (($M21*$N21)+($I21-$M21)*J21)*$D21 + RETURN ((cell(\'m\',l)*cell(\'n\',l))+(vh.heures-cell(\'m\',l))*cell(\'j\',l))*vh.taux_fi; + ELSE + -- $K21*$D21 + RETURN cell(\'k\',l) * vh.taux_fi; + END IF; + END IF; + END IF; + END IF; + + + + -- v =SI(ESTVIDE(composante_affectation);0;SI(OU(ESTVIDE($C21);$C21="Référentiel";ET(HC=0;H21="Non"));0;SI(H21="Non";O21*$E21;SI($M21>0;(($M21*$N21)+($I21-$M21)*K21)*$E21;$K21*$E21)))) + --UM v =SI(ESTVIDE(composante_affectation);0;SI(OU(ESTVIDE($C21);$C21="Référentiel";ET(HC=0;H21="Non"));0;SI(H21="Non";O21*$E21;SI($M21>0;(($M21*$N21)+($I21-$M21)*J21)*$E21;$K21*$E21)))) + -- HC = calcFnc(\'total\',\'o\') + -- H21="Non" = NOT vh.service_statutaire + -- P21 = O21!! + WHEN c = \'v\' AND v >= 1 THEN + IF i.type_intervenant_code = \'E\' THEN + RETURN 0; + ELSE + -- OU(ESTVIDE($C21);$C21="Référentiel";ET(HC=0;H21="Non")) + IF vh.volume_horaire_ref_id IS NOT NULL OR (calcFnc(\'total\',\'o\')=0 AND NOT vh.service_statutaire) THEN + RETURN 0; + ELSE + -- SI(H21="Non";P21;SI($M21>0;(($M21*$N21)+($I21-$M21)*K21)*$E21;$K21*$E21)) + IF NOT vh.service_statutaire THEN + RETURN cell(\'o\',l) * vh.taux_fa; + ELSE + -- SI($M21>0;(($M21*$N21)+($I21-$M21)*K21)*$E21;$K21*$E21) + IF cell(\'m\',l) > 0 THEN + -- (($M21*$N21)+($I21-$M21)*J21)*$E21 + RETURN ((cell(\'m\',l)*cell(\'n\',l))+(vh.heures-cell(\'m\',l))*cell(\'j\',l))*vh.taux_fa; + ELSE + -- $K21*$E21 + RETURN cell(\'k\',l) * vh.taux_fa; + END IF; + END IF; + END IF; + END IF; + + + + -- w =SI(ESTVIDE(composante_affectation);0;SI(OU(ESTVIDE($C21);$C21="Référentiel";ET(HC=0;H21="Non"));0;SI(H21="Non";O21*$F21;SI($M21>0;(($M21*$N21)+($I21-$M21)*L21)*$F21;$K21*$F21)))) + --UM w =SI(ESTVIDE(composante_affectation);0;SI(OU(ESTVIDE($C21);$C21="Référentiel";ET(HC=0;H21="Non"));0;SI(H21="Non";O21*$F21;SI($M21>0;(($M21*$N21)+($I21-$M21)*J21)*$F21;$K21*$F21)))) + WHEN c = \'w\' AND v >= 1 THEN + IF i.type_intervenant_code = \'E\' THEN + RETURN 0; + ELSE + -- OU(ESTVIDE($C21);$C21="Référentiel";ET(HC=0;H21="Non")) + IF vh.volume_horaire_ref_id IS NOT NULL OR (calcFnc(\'total\',\'o\')=0 AND NOT vh.service_statutaire) THEN + RETURN 0; + ELSE + --SI(H21="Non";Q21;SI($M21>0;(($M21*$N21)+($I21-$M21)*L21)*$F21;$K21*$F21)) + IF NOT vh.service_statutaire THEN + RETURN cell(\'o\',l) * vh.taux_fc; + ELSE + -- SI($M21>0;(($M21*$N21)+($I21-$M21)*L21)*$F21;$K21*$F21) + IF cell(\'m\',l) > 0 THEN + RETURN ((cell(\'m\',l)*cell(\'n\',l))+(vh.heures-cell(\'m\',l))*cell(\'j\',l))*vh.taux_fc; + ELSE + -- $K21*$F21 + RETURN cell(\'k\',l) * vh.taux_fc; + END IF; + END IF; + END IF; + END IF; + + + -- x =SI(ESTVIDE(composante_affectation);0;SI(OU(ESTVIDE($C21);NON(C21="Référentiel");ET(HC=0;H21="Non"));0;SI(H21="Non";O21;SI($M21>0;(($M21*$N21)+($I21-$M21)*J21);$K21)))) + WHEN c = \'x\' AND v >= 1 THEN + IF i.type_intervenant_code = \'E\' THEN + RETURN 0; + ELSE + -- OU(NON(C21="Référentiel");ET(HC=0;H21="Non")) + IF vh.volume_horaire_ref_id IS NULL OR (calcFnc(\'total\', \'o\')=0 AND NOT vh.service_statutaire) THEN + RETURN 0; + ELSE + -- SI(H21="Non";O21;SI($M21>0;(($M21*$N21)+($I21-$M21)*J21);$K21)) + IF NOT vh.service_statutaire THEN + RETURN cell(\'o\', l); + ELSE + -- SI($M21>0;(($M21*$N21)+($I21-$M21)*J21);$K21) + IF cell(\'m\',l) > 0 THEN + RETURN (cell(\'m\',l)*cell(\'n\',l))+(vh.heures-cell(\'m\',l))*cell(\'j\',l); + ELSE + RETURN cell(\'k\',l); + END IF; + END IF; + END IF; + END IF; + + + + -- y =SI($C21="Référentiel";0;SI(ESTVIDE(composante_affectation);O21;$S21)) + WHEN c = \'y\' AND v >= 1 THEN + IF vh.volume_horaire_ref_id IS NOT NULL THEN + RETURN 0; + ELSE + IF i.type_intervenant_code = \'E\' THEN + RETURN cell(\'o\',l); + ELSE + RETURN cell(\'s\',l); + END IF; + END IF; + + + + -- z =0 + WHEN c = \'z\' AND v >= 1 THEN + RETURN 0; + + + + -- aa =0 + WHEN c = \'aa\' AND v >= 1 THEN + RETURN 0; + + + + -- ab =0 + WHEN c = \'ab\' AND v >= 1 THEN + RETURN 0; + + + + -- ac =SI($C21="Référentiel";SI(ESTVIDE(composante_affectation);O21;$S21);0) + WHEN c = \'ac\' AND v >= 1 THEN + IF vh.volume_horaire_ref_id IS NOT NULL THEN + IF i.type_intervenant_code = \'E\' THEN + RETURN cell(\'o\',l); + ELSE + RETURN cell(\'s\',l); + END IF; + ELSE + RETURN 0; + END IF; + + + + + + -- hc_budg =SI(ESTVIDE(composante_affectation);0;HC-SOMME.SI(H$21:H$131;"Non";O$21:O$131)) + -- (composante_affectation vide si vacataire) + WHEN c = \'hc_budg_cell\' AND v >= 1 THEN + IF NOT vh.service_statutaire THEN + RETURN 0; + ELSE + RETURN cell(\'o\', l); + END IF; + + WHEN c = \'hc_budg\' AND v >= 1 THEN + IF i.type_intervenant_code = \'E\' THEN + RETURN 0; + ELSE + RETURN calcFnc(\'total\', \'hc_budg_cell\'); + END IF; + + + + ELSE + raise_application_error( -20001, \'La colonne c=\' || c || \', l=\' || l || \' n\'\'existe pas!\'); + END CASE; END; + + + + PROCEDURE CALCUL_RESULTAT IS + BEGIN + feuille.delete; + + -- transmission des résultats aux volumes horaires et volumes horaires référentiel + FOR l IN 1 .. ose_formule.volumes_horaires.length LOOP + ose_formule.volumes_horaires.items(l).service_fi := mainCell(\'Service FI\', \'u\',l); + ose_formule.volumes_horaires.items(l).service_fa := mainCell(\'Service FA\', \'v\',l); + ose_formule.volumes_horaires.items(l).service_fc := mainCell(\'Service FC\', \'w\',l); + ose_formule.volumes_horaires.items(l).service_referentiel := mainCell(\'Service référentiel\', \'x\',l); + ose_formule.volumes_horaires.items(l).heures_compl_fi := mainCell(\'Heures compl. FI\', \'y\',l); + ose_formule.volumes_horaires.items(l).heures_compl_fa := mainCell(\'Heures compl. FA\', \'z\',l); + ose_formule.volumes_horaires.items(l).heures_compl_fc := mainCell(\'Heures compl. FC\', \'aa\',l); + ose_formule.volumes_horaires.items(l).heures_compl_fc_majorees := mainCell(\'Heures compl. FC Maj.\', \'ab\',l); + ose_formule.volumes_horaires.items(l).heures_compl_referentiel := mainCell(\'Heures compl. référentiel\', \'ac\',l); + END LOOP; + END; + + + + FUNCTION INTERVENANT_QUERY RETURN CLOB IS + BEGIN + RETURN \' + SELECT + fi.*, + NULL param_1, + NULL param_2, + NULL param_3, + NULL param_4, + NULL param_5 + FROM + v_formule_intervenant fi + \'; + END; + + + + FUNCTION VOLUME_HORAIRE_QUERY RETURN CLOB IS + BEGIN + RETURN \' + SELECT + fvh.*, + NULL param_1, + NULL param_2, + NULL param_3, + NULL param_4, + NULL param_5 + FROM + v_formule_volume_horaire fvh + ORDER BY + ordre\'; + END; + +END FORMULE_MONTPELLIER;', + ), + 'FORMULE_NANTERRE' => + array ( + 'name' => 'FORMULE_NANTERRE', + 'definition' => 'CREATE OR REPLACE PACKAGE FORMULE_NANTERRE AS + + PROCEDURE CALCUL_RESULTAT; + + FUNCTION calcCell( c VARCHAR2, l NUMERIC ) RETURN FLOAT; + + FUNCTION INTERVENANT_QUERY RETURN CLOB; + FUNCTION VOLUME_HORAIRE_QUERY RETURN CLOB; + +END FORMULE_NANTERRE;', + 'body' => 'CREATE OR REPLACE PACKAGE BODY FORMULE_NANTERRE AS + decalageLigne NUMERIC DEFAULT 21; + + + /* Stockage des valeurs intermédiaires */ + TYPE t_cell IS RECORD ( + valeur FLOAT, + enCalcul BOOLEAN DEFAULT FALSE + ); + TYPE t_cells IS TABLE OF t_cell INDEX BY PLS_INTEGER; + TYPE t_coll IS RECORD ( + cells t_cells + ); + TYPE t_colls IS TABLE OF t_coll INDEX BY VARCHAR2(50); + feuille t_colls; + + debugLine NUMERIC; + + + PROCEDURE dbg( val CLOB ) IS + BEGIN + ose_formule.volumes_horaires.items(debugLine).debug_info := + ose_formule.volumes_horaires.items(debugLine).debug_info || val; + END; + + + PROCEDURE dbgi( val CLOB ) IS + BEGIN + ose_formule.intervenant.debug_info := ose_formule.intervenant.debug_info || val; + END; + + PROCEDURE dbgDump( val CLOB ) IS + BEGIN + dbg(\'<div class="dbg-dump">\' || val || \'</div>\'); + END; + + PROCEDURE dbgCell( c VARCHAR2, l NUMERIC, val FLOAT ) IS + ligne NUMERIC; + BEGIN + ligne := l; + IF l <> 0 THEN + ligne := ligne + decalageLigne; + END IF; + + dbgi( \'[cell|\' || c || \'|\' || ligne || \'|\' || val ); + END; + + PROCEDURE dbgCalc( fncName VARCHAR2, c VARCHAR2, res FLOAT ) IS + BEGIN + dbgi( \'[calc|\' || fncName || \'|\' || c || \'|\' || res ); + END; + + FUNCTION cell( c VARCHAR2, l NUMERIC DEFAULT 0 ) RETURN FLOAT IS + val FLOAT; + BEGIN + IF feuille.exists(c) THEN + IF feuille(c).cells.exists(l) THEN + IF feuille(c).cells(l).enCalcul THEN + raise_application_error( -20001, \'Dépendance cyclique : la cellule [\' || c || \';\' || l || \'] est déjà en cours de calcul\'); + END IF; + RETURN feuille(c).cells(l).valeur; + END IF; + END IF; + + feuille(c).cells(l).enCalcul := true; + val := calcCell( c, l ); + IF ose_formule.debug_actif THEN + dbgCell( c, l, val ); + END IF; + feuille(c).cells(l).valeur := val; + feuille(c).cells(l).enCalcul := false; + + RETURN val; + END; + + FUNCTION mainCell( libelle VARCHAR2, c VARCHAR2, l NUMERIC ) RETURN FLOAT IS + val FLOAT; + BEGIN + debugLine := l; + val := cell(c,l); + + RETURN val; + END; + + FUNCTION calcFnc( fncName VARCHAR2, c VARCHAR2 ) RETURN FLOAT IS + val FLOAT; + cellRes FLOAT; + BEGIN + IF feuille.exists(\'__\' || fncName || \'__\' || c || \'__\') THEN + IF feuille(\'__\' || fncName || \'__\' || c || \'__\').cells.exists(1) THEN + RETURN feuille(\'__\' || fncName || \'__\' || c || \'__\').cells(1).valeur; + END IF; + END IF; + CASE + -- Liste des fonctions supportées + + WHEN fncName = \'total\' THEN + val := 0; + FOR l IN 1 .. ose_formule.volumes_horaires.length LOOP + val := val + COALESCE(cell(c, l),0); + END LOOP; + + WHEN fncName = \'max\' THEN + val := NULL; + FOR l IN 1 .. ose_formule.volumes_horaires.length LOOP + cellRes := cell(c,l); + IF val IS NULL OR val < cellRes THEN + val := cellRes; + END IF; + END LOOP; + + -- fin de la liste des fonctions supportées + ELSE + raise_application_error( -20001, \'La formule "\' || fncName || \'" n\'\'existe pas!\'); + END CASE; + IF ose_formule.debug_actif THEN + dbgCalc(fncName, c, val ); + END IF; + feuille(\'__\' || fncName || \'__\' || c || \'__\').cells(1).valeur := val; + + RETURN val; + END; + + + FUNCTION calcVersion RETURN NUMERIC IS + BEGIN + RETURN 1; + END; + + + + FUNCTION notInStructs( v VARCHAR2 DEFAULT NULL ) RETURN BOOLEAN IS + BEGIN + RETURN COALESCE(v,\' \') NOT IN (\'KE8\',\'UP10\'); + END; + + + + FUNCTION calcCell( c VARCHAR2, l NUMERIC ) RETURN FLOAT IS + vh ose_formule.t_volume_horaire; + i ose_formule.t_intervenant; + v NUMERIC; + val FLOAT; + BEGIN + v := calcVersion; + + i := ose_formule.intervenant; + IF l > 0 THEN + vh := ose_formule.volumes_horaires.items(l); + END IF; + CASE + + + + -- service_realise=SOMME(BJ22:BM51) + WHEN c = \'service_realise\' AND v >= 1 THEN + RETURN calcFnc(\'total\',\'BJ\') + calcFnc(\'total\',\'BK\') + calcFnc(\'total\',\'BL\') + calcFnc(\'total\',\'BM\'); + + + + -- HC=SOMME(BN22:BR51) + WHEN c = \'HC\' AND v >= 1 THEN + RETURN calcFnc(\'total\',\'BN\') + calcFnc(\'total\',\'BO\') + calcFnc(\'total\',\'BP\') + calcFnc(\'total\',\'BQ\') + calcFnc(\'total\',\'BR\'); + + + + -- I=SI(ESTVIDE(C22);0;RECHERCHEH(SI(ET(C22="TP";TP_vaut_TD="Oui");"TD";C22);types_intervention;2;0)) + WHEN c = \'I\' AND v >= 1 THEN + -- ON ne retourne que le taux en service dû... ? ? + RETURN vh.taux_service_du; + + + + -- J=H22*I22 + WHEN c = \'J\' AND v >= 1 THEN + RETURN vh.heures * cell(\'I\', l); + + + + -- L=SI($H22="";0;SI(ET($C22<>"Référentiel";$B22=composante_affectation;$B22<>"KE8";$B22<>"UP10");$J22*$D22;0)) + WHEN c = \'L\' AND v >= 1 THEN + -- ET($C22<>"Référentiel";$B22=composante_affectation;$B22<>"KE8";$B22<>"UP10") + IF vh.volume_horaire_ref_id IS NULL AND vh.structure_is_affectation AND notInStructs(vh.param_1) THEN + RETURN cell(\'J\',l) * vh.taux_fi; + ELSE + RETURN 0; + END IF; + + + + -- M=SI(L$52>0;L22/L$52;0) + WHEN c = \'M\' AND v >= 1 THEN + IF cell(\'L52\') > 0 THEN + RETURN cell(\'L\', l) / cell(\'L52\'); + ELSE + RETURN 0; + END IF; + + + + -- N=L$53*M22 + WHEN c = \'N\' AND v >= 1 THEN + RETURN cell(\'L53\') * cell(\'M\', l); + + + + -- O=SI(ET(L$54=0;HC_autorisees="Oui");L22-N22;0) + WHEN c = \'O\' AND v >= 1 THEN + IF cell(\'L54\') = 0 AND NOT i.depassement_service_du_sans_hc THEN + RETURN cell(\'L\', l) - cell(\'N\', l); + ELSE + RETURN 0; + END IF; + + + + -- Q=SI($H22="";0;SI(ET($C22="Référentiel";$G22="Oui";$B22=composante_affectation;$B22<>"KE8";$B22<>"UP10");$J22;0)) + WHEN c = \'Q\' AND v >= 1 THEN + -- ET($C22="Référentiel";$G22="Oui";$B22=composante_affectation;$B22<>"KE8";$B22<>"UP10") + IF vh.volume_horaire_ref_id IS NOT NULL AND vh.service_statutaire AND vh.structure_is_affectation AND notInStructs(vh.param_1) THEN + RETURN cell(\'J\',l); + ELSE + RETURN 0; + END IF; + + + + -- R=SI(Q$52>0;Q22/Q$52;0) + WHEN c = \'R\' AND v >= 1 THEN + IF cell(\'Q52\') > 0 THEN + RETURN cell(\'Q\', l) / cell(\'Q52\'); + ELSE + RETURN 0; + END IF; + + + + -- S=Q$53*R22 + WHEN c = \'S\' AND v >= 1 THEN + RETURN cell(\'Q53\') * cell(\'R\', l); + + + + -- T=SI(ET(Q$54=0;HC_autorisees="Oui");Q22-S22;0) + WHEN c = \'T\' AND v >= 1 THEN + IF cell(\'Q54\') = 0 AND NOT i.depassement_service_du_sans_hc THEN + RETURN cell(\'Q\', l) - cell(\'S\', l); + ELSE + RETURN 0; + END IF; + + + + -- V=SI($H22="";0;SI(ET($C22<>"Référentiel";$B22<>composante_affectation;$B22<>"KE8";$B22<>"UP10");$J22*$D22;0)) + WHEN c = \'V\' AND v >= 1 THEN + --ET($C22<>"Référentiel";$B22<>composante_affectation;$B22<>"KE8";$B22<>"UP10");$J22*$D22;0) + IF vh.volume_horaire_ref_id IS NULL AND NOT vh.structure_is_affectation AND notInStructs(vh.param_1) THEN + RETURN cell(\'J\',l) * vh.taux_fi; + ELSE + RETURN 0; + END IF; + + + + -- W=SI(V$52>0;V22/V$52;0) + WHEN c = \'W\' AND v >= 1 THEN + IF cell(\'V52\') > 0 THEN + RETURN cell(\'V\', l) / cell(\'V52\'); + ELSE + RETURN 0; + END IF; + + + + -- X=V$53*W22 + WHEN c = \'X\' AND v >= 1 THEN + RETURN cell(\'V53\') * cell(\'W\', l); + + + + -- Y=SI(ET(V$54=0;HC_autorisees="Oui");V22-X22;0) + WHEN c = \'Y\' AND v >= 1 THEN + IF cell(\'V54\') = 0 AND NOT i.depassement_service_du_sans_hc THEN + RETURN cell(\'V\', l) - cell(\'X\', l); + ELSE + RETURN 0; + END IF; + + + + -- AA=SI($H22="";0;SI(ET($C22="Référentiel";$G22="Oui";$B22<>composante_affectation;$B22<>"KE8";$B22<>"UP10");$J22;0)) + WHEN c = \'AA\' AND v >= 1 THEN + --ET($C22="Référentiel";$G22="Oui";$B22<>composante_affectation;$B22<>"KE8";$B22<>"UP10") + IF vh.volume_horaire_ref_id IS NOT NULL AND vh.service_statutaire AND NOT vh.structure_is_affectation AND notInStructs(vh.param_1) THEN + RETURN cell(\'J\',l); + ELSE + RETURN 0; + END IF; + + + + -- AB=SI(AA$52>0;AA22/AA$52;0) + WHEN c = \'AB\' AND v >= 1 THEN + IF cell(\'AA52\') > 0 THEN + RETURN cell(\'AA\', l) / cell(\'AA52\'); + ELSE + RETURN 0; + END IF; + + + + -- AC=AA$53*AB22 + WHEN c = \'AC\' AND v >= 1 THEN + RETURN cell(\'AA53\') * cell(\'AB\', l); + + + + -- AD=SI(ET(AA$54=0;HC_autorisees="Oui");AA22-AC22;0) + WHEN c = \'AD\' AND v >= 1 THEN + IF cell(\'AA54\') = 0 AND NOT i.depassement_service_du_sans_hc THEN + RETURN cell(\'AA\', l) - cell(\'AC\', l); + ELSE + RETURN 0; + END IF; + + + + -- AF=SI($H22="";0;SI(OU($B22="KE8";$B22="UP10");SI($C22="Référentiel";SI($G22="Oui";$J22;0);$J22*$D22);0)) + WHEN c = \'AF\' AND v >= 1 THEN + IF vh.param_1 IN (\'KE8\',\'UP10\') THEN + --SI($C22="Référentiel";SI($G22="Oui";$J22;0);$J22*$D22) + IF vh.volume_horaire_ref_id IS NOT NULL THEN + --SI($G22="Oui";$J22;0) + IF vh.service_statutaire THEN + RETURN cell(\'J\', l); + ELSE + RETURN 0; + END IF; + ELSE + RETURN cell(\'J\', l) * vh.taux_fi; + END IF; + ELSE + RETURN 0; + END IF; + + + + -- AG=SI(AF$52>0;AF22/AF$52;0) + WHEN c = \'AG\' AND v >= 1 THEN + IF cell(\'AF52\') > 0 THEN + RETURN cell(\'AF\', l) / cell(\'AF52\'); + ELSE + RETURN 0; + END IF; + + + + -- AH=AF$53*AG22 + WHEN c = \'AH\' AND v >= 1 THEN + RETURN cell(\'AF53\') * cell(\'AG\', l); + + + + -- AI=SI(ET(AF$54=0;HC_autorisees="Oui");AF22-AH22;0) + WHEN c = \'AI\' AND v >= 1 THEN + IF cell(\'AF54\') = 0 AND NOT i.depassement_service_du_sans_hc THEN + RETURN cell(\'AF\', l) - cell(\'AH\', l); + ELSE + RETURN 0; + END IF; + + + + -- AK=SI($H22="";0;SI(ET($C22<>"Référentiel";$B22=composante_affectation);$J22*$E22;0)) + WHEN c = \'AK\' AND v >= 1 THEN + IF vh.volume_horaire_ref_id IS NULL AND vh.structure_is_affectation THEN + RETURN cell(\'J\', l) * vh.taux_fa; + ELSE + RETURN 0; + END IF; + + + + -- AL=SI(AK$52>0;AK22/AK$52;0) + WHEN c = \'AL\' AND v >= 1 THEN + IF cell(\'AK52\') > 0 THEN + RETURN cell(\'AK\', l) / cell(\'AK52\'); + ELSE + RETURN 0; + END IF; + + + + -- AM=AK$53*AL22 + WHEN c = \'AM\' AND v >= 1 THEN + RETURN cell(\'AK53\') * cell(\'AL\', l); + + + + -- AN=SI(ET(AK$54=0;HC_autorisees="Oui");AK22-AM22;0) + WHEN c = \'AN\' AND v >= 1 THEN + IF cell(\'AK54\') = 0 AND NOT i.depassement_service_du_sans_hc THEN + RETURN cell(\'AK\', l) - cell(\'AM\', l); + ELSE + RETURN 0; + END IF; + + + + -- AP=SI($H22="";0;SI(ET($C22<>"Référentiel";$B22<>composante_affectation);$J22*$E22;0)) + WHEN c = \'AP\' AND v >= 1 THEN + IF vh.volume_horaire_ref_id IS NULL AND NOT vh.structure_is_affectation THEN + RETURN cell(\'J\', l) * vh.taux_fa; + ELSE + RETURN 0; + END IF; + + + + -- AQ=SI(AP$52>0;AP22/AP$52;0) + WHEN c = \'AQ\' AND v >= 1 THEN + IF cell(\'AP52\') > 0 THEN + RETURN cell(\'AP\', l) / cell(\'AP52\'); + ELSE + RETURN 0; + END IF; + + + + -- AR=AP$53*AQ22 + WHEN c = \'AR\' AND v >= 1 THEN + RETURN cell(\'AP53\') * cell(\'AQ\', l); + + + + -- AS=SI(ET(AP$54=0;HC_autorisees="Oui");AP22-AR22;0) + WHEN c = \'AS\' AND v >= 1 THEN + IF cell(\'AP54\') = 0 AND NOT i.depassement_service_du_sans_hc THEN + RETURN cell(\'AP\', l) - cell(\'AR\', l); + ELSE + RETURN 0; + END IF; + + + + -- AU=SI($H22="";0;SI(ET($C22<>"Référentiel";$B22=composante_affectation);$J22*$F22;0)) + WHEN c = \'AU\' AND v >= 1 THEN + IF vh.volume_horaire_ref_id IS NULL AND vh.structure_is_affectation THEN + RETURN cell(\'J\', l) * vh.taux_fc; + ELSE + RETURN 0; + END IF; + + + + -- AV=SI(AU$52>0;AU22/AU$52;0) + WHEN c = \'AV\' AND v >= 1 THEN + IF cell(\'AU52\') > 0 THEN + RETURN cell(\'AU\', l) / cell(\'AU52\'); + ELSE + RETURN 0; + END IF; + + + + -- AW=AU$53*AV22 + WHEN c = \'AW\' AND v >= 1 THEN + RETURN cell(\'AU53\') * cell(\'AV\', l); + + + + -- AX=SI(ET(AU$54=0;HC_autorisees="Oui");AU22-AW22;0) + WHEN c = \'AX\' AND v >= 1 THEN + IF cell(\'AU54\') = 0 AND NOT i.depassement_service_du_sans_hc THEN + RETURN cell(\'AU\', l) - cell(\'AW\', l); + ELSE + RETURN 0; + END IF; + + + + -- AZ=SI($H22="";0;SI(ET($C22<>"Référentiel";$B22<>composante_affectation);$J22*$F22;0)) + WHEN c = \'AZ\' AND v >= 1 THEN + IF vh.volume_horaire_ref_id IS NULL AND NOT vh.structure_is_affectation THEN + RETURN cell(\'J\', l) * vh.taux_fc; + ELSE + RETURN 0; + END IF; + + + + -- BA=SI(AZ$52>0;AZ22/AZ$52;0) + WHEN c = \'BA\' AND v >= 1 THEN + IF cell(\'AZ52\') > 0 THEN + RETURN cell(\'AZ\', l) / cell(\'AZ52\'); + ELSE + RETURN 0; + END IF; + + + + -- BB=AZ$53*BA22 + WHEN c = \'BB\' AND v >= 1 THEN + RETURN cell(\'AZ53\') * cell(\'BA\', l); + + + + -- BC=SI(ET(AZ$54=0;HC_autorisees="Oui");AZ22-BB22;0) + WHEN c = \'BC\' AND v >= 1 THEN + IF cell(\'AZ54\') = 0 AND NOT i.depassement_service_du_sans_hc THEN + RETURN cell(\'AZ\', l) - cell(\'BB\', l); + ELSE + RETURN 0; + END IF; + + + + -- BE=J22-SOMME(L22;Q22;V22;AA22;AF22;AK22;AP22;AU22;AZ22) + WHEN c = \'BE\' AND v >= 1 THEN + RETURN cell(\'J\', l) - (cell(\'L\', l) + cell(\'Q\', l) + cell(\'V\', l) + cell(\'AA\', l) + cell(\'AF\', l) + cell(\'AK\', l) + cell(\'AP\', l) + cell(\'AU\', l) + cell(\'AZ\', l)); + + + + -- BF=SI(BE$52>0;BE22/BE$52;0) + WHEN c = \'BF\' AND v >= 1 THEN + IF cell(\'BE52\') > 0 THEN + RETURN cell(\'BE\', l) / cell(\'BE52\'); + ELSE + RETURN 0; + END IF; + + + + -- BG=BE$53*BF22 + WHEN c = \'BG\' AND v >= 1 THEN + RETURN cell(\'BE53\') * cell(\'BF\', l); + + + + -- BH=SI(ET(BE$54=0;HC_autorisees="Oui");BE22-BG22;0) + WHEN c = \'BH\' AND v >= 1 THEN + IF cell(\'BE54\') = 0 AND NOT i.depassement_service_du_sans_hc THEN + RETURN cell(\'BE\', l) - cell(\'BG\', l); + ELSE + RETURN 0; + END IF; + + + + -- BJ=N22+X22+AH22 + WHEN c = \'BJ\' AND v >= 1 THEN + RETURN cell(\'N\', l) + cell(\'X\', l) + cell(\'AH\', l); + + + + -- BK=AM22+AR22 + WHEN c = \'BK\' AND v >= 1 THEN + RETURN cell(\'AM\', l) + cell(\'AR\', l); + + + + -- BL=AW22+BB22 + WHEN c = \'BL\' AND v >= 1 THEN + RETURN cell(\'AW\', l) + cell(\'BB\', l); + + + + -- BM=S22+AC22+BG22 + WHEN c = \'BM\' AND v >= 1 THEN + RETURN cell(\'S\', l) + cell(\'AC\', l) + cell(\'BG\', l); + + + + -- BN=O22+Y22+AI22 + WHEN c = \'BN\' AND v >= 1 THEN + RETURN cell(\'O\', l) + cell(\'Y\', l) + cell(\'AI\', l); + + + + -- BO=AN22+AS22 + WHEN c = \'BO\' AND v >= 1 THEN + RETURN cell(\'AN\', l) + cell(\'AS\', l); + + + + -- BP=AX22+BC22 + WHEN c = \'BP\' AND v >= 1 THEN + RETURN cell(\'AX\', l) + cell(\'BC\', l); + + + + -- BQ=0 + WHEN c = \'BQ\' AND v >= 1 THEN + RETURN 0; + + + + -- BR=T22+AD22+BH22 + WHEN c = \'BR\' AND v >= 1 THEN + RETURN cell(\'T\', l) + cell(\'AD\', l) + cell(\'BH\', l); + + + + -- L52=SOMME(L22:L51) + WHEN c = \'L52\' AND v >= 1 THEN + RETURN calcFnc(\'total\',\'L\'); + + + + -- L53=MIN(L52;service_du) + WHEN c = \'L53\' AND v >= 1 THEN + RETURN LEAST(cell(\'L52\'), i.service_du); + + + + -- L54=service_du-L53 + WHEN c = \'L54\' AND v >= 1 THEN + RETURN i.service_du - cell(\'L53\'); + + + + -- Q52=SOMME(Q22:Q51) + WHEN c = \'Q52\' AND v >= 1 THEN + RETURN calcFnc(\'total\',\'Q\'); + + + + -- Q53=MIN(Q52;L54) + WHEN c = \'Q53\' AND v >= 1 THEN + RETURN LEAST(cell(\'Q52\'), cell(\'L54\')); + + + + -- Q54=L54-Q53 + WHEN c = \'Q54\' AND v >= 1 THEN + RETURN cell(\'L54\') - cell(\'Q53\'); + + + + -- V52=SOMME(V22:V51) + WHEN c = \'V52\' AND v >= 1 THEN + RETURN calcFnc(\'total\',\'V\'); + + + + -- V53=MIN(V52;Q54) + WHEN c = \'V53\' AND v >= 1 THEN + RETURN LEAST(cell(\'V52\'), cell(\'Q54\')); + + + + -- V54=Q54-V53 + WHEN c = \'V54\' AND v >= 1 THEN + RETURN cell(\'Q54\') - cell(\'V53\'); + + + + -- AA52=SOMME(AA22:AA51) + WHEN c = \'AA52\' AND v >= 1 THEN + RETURN calcFnc(\'total\',\'AA\'); + + + + -- AA53=MIN(AA52;V54) + WHEN c = \'AA53\' AND v >= 1 THEN + RETURN LEAST(cell(\'AA52\'), cell(\'V54\')); + + + + -- AA54=V54-AA53 + WHEN c = \'AA54\' AND v >= 1 THEN + RETURN cell(\'V54\') - cell(\'AA53\'); + + + + -- AF52=SOMME(AF22:AF51) + WHEN c = \'AF52\' AND v >= 1 THEN + RETURN calcFnc(\'total\',\'AF\'); + + + + -- AF53=MIN(AF52;AA54) + WHEN c = \'AF53\' AND v >= 1 THEN + RETURN LEAST(cell(\'AF52\'), cell(\'AA54\')); + + + + -- AF54=AA54-AF53 + WHEN c = \'AF54\' AND v >= 1 THEN + RETURN cell(\'AA54\') - cell(\'AF53\'); + + + + -- AK52=SOMME(AK22:AK51) + WHEN c = \'AK52\' AND v >= 1 THEN + RETURN calcFnc(\'total\',\'AK\'); + + + + -- AK53=MIN(AK52;AF54) + WHEN c = \'AK53\' AND v >= 1 THEN + RETURN LEAST(cell(\'AK52\'), cell(\'AF54\')); + + + + -- AK54=AF54-AK53 + WHEN c = \'AK54\' AND v >= 1 THEN + RETURN cell(\'AF54\') - cell(\'AK53\'); + + + + -- AP52=SOMME(AP22:AP51) + WHEN c = \'AP52\' AND v >= 1 THEN + RETURN calcFnc(\'total\',\'AP\'); + + + + -- AP53=MIN(AP52;AK54) + WHEN c = \'AP53\' AND v >= 1 THEN + RETURN LEAST(cell(\'AP52\'), cell(\'AK54\')); + + + + -- AP54=AK54-AP53 + WHEN c = \'AP54\' AND v >= 1 THEN + RETURN cell(\'AK54\') - cell(\'AP53\'); + + + + -- AU52=SOMME(AU22:AU51) + WHEN c = \'AU52\' AND v >= 1 THEN + RETURN calcFnc(\'total\',\'AU\'); + + + + -- AU53=MIN(AU52;AP54) + WHEN c = \'AU53\' AND v >= 1 THEN + RETURN LEAST(cell(\'AU52\'), cell(\'AP54\')); + + + + -- AU54=AP54-AU53 + WHEN c = \'AU54\' AND v >= 1 THEN + RETURN cell(\'AP54\') - cell(\'AU53\'); + + + + -- AZ52=SOMME(AZ22:AZ51) + WHEN c = \'AZ52\' AND v >= 1 THEN + RETURN calcFnc(\'total\',\'AZ\'); + + + + -- AZ53=MIN(AZ52;AU54) + WHEN c = \'AZ53\' AND v >= 1 THEN + RETURN LEAST(cell(\'AZ52\'), cell(\'AU54\')); + + + + -- AZ54=AU54-AZ53 + WHEN c = \'AZ54\' AND v >= 1 THEN + RETURN cell(\'AU54\') - cell(\'AZ53\'); + + + + -- BE52=SOMME(BE22:BE51) + WHEN c = \'BE52\' AND v >= 1 THEN + RETURN calcFnc(\'total\',\'BE\'); + + + + -- BE53=MIN(BE52;AZ54) + WHEN c = \'BE53\' AND v >= 1 THEN + RETURN LEAST(cell(\'BE52\'), cell(\'AZ54\')); + + + + -- BE54=AZ54-BE53 + WHEN c = \'BE54\' AND v >= 1 THEN + RETURN cell(\'AZ54\') - cell(\'BE53\'); + + + + ELSE + raise_application_error( -20001, \'La colonne c=\' || c || \', l=\' || l || \' n\'\'existe pas!\'); + END CASE; END; + + + + PROCEDURE CALCUL_RESULTAT IS + BEGIN + feuille.delete; + + -- transmission des résultats aux volumes horaires et volumes horaires référentiel + FOR l IN 1 .. ose_formule.volumes_horaires.length LOOP + ose_formule.volumes_horaires.items(l).service_fi := mainCell(\'Service FI\', \'BJ\',l); + ose_formule.volumes_horaires.items(l).service_fa := mainCell(\'Service FA\', \'BK\',l); + ose_formule.volumes_horaires.items(l).service_fc := mainCell(\'Service FC\', \'BL\',l); + ose_formule.volumes_horaires.items(l).service_referentiel := mainCell(\'Service référentiel\', \'BM\',l); + ose_formule.volumes_horaires.items(l).heures_compl_fi := mainCell(\'Heures compl. FI\', \'BN\',l); + ose_formule.volumes_horaires.items(l).heures_compl_fa := mainCell(\'Heures compl. FA\', \'BO\',l); + ose_formule.volumes_horaires.items(l).heures_compl_fc := mainCell(\'Heures compl. FC\', \'BP\',l); + ose_formule.volumes_horaires.items(l).heures_compl_fc_majorees := mainCell(\'Heures compl. FC Maj.\', \'BQ\',l); + ose_formule.volumes_horaires.items(l).heures_compl_referentiel := mainCell(\'Heures compl. référentiel\', \'BR\',l); + END LOOP; + END; + + + + FUNCTION INTERVENANT_QUERY RETURN CLOB IS + BEGIN + RETURN \' + SELECT + fi.*, + NULL param_1, + NULL param_2, + NULL param_3, + NULL param_4, + NULL param_5 + FROM + v_formule_intervenant fi + \'; + END; + + + + FUNCTION VOLUME_HORAIRE_QUERY RETURN CLOB IS + BEGIN + RETURN \' + SELECT + fvh.*, + str.code param_1, + NULL param_2, + NULL param_3, + NULL param_4, + NULL param_5 + FROM + v_formule_volume_horaire fvh + JOIN intervenant i ON i.id = fvh.intervenant_id + LEFT JOIN structure str ON str.id = COALESCE(fvh.structure_id,i.structure_id) + ORDER BY + ordre\'; + END; + +END FORMULE_NANTERRE;', + ), + 'FORMULE_UBO' => + array ( + 'name' => 'FORMULE_UBO', + 'definition' => 'CREATE OR REPLACE PACKAGE "FORMULE_UBO" AS + + PROCEDURE CALCUL_RESULTAT; + + FUNCTION calcCell( c VARCHAR2, l NUMERIC ) RETURN FLOAT; + + FUNCTION INTERVENANT_QUERY RETURN CLOB; + FUNCTION VOLUME_HORAIRE_QUERY RETURN CLOB; + +END FORMULE_UBO;', + 'body' => 'CREATE OR REPLACE PACKAGE BODY "FORMULE_UBO" AS + decalageLigne NUMERIC DEFAULT 0; + + + /* Stockage des valeurs intermédiaires */ + TYPE t_cell IS RECORD ( + valeur FLOAT, + enCalcul BOOLEAN DEFAULT FALSE + ); + TYPE t_cells IS TABLE OF t_cell INDEX BY PLS_INTEGER; + TYPE t_coll IS RECORD ( + cells t_cells + ); + TYPE t_colls IS TABLE OF t_coll INDEX BY VARCHAR2(50); + feuille t_colls; + + debugLine NUMERIC; + + + PROCEDURE dbg( val CLOB ) IS + BEGIN + ose_formule.volumes_horaires.items(debugLine).debug_info := + ose_formule.volumes_horaires.items(debugLine).debug_info || val; + END; + + + PROCEDURE dbgi( val CLOB ) IS + BEGIN + ose_formule.intervenant.debug_info := ose_formule.intervenant.debug_info || val; + END; + + PROCEDURE dbgDump( val CLOB ) IS + BEGIN + dbg(\'<div class="dbg-dump">\' || val || \'</div>\'); + END; + + PROCEDURE dbgCell( c VARCHAR2, l NUMERIC, val FLOAT ) IS + ligne NUMERIC; + BEGIN + ligne := l; + IF l <> 0 THEN + ligne := ligne + decalageLigne; + END IF; + + dbgi( \'[cell|\' || c || \'|\' || ligne || \'|\' || val ); + END; + + PROCEDURE dbgCalc( fncName VARCHAR2, c VARCHAR2, res FLOAT ) IS + BEGIN + dbgi( \'[calc|\' || fncName || \'|\' || c || \'|\' || res ); + END; + + FUNCTION cell( c VARCHAR2, l NUMERIC DEFAULT 0 ) RETURN FLOAT IS + val FLOAT; + BEGIN + IF feuille.exists(c) THEN + IF feuille(c).cells.exists(l) THEN + IF feuille(c).cells(l).enCalcul THEN + raise_application_error( -20001, \'Dépendance cyclique : la cellule [\' || c || \';\' || l || \'] est déjà en cours de calcul\'); + END IF; + RETURN feuille(c).cells(l).valeur; + END IF; + END IF; + + feuille(c).cells(l).enCalcul := true; + val := calcCell( c, l ); + IF ose_formule.debug_actif THEN + dbgCell( c, l, val ); + END IF; + feuille(c).cells(l).valeur := val; + feuille(c).cells(l).enCalcul := false; + + RETURN val; + END; + + FUNCTION mainCell( libelle VARCHAR2, c VARCHAR2, l NUMERIC ) RETURN FLOAT IS + val FLOAT; + BEGIN + debugLine := l; + val := cell(c,l); + + RETURN val; + END; + + FUNCTION calcFnc( fncName VARCHAR2, c VARCHAR2 ) RETURN FLOAT IS + val FLOAT; + cellRes FLOAT; + BEGIN + IF feuille.exists(\'__\' || fncName || \'__\' || c || \'__\') THEN + IF feuille(\'__\' || fncName || \'__\' || c || \'__\').cells.exists(1) THEN + RETURN feuille(\'__\' || fncName || \'__\' || c || \'__\').cells(1).valeur; + END IF; + END IF; + CASE + -- Liste des fonctions supportées + + WHEN fncName = \'total\' THEN + val := 0; + FOR l IN 1 .. ose_formule.volumes_horaires.length LOOP + val := val + COALESCE(cell(c, l),0); + END LOOP; + + WHEN fncName = \'max\' THEN + val := NULL; + FOR l IN 1 .. ose_formule.volumes_horaires.length LOOP + cellRes := cell(c,l); + IF val IS NULL OR val < cellRes THEN + val := cellRes; + END IF; + END LOOP; + + -- fin de la liste des fonctions supportées + ELSE + raise_application_error( -20001, \'La formule "\' || fncName || \'" n\'\'existe pas!\'); + END CASE; + IF ose_formule.debug_actif THEN + dbgCalc(fncName, c, val ); + END IF; + feuille(\'__\' || fncName || \'__\' || c || \'__\').cells(1).valeur := val; + + RETURN val; + END; + + + FUNCTION calcVersion RETURN NUMERIC IS + BEGIN + RETURN 1; + END; + + + + FUNCTION calcCell( c VARCHAR2, l NUMERIC ) RETURN FLOAT IS + vh ose_formule.t_volume_horaire; + i ose_formule.t_intervenant; + v NUMERIC; + val FLOAT; + BEGIN + v := calcVersion; + + i := ose_formule.intervenant; + IF l > 0 THEN + vh := ose_formule.volumes_horaires.items(l); + END IF; + CASE + + + + WHEN c = \'CM\' AND v >= 1 THEN + IF vh.type_intervention_code = \'CM\' THEN + RETURN vh.heures; + ELSE + RETURN 0; + END IF; + + + + WHEN c = \'TD\' AND v >= 1 THEN + IF vh.type_intervention_code = \'TD\' THEN + RETURN vh.heures; + ELSE + RETURN 0; + END IF; + + + + WHEN c = \'TP\' AND v >= 1 THEN + IF vh.type_intervention_code = \'TP\' THEN + RETURN vh.heures; + ELSE + RETURN 0; + END IF; + + + + WHEN c=\'sCM\' AND v >= 1 THEN + RETURN calcFnc(\'total\', \'CM\'); + + + + WHEN c=\'sTD\' AND v >= 1 THEN + RETURN calcFnc(\'total\', \'TD\'); + + + + WHEN c=\'sTP\' AND v >= 1 THEN + RETURN calcFnc(\'total\', \'TP\'); + + + + WHEN c=\'sHeures\' AND v >= 1 THEN + RETURN cell(\'sCM\') + cell(\'sTD\') + cell(\'sTP\'); + + + + -- =SI(I9=0;2/3;SI(I8="Oui";SI(SOMME(I26:K35)=0;1;(2+(I15/((1,5*SOMME(I26:I35))+SOMME(J26:K35))))/3);SI(SOMME(K26:K35)<=384;1;((384+((SOMME(K26:K35)-384)*(2/3)))/SOMME(K26:K35))))) + -- I8= TP vaut TD + -- I9 = i.heures_service_statutaire + -- I15 = i.service_du + -- I26:I35 = Somme des CM I=CM, J=TD, K=TP + -- K26:K35 = Somme des TP + WHEN c = \'tauxTP\' AND v >= 1 THEN + IF i.heures_service_statutaire = 0 THEN + RETURN 2/3; + ELSE + -- SI(I8="Oui";SI(SOMME(I26:K35)=0;1;(2+(I15/((1,5*SOMME(I26:I35))+SOMME(J26:K35))))/3);SI(SOMME(K26:K35)<=384;1;((384+((SOMME(K26:K35)-384)*(2/3)))/SOMME(K26:K35)))) + IF LOWER(i.param_1)=\'oui\' THEN + -- SI(SOMME(I26:K35)=0;1;(2+(I15/((1,5*SOMME(I26:I35))+SOMME(J26:K35))))/3); + IF cell(\'sHeures\') = 0 THEN + RETURN 1; + ELSE + -- (2+(I15/((1,5*SOMME(I26:I35))+SOMME(J26:K35))))/3 + RETURN (2+(i.service_du/((1.5*cell(\'sCM\'))+cell(\'sTD\')+cell(\'sTP\'))))/3; + END IF; + ELSE + -- SI(SOMME(K26:K35)<=384;1;((384+((SOMME(K26:K35)-384)*(2/3)))/SOMME(K26:K35))) + IF cell(\'sTP\') <= 384 THEN + RETURN 1; + ELSE + --(384+((SOMME(K26:K35)-384)*(2/3)))/SOMME(K26:K35) + RETURN (384+((cell(\'sTP\')-384)*(2/3)))/cell(\'sTP\'); + END IF; + END IF; + END IF; + + + + WHEN c = \'tauxServiceDu\' AND v >= 1 THEN + IF vh.type_intervention_code = \'TP\' THEN + RETURN cell(\'tauxTP\'); + ELSE + RETURN vh.taux_service_du; + END IF; + + + + WHEN c = \'tauxServiceCompl\' AND v >= 1 THEN + IF vh.type_intervention_code = \'TP\' THEN + RETURN cell(\'tauxTP\'); + ELSE + RETURN vh.taux_service_compl; + END IF; + + + -- t11=SI(ET($H26=$I$11;NON($F26));I26;0) + WHEN c = \'t11\' AND v >= 1 THEN + IF vh.volume_horaire_ref_id IS NULL AND vh.structure_is_affectation AND NOT vh.taux_fc = 1 THEN + RETURN vh.heures; + ELSE + RETURN 0; + END IF; + + + + -- t12=SI(ET($H26<>$I$11;NON($F26));I26;0) + WHEN c = \'t12\' AND v >= 1 THEN + IF vh.volume_horaire_ref_id IS NULL AND NOT vh.structure_is_affectation AND NOT vh.taux_fc = 1 THEN + RETURN vh.heures; + ELSE + RETURN 0; + END IF; + + + + -- t13=SI(ET($H26=$I$11;$F26);I26;0) + WHEN c = \'t13\' AND v >= 1 THEN + IF vh.volume_horaire_ref_id IS NULL AND vh.structure_is_affectation AND vh.taux_fc = 1 THEN + RETURN vh.heures; + ELSE + RETURN 0; + END IF; + + + + -- t14=SI(ET($H26<>$I$11;$F26);I26;0) + WHEN c = \'t14\' AND v >= 1 THEN + IF vh.volume_horaire_ref_id IS NULL AND NOT vh.structure_is_affectation AND vh.taux_fc = 1 THEN + RETURN vh.heures; + ELSE + RETURN 0; + END IF; + + + + -- t15=SI($H38=$I$11;I38;0) + WHEN c = \'t15\' AND v >= 1 THEN + IF vh.volume_horaire_ref_id IS NOT NULL AND vh.structure_is_affectation THEN + RETURN vh.heures; + ELSE + RETURN 0; + END IF; + + + + -- t16=SI(ET($H38<>$I$11;$H38<>$I$2);I38;0) + WHEN c = \'t16\' AND v >= 1 THEN + IF vh.volume_horaire_ref_id IS NOT NULL AND NOT vh.structure_is_affectation AND NOT vh.structure_is_univ THEN + RETURN vh.heures; + ELSE + RETURN 0; + END IF; + + + + -- t17=SI($H38=$I$2;I38;0) + WHEN c = \'t17\' AND v >= 1 THEN + IF vh.volume_horaire_ref_id IS NOT NULL AND vh.structure_is_univ THEN + RETURN vh.heures; + ELSE + RETURN 0; + END IF; + + + + -- t21=I47*I$24 + WHEN c = \'t21\' AND v >= 1 THEN + RETURN cell(\'t11\', l) * cell(\'tauxServiceDu\',l); + + + + -- t22=S47*I$24 + WHEN c = \'t22\' AND v >= 1 THEN + RETURN cell(\'t12\', l) * cell(\'tauxServiceDu\',l); + + + + -- t23=AC47*I$24 + WHEN c = \'t23\' AND v >= 1 THEN + RETURN cell(\'t13\', l) * cell(\'tauxServiceDu\',l); + + + + -- t24=AM47*I$24 + WHEN c = \'t24\' AND v >= 1 THEN + RETURN cell(\'t14\', l) * cell(\'tauxServiceDu\',l); + + + + -- t25=AW47*$R$5 + WHEN c = \'t25\' AND v >= 1 THEN + RETURN cell(\'t15\', l); + + + + -- t26=AY47*$R$5 + WHEN c = \'t26\' AND v >= 1 THEN + RETURN cell(\'t16\', l); + + + + -- t27=BA47*$R$5 + WHEN c = \'t27\' AND v >= 1 THEN + RETURN cell(\'t17\', l); + + + + -- t31=MAX(I15-Q69;0) + WHEN c = \'t31\' AND v >= 1 THEN + RETURN GREATEST(ose_formule.intervenant.service_du - calcFnc(\'total\',\'t21\'), 0); + + + + -- t32=MAX(Q71-AA69;0) + WHEN c = \'t32\' AND v >= 1 THEN + RETURN GREATEST(cell(\'t31\') - calcFnc(\'total\',\'t22\'), 0); + + + + -- t33=MAX(AA71-AK69;0) + WHEN c = \'t33\' AND v >= 1 THEN + RETURN GREATEST(cell(\'t32\') - calcFnc(\'total\',\'t23\'), 0); + + + + -- t34=MAX(AK71-AU69;0) + WHEN c = \'t34\' AND v >= 1 THEN + RETURN GREATEST(cell(\'t33\') - calcFnc(\'total\',\'t24\'), 0); + + + + -- t35=MAX(AU71-AW64;0) + WHEN c = \'t35\' AND v >= 1 THEN + RETURN GREATEST(cell(\'t34\') - calcFnc(\'total\',\'t25\'), 0); + + + + -- t36=MAX(AW71-AY64;0) + WHEN c = \'t36\' AND v >= 1 THEN + RETURN GREATEST(cell(\'t35\', l) - calcFnc(\'total\',\'t26\'), 0); + + + + -- t37=MAX(AY71-BA64;0) + WHEN c = \'t37\' AND v >= 1 THEN + RETURN GREATEST(cell(\'t36\', l) - calcFnc(\'total\',\'t27\'), 0); + + + + -- t41=SI($Q$69<>0;I59/$Q$69;0) + WHEN c = \'t41\' AND v >= 1 THEN + IF calcFnc(\'total\',\'t21\') <> 0 THEN + RETURN cell(\'t21\', l) / calcFnc(\'total\',\'t21\'); + ELSE + RETURN 0; + END IF; + + + + -- t42=SI($AA$69<>0;S59/$AA$69;0) + WHEN c = \'t42\' AND v >= 1 THEN + IF calcFnc(\'total\',\'t22\') <> 0 THEN + RETURN cell(\'t22\', l) / calcFnc(\'total\',\'t22\'); + ELSE + RETURN 0; + END IF; + + + + -- t43=SI($AK$69<>0;AC59/$AK$69;0) + WHEN c = \'t43\' AND v >= 1 THEN + IF calcFnc(\'total\',\'t23\') <> 0 THEN + RETURN cell(\'t23\', l) / calcFnc(\'total\',\'t23\'); + ELSE + RETURN 0; + END IF; + + + + -- t44=SI($AU$69<>0;AM59/$AU$69;0) + WHEN c = \'t44\' AND v >= 1 THEN + IF calcFnc(\'total\',\'t24\') <> 0 THEN + RETURN cell(\'t24\', l) / calcFnc(\'total\',\'t24\'); + ELSE + RETURN 0; + END IF; + + + + -- t45=SI($AW$64<>0;AW59/$AW$64;0) + WHEN c = \'t45\' AND v >= 1 THEN + IF calcFnc(\'total\',\'t25\') <> 0 THEN + RETURN cell(\'t25\', l) / calcFnc(\'total\',\'t25\'); + ELSE + RETURN 0; + END IF; + + + + -- t46=SI($AY$64<>0;AY59/$AY$64;0) + WHEN c = \'t46\' AND v >= 1 THEN + IF calcFnc(\'total\',\'t26\') <> 0 THEN + RETURN cell(\'t26\', l) / calcFnc(\'total\',\'t26\'); + ELSE + RETURN 0; + END IF; + + + + -- t47=SI($BA$64<>0;BA59/$BA$64;0) + WHEN c = \'t47\' AND v >= 1 THEN + IF calcFnc(\'total\',\'t27\') <> 0 THEN + RETURN cell(\'t27\', l) / calcFnc(\'total\',\'t27\'); + ELSE + RETURN 0; + END IF; + + + + -- t51=MIN($I$15;$Q$69)*I74 + WHEN c = \'t51\' AND v >= 1 THEN + RETURN LEAST(ose_formule.intervenant.service_du, calcFnc(\'total\',\'t21\')) * cell(\'t41\', l); + + + + -- t52=MIN($Q$71;$AA$69)*S74 + WHEN c = \'t52\' AND v >= 1 THEN + RETURN LEAST(cell(\'t31\'), calcFnc(\'total\',\'t22\')) * cell(\'t42\', l); + + + + -- t53=MIN($AA$71;$AK$69)*AC74 + WHEN c = \'t53\' AND v >= 1 THEN + RETURN LEAST(cell(\'t32\'), calcFnc(\'total\',\'t23\')) * cell(\'t43\', l); + + + + -- t54=MIN($AK$71;$AU$69)*AM74 + WHEN c = \'t54\' AND v >= 1 THEN + RETURN LEAST(cell(\'t33\'), calcFnc(\'total\',\'t24\')) * cell(\'t44\', l); + + + + -- t55=MIN($AU$71;$AW$64)*AW74 + WHEN c = \'t55\' AND v >= 1 THEN + RETURN LEAST(cell(\'t34\'), calcFnc(\'total\',\'t25\')) * cell(\'t45\', l); + + + + -- t56=MIN($AW$71;$AY$64)*AY74 + WHEN c = \'t56\' AND v >= 1 THEN + RETURN LEAST(cell(\'t35\'), calcFnc(\'total\',\'t26\')) * cell(\'t46\', l); + + + + -- t57=MIN($AY$71;$BA$64)*BA74 + WHEN c = \'t57\' AND v >= 1 THEN + RETURN LEAST(cell(\'t36\'), calcFnc(\'total\',\'t27\')) * cell(\'t47\', l); + + + + -- t61=I86*$C26 + WHEN c = \'t61\' AND v >= 1 THEN + RETURN cell(\'t51\', l) * vh.taux_fi; + + + + -- t62=S86*$C26 + WHEN c = \'t62\' AND v >= 1 THEN + RETURN cell(\'t52\', l) * vh.taux_fi; + + + + -- t71=I86*$D26 + WHEN c = \'t71\' AND v >= 1 THEN + RETURN cell(\'t51\', l) * vh.taux_fa; + + + + -- t72=S86*$D26 + WHEN c = \'t72\' AND v >= 1 THEN + RETURN cell(\'t52\', l) * vh.taux_fa; + + + + -- t81=I86*$E26 + WHEN c = \'t81\' AND v >= 1 THEN + RETURN cell(\'t51\', l) * vh.taux_fc; + + + + -- t82=S86*$E26 + WHEN c = \'t82\' AND v >= 1 THEN + RETURN cell(\'t52\', l) * vh.taux_fc; + + + + -- t83=AC86*$E26 + WHEN c = \'t83\' AND v >= 1 THEN + RETURN cell(\'t53\', l) * vh.taux_fc; + + + + -- t84=AM86*$E26 + WHEN c = \'t84\' AND v >= 1 THEN + RETURN cell(\'t54\', l) * vh.taux_fc; + + + + -- t91=SI(I59<>0;I86/I59;0) + WHEN c = \'t91\' AND v >= 1 THEN + IF cell(\'t21\', l) <> 0 THEN + RETURN cell(\'t51\', l) / cell(\'t21\', l); + ELSE + RETURN 0; + END IF; + + + + -- t92=SI(S59<>0;S86/S59;0) + WHEN c = \'t92\' AND v >= 1 THEN + IF cell(\'t22\', l) <> 0 THEN + RETURN cell(\'t52\', l) / cell(\'t22\', l); + ELSE + RETURN 0; + END IF; + + + + -- t93=SI(AC59<>0;AC86/AC59;0) + WHEN c = \'t93\' AND v >= 1 THEN + IF cell(\'t23\', l) <> 0 THEN + RETURN cell(\'t53\', l) / cell(\'t23\', l); + ELSE + RETURN 0; + END IF; + + + + -- t94=SI(AM59<>0;AM86/AM59;0) + WHEN c = \'t94\' AND v >= 1 THEN + IF cell(\'t24\', l) <> 0 THEN + RETURN cell(\'t54\', l) / cell(\'t24\', l); + ELSE + RETURN 0; + END IF; + + + + -- t95=SI(AW59<>0;AW86/AW59;0) + WHEN c = \'t95\' AND v >= 1 THEN + IF cell(\'t25\', l) <> 0 THEN + RETURN cell(\'t55\', l) / cell(\'t25\', l); + ELSE + RETURN 0; + END IF; + + + + -- t96=SI(AY59<>0;AY86/AY59;0) + WHEN c = \'t96\' AND v >= 1 THEN + IF cell(\'t26\', l) <> 0 THEN + RETURN cell(\'t56\', l) / cell(\'t26\', l); + ELSE + RETURN 0; + END IF; + + + + -- t97=SI(BA59<>0;BA86/BA59;0) + WHEN c = \'t97\' AND v >= 1 THEN + IF cell(\'t27\', l) <> 0 THEN + RETURN cell(\'t57\', l) / cell(\'t27\', l); + ELSE + RETURN 0; + END IF; + + + + -- t101=SI($BA$71<>0;0;1-I134) + WHEN c = \'t101\' AND v >= 1 THEN + IF cell(\'t37\') <> 0 THEN + RETURN 0; + ELSE + RETURN 1 - cell(\'t91\', l); + END IF; + + + + -- t102=SI($BA$71<>0;0;1-S134) + WHEN c = \'t102\' AND v >= 1 THEN + IF cell(\'t37\') <> 0 THEN + RETURN 0; + ELSE + RETURN 1 - cell(\'t92\', l); + END IF; + + + + -- t103=SI($BA$71<>0;0;1-AC134) + WHEN c = \'t103\' AND v >= 1 THEN + IF cell(\'t37\') <> 0 THEN + RETURN 0; + ELSE + RETURN 1 - cell(\'t93\', l); + END IF; + + + + -- t104=SI($BA$71<>0;0;1-AM134) + WHEN c = \'t104\' AND v >= 1 THEN + IF cell(\'t37\') <> 0 THEN + RETURN 0; + ELSE + RETURN 1 - cell(\'t94\', l); + END IF; + + + + -- t105=SI($BA$71<>0;0;1-AW134) + WHEN c = \'t105\' AND v >= 1 THEN + IF cell(\'t37\') <> 0 THEN + RETURN 0; + ELSE + RETURN 1 - cell(\'t95\', l); + END IF; + + + + -- t106=SI($BA$71<>0;0;1-AY134) + WHEN c = \'t106\' AND v >= 1 THEN + IF cell(\'t37\') <> 0 THEN + RETURN 0; + ELSE + RETURN 1 - cell(\'t96\', l); + END IF; + + + + -- t107=SI($BA$71<>0;0;1-BA134) + WHEN c = \'t107\' AND v >= 1 THEN + IF cell(\'t37\') <> 0 THEN + RETURN 0; + ELSE + RETURN 1 - cell(\'t97\', l); + END IF; + + + + -- t111=I47*I$25*I146 + WHEN c = \'t111\' AND v >= 1 THEN + RETURN cell(\'t11\', l) * cell(\'tauxServiceCompl\',l) * cell(\'t101\', l); + + + + -- t112=S47*I$25*S146 + WHEN c = \'t112\' AND v >= 1 THEN + RETURN cell(\'t12\', l) * cell(\'tauxServiceCompl\',l) * cell(\'t102\', l); + + + + -- t113=AC47*I$25*AC146 + WHEN c = \'t113\' AND v >= 1 THEN + RETURN cell(\'t13\', l) * cell(\'tauxServiceCompl\',l) * cell(\'t103\', l); + + + + -- t114=AM47*I$25*AM146 + WHEN c = \'t114\' AND v >= 1 THEN + RETURN cell(\'t14\', l) * cell(\'tauxServiceCompl\',l) * cell(\'t104\', l); + + + + -- t115=AW47*$R$6*AW146 + WHEN c = \'t115\' AND v >= 1 THEN + RETURN cell(\'t15\', l) * cell(\'t105\', l); + + + + -- t116=AY47*$R$6*AY146 + WHEN c = \'t116\' AND v >= 1 THEN + RETURN cell(\'t16\', l) * cell(\'t106\', l); + + + + -- t117=BA47*$R$6*BA146 + WHEN c = \'t117\' AND v >= 1 THEN + RETURN cell(\'t17\', l) * cell(\'t107\', l); + + + + -- t123=AC158*SI($F26;$G26;1) + WHEN c = \'t123\' AND v >= 1 THEN + IF vh.taux_fc = 1 THEN + RETURN cell(\'t113\', l) * vh.ponderation_service_compl; + ELSE + RETURN cell(\'t113\', l); + END IF; + + + + -- t124=AM158*SI($F26;$G26;1) + WHEN c = \'t124\' AND v >= 1 THEN + IF vh.taux_fc = 1 THEN + RETURN cell(\'t114\', l) * vh.ponderation_service_compl; + ELSE + RETURN cell(\'t114\', l); + END IF; + + + + -- t131=I158*$C26 + WHEN c = \'t131\' AND v >= 1 THEN + RETURN cell(\'t111\', l) * vh.taux_fi; + + + + -- t132=S158*$C26 + WHEN c = \'t132\' AND v >= 1 THEN + RETURN cell(\'t112\', l) * vh.taux_fi; + + + + -- t141=I158*$D26 + WHEN c = \'t141\' AND v >= 1 THEN + RETURN cell(\'t111\', l) * vh.taux_fa; + + + + -- t142=S158*$D26 + WHEN c = \'t142\' AND v >= 1 THEN + RETURN cell(\'t112\', l) * vh.taux_fa; + + + + -- t151=I158*$E26 + WHEN c = \'t151\' AND v >= 1 THEN + RETURN cell(\'t111\', l) * vh.taux_fc; + + + + -- t152=S158*$E26 + WHEN c = \'t152\' AND v >= 1 THEN + RETURN cell(\'t112\', l) * vh.taux_fc; + + + + -- t153=SI(AC170=AC158;AC158;0)*$E26 + WHEN c = \'t153\' AND v >= 1 THEN + IF cell(\'t123\', l) = cell(\'t113\', l) THEN + RETURN cell(\'t113\', l); + ELSE + RETURN 0; + END IF; + + + + -- t154=SI(AM170=AM158;AM158;0)*$E26 + WHEN c = \'t154\' AND v >= 1 THEN + IF cell(\'t124\', l) = cell(\'t114\', l) THEN + RETURN cell(\'t114\', l); + ELSE + RETURN 0; + END IF; + + + + -- t163=SI(AC170<>AC158;AC170;0)*$E26 + WHEN c = \'t163\' AND v >= 1 THEN + IF cell(\'t123\', l) <> cell(\'t113\', l) THEN + RETURN cell(\'t123\', l); + ELSE + RETURN 0; + END IF; + + + + -- t164=SI(AM170<>AM158;AM170;0)*$E26 + WHEN c = \'t164\' AND v >= 1 THEN + IF cell(\'t124\', l) <> cell(\'t114\', l) THEN + RETURN cell(\'t124\', l); + ELSE + RETURN 0; + END IF; + + + + -- rs=SOMME(I98:AU98) + WHEN c = \'rs\' AND v >= 1 THEN + RETURN cell(\'t61\',l) + cell(\'t62\',l); + + + + -- ss=SOMME(I110:AU110) + WHEN c = \'ss\' AND v >= 1 THEN + RETURN cell(\'t71\',l) + cell(\'t72\',l); + + + + -- ts=SOMME(I122:AU122) + WHEN c = \'ts\' AND v >= 1 THEN + RETURN cell(\'t81\',l) + cell(\'t82\',l) + cell(\'t83\',l) + cell(\'t84\',l); + + + + -- us=SI($I$13="Oui";SOMME(I182:AU182);0) + WHEN c = \'us\' AND v >= 1 THEN + RETURN cell(\'t131\',l) + cell(\'t132\',l); + + + + -- vs=SI($I$13="Oui";SOMME(I194:AU194);0) + WHEN c = \'vs\' AND v >= 1 THEN + IF NOT ose_formule.intervenant.depassement_service_du_sans_hc THEN + RETURN cell(\'t141\',l) + cell(\'t142\',l); + ELSE + RETURN 0; + END IF; + + + + -- ws=SI($I$13="Oui";SOMME(I206:AU206);0) + WHEN c = \'ws\' AND v >= 1 THEN + IF NOT ose_formule.intervenant.depassement_service_du_sans_hc THEN + RETURN cell(\'t151\',l) + cell(\'t152\',l) + cell(\'t153\',l) + cell(\'t154\',l); + ELSE + RETURN 0; + END IF; + + + + -- xs=SI($I$13="Oui";SOMME(I218:AU218);0) + WHEN c = \'xs\' AND v >= 1 THEN + IF NOT ose_formule.intervenant.depassement_service_du_sans_hc THEN + RETURN cell(\'t163\',l) + cell(\'t164\',l); + ELSE + RETURN 0; + END IF; + + + + -- rr=SOMME(AW86:BA86) + WHEN c = \'rr\' AND v >= 1 THEN + RETURN cell(\'t55\',l) + cell(\'t56\',l) + cell(\'t57\',l); + + + + -- ur=SI($I$13="Oui";SOMME(AW158:BA158);0) + WHEN c = \'ur\' AND v >= 1 THEN + IF NOT ose_formule.intervenant.depassement_service_du_sans_hc THEN + RETURN cell(\'t115\',l) + cell(\'t116\',l) + cell(\'t117\',l); + ELSE + RETURN 0; + END IF; + + + + ELSE + raise_application_error( -20001, \'La colonne c=\' || c || \', l=\' || l || \' n\'\'existe pas!\'); + END CASE; END; + + + + PROCEDURE CALCUL_RESULTAT IS + BEGIN + feuille.delete; + + -- transmission des résultats aux volumes horaires et volumes horaires référentiel + FOR l IN 1 .. ose_formule.volumes_horaires.length LOOP + ose_formule.volumes_horaires.items(l).service_fi := mainCell(\'Service FI\', \'rs\',l); + ose_formule.volumes_horaires.items(l).service_fa := mainCell(\'Service FA\', \'ss\',l); + ose_formule.volumes_horaires.items(l).service_fc := mainCell(\'Service FC\', \'ts\',l); + ose_formule.volumes_horaires.items(l).service_referentiel := mainCell(\'Service référentiel\', \'rr\',l); + ose_formule.volumes_horaires.items(l).heures_compl_fi := mainCell(\'Heures compl. FI\', \'us\',l); + ose_formule.volumes_horaires.items(l).heures_compl_fa := mainCell(\'Heures compl. FA\', \'vs\',l); + ose_formule.volumes_horaires.items(l).heures_compl_fc := mainCell(\'Heures compl. FC\', \'ws\',l); + ose_formule.volumes_horaires.items(l).heures_compl_fc_majorees := mainCell(\'Heures compl. FC Maj.\', \'xs\',l); + ose_formule.volumes_horaires.items(l).heures_compl_referentiel := mainCell(\'Heures compl. référentiel\', \'ur\',l); + END LOOP; + END; + + + + FUNCTION INTERVENANT_QUERY RETURN CLOB IS + BEGIN + RETURN \' + SELECT + fi.*, + CASE WHEN fi.type_intervenant_code = \'\'P\'\' AND si.source_code NOT IN (\'\'ATER\'\',\'\'ATER_MI_TPS\'\',\'\'LECTEUR\'\') THEN \'\'oui\'\' ELSE \'\'non\'\' END param_1, + NULL param_2, + NULL param_3, + NULL param_4, + NULL param_5 + FROM + v_formule_intervenant fi + JOIN intervenant i ON i.id = fi.intervenant_id + JOIN statut_intervenant si ON si.id = i.id + \'; + END; + + + + FUNCTION VOLUME_HORAIRE_QUERY RETURN CLOB IS + BEGIN + RETURN \' + SELECT + fvh.*, + NULL param_1, + NULL param_2, + NULL param_3, + NULL param_4, + NULL param_5 + FROM + v_formule_volume_horaire fvh + ORDER BY + ordre\'; + END; + +END FORMULE_UBO;', + ), + 'FORMULE_ULHN' => + array ( + 'name' => 'FORMULE_ULHN', + 'definition' => 'CREATE OR REPLACE PACKAGE "FORMULE_ULHN" AS + + PROCEDURE CALCUL_RESULTAT; + + FUNCTION calcCell( c VARCHAR2, l NUMERIC ) RETURN FLOAT; + + FUNCTION INTERVENANT_QUERY RETURN CLOB; + FUNCTION VOLUME_HORAIRE_QUERY RETURN CLOB; + +END FORMULE_ULHN;', + 'body' => 'CREATE OR REPLACE PACKAGE BODY "FORMULE_ULHN" AS + decalageLigne NUMERIC DEFAULT 21; + + + /* Stockage des valeurs intermédiaires */ + TYPE t_cell IS RECORD ( + valeur FLOAT, + enCalcul BOOLEAN DEFAULT FALSE + ); + TYPE t_cells IS TABLE OF t_cell INDEX BY PLS_INTEGER; + TYPE t_coll IS RECORD ( + cells t_cells + ); + TYPE t_colls IS TABLE OF t_coll INDEX BY VARCHAR2(50); + feuille t_colls; + + debugLine NUMERIC; + + + PROCEDURE dbg( val CLOB ) IS + BEGIN + ose_formule.volumes_horaires.items(debugLine).debug_info := + ose_formule.volumes_horaires.items(debugLine).debug_info || val; + END; + + + PROCEDURE dbgi( val CLOB ) IS + BEGIN + ose_formule.intervenant.debug_info := ose_formule.intervenant.debug_info || val; + END; + + PROCEDURE dbgDump( val CLOB ) IS + BEGIN + dbg(\'<div class="dbg-dump">\' || val || \'</div>\'); + END; + + PROCEDURE dbgCell( c VARCHAR2, l NUMERIC, val FLOAT ) IS + ligne NUMERIC; + BEGIN + ligne := l; + IF l <> 0 THEN + ligne := ligne + decalageLigne; + END IF; + + dbgi( \'[cell|\' || c || \'|\' || ligne || \'|\' || val ); + END; + + PROCEDURE dbgCalc( fncName VARCHAR2, c VARCHAR2, res FLOAT ) IS + BEGIN + dbgi( \'[calc|\' || fncName || \'|\' || c || \'|\' || res ); + END; + + FUNCTION cell( c VARCHAR2, l NUMERIC DEFAULT 0 ) RETURN FLOAT IS + val FLOAT; + BEGIN + IF feuille.exists(c) THEN + IF feuille(c).cells.exists(l) THEN + IF feuille(c).cells(l).enCalcul THEN + raise_application_error( -20001, \'Dépendance cyclique : la cellule [\' || c || \';\' || l || \'] est déjà en cours de calcul\'); + END IF; + RETURN feuille(c).cells(l).valeur; + END IF; + END IF; + + feuille(c).cells(l).enCalcul := true; + val := calcCell( c, l ); + IF ose_formule.debug_actif THEN + dbgCell( c, l, val ); + END IF; + feuille(c).cells(l).valeur := val; + feuille(c).cells(l).enCalcul := false; + + RETURN val; + END; + + FUNCTION mainCell( libelle VARCHAR2, c VARCHAR2, l NUMERIC ) RETURN FLOAT IS + val FLOAT; + BEGIN + debugLine := l; + val := cell(c,l); + + RETURN val; + END; + + FUNCTION calcFnc( fncName VARCHAR2, c VARCHAR2 ) RETURN FLOAT IS + val FLOAT; + cellRes FLOAT; + BEGIN + IF feuille.exists(\'__\' || fncName || \'__\' || c || \'__\') THEN + IF feuille(\'__\' || fncName || \'__\' || c || \'__\').cells.exists(1) THEN + RETURN feuille(\'__\' || fncName || \'__\' || c || \'__\').cells(1).valeur; + END IF; + END IF; + CASE + -- Liste des fonctions supportées + + WHEN fncName = \'total\' THEN + val := 0; + FOR l IN 1 .. ose_formule.volumes_horaires.length LOOP + val := val + COALESCE(cell(c, l),0); + END LOOP; + + WHEN fncName = \'max\' THEN + val := NULL; + FOR l IN 1 .. ose_formule.volumes_horaires.length LOOP + cellRes := cell(c,l); + IF val IS NULL OR val < cellRes THEN + val := cellRes; + END IF; + END LOOP; + + -- fin de la liste des fonctions supportées + ELSE + raise_application_error( -20001, \'La formule "\' || fncName || \'" n\'\'existe pas!\'); + END CASE; + IF ose_formule.debug_actif THEN + dbgCalc(fncName, c, val ); + END IF; + feuille(\'__\' || fncName || \'__\' || c || \'__\').cells(1).valeur := val; + + RETURN val; + END; + + + FUNCTION calcVersion RETURN NUMERIC IS + BEGIN + RETURN 1; + END; + + + + FUNCTION calcCell( c VARCHAR2, l NUMERIC ) RETURN FLOAT IS + vh ose_formule.t_volume_horaire; + i ose_formule.t_intervenant; + v NUMERIC; + val FLOAT; + BEGIN + v := calcVersion; + + i := ose_formule.intervenant; + IF l > 0 THEN + vh := ose_formule.volumes_horaires.items(l); + END IF; + CASE + + + -- j=SI(ESTVIDE(C22);0;RECHERCHEH(SI(ET(C22="TP";TP_vaut_TD="Oui");"TD";C22);types_intervention;2;0)) + -- = RECHERCHEH(SI(ET(C22="TP";TP_vaut_TD="Oui");"TD";C22);types_intervention;2;0) + WHEN c = \'j\' AND v >= 1 THEN + RETURN GREATEST(vh.taux_service_du * vh.ponderation_service_du,1); + + -- k=SI(ESTVIDE(C22);0;RECHERCHEH(C22;types_intervention;3;0)) + -- =RECHERCHEH(C22;types_intervention;3;0) + WHEN c = \'k\' AND v >= 1 THEN + RETURN vh.taux_service_compl; + + -- l=SI(H22="Oui";I22*J22;0) + WHEN c = \'l\' AND v >= 1 THEN + IF vh.service_statutaire THEN + RETURN vh.heures * cell( \'j\', l ); + ELSE + RETURN 0; + END IF; + + + -- l82=SOMME(L22:L81) + WHEN c = \'l82\' AND v >= 1 THEN + RETURN calcFnc(\'total\',\'l\'); + + -- n=SI($L$82>0;L22/$L$82;0) + WHEN c = \'n\' AND v >= 1 THEN + IF cell(\'l82\') > 0 THEN + RETURN cell(\'l\',l) / cell(\'l82\'); + ELSE + RETURN 0; + END IF; + + -- o=MIN(service_du;$L$82)*N22 + WHEN c = \'o\' AND v >= 1 THEN + RETURN LEAST(ose_formule.intervenant.service_du, cell(\'l82\')) * cell(\'n\',l); + + -- p=SI(L22<>0;O22/L22;0) + WHEN c = \'p\' AND v >= 1 THEN + IF cell(\'l\',l) <> 0 THEN + RETURN cell(\'o\',l) / cell(\'l\',l); + ELSE + RETURN 0; + END IF; + + -- q=SI($L$82>service_du;1-P22;0) + WHEN c = \'q\' AND v >= 1 THEN + IF cell(\'l82\') > ose_formule.intervenant.service_du THEN + RETURN 1 - cell(\'p\',l); + ELSE + RETURN 0; + END IF; + + -- r=I22*Q22*K22 + WHEN c = \'r\' AND v >= 1 THEN + RETURN vh.heures * cell(\'q\',l) * cell(\'k\',l); + + + + -- t=SI(service_du=0;0;SI(T21+L22>service_du;service_du;T21+L22)) + WHEN c = \'t\' AND v >= 1 THEN + IF l = 0 THEN + RETURN 0; + END IF; + IF i.service_du = 0 THEN + RETURN 0; + ELSE + IF (cell(\'t\',l-1) + cell(\'l\',l)) > ose_formule.intervenant.service_du THEN + RETURN ose_formule.intervenant.service_du; + ELSE + RETURN cell(\'t\',l-1) + cell(\'l\',l); + END IF; + END IF; + + + + -- u=SI(J22>0; SI(T21+L22<service_du;0;((T21+L22)-service_du)/J22);0) + -- u=SI(J22>0;SI(service_du=0;SI(L22<0;L22;SI(T22+L22<service_du;0;((T22+L22)-service_du)/J22));SI(T21+L22<service_du;0;((T21+L22)-service_du)/J22));0) + WHEN c = \'u\' AND v >= 1 THEN + IF cell(\'j\',l) > 0 THEN + -- SI(service_du=0;SI(L22<0;L22;SI(T22+L22<service_du;0;((T22+L22)-service_du)/J22));SI(T21+L22<service_du;0;((T21+L22)-service_du)/J22)) + IF i.service_du = 0 THEN + -- SI(L22<0;L22;SI(T22+L22<service_du;0;((T22+L22)-service_du)/J22)) + IF cell(\'l\',l) < 0 THEN + RETURN cell(\'l\',l); + ELSE + -- SI(T22+L22<service_du;0;((T22+L22)-service_du)/J22) + IF cell(\'t\',l) + cell(\'l\',l) < i.service_du THEN + RETURN 0; + ELSE + RETURN ((cell(\'t\',l) + cell(\'l\',l)) - i.service_du) / cell(\'j\',l); + END IF; + END IF; + ELSE + -- SI(T21+L22<service_du;0;((T21+L22)-service_du)/J22) + IF (cell(\'t\',l-1) + cell(\'l\',l)) < ose_formule.intervenant.service_du THEN + RETURN 0; + ELSE + RETURN (cell(\'t\',l-1) + cell(\'l\',l) - ose_formule.intervenant.service_du) / cell(\'j\',l); + END IF; + END IF; + ELSE + RETURN 0; + END IF; + + + + -- v=SI(OU(service_realise<service_du;HC_autorisees<>"Oui");0;(U22+SI(H22<>"Oui";I22;0))*K22) + WHEN c = \'v\' AND v >= 1 THEN + IF cell(\'service_realise\') < ose_formule.intervenant.service_du OR ose_formule.intervenant.depassement_service_du_sans_hc THEN + RETURN 0; + ELSE + --(U22+SI(H22<>"Oui";I22;0))*K22 + RETURN (cell(\'u\',l) + CASE WHEN NOT vh.service_statutaire THEN cell(\'i\',l) ELSE 0 END ) * cell(\'k\',l); + END IF; + + -- x=SI(OU(ESTVIDE($C22);$C22="Référentiel");0;SI(contexte_calcul="Réalisé";($L22-$U22)*D22;$O22*D22)) + WHEN c = \'x\' AND v >= 1 THEN + IF vh.service_referentiel_id IS NOT NULL THEN + RETURN 0; + ELSE + IF ose_formule.intervenant.type_volume_horaire_id = 2 THEN + RETURN (cell(\'l\',l) - cell(\'u\',l)) * vh.taux_fi; + ELSE + RETURN cell(\'o\',l) * vh.taux_fi; + END IF; + END IF; + + -- y=SI(OU(ESTVIDE($C22);$C22="Référentiel");0;SI(contexte_calcul="Réalisé";($L22-$U22)*E22;$O22*E22)) + WHEN c = \'y\' AND v >= 1 THEN + IF vh.service_referentiel_id IS NOT NULL THEN + RETURN 0; + ELSE + IF ose_formule.intervenant.type_volume_horaire_id = 2 THEN + RETURN (cell(\'l\',l) - cell(\'u\',l)) * vh.taux_fa; + ELSE + RETURN cell(\'o\',l) * vh.taux_fa; + END IF; + END IF; + + -- z=SI(OU(ESTVIDE($C22);$C22="Référentiel");0;SI(contexte_calcul="Réalisé";($L22-$U22)*F22;$O22*F22)) + WHEN c = \'z\' AND v >= 1 THEN + IF vh.service_referentiel_id IS NOT NULL THEN + RETURN 0; + ELSE + IF ose_formule.intervenant.type_volume_horaire_id = 2 THEN + RETURN (cell(\'l\',l) - cell(\'u\',l)) * vh.taux_fc; + ELSE + RETURN cell(\'o\',l) * vh.taux_fc; + END IF; + END IF; + + -- aa=SI($C22="Référentiel";SI(contexte_calcul="Réalisé";$L22-$U22;$R22);0) + WHEN c = \'aa\' AND v >= 1 THEN + IF vh.service_referentiel_id IS NOT NULL THEN + IF ose_formule.intervenant.type_volume_horaire_id = 2 THEN + RETURN cell(\'l\',l) - cell(\'u\',l); + ELSE + RETURN cell(\'r\',l); + END IF; + ELSE + RETURN 0; + END IF; + + -- ab=SI(OU(ESTVIDE($C22);$C22="Référentiel");0;SI(contexte_calcul="Réalisé";$V22*D22;$R22*D22)) + WHEN c = \'ab\' AND v >= 1 THEN + IF vh.service_referentiel_id IS NOT NULL THEN + RETURN 0; + ELSE + IF ose_formule.intervenant.type_volume_horaire_id = 2 THEN + RETURN cell(\'v\',l) * vh.taux_fi; + ELSE + RETURN cell(\'r\',l) * vh.taux_fi; + END IF; + END IF; + + -- ac=SI(OU(ESTVIDE($C22);$C22="Référentiel");0;SI(contexte_calcul="Réalisé";$V22*E22;$R22*E22)) + WHEN c = \'ac\' AND v >= 1 THEN + IF vh.service_referentiel_id IS NOT NULL THEN + RETURN 0; + ELSE + IF ose_formule.intervenant.type_volume_horaire_id = 2 THEN + RETURN cell(\'v\',l) * vh.taux_fa; + ELSE + RETURN cell(\'r\',l) * vh.taux_fa; + END IF; + END IF; + + -- ad=SI(OU(ESTVIDE($C22);$C22="Référentiel");0;SI(contexte_calcul="Réalisé";$V22*F22;$R22*F22)) + WHEN c = \'ad\' AND v >= 1 THEN + IF vh.service_referentiel_id IS NOT NULL THEN + RETURN 0; + ELSE + IF ose_formule.intervenant.type_volume_horaire_id = 2 THEN + RETURN cell(\'v\',l) * vh.taux_fc; + ELSE + RETURN cell(\'r\',l) * vh.taux_fc; + END IF; + END IF; + + -- ae=0 + WHEN c = \'ae\' AND v >= 1 THEN + RETURN 0; + + -- af=SI($C22="Référentiel";SI(contexte_calcul="Réalisé";$V22;$R22);0) + WHEN c = \'af\' AND v >= 1 THEN + IF vh.service_referentiel_id IS NOT NULL THEN + IF ose_formule.intervenant.type_volume_horaire_id = 2 THEN + RETURN cell(\'v\',l); + ELSE + RETURN cell(\'r\',l); + END IF; + ELSE + RETURN 0; + END IF; + + -- d17=SI(contexte_calcul="Réalisé";MAX($T$22:$T$81);SOMME($O$22:$O$81)) + WHEN c=\'service_realise\' AND v >= 1 THEN + IF ose_formule.intervenant.type_volume_horaire_id = 2 THEN + RETURN calcFnc(\'max\',\'t\'); + ELSE + RETURN calcFnc(\'total\',\'o\'); + END IF; + + ELSE + raise_application_error( -20001, \'La colonne c=\' || c || \', l=\' || l || \' n\'\'existe pas!\'); + END CASE; END; + + + + PROCEDURE CALCUL_RESULTAT IS + BEGIN + feuille.delete; + + -- transmission des résultats aux volumes horaires et volumes horaires référentiel + FOR l IN 1 .. ose_formule.volumes_horaires.length LOOP + ose_formule.volumes_horaires.items(l).service_fi := mainCell(\'Service FI\', \'x\',l); + ose_formule.volumes_horaires.items(l).service_fa := mainCell(\'Service FA\', \'y\',l); + ose_formule.volumes_horaires.items(l).service_fc := mainCell(\'Service FC\', \'z\',l); + ose_formule.volumes_horaires.items(l).service_referentiel := mainCell(\'Service référentiel\', \'aa\',l); + ose_formule.volumes_horaires.items(l).heures_compl_fi := mainCell(\'Heures compl. FI\', \'ab\',l); + ose_formule.volumes_horaires.items(l).heures_compl_fa := mainCell(\'Heures compl. FA\', \'ac\',l); + ose_formule.volumes_horaires.items(l).heures_compl_fc := mainCell(\'Heures compl. FC\', \'ad\',l); + ose_formule.volumes_horaires.items(l).heures_compl_fc_majorees := mainCell(\'Heures compl. FC Maj.\', \'ae\',l); + ose_formule.volumes_horaires.items(l).heures_compl_referentiel := mainCell(\'Heures compl. référentiel\', \'af\',l); + END LOOP; + END; + + + + FUNCTION INTERVENANT_QUERY RETURN CLOB IS + BEGIN + RETURN \' + SELECT + fi.*, + NULL param_1, + NULL param_2, + NULL param_3, + NULL param_4, + NULL param_5 + FROM + v_formule_intervenant fi + \'; + END; + + + + FUNCTION VOLUME_HORAIRE_QUERY RETURN CLOB IS + BEGIN + RETURN \' + SELECT + fvh.*, + NULL param_1, + NULL param_2, + NULL param_3, + NULL param_4, + NULL param_5 + FROM + v_formule_volume_horaire fvh + ORDER BY + ordre\'; + END; + +END FORMULE_ULHN;', + ), + 'FORMULE_UNICAEN' => + array ( + 'name' => 'FORMULE_UNICAEN', + 'definition' => 'CREATE OR REPLACE PACKAGE "FORMULE_UNICAEN" AS + debug_enabled BOOLEAN DEFAULT FALSE; + debug_etat_volume_horaire_id NUMERIC DEFAULT 1; + debug_volume_horaire_id NUMERIC; + debug_volume_horaire_ref_id NUMERIC; + + PROCEDURE CALCUL_RESULTAT_V2; + PROCEDURE CALCUL_RESULTAT; + + PROCEDURE PURGE_EM_NON_FC; + + FUNCTION INTERVENANT_QUERY RETURN CLOB; + FUNCTION VOLUME_HORAIRE_QUERY RETURN CLOB; + +END FORMULE_UNICAEN;', + 'body' => 'CREATE OR REPLACE PACKAGE BODY "FORMULE_UNICAEN" AS + + /* Stockage des valeurs intermédiaires */ + TYPE t_valeurs IS TABLE OF FLOAT INDEX BY PLS_INTEGER; + TYPE t_tableau IS RECORD ( + valeurs t_valeurs, + total FLOAT DEFAULT 0 + ); + TYPE t_tableaux IS TABLE OF t_tableau INDEX BY PLS_INTEGER; + TYPE t_tableau_config IS RECORD ( + tableau NUMERIC, + version NUMERIC, + referentiel BOOLEAN DEFAULT FALSE, + setTotal BOOLEAN DEFAULT FALSE + ); + TYPE t_tableaux_configs IS VARRAY(100) OF t_tableau_config; + + t t_tableaux; + vh_index NUMERIC; + + + + -- Crée une définition de tableau + FUNCTION TC( tableau NUMERIC, version NUMERIC, options VARCHAR2 DEFAULT NULL) RETURN t_tableau_config IS + tcRes t_tableau_config; + BEGIN + tcRes.tableau := tableau; + tcRes.version := version; + CASE + WHEN options like \'%t%\' THEN tcRes.setTotal := TRUE; + WHEN options like \'%r%\' THEN tcRes.referentiel := TRUE; + ELSE RETURN tcRes; + END CASE; + + RETURN tcRes; + END; + + -- Setter d\'une valeur intermédiaire au niveau case + PROCEDURE SV( tableau NUMERIC, valeur FLOAT ) IS + BEGIN + t(tableau).valeurs(vh_index) := valeur; + t(tableau).total := t(tableau).total + valeur; + END; + + -- Setter d\'une valeur intermédiaire au niveau tableau + PROCEDURE ST( tableau NUMERIC, valeur FLOAT ) IS + BEGIN + t(tableau).total := valeur; + END; + + -- Getter d\'une valeur intermédiaire, au niveau case + FUNCTION GV( tableau NUMERIC ) RETURN FLOAT IS + BEGIN + IF NOT t.exists(tableau) THEN RETURN 0; END IF; + IF NOT t(tableau).valeurs.exists( vh_index ) THEN RETURN 0; END IF; + RETURN t(tableau).valeurs( vh_index ); + END; + + -- Getter d\'une valeur intermédiaire, au niveau tableau + FUNCTION GT( tableau NUMERIC ) RETURN FLOAT IS + BEGIN + IF NOT t.exists(tableau) THEN RETURN 0; END IF; + RETURN t(tableau).total; + END; + + + + + PROCEDURE DEBUG_VH IS + tableau NUMERIC; + vh ose_formule.t_volume_horaire; + BEGIN + IF NOT debug_enabled THEN RETURN; END IF; + IF ose_formule.intervenant.etat_volume_horaire_id <> debug_etat_volume_horaire_id THEN RETURN; END IF; + + FOR i IN 1 .. ose_formule.volumes_horaires.length LOOP + vh_index := i; + vh := ose_formule.volumes_horaires.items(i); + IF vh.volume_horaire_id = debug_volume_horaire_id OR vh.volume_horaire_ref_id = debug_volume_horaire_ref_id THEN + ose_formule.DEBUG_INTERVENANT; + ose_test.echo(\'\'); + ose_test.echo(\'-- DEBUG DE VOLUME HORAIRE --\'); + ose_test.echo(\'volume_horaire_id = \' || vh.volume_horaire_id); + ose_test.echo(\'volume_horaire_ref_id = \' || vh.volume_horaire_ref_id); + ose_test.echo(\'service_id = \' || vh.service_id); + ose_test.echo(\'service_referentiel_id = \' || vh.service_referentiel_id); + ose_test.echo(\'taux_fi = \' || vh.taux_fi); + ose_test.echo(\'taux_fa = \' || vh.taux_fa); + ose_test.echo(\'taux_fc = \' || vh.taux_fc); + ose_test.echo(\'ponderation_service_du = \' || vh.ponderation_service_du); + ose_test.echo(\'ponderation_service_compl = \' || vh.ponderation_service_compl); + ose_test.echo(\'structure_id = \' || vh.structure_id); + ose_test.echo(\'structure_is_affectation = \' || CASE WHEN vh.structure_is_affectation THEN \'OUI\' ELSE \'NON\' END); + ose_test.echo(\'structure_is_univ = \' || CASE WHEN vh.structure_is_univ THEN \'OUI\' ELSE \'NON\' END); + ose_test.echo(\'service_statutaire = \' || CASE WHEN vh.service_statutaire THEN \'OUI\' ELSE \'NON\' END); + ose_test.echo(\'heures = \' || vh.heures); + ose_test.echo(\'taux_service_du = \' || vh.taux_service_du); + ose_test.echo(\'taux_service_compl = \' || vh.taux_service_compl); + + tableau := t.FIRST; + LOOP EXIT WHEN tableau IS NULL; + IF gv(tableau) <> 0 OR gt(tableau) <> 0 THEN + ose_test.echo(\' t(\' || LPAD(tableau,3,\' \') || \') v=\' || RPAD(round(gv(tableau),3),10,\' \') || \'t=\' || round(gt(tableau),3)); + END IF; + tableau := t.NEXT(tableau); + END LOOP; + + ose_test.echo(\'service_fi = \' || vh.service_fi); + ose_test.echo(\'service_fa = \' || vh.service_fa); + ose_test.echo(\'service_fc = \' || vh.service_fc); + ose_test.echo(\'service_referentiel = \' || vh.service_referentiel); + ose_test.echo(\'heures_compl_fi = \' || vh.heures_compl_fi); + ose_test.echo(\'heures_compl_fa = \' || vh.heures_compl_fa); + ose_test.echo(\'heures_compl_fc = \' || vh.heures_compl_fc); + ose_test.echo(\'heures_compl_fc_majorees = \' || vh.heures_compl_fc_majorees); + ose_test.echo(\'heures_compl_referentiel = \' || vh.heures_compl_referentiel); + ose_test.echo(\'-- FIN DE DEBUG DE VOLUME HORAIRE --\'); + ose_test.echo(\'\'); + END IF; + END LOOP; + END; + + + + -- Formule de calcul définie par tableaux + FUNCTION EXECFORMULE( tableau NUMERIC, version NUMERIC ) RETURN FLOAT IS + vh ose_formule.t_volume_horaire; + i ose_formule.t_intervenant; + BEGIN + vh := ose_formule.volumes_horaires.items(vh_index); + i := ose_formule.intervenant; + CASE + + + WHEN tableau = 11 AND version = 2 THEN + IF vh.structure_is_affectation AND vh.taux_fc < 1 THEN + RETURN vh.heures; + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 11 AND version = 3 THEN + IF vh.structure_is_affectation THEN + RETURN vh.heures * (vh.taux_fi + vh.taux_fa); + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 12 AND version = 2 THEN + IF NOT vh.structure_is_affectation AND vh.taux_fc < 1 THEN + RETURN vh.heures; + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 12 AND version = 3 THEN + IF NOT vh.structure_is_affectation THEN + RETURN vh.heures * (vh.taux_fi + vh.taux_fa); + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 13 AND version = 2 THEN + IF vh.structure_is_affectation AND vh.taux_fc = 1 THEN + RETURN vh.heures; + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 13 AND version = 3 THEN + IF vh.structure_is_affectation THEN + RETURN vh.heures * vh.taux_fc; + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 14 AND version = 2 THEN + IF NOT vh.structure_is_affectation AND vh.taux_fc = 1 THEN + RETURN vh.heures; + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 14 AND version = 3 THEN + IF NOT vh.structure_is_affectation THEN + RETURN vh.heures * vh.taux_fc; + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 15 AND version = 2 THEN + IF vh.structure_is_affectation THEN + RETURN vh.heures; + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 16 AND version = 2 THEN + IF NOT vh.structure_is_affectation AND NOT vh.structure_is_univ THEN + RETURN vh.heures; + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 17 AND version = 2 THEN + IF vh.structure_is_univ THEN + RETURN vh.heures; + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 21 AND version = 2 THEN + RETURN gv(11) * vh.taux_service_du; + + + + WHEN tableau = 22 AND version = 2 THEN + RETURN gv(12) * vh.taux_service_du; + + + + WHEN tableau = 23 AND version = 2 THEN + RETURN gv(13) * vh.taux_service_du; + + + + WHEN tableau = 24 AND version = 2 THEN + RETURN gv(14) * vh.taux_service_du; + + + + WHEN tableau = 25 AND version = 2 THEN + RETURN gv(15); + + + + WHEN tableau = 26 AND version = 2 THEN + RETURN gv(16); + + + + WHEN tableau = 27 AND version = 2 THEN + RETURN gv(17); + + + + WHEN tableau = 31 AND version = 2 THEN + RETURN GREATEST( ose_formule.intervenant.service_du - gt(21), 0 ); + + + + WHEN tableau = 32 AND version = 2 THEN + RETURN GREATEST( gt(31) - gt(22), 0 ); + + + + WHEN tableau = 33 AND version = 2 THEN + RETURN GREATEST( gt(32) - gt(23), 0 ); + + + + WHEN tableau = 34 AND version = 2 THEN + RETURN GREATEST( gt(33) - gt(24), 0 ); + + + + WHEN tableau = 35 AND version = 2 THEN + RETURN GREATEST( gt(34) - gt(25), 0 ); + + + + WHEN tableau = 36 AND version = 2 THEN + RETURN GREATEST( gt(35) - gt(26), 0 ); + + + + WHEN tableau = 37 AND version = 2 THEN + RETURN GREATEST( gt(36) - gt(27), 0 ); + + + + WHEN tableau = 41 AND version = 2 THEN + IF gt(21) <> 0 THEN + RETURN gv(21) / gt(21); + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 42 AND version = 2 THEN + IF gt(22) <> 0 THEN + RETURN gv(22) / gt(22); + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 43 AND version = 2 THEN + IF gt(23) <> 0 THEN + RETURN gv(23) / gt(23); + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 44 AND version = 2 THEN + IF gt(24) <> 0 THEN + RETURN gv(24) / gt(24); + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 45 AND version = 2 THEN + IF gt(25) <> 0 THEN + RETURN gv(25) / gt(25); + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 46 AND version = 2 THEN + IF gt(26) <> 0 THEN + RETURN gv(26) / gt(26); + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 47 AND version = 2 THEN + IF gt(27) <> 0 THEN + RETURN gv(27) / gt(27); + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 51 AND version = 2 THEN + RETURN LEAST( ose_formule.intervenant.service_du, gt(21) ) * gv(41); + + + + WHEN tableau = 52 AND version = 2 THEN + RETURN LEAST( gt(31), gt(22) ) * gv(42); + + + + WHEN tableau = 53 AND version = 2 THEN + RETURN LEAST( gt(32), gt(23) ) * gv(43); + + + + WHEN tableau = 54 AND version = 2 THEN + RETURN LEAST( gt(33), gt(24) ) * gv(44); + + + + WHEN tableau = 55 AND version = 2 THEN + RETURN LEAST( gt(34), gt(25) ) * gv(45); + + + + WHEN tableau = 56 AND version = 2 THEN + RETURN LEAST( gt(35), gt(26) ) * gv(46); + + + + WHEN tableau = 57 AND version = 2 THEN + RETURN LEAST( gt(36), gt(27) ) * gv(47); + + + + WHEN tableau = 61 AND version = 2 THEN + RETURN gv(51) * vh.taux_fi; + + + + WHEN tableau = 61 AND version = 3 THEN + IF vh.taux_fi + vh.taux_fa > 0 THEN + RETURN gv(51) / (vh.taux_fi + vh.taux_fa) * vh.taux_fi; + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 62 AND version = 2 THEN + RETURN gv(52) * vh.taux_fi; + + + + WHEN tableau = 62 AND version = 3 THEN + IF vh.taux_fi + vh.taux_fa > 0 THEN + RETURN gv(52) / (vh.taux_fi + vh.taux_fa) * vh.taux_fi; + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 71 AND version = 2 THEN + RETURN gv(51) * vh.taux_fa; + + + + WHEN tableau = 71 AND version = 3 THEN + IF vh.taux_fi + vh.taux_fa > 0 THEN + RETURN gv(51) / (vh.taux_fi + vh.taux_fa) * vh.taux_fa; + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 72 AND version = 2 THEN + RETURN gv(52) * vh.taux_fa; + + + + WHEN tableau = 72 AND version = 3 THEN + IF vh.taux_fi + vh.taux_fa > 0 THEN + RETURN gv(52) / (vh.taux_fi + vh.taux_fa) * vh.taux_fa; + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 81 AND version = 2 THEN + RETURN gv(51) * vh.taux_fc; + + + + WHEN tableau = 82 AND version = 2 THEN + RETURN gv(52) * vh.taux_fc; + + + + WHEN tableau = 83 AND version = 2 THEN + RETURN gv(53) * vh.taux_fc; + + + + WHEN tableau = 83 AND version = 3 THEN + RETURN gv(53); + + + + WHEN tableau = 84 AND version = 2 THEN + RETURN gv(54) * vh.taux_fc; + + + + WHEN tableau = 84 AND version = 3 THEN + RETURN gv(54); + + + + WHEN tableau = 91 AND version = 2 THEN + IF gv(21) <> 0 THEN + RETURN gv(51) / gv(21); + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 92 AND version = 2 THEN + IF gv(22) <> 0 THEN + RETURN gv(52) / gv(22); + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 93 AND version = 2 THEN + IF gv(23) <> 0 THEN + RETURN gv(53) / gv(23); + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 94 AND version = 2 THEN + IF gv(24) <> 0 THEN + RETURN gv(54) / gv(24); + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 95 AND version = 2 THEN + IF gv(25) <> 0 THEN + RETURN gv(55) / gv(25); + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 96 AND version = 2 THEN + IF gv(26) <> 0 THEN + RETURN gv(56) / gv(26); + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 97 AND version = 2 THEN + IF gv(27) <> 0 THEN + RETURN gv(57) / gv(27); + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 101 AND version = 2 THEN + IF gt(37) <> 0 THEN + RETURN 0; + ELSE + RETURN 1 - gv(91); + END IF; + + + + WHEN tableau = 102 AND version = 2 THEN + IF gt(37) <> 0 THEN + RETURN 0; + ELSE + RETURN 1 - gv(92); + END IF; + + + + WHEN tableau = 103 AND version = 2 THEN + IF gt(37) <> 0 THEN + RETURN 0; + ELSE + RETURN 1 - gv(93); + END IF; + + + + WHEN tableau = 104 AND version = 2 THEN + IF gt(37) <> 0 THEN + RETURN 0; + ELSE + RETURN 1 - gv(94); + END IF; + + + + WHEN tableau = 105 AND version = 2 THEN + IF gt(37) <> 0 THEN + RETURN 0; + ELSE + RETURN 1 - gv(95); + END IF; + + + + WHEN tableau = 106 AND version = 2 THEN + IF gt(37) <> 0 THEN + RETURN 0; + ELSE + RETURN 1 - gv(96); + END IF; + + + + WHEN tableau = 107 AND version = 2 THEN + IF gt(37) <> 0 THEN + RETURN 0; + ELSE + RETURN 1 - gv(97); + END IF; + + + + WHEN tableau = 111 AND version = 2 THEN + RETURN gv(11) * vh.taux_service_compl * gv(101); + + + + WHEN tableau = 112 AND version = 2 THEN + RETURN gv(12) * vh.taux_service_compl * gv(102); + + + + WHEN tableau = 113 AND version = 2 THEN + RETURN gv(13) * vh.taux_service_compl * gv(103); + + + + WHEN tableau = 114 AND version = 2 THEN + RETURN gv(14) * vh.taux_service_compl * gv(104); + + + + WHEN tableau = 115 AND version = 2 THEN + RETURN gv(15) * gv(105); + + + + WHEN tableau = 116 AND version = 2 THEN + RETURN gv(16) * gv(106); + + + + WHEN tableau = 117 AND version = 2 THEN + RETURN gv(17) * gv(107); + + + + WHEN tableau = 123 AND version = 2 THEN + IF vh.taux_fc = 1 THEN + RETURN gv(113) * vh.ponderation_service_compl; + ELSE + RETURN gv(113); + END IF; + + + + WHEN tableau = 123 AND version = 3 THEN + IF vh.taux_fc > 0 THEN + RETURN gv(113) * vh.ponderation_service_compl; + ELSE + RETURN gv(113); + END IF; + + + + WHEN tableau = 124 AND version = 2 THEN + IF vh.taux_fc = 1 THEN + RETURN gv(114) * vh.ponderation_service_compl; + ELSE + RETURN gv(114); + END IF; + + + + WHEN tableau = 124 AND version = 3 THEN + IF vh.taux_fc > 0 THEN + RETURN gv(114) * vh.ponderation_service_compl; + ELSE + RETURN gv(114); + END IF; + + + + WHEN tableau = 131 AND version = 2 THEN + RETURN gv(111) * vh.taux_fi; + + + + WHEN tableau = 131 AND version = 3 THEN + IF vh.taux_fi + vh.taux_fa > 0 THEN + RETURN gv(111) / (vh.taux_fi + vh.taux_fa) * vh.taux_fi; + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 132 AND version = 2 THEN + RETURN gv(112) * vh.taux_fi; + + + + WHEN tableau = 132 AND version = 3 THEN + IF vh.taux_fi + vh.taux_fa > 0 THEN + RETURN gv(112) / (vh.taux_fi + vh.taux_fa) * vh.taux_fi; + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 141 AND version = 2 THEN + RETURN gv(111) * vh.taux_fa; + + + + WHEN tableau = 141 AND version = 3 THEN + IF vh.taux_fi + vh.taux_fa > 0 THEN + RETURN gv(111) / (vh.taux_fi + vh.taux_fa) * vh.taux_fa; + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 142 AND version = 2 THEN + RETURN gv(112) * vh.taux_fa; + + + + WHEN tableau = 142 AND version = 3 THEN + IF vh.taux_fi + vh.taux_fa > 0 THEN + RETURN gv(112) / (vh.taux_fi + vh.taux_fa) * vh.taux_fa; + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 151 AND version = 2 THEN + RETURN gv(111) * vh.taux_fc; + + + + WHEN tableau = 152 AND version = 2 THEN + RETURN gv(112) * vh.taux_fc; + + + + WHEN tableau = 153 AND version = 2 THEN + IF gv(123) = gv(113) THEN + RETURN gv(113) * vh.taux_fc; + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 153 AND version = 3 THEN + IF gv(123) = gv(113) THEN + RETURN gv(113); + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 154 AND version = 2 THEN + IF gv(124) = gv(114) THEN + RETURN gv(114) * vh.taux_fc; + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 154 AND version = 3 THEN + IF gv(124) = gv(114) THEN + RETURN gv(114); + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 163 AND version = 2 THEN + IF gv(123) <> gv(113) THEN + RETURN gv(123) * vh.taux_fc; + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 163 AND version = 3 THEN + IF gv(123) <> gv(113) THEN + RETURN gv(123); + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 164 AND version = 2 THEN + IF gv(124) <> gv(114) THEN + RETURN gv(124) * vh.taux_fc; + ELSE + RETURN 0; + END IF; + + + + WHEN tableau = 164 AND version = 3 THEN + IF gv(124) <> gv(114) THEN + RETURN gv(124); + ELSE + RETURN 0; + END IF; + + + + ELSE + raise_application_error( -20001, \'Le tableau \' || tableau || \' version \' || version || \' n\'\'existe pas!\'); + END CASE; END; + + + + + + + + PROCEDURE CALCUL_RESULTAT_V2 IS + tableaux t_tableaux_configs; + valeur FLOAT; + BEGIN + + -- Définition des tableaux à utiliser + tableaux := t_tableaux_configs( + tc( 11,2 ), tc( 12,2 ), tc( 13,2 ), tc( 14,2 ), tc( 15,2,\'r\' ), tc( 16,2,\'r\' ), tc( 17,2,\'r\' ), + tc( 21,2 ), tc( 22,2 ), tc( 23,2 ), tc( 24,2 ), tc( 25,2,\'r\' ), tc( 26,2,\'r\' ), tc( 27,2,\'r\' ), + tc( 31,2,\'t\'), tc( 32,2,\'t\'), tc( 33,2,\'t\'), tc( 34,2,\'t\'), tc( 35,2,\'tr\'), tc( 36,2,\'tr\'), tc( 37,2,\'tr\'), + tc( 41,2 ), tc( 42,2 ), tc( 43,2 ), tc( 44,2 ), tc( 45,2,\'r\' ), tc( 46,2,\'r\' ), tc( 47,2,\'r\' ), + tc( 51,2 ), tc( 52,2 ), tc( 53,2 ), tc( 54,2 ), tc( 55,2,\'r\' ), tc( 56,2,\'r\' ), tc( 57,2,\'r\' ), + tc( 61,2 ), tc( 62,2 ), + tc( 71,2 ), tc( 72,2 ), + tc( 81,2 ), tc( 82,2 ), tc( 83,2 ), tc( 84,2 ), + tc( 91,2 ), tc( 92,2 ), tc( 93,2 ), tc( 94,2 ), tc( 95,2,\'r\' ), tc( 96,2,\'r\' ), tc( 97,2,\'r\' ), + tc(101,2 ), tc(102,2 ), tc(103,2 ), tc(104,2 ), tc(105,2,\'r\' ), tc(106,2,\'r\' ), tc(107,2,\'r\' ), + tc(111,2 ), tc(112,2 ), tc(113,2 ), tc(114,2 ), tc(115,2,\'r\' ), tc(116,2,\'r\' ), tc(117,2,\'r\' ), + tc(123,2 ), tc(124,2 ), + tc(131,2 ), tc(132,2 ), + tc(141,2 ), tc(142,2 ), + tc(151,2 ), tc(152,2 ), tc(153,2 ), tc(154,2 ), + tc(163,2 ), tc(164,2 ) + ); + + -- calcul par tableau pour chaque volume horaire + t.delete; + FOR it IN tableaux.FIRST .. tableaux.LAST LOOP + FOR ivh IN 1 .. ose_formule.volumes_horaires.length LOOP + vh_index := ivh; + IF + ose_formule.volumes_horaires.items(ivh).service_id IS NOT NULL AND NOT tableaux(it).referentiel + OR ose_formule.volumes_horaires.items(ivh).service_referentiel_id IS NOT NULL AND tableaux(it).referentiel + OR tableaux(it).setTotal -- car on en a besoin tout le temps + THEN + valeur := EXECFORMULE(tableaux(it).tableau, tableaux(it).version); + IF tableaux(it).setTotal THEN + ST( tableaux(it).tableau, valeur ); + ELSE + SV( tableaux(it).tableau, valeur ); + END IF; + END IF; + END LOOP; + END LOOP; + + -- transmisssion des résultats aux volumes horaires et volumes horaires référentiel + FOR i IN 1 .. ose_formule.volumes_horaires.length LOOP + vh_index := i; + IF ose_formule.volumes_horaires.items(i).service_id IS NOT NULL THEN + ose_formule.volumes_horaires.items(i).service_fi := gv( 61) + gv( 62); + ose_formule.volumes_horaires.items(i).service_fa := gv( 71) + gv( 72); + ose_formule.volumes_horaires.items(i).service_fc := gv( 81) + gv( 82) + gv( 83) + gv( 84); + ose_formule.volumes_horaires.items(i).heures_compl_fi := gv(131) + gv(132); + ose_formule.volumes_horaires.items(i).heures_compl_fa := gv(141) + gv(142); + ose_formule.volumes_horaires.items(i).heures_compl_fc := gv(151) + gv(152) + gv(153) + gv(154); + ose_formule.volumes_horaires.items(i).heures_compl_fc_majorees := gv(163) + gv(164); + ELSIF ose_formule.volumes_horaires.items(i).service_referentiel_id IS NOT NULL THEN + ose_formule.volumes_horaires.items(i).service_referentiel := gv( 55) + gv( 56) + gv( 57); + ose_formule.volumes_horaires.items(i).heures_compl_referentiel := gv(115) + gv(116) + gv(117); + END IF; + END LOOP; + + DEBUG_VH; + END; + + + + PROCEDURE CALCUL_RESULTAT IS + tableaux t_tableaux_configs; + valeur FLOAT; + BEGIN + -- si l\'année est antérieure à 2016/2017 alors on utilise la V2!! + IF ose_formule.intervenant.annee_id < 2016 THEN + CALCUL_RESULTAT_V2; + RETURN; + END IF; + + + -- Définition des tableaux à utiliser + tableaux := t_tableaux_configs( + tc( 11,3 ), tc( 12,3 ), tc( 13,3 ), tc( 14,3 ), tc( 15,2,\'r\' ), tc( 16,2,\'r\' ), tc( 17,2,\'r\' ), + tc( 21,2 ), tc( 22,2 ), tc( 23,2 ), tc( 24,2 ), tc( 25,2,\'r\' ), tc( 26,2,\'r\' ), tc( 27,2,\'r\' ), + tc( 31,2,\'t\'), tc( 32,2,\'t\'), tc( 33,2,\'t\'), tc( 34,2,\'t\'), tc( 35,2,\'tr\'), tc( 36,2,\'tr\'), tc( 37,2,\'tr\'), + tc( 41,2 ), tc( 42,2 ), tc( 43,2 ), tc( 44,2 ), tc( 45,2,\'r\' ), tc( 46,2,\'r\' ), tc( 47,2,\'r\' ), + tc( 51,2 ), tc( 52,2 ), tc( 53,2 ), tc( 54,2 ), tc( 55,2,\'r\' ), tc( 56,2,\'r\' ), tc( 57,2,\'r\' ), + tc( 61,3 ), tc( 62,3 ), + tc( 71,3 ), tc( 72,3 ), + tc( 83,3 ), tc( 84,3 ), + tc( 91,2 ), tc( 92,2 ), tc( 93,2 ), tc( 94,2 ), tc( 95,2,\'r\' ), tc( 96,2,\'r\' ), tc( 97,2,\'r\' ), + tc(101,2 ), tc(102,2 ), tc(103,2 ), tc(104,2 ), tc(105,2,\'r\' ), tc(106,2,\'r\' ), tc(107,2,\'r\' ), + tc(111,2 ), tc(112,2 ), tc(113,2 ), tc(114,2 ), tc(115,2,\'r\' ), tc(116,2,\'r\' ), tc(117,2,\'r\' ), + tc(123,3 ), tc(124,3 ), + tc(131,3 ), tc(132,3 ), + tc(141,3 ), tc(142,3 ), + tc(153,3 ), tc(154,3 ), + tc(163,3 ), tc(164,3 ) + ); + + -- calcul par tableau pour chaque volume horaire + t.delete; + FOR it IN tableaux.FIRST .. tableaux.LAST LOOP + FOR ivh IN 1 .. ose_formule.volumes_horaires.length LOOP + vh_index := ivh; + IF + ose_formule.volumes_horaires.items(ivh).service_id IS NOT NULL AND NOT tableaux(it).referentiel + OR ose_formule.volumes_horaires.items(ivh).service_referentiel_id IS NOT NULL AND tableaux(it).referentiel + OR tableaux(it).setTotal -- car on en a besoin tout le temps + THEN + valeur := EXECFORMULE(tableaux(it).tableau, tableaux(it).version); + IF tableaux(it).setTotal THEN + ST( tableaux(it).tableau, valeur ); + ELSE + SV( tableaux(it).tableau, valeur ); + END IF; + END IF; + END LOOP; + END LOOP; + + -- transmission des résultats aux volumes horaires et volumes horaires référentiel + FOR i IN 1 .. ose_formule.volumes_horaires.length LOOP + vh_index := i; + IF ose_formule.volumes_horaires.items(i).service_id IS NOT NULL THEN + ose_formule.volumes_horaires.items(i).service_fi := gv( 61) + gv( 62); + ose_formule.volumes_horaires.items(i).service_fa := gv( 71) + gv( 72); + ose_formule.volumes_horaires.items(i).service_fc := gv( 83) + gv( 84); + ose_formule.volumes_horaires.items(i).heures_compl_fi := gv(131) + gv(132); + ose_formule.volumes_horaires.items(i).heures_compl_fa := gv(141) + gv(142); + ose_formule.volumes_horaires.items(i).heures_compl_fc := gv(153) + gv(154); + ose_formule.volumes_horaires.items(i).heures_compl_fc_majorees := gv(163) + gv(164); + ELSIF ose_formule.volumes_horaires.items(i).service_referentiel_id IS NOT NULL THEN + ose_formule.volumes_horaires.items(i).service_referentiel := gv( 55) + gv( 56) + gv( 57); + ose_formule.volumes_horaires.items(i).heures_compl_referentiel := gv(115) + gv(116) + gv(117); + END IF; + END LOOP; + + DEBUG_VH; + END; + + + + PROCEDURE PURGE_EM_NON_FC IS + BEGIN + FOR em IN ( + SELECT + em.id + FROM + ELEMENT_MODULATEUR em + JOIN element_pedagogique ep ON ep.id = em.element_id AND ep.histo_destruction IS NULL + WHERE + em.histo_destruction IS NULL + AND ep.taux_fc < 1 + ) LOOP + UPDATE + element_modulateur + SET + histo_destruction = SYSDATE, + histo_destructeur_id = ose_parametre.get_ose_user + WHERE + id = em.id + ; + END LOOP; + END; + + + + + FUNCTION INTERVENANT_QUERY RETURN CLOB IS + BEGIN + RETURN \' + SELECT + fi.*, + NULL param_1, + NULL param_2, + NULL param_3, + NULL param_4, + NULL param_5 + FROM + v_formule_intervenant fi + \'; + END; + + + + FUNCTION VOLUME_HORAIRE_QUERY RETURN CLOB IS + BEGIN + RETURN \' + SELECT + fvh.*, + NULL param_1, + NULL param_2, + NULL param_3, + NULL param_4, + NULL param_5 + FROM + v_formule_volume_horaire fvh + ORDER BY + ordre\'; + END; + +END FORMULE_UNICAEN;', + ), + 'OSE_CHARGENS' => + array ( + 'name' => 'OSE_CHARGENS', + 'definition' => 'CREATE OR REPLACE PACKAGE "OSE_CHARGENS" AS + ENABLE_TRIGGER_EFFECTIFS BOOLEAN DEFAULT TRUE; + + TYPE tnoeud_ids IS TABLE OF NUMERIC; + + FUNCTION GET_SCENARIO RETURN NUMERIC; + PROCEDURE SET_SCENARIO( SCENARIO NUMERIC ); + + FUNCTION GET_NOEUD RETURN NUMERIC; + PROCEDURE SET_NOEUD( NOEUD NUMERIC ); + + FUNCTION CALC_COEF( choix_min NUMERIC, choix_max NUMERIC, poids NUMERIC, max_poids NUMERIC, total_poids NUMERIC, nb_choix NUMERIC ) RETURN FLOAT; + + PROCEDURE DEM_CALC_SUB_EFFECTIF( scenario_noeud_id NUMERIC, type_heures_id NUMERIC, etape_id NUMERIC, effectif FLOAT ); + PROCEDURE CALC_SUB_EFFECTIF_DEM; + + PROCEDURE CALC_ALL_EFFECTIFS; + + PROCEDURE CALC_EFFECTIF( noeud_id NUMERIC, scenario_id NUMERIC, type_heures_id NUMERIC DEFAULT NULL, etape_id NUMERIC DEFAULT NULL); + PROCEDURE CALC_SUB_EFFECTIF2( noeud_id NUMERIC, scenario_id NUMERIC, type_heures_id NUMERIC DEFAULT NULL, etape_id NUMERIC DEFAULT NULL); + + PROCEDURE DUPLIQUER( source_id NUMERIC, destination_id NUMERIC, utilisateur_id NUMERIC, structure_id NUMERIC, noeuds VARCHAR2 DEFAULT \'\', liens VARCHAR2 DEFAULT \'\' ); + + PROCEDURE CONTROLE_SEUIL( ouverture NUMERIC, dedoublement NUMERIC ); + + FUNCTION GET_SCENARIO_NOEUD_ID( scenario_id NUMERIC, noeud_id NUMERIC ) RETURN NUMERIC; + FUNCTION CREER_SCENARIO_NOEUD( scenario_id NUMERIC, noeud_id NUMERIC, assiduite FLOAT DEFAULT 1 ) RETURN NUMERIC; + + PROCEDURE ADD_SCENARIO_NOEUD_EFFECTIF( scenario_noeud_id NUMERIC, type_heures_id NUMERIC, etape_id NUMERIC, effectif FLOAT ); + + PROCEDURE INIT_SCENARIO_NOEUD_EFFECTIF( + etape_id NUMERIC, + scenario_id NUMERIC, + type_heures_id NUMERIC, + effectif FLOAT, + surcharge BOOLEAN DEFAULT FALSE + ); + + PROCEDURE SET_PRECALC_HEURES_PARAMS( + annee_id NUMERIC DEFAULT NULL, + structure_id NUMERIC DEFAULT NULL, + scenario_id NUMERIC DEFAULT NULL, + type_heures_id NUMERIC DEFAULT NULL, + etape_id NUMERIC DEFAULT NULL, + noeud_ids tnoeud_ids DEFAULT NULL + ); + + FUNCTION MATCH_PRECALC_HEURES_PARAMS( + annee_id NUMERIC DEFAULT NULL, + structure_id NUMERIC DEFAULT NULL, + scenario_id NUMERIC DEFAULT NULL, + type_heures_id NUMERIC DEFAULT NULL, + etape_id NUMERIC DEFAULT NULL, + noeud_id NUMERIC DEFAULT NULL + ) RETURN NUMERIC; + + +END OSE_CHARGENS;', + 'body' => 'CREATE OR REPLACE PACKAGE BODY "OSE_CHARGENS" AS + SCENARIO NUMERIC; + NOEUD NUMERIC; + old_enable BOOLEAN DEFAULT TRUE; + + TYPE T_PRECALC_HEURES_PARAMS IS RECORD ( + annee_id NUMERIC DEFAULT NULL, + structure_id NUMERIC DEFAULT NULL, + scenario_id NUMERIC DEFAULT NULL, + type_heures_id NUMERIC DEFAULT NULL, + etape_id NUMERIC DEFAULT NULL, + noeud_ids tnoeud_ids DEFAULT NULL + ); + + PRECALC_HEURES_PARAMS T_PRECALC_HEURES_PARAMS; + + + FUNCTION GET_SCENARIO RETURN NUMERIC IS + BEGIN + RETURN OSE_CHARGENS.SCENARIO; + END; + + PROCEDURE SET_SCENARIO( SCENARIO NUMERIC ) IS + BEGIN + OSE_CHARGENS.SCENARIO := SET_SCENARIO.SCENARIO; + END; + + + + FUNCTION GET_NOEUD RETURN NUMERIC IS + BEGIN + RETURN OSE_CHARGENS.NOEUD; + END; + + PROCEDURE SET_NOEUD( NOEUD NUMERIC ) IS + BEGIN + OSE_CHARGENS.NOEUD := SET_NOEUD.NOEUD; + END; + + + + + + FUNCTION CALC_COEF( choix_min NUMERIC, choix_max NUMERIC, poids NUMERIC, max_poids NUMERIC, total_poids NUMERIC, nb_choix NUMERIC ) RETURN FLOAT IS + cmin NUMERIC; + cmax NUMERIC; + coef_choix FLOAT; + coef_poids FLOAT; + max_coef_poids FLOAT; + correcteur FLOAT DEFAULT 1; + res FLOAT; + BEGIN + cmin := choix_min; + cmax := choix_max; + + IF total_poids = 0 THEN RETURN 0; END IF; + + IF cmax IS NULL OR cmax > nb_choix THEN + cmax := nb_choix; + END IF; + IF cmin IS NULL THEN + cmin := nb_choix; + ELSIF cmin > cmax THEN + cmin := cmax; + END IF; + + coef_choix := (cmin + cmax) / 2 / nb_choix; + + coef_poids := poids / total_poids; + + max_coef_poids := max_poids / total_poids; + + IF (coef_choix * nb_choix * max_coef_poids) <= 1 THEN + res := coef_choix * nb_choix * coef_poids; + ELSE + correcteur := 1; + res := coef_choix * nb_choix * (coef_poids + (((1/nb_choix)-coef_poids)*correcteur)); + END IF; + + --ose_test.echo(\'choix_min= \' || cmin || \', choix_max= \' || cmax || \', poids = \' || poids || \', max_poids = \' || max_poids || \', total_poids = \' || total_poids || \', nb_choix = \' || nb_choix || \', RES = \' || res); + RETURN res; + END; + + + PROCEDURE DEM_CALC_SUB_EFFECTIF( scenario_noeud_id NUMERIC, type_heures_id NUMERIC, etape_id NUMERIC, effectif FLOAT ) IS + BEGIN + INSERT INTO TMP_scenario_noeud_effectif( + scenario_noeud_id, type_heures_id, etape_id, effectif + ) VALUES( + scenario_noeud_id, type_heures_id, etape_id, effectif + ); + END; + + + + PROCEDURE CALC_SUB_EFFECTIF_DEM IS + BEGIN + DELETE FROM TMP_scenario_noeud_effectif; + END; + + + PROCEDURE CALC_ALL_EFFECTIFS IS + BEGIN + FOR p IN ( + + SELECT + sn.noeud_id, + sn.scenario_id, + sne.type_heures_id, + sne.etape_id + FROM + scenario_noeud_effectif sne + JOIN scenario_noeud sn ON sn.id = sne.scenario_noeud_id + JOIN noeud n ON n.id = sn.noeud_id + WHERE + n.etape_id IS NOT NULL + + ) LOOP + + CALC_SUB_EFFECTIF2( p.noeud_id, p.scenario_id, p.type_heures_id, p.etape_id ); + END LOOP; + + END; + + + + PROCEDURE CALC_EFFECTIF( + noeud_id NUMERIC, + scenario_id NUMERIC, + type_heures_id NUMERIC DEFAULT NULL, + etape_id NUMERIC DEFAULT NULL + ) IS + snid NUMERIC; + BEGIN + UPDATE scenario_noeud_effectif SET effectif = 0 + WHERE + scenario_noeud_id = ( + SELECT id FROM scenario_noeud WHERE noeud_id = CALC_EFFECTIF.noeud_id AND scenario_id = CALC_EFFECTIF.scenario_id + ) + AND (type_heures_id = CALC_EFFECTIF.type_heures_id OR CALC_EFFECTIF.type_heures_id IS NULL) + AND (etape_id = CALC_EFFECTIF.etape_id OR CALC_EFFECTIF.etape_id IS NULL) + ; + + FOR p IN ( + + SELECT + * + FROM + v_chargens_calc_effectif cce + WHERE + cce.noeud_id = CALC_EFFECTIF.noeud_id + AND cce.scenario_id = CALC_EFFECTIF.scenario_id + AND (cce.type_heures_id = CALC_EFFECTIF.type_heures_id OR CALC_EFFECTIF.type_heures_id IS NULL) + AND (cce.etape_id = CALC_EFFECTIF.etape_id OR CALC_EFFECTIF.etape_id IS NULL) + + ) LOOP + snid := OSE_CHARGENS.GET_SCENARIO_NOEUD_ID( p.scenario_id, p.noeud_id ); + IF snid IS NULL THEN + snid := OSE_CHARGENS.CREER_SCENARIO_NOEUD( p.scenario_id, p.noeud_id ); + END IF; + ADD_SCENARIO_NOEUD_EFFECTIF( snid, p.type_heures_id, p.etape_id, p.effectif ); + END LOOP; + CALC_SUB_EFFECTIF2( noeud_id, scenario_id, type_heures_id, etape_id ); + END; + + + + PROCEDURE CALC_SUB_EFFECTIF2( noeud_id NUMERIC, scenario_id NUMERIC, type_heures_id NUMERIC DEFAULT NULL, etape_id NUMERIC DEFAULT NULL) IS + BEGIN + FOR p IN ( + + SELECT * + FROM V_CHARGENS_GRANDS_LIENS cgl + WHERE cgl.noeud_sup_id = CALC_SUB_EFFECTIF2.noeud_id + + ) LOOP + CALC_EFFECTIF( p.noeud_inf_id, scenario_id, type_heures_id, etape_id ); + END LOOP; + END; + + + + PROCEDURE DUPLIQUER( source_id NUMERIC, destination_id NUMERIC, utilisateur_id NUMERIC, structure_id NUMERIC, noeuds VARCHAR2 DEFAULT \'\', liens VARCHAR2 DEFAULT \'\' ) IS + BEGIN + + /* Destruction de tous les liens antérieurs de la destination */ + DELETE FROM + scenario_lien + WHERE + scenario_id = DUPLIQUER.destination_id + AND histo_destruction IS NULL + AND (DUPLIQUER.LIENS IS NULL OR DUPLIQUER.LIENS LIKE \'%,\' || lien_id || \',%\' ) + AND (DUPLIQUER.STRUCTURE_ID IS NULL OR lien_id IN ( + SELECT id FROM lien WHERE lien.structure_id = DUPLIQUER.STRUCTURE_ID + )) + ; + + /* Duplication des liens */ + INSERT INTO scenario_lien ( + id, + scenario_id, lien_id, + actif, poids, + choix_minimum, choix_maximum, + source_id, source_code, + histo_creation, histo_createur_id, + histo_modification, histo_modificateur_id + ) SELECT + scenario_lien_id_seq.nextval, + DUPLIQUER.destination_id, sl.lien_id, + sl.actif, sl.poids, + sl.choix_minimum, sl.choix_maximum, + source.id, \'dupli_\' || sl.id || \'_\' || sl.lien_id || \'_\' || trunc(dbms_random.value(1,10000000000000)), + sysdate, DUPLIQUER.utilisateur_id, + sysdate, DUPLIQUER.utilisateur_id + FROM + scenario_lien sl + JOIN lien l ON l.id = sl.lien_id + JOIN source ON source.code = \'OSE\' + WHERE + sl.scenario_id = DUPLIQUER.source_id + AND sl.histo_destruction IS NULL + AND (DUPLIQUER.LIENS IS NULL OR DUPLIQUER.LIENS LIKE \'%,\' || lien_id || \',%\' ) + AND (DUPLIQUER.STRUCTURE_ID IS NULL OR l.structure_id = DUPLIQUER.STRUCTURE_ID) + ; + + + /* Destruction de tous les noeuds antérieurs de la destination */ + DELETE FROM + scenario_noeud + WHERE + scenario_id = DUPLIQUER.destination_id + AND histo_destruction IS NULL + AND (DUPLIQUER.NOEUDS IS NULL OR DUPLIQUER.NOEUDS LIKE \'%,\' || noeud_id || \',%\' ) + AND (DUPLIQUER.STRUCTURE_ID IS NULL OR scenario_noeud.noeud_id IN ( + SELECT id FROM noeud WHERE noeud.structure_id = DUPLIQUER.STRUCTURE_ID + )) + ; + + /* Duplication des noeuds */ + INSERT INTO scenario_noeud ( + id, + scenario_id, noeud_id, + assiduite, + source_id, source_code, + histo_creation, histo_createur_id, + histo_modification, histo_modificateur_id + ) SELECT + scenario_noeud_id_seq.nextval, + DUPLIQUER.destination_id, sn.noeud_id, + sn.assiduite, + source.id, \'dupli_\' || sn.id || \'_\' || sn.noeud_id || \'_\' || trunc(dbms_random.value(1,10000000000000)), + sysdate, DUPLIQUER.utilisateur_id, + sysdate, DUPLIQUER.utilisateur_id + FROM + scenario_noeud sn + JOIN noeud n ON n.id = sn.noeud_id + JOIN source ON source.code = \'OSE\' + WHERE + sn.scenario_id = DUPLIQUER.source_id + AND sn.histo_destruction IS NULL + AND (DUPLIQUER.NOEUDS IS NULL OR DUPLIQUER.NOEUDS LIKE \'%,\' || noeud_id || \',%\' ) + AND (DUPLIQUER.STRUCTURE_ID IS NULL OR n.structure_id = DUPLIQUER.STRUCTURE_ID) + ; + + /* Duplication des effectifs */ + INSERT INTO scenario_noeud_effectif ( + id, + scenario_noeud_id, + type_heures_id, + effectif, + etape_id + ) SELECT + scenario_noeud_effectif_id_seq.nextval, + sn_dst.id, + sne.type_heures_id, + sne.effectif, + sne.etape_id + FROM + scenario_noeud_effectif sne + JOIN scenario_noeud sn_src ON sn_src.id = sne.scenario_noeud_id + JOIN scenario_noeud sn_dst ON sn_dst.scenario_id = DUPLIQUER.destination_id AND sn_dst.noeud_id = sn_src.noeud_id + JOIN noeud n ON n.id = sn_src.noeud_id + WHERE + sn_src.scenario_id = DUPLIQUER.source_id + AND sn_src.histo_destruction IS NULL + AND (DUPLIQUER.NOEUDS IS NULL OR DUPLIQUER.NOEUDS LIKE \'%,\' || sn_src.noeud_id || \',%\' ) + AND (DUPLIQUER.STRUCTURE_ID IS NULL OR n.structure_id = DUPLIQUER.STRUCTURE_ID) + ; + + /* Duplication des seuils */ + INSERT INTO scenario_noeud_seuil ( + id, + scenario_noeud_id, + type_intervention_id, + ouverture, + dedoublement + ) SELECT + scenario_noeud_seuil_id_seq.nextval, + sn_dst.id, + sns.type_intervention_id, + sns.ouverture, + sns.dedoublement + FROM + scenario_noeud_seuil sns + JOIN scenario_noeud sn_src ON sn_src.id = sns.scenario_noeud_id + JOIN scenario_noeud sn_dst ON sn_dst.scenario_id = DUPLIQUER.destination_id AND sn_dst.noeud_id = sn_src.noeud_id + JOIN noeud n ON n.id = sn_src.noeud_id + WHERE + sn_src.scenario_id = DUPLIQUER.source_id + AND sn_src.histo_destruction IS NULL + AND (DUPLIQUER.NOEUDS IS NULL OR DUPLIQUER.NOEUDS LIKE \'%,\' || sn_src.noeud_id || \',%\' ) + AND (DUPLIQUER.STRUCTURE_ID IS NULL OR n.structure_id = DUPLIQUER.STRUCTURE_ID) + ; + END; + + + + PROCEDURE CONTROLE_SEUIL( ouverture NUMERIC, dedoublement NUMERIC ) IS + BEGIN + IF ouverture IS NOT NULL THEN + IF ouverture < 1 THEN + raise_application_error(-20101, \'Le seuil d\'\'ouverture doit être supérieur ou égal à 1\'); + END IF; + END IF; + + IF dedoublement IS NOT NULL THEN + IF dedoublement < 1 THEN + raise_application_error(-20101, \'Le seuil de dédoublement doit être supérieur ou égal à 1\'); + END IF; + END IF; + + IF ouverture IS NOT NULL AND dedoublement IS NOT NULL THEN + IF dedoublement < ouverture THEN + raise_application_error(-20101, \'Le seuil de dédoublement doit être supérieur ou égal au seuil d\'\'ouverture\'); + END IF; + END IF; + END; + + + FUNCTION CREER_SCENARIO_NOEUD( scenario_id NUMERIC, noeud_id NUMERIC, assiduite FLOAT DEFAULT 1 ) RETURN NUMERIC IS + new_id NUMERIC; + BEGIN + new_id := SCENARIO_NOEUD_ID_SEQ.NEXTVAL; +--ose_test.echo(scenario_id || \'-\' || noeud_id); + INSERT INTO SCENARIO_NOEUD( + ID, + SCENARIO_ID, + NOEUD_ID, + ASSIDUITE, + SOURCE_ID, + SOURCE_CODE, + HEURES, + HISTO_CREATION, + HISTO_CREATEUR_ID, + HISTO_MODIFICATION, + HISTO_MODIFICATEUR_ID + ) VALUES ( + new_id, + CREER_SCENARIO_NOEUD.scenario_id, + CREER_SCENARIO_NOEUD.noeud_id, + CREER_SCENARIO_NOEUD.assiduite, + OSE_DIVERS.GET_OSE_SOURCE_ID, + \'OSE_NEW_SN_\' || new_id, + null, + SYSDATE, + OSE_DIVERS.GET_OSE_UTILISATEUR_ID, + SYSDATE, + OSE_DIVERS.GET_OSE_UTILISATEUR_ID + ); + RETURN new_id; + END; + + + FUNCTION GET_SCENARIO_NOEUD_ID(scenario_id NUMERIC, noeud_id NUMERIC) RETURN NUMERIC IS + res NUMERIC; + BEGIN + SELECT + sn.id INTO res + FROM + scenario_noeud sn + WHERE + sn.noeud_id = GET_SCENARIO_NOEUD_ID.noeud_id + AND sn.scenario_id = GET_SCENARIO_NOEUD_ID.scenario_id + AND sn.histo_destruction IS NULL; + + RETURN res; + + EXCEPTION WHEN NO_DATA_FOUND THEN + RETURN NULL; + END; + + + PROCEDURE ADD_SCENARIO_NOEUD_EFFECTIF( scenario_noeud_id NUMERIC, type_heures_id NUMERIC, etape_id NUMERIC, effectif FLOAT ) IS + old_enable BOOLEAN; + BEGIN + old_enable := ose_chargens.ENABLE_TRIGGER_EFFECTIFS; + ose_chargens.ENABLE_TRIGGER_EFFECTIFS := false; + + MERGE INTO scenario_noeud_effectif sne USING dual ON ( + + sne.scenario_noeud_id = ADD_SCENARIO_NOEUD_EFFECTIF.scenario_noeud_id + AND sne.type_heures_id = ADD_SCENARIO_NOEUD_EFFECTIF.type_heures_id + AND sne.etape_id = ADD_SCENARIO_NOEUD_EFFECTIF.etape_id + + ) WHEN MATCHED THEN UPDATE SET + + effectif = effectif + ADD_SCENARIO_NOEUD_EFFECTIF.effectif + + WHEN NOT MATCHED THEN INSERT ( + + ID, + SCENARIO_NOEUD_ID, + TYPE_HEURES_ID, + ETAPE_ID, + EFFECTIF + + ) VALUES ( + + SCENARIO_NOEUD_EFFECTIF_ID_SEQ.NEXTVAL, + ADD_SCENARIO_NOEUD_EFFECTIF.scenario_noeud_id, + ADD_SCENARIO_NOEUD_EFFECTIF.type_heures_id, + ADD_SCENARIO_NOEUD_EFFECTIF.etape_id, + ADD_SCENARIO_NOEUD_EFFECTIF.effectif + + ); + + DELETE FROM scenario_noeud_effectif WHERE effectif = 0; + + ose_chargens.ENABLE_TRIGGER_EFFECTIFS := old_enable; + END; + + + + PROCEDURE INIT_SCENARIO_NOEUD_EFFECTIF( + etape_id NUMERIC, + scenario_id NUMERIC, + type_heures_id NUMERIC, + effectif FLOAT, + surcharge BOOLEAN DEFAULT FALSE + ) IS + noeud_id NUMERIC; + scenario_noeud_id NUMERIC; + scenario_noeud_effectif_id NUMERIC; + BEGIN + SELECT + n.id, sn.id, sne.id + INTO + noeud_id, scenario_noeud_id, scenario_noeud_effectif_id + FROM + noeud n + LEFT JOIN scenario_noeud sn ON sn.noeud_id = n.id + AND sn.histo_destruction IS NULL + AND sn.scenario_id = INIT_SCENARIO_NOEUD_EFFECTIF.scenario_id + + LEFT JOIN scenario_noeud_effectif sne ON sne.scenario_noeud_id = sn.id + AND sne.type_heures_id = INIT_SCENARIO_NOEUD_EFFECTIF.type_heures_id + WHERE + n.etape_id = INIT_SCENARIO_NOEUD_EFFECTIF.etape_id + AND n.histo_destruction IS NULL + ; + + IF noeud_id IS NULL THEN RETURN; END IF; + + IF scenario_noeud_id IS NULL THEN + scenario_noeud_id := CREER_SCENARIO_NOEUD( scenario_id, noeud_id ); + END IF; + + IF scenario_noeud_effectif_id IS NULL THEN + scenario_noeud_effectif_id := SCENARIO_NOEUD_EFFECTIF_ID_SEQ.NEXTVAL; + INSERT INTO scenario_noeud_effectif ( + id, + scenario_noeud_id, + type_heures_id, + effectif, + etape_id + ) VALUES ( + scenario_noeud_effectif_id, + scenario_noeud_id, + INIT_SCENARIO_NOEUD_EFFECTIF.type_heures_id, + INIT_SCENARIO_NOEUD_EFFECTIF.effectif, + INIT_SCENARIO_NOEUD_EFFECTIF.etape_id + ); + ELSIF surcharge THEN + UPDATE scenario_noeud_effectif SET effectif = INIT_SCENARIO_NOEUD_EFFECTIF.effectif WHERE id = scenario_noeud_effectif_id; + END IF; + + CALC_SUB_EFFECTIF2( noeud_id, scenario_id, type_heures_id, etape_id ); + + EXCEPTION WHEN NO_DATA_FOUND THEN + RETURN; + END; + + + + PROCEDURE SET_PRECALC_HEURES_PARAMS( + annee_id NUMERIC DEFAULT NULL, + structure_id NUMERIC DEFAULT NULL, + scenario_id NUMERIC DEFAULT NULL, + type_heures_id NUMERIC DEFAULT NULL, + etape_id NUMERIC DEFAULT NULL, + noeud_ids tnoeud_ids DEFAULT NULL + ) IS + BEGIN + PRECALC_HEURES_PARAMS.ANNEE_ID := ANNEE_ID; + PRECALC_HEURES_PARAMS.STRUCTURE_ID := STRUCTURE_ID; + PRECALC_HEURES_PARAMS.SCENARIO_ID := SCENARIO_ID; + PRECALC_HEURES_PARAMS.TYPE_HEURES_ID := TYPE_HEURES_ID; + PRECALC_HEURES_PARAMS.ETAPE_ID := ETAPE_ID; + PRECALC_HEURES_PARAMS.NOEUD_IDS := noeud_ids; + END; + + + + FUNCTION MATCH_PRECALC_HEURES_PARAMS( + annee_id NUMERIC DEFAULT NULL, + structure_id NUMERIC DEFAULT NULL, + scenario_id NUMERIC DEFAULT NULL, + type_heures_id NUMERIC DEFAULT NULL, + etape_id NUMERIC DEFAULT NULL, + noeud_id NUMERIC DEFAULT NULL + ) RETURN NUMERIC IS + BEGIN + + IF PRECALC_HEURES_PARAMS.noeud_ids IS NOT NULL THEN + IF NOT (noeud_id MEMBER OF PRECALC_HEURES_PARAMS.noeud_ids) THEN + RETURN 0; + END IF; + END IF; + + IF annee_id <> COALESCE(PRECALC_HEURES_PARAMS.annee_id, annee_id) THEN + RETURN 0; + END IF; + + IF structure_id <> COALESCE(PRECALC_HEURES_PARAMS.structure_id, structure_id) THEN + RETURN 0; + END IF; + + IF scenario_id <> COALESCE(PRECALC_HEURES_PARAMS.scenario_id, scenario_id) THEN + RETURN 0; + END IF; + + IF type_heures_id <> COALESCE(PRECALC_HEURES_PARAMS.type_heures_id, type_heures_id) THEN + RETURN 0; + END IF; + + IF etape_id <> COALESCE(PRECALC_HEURES_PARAMS.etape_id, etape_id) THEN + RETURN 0; + END IF; + + RETURN 1; + END; + + + FUNCTION GET_PRECALC_HEURES_ANNEE RETURN NUMERIC IS + BEGIN + RETURN PRECALC_HEURES_PARAMS.ANNEE_ID; + END; + + + + FUNCTION GET_PRECALC_HEURES_STRUCTURE RETURN NUMERIC IS + BEGIN + RETURN PRECALC_HEURES_PARAMS.STRUCTURE_ID; + END; + + + + FUNCTION GET_PRECALC_HEURES_SCENARIO RETURN NUMERIC IS + BEGIN + RETURN PRECALC_HEURES_PARAMS.SCENARIO_ID; + END; + + + + FUNCTION GET_PRECALC_HEURES_TYPE_HEURES RETURN NUMERIC IS + BEGIN + RETURN PRECALC_HEURES_PARAMS.TYPE_HEURES_ID; + END; + + + + FUNCTION GET_PRECALC_HEURES_ETAPE RETURN NUMERIC IS + BEGIN + RETURN PRECALC_HEURES_PARAMS.ETAPE_ID; + END; + +-- FUNCTION GET_PRECALC_HEURES_NOEUD RETURN NUMERIC IS +-- BEGIN + +-- END; + +END OSE_CHARGENS;', + ), + 'OSE_DIVERS' => + array ( + 'name' => 'OSE_DIVERS', + 'definition' => 'CREATE OR REPLACE PACKAGE "OSE_DIVERS" AS + + PROCEDURE CALCULER_TABLEAUX_BORD; + + FUNCTION GET_OSE_UTILISATEUR_ID RETURN NUMERIC; + FUNCTION GET_OSE_SOURCE_ID RETURN NUMERIC; + + FUNCTION INTERVENANT_HAS_PRIVILEGE( intervenant_id NUMERIC, privilege_name VARCHAR2 ) RETURN NUMERIC; + + FUNCTION implode(i_query VARCHAR2, i_seperator VARCHAR2 DEFAULT \',\') RETURN VARCHAR2; + + PROCEDURE intervenant_horodatage_service( INTERVENANT_ID NUMERIC, TYPE_VOLUME_HORAIRE_ID NUMERIC, REFERENTIEL NUMERIC, HISTO_MODIFICATEUR_ID NUMERIC, HISTO_MODIFICATION DATE ); + + FUNCTION NIVEAU_FORMATION_ID_CALC( gtf_id NUMERIC, gtf_pertinence_niveau NUMERIC, niveau NUMERIC DEFAULT NULL ) RETURN NUMERIC; + + FUNCTION STR_REDUCE( str VARCHAR2 ) RETURN VARCHAR2; + + FUNCTION STR_FIND( haystack VARCHAR2, needle VARCHAR2 ) RETURN NUMERIC; + + FUNCTION LIKED( haystack VARCHAR2, needle VARCHAR2 ) RETURN NUMERIC; + + FUNCTION CALCUL_TAUX_FI( eff_fi FLOAT, eff_fc FLOAT, eff_fa FLOAT, fi NUMERIC, fc NUMERIC, fa NUMERIC, arrondi NUMERIC DEFAULT 15 ) RETURN FLOAT; + + FUNCTION CALCUL_TAUX_FC( eff_fi FLOAT, eff_fc FLOAT, eff_fa FLOAT, fi NUMERIC, fc NUMERIC, fa NUMERIC, arrondi NUMERIC DEFAULT 15 ) RETURN FLOAT; + + FUNCTION CALCUL_TAUX_FA( eff_fi FLOAT, eff_fc FLOAT, eff_fa FLOAT, fi NUMERIC, fc NUMERIC, fa NUMERIC, arrondi NUMERIC DEFAULT 15 ) RETURN FLOAT; + + PROCEDURE SYNC_LOG( msg VARCHAR2 ); + + FUNCTION FORMATTED_RIB (bic VARCHAR2, iban VARCHAR2) RETURN VARCHAR2; + + FUNCTION FORMATTED_ADRESSE( + no_voie VARCHAR2, + nom_voie VARCHAR2, + batiment VARCHAR2, + mention_complementaire VARCHAR2, + localite VARCHAR2, + code_postal VARCHAR2, + ville VARCHAR2, + pays_libelle VARCHAR2) + RETURN VARCHAR2; + + PROCEDURE CALCUL_FEUILLE_DE_ROUTE( CONDS VARCHAR2 ); + + FUNCTION GET_TRIGGER_BODY( TRIGGER_NAME VARCHAR2 ) RETURN VARCHAR2; +END OSE_DIVERS;', + 'body' => 'CREATE OR REPLACE PACKAGE BODY "OSE_DIVERS" AS + OSE_UTILISATEUR_ID NUMERIC; + OSE_SOURCE_ID NUMERIC; + + + + + PROCEDURE CALCULER_TABLEAUX_BORD IS + BEGIN + FOR d IN ( + SELECT tbl_name + FROM tbl + WHERE tbl_name <> \'formule\' -- TROP LONG !! + ORDER BY ordre + ) + LOOP + UNICAEN_TBL.CALCULER(d.tbl_name); + dbms_output.put_line(\'Calcul du tableau de bord "\' || d.tbl_name || \'" effectué\'); + COMMIT; + END LOOP; + END; + + + + FUNCTION GET_OSE_UTILISATEUR_ID RETURN NUMERIC IS + BEGIN + IF OSE_DIVERS.OSE_UTILISATEUR_ID IS NULL THEN + SELECT + to_number(valeur) INTO OSE_DIVERS.OSE_UTILISATEUR_ID + FROM + parametre + WHERE + nom = \'oseuser\'; + END IF; + + RETURN OSE_DIVERS.OSE_UTILISATEUR_ID; + END; + + + + FUNCTION GET_OSE_SOURCE_ID RETURN NUMERIC IS + BEGIN + IF OSE_DIVERS.OSE_SOURCE_ID IS NULL THEN + SELECT + id INTO OSE_DIVERS.OSE_SOURCE_ID + FROM + source + WHERE + code = \'OSE\'; + END IF; + + RETURN OSE_DIVERS.OSE_SOURCE_ID; + END; + + + + FUNCTION INTERVENANT_HAS_PRIVILEGE( intervenant_id NUMERIC, privilege_name VARCHAR2 ) RETURN NUMERIC IS + statut statut_intervenant%rowtype; + itype type_intervenant%rowtype; + res NUMERIC; + BEGIN + res := 1; + SELECT si.* INTO statut FROM statut_intervenant si JOIN intervenant i ON i.statut_id = si.id WHERE i.id = intervenant_id; + SELECT ti.* INTO itype FROM type_intervenant ti WHERE ti.id = statut.type_intervenant_id; + + /* DEPRECATED */ + IF \'saisie_service\' = privilege_name THEN + res := statut.peut_saisir_service; + RETURN res; + ELSIF \'saisie_service_exterieur\' = privilege_name THEN + --IF INTERVENANT_HAS_PRIVILEGE( intervenant_id, \'saisie_service\' ) = 0 OR itype.code = \'E\' THEN -- cascade + IF itype.code = \'E\' THEN + res := 0; + END IF; + RETURN res; + ELSIF \'saisie_service_referentiel\' = privilege_name THEN + IF itype.code = \'E\' THEN + res := 0; + END IF; + RETURN res; + ELSIF \'saisie_service_referentiel_autre_structure\' = privilege_name THEN + res := 1; + RETURN res; + ELSIF \'saisie_motif_non_paiement\' = privilege_name THEN + res := statut.peut_saisir_motif_non_paiement; + RETURN res; + END IF; + /* FIN DE DEPRECATED */ + + SELECT + count(*) + INTO + res + FROM + intervenant i + JOIN statut_privilege sp ON sp.statut_id = i.statut_id + JOIN privilege p ON p.id = sp.privilege_id + JOIN categorie_privilege cp ON cp.id = p.categorie_id + WHERE + i.id = INTERVENANT_HAS_PRIVILEGE.intervenant_id + AND cp.code || \'-\' || p.code = privilege_name; + + RETURN res; + END; + + FUNCTION implode(i_query VARCHAR2, i_seperator VARCHAR2 DEFAULT \',\') RETURN VARCHAR2 AS + l_return CLOB:=\'\'; + l_temp CLOB; + TYPE r_cursor is REF CURSOR; + rc r_cursor; + BEGIN + OPEN rc FOR i_query; + LOOP + FETCH rc INTO L_TEMP; + EXIT WHEN RC%NOTFOUND; + l_return:=l_return||L_TEMP||i_seperator; + END LOOP; + RETURN RTRIM(l_return,i_seperator); + END; + + PROCEDURE intervenant_horodatage_service( INTERVENANT_ID NUMERIC, TYPE_VOLUME_HORAIRE_ID NUMERIC, REFERENTIEL NUMERIC, HISTO_MODIFICATEUR_ID NUMERIC, HISTO_MODIFICATION DATE ) AS + BEGIN + MERGE INTO histo_intervenant_service his USING dual ON ( + + his.INTERVENANT_ID = intervenant_horodatage_service.INTERVENANT_ID + AND NVL(his.TYPE_VOLUME_HORAIRE_ID,0) = NVL(intervenant_horodatage_service.TYPE_VOLUME_HORAIRE_ID,0) + AND his.REFERENTIEL = intervenant_horodatage_service.REFERENTIEL + + ) WHEN MATCHED THEN UPDATE SET + + HISTO_MODIFICATEUR_ID = intervenant_horodatage_service.HISTO_MODIFICATEUR_ID, + HISTO_MODIFICATION = intervenant_horodatage_service.HISTO_MODIFICATION + + WHEN NOT MATCHED THEN INSERT ( + + ID, + INTERVENANT_ID, + TYPE_VOLUME_HORAIRE_ID, + REFERENTIEL, + HISTO_MODIFICATEUR_ID, + HISTO_MODIFICATION + ) VALUES ( + HISTO_INTERVENANT_SERVI_ID_SEQ.NEXTVAL, + intervenant_horodatage_service.INTERVENANT_ID, + intervenant_horodatage_service.TYPE_VOLUME_HORAIRE_ID, + intervenant_horodatage_service.REFERENTIEL, + intervenant_horodatage_service.HISTO_MODIFICATEUR_ID, + intervenant_horodatage_service.HISTO_MODIFICATION + + ); + END; + + + FUNCTION NIVEAU_FORMATION_ID_CALC( gtf_id NUMERIC, gtf_pertinence_niveau NUMERIC, niveau NUMERIC DEFAULT NULL ) RETURN NUMERIC AS + BEGIN + IF 1 <> gtf_pertinence_niveau OR niveau IS NULL OR niveau < 1 OR gtf_id < 1 THEN RETURN NULL; END IF; + RETURN gtf_id * 256 + niveau; + END; + + FUNCTION STR_REDUCE( str VARCHAR2 ) RETURN VARCHAR2 IS + BEGIN + RETURN RTRIM(utl_raw.cast_to_varchar2((nlssort(str, \'nls_sort=binary_ai\'))),CHR(0)); + END; + + FUNCTION STR_FIND( haystack VARCHAR2, needle VARCHAR2 ) RETURN NUMERIC IS + BEGIN + IF STR_REDUCE( haystack ) LIKE STR_REDUCE( \'%\' || needle || \'%\' ) THEN RETURN 1; END IF; + RETURN 0; + END; + + FUNCTION LIKED( haystack VARCHAR2, needle VARCHAR2 ) RETURN NUMERIC IS + BEGIN + RETURN CASE WHEN STR_REDUCE(haystack) LIKE STR_REDUCE(needle) THEN 1 ELSE 0 END; + END; + + PROCEDURE DO_NOTHING IS + BEGIN + RETURN; + END; + + PROCEDURE CALCUL_TAUX( eff_fi FLOAT, eff_fc FLOAT, eff_fa FLOAT, fi NUMERIC, fc NUMERIC, fa NUMERIC, r_fi OUT FLOAT, r_fc OUT FLOAT, r_fa OUT FLOAT, arrondi NUMERIC DEFAULT 15 ) IS + nt FLOAT; + bi FLOAT; + bc FLOAT; + ba FLOAT; + reste FLOAT; + BEGIN + bi := eff_fi * fi; + bc := eff_fc * fc; + ba := eff_fa * fa; + nt := bi + bc + ba; + + IF nt = 0 THEN -- au cas ou, alors on ne prend plus en compte les effectifs!! + bi := fi; + bc := fc; + ba := fa; + nt := bi + bc + ba; + END IF; + + IF nt = 0 THEN -- toujours au cas ou... + bi := 1; + bc := 0; + ba := 0; + nt := bi + bc + ba; + END IF; + + -- Calcul + r_fi := bi / nt; + r_fc := bc / nt; + r_fa := ba / nt; + + -- Arrondis + r_fi := ROUND( r_fi, arrondi ); + r_fc := ROUND( r_fc, arrondi ); + r_fa := ROUND( r_fa, arrondi ); + + -- détermination du reste + reste := 1 - r_fi - r_fc - r_fa; + + -- répartition éventuelle du reste + IF reste <> 0 THEN + IF r_fi > 0 THEN r_fi := r_fi + reste; + ELSIF r_fc > 0 THEN r_fc := r_fc + reste; + ELSE r_fa := r_fa + reste; END IF; + END IF; + + END; + + + FUNCTION CALCUL_TAUX_FI( eff_fi FLOAT, eff_fc FLOAT, eff_fa FLOAT, fi NUMERIC, fc NUMERIC, fa NUMERIC, arrondi NUMERIC DEFAULT 15 ) RETURN FLOAT IS + ri FLOAT; + rc FLOAT; + ra FLOAT; + BEGIN + CALCUL_TAUX( eff_fi, eff_fc, eff_fa, fi, fc, fa, ri, rc, ra, arrondi ); + RETURN ri; + END; + + FUNCTION CALCUL_TAUX_FC( eff_fi FLOAT, eff_fc FLOAT, eff_fa FLOAT, fi NUMERIC, fc NUMERIC, fa NUMERIC, arrondi NUMERIC DEFAULT 15 ) RETURN FLOAT IS + ri FLOAT; + rc FLOAT; + ra FLOAT; + BEGIN + CALCUL_TAUX( eff_fi, eff_fc, eff_fa, fi, fc, fa, ri, rc, ra, arrondi ); + RETURN rc; + END; + + FUNCTION CALCUL_TAUX_FA( eff_fi FLOAT, eff_fc FLOAT, eff_fa FLOAT, fi NUMERIC, fc NUMERIC, fa NUMERIC, arrondi NUMERIC DEFAULT 15 ) RETURN FLOAT IS + ri FLOAT; + rc FLOAT; + ra FLOAT; + BEGIN + CALCUL_TAUX( eff_fi, eff_fc, eff_fa, fi, fc, fa, ri, rc, ra, arrondi ); + RETURN ra; + END; + + PROCEDURE SYNC_LOG( msg VARCHAR2 ) IS + BEGIN + INSERT INTO SYNC_LOG( id, date_sync, message ) VALUES ( sync_log_id_seq.nextval, systimestamp, msg ); + END; + + FUNCTION FORMATTED_RIB (bic VARCHAR2, iban VARCHAR2) RETURN VARCHAR2 IS + BEGIN + if bic is null and iban is null then + return null; + end if; + RETURN regexp_replace(bic, \'[[:space:]]+\', \'\') || \'-\' || regexp_replace(iban, \'[[:space:]]+\', \'\'); + END; + + FUNCTION FORMATTED_ADRESSE( + no_voie VARCHAR2, + nom_voie VARCHAR2, + batiment VARCHAR2, + mention_complementaire VARCHAR2, + localite VARCHAR2, + code_postal VARCHAR2, + ville VARCHAR2, + pays_libelle VARCHAR2) + RETURN VARCHAR2 + IS + BEGIN + return + -- concaténation des éléments non null séparés par \', \' + trim(trim(\',\' FROM REPLACE(\', \' || NVL(no_voie,\'#\') || \', \' || NVL(nom_voie,\'#\') || \', \' || NVL(batiment,\'#\') || \', \' || NVL(mention_complementaire,\'#\'), \', #\', \'\'))) || + -- saut de ligne complet + chr(13) || chr(10) || + -- concaténation des éléments non null séparés par \', \' + trim(trim(\',\' FROM REPLACE(\', \' || NVL(localite,\'#\') || \', \' || NVL(code_postal,\'#\') || \', \' || NVL(ville,\'#\') || \', \' || NVL(pays_libelle,\'#\'), \', #\', \'\'))); + END; + + + + PROCEDURE CALCUL_FEUILLE_DE_ROUTE( CONDS VARCHAR2 ) IS + BEGIN + FOR d IN ( + SELECT tbl_name + FROM tbl + WHERE feuille_de_route = 1 + ORDER BY ordre + ) LOOP + UNICAEN_TBL.CALCULER(d.tbl_name,CONDS); + END LOOP; + END; + + + + FUNCTION GET_TRIGGER_BODY( TRIGGER_NAME VARCHAR2 ) RETURN VARCHAR2 IS + vlong long; + BEGIN + SELECT trigger_body INTO vlong FROM all_triggers WHERE trigger_name = GET_TRIGGER_BODY.TRIGGER_NAME; + + RETURN substr(vlong, 1, 32767); + END; + +END OSE_DIVERS;', + ), + 'OSE_EVENT' => + array ( + 'name' => 'OSE_EVENT', + 'definition' => 'CREATE OR REPLACE PACKAGE "OSE_EVENT" AS + + PROCEDURE ON_AFTER_FORMULE_CALC( INTERVENANT_ID NUMERIC ); + +END OSE_EVENT;', + 'body' => 'CREATE OR REPLACE PACKAGE BODY "OSE_EVENT" AS + + PROCEDURE ON_AFTER_FORMULE_CALC( INTERVENANT_ID NUMERIC ) IS + p unicaen_tbl.t_params; + BEGIN + p := UNICAEN_TBL.make_params(\'INTERVENANT_ID\', ON_AFTER_FORMULE_CALC.intervenant_id); +/* + UNICAEN_TBL.CALCULER( \'agrement\', p ); + UNICAEN_TBL.CALCULER( \'paiement\', p ); + UNICAEN_TBL.CALCULER( \'workflow\', p );*/ + END; + +END OSE_EVENT;', + ), + 'OSE_FORMULE' => + array ( + 'name' => 'OSE_FORMULE', + 'definition' => 'CREATE OR REPLACE PACKAGE "OSE_FORMULE" AS + + TYPE t_intervenant IS RECORD ( + -- identifiants + id NUMERIC, + annee_id NUMERIC, + structure_id NUMERIC, + type_volume_horaire_id NUMERIC, + etat_volume_horaire_id NUMERIC, + + -- paramètres globaux + heures_decharge FLOAT DEFAULT 0, + heures_service_statutaire FLOAT DEFAULT 0, + heures_service_modifie FLOAT DEFAULT 0, + depassement_service_du_sans_hc BOOLEAN DEFAULT FALSE, + type_intervenant_code VARCHAR(2), + + -- paramètres spacifiques + param_1 VARCHAR(100), + param_2 VARCHAR(100), + param_3 VARCHAR(100), + param_4 VARCHAR(100), + param_5 VARCHAR(100), + + -- résultats + service_du FLOAT, + total FLOAT, + solde FLOAT, + debug_info CLOB + ); + + TYPE t_volume_horaire IS RECORD ( + -- identifiants + volume_horaire_id NUMERIC, + volume_horaire_ref_id NUMERIC, + service_id NUMERIC, + service_referentiel_id NUMERIC, + structure_id NUMERIC, + + -- paramètres globaux + structure_is_affectation BOOLEAN DEFAULT TRUE, + structure_is_univ BOOLEAN DEFAULT FALSE, + service_statutaire BOOLEAN DEFAULT TRUE, + taux_fi FLOAT DEFAULT 1, + taux_fa FLOAT DEFAULT 0, + taux_fc FLOAT DEFAULT 0, + + -- pondérations et heures + type_intervention_code VARCHAR(15), + taux_service_du FLOAT DEFAULT 1, -- en fonction des types d\'intervention + taux_service_compl FLOAT DEFAULT 1, -- en fonction des types d\'intervention + ponderation_service_du FLOAT DEFAULT 1, -- relatif aux modulateurs + ponderation_service_compl FLOAT DEFAULT 1, -- relatif aux modulateurs + heures FLOAT DEFAULT 0, -- heures réelles saisies + + -- paramètres spacifiques + param_1 VARCHAR(100), + param_2 VARCHAR(100), + param_3 VARCHAR(100), + param_4 VARCHAR(100), + param_5 VARCHAR(100), + + -- résultats + service_fi FLOAT DEFAULT 0, + service_fa FLOAT DEFAULT 0, + service_fc FLOAT DEFAULT 0, + service_referentiel FLOAT DEFAULT 0, + heures_compl_fi FLOAT DEFAULT 0, + heures_compl_fa FLOAT DEFAULT 0, + heures_compl_fc FLOAT DEFAULT 0, + heures_compl_fc_majorees FLOAT DEFAULT 0, + heures_compl_referentiel FLOAT DEFAULT 0, + + debug_info CLOB + ); + TYPE t_lst_volume_horaire IS TABLE OF t_volume_horaire INDEX BY PLS_INTEGER; + TYPE t_volumes_horaires IS RECORD ( + length NUMERIC DEFAULT 0, + items t_lst_volume_horaire + ); + + debug_actif BOOLEAN DEFAULT FALSE; + intervenant t_intervenant; + volumes_horaires t_volumes_horaires; + + FUNCTION GET_INTERVENANT_ID RETURN NUMERIC; + + FUNCTION GET_TAUX_HORAIRE_HETD( DATE_OBS DATE DEFAULT NULL ) RETURN FLOAT; + PROCEDURE UPDATE_ANNEE_TAUX_HETD; + + PROCEDURE CALCULER( INTERVENANT_ID NUMERIC ); + PROCEDURE CALCULER_TOUT( ANNEE_ID NUMERIC DEFAULT NULL ); -- mise à jour de TOUTES les données ! ! ! ! + PROCEDURE CALCULER_TBL( PARAMS UNICAEN_TBL.T_PARAMS ); + + PROCEDURE TEST( INTERVENANT_TEST_ID NUMERIC ); + PROCEDURE TEST_TOUT; + + PROCEDURE DEBUG_INTERVENANT; + PROCEDURE DEBUG_VOLUMES_HORAIRES(VOLUME_HORAIRE_ID NUMERIC DEFAULT NULL); +END OSE_FORMULE;', + 'body' => 'CREATE OR REPLACE PACKAGE BODY "OSE_FORMULE" AS + + TYPE t_lst_vh_etats IS TABLE OF t_volumes_horaires INDEX BY PLS_INTEGER; + TYPE t_lst_vh_types IS TABLE OF t_lst_vh_etats INDEX BY PLS_INTEGER; + TYPE t_lst_vh_intervenants IS TABLE OF t_lst_vh_types INDEX BY PLS_INTEGER; + + TYPE t_resultat IS RECORD ( + id NUMERIC, + formule_resultat_id NUMERIC, + type_volume_horaire_id NUMERIC, + etat_volume_horaire_id NUMERIC, + service_id NUMERIC, + service_referentiel_id NUMERIC, + volume_horaire_id NUMERIC, + volume_horaire_ref_id NUMERIC, + + service_fi FLOAT DEFAULT 0, + service_fa FLOAT DEFAULT 0, + service_fc FLOAT DEFAULT 0, + service_referentiel FLOAT DEFAULT 0, + heures_compl_fi FLOAT DEFAULT 0, + heures_compl_fa FLOAT DEFAULT 0, + heures_compl_fc FLOAT DEFAULT 0, + heures_compl_fc_majorees FLOAT DEFAULT 0, + heures_compl_referentiel FLOAT DEFAULT 0, + + changed BOOLEAN DEFAULT FALSE, + debug_info CLOB + ); + + TYPE t_resultats IS TABLE OF t_resultat INDEX BY VARCHAR2(15); + + all_volumes_horaires t_lst_vh_intervenants; + arrondi NUMERIC DEFAULT 2; + t_res t_resultats; + formule_definition formule%rowtype; + in_calculer_tout BOOLEAN DEFAULT false; + + + + FUNCTION GET_INTERVENANT_ID RETURN NUMERIC IS + BEGIN + RETURN intervenant.id; + END; + + + + FUNCTION GET_TAUX_HORAIRE_HETD( DATE_OBS DATE DEFAULT NULL ) RETURN FLOAT IS + taux_hetd FLOAT; + BEGIN + SELECT valeur INTO taux_hetd + FROM taux_horaire_hetd t + WHERE + DATE_OBS BETWEEN t.histo_creation AND COALESCE(t.histo_destruction,GREATEST(SYSDATE,DATE_OBS)) + AND rownum = 1 + ORDER BY + histo_creation DESC; + RETURN taux_hetd; + END; + + + + PROCEDURE UPDATE_ANNEE_TAUX_HETD IS + BEGIN + UPDATE annee SET taux_hetd = GET_TAUX_HORAIRE_HETD(date_fin); + END; + + + + PROCEDURE LOAD_INTERVENANT_FROM_BDD IS + cur SYS_REFCURSOR; + query CLOB; + i_dep_service_du_sans_hc NUMERIC DEFAULT 0; + BEGIN + intervenant.service_du := 0; + intervenant.total := NULL; + intervenant.solde := NULL; + + EXECUTE IMMEDIATE \'SELECT \' || formule_definition.package_name || \'.intervenant_query FROM DUAL\' INTO query; + OPEN cur FOR query; + + LOOP + FETCH cur INTO + intervenant.id, + intervenant.annee_id, + intervenant.structure_id, + intervenant.type_intervenant_code, + intervenant.heures_service_statutaire, + i_dep_service_du_sans_hc, + intervenant.heures_service_modifie, + intervenant.heures_decharge, + intervenant.param_1, + intervenant.param_2, + intervenant.param_3, + intervenant.param_4, + intervenant.param_5 + ; + + intervenant.depassement_service_du_sans_hc := (i_dep_service_du_sans_hc = 1); + intervenant.service_du := CASE + WHEN intervenant.depassement_service_du_sans_hc -- HC traitées comme du service + OR intervenant.heures_decharge < 0 -- s\'il y a une décharge => aucune HC + + THEN 9999 + ELSE intervenant.heures_service_statutaire + intervenant.heures_service_modifie + END; + + EXIT WHEN cur%NOTFOUND; + END LOOP; + CLOSE cur; + + EXCEPTION WHEN NO_DATA_FOUND THEN + intervenant.id := NULL; + intervenant.annee_id := null; + intervenant.structure_id := null; + intervenant.heures_service_statutaire := 0; + intervenant.depassement_service_du_sans_hc := FALSE; + intervenant.heures_service_modifie := 0; + intervenant.heures_decharge := 0; + intervenant.type_intervenant_code := \'E\'; + intervenant.service_du := 0; + intervenant.param_1 := NULL; + intervenant.param_2 := NULL; + intervenant.param_3 := NULL; + intervenant.param_4 := NULL; + intervenant.param_5 := NULL; + END; + + + + PROCEDURE LOAD_INTERVENANT_FROM_TEST IS + dsdushc NUMERIC DEFAULT 0; + BEGIN + intervenant.total := NULL; + intervenant.solde := NULL; + + SELECT + fti.id, + fti.annee_id, + fti.structure_test_id, + fti.type_volume_horaire_id, + fti.etat_volume_horaire_id, + fti.heures_decharge, + fti.heures_service_statutaire, + fti.heures_service_modifie, + fti.depassement_service_du_sans_hc, + fti.a_service_du, + fti.param_1, + fti.param_2, + fti.param_3, + fti.param_4, + fti.param_5, + ti.code + INTO + intervenant.id, + intervenant.annee_id, + intervenant.structure_id, + intervenant.type_volume_horaire_id, + intervenant.etat_volume_horaire_id, + intervenant.heures_decharge, + intervenant.heures_service_statutaire, + intervenant.heures_service_modifie, + dsdushc, + intervenant.service_du, + intervenant.param_1, + intervenant.param_2, + intervenant.param_3, + intervenant.param_4, + intervenant.param_5, + intervenant.type_intervenant_code + FROM + formule_test_intervenant fti + JOIN type_intervenant ti ON ti.id = fti.type_intervenant_id + WHERE + fti.id = intervenant.id; + + intervenant.depassement_service_du_sans_hc := (dsdushc = 1); + intervenant.service_du := CASE + WHEN intervenant.depassement_service_du_sans_hc -- HC traitées comme du service + OR intervenant.heures_decharge < 0 -- s\'il y a une décharge => aucune HC + + THEN 9999 + ELSE intervenant.heures_service_statutaire + intervenant.heures_service_modifie + END; + + EXCEPTION WHEN NO_DATA_FOUND THEN + intervenant.id := NULL; + intervenant.annee_id := null; + intervenant.structure_id := null; + intervenant.heures_service_statutaire := 0; + intervenant.depassement_service_du_sans_hc := FALSE; + intervenant.heures_service_modifie := 0; + intervenant.heures_decharge := 0; + intervenant.type_intervenant_code := \'E\'; + intervenant.service_du := 0; + intervenant.param_1 := null; + intervenant.param_2 := null; + intervenant.param_3 := null; + intervenant.param_4 := null; + intervenant.param_5 := null; + END; + + + + PROCEDURE LOAD_VH_FROM_BDD IS + cur SYS_REFCURSOR; + query CLOB; + vh_ordre NUMERIC; + vh_id NUMERIC; + vh_type_intervention_id NUMERIC; + vh_horaire_debut DATE; + vh_horaire_fin DATE; + vh_intervenant_id NUMERIC; + vh_type_volume_horaire_id NUMERIC; + vh_etat_volume_horaire_id NUMERIC; + vh_structure_is_affectation NUMERIC; + vh_structure_is_univ NUMERIC; + vh t_volume_horaire; + etat_volume_horaire_id NUMERIC DEFAULT 1; + length NUMERIC; + BEGIN + all_volumes_horaires.delete; + + EXECUTE IMMEDIATE \'SELECT \' || formule_definition.package_name || \'.volume_horaire_query FROM DUAL\' INTO query; + OPEN cur FOR query; + + LOOP + FETCH cur INTO + vh_ordre, + vh_id, + vh.volume_horaire_id, + vh.volume_horaire_ref_id, + vh.service_id, + vh.service_referentiel_id, + vh_intervenant_id, + vh_type_intervention_id, + vh_type_volume_horaire_id, + vh_etat_volume_horaire_id, + vh.taux_fi, + vh.taux_fa, + vh.taux_fc, + vh.structure_id, + vh_structure_is_affectation, + vh_structure_is_univ, + vh.ponderation_service_du, + vh.ponderation_service_compl, + vh.service_statutaire, + vh.heures, + vh_horaire_debut, + vh_horaire_fin, + vh.type_intervention_code, + vh.taux_service_du, + vh.taux_service_compl, + vh.param_1, + vh.param_2, + vh.param_3, + vh.param_4, + vh.param_5 + ; + vh.structure_is_affectation := vh_structure_is_affectation = 1; + vh.structure_is_univ := vh_structure_is_univ = 1; + + FOR etat_volume_horaire_id IN 1 .. vh_etat_volume_horaire_id LOOP + BEGIN + length := all_volumes_horaires(vh_intervenant_id)(vh_type_volume_horaire_id)(etat_volume_horaire_id).length; + EXCEPTION WHEN NO_DATA_FOUND THEN + length := 0; + END; + length := length + 1; + all_volumes_horaires(vh_intervenant_id)(vh_type_volume_horaire_id)(etat_volume_horaire_id).length := length; + all_volumes_horaires(vh_intervenant_id)(vh_type_volume_horaire_id)(etat_volume_horaire_id).items(length) := vh; + END LOOP; + + EXIT WHEN cur%NOTFOUND; + END LOOP; + CLOSE cur; + END; + + + + PROCEDURE LOAD_VH_FROM_TEST IS + vh t_volume_horaire; + etat_volume_horaire_id NUMERIC DEFAULT 1; + structure_univ NUMERIC; + length NUMERIC; + BEGIN + volumes_horaires.items.delete; + length := 0; + + SELECT id INTO structure_univ FROM formule_test_structure WHERE universite = 1; + + FOR d IN ( + SELECT + ftvh.*, + CASE ftvh.type_intervention_code + WHEN \'CM\' THEN COALESCE(fti.taux_cm_service_du,1.5) + WHEN \'TP\' THEN COALESCE(fti.taux_tp_service_du,1) + WHEN \'AUTRE\' THEN COALESCE(fti.taux_autre_service_du,1) + ELSE 1 + END taux_service_du, + CASE ftvh.type_intervention_code + WHEN \'CM\' THEN COALESCE(fti.taux_cm_service_compl,1.5) + WHEN \'TP\' THEN COALESCE(fti.taux_tp_service_compl,2/3) + WHEN \'AUTRE\' THEN COALESCE(fti.taux_autre_service_compl,1) + ELSE 1 + END taux_service_compl + FROM + formule_test_volume_horaire ftvh + JOIN formule_test_intervenant fti ON fti.id = intervenant.id + WHERE ftvh.intervenant_test_id = intervenant.id + ORDER BY ftvh.id + ) LOOP + length := length + 1; + volumes_horaires.length := length; + + IF d.referentiel = 0 THEN + volumes_horaires.items(length).volume_horaire_id := d.id; + volumes_horaires.items(length).service_id := d.id; + ELSE + volumes_horaires.items(length).volume_horaire_ref_id := d.id; + volumes_horaires.items(length).service_referentiel_id := d.id; + END IF; + volumes_horaires.items(length).taux_fi := d.taux_fi; + volumes_horaires.items(length).taux_fa := d.taux_fa; + volumes_horaires.items(length).taux_fc := d.taux_fc; + volumes_horaires.items(length).ponderation_service_du := d.ponderation_service_du; + volumes_horaires.items(length).ponderation_service_compl := d.ponderation_service_compl; + volumes_horaires.items(length).structure_id := d.structure_test_id; + volumes_horaires.items(length).structure_is_affectation := NVL(d.structure_test_id,0) = NVL(intervenant.structure_id,-1); + volumes_horaires.items(length).structure_is_univ := NVL(d.structure_test_id,0) = NVL(structure_univ,-1); + volumes_horaires.items(length).service_statutaire := d.service_statutaire = 1; + volumes_horaires.items(length).heures := d.heures; + volumes_horaires.items(length).type_intervention_code := CASE WHEN d.referentiel = 1 THEN NULL ELSE d.type_intervention_code END; + volumes_horaires.items(length).taux_service_du := d.taux_service_du; + volumes_horaires.items(length).taux_service_compl := d.taux_service_compl; + volumes_horaires.items(length).param_1 := d.param_1; + volumes_horaires.items(length).param_2 := d.param_2; + volumes_horaires.items(length).param_3 := d.param_3; + volumes_horaires.items(length).param_4 := d.param_4; + volumes_horaires.items(length).param_5 := d.param_5; + END LOOP; + END; + + + + PROCEDURE tres_add_heures( code VARCHAR2, vh t_volume_horaire, tvh NUMERIC, evh NUMERIC) IS + BEGIN + IF NOT t_res.exists(code) THEN + t_res(code).service_fi := 0; + t_res(code).service_fa := 0; + t_res(code).service_fc := 0; + t_res(code).service_referentiel := 0; + t_res(code).heures_compl_fi := 0; + t_res(code).heures_compl_fa := 0; + t_res(code).heures_compl_fc := 0; + t_res(code).heures_compl_fc_majorees := 0; + t_res(code).heures_compl_referentiel := 0; + END IF; + + t_res(code).service_fi := t_res(code).service_fi + vh.service_fi; + t_res(code).service_fa := t_res(code).service_fa + vh.service_fa; + t_res(code).service_fc := t_res(code).service_fc + vh.service_fc; + t_res(code).service_referentiel := t_res(code).service_referentiel + vh.service_referentiel; + t_res(code).heures_compl_fi := t_res(code).heures_compl_fi + vh.heures_compl_fi; + t_res(code).heures_compl_fa := t_res(code).heures_compl_fa + vh.heures_compl_fa; + t_res(code).heures_compl_fc := t_res(code).heures_compl_fc + vh.heures_compl_fc; + t_res(code).heures_compl_fc_majorees := t_res(code).heures_compl_fc_majorees + vh.heures_compl_fc_majorees; + t_res(code).heures_compl_referentiel := t_res(code).heures_compl_referentiel + vh.heures_compl_referentiel; + + t_res(code).type_volume_horaire_id := tvh; + t_res(code).etat_volume_horaire_id := evh; + END; + + PROCEDURE DEBUG_TRES IS + code varchar2(15); + table_name varchar2(30); + fr formule_resultat%rowtype; + frs formule_resultat_service%rowtype; + frsr formule_resultat_service_ref%rowtype; + frvh formule_resultat_vh%rowtype; + frvhr formule_resultat_vh_ref%rowtype; + BEGIN + code := t_res.FIRST; + LOOP EXIT WHEN code IS NULL; + table_name := CASE + WHEN code LIKE \'%-s-%\' THEN \'FORMULE_RESULTAT_SERVICE\' + WHEN code LIKE \'%-sr-%\' THEN \'FORMULE_RESULTAT_SERVICE_REF\' + WHEN code LIKE \'%-vh-%\' THEN \'FORMULE_RESULTAT_VH\' + WHEN code LIKE \'%-vhr-%\' THEN \'FORMULE_RESULTAT_VH_REF\' + ELSE \'FORMULE_RESULTAT\' + END; + + ose_test.echo(\'T_RES( \' || code || \' - Table \' || table_name || \' ) \'); + ose_test.echo(\' id = \' || t_res(code).id); + ose_test.echo(\' formule_resultat_id = \' || t_res(code).formule_resultat_id); + ose_test.echo(\' type_volume_horaire_id = \' || t_res(code).type_volume_horaire_id); + ose_test.echo(\' etat_volume_horaire_id = \' || t_res(code).etat_volume_horaire_id); + ose_test.echo(\' volume_horaire_id = \' || t_res(code).volume_horaire_id); + ose_test.echo(\' volume_horaire_ref_id = \' || t_res(code).volume_horaire_ref_id); + ose_test.echo(\' service_id = \' || t_res(code).service_id); + ose_test.echo(\' service_referentiel_id = \' || t_res(code).service_referentiel_id); + ose_test.echo(\' service_fi = \' || t_res(code).service_fi); + ose_test.echo(\' service_fa = \' || t_res(code).service_fa); + ose_test.echo(\' service_fc = \' || t_res(code).service_fc); + ose_test.echo(\' service_referentiel = \' || t_res(code).service_referentiel); + ose_test.echo(\' heures_compl_fi = \' || t_res(code).heures_compl_fi); + ose_test.echo(\' heures_compl_fa = \' || t_res(code).heures_compl_fa); + ose_test.echo(\' heures_compl_fc = \' || t_res(code).heures_compl_fc); + ose_test.echo(\' heures_compl_fc_majorees = \' || t_res(code).heures_compl_fc_majorees); + ose_test.echo(\' heures_compl_referentiel = \' || t_res(code).heures_compl_referentiel); + + code := t_res.NEXT(code); + END LOOP; + END; + + PROCEDURE SAVE_TO_BDD IS + bcode VARCHAR(15); + code VARCHAR(15); + type_volume_horaire_id NUMERIC; + etat_volume_horaire_id NUMERIC; + vh t_volume_horaire; + fr formule_resultat%rowtype; + frs formule_resultat_service%rowtype; + frsr formule_resultat_service_ref%rowtype; + frvh formule_resultat_vh%rowtype; + frvhr formule_resultat_vh_ref%rowtype; + BEGIN + t_res.delete; + + /* On préinitialise avec ce qui existe déjà */ + FOR d IN ( + SELECT + fr.type_volume_horaire_id || \'-\' || fr.etat_volume_horaire_id code, + fr.id id, + fr.id formule_resultat_id, + fr.type_volume_horaire_id type_volume_horaire_id, + fr.etat_volume_horaire_id etat_volume_horaire_id, + null service_id, + null service_referentiel_id, + null volume_horaire_id, + null volume_horaire_ref_id + + FROM + formule_resultat fr + WHERE + fr.intervenant_id = intervenant.id + + UNION ALL SELECT + fr.type_volume_horaire_id || \'-\' || fr.etat_volume_horaire_id || \'-s-\' || frs.service_id code, + frs.id id, + fr.id formule_resultat_id, + fr.type_volume_horaire_id type_volume_horaire_id, + fr.etat_volume_horaire_id etat_volume_horaire_id, + frs.service_id service_id, + null service_referentiel_id, + null volume_horaire_id, + null volume_horaire_ref_id + FROM + formule_resultat_service frs + JOIN formule_resultat fr ON fr.id = frs.formule_resultat_id + WHERE + fr.intervenant_id = intervenant.id + + UNION ALL SELECT + fr.type_volume_horaire_id || \'-\' || fr.etat_volume_horaire_id || \'-sr-\' || frsr.service_referentiel_id code, + frsr.id id, + fr.id formule_resultat_id, + fr.type_volume_horaire_id type_volume_horaire_id, + fr.etat_volume_horaire_id etat_volume_horaire_id, + null service_id, + frsr.service_referentiel_id service_referentiel_id, + null volume_horaire_id, + null volume_horaire_ref_id + FROM + formule_resultat_service_ref frsr + JOIN formule_resultat fr ON fr.id = frsr.formule_resultat_id + WHERE + fr.intervenant_id = intervenant.id + + UNION ALL SELECT + fr.type_volume_horaire_id || \'-\' || fr.etat_volume_horaire_id || \'-vh-\' || frvh.volume_horaire_id code, + frvh.id id, + fr.id formule_resultat_id, + fr.type_volume_horaire_id type_volume_horaire_id, + fr.etat_volume_horaire_id etat_volume_horaire_id, + null service_id, + null service_referentiel_id, + frvh.volume_horaire_id volume_horaire_id, + null volume_horaire_ref_id + FROM + formule_resultat_vh frvh + JOIN formule_resultat fr ON fr.id = frvh.formule_resultat_id + WHERE + fr.intervenant_id = intervenant.id + + UNION ALL SELECT + fr.type_volume_horaire_id || \'-\' || fr.etat_volume_horaire_id || \'-vhr-\' || frvhr.volume_horaire_ref_id code, + frvhr.id id, + fr.id formule_resultat_id, + fr.type_volume_horaire_id type_volume_horaire_id, + fr.etat_volume_horaire_id etat_volume_horaire_id, + null service_id, + null service_referentiel_id, + null volume_horaire_id, + frvhr.volume_horaire_ref_id volume_horaire_ref_id + FROM + formule_resultat_vh_ref frvhr + JOIN formule_resultat fr ON fr.id = frvhr.formule_resultat_id + WHERE + fr.intervenant_id = intervenant.id + ) LOOP + t_res(d.code).id := d.id; + t_res(d.code).formule_resultat_id := d.formule_resultat_id; + t_res(d.code).type_volume_horaire_id := d.type_volume_horaire_id; + t_res(d.code).etat_volume_horaire_id := d.etat_volume_horaire_id; + t_res(d.code).service_id := d.service_id; + t_res(d.code).service_referentiel_id := d.service_referentiel_id; + t_res(d.code).volume_horaire_id := d.volume_horaire_id; + t_res(d.code).volume_horaire_ref_id := d.volume_horaire_ref_id; + END LOOP; + + /* On charge avec les résultats de formule */ + IF all_volumes_horaires.exists(intervenant.id) THEN + type_volume_horaire_id := all_volumes_horaires(intervenant.id).FIRST; + LOOP EXIT WHEN type_volume_horaire_id IS NULL; + etat_volume_horaire_id := all_volumes_horaires(intervenant.id)(type_volume_horaire_id).FIRST; + LOOP EXIT WHEN etat_volume_horaire_id IS NULL; + FOR i IN 1 .. all_volumes_horaires(intervenant.id)(type_volume_horaire_id)(etat_volume_horaire_id).length LOOP + vh := all_volumes_horaires(intervenant.id)(type_volume_horaire_id)(etat_volume_horaire_id).items(i); + bcode := type_volume_horaire_id || \'-\' || etat_volume_horaire_id; + + -- formule_resultat + code := bcode; + tres_add_heures(code,vh, type_volume_horaire_id, etat_volume_horaire_id); + + -- formule_resultat_service + IF vh.service_id IS NOT NULL THEN + code := bcode || \'-s-\' || vh.service_id; + t_res(code).service_id := vh.service_id; + tres_add_heures(code,vh, type_volume_horaire_id, etat_volume_horaire_id); + END IF; + + -- formule_resultat_service_ref + IF vh.service_referentiel_id IS NOT NULL THEN + code := bcode || \'-sr-\' || vh.service_referentiel_id; + t_res(code).service_referentiel_id := vh.service_referentiel_id; + tres_add_heures(code,vh, type_volume_horaire_id, etat_volume_horaire_id); + END IF; + + -- formule_resultat_volume_horaire + IF vh.volume_horaire_id IS NOT NULL THEN + code := bcode || \'-vh-\' || vh.volume_horaire_id; + t_res(code).volume_horaire_id := vh.volume_horaire_id; + tres_add_heures(code,vh, type_volume_horaire_id, etat_volume_horaire_id); + END IF; + + -- formule_resultat_volume_horaire_ref + IF vh.volume_horaire_ref_id IS NOT NULL THEN + code := bcode || \'-vhr-\' || vh.volume_horaire_ref_id; + t_res(code).volume_horaire_ref_id := vh.volume_horaire_ref_id; + tres_add_heures(code,vh, type_volume_horaire_id, etat_volume_horaire_id); + END IF; + + END LOOP; + etat_volume_horaire_id := all_volumes_horaires(intervenant.id)(type_volume_horaire_id).NEXT(etat_volume_horaire_id); + END LOOP; + type_volume_horaire_id := all_volumes_horaires(intervenant.id).NEXT(type_volume_horaire_id); + END LOOP; + END IF; + + /* On fait la sauvegarde en BDD */ + /* D\'abord le formule_resultat */ + code := t_res.FIRST; + LOOP EXIT WHEN code IS NULL; + IF code = (t_res(code).type_volume_horaire_id || \'-\' || t_res(code).etat_volume_horaire_id) THEN + fr.id := t_res(code).id; + fr.intervenant_id := intervenant.id; + fr.type_volume_horaire_id := t_res(code).type_volume_horaire_id; + fr.etat_volume_horaire_id := t_res(code).etat_volume_horaire_id; + fr.service_fi := ROUND(t_res(code).service_fi,2); + fr.service_fa := ROUND(t_res(code).service_fa,2); + fr.service_fc := ROUND(t_res(code).service_fc,2); + fr.service_referentiel := ROUND(t_res(code).service_referentiel,2); + fr.heures_compl_fi := ROUND(t_res(code).heures_compl_fi,2); + fr.heures_compl_fa := ROUND(t_res(code).heures_compl_fa,2); + fr.heures_compl_fc := ROUND(t_res(code).heures_compl_fc,2); + fr.heures_compl_fc_majorees := ROUND(t_res(code).heures_compl_fc_majorees,2); + fr.heures_compl_referentiel := ROUND(t_res(code).heures_compl_referentiel,2); + fr.total := COALESCE(intervenant.total, + fr.service_fi + fr.service_fa + fr.service_fc + fr.service_referentiel + + fr.heures_compl_fi + fr.heures_compl_fa + fr.heures_compl_fc + + fr.heures_compl_fc_majorees + fr.heures_compl_referentiel + ); + + fr.service_du := ROUND(CASE + WHEN intervenant.depassement_service_du_sans_hc OR intervenant.heures_decharge < 0 + THEN GREATEST(fr.total, intervenant.heures_service_statutaire + intervenant.heures_service_modifie) + ELSE intervenant.heures_service_statutaire + intervenant.heures_service_modifie + END,2); + + fr.solde := COALESCE(intervenant.solde,fr.total - fr.service_du); + IF fr.solde >= 0 THEN + fr.sous_service := 0; + fr.heures_compl := fr.solde; + ELSE + fr.sous_service := fr.solde * -1; + fr.heures_compl := 0; + END IF; + fr.type_intervenant_code := intervenant.type_intervenant_code; + + IF fr.id IS NULL THEN + fr.id := formule_resultat_id_seq.nextval; + t_res(code).id := fr.id; + INSERT INTO formule_resultat VALUES fr; + ELSE + UPDATE formule_resultat SET ROW = fr WHERE id = fr.id; + END IF; + END IF; + code := t_res.NEXT(code); + END LOOP; + + --DEBUG_TRES; + + /* Ensuite toutes les dépendances... */ + code := t_res.FIRST; + LOOP EXIT WHEN code IS NULL; + bcode := t_res(code).type_volume_horaire_id || \'-\' || t_res(code).etat_volume_horaire_id; + CASE + WHEN code LIKE \'%-s-%\' THEN -- formule_resultat_service + frs.id := t_res(code).id; + frs.formule_resultat_id := t_res(bcode).id; + frs.service_id := t_res(code).service_id; + frs.service_fi := ROUND(t_res(code).service_fi, 2); + frs.service_fa := ROUND(t_res(code).service_fa, 2); + frs.service_fc := ROUND(t_res(code).service_fc, 2); + frs.heures_compl_fi := ROUND(t_res(code).heures_compl_fi, 2); + frs.heures_compl_fa := ROUND(t_res(code).heures_compl_fa, 2); + frs.heures_compl_fc := ROUND(t_res(code).heures_compl_fc, 2); + frs.heures_compl_fc_majorees := ROUND(t_res(code).heures_compl_fc_majorees, 2); + frs.total := frs.service_fi + frs.service_fa + frs.service_fc + + frs.heures_compl_fi + frs.heures_compl_fa + frs.heures_compl_fc + frs.heures_compl_fc_majorees; + IF frs.id IS NULL THEN + frs.id := formule_resultat_servic_id_seq.nextval; + INSERT INTO formule_resultat_service VALUES frs; + ELSE + UPDATE formule_resultat_service SET ROW = frs WHERE id = frs.id; + END IF; + WHEN code LIKE \'%-sr-%\' THEN -- formule_resultat_service_ref + frsr.id := t_res(code).id; + frsr.formule_resultat_id := t_res(bcode).id; + frsr.service_referentiel_id := t_res(code).service_referentiel_id; + frsr.service_referentiel := ROUND(t_res(code).service_referentiel, 2); + frsr.heures_compl_referentiel := ROUND(t_res(code).heures_compl_referentiel, 2); + frsr.total := frsr.service_referentiel + frsr.heures_compl_referentiel; + IF frsr.id IS NULL THEN + frsr.id := formule_resultat_servic_id_seq.nextval; + INSERT INTO formule_resultat_service_ref VALUES frsr; + ELSE + UPDATE formule_resultat_service_ref SET ROW = frsr WHERE id = frsr.id; + END IF; + WHEN code LIKE \'%-vh-%\' THEN -- formule_resultat_vh + frvh.id := t_res(code).id; + frvh.formule_resultat_id := t_res(bcode).id; + frvh.volume_horaire_id := t_res(code).volume_horaire_id; + frvh.service_fi := ROUND(t_res(code).service_fi, 2); + frvh.service_fa := ROUND(t_res(code).service_fa, 2); + frvh.service_fc := ROUND(t_res(code).service_fc, 2); + frvh.heures_compl_fi := ROUND(t_res(code).heures_compl_fi, 2); + frvh.heures_compl_fa := ROUND(t_res(code).heures_compl_fa, 2); + frvh.heures_compl_fc := ROUND(t_res(code).heures_compl_fc, 2); + frvh.heures_compl_fc_majorees := ROUND(t_res(code).heures_compl_fc_majorees, 2); + frvh.total := frvh.service_fi + frvh.service_fa + frvh.service_fc + + frvh.heures_compl_fi + frvh.heures_compl_fa + frvh.heures_compl_fc + frvh.heures_compl_fc_majorees; + IF frvh.id IS NULL THEN + frvh.id := formule_resultat_vh_id_seq.nextval; + INSERT INTO formule_resultat_vh VALUES frvh; + ELSE + UPDATE formule_resultat_vh SET ROW = frvh WHERE id = frvh.id; + END IF; + WHEN code LIKE \'%-vhr-%\' THEN -- formule_resultat_vh_ref + frvhr.id := t_res(code).id; + frvhr.formule_resultat_id := t_res(bcode).id; + frvhr.volume_horaire_ref_id := t_res(code).volume_horaire_ref_id; + frvhr.service_referentiel := ROUND(t_res(code).service_referentiel, 2); + frvhr.heures_compl_referentiel := ROUND(t_res(code).heures_compl_referentiel, 2); + frvhr.total := frvhr.service_referentiel + frvhr.heures_compl_referentiel; + IF frvhr.id IS NULL THEN + frvhr.id := formule_resultat_vh_ref_id_seq.nextval; + INSERT INTO formule_resultat_vh_ref VALUES frvhr; + ELSE + UPDATE formule_resultat_vh_ref SET ROW = frvhr WHERE id = frvhr.id; + END IF; + ELSE code := code; + END CASE; + code := t_res.NEXT(code); + END LOOP; + END; + + + + PROCEDURE SAVE_TO_TEST(passed NUMERIC) IS + vh t_volume_horaire; + BEGIN + UPDATE formule_test_intervenant SET + c_service_du = CASE WHEN passed = 1 THEN intervenant.service_du ELSE NULL END, + debug_info = intervenant.debug_info + WHERE id = intervenant.id; + + FOR i IN 1 .. volumes_horaires.length LOOP + vh := volumes_horaires.items(i); + UPDATE formule_test_volume_horaire SET + c_service_fi = CASE WHEN passed = 1 THEN vh.service_fi ELSE NULL END, + c_service_fa = CASE WHEN passed = 1 THEN vh.service_fa ELSE NULL END, + c_service_fc = CASE WHEN passed = 1 THEN vh.service_fc ELSE NULL END, + c_service_referentiel = CASE WHEN passed = 1 THEN vh.service_referentiel ELSE NULL END, + c_heures_compl_fi = CASE WHEN passed = 1 THEN vh.heures_compl_fi ELSE NULL END, + c_heures_compl_fa = CASE WHEN passed = 1 THEN vh.heures_compl_fa ELSE NULL END, + c_heures_compl_fc = CASE WHEN passed = 1 THEN vh.heures_compl_fc ELSE NULL END, + c_heures_compl_fc_majorees = CASE WHEN passed = 1 THEN vh.heures_compl_fc_majorees ELSE NULL END, + c_heures_compl_referentiel = CASE WHEN passed = 1 THEN vh.heures_compl_referentiel ELSE NULL END, + debug_info = vh.debug_info + WHERE + id = COALESCE(vh.volume_horaire_id,vh.volume_horaire_ref_id); + END LOOP; + END; + + + + PROCEDURE CALCULER( INTERVENANT_ID NUMERIC ) IS + type_volume_horaire_id NUMERIC; + etat_volume_horaire_id NUMERIC; + BEGIN + intervenant.id := intervenant_id; + + IF NOT in_calculer_tout THEN + formule_definition := ose_parametre.get_formule; + END IF; + + LOAD_INTERVENANT_FROM_BDD; + IF intervenant.id IS NULL THEN -- intervenant non trouvé + RETURN; + END IF; + IF NOT in_calculer_tout THEN + LOAD_VH_FROM_BDD; + END IF; + + debug_actif := FALSE; + IF all_volumes_horaires.exists(intervenant.id) THEN + type_volume_horaire_id := all_volumes_horaires(intervenant.id).FIRST; + LOOP EXIT WHEN type_volume_horaire_id IS NULL; + intervenant.type_volume_horaire_id := type_volume_horaire_id; + etat_volume_horaire_id := all_volumes_horaires(intervenant.id)(type_volume_horaire_id).FIRST; + LOOP EXIT WHEN etat_volume_horaire_id IS NULL; + intervenant.etat_volume_horaire_id := etat_volume_horaire_id; + volumes_horaires := all_volumes_horaires(intervenant.id)(type_volume_horaire_id)(etat_volume_horaire_id); + EXECUTE IMMEDIATE \'BEGIN \' || formule_definition.package_name || \'.\' || formule_definition.procedure_name || \'; END;\'; + all_volumes_horaires(intervenant.id)(type_volume_horaire_id)(etat_volume_horaire_id) := volumes_horaires; + etat_volume_horaire_id := all_volumes_horaires(intervenant.id)(type_volume_horaire_id).NEXT(etat_volume_horaire_id); + END LOOP; + type_volume_horaire_id := all_volumes_horaires(intervenant.id).NEXT(type_volume_horaire_id); + END LOOP; + END IF; + + SAVE_TO_BDD; + + OSE_EVENT.ON_AFTER_FORMULE_CALC( CALCULER.INTERVENANT_ID ); + END; + + PROCEDURE CALCULER_TOUT( ANNEE_ID NUMERIC DEFAULT NULL ) IS + i_id NUMERIC; + BEGIN + formule_definition := ose_parametre.get_formule; + intervenant.id := null; + LOAD_VH_FROM_BDD; + + in_calculer_tout := true; + i_id := all_volumes_horaires.FIRST; + LOOP EXIT WHEN i_id IS NULL; + CALCULER( i_id ); + COMMIT; + i_id := all_volumes_horaires.NEXT(i_id); + END LOOP; + in_calculer_tout := false; + END; + + + + PROCEDURE TEST( INTERVENANT_TEST_ID NUMERIC ) IS + procedure_name VARCHAR2(30); + package_name VARCHAR2(30); + BEGIN + intervenant.id := INTERVENANT_TEST_ID; + + SELECT + package_name, procedure_name INTO package_name, procedure_name + FROM + formule f JOIN formule_test_intervenant fti ON fti.formule_id = f.id + WHERE + fti.id = intervenant.id; + + LOAD_INTERVENANT_FROM_TEST; + LOAD_VH_FROM_TEST; + debug_actif := TRUE; + + BEGIN + EXECUTE IMMEDIATE \'BEGIN \' || package_name || \'.\' || procedure_name || \'; END;\'; + SAVE_TO_TEST(1); + EXCEPTION WHEN OTHERS THEN + SAVE_TO_TEST(0); + RAISE_APPLICATION_ERROR(-20001, dbms_utility.format_error_backtrace,true); + END; + END; + + + + PROCEDURE TEST_TOUT IS + BEGIN + FOR d IN (SELECT id FROM formule_test_intervenant) + LOOP + TEST( d.id ); + END LOOP; + END; + + + + PROCEDURE CALCULER_TBL( PARAMS UNICAEN_TBL.T_PARAMS ) IS + intervenant_id NUMERIC; + TYPE r_cursor IS REF CURSOR; + diff_cur r_cursor; + BEGIN + OPEN diff_cur FOR \'WITH interv AS (SELECT id intervenant_id, intervenant.* FROM intervenant) + SELECT intervenant_id FROM interv WHERE \' || unicaen_tbl.PARAMS_TO_CONDS( params ); + LOOP + FETCH diff_cur INTO intervenant_id; EXIT WHEN diff_cur%NOTFOUND; + BEGIN + CALCULER( intervenant_id ); + END; + END LOOP; + CLOSE diff_cur; + END; + + + + PROCEDURE DEBUG_INTERVENANT IS + BEGIN + ose_test.echo(\'OSE Formule DEBUG Intervenant\'); + ose_test.echo(\'id = \' || intervenant.id); + ose_test.echo(\'annee_id = \' || intervenant.annee_id); + ose_test.echo(\'structure_id = \' || intervenant.structure_id); + ose_test.echo(\'type_volume_horaire_id = \' || intervenant.type_volume_horaire_id); + ose_test.echo(\'heures_decharge = \' || intervenant.heures_decharge); + ose_test.echo(\'heures_service_statutaire = \' || intervenant.heures_service_statutaire); + ose_test.echo(\'heures_service_modifie = \' || intervenant.heures_service_modifie); + ose_test.echo(\'depassement_service_du_sans_hc = \' || CASE WHEN intervenant.depassement_service_du_sans_hc THEN \'OUI\' ELSE \'NON\' END); + ose_test.echo(\'service_du = \' || intervenant.service_du); + END; + + PROCEDURE DEBUG_VOLUMES_HORAIRES(VOLUME_HORAIRE_ID NUMERIC DEFAULT NULL) IS + type_volume_horaire_id NUMERIC; + etat_volume_horaire_id NUMERIC; + vh t_volume_horaire; + BEGIN + ose_test.echo(\'OSE Formule DEBUG Intervenant\'); + + type_volume_horaire_id := all_volumes_horaires(intervenant.id).FIRST; + LOOP EXIT WHEN type_volume_horaire_id IS NULL; + etat_volume_horaire_id := all_volumes_horaires(intervenant.id)(type_volume_horaire_id).FIRST; + LOOP EXIT WHEN etat_volume_horaire_id IS NULL; + ose_test.echo(\'tvh=\' || type_volume_horaire_id || \', evh=\' || etat_volume_horaire_id); + FOR i IN 1 .. all_volumes_horaires(intervenant.id)(type_volume_horaire_id)(etat_volume_horaire_id).length LOOP + vh := all_volumes_horaires(intervenant.id)(type_volume_horaire_id)(etat_volume_horaire_id).items(i); + IF VOLUME_HORAIRE_ID IS NULL OR VOLUME_HORAIRE_ID = vh.volume_horaire_id OR VOLUME_HORAIRE_ID = vh.volume_horaire_ref_id THEN + ose_test.echo(\'volume_horaire_id = \' || vh.volume_horaire_id); + ose_test.echo(\'volume_horaire_ref_id = \' || vh.volume_horaire_ref_id); + ose_test.echo(\'service_id = \' || vh.service_id); + ose_test.echo(\'service_referentiel_id = \' || vh.service_referentiel_id); + ose_test.echo(\'taux_fi = \' || vh.taux_fi); + ose_test.echo(\'taux_fa = \' || vh.taux_fa); + ose_test.echo(\'taux_fc = \' || vh.taux_fc); + ose_test.echo(\'ponderation_service_du = \' || vh.ponderation_service_du); + ose_test.echo(\'ponderation_service_compl = \' || vh.ponderation_service_compl); + ose_test.echo(\'structure_id = \' || vh.structure_id); + ose_test.echo(\'structure_is_affectation = \' || CASE WHEN vh.structure_is_affectation THEN \'OUI\' ELSE \'NON\' END); + ose_test.echo(\'structure_is_univ = \' || CASE WHEN vh.structure_is_univ THEN \'OUI\' ELSE \'NON\' END); + ose_test.echo(\'service_statutaire = \' || CASE WHEN vh.service_statutaire THEN \'OUI\' ELSE \'NON\' END); + ose_test.echo(\'heures = \' || vh.heures); + ose_test.echo(\'taux_service_du = \' || vh.taux_service_du); + ose_test.echo(\'taux_service_compl = \' || vh.taux_service_compl); + ose_test.echo(\'param_1 = \' || vh.param_1); + ose_test.echo(\'param_2 = \' || vh.param_2); + ose_test.echo(\'param_3 = \' || vh.param_3); + ose_test.echo(\'param_4 = \' || vh.param_4); + ose_test.echo(\'param_5 = \' || vh.param_5); + ose_test.echo(\'service_fi = \' || vh.service_fi); + ose_test.echo(\'service_fa = \' || vh.service_fa); + ose_test.echo(\'service_fc = \' || vh.service_fc); + ose_test.echo(\'service_referentiel = \' || vh.service_referentiel); + ose_test.echo(\'heures_compl_fi = \' || vh.heures_compl_fi); + ose_test.echo(\'heures_compl_fa = \' || vh.heures_compl_fa); + ose_test.echo(\'heures_compl_fc = \' || vh.heures_compl_fc); + ose_test.echo(\'heures_compl_fc_majorees = \' || vh.heures_compl_fc_majorees); + ose_test.echo(\'heures_compl_referentiel = \' || vh.heures_compl_referentiel); + ose_test.echo(\'\'); + END IF; + END LOOP; + etat_volume_horaire_id := all_volumes_horaires(intervenant.id)(type_volume_horaire_id).NEXT(etat_volume_horaire_id); + END LOOP; + type_volume_horaire_id := all_volumes_horaires(intervenant.id).NEXT(type_volume_horaire_id); + END LOOP; + END; + +END OSE_FORMULE;', + ), + 'OSE_HISTO' => + array ( + 'name' => 'OSE_HISTO', + 'definition' => 'CREATE OR REPLACE PACKAGE "OSE_HISTO" AS + + FUNCTION FILTRE( histo_debut NUMERIC, histo_fin NUMERIC ) RETURN NUMERIC; + +END OSE_HISTO;', + 'body' => 'CREATE OR REPLACE PACKAGE BODY "OSE_HISTO" AS + + FUNCTION FILTRE( histo_debut NUMERIC, histo_fin NUMERIC ) RETURN NUMERIC IS + BEGIN + RETURN 1; + END; + +END OSE_HISTO;', + ), + 'OSE_PAIEMENT' => + array ( + 'name' => 'OSE_PAIEMENT', + 'definition' => 'CREATE OR REPLACE PACKAGE "OSE_PAIEMENT" AS + + PROCEDURE CHECK_BAD_PAIEMENTS( FORMULE_RES_SERVICE_ID NUMERIC DEFAULT NULL, FORMULE_RES_SERVICE_REF_ID NUMERIC DEFAULT NULL ); + +END OSE_PAIEMENT;', + 'body' => 'CREATE OR REPLACE PACKAGE BODY "OSE_PAIEMENT" AS + + PROCEDURE CHECK_BAD_PAIEMENTS( FORMULE_RES_SERVICE_ID NUMERIC DEFAULT NULL, FORMULE_RES_SERVICE_REF_ID NUMERIC DEFAULT NULL ) IS + cc NUMERIC; + BEGIN + SELECT count(*) INTO cc + FROM mise_en_paiement mep + WHERE + mep.histo_destruction IS NULL + AND mep.formule_res_service_id = NVL( CHECK_BAD_PAIEMENTS.FORMULE_RES_SERVICE_ID, mep.formule_res_service_id ) + AND mep.formule_res_service_ref_id = NVL( CHECK_BAD_PAIEMENTS.FORMULE_RES_SERVICE_REF_ID, mep.formule_res_service_ref_id ) + ; + + IF (cc > 0) THEN + raise_application_error(-20101, \'Il est impossible d\'\'effectuer cette action : des demandes de mise en paiement ont été saisies et ne peuvent pas être modifiées\'); + ELSE + DELETE FROM mise_en_paiement WHERE + histo_destruction IS NOT NULL + AND formule_res_service_id = NVL( CHECK_BAD_PAIEMENTS.FORMULE_RES_SERVICE_ID, formule_res_service_id ) + AND formule_res_service_ref_id = NVL( CHECK_BAD_PAIEMENTS.FORMULE_RES_SERVICE_REF_ID, formule_res_service_ref_id ) + ; + END IF; + END; + +END OSE_PAIEMENT;', + ), + 'OSE_PARAMETRE' => + array ( + 'name' => 'OSE_PARAMETRE', + 'definition' => 'CREATE OR REPLACE PACKAGE "OSE_PARAMETRE" AS + + function get_etablissement return Numeric; + function get_annee return Numeric; + function get_annee_import return Numeric; + function get_ose_user return Numeric; + function get_formule RETURN formule%rowtype; + +END OSE_PARAMETRE;', + 'body' => 'CREATE OR REPLACE PACKAGE BODY "OSE_PARAMETRE" AS + + cache_ose_user NUMERIC; + cache_annee_id NUMERIC; + + FUNCTION get_etablissement return Numeric AS + etab_id numeric; + BEGIN + select to_number(valeur) into etab_id from parametre where nom = \'etablissement\'; + RETURN etab_id; + END get_etablissement; + + FUNCTION get_annee return Numeric AS + annee_id numeric; + BEGIN + IF cache_annee_id IS NOT NULL THEN RETURN cache_annee_id; END IF; + select to_number(valeur) into annee_id from parametre where nom = \'annee\'; + cache_annee_id := annee_id; + RETURN cache_annee_id; + END get_annee; + + FUNCTION get_annee_import RETURN NUMERIC AS + annee_id NUMERIC; + BEGIN + SELECT to_number(valeur) INTO annee_id FROM parametre WHERE nom = \'annee_import\'; + RETURN annee_id; + END get_annee_import; + + FUNCTION get_ose_user return NUMERIC AS + ose_user_id numeric; + BEGIN + IF cache_ose_user IS NOT NULL THEN RETURN cache_ose_user; END IF; + select to_number(valeur) into ose_user_id from parametre where nom = \'oseuser\'; + cache_ose_user := ose_user_id; + RETURN cache_ose_user; + END get_ose_user; + + FUNCTION get_formule RETURN formule%rowtype IS + fdata formule%rowtype; + BEGIN + SELECT + f.* INTO fdata + FROM + formule f + JOIN parametre p ON f.id = to_number(p.valeur) + WHERE p.nom = \'formule\'; + RETURN fdata; + END; + +END OSE_PARAMETRE;', + ), + 'OSE_TEST' => + array ( + 'name' => 'OSE_TEST', + 'definition' => 'CREATE OR REPLACE PACKAGE "OSE_TEST" AS + + DEBUG_ENABLED BOOLEAN DEFAULT FALSE; + + -- SET SERVEROUTPUT ON + + PROCEDURE SHOW_SUCCES; + + PROCEDURE HIDE_SUCCES; + + PROCEDURE ECHO( MSG CLOB ); + + PROCEDURE INIT; + + PROCEDURE SHOW_STATS; + + PROCEDURE DEBUT( TEST_NAME CLOB ); + + PROCEDURE FIN; + + PROCEDURE ASSERT( condition BOOLEAN, MSG CLOB ); + + PROCEDURE HOROINIT; + + PROCEDURE HORODATAGE( msg VARCHAR2 ); + + FUNCTION GET_STRUCTURE_BY_ID( id NUMERIC ) RETURN structure%rowtype; + +END OSE_TEST;', + 'body' => 'CREATE OR REPLACE PACKAGE BODY "OSE_TEST" AS + TYPE OUT_LIST IS TABLE OF CLOB; + HTS TIMESTAMP; + + SUCCES_SHOWN BOOLEAN DEFAULT TRUE; + T_SUCCES_COUNT NUMERIC DEFAULT 0; + T_ECHECS_COUNT NUMERIC DEFAULT 0; + A_SUCCES_COUNT NUMERIC DEFAULT 0; + A_ECHECS_COUNT NUMERIC DEFAULT 0; + CURRENT_TEST CLOB; + CURRENT_TEST_OUTPUT_BUFFER OUT_LIST := OUT_LIST(); + CURRENT_TEST_OUTPUT_BUFFER_ERR BOOLEAN; + + PROCEDURE SHOW_SUCCES IS + BEGIN + SUCCES_SHOWN := true; + END SHOW_SUCCES; + + PROCEDURE HIDE_SUCCES IS + BEGIN + SUCCES_SHOWN := false; + END HIDE_SUCCES; + + PROCEDURE DEBUT( TEST_NAME CLOB ) IS + BEGIN + CURRENT_TEST := TEST_NAME; + CURRENT_TEST_OUTPUT_BUFFER_ERR := FALSE; + echo (\' \'); echo(\'TEST \' || TEST_NAME || \' >>>>>>>>>>\' ); + END; + + PROCEDURE FIN IS + TEST_NAME CLOB; + BEGIN + IF CURRENT_TEST_OUTPUT_BUFFER_ERR THEN + T_ECHECS_COUNT := T_ECHECS_COUNT + 1; + echo(\'>>>>>>>>>> FIN DU TEST \' || CURRENT_TEST ); echo (\' \'); + CURRENT_TEST := NULL; + + FOR i IN 1 .. CURRENT_TEST_OUTPUT_BUFFER.COUNT LOOP + echo( CURRENT_TEST_OUTPUT_BUFFER(i) ); + END LOOP; + ELSE + T_SUCCES_COUNT := T_SUCCES_COUNT + 1; + TEST_NAME := CURRENT_TEST; + CURRENT_TEST := NULL; + echo(\'SUCCÈS DU TEST : \' || TEST_NAME ); + END IF; + CURRENT_TEST_OUTPUT_BUFFER.DELETE; -- clear buffer + END; + + PROCEDURE ECHO( MSG CLOB ) IS + BEGIN + IF CURRENT_TEST IS NULL THEN + dbms_output.put_line(MSG); + ELSE + CURRENT_TEST_OUTPUT_BUFFER.EXTEND; + CURRENT_TEST_OUTPUT_BUFFER (CURRENT_TEST_OUTPUT_BUFFER.LAST) := MSG; + END IF; + END; + + PROCEDURE INIT IS + BEGIN + T_SUCCES_COUNT := 0; + T_ECHECS_COUNT := 0; + A_SUCCES_COUNT := 0; + A_ECHECS_COUNT := 0; + CURRENT_TEST := NULL; + END INIT; + + PROCEDURE SHOW_STATS IS + BEGIN + echo ( \' \' ); + echo ( \'********************************* STATISTIQUES *********************************\' ); + echo ( \' \' ); + echo ( \' - nombre de tests passés avec succès : \' || T_SUCCES_COUNT ); + echo ( \' - nombre de tests ayant échoué : \' || T_ECHECS_COUNT ); + echo ( \' \' ); + echo ( \' - nombre d\'\'assertions passés avec succès : \' || A_SUCCES_COUNT ); + echo ( \' - nombre d\'\'assertions ayant échoué : \' || A_ECHECS_COUNT ); + echo ( \' \' ); + echo ( \'********************************************************************************\' ); + echo ( \' \' ); + END; + + PROCEDURE ASSERT( condition BOOLEAN, MSG CLOB ) IS + BEGIN + IF condition THEN + A_SUCCES_COUNT := A_SUCCES_COUNT + 1; + IF SUCCES_SHOWN THEN + ECHO(\' SUCCÈS : \' || MSG ); + END IF; + ELSE + A_ECHECS_COUNT := A_ECHECS_COUNT + 1; + CURRENT_TEST_OUTPUT_BUFFER_ERR := TRUE; + ECHO(\' ** ECHEC ** : \' || MSG ); + END IF; + END; + + PROCEDURE HOROINIT IS + BEGIN + HTS := systimestamp; + END; + + PROCEDURE HORODATAGE( msg VARCHAR2 ) IS + diff INTERVAL DAY(9) TO SECOND(3); + BEGIN + IF HTS IS NULL THEN + HTS := systimestamp; + RETURN; + END IF; + + diff := systimestamp - HTS; + HTS := systimestamp; + + echo(msg || \' (\' || diff || \')\'); + END; + + FUNCTION GET_STRUCTURE_BY_ID( id NUMERIC ) RETURN structure%rowtype IS + res structure%rowtype; + BEGIN + IF ID IS NULL THEN RETURN res; END IF; + SELECT * INTO res FROM structure WHERE id = GET_STRUCTURE_BY_ID.id; + RETURN res; + END; + +END OSE_TEST;', + ), + 'OSE_VALIDATION' => + array ( + 'name' => 'OSE_VALIDATION', + 'definition' => 'CREATE OR REPLACE PACKAGE "OSE_VALIDATION" AS + + FUNCTION can_devalider ( v validation%rowtype ) RETURN varchar2; + +END OSE_VALIDATION;', + 'body' => 'CREATE OR REPLACE PACKAGE BODY "OSE_VALIDATION" AS + + FUNCTION can_devalider ( v validation%rowtype ) RETURN varchar2 IS + tv type_validation%rowtype; + nb NUMERIC; + result varchar2(500) default null; + BEGIN + + SELECT * INTO tv FROM type_validation WHERE id = v.type_validation_id; + + IF tv.code = \'SERVICES_PAR_COMP\' THEN + + SELECT + SUM(CASE WHEN c.id IS NOT NULL THEN 1 ELSE 0 END) INTO nb + FROM + validation_vol_horaire vvh + JOIN volume_horaire vh ON vh.id = vvh.volume_horaire_id + LEFT JOIN contrat c ON c.id = vh.contrat_id AND c.histo_destruction IS NULL + WHERE + vvh.validation_id = v.id; + + -- Si des volumes horaires ont déjà fait l\'objet de contrats alors pas de dévalidation possible des heures + IF nb > 0 THEN + result := \'La dévalidation est impossible car des contrats ont déjà été édités sur la base de ces heures.\'; + END IF; + + END IF; + + IF tv.code = \'CLOTURE_REALISE\' THEN + + SELECT + COUNT(*) INTO nb + FROM + tbl_paiement p + WHERE + p.periode_paiement_id IS NOT NULL + AND p.intervenant_id = v.intervenant_id + AND ROWNUM = 1; + + IF nb > 0 THEN + result := \'La suppression de la clôture des services réalisés est impossible car des heures ont été payées ou bien le paiement a été demandé.\'; + END IF; + + END IF; + + RETURN result; + END; + +END OSE_VALIDATION;', + ), + 'OSE_WORKFLOW' => + array ( + 'name' => 'OSE_WORKFLOW', + 'definition' => 'CREATE OR REPLACE PACKAGE "OSE_WORKFLOW" AS + + PACKAGE_SUJET VARCHAR2(80) DEFAULT \'OSE_WORKFLOW\'; + + PROCEDURE CALCULER( INTERVENANT_ID NUMERIC ); + PROCEDURE CALCULER_TOUT( ANNEE_ID NUMERIC DEFAULT NULL ); + PROCEDURE CALCULER_TBL( PARAMS UNICAEN_TBL.T_PARAMS ); + + PROCEDURE DEP_CHECK( etape_suiv_id NUMERIC, etape_prec_id NUMERIC ); + + PROCEDURE SET_INTERVENANT(INTERVENANT_ID NUMERIC DEFAULT NULL); + FUNCTION GET_INTERVENANT RETURN NUMERIC; + FUNCTION MATCH_INTERVENANT(INTERVENANT_ID NUMERIC DEFAULT NULL) RETURN NUMERIC; +END OSE_WORKFLOW;', + 'body' => 'CREATE OR REPLACE PACKAGE BODY "OSE_WORKFLOW" AS + INTERVENANT_ID NUMERIC DEFAULT NULL; + + TYPE t_workflow IS TABLE OF tbl_workflow%rowtype INDEX BY PLS_INTEGER; + + TYPE t_dep IS TABLE OF wf_etape_dep%rowtype INDEX BY PLS_INTEGER; + TYPE t_deps IS TABLE OF t_dep INDEX BY PLS_INTEGER; + TYPE t_deps_bloquantes IS TABLE OF wf_dep_bloquante%rowtype INDEX BY PLS_INTEGER; + + -- propre au calcul courant ! ! + etapes t_workflow; + deps t_deps; + deps_initialized boolean default false; + deps_bloquantes t_deps_bloquantes; + deps_bloquantes_index PLS_INTEGER DEFAULT 1; + + + + + FUNCTION ETAPE_FRANCHIE( etape tbl_workflow%rowtype, need_done boolean default false ) RETURN FLOAT IS + res FLOAT DEFAULT 0; + BEGIN + IF etape.objectif = 0 THEN + IF need_done THEN RETURN 0; ELSE RETURN 1; END IF; + END IF; + + IF etape.atteignable = 0 THEN RETURN 0; END IF; + + IF etape.objectif > 0 THEN + res := etape.realisation / etape.objectif; + END IF; + + IF res > 1 THEN + res := 1; + END IF; + + RETURN res; + END; + + + + PROCEDURE POPULATE_ETAPES( INTERVENANT_ID NUMERIC ) IS + i NUMERIC DEFAULT 0; + BEGIN + etapes.delete; -- initialisation + + FOR wie IN ( + SELECT + wep.annee_id annee_id, + e.id etape_id, + w.structure_id structure_id, + ROUND(COALESCE(w.objectif,0),2) objectif, + CASE WHEN w.intervenant_id IS NULL THEN 0 ELSE 1 END atteignable, + ROUND(COALESCE(w.realisation,0),2) realisation, + wep.etape_code etape_code, + si.id statut_intervenant_id, + ti.id type_intervenant_id, + ti.code type_intervenant_code + FROM + v_workflow_etape_pertinente wep + JOIN wf_etape e ON e.code = wep.etape_code + JOIN intervenant i ON i.id = wep.intervenant_id + JOIN statut_intervenant si ON si.id = i.statut_id + JOIN type_intervenant ti ON ti.id = si.type_intervenant_id + LEFT JOIN v_tbl_workflow w ON w.intervenant_id = wep.intervenant_id AND w.etape_code = wep.etape_code + WHERE + wep.intervenant_id = POPULATE_ETAPES.INTERVENANT_ID + AND (e.obligatoire = 1 OR w.intervenant_id IS NOT NULL) + ORDER BY + e.ordre + ) LOOP + etapes( i ).annee_id := wie.annee_id; + etapes( i ).intervenant_id := intervenant_id; + etapes( i ).etape_id := wie.etape_id; + etapes( i ).structure_id := wie.structure_id; + etapes( i ).atteignable := wie.atteignable; + etapes( i ).objectif := wie.objectif; + etapes( i ).realisation := wie.realisation; + etapes( i ).etape_code := wie.etape_code; + etapes( i ).statut_intervenant_id := wie.statut_intervenant_id; + etapes( i ).type_intervenant_id := wie.type_intervenant_id; + etapes( i ).type_intervenant_code := wie.type_intervenant_code; + i := i + 1; + END LOOP; + END; + + + + -- peuple l\'arbre des dépendances entre étapes de workflow + PROCEDURE POPULATE_DEPS( INTERVENANT_ID NUMERIC ) IS + s PLS_INTEGER; -- index de l\'étape suivante + p PLS_INTEGER; -- index de l\'étape précédente + BEGIN + IF deps_initialized THEN RETURN; END IF; + + FOR d IN ( + SELECT + wed.* + FROM + wf_etape_dep wed + JOIN intervenant i ON i.id = POPULATE_DEPS.INTERVENANT_ID + JOIN statut_intervenant si ON si.id = i.statut_id + WHERE + active = 1 + AND wed.type_intervenant_id IS NULL OR wed.type_intervenant_id = si.type_intervenant_id + ) LOOP + deps(d.etape_suiv_id)(d.etape_prec_id) := d; + END LOOP; + + deps_initialized := true; + END; + + + + PROCEDURE ADD_DEP_BLOQUANTE( wf_etape_dep_id NUMERIC, tbl_workflow_id NUMERIC ) IS + BEGIN + deps_bloquantes_index := deps_bloquantes_index + 1; + deps_bloquantes(deps_bloquantes_index).wf_etape_dep_id := wf_etape_dep_id; + deps_bloquantes(deps_bloquantes_index).tbl_workflow_id := tbl_workflow_id; + END; + + + + PROCEDURE CALCUL_ATTEIGNABLE( s PLS_INTEGER, d wf_etape_dep%rowtype ) IS + count_tested PLS_INTEGER DEFAULT 0; + count_na PLS_INTEGER DEFAULT 0; + p PLS_INTEGER; -- index de l\'étape précédente + BEGIN + + p := etapes.FIRST; + LOOP EXIT WHEN p IS NULL; + IF etapes(p).etape_id = d.etape_prec_id THEN + -- on restreint en fonction du périmètre visé : + -- - si la dépendance n\'est pas locale alors on teste + -- - si les structures aussi bien de l\'étape testée que de l\'étape dépendante sont nulles alors on teste aussi car elles sont "universelles" + -- - si les structures sont équivalentes alors on teste, sinon elles ne sont pas dans le périmètre local + IF + (d.locale = 0) + OR etapes(s).structure_id IS NULL + OR etapes(p).structure_id IS NULL + OR etapes(s).structure_id = etapes(p).structure_id + THEN + count_tested := count_tested + 1; + + -- on teste le type de franchissement désiré et si ce n\'est pas bon alors on déclare l\'étape courante non atteignable + + -- - idem si on a besoin d\'une dépendance partiellement franchie est qu\'elle ne l\'est pas + IF d.partielle = 1 THEN + IF ETAPE_FRANCHIE(etapes(p), d.obligatoire=1) = 0 THEN -- si le franchissement est totalement inexistant + count_na := count_na + 1; + END IF; + -- - si on a besoin d\'une dépendance complètement franchie est qu\'elle ne l\'est pas alors ce n\'est pas atteignable + ELSE + IF ETAPE_FRANCHIE(etapes(p), d.obligatoire=1) < 1 THEN + count_na := count_na + 1; + END IF; + END IF; + END IF; + + END IF; + p := etapes.next(p); + END LOOP; + + -- on applique le résultat uniquement si des étapes dépendantes ont été trouvées + IF count_tested > 0 THEN + + -- si les étapes dépendantes ont été intégralement franchies + IF d.integrale = 1 THEN + -- si l\'intégralité des étapes est atteignable = NON si au moins une ne l\'est pas + IF count_na > 0 THEN + etapes(s).atteignable := 0; + ADD_DEP_BLOQUANTE( d.id, s ); + END IF; + + -- sinon... + ELSE + -- si au moins une étape est atteignable = NON si toutes ne sont pas atteignables + IF count_tested = count_na THEN + etapes(s).atteignable := 0; + ADD_DEP_BLOQUANTE( d.id, s ); + END IF; + END IF; + END IF; + END; + + + + -- calcule si les étapes sont atteignables ou non + PROCEDURE CALCUL_ATTEIGNABLES IS + e PLS_INTEGER; -- index de l\'étape courante + d PLS_INTEGER; -- ID de l\'étape précédante + BEGIN + deps_bloquantes.delete; + e := etapes.FIRST; + LOOP EXIT WHEN e IS NULL; + IF deps.exists(etapes(e).etape_id) THEN -- s\'il n\'y a aucune dépendance alors pas de test!! + d := deps(etapes(e).etape_id).FIRST; + LOOP EXIT WHEN d IS NULL; + + CALCUL_ATTEIGNABLE(e, deps(etapes(e).etape_id)(d)); + + d := deps(etapes(e).etape_id).next(d); + END LOOP; + END IF; + e := etapes.next(e); + END LOOP; + END; + + + + FUNCTION ENREGISTRER_ETAPE( e tbl_workflow%rowtype ) RETURN NUMERIC IS + n_etape_id NUMERIC; + BEGIN + + MERGE INTO tbl_workflow w USING dual ON ( + + w.intervenant_id = e.intervenant_id + AND w.etape_id = e.etape_id + AND NVL(w.structure_id,0) = NVL(e.structure_id,0) + + ) WHEN MATCHED THEN UPDATE SET + + atteignable = e.atteignable, + objectif = e.objectif, + realisation = e.realisation, + etape_code = e.etape_code, + statut_intervenant_id = e.statut_intervenant_id, + type_intervenant_id = e.type_intervenant_id, + type_intervenant_code = e.type_intervenant_code, + to_delete = 0 + + WHEN NOT MATCHED THEN INSERT ( + + id, + annee_id, + intervenant_id, + etape_id, + structure_id, + atteignable, + objectif, + realisation, + etape_code, + statut_intervenant_id, + type_intervenant_id, + type_intervenant_code, + to_delete + + ) VALUES ( + + TBL_WORKFLOW_ID_SEQ.NEXTVAL, + e.annee_id, + e.intervenant_id, + e.etape_id, + e.structure_id, + e.atteignable, + e.objectif, + e.realisation, + e.etape_code, + e.statut_intervenant_id, + e.type_intervenant_id, + e.type_intervenant_code, + 0 + + ); + + SELECT w.id INTO n_etape_id FROM tbl_workflow w WHERE + w.intervenant_id = e.intervenant_id + AND w.etape_id = e.etape_id + AND NVL(w.structure_id,0) = NVL(e.structure_id,0) + ; + + RETURN n_etape_id; + END; + + + + PROCEDURE ENREGISTRER_DEP_BLOQUANTE( db wf_dep_bloquante%rowtype ) IS + BEGIN + MERGE INTO wf_dep_bloquante wdb USING dual ON ( + + wdb.wf_etape_dep_id = db.wf_etape_dep_id + AND wdb.tbl_workflow_id = db.tbl_workflow_id + + ) WHEN MATCHED THEN UPDATE SET + + to_delete = 0 + + WHEN NOT MATCHED THEN INSERT ( + + id, + wf_etape_dep_id, + tbl_workflow_id, + to_delete + + ) VALUES ( + + WF_DEP_BLOQUANTE_ID_SEQ.NEXTVAL, + db.wf_etape_dep_id, + db.tbl_workflow_id, + 0 + + ); + END; + + + + PROCEDURE ENREGISTRER( INTERVENANT_ID NUMERIC ) IS + i PLS_INTEGER; + BEGIN + + UPDATE tbl_workflow SET to_delete = 1 WHERE intervenant_id = ENREGISTRER.INTERVENANT_ID; + UPDATE wf_dep_bloquante SET to_delete = 1 WHERE tbl_workflow_id IN (SELECT id FROM tbl_workflow WHERE intervenant_id = ENREGISTRER.INTERVENANT_ID); + + i := etapes.FIRST; + LOOP EXIT WHEN i IS NULL; + etapes(i).id := ENREGISTRER_ETAPE( etapes(i) ); + i := etapes.NEXT(i); + END LOOP; + + i := deps_bloquantes.FIRST; + LOOP EXIT WHEN i IS NULL; + deps_bloquantes(i).tbl_workflow_id := etapes(deps_bloquantes(i).tbl_workflow_id).id; + ENREGISTRER_DEP_BLOQUANTE( deps_bloquantes(i) ); + i := deps_bloquantes.NEXT(i); + END LOOP; + + DELETE FROM tbl_workflow WHERE TO_DELETE = 1 AND intervenant_id = ENREGISTRER.INTERVENANT_ID; + DELETE FROM wf_dep_bloquante WHERE TO_DELETE = 1; + END; + + + + PROCEDURE DEP_CHECK( etape_suiv_id NUMERIC, etape_prec_id NUMERIC ) IS + eso NUMERIC; + epo NUMERIC; + BEGIN + SELECT ordre INTO eso FROM wf_etape WHERE id = etape_suiv_id; + SELECT ordre INTO epo FROM wf_etape WHERE id = etape_prec_id; + + IF eso < epo THEN + raise_application_error(-20101, \'Une étape de Workflow ne peut dépendre d\'\'une étape située en aval\'); + END IF; + IF eso = epo THEN + raise_application_error(-20101, \'Une étape de Workflow ne peut dépendre d\'\'elle-même\'); + END IF; + END; + + + + PROCEDURE DEBUG_CALCUL( INTERVENANT_ID NUMERIC ) IS + i PLS_INTEGER; + d PLS_INTEGER; + dep_desc VARCHAR2(200); + BEGIN + ose_test.echo(\'\'); + ose_test.echo(\'-- DEBUG WORKFLOW ETAPE INTERVENANT_ID=\'|| INTERVENANT_ID ||\' --\'); + i := etapes.FIRST; + LOOP EXIT WHEN i IS NULL; + /*ose_test.echo( + \'etape=\' || RPAD( ose_test.get_wf_etape_by_id(etapes(i).etape_id).code, 30, \' \' ) + || \', structure=\' || RPAD( NVL(ose_test.get_structure_by_id(etapes(i).structure_id).libelle_court,\' \'), 20, \' \' ) + || \', \' || CASE WHEN etapes(i).atteignable=1 THEN \'atteignable\' ELSE \'na\' END + || \', objectif= \' || ROUND(etapes(i).objectif) + || \', realisation= \' || ROUND(etapes(i).realisation) + );*/ + + d := deps_bloquantes.FIRST; + LOOP EXIT WHEN d IS NULL; + IF deps_bloquantes(d).tbl_workflow_id = i THEN + + SELECT + we.desc_non_franchie INTO dep_desc + FROM + wf_etape_dep wed + JOIN wf_etape we ON we.id = wed.etape_prec_id + WHERE + wed.id = deps_bloquantes(d).wf_etape_dep_id; + + ose_test.echo(\' CAUSE =\' || dep_desc); + END IF; + d := deps_bloquantes.NEXT(d); + END LOOP; + + i := etapes.NEXT(i); + END LOOP; + ose_test.echo(\'\'); + END; + + + + -- calcul du workflow pour un intervenant + PROCEDURE CALCULER( INTERVENANT_ID NUMERIC ) IS + BEGIN + set_intervenant(intervenant_id); + POPULATE_ETAPES( INTERVENANT_ID ); + POPULATE_DEPS( INTERVENANT_ID ); + CALCUL_ATTEIGNABLES; + IF OSE_TEST.DEBUG_ENABLED THEN + DEBUG_CALCUL( INTERVENANT_ID ); + END IF; + ENREGISTRER( INTERVENANT_ID ); + set_intervenant(); + END; + + + + PROCEDURE CALCULER_TOUT( ANNEE_ID NUMERIC DEFAULT NULL ) IS + BEGIN + FOR mp IN ( + SELECT + id intervenant_id + FROM + intervenant i + WHERE + i.histo_destruction IS NULL + AND (CALCULER_TOUT.ANNEE_ID IS NULL OR i.annee_id = CALCULER_TOUT.ANNEE_ID) + ) + LOOP + CALCULER( mp.intervenant_id ); + END LOOP; + END; + + + + PROCEDURE CALCULER_TBL( PARAMS UNICAEN_TBL.T_PARAMS ) IS + intervenant_id NUMERIC; + TYPE r_cursor IS REF CURSOR; + diff_cur r_cursor; + BEGIN + OPEN diff_cur FOR \'WITH interv AS (SELECT id intervenant_id, intervenant.* FROM intervenant) + SELECT intervenant_id FROM interv WHERE \' || unicaen_tbl.PARAMS_TO_CONDS( params ); + LOOP + FETCH diff_cur INTO intervenant_id; EXIT WHEN diff_cur%NOTFOUND; + BEGIN + CALCULER( intervenant_id ); + END; + END LOOP; + CLOSE diff_cur; + END; + + + + FUNCTION GET_INTERVENANT RETURN NUMERIC IS + BEGIN + RETURN OSE_WORKFLOW.INTERVENANT_ID; + END; + + PROCEDURE SET_INTERVENANT( INTERVENANT_ID NUMERIC DEFAULT NULL) IS + BEGIN + IF SET_INTERVENANT.INTERVENANT_ID = -1 THEN + OSE_WORKFLOW.INTERVENANT_ID := NULL; + ELSE + OSE_WORKFLOW.INTERVENANT_ID := SET_INTERVENANT.INTERVENANT_ID; + END IF; + END; + + FUNCTION MATCH_INTERVENANT(INTERVENANT_ID NUMERIC DEFAULT NULL) RETURN NUMERIC IS + BEGIN + IF OSE_WORKFLOW.INTERVENANT_ID IS NULL OR OSE_WORKFLOW.INTERVENANT_ID = MATCH_INTERVENANT.INTERVENANT_ID THEN + RETURN 1; + ELSE + RETURN 0; + END IF; + END; +END OSE_WORKFLOW;', + ), + 'UNICAEN_IMPORT' => + array ( + 'name' => 'UNICAEN_IMPORT', + 'definition' => 'CREATE OR REPLACE PACKAGE "UNICAEN_IMPORT" AS + + z__SYNC_FILRE__z CLOB DEFAULT \'\'; + z__IGNORE_UPD_COLS__z CLOB DEFAULT \'\'; + + PROCEDURE set_current_user(p_current_user IN INTEGER); + FUNCTION get_current_user return INTEGER; + + FUNCTION get_current_annee RETURN INTEGER; + PROCEDURE set_current_annee (p_current_annee INTEGER); + + FUNCTION IN_COLUMN_LIST( VALEUR VARCHAR2, CHAMPS CLOB ) RETURN NUMERIC; + PROCEDURE REFRESH_MV( mview_name varchar2 ); + PROCEDURE SYNC_LOG( message CLOB, table_name VARCHAR2 DEFAULT NULL, source_code VARCHAR2 DEFAULT NULL ); + + PROCEDURE SYNCHRONISATION( table_name VARCHAR2, SYNC_FILRE CLOB DEFAULT \'\', IGNORE_UPD_COLS CLOB DEFAULT \'\', FORCE_SYNC BOOLEAN DEFAULT FALSE ); + + + +END UNICAEN_IMPORT;', + 'body' => 'CREATE OR REPLACE PACKAGE BODY "UNICAEN_IMPORT" AS + + v_current_user INTEGER; + v_current_annee INTEGER; + + + + FUNCTION get_current_user RETURN INTEGER IS + BEGIN + IF v_current_user IS NULL THEN + v_current_user := OSE_PARAMETRE.GET_OSE_USER(); + END IF; + RETURN v_current_user; + END get_current_user; + + PROCEDURE set_current_user (p_current_user INTEGER) is + BEGIN + v_current_user := p_current_user; + END set_current_user; + + + + FUNCTION get_current_annee RETURN INTEGER IS + BEGIN + IF v_current_annee IS NULL THEN + v_current_annee := OSE_PARAMETRE.GET_ANNEE_IMPORT(); + END IF; + RETURN v_current_annee; + END get_current_annee; + + PROCEDURE set_current_annee (p_current_annee INTEGER) IS + BEGIN + v_current_annee := p_current_annee; + END set_current_annee; + + + + PROCEDURE SYNCHRONISATION( table_name VARCHAR2, SYNC_FILRE CLOB DEFAULT \'\', IGNORE_UPD_COLS CLOB DEFAULT \'\', FORCE_SYNC BOOLEAN DEFAULT FALSE ) IS + ok NUMERIC(1); + sync NUMERIC; + BEGIN + IF FORCE_SYNC THEN + sync := 1; + ELSE + sync := 0; + END IF; + + SELECT COUNT(*) INTO ok FROM import_tables it WHERE it.table_name = SYNCHRONISATION.table_name AND (it.sync_enabled = 1 OR sync=1) AND rownum = 1; + + IF 1 = ok THEN + z__SYNC_FILRE__z := SYNCHRONISATION.SYNC_FILRE; + z__IGNORE_UPD_COLS__z := SYNCHRONISATION.IGNORE_UPD_COLS; + EXECUTE IMMEDIATE \'BEGIN UNICAEN_IMPORT_AUTOGEN_PROCS__.\' || table_name || \'(); END;\'; + END IF; + END; + + + + PROCEDURE REFRESH_MV( mview_name varchar2 ) IS + BEGIN + DBMS_MVIEW.REFRESH(mview_name, \'C\'); + EXCEPTION WHEN OTHERS THEN + SYNC_LOG( SQLERRM, mview_name ); + END; + + + + PROCEDURE SYNC_LOG( message CLOB, table_name VARCHAR2 DEFAULT NULL, source_code VARCHAR2 DEFAULT NULL ) IS + BEGIN + INSERT INTO SYNC_LOG("ID","DATE_SYNC","MESSAGE","TABLE_NAME","SOURCE_CODE") VALUES (SYNC_LOG_ID_SEQ.NEXTVAL, SYSDATE, message,table_name,source_code); + END SYNC_LOG; + + + + FUNCTION IN_COLUMN_LIST( VALEUR VARCHAR2, CHAMPS CLOB ) RETURN NUMERIC IS + BEGIN + IF REGEXP_LIKE(CHAMPS, \'(^|,)[ \\t\\r\\n\\v\\f]*\' || VALEUR || \'[ \\t\\r\\n\\v\\f]*(,|$)\') THEN RETURN 1; END IF; + RETURN 0; + END; + +END UNICAEN_IMPORT;', + ), + 'UNICAEN_TBL' => + array ( + 'name' => 'UNICAEN_TBL', + 'definition' => 'CREATE OR REPLACE PACKAGE "UNICAEN_TBL" AS + + TYPE t_params IS RECORD ( + c1 VARCHAR2(30), v1 VARCHAR2(80), + c2 VARCHAR2(30), v2 VARCHAR2(80), + c3 VARCHAR2(30), v3 VARCHAR2(80), + c4 VARCHAR2(30), v4 VARCHAR2(80), + c5 VARCHAR2(30), v5 VARCHAR2(80), + sqlcond CLOB + ); + + ACTIV_TRIGGERS BOOLEAN DEFAULT TRUE; + ACTIV_CALCULS BOOLEAN DEFAULT TRUE; + CALCUL_PROC_PARAMS t_params; + + FUNCTION MAKE_PARAMS( + c1 VARCHAR2 DEFAULT NULL, v1 VARCHAR2 DEFAULT NULL, + c2 VARCHAR2 DEFAULT NULL, v2 VARCHAR2 DEFAULT NULL, + c3 VARCHAR2 DEFAULT NULL, v3 VARCHAR2 DEFAULT NULL, + c4 VARCHAR2 DEFAULT NULL, v4 VARCHAR2 DEFAULT NULL, + c5 VARCHAR2 DEFAULT NULL, v5 VARCHAR2 DEFAULT NULL, + sqlcond CLOB DEFAULT NULL + ) RETURN t_params; + + FUNCTION PARAMS_FROM_DEMS( TBL_NAME VARCHAR2 ) RETURN t_params; + FUNCTION PARAMS_TO_CONDS ( PARAMS UNICAEN_TBL.T_PARAMS ) RETURN CLOB; + + PROCEDURE DEMANDE_CALCUL( TBL_NAME VARCHAR2 ); + PROCEDURE DEMANDE_CALCUL( TBL_NAME VARCHAR2, CONDS CLOB ); + PROCEDURE DEMANDE_CALCUL( TBL_NAME VARCHAR2, PARAMS t_params ); + + PROCEDURE CALCULER( TBL_NAME VARCHAR2 ); + PROCEDURE CALCULER( TBL_NAME VARCHAR2, CONDS CLOB ); + PROCEDURE CALCULER( TBL_NAME VARCHAR2, PARAMS t_params ); + + PROCEDURE ANNULER_DEMANDES; + PROCEDURE ANNULER_DEMANDES( TBL_NAME VARCHAR2 ); + PROCEDURE CALCULER_DEMANDES; + + -- AUTOMATIC GENERATION -- + + PROCEDURE C_AGREMENT( PARAMS UNICAEN_TBL.T_PARAMS ); + PROCEDURE C_CHARGENS( PARAMS UNICAEN_TBL.T_PARAMS ); + PROCEDURE C_CHARGENS_SEUILS_DEF( PARAMS UNICAEN_TBL.T_PARAMS ); + PROCEDURE C_CLOTURE_REALISE( PARAMS UNICAEN_TBL.T_PARAMS ); + PROCEDURE C_CONTRAT( PARAMS UNICAEN_TBL.T_PARAMS ); + PROCEDURE C_DMEP_LIQUIDATION( PARAMS UNICAEN_TBL.T_PARAMS ); + PROCEDURE C_DOSSIER( PARAMS UNICAEN_TBL.T_PARAMS ); + PROCEDURE C_PAIEMENT( PARAMS UNICAEN_TBL.T_PARAMS ); + PROCEDURE C_PIECE_JOINTE( PARAMS UNICAEN_TBL.T_PARAMS ); + PROCEDURE C_PIECE_JOINTE_DEMANDE( PARAMS UNICAEN_TBL.T_PARAMS ); + PROCEDURE C_PIECE_JOINTE_FOURNIE( PARAMS UNICAEN_TBL.T_PARAMS ); + PROCEDURE C_SERVICE( PARAMS UNICAEN_TBL.T_PARAMS ); + PROCEDURE C_SERVICE_REFERENTIEL( PARAMS UNICAEN_TBL.T_PARAMS ); + PROCEDURE C_SERVICE_SAISIE( PARAMS UNICAEN_TBL.T_PARAMS ); + PROCEDURE C_VALIDATION_ENSEIGNEMENT( PARAMS UNICAEN_TBL.T_PARAMS ); + PROCEDURE C_VALIDATION_REFERENTIEL( PARAMS UNICAEN_TBL.T_PARAMS ); + + -- END OF AUTOMATIC GENERATION -- + +END UNICAEN_TBL;', + 'body' => 'CREATE OR REPLACE PACKAGE BODY "UNICAEN_TBL" AS + + FUNCTION MAKE_PARAMS( + c1 VARCHAR2 DEFAULT NULL, v1 VARCHAR2 DEFAULT NULL, + c2 VARCHAR2 DEFAULT NULL, v2 VARCHAR2 DEFAULT NULL, + c3 VARCHAR2 DEFAULT NULL, v3 VARCHAR2 DEFAULT NULL, + c4 VARCHAR2 DEFAULT NULL, v4 VARCHAR2 DEFAULT NULL, + c5 VARCHAR2 DEFAULT NULL, v5 VARCHAR2 DEFAULT NULL, + sqlcond CLOB DEFAULT NULL + ) RETURN t_params IS + params t_params; + BEGIN + IF c1 IS NOT NULL THEN + params.c1 := c1; + params.v1 := v1; + END IF; + IF c2 IS NOT NULL THEN + params.c2 := c2; + params.v2 := v2; + END IF; + IF c3 IS NOT NULL THEN + params.c3 := c3; + params.v3 := v3; + END IF; + IF c4 IS NOT NULL THEN + params.c4 := c4; + params.v4 := v4; + END IF; + IF c5 IS NOT NULL THEN + params.c5 := c5; + params.v5 := v5; + END IF; + params.sqlcond := sqlcond; + + RETURN params; + END; + + + + PROCEDURE DEMANDE_CALCUL( TBL_NAME VARCHAR2 ) IS + p t_params; + BEGIN + DEMANDE_CALCUL( tbl_name, p ); + END; + + + + PROCEDURE DEMANDE_CALCUL( TBL_NAME VARCHAR2, CONDS CLOB ) IS + p t_params; + BEGIN + p.sqlcond := CONDS; + DEMANDE_CALCUL( tbl_name, p ); + END; + + + + PROCEDURE DEMANDE_CALCUL( TBL_NAME VARCHAR2, PARAMS t_params ) IS + BEGIN + INSERT INTO tbl_dems ( + ID, + TBL_NAME, + c1, v1, + c2, v2, + c3, v3, + c4, v4, + c5, v5, + sqlcond + ) VALUES ( + TBL_DEMS_ID_SEQ.NEXTVAL, + TBL_NAME, + PARAMS.c1, PARAMS.v1, + PARAMS.c2, PARAMS.v2, + PARAMS.c3, PARAMS.v3, + PARAMS.c4, PARAMS.v4, + PARAMS.c5, PARAMS.v5, + PARAMS.sqlcond + ); + END; + + + + FUNCTION PARAMS_FROM_DEMS( TBL_NAME VARCHAR2 ) RETURN t_params IS + res t_params; + conds CLOB := \'\'; + cond CLOB; + BEGIN + FOR d IN ( + SELECT * + FROM tbl_dems + WHERE tbl_name = PARAMS_FROM_DEMS.TBL_NAME + ) + LOOP + + cond := \'\'; + + IF d.c1 IS NOT NULL THEN + IF cond IS NOT NULL THEN cond := cond || \' AND \'; END IF; + IF d.v1 IS NULL THEN + cond := cond || d.c1 || \' IS NULL\'; + ELSE + cond := cond || d.c1 || \'=\' || d.v1; + END IF; + END IF; + + IF d.c2 IS NOT NULL THEN + IF cond IS NOT NULL THEN cond := cond || \' AND \'; END IF; + IF d.v2 IS NULL THEN + cond := cond || d.c2 || \' IS NULL\'; + ELSE + cond := cond || d.c2 || \'=\' || d.v2; + END IF; + END IF; + + IF d.c3 IS NOT NULL THEN + IF cond IS NOT NULL THEN cond := cond || \' AND \'; END IF; + IF d.v3 IS NULL THEN + cond := cond || d.c3 || \' IS NULL\'; + ELSE + cond := cond || d.c3 || \'=\' || d.v3; + END IF; + END IF; + + IF d.c4 IS NOT NULL THEN + IF cond IS NOT NULL THEN cond := cond || \' AND \'; END IF; + IF d.v4 IS NULL THEN + cond := cond || d.c4 || \' IS NULL\'; + ELSE + cond := cond || d.c4 || \'=\' || d.v4; + END IF; + END IF; + + IF d.c5 IS NOT NULL THEN + IF cond IS NOT NULL THEN cond := cond || \' AND \'; END IF; + IF d.v5 IS NULL THEN + cond := cond || d.c5 || \' IS NULL\'; + ELSE + cond := cond || d.c5 || \'=\' || d.v5; + END IF; + END IF; + + IF d.sqlcond IS NOT NULL THEN + IF cond IS NOT NULL THEN cond := cond || \' AND \'; END IF; + cond := cond || \'(\' || d.sqlcond || \')\'; + END IF; + + IF conds IS NOT NULL THEN + conds := conds || \' OR \'; + END IF; + conds := conds || \'(\' || cond || \')\'; + END LOOP; + + res.sqlcond := conds; + DELETE FROM tbl_dems WHERE tbl_name = PARAMS_FROM_DEMS.TBL_NAME; + RETURN res; + END; + + + + FUNCTION PARAMS_TO_CONDS ( PARAMS UNICAEN_TBL.T_PARAMS ) RETURN CLOB IS + cond CLOB; + BEGIN + IF params.c1 IS NOT NULL THEN + IF params.v1 IS NULL THEN + cond := cond || params.c1 || \' IS NULL\'; + ELSE + cond := cond || params.c1 || \'=\' || params.v1; + END IF; + END IF; + + IF params.c2 IS NOT NULL THEN + IF cond IS NOT NULL THEN cond := cond || \' AND \'; END IF; + IF params.v2 IS NULL THEN + cond := cond || params.c2 || \' IS NULL\'; + ELSE + cond := cond || params.c2 || \'=\' || params.v2; + END IF; + END IF; + + IF params.c3 IS NOT NULL THEN + IF cond IS NOT NULL THEN cond := cond || \' AND \'; END IF; + IF params.v3 IS NULL THEN + cond := cond || params.c3 || \' IS NULL\'; + ELSE + cond := cond || params.c3 || \'=\' || params.v3; + END IF; + END IF; + + IF params.c4 IS NOT NULL THEN + IF cond IS NOT NULL THEN cond := cond || \' AND \'; END IF; + IF params.v4 IS NULL THEN + cond := cond || params.c4 || \' IS NULL\'; + ELSE + cond := cond || params.c4 || \'=\' || params.v4; + END IF; + END IF; + + IF params.c5 IS NOT NULL THEN + IF cond IS NOT NULL THEN cond := cond || \' AND \'; END IF; + IF params.v5 IS NULL THEN + cond := cond || params.c5 || \' IS NULL\'; + ELSE + cond := cond || params.c5 || \'=\' || params.v5; + END IF; + END IF; + + IF params.sqlcond IS NOT NULL THEN + IF cond IS NOT NULL THEN cond := cond || \' AND \'; END IF; + cond := cond || \'(\' || params.sqlcond || \')\'; + END IF; + + IF cond IS NULL THEN cond := \'1=1\'; END IF; + + RETURN cond; + END; + + + + PROCEDURE CALCULER( TBL_NAME VARCHAR2 ) IS + p t_params; + BEGIN + ANNULER_DEMANDES( TBL_NAME ); + CALCULER(TBL_NAME, p); + END; + + + + PROCEDURE CALCULER( TBL_NAME VARCHAR2, CONDS CLOB ) IS + p t_params; + BEGIN + p.sqlcond := CONDS; + CALCULER(TBL_NAME, p); + END; + + + + PROCEDURE CALCULER( TBL_NAME VARCHAR2, PARAMS t_params ) IS + calcul_proc varchar2(30); + BEGIN + IF NOT UNICAEN_TBL.ACTIV_CALCULS THEN RETURN; END IF; + + SELECT custom_calcul_proc INTO calcul_proc FROM tbl WHERE tbl_name = CALCULER.TBL_NAME; + + UNICAEN_TBL.CALCUL_PROC_PARAMS := PARAMS; + IF calcul_proc IS NOT NULL THEN + EXECUTE IMMEDIATE + \'BEGIN \' || calcul_proc || \'(UNICAEN_TBL.CALCUL_PROC_PARAMS); END;\' + ; + ELSE + EXECUTE IMMEDIATE + \'BEGIN UNICAEN_TBL.C_\' || TBL_NAME || \'(UNICAEN_TBL.CALCUL_PROC_PARAMS); END;\' + ; + END IF; + + END; + + + + PROCEDURE ANNULER_DEMANDES IS + BEGIN + DELETE FROM tbl_dems; + END; + + + + PROCEDURE ANNULER_DEMANDES( TBL_NAME VARCHAR2 ) IS + BEGIN + DELETE FROM tbl_dems WHERE tbl_name = ANNULER_DEMANDES.tbl_name; + END; + + + + FUNCTION HAS_DEMANDES RETURN BOOLEAN IS + has_dems NUMERIC; + BEGIN + SELECT count(*) INTO has_dems from tbl_dems where rownum = 1; + + RETURN has_dems = 1; + END; + + + + PROCEDURE CALCULER_DEMANDES IS + dems t_params; + BEGIN + FOR d IN ( + SELECT DISTINCT tbl_name FROM tbl_dems + ) LOOP + dems := PARAMS_FROM_DEMS( d.tbl_name ); + calculer( d.tbl_name, dems ); + END LOOP; + + IF HAS_DEMANDES THEN -- pour les boucles !! + CALCULER_DEMANDES; + END IF; + END; + + + + -- AUTOMATIC GENERATION -- + + PROCEDURE C_AGREMENT( PARAMS UNICAEN_TBL.T_PARAMS ) IS + conds CLOB; + BEGIN + conds := params_to_conds( params ); + + EXECUTE IMMEDIATE \'BEGIN + + UPDATE TBL_AGREMENT SET to_delete = 1 WHERE \' || conds || \'; + + MERGE INTO + TBL_AGREMENT t + USING ( + + SELECT + tv.* + FROM + (WITH i_s AS ( + SELECT DISTINCT + fr.intervenant_id, + ep.structure_id + FROM + formule_resultat fr + JOIN type_volume_horaire tvh ON tvh.code = \'\'PREVU\'\' AND tvh.id = fr.type_volume_horaire_id + JOIN etat_volume_horaire evh ON evh.code = \'\'valide\'\' AND evh.id = fr.etat_volume_horaire_id + + JOIN formule_resultat_service frs ON frs.formule_resultat_id = fr.id + JOIN service s ON s.id = frs.service_id + JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + WHERE + frs.total > 0 + ) + SELECT + i.annee_id annee_id, + tas.type_agrement_id type_agrement_id, + i.id intervenant_id, + null structure_id, + tas.obligatoire obligatoire, + a.id agrement_id + FROM + type_agrement ta + JOIN type_agrement_statut tas ON tas.type_agrement_id = ta.id + AND tas.histo_destruction IS NULL + + JOIN intervenant i ON i.histo_destruction IS NULL + AND (tas.premier_recrutement IS NULL OR NVL(i.premier_recrutement,0) = tas.premier_recrutement) + AND i.statut_id = tas.statut_intervenant_id + + LEFT JOIN agrement a ON a.type_agrement_id = ta.id + AND a.intervenant_id = i.id + AND a.histo_destruction IS NULL + WHERE + ta.code = \'\'CONSEIL_ACADEMIQUE\'\' + + UNION ALL + + SELECT + i.annee_id annee_id, + tas.type_agrement_id type_agrement_id, + i.id intervenant_id, + i_s.structure_id structure_id, + tas.obligatoire obligatoire, + a.id agrement_id + FROM + type_agrement ta + JOIN type_agrement_statut tas ON tas.type_agrement_id = ta.id + AND tas.histo_destruction IS NULL + + JOIN intervenant i ON i.histo_destruction IS NULL + AND (tas.premier_recrutement IS NULL OR NVL(i.premier_recrutement,0) = tas.premier_recrutement) + AND i.statut_id = tas.statut_intervenant_id + + JOIN i_s ON i_s.intervenant_id = i.id + + LEFT JOIN agrement a ON a.type_agrement_id = ta.id + AND a.intervenant_id = i.id + AND a.structure_id = i_s.structure_id + AND a.histo_destruction IS NULL + WHERE + ta.code = \'\'CONSEIL_RESTREINT\'\') tv + WHERE + \' || conds || \' + + ) v ON ( + t.TYPE_AGREMENT_ID = v.TYPE_AGREMENT_ID + AND t.INTERVENANT_ID = v.INTERVENANT_ID + AND COALESCE(t.STRUCTURE_ID,0) = COALESCE(v.STRUCTURE_ID,0) + + ) WHEN MATCHED THEN UPDATE SET + + ANNEE_ID = v.ANNEE_ID, + OBLIGATOIRE = v.OBLIGATOIRE, + AGREMENT_ID = v.AGREMENT_ID, + to_delete = 0 + + WHEN NOT MATCHED THEN INSERT ( + + ID, + ANNEE_ID, + TYPE_AGREMENT_ID, + INTERVENANT_ID, + STRUCTURE_ID, + OBLIGATOIRE, + AGREMENT_ID, + TO_DELETE + + ) VALUES ( + + TBL_AGREMENT_ID_SEQ.NEXTVAL, + v.ANNEE_ID, + v.TYPE_AGREMENT_ID, + v.INTERVENANT_ID, + v.STRUCTURE_ID, + v.OBLIGATOIRE, + v.AGREMENT_ID, + 0 + + ); + + DELETE TBL_AGREMENT WHERE to_delete = 1 AND \' || conds || \'; + + END;\'; + + END; + + + + PROCEDURE C_CHARGENS( PARAMS UNICAEN_TBL.T_PARAMS ) IS + conds CLOB; + BEGIN + conds := params_to_conds( params ); + + EXECUTE IMMEDIATE \'BEGIN + + UPDATE TBL_CHARGENS SET to_delete = 1 WHERE \' || conds || \'; + + MERGE INTO + TBL_CHARGENS t + USING ( + + SELECT + tv.* + FROM + (WITH t AS ( + SELECT + n.annee_id annee_id, + n.noeud_id noeud_id, + sn.scenario_id scenario_id, + sne.type_heures_id type_heures_id, + ti.id type_intervention_id, + + n.element_pedagogique_id element_pedagogique_id, + n.element_pedagogique_etape_id etape_id, + sne.etape_id etape_ens_id, + n.structure_id structure_id, + n.groupe_type_formation_id groupe_type_formation_id, + + vhe.heures heures, + vhe.heures * ti.taux_hetd_service hetd, + + GREATEST(COALESCE(sns.ouverture, 1),1) ouverture, + GREATEST(COALESCE(sns.dedoublement, snsetp.dedoublement, csdd.dedoublement,1),1) dedoublement, + COALESCE(sns.assiduite,1) assiduite, + sne.effectif*COALESCE(sns.assiduite,1) effectif, + + SUM(sne.effectif*COALESCE(sns.assiduite,1)) OVER (PARTITION BY n.noeud_id, sn.scenario_id, ti.id) t_effectif + + FROM + scenario_noeud_effectif sne + JOIN etape e ON e.id = sne.etape_id + AND e.histo_destruction IS NULL + + JOIN scenario_noeud sn ON sn.id = sne.scenario_noeud_id + AND sn.histo_destruction IS NULL + + JOIN tbl_noeud n ON n.noeud_id = sn.noeud_id + + JOIN volume_horaire_ens vhe ON vhe.element_pedagogique_id = n.element_pedagogique_id + AND vhe.histo_destruction IS NULL + AND vhe.heures > 0 + + JOIN type_intervention ti ON ti.id = vhe.type_intervention_id + + LEFT JOIN tbl_noeud netp ON netp.etape_id = e.id + + LEFT JOIN scenario_noeud snetp ON snetp.scenario_id = sn.scenario_id + AND snetp.noeud_id = netp.noeud_id + AND snetp.histo_destruction IS NULL + + LEFT JOIN scenario_noeud_seuil snsetp ON snsetp.scenario_noeud_id = snetp.id + AND snsetp.type_intervention_id = ti.id + + LEFT JOIN tbl_chargens_seuils_def csdd ON csdd.annee_id = n.annee_id + AND csdd.scenario_id = sn.scenario_id + AND csdd.type_intervention_id = ti.id + AND csdd.groupe_type_formation_id = n.groupe_type_formation_id + AND csdd.structure_id = n.structure_id + + LEFT JOIN scenario_noeud_seuil sns ON sns.scenario_noeud_id = sn.id + AND sns.type_intervention_id = ti.id + ) + SELECT + annee_id, + noeud_id, + scenario_id, + type_heures_id, + type_intervention_id, + + element_pedagogique_id, + etape_id, + etape_ens_id, + structure_id, + groupe_type_formation_id, + + ouverture, + dedoublement, + assiduite, + effectif, + heures heures_ens, + --t_effectif, + + CASE WHEN t_effectif < ouverture THEN 0 ELSE + CEIL( t_effectif / dedoublement ) * effectif / t_effectif + END groupes, + + CASE WHEN t_effectif < ouverture THEN 0 ELSE + CEIL( t_effectif / dedoublement ) * heures * effectif / t_effectif + END heures, + + CASE WHEN t_effectif < ouverture THEN 0 ELSE + CEIL( t_effectif / dedoublement ) * hetd * effectif / t_effectif + END hetd + + FROM + t) tv + WHERE + \' || conds || \' + + ) v ON ( + t.ANNEE_ID = v.ANNEE_ID + AND t.NOEUD_ID = v.NOEUD_ID + AND t.SCENARIO_ID = v.SCENARIO_ID + AND t.TYPE_HEURES_ID = v.TYPE_HEURES_ID + AND t.TYPE_INTERVENTION_ID = v.TYPE_INTERVENTION_ID + AND t.ELEMENT_PEDAGOGIQUE_ID = v.ELEMENT_PEDAGOGIQUE_ID + AND t.ETAPE_ID = v.ETAPE_ID + AND t.ETAPE_ENS_ID = v.ETAPE_ENS_ID + AND t.STRUCTURE_ID = v.STRUCTURE_ID + AND t.GROUPE_TYPE_FORMATION_ID = v.GROUPE_TYPE_FORMATION_ID + + ) WHEN MATCHED THEN UPDATE SET + + OUVERTURE = v.OUVERTURE, + DEDOUBLEMENT = v.DEDOUBLEMENT, + ASSIDUITE = v.ASSIDUITE, + EFFECTIF = v.EFFECTIF, + HEURES_ENS = v.HEURES_ENS, + GROUPES = v.GROUPES, + HEURES = v.HEURES, + HETD = v.HETD, + to_delete = 0 + + WHEN NOT MATCHED THEN INSERT ( + + ID, + ANNEE_ID, + NOEUD_ID, + SCENARIO_ID, + TYPE_HEURES_ID, + TYPE_INTERVENTION_ID, + ELEMENT_PEDAGOGIQUE_ID, + ETAPE_ID, + ETAPE_ENS_ID, + STRUCTURE_ID, + GROUPE_TYPE_FORMATION_ID, + OUVERTURE, + DEDOUBLEMENT, + ASSIDUITE, + EFFECTIF, + HEURES_ENS, + GROUPES, + HEURES, + HETD, + TO_DELETE + + ) VALUES ( + + TBL_CHARGENS_ID_SEQ.NEXTVAL, + v.ANNEE_ID, + v.NOEUD_ID, + v.SCENARIO_ID, + v.TYPE_HEURES_ID, + v.TYPE_INTERVENTION_ID, + v.ELEMENT_PEDAGOGIQUE_ID, + v.ETAPE_ID, + v.ETAPE_ENS_ID, + v.STRUCTURE_ID, + v.GROUPE_TYPE_FORMATION_ID, + v.OUVERTURE, + v.DEDOUBLEMENT, + v.ASSIDUITE, + v.EFFECTIF, + v.HEURES_ENS, + v.GROUPES, + v.HEURES, + v.HETD, + 0 + + ); + + DELETE TBL_CHARGENS WHERE to_delete = 1 AND \' || conds || \'; + + END;\'; + + END; + + + + PROCEDURE C_CHARGENS_SEUILS_DEF( PARAMS UNICAEN_TBL.T_PARAMS ) IS + conds CLOB; + BEGIN + conds := params_to_conds( params ); + + EXECUTE IMMEDIATE \'BEGIN + + UPDATE TBL_CHARGENS_SEUILS_DEF SET to_delete = 1 WHERE \' || conds || \'; + + MERGE INTO + TBL_CHARGENS_SEUILS_DEF t + USING ( + + SELECT + tv.* + FROM + (SELECT + sta.annee_id, + sta.scenario_id, + s.structure_id, + gtf.groupe_type_formation_id, + sta.type_intervention_id, + COALESCE(sc1.dedoublement, sc2.dedoublement, sc3.dedoublement, sc4.dedoublement) dedoublement + FROM + (SELECT DISTINCT scenario_id, type_intervention_id, annee_id FROM seuil_charge WHERE histo_destruction IS NULL) sta + JOIN (SELECT DISTINCT structure_id FROM noeud WHERE structure_id IS NOT NULL) s ON 1=1 + JOIN (SELECT id groupe_type_formation_id FROM groupe_type_formation) gtf ON 1=1 + + LEFT JOIN seuil_charge sc1 ON + sc1.histo_destruction IS NULL + AND sc1.annee_id = sta.annee_id + AND sc1.scenario_id = sta.scenario_id + AND sc1.type_intervention_id = sta.type_intervention_id + AND sc1.structure_id = s.structure_id + AND sc1.groupe_type_formation_id = gtf.groupe_type_formation_id + + LEFT JOIN seuil_charge sc2 ON + sc2.histo_destruction IS NULL + AND sc2.annee_id = sta.annee_id + AND sc2.scenario_id = sta.scenario_id + AND sc2.type_intervention_id = sta.type_intervention_id + AND sc2.structure_id = s.structure_id + AND sc2.groupe_type_formation_id IS NULL + + LEFT JOIN seuil_charge sc3 ON + sc3.histo_destruction IS NULL + AND sc3.annee_id = sta.annee_id + AND sc3.scenario_id = sta.scenario_id + AND sc3.type_intervention_id = sta.type_intervention_id + AND sc3.structure_id IS NULL + AND sc3.groupe_type_formation_id = gtf.groupe_type_formation_id + + LEFT JOIN seuil_charge sc4 ON + sc4.histo_destruction IS NULL + AND sc4.annee_id = sta.annee_id + AND sc4.scenario_id = sta.scenario_id + AND sc4.type_intervention_id = sta.type_intervention_id + AND sc4.structure_id IS NULL + AND sc4.groupe_type_formation_id IS NULL + WHERE + COALESCE(sc1.dedoublement, sc2.dedoublement, sc3.dedoublement, sc4.dedoublement, 1) <> 1) tv + WHERE + \' || conds || \' + + ) v ON ( + t.ANNEE_ID = v.ANNEE_ID + AND t.SCENARIO_ID = v.SCENARIO_ID + AND t.STRUCTURE_ID = v.STRUCTURE_ID + AND t.GROUPE_TYPE_FORMATION_ID = v.GROUPE_TYPE_FORMATION_ID + AND t.TYPE_INTERVENTION_ID = v.TYPE_INTERVENTION_ID + + ) WHEN MATCHED THEN UPDATE SET + + DEDOUBLEMENT = v.DEDOUBLEMENT, + to_delete = 0 + + WHEN NOT MATCHED THEN INSERT ( + + ID, + ANNEE_ID, + SCENARIO_ID, + STRUCTURE_ID, + GROUPE_TYPE_FORMATION_ID, + TYPE_INTERVENTION_ID, + DEDOUBLEMENT, + TO_DELETE + + ) VALUES ( + + TBL_CHARGENS_SEUILS_DEF_ID_SEQ.NEXTVAL, + v.ANNEE_ID, + v.SCENARIO_ID, + v.STRUCTURE_ID, + v.GROUPE_TYPE_FORMATION_ID, + v.TYPE_INTERVENTION_ID, + v.DEDOUBLEMENT, + 0 + + ); + + DELETE TBL_CHARGENS_SEUILS_DEF WHERE to_delete = 1 AND \' || conds || \'; + + END;\'; + + END; + + + + PROCEDURE C_CLOTURE_REALISE( PARAMS UNICAEN_TBL.T_PARAMS ) IS + conds CLOB; + BEGIN + conds := params_to_conds( params ); + + EXECUTE IMMEDIATE \'BEGIN + + UPDATE TBL_CLOTURE_REALISE SET to_delete = 1 WHERE \' || conds || \'; + + MERGE INTO + TBL_CLOTURE_REALISE t + USING ( + + SELECT + tv.* + FROM + (WITH t AS ( + SELECT + i.annee_id annee_id, + i.id intervenant_id, + si.peut_cloturer_saisie peut_cloturer_saisie, + CASE WHEN v.id IS NULL THEN 0 ELSE 1 END cloture + FROM + intervenant i + JOIN statut_intervenant si ON si.id = i.statut_id + JOIN type_validation tv ON tv.code = \'\'CLOTURE_REALISE\'\' + + LEFT JOIN validation v ON v.intervenant_id = i.id + AND v.type_validation_id = tv.id + AND v.histo_destruction IS NULL + + WHERE + i.histo_destruction IS NULL + ) + SELECT + annee_id, + intervenant_id, + peut_cloturer_saisie, + CASE WHEN sum(cloture) = 0 THEN 0 ELSE 1 END cloture + FROM + t + GROUP BY + annee_id, + intervenant_id, + peut_cloturer_saisie) tv + WHERE + \' || conds || \' + + ) v ON ( + t.INTERVENANT_ID = v.INTERVENANT_ID + + ) WHEN MATCHED THEN UPDATE SET + + ANNEE_ID = v.ANNEE_ID, + PEUT_CLOTURER_SAISIE = v.PEUT_CLOTURER_SAISIE, + CLOTURE = v.CLOTURE, + to_delete = 0 + + WHEN NOT MATCHED THEN INSERT ( + + ID, + ANNEE_ID, + INTERVENANT_ID, + PEUT_CLOTURER_SAISIE, + CLOTURE, + TO_DELETE + + ) VALUES ( + + TBL_CLOTURE_REALISE_ID_SEQ.NEXTVAL, + v.ANNEE_ID, + v.INTERVENANT_ID, + v.PEUT_CLOTURER_SAISIE, + v.CLOTURE, + 0 + + ); + + DELETE TBL_CLOTURE_REALISE WHERE to_delete = 1 AND \' || conds || \'; + + END;\'; + + END; + + + + PROCEDURE C_CONTRAT( PARAMS UNICAEN_TBL.T_PARAMS ) IS + conds CLOB; + BEGIN + conds := params_to_conds( params ); + + EXECUTE IMMEDIATE \'BEGIN + + UPDATE TBL_CONTRAT SET to_delete = 1 WHERE \' || conds || \'; + + MERGE INTO + TBL_CONTRAT t + USING ( + + SELECT + tv.* + FROM + (WITH t AS ( + SELECT + i.annee_id annee_id, + i.id intervenant_id, + si.peut_avoir_contrat peut_avoir_contrat, + NVL(ep.structure_id, i.structure_id) structure_id, + CASE WHEN evh.code IN (\'\'contrat-edite\'\',\'\'contrat-signe\'\') THEN 1 ELSE 0 END edite, + CASE WHEN evh.code IN (\'\'contrat-signe\'\') THEN 1 ELSE 0 END signe + FROM + intervenant i + + JOIN statut_intervenant si ON si.id = i.statut_id + + JOIN service s ON s.intervenant_id = i.id + AND s.histo_destruction IS NULL + + JOIN type_volume_horaire tvh ON tvh.code = \'\'PREVU\'\' + + JOIN volume_horaire vh ON vh.service_id = s.id + AND vh.histo_destruction IS NULL + AND vh.heures <> 0 + AND vh.type_volume_horaire_id = tvh.id + + JOIN v_volume_horaire_etat vhe ON vhe.volume_horaire_id = vh.id + + JOIN etat_volume_horaire evh ON evh.id = vhe.etat_volume_horaire_id + AND evh.code IN (\'\'valide\'\', \'\'contrat-edite\'\', \'\'contrat-signe\'\') + + JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + + WHERE + i.histo_destruction IS NULL + AND NOT (si.peut_avoir_contrat = 0 AND evh.code = \'\'valide\'\') + + UNION ALL + + SELECT + i.annee_id annee_id, + i.id intervenant_id, + si.peut_avoir_contrat peut_avoir_contrat, + s.structure_id structure_id, + CASE WHEN evh.code IN (\'\'contrat-edite\'\',\'\'contrat-signe\'\') THEN 1 ELSE 0 END edite, + CASE WHEN evh.code IN (\'\'contrat-signe\'\') THEN 1 ELSE 0 END signe + FROM + intervenant i + + JOIN statut_intervenant si ON si.id = i.statut_id + + JOIN service_referentiel s ON s.intervenant_id = i.id + AND s.histo_destruction IS NULL + + JOIN type_volume_horaire tvh ON tvh.code = \'\'PREVU\'\' + + JOIN volume_horaire_ref vh ON vh.service_referentiel_id = s.id + AND vh.histo_destruction IS NULL + AND vh.heures <> 0 + AND vh.type_volume_horaire_id = tvh.id + + JOIN v_volume_horaire_ref_etat vhe ON vhe.volume_horaire_ref_id = vh.id + + JOIN etat_volume_horaire evh ON evh.id = vhe.etat_volume_horaire_id + AND evh.code IN (\'\'valide\'\', \'\'contrat-edite\'\', \'\'contrat-signe\'\') + + WHERE + i.histo_destruction IS NULL + AND NOT (si.peut_avoir_contrat = 0 AND evh.code = \'\'valide\'\') + ) + SELECT + annee_id, + intervenant_id, + peut_avoir_contrat, + structure_id, + count(*) as nbvh, + sum(edite) as edite, + sum(signe) as signe + FROM + t + GROUP BY + annee_id, + intervenant_id, + peut_avoir_contrat, + structure_id) tv + WHERE + \' || conds || \' + + ) v ON ( + t.INTERVENANT_ID = v.INTERVENANT_ID + AND COALESCE(t.STRUCTURE_ID,0) = COALESCE(v.STRUCTURE_ID,0) + + ) WHEN MATCHED THEN UPDATE SET + + ANNEE_ID = v.ANNEE_ID, + PEUT_AVOIR_CONTRAT = v.PEUT_AVOIR_CONTRAT, + NBVH = v.NBVH, + EDITE = v.EDITE, + SIGNE = v.SIGNE, + to_delete = 0 + + WHEN NOT MATCHED THEN INSERT ( + + ID, + ANNEE_ID, + INTERVENANT_ID, + PEUT_AVOIR_CONTRAT, + STRUCTURE_ID, + NBVH, + EDITE, + SIGNE, + TO_DELETE + + ) VALUES ( + + TBL_CONTRAT_ID_SEQ.NEXTVAL, + v.ANNEE_ID, + v.INTERVENANT_ID, + v.PEUT_AVOIR_CONTRAT, + v.STRUCTURE_ID, + v.NBVH, + v.EDITE, + v.SIGNE, + 0 + + ); + + DELETE TBL_CONTRAT WHERE to_delete = 1 AND \' || conds || \'; + + END;\'; + + END; + + + + PROCEDURE C_DMEP_LIQUIDATION( PARAMS UNICAEN_TBL.T_PARAMS ) IS + conds CLOB; + BEGIN + conds := params_to_conds( params ); + + EXECUTE IMMEDIATE \'BEGIN + + UPDATE TBL_DMEP_LIQUIDATION SET to_delete = 1 WHERE \' || conds || \'; + + MERGE INTO + TBL_DMEP_LIQUIDATION t + USING ( + + SELECT + tv.* + FROM + (SELECT + annee_id, + type_ressource_id, + structure_id, + SUM(heures) heures + FROM + ( + SELECT + i.annee_id, + cc.type_ressource_id, + COALESCE( ep.structure_id, i.structure_id ) structure_id, + mep.heures + FROM + mise_en_paiement mep + JOIN centre_cout cc ON cc.id = mep.centre_cout_id + JOIN formule_resultat_service frs ON frs.id = mep.formule_res_service_id + JOIN service s ON s.id = frs.service_id + JOIN intervenant i ON i.id = s.intervenant_id + LEFT JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + WHERE + mep.histo_destruction IS NULL + + UNION ALL + + SELECT + i.annee_id, + cc.type_ressource_id, + sr.structure_id structure_id, + heures + FROM + mise_en_paiement mep + JOIN centre_cout cc ON cc.id = mep.centre_cout_id + JOIN formule_resultat_service_ref frsr ON frsr.id = mep.formule_res_service_ref_id + JOIN service_referentiel sr ON sr.id = frsr.service_referentiel_id + JOIN intervenant i ON i.id = sr.intervenant_id + + WHERE + mep.histo_destruction IS NULL + + ) t1 + GROUP BY + annee_id, type_ressource_id, structure_id) tv + WHERE + \' || conds || \' + + ) v ON ( + t.ANNEE_ID = v.ANNEE_ID + AND t.TYPE_RESSOURCE_ID = v.TYPE_RESSOURCE_ID + AND t.STRUCTURE_ID = v.STRUCTURE_ID + + ) WHEN MATCHED THEN UPDATE SET + + HEURES = v.HEURES, + to_delete = 0 + + WHEN NOT MATCHED THEN INSERT ( + + ID, + ANNEE_ID, + TYPE_RESSOURCE_ID, + STRUCTURE_ID, + HEURES, + TO_DELETE + + ) VALUES ( + + TBL_DMEP_LIQUIDATION_ID_SEQ.NEXTVAL, + v.ANNEE_ID, + v.TYPE_RESSOURCE_ID, + v.STRUCTURE_ID, + v.HEURES, + 0 + + ); + + DELETE TBL_DMEP_LIQUIDATION WHERE to_delete = 1 AND \' || conds || \'; + + END;\'; + + END; + + + + PROCEDURE C_DOSSIER( PARAMS UNICAEN_TBL.T_PARAMS ) IS + conds CLOB; + BEGIN + conds := params_to_conds( params ); + + EXECUTE IMMEDIATE \'BEGIN + + UPDATE TBL_DOSSIER SET to_delete = 1 WHERE \' || conds || \'; + + MERGE INTO + TBL_DOSSIER t + USING ( + + SELECT + tv.* + FROM + (SELECT + i.annee_id, + i.id intervenant_id, + si.peut_saisir_dossier, + d.id dossier_id, + v.id validation_id + FROM + intervenant i + JOIN statut_intervenant si ON si.id = i.statut_id + LEFT JOIN dossier d ON d.intervenant_id = i.id + AND d.histo_destruction IS NULL + + JOIN type_validation tv ON tv.code = \'\'DONNEES_PERSO_PAR_COMP\'\' + LEFT JOIN validation v ON v.intervenant_id = i.id + AND v.type_validation_id = tv.id + AND v.histo_destruction IS NULL + WHERE + i.histo_destruction IS NULL) tv + WHERE + \' || conds || \' + + ) v ON ( + t.INTERVENANT_ID = v.INTERVENANT_ID + + ) WHEN MATCHED THEN UPDATE SET + + ANNEE_ID = v.ANNEE_ID, + PEUT_SAISIR_DOSSIER = v.PEUT_SAISIR_DOSSIER, + DOSSIER_ID = v.DOSSIER_ID, + VALIDATION_ID = v.VALIDATION_ID, + to_delete = 0 + + WHEN NOT MATCHED THEN INSERT ( + + ID, + ANNEE_ID, + INTERVENANT_ID, + PEUT_SAISIR_DOSSIER, + DOSSIER_ID, + VALIDATION_ID, + TO_DELETE + + ) VALUES ( + + TBL_DOSSIER_ID_SEQ.NEXTVAL, + v.ANNEE_ID, + v.INTERVENANT_ID, + v.PEUT_SAISIR_DOSSIER, + v.DOSSIER_ID, + v.VALIDATION_ID, + 0 + + ); + + DELETE TBL_DOSSIER WHERE to_delete = 1 AND \' || conds || \'; + + END;\'; + + END; + + + + PROCEDURE C_PAIEMENT( PARAMS UNICAEN_TBL.T_PARAMS ) IS + conds CLOB; + BEGIN + conds := params_to_conds( params ); + + EXECUTE IMMEDIATE \'BEGIN + + UPDATE TBL_PAIEMENT SET to_delete = 1 WHERE \' || conds || \'; + + MERGE INTO + TBL_PAIEMENT t + USING ( + + SELECT + tv.* + FROM + (SELECT + i.annee_id annee_id, + frs.id formule_res_service_id, + null formule_res_service_ref_id, + i.id intervenant_id, + COALESCE( ep.structure_id, i.structure_id ) structure_id, + mep.id mise_en_paiement_id, + mep.periode_paiement_id periode_paiement_id, + frs.heures_compl_fi + frs.heures_compl_fc + frs.heures_compl_fa + frs.heures_compl_fc_majorees heures_a_payer, + count(*) OVER(PARTITION BY frs.id) heures_a_payer_pond, + NVL(mep.heures,0) heures_demandees, + CASE WHEN mep.periode_paiement_id IS NULL THEN 0 ELSE mep.heures END heures_payees + FROM + formule_resultat_service frs + JOIN type_volume_horaire tvh ON tvh.code = \'\'REALISE\'\' + JOIN etat_volume_horaire evh ON evh.code = \'\'valide\'\' + JOIN formule_resultat fr ON fr.id = frs.formule_resultat_id + AND fr.type_volume_horaire_id = tvh.id + AND fr.etat_volume_horaire_id = evh.id + + JOIN intervenant i ON i.id = fr.intervenant_id + JOIN service s ON s.id = frs.service_id + LEFT JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + LEFT JOIN mise_en_paiement mep ON mep.formule_res_service_id = frs.id + AND mep.histo_destruction IS NULL + + UNION ALL + + SELECT + i.annee_id annee_id, + null formule_res_service_id, + frs.id formule_res_service_ref_id, + i.id intervenant_id, + s.structure_id structure_id, + mep.id mise_en_paiement_id, + mep.periode_paiement_id periode_paiement_id, + frs.heures_compl_referentiel heures_a_payer, + count(*) OVER(PARTITION BY frs.id) heures_a_payer_pond, + NVL(mep.heures,0) heures_demandees, + CASE WHEN mep.periode_paiement_id IS NULL THEN 0 ELSE mep.heures END heures_payees + FROM + formule_resultat_service_ref frs + JOIN type_volume_horaire tvh ON tvh.code = \'\'REALISE\'\' + JOIN etat_volume_horaire evh ON evh.code = \'\'valide\'\' + JOIN formule_resultat fr ON fr.id = frs.formule_resultat_id + AND fr.type_volume_horaire_id = tvh.id + AND fr.etat_volume_horaire_id = evh.id + + JOIN intervenant i ON i.id = fr.intervenant_id + JOIN service_referentiel s ON s.id = frs.service_referentiel_id + LEFT JOIN mise_en_paiement mep ON mep.formule_res_service_ref_id = frs.id + AND mep.histo_destruction IS NULL) tv + WHERE + \' || conds || \' + + ) v ON ( + t.INTERVENANT_ID = v.INTERVENANT_ID + AND COALESCE(t.MISE_EN_PAIEMENT_ID,0) = COALESCE(v.MISE_EN_PAIEMENT_ID,0) + AND COALESCE(t.FORMULE_RES_SERVICE_ID,0) = COALESCE(v.FORMULE_RES_SERVICE_ID,0) + AND COALESCE(t.FORMULE_RES_SERVICE_REF_ID,0) = COALESCE(v.FORMULE_RES_SERVICE_REF_ID,0) + + ) WHEN MATCHED THEN UPDATE SET + + ANNEE_ID = v.ANNEE_ID, + STRUCTURE_ID = v.STRUCTURE_ID, + PERIODE_PAIEMENT_ID = v.PERIODE_PAIEMENT_ID, + HEURES_A_PAYER = v.HEURES_A_PAYER, + HEURES_A_PAYER_POND = v.HEURES_A_PAYER_POND, + HEURES_DEMANDEES = v.HEURES_DEMANDEES, + HEURES_PAYEES = v.HEURES_PAYEES, + to_delete = 0 + + WHEN NOT MATCHED THEN INSERT ( + + ID, + ANNEE_ID, + INTERVENANT_ID, + STRUCTURE_ID, + MISE_EN_PAIEMENT_ID, + PERIODE_PAIEMENT_ID, + HEURES_A_PAYER, + HEURES_A_PAYER_POND, + HEURES_DEMANDEES, + HEURES_PAYEES, + FORMULE_RES_SERVICE_ID, + FORMULE_RES_SERVICE_REF_ID, + TO_DELETE + + ) VALUES ( + + TBL_PAIEMENT_ID_SEQ.NEXTVAL, + v.ANNEE_ID, + v.INTERVENANT_ID, + v.STRUCTURE_ID, + v.MISE_EN_PAIEMENT_ID, + v.PERIODE_PAIEMENT_ID, + v.HEURES_A_PAYER, + v.HEURES_A_PAYER_POND, + v.HEURES_DEMANDEES, + v.HEURES_PAYEES, + v.FORMULE_RES_SERVICE_ID, + v.FORMULE_RES_SERVICE_REF_ID, + 0 + + ); + + DELETE TBL_PAIEMENT WHERE to_delete = 1 AND \' || conds || \'; + + END;\'; + + END; + + + + PROCEDURE C_PIECE_JOINTE( PARAMS UNICAEN_TBL.T_PARAMS ) IS + conds CLOB; + BEGIN + conds := params_to_conds( params ); + + EXECUTE IMMEDIATE \'BEGIN + + UPDATE TBL_PIECE_JOINTE SET to_delete = 1 WHERE \' || conds || \'; + + MERGE INTO + TBL_PIECE_JOINTE t + USING ( + + SELECT + tv.* + FROM + (WITH pjf AS ( + SELECT + pjf.annee_id, + pjf.type_piece_jointe_id, + pjf.intervenant_id, + COUNT(*) count, + SUM(CASE WHEN validation_id IS NULL THEN 0 ELSE 1 END) validation, + SUM(CASE WHEN fichier_id IS NULL THEN 0 ELSE 1 END) fichier + FROM + tbl_piece_jointe_fournie pjf + GROUP BY + pjf.annee_id, + pjf.type_piece_jointe_id, + pjf.intervenant_id + ) + SELECT + NVL( pjd.annee_id, pjf.annee_id ) annee_id, + NVL( pjd.type_piece_jointe_id, pjf.type_piece_jointe_id ) type_piece_jointe_id, + NVL( pjd.intervenant_id, pjf.intervenant_id ) intervenant_id, + CASE WHEN pjd.intervenant_id IS NULL THEN 0 ELSE 1 END demandee, + CASE WHEN pjf.fichier = pjf.count THEN 1 ELSE 0 END fournie, + CASE WHEN pjf.validation = pjf.count THEN 1 ELSE 0 END validee, + NVL(pjd.heures_pour_seuil,0) heures_pour_seuil + FROM + tbl_piece_jointe_demande pjd + FULL JOIN pjf ON pjf.type_piece_jointe_id = pjd.type_piece_jointe_id AND pjf.intervenant_id = pjd.intervenant_id) tv + WHERE + \' || conds || \' + + ) v ON ( + t.TYPE_PIECE_JOINTE_ID = v.TYPE_PIECE_JOINTE_ID + AND t.INTERVENANT_ID = v.INTERVENANT_ID + + ) WHEN MATCHED THEN UPDATE SET + + ANNEE_ID = v.ANNEE_ID, + DEMANDEE = v.DEMANDEE, + FOURNIE = v.FOURNIE, + VALIDEE = v.VALIDEE, + HEURES_POUR_SEUIL = v.HEURES_POUR_SEUIL, + to_delete = 0 + + WHEN NOT MATCHED THEN INSERT ( + + ID, + ANNEE_ID, + TYPE_PIECE_JOINTE_ID, + INTERVENANT_ID, + DEMANDEE, + FOURNIE, + VALIDEE, + HEURES_POUR_SEUIL, + TO_DELETE + + ) VALUES ( + + TBL_PIECE_JOINTE_ID_SEQ.NEXTVAL, + v.ANNEE_ID, + v.TYPE_PIECE_JOINTE_ID, + v.INTERVENANT_ID, + v.DEMANDEE, + v.FOURNIE, + v.VALIDEE, + v.HEURES_POUR_SEUIL, + 0 + + ); + + DELETE TBL_PIECE_JOINTE WHERE to_delete = 1 AND \' || conds || \'; + + END;\'; + + END; + + + + PROCEDURE C_PIECE_JOINTE_DEMANDE( PARAMS UNICAEN_TBL.T_PARAMS ) IS + conds CLOB; + BEGIN + conds := params_to_conds( params ); + + EXECUTE IMMEDIATE \'BEGIN + + UPDATE TBL_PIECE_JOINTE_DEMANDE SET to_delete = 1 WHERE \' || conds || \'; + + MERGE INTO + TBL_PIECE_JOINTE_DEMANDE t + USING ( + + SELECT + tv.* + FROM + (WITH i_h AS ( + SELECT + s.intervenant_id, + sum(vh.heures) heures, + sum(ep.taux_fc) fc + FROM + service s + JOIN type_volume_horaire tvh ON tvh.code = \'\'PREVU\'\' + JOIN volume_horaire vh ON vh.service_id = s.id + AND vh.type_volume_horaire_id = tvh.id + AND vh.histo_destruction IS NULL + JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id -- Service sur l\'\'établissement + WHERE + s.histo_destruction IS NULL + AND vh.motif_non_paiement_id IS NULL -- pas de motif de non paiement + GROUP BY + s.intervenant_id + ) + SELECT + i.annee_id annee_id, + i.id intervenant_id, + tpj.id type_piece_jointe_id, + MAX(COALESCE(i_h.heures, 0)) heures_pour_seuil + FROM + intervenant i + + LEFT JOIN dossier d ON d.intervenant_id = i.id + AND d.histo_destruction IS NULL + + JOIN type_piece_jointe_statut tpjs ON tpjs.statut_intervenant_id = i.statut_id + AND tpjs.histo_destruction IS NULL + AND i.annee_id BETWEEN COALESCE(tpjs.annee_debut_id,i.annee_id) AND COALESCE(tpjs.annee_fin_id,i.annee_id) + + JOIN type_piece_jointe tpj ON tpj.id = tpjs.type_piece_jointe_id + AND tpj.histo_destruction IS NULL + + LEFT JOIN i_h ON i_h.intervenant_id = i.id + WHERE + -- Gestion de l\'\'historique + i.histo_destruction IS NULL + + -- Seuil HETD + AND (COALESCE(i_h.heures,0) > COALESCE(tpjs.seuil_hetd,-1)) + + -- En fonction du premier recrutement ou non + AND (tpjs.premier_recrutement = 0 OR COALESCE(i.premier_recrutement,0) = 1) + + -- Le RIB n\'\'est demandé QUE s\'\'il est différent!! + AND CASE + WHEN tpjs.changement_rib = 0 OR d.id IS NULL THEN 1 + ELSE CASE WHEN replace(i.bic, \'\' \'\', \'\'\'\') || \'\'-\'\' || replace(i.iban, \'\' \'\', \'\'\'\') = d.rib THEN 0 ELSE 1 END + END = 1 + + -- Filtre FC + AND (tpjs.fc = 0 OR i_h.fc > 0) + GROUP BY + i.annee_id, + i.id, + tpj.id) tv + WHERE + \' || conds || \' + + ) v ON ( + t.TYPE_PIECE_JOINTE_ID = v.TYPE_PIECE_JOINTE_ID + AND t.INTERVENANT_ID = v.INTERVENANT_ID + + ) WHEN MATCHED THEN UPDATE SET + + ANNEE_ID = v.ANNEE_ID, + HEURES_POUR_SEUIL = v.HEURES_POUR_SEUIL, + to_delete = 0 + + WHEN NOT MATCHED THEN INSERT ( + + ID, + ANNEE_ID, + TYPE_PIECE_JOINTE_ID, + INTERVENANT_ID, + HEURES_POUR_SEUIL, + TO_DELETE + + ) VALUES ( + + TBL_PIECE_JOINTE_DEMAND_ID_SEQ.NEXTVAL, + v.ANNEE_ID, + v.TYPE_PIECE_JOINTE_ID, + v.INTERVENANT_ID, + v.HEURES_POUR_SEUIL, + 0 + + ); + + DELETE TBL_PIECE_JOINTE_DEMANDE WHERE to_delete = 1 AND \' || conds || \'; + + END;\'; + + END; + + + + PROCEDURE C_PIECE_JOINTE_FOURNIE( PARAMS UNICAEN_TBL.T_PARAMS ) IS + conds CLOB; + BEGIN + conds := params_to_conds( params ); + + EXECUTE IMMEDIATE \'BEGIN + + UPDATE TBL_PIECE_JOINTE_FOURNIE SET to_delete = 1 WHERE \' || conds || \'; + + MERGE INTO + TBL_PIECE_JOINTE_FOURNIE t + USING ( + + SELECT + tv.* + FROM + (SELECT + i.annee_id, + pj.type_piece_jointe_id, + pj.intervenant_id, + pj.id piece_jointe_id, + v.id validation_id, + f.id fichier_id + FROM + piece_jointe pj + JOIN intervenant i ON i.id = pj.intervenant_id + AND i.histo_destruction IS NULL + + JOIN piece_jointe_fichier pjf ON pjf.piece_jointe_id = pj.id + JOIN fichier f ON f.id = pjf.fichier_id + AND f.histo_destruction IS NULL + + LEFT JOIN validation v ON v.id = pj.validation_id + AND v.histo_destruction IS NULL + WHERE + pj.histo_destruction IS NULL) tv + WHERE + \' || conds || \' + + ) v ON ( + t.TYPE_PIECE_JOINTE_ID = v.TYPE_PIECE_JOINTE_ID + AND t.INTERVENANT_ID = v.INTERVENANT_ID + AND COALESCE(t.VALIDATION_ID,0) = COALESCE(v.VALIDATION_ID,0) + AND COALESCE(t.FICHIER_ID,0) = COALESCE(v.FICHIER_ID,0) + + ) WHEN MATCHED THEN UPDATE SET + + ANNEE_ID = v.ANNEE_ID, + PIECE_JOINTE_ID = v.PIECE_JOINTE_ID, + to_delete = 0 + + WHEN NOT MATCHED THEN INSERT ( + + ID, + ANNEE_ID, + TYPE_PIECE_JOINTE_ID, + INTERVENANT_ID, + VALIDATION_ID, + FICHIER_ID, + PIECE_JOINTE_ID, + TO_DELETE + + ) VALUES ( + + TBL_PIECE_JOINTE_FOURNI_ID_SEQ.NEXTVAL, + v.ANNEE_ID, + v.TYPE_PIECE_JOINTE_ID, + v.INTERVENANT_ID, + v.VALIDATION_ID, + v.FICHIER_ID, + v.PIECE_JOINTE_ID, + 0 + + ); + + DELETE TBL_PIECE_JOINTE_FOURNIE WHERE to_delete = 1 AND \' || conds || \'; + + END;\'; + + END; + + + + PROCEDURE C_SERVICE( PARAMS UNICAEN_TBL.T_PARAMS ) IS + conds CLOB; + BEGIN + conds := params_to_conds( params ); + + EXECUTE IMMEDIATE \'BEGIN + + UPDATE TBL_SERVICE SET to_delete = 1 WHERE \' || conds || \'; + + MERGE INTO + TBL_SERVICE t + USING ( + + SELECT + tv.* + FROM + (WITH t AS ( + SELECT + s.id service_id, + s.intervenant_id intervenant_id, + ep.structure_id structure_id, + ep.id element_pedagogique_id, + ep.periode_id element_pedagogique_periode_id, + etp.id etape_id, + + vh.type_volume_horaire_id type_volume_horaire_id, + vh.heures heures, + tvh.code type_volume_horaire_code, + + CASE WHEN ep.histo_destruction IS NULL THEN 1 ELSE 0 END element_pedagogique_histo, + CASE WHEN etp.histo_destruction IS NULL OR cp.id IS NOT NULL THEN 1 ELSE 0 END etape_histo, + + CASE WHEN ep.periode_id IS NOT NULL THEN + SUM( CASE WHEN vh.periode_id <> ep.periode_id THEN 1 ELSE 0 END ) OVER( PARTITION BY vh.service_id, vh.periode_id, vh.type_volume_horaire_id, vh.type_intervention_id ) + ELSE 0 END has_heures_mauvaise_periode, + + CASE WHEN v.id IS NULL AND vh.auto_validation=0 THEN 0 ELSE 1 END valide + FROM + service s + LEFT JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + LEFT JOIN etape etp ON etp.id = ep.etape_id + LEFT JOIN chemin_pedagogique cp ON cp.etape_id = etp.id + AND cp.element_pedagogique_id = ep.id + AND cp.histo_destruction IS NULL + + JOIN volume_horaire vh ON vh.service_id = s.id + AND vh.histo_destruction IS NULL + + JOIN type_volume_horaire tvh ON tvh.id = vh.type_volume_horaire_id + + LEFT JOIN validation_vol_horaire vvh ON vvh.volume_horaire_id = vh.id + + LEFT JOIN validation v ON v.id = vvh.validation_id + AND v.histo_destruction IS NULL + WHERE + s.histo_destruction IS NULL + ) + SELECT + i.annee_id annee_id, + i.id intervenant_id, + i.structure_id intervenant_structure_id, + NVL( t.structure_id, i.structure_id ) structure_id, + ti.id type_intervenant_id, + ti.code type_intervenant_code, + si.peut_saisir_service peut_saisir_service, + + t.element_pedagogique_id, + t.service_id, + t.element_pedagogique_periode_id, + t.etape_id, + t.type_volume_horaire_id, + t.type_volume_horaire_code, + t.element_pedagogique_histo, + t.etape_histo, + + CASE WHEN SUM(t.has_heures_mauvaise_periode) > 0 THEN 1 ELSE 0 END has_heures_mauvaise_periode, + + CASE WHEN type_volume_horaire_id IS NULL THEN 0 ELSE count(*) END nbvh, + CASE WHEN type_volume_horaire_id IS NULL THEN 0 ELSE sum(t.heures) END heures, + sum(valide) valide + FROM + t + JOIN intervenant i ON i.id = t.intervenant_id + JOIN statut_intervenant si ON si.id = i.statut_id + JOIN type_intervenant ti ON ti.id = si.type_intervenant_id + GROUP BY + i.annee_id, + i.id, + i.structure_id, + t.structure_id, + i.structure_id, + ti.id, + ti.code, + si.peut_saisir_service, + t.element_pedagogique_id, + t.service_id, + t.element_pedagogique_periode_id, + t.etape_id, + t.type_volume_horaire_id, + t.type_volume_horaire_code, + t.element_pedagogique_histo, + t.etape_histo) tv + WHERE + \' || conds || \' + + ) v ON ( + COALESCE(t.TYPE_VOLUME_HORAIRE_ID,0) = COALESCE(v.TYPE_VOLUME_HORAIRE_ID,0) + AND t.SERVICE_ID = v.SERVICE_ID + + ) WHEN MATCHED THEN UPDATE SET + + ANNEE_ID = v.ANNEE_ID, + INTERVENANT_ID = v.INTERVENANT_ID, + PEUT_SAISIR_SERVICE = v.PEUT_SAISIR_SERVICE, + STRUCTURE_ID = v.STRUCTURE_ID, + NBVH = v.NBVH, + VALIDE = v.VALIDE, + ELEMENT_PEDAGOGIQUE_ID = v.ELEMENT_PEDAGOGIQUE_ID, + ELEMENT_PEDAGOGIQUE_PERIODE_ID = v.ELEMENT_PEDAGOGIQUE_PERIODE_ID, + ETAPE_ID = v.ETAPE_ID, + ELEMENT_PEDAGOGIQUE_HISTO = v.ELEMENT_PEDAGOGIQUE_HISTO, + ETAPE_HISTO = v.ETAPE_HISTO, + HAS_HEURES_MAUVAISE_PERIODE = v.HAS_HEURES_MAUVAISE_PERIODE, + INTERVENANT_STRUCTURE_ID = v.INTERVENANT_STRUCTURE_ID, + TYPE_INTERVENANT_ID = v.TYPE_INTERVENANT_ID, + TYPE_INTERVENANT_CODE = v.TYPE_INTERVENANT_CODE, + TYPE_VOLUME_HORAIRE_CODE = v.TYPE_VOLUME_HORAIRE_CODE, + HEURES = v.HEURES, + to_delete = 0 + + WHEN NOT MATCHED THEN INSERT ( + + ID, + ANNEE_ID, + INTERVENANT_ID, + PEUT_SAISIR_SERVICE, + TYPE_VOLUME_HORAIRE_ID, + STRUCTURE_ID, + NBVH, + VALIDE, + ELEMENT_PEDAGOGIQUE_ID, + ELEMENT_PEDAGOGIQUE_PERIODE_ID, + ETAPE_ID, + ELEMENT_PEDAGOGIQUE_HISTO, + ETAPE_HISTO, + HAS_HEURES_MAUVAISE_PERIODE, + SERVICE_ID, + INTERVENANT_STRUCTURE_ID, + TYPE_INTERVENANT_ID, + TYPE_INTERVENANT_CODE, + TYPE_VOLUME_HORAIRE_CODE, + HEURES, + TO_DELETE + + ) VALUES ( + + TBL_SERVICE_ID_SEQ.NEXTVAL, + v.ANNEE_ID, + v.INTERVENANT_ID, + v.PEUT_SAISIR_SERVICE, + v.TYPE_VOLUME_HORAIRE_ID, + v.STRUCTURE_ID, + v.NBVH, + v.VALIDE, + v.ELEMENT_PEDAGOGIQUE_ID, + v.ELEMENT_PEDAGOGIQUE_PERIODE_ID, + v.ETAPE_ID, + v.ELEMENT_PEDAGOGIQUE_HISTO, + v.ETAPE_HISTO, + v.HAS_HEURES_MAUVAISE_PERIODE, + v.SERVICE_ID, + v.INTERVENANT_STRUCTURE_ID, + v.TYPE_INTERVENANT_ID, + v.TYPE_INTERVENANT_CODE, + v.TYPE_VOLUME_HORAIRE_CODE, + v.HEURES, + 0 + + ); + + DELETE TBL_SERVICE WHERE to_delete = 1 AND \' || conds || \'; + + END;\'; + + END; + + + + PROCEDURE C_SERVICE_REFERENTIEL( PARAMS UNICAEN_TBL.T_PARAMS ) IS + conds CLOB; + BEGIN + conds := params_to_conds( params ); + + EXECUTE IMMEDIATE \'BEGIN + + UPDATE TBL_SERVICE_REFERENTIEL SET to_delete = 1 WHERE \' || conds || \'; + + MERGE INTO + TBL_SERVICE_REFERENTIEL t + USING ( + + SELECT + tv.* + FROM + (WITH t AS ( + + SELECT + i.annee_id, + i.id intervenant_id, + si.peut_saisir_referentiel peut_saisir_service, + vh.type_volume_horaire_id, + s.structure_id, + CASE WHEN v.id IS NULL AND vh.auto_validation=0 THEN 0 ELSE 1 END valide + FROM + intervenant i + + JOIN statut_intervenant si ON si.id = i.statut_id + + LEFT JOIN service_referentiel s ON s.intervenant_id = i.id + AND s.histo_destruction IS NULL + + LEFT JOIN volume_horaire_ref vh ON vh.service_referentiel_id = s.id + AND vh.histo_destruction IS NULL + + LEFT JOIN validation_vol_horaire_ref vvh ON vvh.volume_horaire_ref_id = vh.id + + LEFT JOIN validation v ON v.id = vvh.validation_id + AND v.histo_destruction IS NULL + WHERE + i.histo_destruction IS NULL + + ) + SELECT + annee_id, + intervenant_id, + peut_saisir_service, + type_volume_horaire_id, + structure_id, + CASE WHEN type_volume_horaire_id IS NULL THEN 0 ELSE count(*) END nbvh, + sum(valide) valide + FROM + t + WHERE + NOT (structure_id IS NOT NULL AND type_volume_horaire_id IS NULL) + GROUP BY + annee_id, + intervenant_id, + peut_saisir_service, + type_volume_horaire_id, + structure_id) tv + WHERE + \' || conds || \' + + ) v ON ( + t.INTERVENANT_ID = v.INTERVENANT_ID + AND COALESCE(t.TYPE_VOLUME_HORAIRE_ID,0) = COALESCE(v.TYPE_VOLUME_HORAIRE_ID,0) + AND COALESCE(t.STRUCTURE_ID,0) = COALESCE(v.STRUCTURE_ID,0) + + ) WHEN MATCHED THEN UPDATE SET + + ANNEE_ID = v.ANNEE_ID, + PEUT_SAISIR_SERVICE = v.PEUT_SAISIR_SERVICE, + NBVH = v.NBVH, + VALIDE = v.VALIDE, + to_delete = 0 + + WHEN NOT MATCHED THEN INSERT ( + + ID, + ANNEE_ID, + INTERVENANT_ID, + PEUT_SAISIR_SERVICE, + TYPE_VOLUME_HORAIRE_ID, + STRUCTURE_ID, + NBVH, + VALIDE, + TO_DELETE + + ) VALUES ( + + TBL_SERVICE_REFERENTIEL_ID_SEQ.NEXTVAL, + v.ANNEE_ID, + v.INTERVENANT_ID, + v.PEUT_SAISIR_SERVICE, + v.TYPE_VOLUME_HORAIRE_ID, + v.STRUCTURE_ID, + v.NBVH, + v.VALIDE, + 0 + + ); + + DELETE TBL_SERVICE_REFERENTIEL WHERE to_delete = 1 AND \' || conds || \'; + + END;\'; + + END; + + + + PROCEDURE C_SERVICE_SAISIE( PARAMS UNICAEN_TBL.T_PARAMS ) IS + conds CLOB; + BEGIN + conds := params_to_conds( params ); + + EXECUTE IMMEDIATE \'BEGIN + + UPDATE TBL_SERVICE_SAISIE SET to_delete = 1 WHERE \' || conds || \'; + + MERGE INTO + TBL_SERVICE_SAISIE t + USING ( + + SELECT + tv.* + FROM + (SELECT + i.annee_id, + i.id intervenant_id, + si.peut_saisir_service, + si.peut_saisir_referentiel, + SUM( CASE WHEN tvhs.code = \'\'PREVU\'\' THEN NVL(vh .heures,0) ELSE 0 END ) heures_service_prev, + SUM( CASE WHEN tvhs.code = \'\'PREVU\'\' THEN NVL(vhr.heures,0) ELSE 0 END ) heures_referentiel_prev, + SUM( CASE WHEN tvhs.code = \'\'REALISE\'\' THEN NVL(vh .heures,0) ELSE 0 END ) heures_service_real, + SUM( CASE WHEN tvhs.code = \'\'REALISE\'\' THEN NVL(vhr.heures,0) ELSE 0 END ) heures_referentiel_real + FROM + intervenant i + JOIN statut_intervenant si ON si.id = i.statut_id + LEFT JOIN service s ON s.intervenant_id = i.id AND s.histo_destruction IS NULL + LEFT JOIN volume_horaire vh ON vh.service_id = s.id AND vh.histo_destruction IS NULL + LEFT JOIN type_volume_horaire tvhs ON tvhs.id = vh.type_volume_horaire_id + + LEFT JOIN service_referentiel sr ON sr.intervenant_id = i.id AND sr.histo_destruction IS NULL + LEFT JOIN volume_horaire_ref vhr ON vhr.service_referentiel_id = sr.id AND vhr.histo_destruction IS NULL + LEFT JOIN type_volume_horaire tvhrs ON tvhrs.id = vhr.type_volume_horaire_id + WHERE + i.histo_destruction IS NULL + GROUP BY + i.annee_id, + i.id, + si.peut_saisir_service, + si.peut_saisir_referentiel) tv + WHERE + \' || conds || \' + + ) v ON ( + t.INTERVENANT_ID = v.INTERVENANT_ID + + ) WHEN MATCHED THEN UPDATE SET + + ANNEE_ID = v.ANNEE_ID, + PEUT_SAISIR_SERVICE = v.PEUT_SAISIR_SERVICE, + PEUT_SAISIR_REFERENTIEL = v.PEUT_SAISIR_REFERENTIEL, + HEURES_SERVICE_PREV = v.HEURES_SERVICE_PREV, + HEURES_REFERENTIEL_PREV = v.HEURES_REFERENTIEL_PREV, + HEURES_SERVICE_REAL = v.HEURES_SERVICE_REAL, + HEURES_REFERENTIEL_REAL = v.HEURES_REFERENTIEL_REAL, + to_delete = 0 + + WHEN NOT MATCHED THEN INSERT ( + + ID, + ANNEE_ID, + INTERVENANT_ID, + PEUT_SAISIR_SERVICE, + PEUT_SAISIR_REFERENTIEL, + HEURES_SERVICE_PREV, + HEURES_REFERENTIEL_PREV, + HEURES_SERVICE_REAL, + HEURES_REFERENTIEL_REAL, + TO_DELETE + + ) VALUES ( + + TBL_SERVICE_SAISIE_ID_SEQ.NEXTVAL, + v.ANNEE_ID, + v.INTERVENANT_ID, + v.PEUT_SAISIR_SERVICE, + v.PEUT_SAISIR_REFERENTIEL, + v.HEURES_SERVICE_PREV, + v.HEURES_REFERENTIEL_PREV, + v.HEURES_SERVICE_REAL, + v.HEURES_REFERENTIEL_REAL, + 0 + + ); + + DELETE TBL_SERVICE_SAISIE WHERE to_delete = 1 AND \' || conds || \'; + + END;\'; + + END; + + + + PROCEDURE C_VALIDATION_ENSEIGNEMENT( PARAMS UNICAEN_TBL.T_PARAMS ) IS + conds CLOB; + BEGIN + conds := params_to_conds( params ); + + EXECUTE IMMEDIATE \'BEGIN + + UPDATE TBL_VALIDATION_ENSEIGNEMENT SET to_delete = 1 WHERE \' || conds || \'; + + MERGE INTO + TBL_VALIDATION_ENSEIGNEMENT t + USING ( + + SELECT + tv.* + FROM + (SELECT DISTINCT + i.annee_id, + i.id intervenant_id, + CASE WHEN rsv.priorite = \'\'affectation\'\' THEN + COALESCE( i.structure_id, ep.structure_id ) + ELSE + COALESCE( ep.structure_id, i.structure_id ) + END structure_id, + vh.type_volume_horaire_id, + s.id service_id, + vh.id volume_horaire_id, + vh.auto_validation, + v.id validation_id + FROM + service s + JOIN volume_horaire vh ON vh.service_id = s.id AND vh.histo_destruction IS NULL + JOIN intervenant i ON i.id = s.intervenant_id AND i.histo_destruction IS NULL + JOIN statut_intervenant si ON si.id = i.statut_id + JOIN regle_structure_validation rsv ON rsv.type_intervenant_id = si.type_intervenant_id AND rsv.type_volume_horaire_id = vh.type_volume_horaire_id + LEFT JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + LEFT JOIN validation_vol_horaire vvh ON vvh.volume_horaire_id = vh.id + LEFT JOIN validation v ON v.id = vvh.validation_id AND v.histo_destruction IS NULL + WHERE + s.histo_destruction IS NULL) tv + WHERE + \' || conds || \' + + ) v ON ( + t.INTERVENANT_ID = v.INTERVENANT_ID + AND t.STRUCTURE_ID = v.STRUCTURE_ID + AND t.TYPE_VOLUME_HORAIRE_ID = v.TYPE_VOLUME_HORAIRE_ID + AND t.SERVICE_ID = v.SERVICE_ID + AND COALESCE(t.VALIDATION_ID,0) = COALESCE(v.VALIDATION_ID,0) + AND t.VOLUME_HORAIRE_ID = v.VOLUME_HORAIRE_ID + + ) WHEN MATCHED THEN UPDATE SET + + ANNEE_ID = v.ANNEE_ID, + AUTO_VALIDATION = v.AUTO_VALIDATION, + to_delete = 0 + + WHEN NOT MATCHED THEN INSERT ( + + ID, + ANNEE_ID, + INTERVENANT_ID, + STRUCTURE_ID, + TYPE_VOLUME_HORAIRE_ID, + SERVICE_ID, + VALIDATION_ID, + VOLUME_HORAIRE_ID, + AUTO_VALIDATION, + TO_DELETE + + ) VALUES ( + + TBL_VALIDATION_ENSEIGNE_ID_SEQ.NEXTVAL, + v.ANNEE_ID, + v.INTERVENANT_ID, + v.STRUCTURE_ID, + v.TYPE_VOLUME_HORAIRE_ID, + v.SERVICE_ID, + v.VALIDATION_ID, + v.VOLUME_HORAIRE_ID, + v.AUTO_VALIDATION, + 0 + + ); + + DELETE TBL_VALIDATION_ENSEIGNEMENT WHERE to_delete = 1 AND \' || conds || \'; + + END;\'; + + END; + + + + PROCEDURE C_VALIDATION_REFERENTIEL( PARAMS UNICAEN_TBL.T_PARAMS ) IS + conds CLOB; + BEGIN + conds := params_to_conds( params ); + + EXECUTE IMMEDIATE \'BEGIN + + UPDATE TBL_VALIDATION_REFERENTIEL SET to_delete = 1 WHERE \' || conds || \'; + + MERGE INTO + TBL_VALIDATION_REFERENTIEL t + USING ( + + SELECT + tv.* + FROM + (SELECT DISTINCT + i.annee_id, + i.id intervenant_id, + CASE WHEN rsv.priorite = \'\'affectation\'\' THEN + COALESCE( i.structure_id, s.structure_id ) + ELSE + COALESCE( s.structure_id, i.structure_id ) + END structure_id, + vh.type_volume_horaire_id, + s.id service_referentiel_id, + vh.id volume_horaire_ref_id, + vh.auto_validation, + v.id validation_id + FROM + service_referentiel s + JOIN volume_horaire_ref vh ON vh.service_referentiel_id = s.id AND vh.histo_destruction IS NULL + JOIN intervenant i ON i.id = s.intervenant_id AND i.histo_destruction IS NULL + JOIN statut_intervenant si ON si.id = i.statut_id + JOIN regle_structure_validation rsv ON rsv.type_intervenant_id = si.type_intervenant_id AND rsv.type_volume_horaire_id = vh.type_volume_horaire_id + LEFT JOIN validation_vol_horaire_ref vvh ON vvh.volume_horaire_ref_id = vh.id + LEFT JOIN validation v ON v.id = vvh.validation_id AND v.histo_destruction IS NULL + WHERE + s.histo_destruction IS NULL) tv + WHERE + \' || conds || \' + + ) v ON ( + t.INTERVENANT_ID = v.INTERVENANT_ID + AND t.STRUCTURE_ID = v.STRUCTURE_ID + AND t.TYPE_VOLUME_HORAIRE_ID = v.TYPE_VOLUME_HORAIRE_ID + AND t.SERVICE_REFERENTIEL_ID = v.SERVICE_REFERENTIEL_ID + AND COALESCE(t.VALIDATION_ID,0) = COALESCE(v.VALIDATION_ID,0) + AND t.VOLUME_HORAIRE_REF_ID = v.VOLUME_HORAIRE_REF_ID + + ) WHEN MATCHED THEN UPDATE SET + + ANNEE_ID = v.ANNEE_ID, + AUTO_VALIDATION = v.AUTO_VALIDATION, + to_delete = 0 + + WHEN NOT MATCHED THEN INSERT ( + + ID, + ANNEE_ID, + INTERVENANT_ID, + STRUCTURE_ID, + TYPE_VOLUME_HORAIRE_ID, + SERVICE_REFERENTIEL_ID, + VALIDATION_ID, + VOLUME_HORAIRE_REF_ID, + AUTO_VALIDATION, + TO_DELETE + + ) VALUES ( + + TBL_VALIDATION_REFERENT_ID_SEQ.NEXTVAL, + v.ANNEE_ID, + v.INTERVENANT_ID, + v.STRUCTURE_ID, + v.TYPE_VOLUME_HORAIRE_ID, + v.SERVICE_REFERENTIEL_ID, + v.VALIDATION_ID, + v.VOLUME_HORAIRE_REF_ID, + v.AUTO_VALIDATION, + 0 + + ); + + DELETE TBL_VALIDATION_REFERENTIEL WHERE to_delete = 1 AND \' || conds || \'; + + END;\'; + + END; + + -- END OF AUTOMATIC GENERATION -- + +END UNICAEN_TBL;', + ), + ), + 'BddAdmin\\Ddl\\DdlView' => + array ( + 'V_AGREMENT_EXPORT_CSV' => + array ( + 'name' => 'V_AGREMENT_EXPORT_CSV', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_AGREMENT_EXPORT_CSV AS +WITH heures_s AS ( + SELECT + i.id intervenant_id, + COALESCE(ep.structure_id,i.structure_id) structure_id, + SUM(frs.service_fi) service_fi, + SUM(frs.service_fa) service_fa, + SUM(frs.service_fc) service_fc, + SUM(frs.heures_compl_fi) heures_compl_fi, + SUM(frs.heures_compl_fa) heures_compl_fa, + SUM(frs.heures_compl_fc) heures_compl_fc, + SUM(frs.heures_compl_fc_majorees) heures_compl_fc_majorees, + SUM(frs.total) total + FROM + formule_resultat_service frs + JOIN type_volume_horaire tvh ON tvh.code = \'PREVU\' + JOIN etat_volume_horaire evh ON evh.code = \'valide\' + JOIN formule_resultat fr ON fr.id = frs.formule_resultat_id + AND fr.type_volume_horaire_id = tvh.id + AND fr.etat_volume_horaire_id = evh.id + JOIN intervenant i ON i.id = fr.intervenant_id + JOIN service s ON s.id = frs.service_id + LEFT JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + GROUP BY + i.id, + ep.structure_id, + i.structure_id +) +SELECT + a.id annee_id, + i.id intervenant_id, + s.id structure_id, + + a.libelle annee, + s.libelle_court structure_libelle, + i.code intervenant_code, + i.nom_usuel intervenant_nom_usuel, + i.nom_patronymique intervenant_nom_patronymique, + i.prenom intervenant_prenom, + + si.libelle intervenant_statut_libelle, + i.premier_recrutement premier_recrutement, + d.libelle_court discipline, + + COALESCE(heures_s.service_fi, fr.service_fi) + + COALESCE(heures_s.heures_compl_fi, fr.heures_compl_fi) + hetd_fi, + COALESCE(heures_s.service_fa, fr.service_fa) + + COALESCE(heures_s.heures_compl_fa, fr.heures_compl_fa) + hetd_fa, + COALESCE(heures_s.service_fc, fr.service_fc) + + COALESCE(heures_s.heures_compl_fc, fr.heures_compl_fc) + + COALESCE(heures_s.heures_compl_fc_majorees, fr.heures_compl_fc_majorees) + hetd_fc, + COALESCE(heures_s.total, fr.total) hetd_total, + + + + + tagr.libelle type_agrement, + CASE WHEN agr.id IS NULL THEN 0 ELSE 1 END agree, + agr.date_decision date_decision, + u.display_name modificateur, + agr.histo_modification date_modification +FROM + tbl_agrement ta + JOIN intervenant i ON i.id = ta.intervenant_id + JOIN statut_intervenant si ON si.id = i.statut_id + JOIN annee a ON a.id = ta.annee_id + JOIN type_agrement tagr ON tagr.id = ta.type_agrement_id + JOIN type_volume_horaire tvh ON tvh.code = \'PREVU\' + JOIN etat_volume_horaire evh ON evh.code = \'valide\' + + + LEFT JOIN structure s ON s.id = ta.structure_id + LEFT JOIN agrement agr ON agr.id = ta.agrement_id + LEFT JOIN utilisateur u ON u.id = agr.histo_modificateur_id + LEFT JOIN discipline d ON d.id = i.discipline_id + + LEFT JOIN formule_resultat fr ON fr.intervenant_id = i.id + AND fr.type_volume_horaire_id = tvh.id + AND fr.etat_volume_horaire_id = evh.id + + LEFT JOIN heures_s ON heures_s.intervenant_id = i.id + AND heures_s.structure_id = s.id', + ), + 'V_CENTRE_COUT_STRUCTURE' => + array ( + 'name' => 'V_CENTRE_COUT_STRUCTURE', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_CENTRE_COUT_STRUCTURE AS +SELECT + ccs.centre_cout_id, + ccs.structure_id +FROM + centre_cout_structure ccs +WHERE + ccs.histo_destruction IS NULL', + ), + 'V_CENTRE_COUT_TYPE_HEURES' => + array ( + 'name' => 'V_CENTRE_COUT_TYPE_HEURES', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_CENTRE_COUT_TYPE_HEURES AS +select + cc.id centre_cout_id, + th.id type_heures_id +from + centre_cout cc + join type_ressource tr on tr.id = cc.type_ressource_id + join cc_activite cca on cca.id = cc.activite_id + join type_heures th on th.code = decode(tr.fi + cca.fi, 2, \'fi\', null) + +union all + +select + cc.id centre_cout_id, + th.id type_heures_id +from + centre_cout cc + join type_ressource tr on tr.id = cc.type_ressource_id + join cc_activite cca on cca.id = cc.activite_id + join type_heures th on th.code = decode(tr.fc + cca.fc, 2, \'fc\', null) + +union all + +select + cc.id centre_cout_id, + th.id type_heures_id +from + centre_cout cc + join type_ressource tr on tr.id = cc.type_ressource_id + join cc_activite cca on cca.id = cc.activite_id + join type_heures th on th.code = decode(tr.fa + cca.fa, 2, \'fa\', null) + +union all + +select + cc.id centre_cout_id, + th.id type_heures_id +from + centre_cout cc + join type_ressource tr on tr.id = cc.type_ressource_id + join cc_activite cca on cca.id = cc.activite_id + join type_heures th on th.code = decode(tr.referentiel + cca.referentiel, 2, \'referentiel\', null) + +union all + +select + cc.id centre_cout_id, + th.id type_heures_id +from + centre_cout cc + join type_ressource tr on tr.id = cc.type_ressource_id + join cc_activite cca on cca.id = cc.activite_id + join type_heures th on th.code = decode(tr.fc_majorees + cca.fc_majorees, 2, \'fc_majorees\', null)', + ), + 'V_CHARGENS_CALC_EFFECTIF' => + array ( + 'name' => 'V_CHARGENS_CALC_EFFECTIF', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_CHARGENS_CALC_EFFECTIF AS +SELECT + gl.noeud_inf_id noeud_id, + snsup.scenario_id scenario_id, + sninf.id scenario_noeud_id, + sne.type_heures_id type_heures_id, + sne.etape_id etape_id, +-- sne.effectif effectif, +-- slsup.choix_minimum choix_minimum, +-- slsup.choix_maximum choix_maximum, +-- COALESCE(slinf.poids,1) poids, +-- COALESCE(sninf.assiduite,1) assiduite, +-- MIN(COALESCE(sl.poids,1)) min_poids, +-- MAX(COALESCE(sl.poids,1)) max_poids, +-- SUM(COALESCE(sl.poids,1)) total_poids, +-- COUNT(*) nb_choix, + OSE_CHARGENS.CALC_COEF( + slsup.choix_minimum, + slsup.choix_maximum, + COALESCE(slinf.poids,1), + MAX(COALESCE(sl.poids,1)), + SUM(COALESCE(sl.poids,1)), + COUNT(*) + ) * sne.effectif effectif +FROM + v_chargens_grands_liens gl + JOIN scenario_noeud snsup ON snsup.noeud_id = gl.noeud_sup_id + AND snsup.histo_destruction IS NULL + + JOIN scenario_noeud_effectif sne ON sne.scenario_noeud_id = snsup.id + + LEFT JOIN scenario_lien slsup ON slsup.histo_destruction IS NULL + AND slsup.lien_id = gl.lien_sup_id + AND slsup.scenario_id = snsup.scenario_id + + LEFT JOIN scenario_lien slinf ON slinf.histo_destruction IS NULL + AND slinf.lien_id = gl.lien_inf_id + AND slinf.scenario_id = snsup.scenario_id + + LEFT JOIN scenario_noeud sninf ON sninf.noeud_id = gl.noeud_inf_id + AND sninf.scenario_id = snsup.scenario_id + AND sninf.histo_destruction IS NULL + + JOIN lien l ON l.noeud_sup_id = gl.noeud_liste_id + AND l.histo_destruction IS NULL + + LEFT JOIN scenario_lien sl ON sl.lien_id = l.id + AND sl.scenario_id = snsup.scenario_id + AND sl.histo_destruction IS NULL + +WHERE + (slsup.actif = 1 OR slsup.actif IS NULL) + AND (slinf.actif = 1 OR slinf.actif IS NULL) + AND (sl.actif = 1 OR sl.actif IS NULL) + AND (snsup.scenario_id = 0 OR NULL IS NULL) + AND (sne.type_heures_id = 0 OR NULL IS NULL) + AND (sne.etape_id = 0 OR NULL IS NULL) +GROUP BY + gl.noeud_sup_id, + gl.noeud_inf_id, + snsup.scenario_id, + sninf.id, + sne.type_heures_id, + sne.etape_id, + sne.effectif, + slsup.choix_minimum, + slsup.choix_maximum, + slinf.poids', + ), + 'V_CHARGENS_EXPORT_CSV' => + array ( + 'name' => 'V_CHARGENS_EXPORT_CSV', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_CHARGENS_EXPORT_CSV AS +SELECT + a.id annee_id, + cph.scenario_id scenario_id, + sp.id structure_porteuse_id, + si.id structure_ins_id, + + a.libelle annee, + + sp.source_code structure_porteuse_code, + sp.libelle_court structure_porteuse_libelle, + eport.code etape_porteuse_code, + eport.libelle etape_porteuse_libelle, + + si.source_code structure_ins_code, + si.libelle_court structure_ins_libelle, + eins.code etape_ins_code, + eins.libelle etape_ins_libelle, + + ep.code element_code, + ep.libelle element_libelle, + p.libelle_court periode, + d.source_code discipline_code, + d.libelle_court discipline_libelle, + th.libelle_court type_heures, + ti.code type_intervention, + + cph.ouverture seuil_ouverture, + cph.dedoublement seuil_dedoublement, + cph.assiduite assiduite, + sne.effectif effectif_etape, + cph.effectif effectif_element, + cph.heures_ens heures_ens, + cph.groupes groupes, + cph.heures heures, + cph.hetd hetd + FROM + tbl_chargens cph + JOIN annee a ON a.id = cph.annee_id + JOIN structure sp ON sp.id = cph.structure_id + JOIN etape eport ON eport.id = cph.etape_id + JOIN etape eins ON eins.id = cph.etape_ens_id + JOIN structure si ON si.id = eins.structure_id + JOIN element_pedagogique ep ON ep.id = cph.element_pedagogique_id + JOIN type_heures th ON th.id = cph.type_heures_id + JOIN type_intervention ti ON ti.id = cph.type_intervention_id + LEFT JOIN periode p ON p.id = ep.periode_id + LEFT JOIN discipline d ON d.id = ep.discipline_id + LEFT JOIN noeud n ON n.etape_id = eins.id + AND n.histo_destruction IS NULL + + LEFT JOIN scenario_noeud sn ON sn.noeud_id = n.id + AND sn.histo_destruction IS NULL + AND sn.scenario_id = cph.scenario_id + + LEFT JOIN scenario_noeud_effectif sne ON sne.scenario_noeud_id = sn.id + AND sne.type_heures_id = cph.type_heures_id + AND sne.etape_id = n.etape_id +ORDER BY + structure_porteuse_code, + etape_porteuse_code, + structure_ins_code, + etape_ins_code, + element_code, + type_heures, + type_intervention', + ), + 'V_CHARGENS_GRANDS_LIENS' => + array ( + 'name' => 'V_CHARGENS_GRANDS_LIENS', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_CHARGENS_GRANDS_LIENS AS +SELECT + nsup.id noeud_sup_id, + lsup.id lien_sup_id, + nl.id noeud_liste_id, + linf.id lien_inf_id, + ninf.id noeud_inf_id +FROM + noeud nsup + + JOIN lien lsup ON lsup.noeud_sup_id = nsup.id + AND lsup.histo_destruction IS NULL + + JOIN noeud nl ON nl.liste = 1 + AND nl.histo_destruction IS NULL + AND nl.id = lsup.noeud_inf_id + + JOIN lien linf ON linf.noeud_sup_id = nl.id + AND linf.histo_destruction IS NULL + + JOIN noeud ninf ON ninf.id = linf.noeud_inf_id + AND ninf.histo_destruction IS NULL + AND ninf.liste = 0 +WHERE + nsup.histo_destruction IS NULL + AND nsup.liste = 0', + ), + 'V_CHARGENS_PRECALCUL_HEURES' => + array ( + 'name' => 'V_CHARGENS_PRECALCUL_HEURES', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_CHARGENS_PRECALCUL_HEURES AS +WITH t AS ( +SELECT + n.annee_id annee_id, + n.noeud_id noeud_id, + sn.scenario_id scenario_id, + sne.type_heures_id type_heures_id, + ti.id type_intervention_id, + + n.element_pedagogique_id element_pedagogique_id, + n.element_pedagogique_etape_id etape_id, + sne.etape_id etape_ens_id, + n.structure_id structure_id, + + vhe.heures heures, + vhe.heures * ti.taux_hetd_service hetd, + + GREATEST(COALESCE(sns.ouverture, 1),1) ouverture, + GREATEST(COALESCE(sns.dedoublement, snsetp.dedoublement, csdd.dedoublement,1),1) dedoublement, + COALESCE(sns.assiduite,1) assiduite, + sne.effectif*COALESCE(sns.assiduite,1) effectif, + + SUM(sne.effectif*COALESCE(sns.assiduite,1)) OVER (PARTITION BY n.noeud_id, sn.scenario_id, ti.id) t_effectif + +FROM + scenario_noeud_effectif sne + JOIN etape e ON e.id = sne.etape_id + AND e.histo_destruction IS NULL + + JOIN scenario_noeud sn ON sn.id = sne.scenario_noeud_id + AND sn.histo_destruction IS NULL + + JOIN tbl_noeud n ON n.noeud_id = sn.noeud_id + + JOIN volume_horaire_ens vhe ON vhe.element_pedagogique_id = n.element_pedagogique_id + AND vhe.histo_destruction IS NULL + AND vhe.heures > 0 + + JOIN type_intervention ti ON ti.id = vhe.type_intervention_id + + LEFT JOIN tbl_noeud netp ON netp.etape_id = e.id + + LEFT JOIN scenario_noeud snetp ON snetp.scenario_id = sn.scenario_id + AND snetp.noeud_id = netp.noeud_id + AND snetp.histo_destruction IS NULL + + LEFT JOIN scenario_noeud_seuil snsetp ON snsetp.scenario_noeud_id = snetp.id + AND snsetp.type_intervention_id = ti.id + + LEFT JOIN tbl_chargens_seuils_def csdd ON csdd.annee_id = n.annee_id + AND csdd.scenario_id = sn.scenario_id + AND csdd.type_intervention_id = ti.id + AND csdd.groupe_type_formation_id = n.groupe_type_formation_id + AND csdd.structure_id = n.structure_id + + LEFT JOIN scenario_noeud_seuil sns ON sns.scenario_noeud_id = sn.id + AND sns.type_intervention_id = ti.id +WHERE + 1 = OSE_CHARGENS.MATCH_PRECALC_HEURES_PARAMS( n.annee_id, n.structure_id, sn.scenario_id, sne.type_heures_id, sne.etape_id, n.noeud_id ) +) +SELECT + annee_id, + noeud_id, + scenario_id, + type_heures_id, + type_intervention_id, + + element_pedagogique_id, + etape_id, + etape_ens_id, + structure_id, + + ouverture, + dedoublement, + assiduite, + effectif, + heures heures_ens, + --t_effectif, + + CASE WHEN t_effectif < ouverture THEN 0 ELSE + CEIL( t_effectif / dedoublement ) * effectif / t_effectif + END groupes, + + CASE WHEN t_effectif < ouverture THEN 0 ELSE + CEIL( t_effectif / dedoublement ) * heures * effectif / t_effectif + END heures, + + CASE WHEN t_effectif < ouverture THEN 0 ELSE + CEIL( t_effectif / dedoublement ) * hetd * effectif / t_effectif + END hetd + +FROM + t', + ), + 'V_CHARGENS_SEUILS_DED_DEF' => + array ( + 'name' => 'V_CHARGENS_SEUILS_DED_DEF', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_CHARGENS_SEUILS_DED_DEF AS +WITH tisc AS ( + SELECT DISTINCT + sc.type_intervention_id, + sc.scenario_id + FROM + seuil_charge sc + WHERE + sc.histo_destruction IS NULL +) +SELECT + n.noeud_id noeud_id, + tisc.scenario_id, + tisc.type_intervention_id, + COALESCE(snsetp.dedoublement, tcsd.dedoublement) dedoublement +FROM + tbl_noeud n + JOIN tisc ON 1=1 + + LEFT JOIN scenario_noeud snetp ON snetp.noeud_id = n.noeud_etape_id + AND snetp.scenario_id = tisc.scenario_id + AND snetp.histo_destruction IS NULL + + LEFT JOIN scenario_noeud_seuil snsetp ON snsetp.scenario_noeud_id = snetp.id + AND snsetp.type_intervention_id = tisc.type_intervention_id + + LEFT JOIN tbl_chargens_seuils_def tcsd ON tcsd.annee_id = n.annee_id + AND tcsd.scenario_id = tisc.scenario_id + AND tcsd.groupe_type_formation_id = n.groupe_type_formation_id + AND tcsd.type_intervention_id = tisc.type_intervention_id +WHERE + COALESCE(snsetp.dedoublement, tcsd.dedoublement) IS NOT NULL', + ), + 'V_CONTRAT_MAIN' => + array ( + 'name' => 'V_CONTRAT_MAIN', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_CONTRAT_MAIN AS +WITH hs AS ( + SELECT contrat_id, sum(heures) "serviceTotal" FROM V_CONTRAT_SERVICES GROUP BY contrat_id +) +SELECT + ct.annee_id, + ct.structure_id, + ct.intervenant_id, + ct.formule_resultat_id, + ct.id contrat_id, + + ct."annee", + ct."nom", + ct."prenom", + ct."civilite", + ct."e", + ct."dateNaissance", + ct."adresse", + ct."numInsee", + ct."statut", + ct."totalHETD", + ct."tauxHoraireValeur", + ct."tauxHoraireDate", + ct."dateSignature", + ct."modifieComplete", + CASE WHEN ct.est_contrat=1 THEN 1 ELSE null END "contrat1", + CASE WHEN ct.est_contrat=1 THEN null ELSE 1 END "avenant1", + CASE WHEN ct.est_contrat=1 THEN \'3\' ELSE \'2\' END "n", + to_char(SYSDATE, \'dd/mm/YYYY - hh24:mi:ss\') "horodatage", + \'Exemplaire à conserver\' "exemplaire1", + \'Exemplaire à retourner\' || ct."exemplaire2" "exemplaire2", + ct."serviceTotal", + + CASE ct.est_contrat + WHEN 1 THEN -- contrat + \'Contrat de travail\' + ELSE + \'Avenant au contrat de travail initial modifiant le volume horaire initial\' + || \' de recrutement en qualité\' + END "titre", + CASE WHEN ct.est_atv = 1 THEN + \'d\'\'agent temporaire vacataire\' + ELSE + \'de chargé\' || ct."e" || \' d\'\'enseignement vacataire\' + END "qualite", + + CASE + WHEN ct.est_projet = 1 AND ct.est_contrat = 1 THEN \'Projet de contrat\' + WHEN ct.est_projet = 0 AND ct.est_contrat = 1 THEN \'Contrat n°\' || ct.id + WHEN ct.est_projet = 1 AND ct.est_contrat = 0 THEN \'Projet d\'\'avenant\' + WHEN ct.est_projet = 0 AND ct.est_contrat = 0 THEN \'Avenant n°\' || ct.contrat_id || \'.\' || ct.numero_avenant + END "titreCourt" +FROM +( + SELECT + c.*, + i.annee_id annee_id, + fr.id formule_resultat_id, + a.libelle "annee", + COALESCE(d.nom_usuel,i.nom_usuel) "nom", + COALESCE(d.prenom,i.prenom) "prenom", + civ.libelle_court "civilite", + CASE WHEN civ.sexe = \'F\' THEN \'e\' ELSE \'\' END "e", + to_char(COALESCE(d.date_naissance,i.date_naissance), \'dd/mm/YYYY\') "dateNaissance", + COALESCE(d.adresse,ose_divers.formatted_adresse( + ai.NO_VOIE, ai.NOM_VOIE, ai.BATIMENT, ai.MENTION_COMPLEMENTAIRE, ai.LOCALITE, + ai.CODE_POSTAL, ai.VILLE, ai.PAYS_LIBELLE)) "adresse", + COALESCE(d.numero_insee,i.numero_insee || \' \' || COALESCE(LPAD(i.numero_insee_cle,2,\'0\'),\'\')) "numInsee", + si.libelle "statut", + replace(ltrim(to_char(COALESCE(fr.total,0), \'999999.00\')),\'.\',\',\') "totalHETD", + replace(ltrim(to_char(COALESCE(th.valeur,0), \'999999.00\')),\'.\',\',\') "tauxHoraireValeur", + COALESCE(to_char(th.histo_creation, \'dd/mm/YYYY\'), \'TAUX INTROUVABLE\') "tauxHoraireDate", + to_char(COALESCE(v.histo_creation, c.histo_creation), \'dd/mm/YYYY\') "dateSignature", + CASE WHEN c.structure_id <> COALESCE(cp.structure_id,0) THEN \'modifié\' ELSE \'complété\' END "modifieComplete", + CASE WHEN s.aff_adresse_contrat = 1 THEN + \' signé à l\'\'adresse suivante :\' || CHR(13) || CHR(10) || + s.libelle_court || \' - \' || REPLACE(ose_divers.formatted_adresse( + astr.NO_VOIE, astr.NOM_VOIE, null, null, astr.LOCALITE, + astr.CODE_POSTAL, astr.VILLE, null), CHR(13), \' - \') + ELSE \'\' END "exemplaire2", + replace(ltrim(to_char(COALESCE(hs."serviceTotal",0), \'999999.00\')),\'.\',\',\') "serviceTotal", + CASE WHEN c.contrat_id IS NULL THEN 1 ELSE 0 END est_contrat, + CASE WHEN v.id IS NULL THEN 1 ELSE 0 END est_projet, + si.tem_atv est_atv + + FROM + contrat c + JOIN type_contrat tc ON tc.id = c.type_contrat_id + JOIN intervenant i ON i.id = c.intervenant_id + JOIN annee a ON a.id = i.annee_id + JOIN statut_intervenant si ON si.id = i.statut_id + JOIN structure s ON s.id = c.structure_id + LEFT JOIN adresse_structure astr ON astr.structure_id = s.id AND astr.principale = 1 AND astr.histo_destruction IS NULL + LEFT JOIN dossier d ON d.intervenant_id = i.id AND d.histo_destruction IS NULL + JOIN civilite civ ON civ.id = COALESCE(d.civilite_id,i.civilite_id) + LEFT JOIN validation v ON v.id = c.validation_id AND v.histo_destruction IS NULL + LEFT JOIN adresse_intervenant ai ON ai.intervenant_id = i.id AND ai.histo_destruction IS NULL + + JOIN type_volume_horaire tvh ON tvh.code = \'PREVU\' + JOIN etat_volume_horaire evh ON evh.code = \'valide\' + LEFT JOIN formule_resultat fr ON fr.intervenant_id = i.id AND fr.type_volume_horaire_id = tvh.id AND fr.etat_volume_horaire_id = evh.id + LEFT JOIN taux_horaire_hetd th ON c.histo_creation BETWEEN th.histo_creation AND COALESCE(th.histo_destruction,SYSDATE) + LEFT JOIN hs ON hs.contrat_id = c.id + LEFT JOIN contrat cp ON cp.id = c.contrat_id + WHERE + c.histo_destruction IS NULL +) ct', + ), + 'V_CONTRAT_SERVICES' => + array ( + 'name' => 'V_CONTRAT_SERVICES', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_CONTRAT_SERVICES AS +SELECT + c.id contrat_id, + str.libelle_court "serviceComposante", + ep.code "serviceCode", + ep.libelle "serviceLibelle", + sum(vh.heures) heures, + replace(ltrim(to_char(sum(vh.heures), \'999999.00\')),\'.\',\',\') "serviceHeures" +FROM + contrat c + JOIN intervenant i ON i.id = c.intervenant_id + JOIN type_volume_horaire tvh ON tvh.code = \'PREVU\' + JOIN service s ON s.intervenant_id = i.id AND s.histo_destruction IS NULL + JOIN volume_horaire vh ON vh.service_id = s.id AND vh.histo_destruction IS NULL AND vh.type_volume_horaire_id = tvh.id + LEFT JOIN validation_vol_horaire vvh ON vvh.volume_horaire_id = vh.id + LEFT JOIN validation v ON v.id = vvh.validation_id AND v.histo_destruction IS NULL + LEFT JOIN validation cv ON cv.id = c.validation_id AND cv.histo_destruction IS NULL + LEFT JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + JOIN structure str ON str.id = COALESCE(ep.structure_id,i.structure_id) +WHERE + c.histo_destruction IS NULL + -- On récapitule tous les enseignements validés de la composante et pas seulement le différentiel... + --AND (cv.id IS NULL OR vh.contrat_id = c.id) + AND COALESCE(ep.structure_id,i.structure_id) = c.structure_id + AND (vh.auto_validation = 1 OR v.id IS NOT NULL) +GROUP BY + c.id, str.libelle_court, ep.code, ep.libelle', + ), + 'V_CTL_SERVICES_ODF_HISTO' => + array ( + 'name' => 'V_CTL_SERVICES_ODF_HISTO', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_CTL_SERVICES_ODF_HISTO AS +with vh as ( + SELECT + vh.service_id, + ti.code type_intervention, + SUM(heures) heures, + CASE WHEN vh.contrat_id IS NULL THEN 0 ELSE 1 END has_contrat, + CASE WHEN (SELECT COUNT(*) FROM validation_vol_horaire vvh WHERE vvh.volume_horaire_id = vh.id) = 1 THEN 1 ELSE 0 END has_validation + FROM + volume_horaire vh + JOIN type_volume_horaire tvh ON tvh.id = vh.type_volume_horaire_id + JOIN type_intervention ti ON ti.id = vh.type_intervention_id + WHERE + vh.histo_destruction IS NULL + AND tvh.code = \'PREVU\' + GROUP BY + vh.id, ti.code, vh.service_id, vh.contrat_id +) +SELECT + i.prenom, i.nom_usuel, + ep.source_code "ELEMENT", + e.source_code etape, + + vh.type_intervention, + vh.heures, + vh.has_contrat, + vh.has_validation, + CASE WHEN ep.histo_destruction IS NOT NULL THEN 1 ELSE 0 END element_supprime, + CASE WHEN e.histo_destruction IS NOT NULL THEN 1 ELSE 0 END etape_supprimee, + CASE WHEN et.histo_destruction IS NOT NULL THEN 1 ELSE 0 END etablissement_supprime +FROM + service s + JOIN intervenant i ON i.id = s.intervenant_id + LEFT JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + LEFT JOIN etape e ON e.id = ep.etape_id + LEFT JOIN etablissement et ON et.id = s.etablissement_id + LEFT JOIN vh ON vh.service_id = s.id +WHERE + s.histo_destruction IS NULL + AND ( + (ep.id IS NOT NULL AND ep.histo_destruction IS NOT NULL) + OR + (e.id IS NOT NULL AND e.histo_destruction IS NOT NULL) + OR + (et.id IS NOT NULL AND et.histo_destruction IS NOT NULL) + ) +order by + nom_usuel, prenom, etape, "ELEMENT", heures', + ), + 'V_CTL_VH_MAUVAIS_SEMESTRE' => + array ( + 'name' => 'V_CTL_VH_MAUVAIS_SEMESTRE', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_CTL_VH_MAUVAIS_SEMESTRE AS +SELECT + vh.id, + i.nom_usuel, i.prenom, + vh.heures, + vvh.validation_id +FROM + volume_horaire vh + JOIN type_volume_horaire tvh ON tvh.id = vh.type_volume_horaire_id + JOIN service s ON s.id = vh.service_id + JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + JOIN intervenant i ON i.id = s.intervenant_id + LEFT JOIN VALIDATION_VOL_HORAIRE vvh on VVH.VOLUME_HORAIRE_ID = vh.id +WHERE + tvh.code = \'PREVU\' + AND ep.periode_id IS NOT NULL + AND vh.periode_id <> ep.periode_id +ORDER BY + nom_usuel, prenom, heures', + ), + 'V_ELEMENT_TYPE_HEURES' => + array ( + 'name' => 'V_ELEMENT_TYPE_HEURES', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_ELEMENT_TYPE_HEURES AS +select ep.id element_pedagogique_id, th.id type_heures_id + from element_pedagogique ep + join type_heures th on th.code = decode(ep.fi, 1, \'fi\', null) +union all + select ep.id element_pedagogique_id, th.id type_heures_id + from element_pedagogique ep + join type_heures th on th.code = decode(ep.fc, 1, \'fc\', null) +union all + select ep.id element_pedagogique_id, th.id type_heures_id + from element_pedagogique ep + join type_heures th on th.code = decode(ep.fa, 1, \'fa\', null)', + ), + 'V_ELEMENT_TYPE_INTERVENTION' => + array ( + 'name' => 'V_ELEMENT_TYPE_INTERVENTION', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_ELEMENT_TYPE_INTERVENTION AS +SELECT + type_intervention_id, + element_pedagogique_id +FROM + type_intervention_ep tie + JOIN type_intervention ti ON ti.id = tie.type_intervention_id +WHERE + tie.histo_destruction IS NULL +ORDER BY + ti.ordre', + ), + 'V_ELEMENT_TYPE_INTERV_POSSIBLE' => + array ( + 'name' => 'V_ELEMENT_TYPE_INTERV_POSSIBLE', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_ELEMENT_TYPE_INTERV_POSSIBLE AS +SELECT + ti.id type_intervention_id, + ep.id element_pedagogique_id +FROM + element_pedagogique ep + + JOIN type_intervention ti ON ep.annee_id BETWEEN COALESCE(ti.annee_debut_id,ep.annee_id) AND COALESCE(ti.annee_fin_id, ep.annee_id) + AND ti.histo_destruction IS NULL + + LEFT JOIN type_intervention_structure tis ON tis.type_intervention_id = ti.id + AND tis.structure_id = ep.structure_id + AND ep.annee_id BETWEEN COALESCE(tis.annee_debut_id,ep.annee_id) AND COALESCE(tis.annee_fin_id, ep.annee_id) + AND tis.histo_destruction IS NULL +WHERE + ep.histo_destruction IS NULL + AND COALESCE( tis.visible, ti.visible ) = 1 + AND (ti.regle_foad = 0 OR ep.taux_foad > 0) + AND (ti.regle_fc = 0 OR ep.taux_fc > 0)', + ), + 'V_ELEMENT_TYPE_MODULATEUR' => + array ( + 'name' => 'V_ELEMENT_TYPE_MODULATEUR', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_ELEMENT_TYPE_MODULATEUR AS +SELECT + ep.id element_pedagogique_id, + tms.type_modulateur_id type_modulateur_id +FROM + element_pedagogique ep + JOIN structure s ON s.id = ep.structure_id + AND s.histo_destruction IS NULL + + JOIN type_modulateur_structure tms ON tms.structure_id = s.id + AND tms.histo_destruction IS NULL + AND ep.annee_id BETWEEN GREATEST(NVL(tms.annee_debut_id,0),ep.annee_id) AND LEAST(NVL(tms.annee_fin_id,9999),ep.annee_id) + +UNION + +SELECT + tm_ep.element_pedagogique_id element_pedagogique_id, + tm_ep.type_modulateur_id type_modulateur_id +FROM + type_modulateur_ep tm_ep +WHERE + tm_ep.histo_destruction IS NULL', + ), + 'V_ETAPE_NIVEAU_FORMATION' => + array ( + 'name' => 'V_ETAPE_NIVEAU_FORMATION', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_ETAPE_NIVEAU_FORMATION AS +SELECT + e.id etape_id, + nf.id niveau_formation_id +FROM + etape e + JOIN type_formation tf ON tf.id = e.type_formation_id AND tf.histo_destruction IS NULL + JOIN groupe_type_formation gtf ON gtf.id = tf.groupe_id AND gtf.histo_destruction IS NULL + JOIN v_niveau_formation nf ON nf.code = gtf.libelle_court || e.niveau +WHERE + e.histo_destruction IS NULL + AND gtf.pertinence_niveau = 1 + AND e.niveau IS NOT NULL', + ), + 'V_ETAPE_TYPE_MODULATEUR' => + array ( + 'name' => 'V_ETAPE_TYPE_MODULATEUR', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_ETAPE_TYPE_MODULATEUR AS +SELECT DISTINCT + etm.type_modulateur_id type_modulateur_id, + ep.etape_id etape_id +FROM + v_element_type_modulateur etm + JOIN element_pedagogique ep ON ep.id = etm.element_pedagogique_id AND ep.histo_destruction IS NULL', + ), + 'V_ETAT_PAIEMENT' => + array ( + 'name' => 'V_ETAT_PAIEMENT', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_ETAT_PAIEMENT AS +SELECT + annee_id, + type_intervenant_id, + structure_id, + periode_id, + intervenant_id, + centre_cout_id, + domaine_fonctionnel_id, + + annee_id || \'/\' || (annee_id+1) annee, + etat, + composante, + date_mise_en_paiement, + periode, + statut, + intervenant_code, + intervenant_nom, + intervenant_numero_insee, + centre_cout_code, + centre_cout_libelle, + domaine_fonctionnel_code, + domaine_fonctionnel_libelle, + hetd, + CASE WHEN pourc_ecart >= 0 THEN + CASE WHEN RANK() OVER (PARTITION BY periode_id, intervenant_id, etat, structure_id ORDER BY CASE WHEN (pourc_ecart >= 0 AND pourc_diff >= 0) OR (pourc_ecart < 0 AND pourc_diff < 0) THEN pourc_diff ELSE -1 END DESC) <= (ABS(pourc_ecart) / 0.001) THEN hetd_pourc + (pourc_ecart / ABS(pourc_ecart) * 0.001) ELSE hetd_pourc END + ELSE + CASE WHEN RANK() OVER (PARTITION BY periode_id, intervenant_id, etat, structure_id ORDER BY CASE WHEN (pourc_ecart >= 0 AND pourc_diff >= 0) OR (pourc_ecart < 0 AND pourc_diff < 0) THEN pourc_diff ELSE -1 END) <= (ABS(pourc_ecart) / 0.001) THEN hetd_pourc + (pourc_ecart / ABS(pourc_ecart) * 0.001) ELSE hetd_pourc END + END hetd_pourc, + hetd_montant, + rem_fc_d714, + exercice_aa, + exercice_aa_montant, + exercice_ac, + exercice_ac_montant + FROM + ( + SELECT + dep3.*, + + 1-CASE WHEN hetd > 0 THEN SUM( hetd_pourc ) OVER ( PARTITION BY periode_id, intervenant_id, etat, structure_id) ELSE 0 END pourc_ecart + + + FROM ( + + SELECT + periode_id, + structure_id, + type_intervenant_id, + intervenant_id, + annee_id, + centre_cout_id, + domaine_fonctionnel_id, + etat, + composante, + date_mise_en_paiement, + periode, + statut, + intervenant_code, + intervenant_nom, + intervenant_numero_insee, + centre_cout_code, + centre_cout_libelle, + domaine_fonctionnel_code, + domaine_fonctionnel_libelle, + hetd, + ROUND( CASE WHEN hetd > 0 THEN hetd / SUM( hetd ) OVER( PARTITION BY periode_id, intervenant_id, etat, structure_id) ELSE 0 END, 3 ) hetd_pourc, + ROUND( hetd * taux_horaire, 2 ) hetd_montant, + ROUND( fc_majorees * taux_horaire, 2 ) rem_fc_d714, + exercice_aa, + ROUND( exercice_aa * taux_horaire, 2 ) exercice_aa_montant, + exercice_ac, + ROUND( exercice_ac * taux_horaire, 2 ) exercice_ac_montant, + + + (CASE WHEN hetd > 0 THEN hetd / SUM( hetd ) OVER( PARTITION BY periode_id, intervenant_id, etat, structure_id) ELSE 0 END) + - + ROUND( CASE WHEN hetd > 0 THEN hetd / SUM( hetd ) OVER( PARTITION BY periode_id, intervenant_id, etat, structure_id) ELSE 0 END, 3 ) pourc_diff + + FROM ( + WITH dep AS ( -- détails par état de paiement + SELECT + CASE WHEN th.code = \'fc_majorees\' THEN 1 ELSE 0 END is_fc_majoree, + p.id periode_id, + s.id structure_id, + i.id intervenant_id, + i.annee_id annee_id, + cc.id centre_cout_id, + df.id domaine_fonctionnel_id, + ti.id type_intervenant_id, + CASE + WHEN mep.date_mise_en_paiement IS NULL THEN \'a-mettre-en-paiement\' + ELSE \'mis-en-paiement\' + END etat, + + TRIM(p.libelle_long || \' \' || to_char( add_months( a.date_debut, p.ecart_mois ), \'yyyy\' )) periode, + mep.date_mise_en_paiement date_mise_en_paiement, + s.libelle_court composante, + ti.libelle statut, + i.source_code intervenant_code, + i.nom_usuel || \' \' || i.prenom intervenant_nom, + TRIM( i.numero_insee || NVL(TRIM(i.numero_insee_cle),\'00\') ) intervenant_numero_insee, + cc.source_code centre_cout_code, + cc.libelle centre_cout_libelle, + df.source_code domaine_fonctionnel_code, + df.libelle domaine_fonctionnel_libelle, + CASE WHEN th.code = \'fc_majorees\' THEN 0 ELSE mep.heures END hetd, + CASE WHEN th.code = \'fc_majorees\' THEN mep.heures ELSE 0 END fc_majorees, + mep.heures * 4 / 10 exercice_aa, + mep.heures * 6 / 10 exercice_ac, + --CASE WHEN th.code = \'fc_majorees\' THEN 0 ELSE mep.heures END * 4 / 10 exercice_aa, + --CASE WHEN th.code = \'fc_majorees\' THEN 0 ELSE mep.heures END * 6 / 10 exercice_ac, + OSE_FORMULE.GET_TAUX_HORAIRE_HETD( NVL(mep.date_mise_en_paiement,SYSDATE) ) taux_horaire + FROM + v_mep_intervenant_structure mis + JOIN mise_en_paiement mep ON mep.id = mis.mise_en_paiement_id AND mep.histo_destruction IS NULL + JOIN type_heures th ON th.id = mep.type_heures_id + JOIN centre_cout cc ON cc.id = mep.centre_cout_id -- pas d\'historique pour les centres de coût, qui devront tout de même apparaitre mais en erreur + JOIN intervenant i ON i.id = mis.intervenant_id AND i.histo_destruction IS NULL + JOIN annee a ON a.id = i.annee_id + JOIN statut_intervenant si ON si.id = i.statut_id + JOIN type_intervenant ti ON ti.id = si.type_intervenant_id + JOIN structure s ON s.id = mis.structure_id + LEFT JOIN validation v ON v.id = mep.validation_id AND v.histo_destruction IS NULL + LEFT JOIN domaine_fonctionnel df ON df.id = mis.domaine_fonctionnel_id + LEFT JOIN periode p ON p.id = mep.periode_paiement_id + ) + SELECT + periode_id, + structure_id, + type_intervenant_id, + intervenant_id, + annee_id, + centre_cout_id, + domaine_fonctionnel_id, + etat, + periode, + composante, + date_mise_en_paiement, + statut, + intervenant_code, + intervenant_nom, + intervenant_numero_insee, + centre_cout_code, + centre_cout_libelle, + domaine_fonctionnel_code, + domaine_fonctionnel_libelle, + SUM( hetd ) hetd, + SUM( fc_majorees ) fc_majorees, + SUM( exercice_aa ) exercice_aa, + SUM( exercice_ac ) exercice_ac, + taux_horaire + FROM + dep + GROUP BY + periode_id, + structure_id, + type_intervenant_id, + intervenant_id, + annee_id, + centre_cout_id, + domaine_fonctionnel_id, + etat, + periode, + composante, + date_mise_en_paiement, + statut, + intervenant_code, + intervenant_nom, + intervenant_numero_insee, + centre_cout_code, + centre_cout_libelle, + domaine_fonctionnel_code, + domaine_fonctionnel_libelle, + taux_horaire, + is_fc_majoree + ) + dep2 + ) + dep3 + ) + dep4 + ORDER BY + annee_id, + type_intervenant_id, + structure_id, + periode_id, + intervenant_nom', + ), + 'V_EXPORT_DEPASS_CHARGES' => + array ( + 'name' => 'V_EXPORT_DEPASS_CHARGES', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_EXPORT_DEPASS_CHARGES AS +WITH c AS ( + SELECT + vhe.element_pedagogique_id, + vhe.type_intervention_id, + CASE WHEN MAX(vhe.groupes) IS NULL THEN + \'Charges OSE\' ELSE s.libelle END source, + MAX(vhe.heures) heures, + COALESCE( MAX(vhe.groupes), ROUND(SUM(t.groupes),10) ) groupes + + FROM + volume_horaire_ens vhe + JOIN parametre p ON p.nom = \'scenario_charges_services\' + JOIN source s ON s.id = vhe.source_id + LEFT JOIN tbl_chargens t ON t.element_pedagogique_id = vhe.element_pedagogique_id + AND t.type_intervention_id = vhe.type_intervention_id + AND t.scenario_id = to_number(p.valeur) + WHERE + vhe.histo_destruction IS NULL + GROUP BY + vhe.element_pedagogique_id, + vhe.type_intervention_id, + s.libelle +), s AS ( + SELECT + i.annee_id, + vh.type_volume_horaire_id, + s.intervenant_id, + s.element_pedagogique_id, + vh.type_intervention_id, + SUM(vh.heures) heures + FROM + volume_horaire vh + JOIN service s ON s.id = vh.service_id + AND s.element_pedagogique_id IS NOT NULL + AND s.histo_destruction IS NULL + JOIN intervenant i ON i.id = s.intervenant_id + AND i.histo_destruction IS NULL + WHERE + vh.histo_destruction IS NULL + GROUP BY + i.annee_id, + vh.type_volume_horaire_id, + s.intervenant_id, + s.element_pedagogique_id, + vh.type_intervention_id +) +SELECT + s.annee_id annee_id, + sens.id structure_id, + tiv.id type_intervention_id, + + a.libelle annee, + tvh.libelle type_volume_horaire_code, + i.source_code intervenant_code, + i.nom_usuel || \' \' || i.prenom intervenant_nom, + i.date_naissance intervenant_date_naissance, + si.libelle intervenant_statut_libelle, + + ti.code intervenant_type_code, + ti.libelle intervenant_type_libelle, + CASE WHEN ti.code = \'P\' THEN saff.libelle_court ELSE NULL END structure_aff_libelle, + sens.libelle_court structure_ens_libelle, + + gtf.libelle_court groupe_type_formation_libelle, + tf.libelle_court type_formation_libelle, + etp.niveau etape_niveau, + etp.source_code etape_code, + etp.libelle etape_libelle, + ep.source_code element_code, + ep.libelle element_libelle, + ep.taux_fi element_taux_fi, + ep.taux_fc element_taux_fc, + ep.taux_fa element_taux_fa, + src.libelle element_source_libelle, + p.libelle_court periode, + tiv.code type_intervention_code, + s.heures heures_service, + c.source source_charges, + c.heures heures_charges, + c.groupes groupes_charges, + s.heures - COALESCE(c.heures * c.groupes,0) heures_depassement +FROM + s + JOIN annee a ON a.id = s.annee_id + JOIN type_volume_horaire tvh ON tvh.id = s.type_volume_horaire_id + JOIN intervenant i ON i.id = s.intervenant_id + JOIN statut_intervenant si ON si.id = i.statut_id + JOIN type_intervenant ti ON ti.id = si.type_intervenant_id + JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + JOIN etape etp ON etp.id = ep.etape_id + JOIN type_formation tf ON tf.id = etp.type_formation_id + JOIN groupe_type_formation gtf ON gtf.id = tf.groupe_id + JOIN structure sens ON sens.id = ep.structure_id + JOIN source src ON src.id = ep.source_id + JOIN type_intervention tiv ON tiv.id = s.type_intervention_id + LEFT JOIN structure saff ON saff.id = i.structure_id + LEFT JOIN c ON c.element_pedagogique_id = s.element_pedagogique_id + AND c.type_intervention_id = COALESCE(tiv.type_intervention_maquette_id,tiv.id) + LEFT JOIN periode p ON p.id = ep.periode_id', + ), + 'V_EXPORT_DMEP' => + array ( + 'name' => 'V_EXPORT_DMEP', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_EXPORT_DMEP AS +WITH mep AS ( + SELECT + frs.service_id, + frsr.service_referentiel_id, + mep.date_mise_en_paiement, + mep.periode_paiement_id, + mep.centre_cout_id, + mep.domaine_fonctionnel_id, + + sum(case when th.code = \'fi\' then mep.heures else 0 end) heures_fi, + sum(case when th.code = \'fa\' then mep.heures else 0 end) heures_fa, + sum(case when th.code = \'fc\' then mep.heures else 0 end) heures_fc, + sum(case when th.code = \'fc_majorees\' then mep.heures else 0 end) heures_fc_majorees, + sum(case when th.code = \'referentiel\' then mep.heures else 0 end) heures_referentiel + FROM + mise_en_paiement mep + JOIN type_heures th ON th.id = mep.type_heures_id + LEFT JOIN formule_resultat_service frs ON frs.id = mep.formule_res_service_id + LEFT JOIN formule_resultat_service_ref frsr ON frsr.id = mep.formule_res_service_ref_id + WHERE + mep.histo_destruction IS NULL + GROUP BY + frs.service_id, + frsr.service_referentiel_id, + mep.date_mise_en_paiement, + mep.periode_paiement_id, + mep.centre_cout_id, + mep.domaine_fonctionnel_id +) +SELECT + i.id intervenant_id, + ti.id type_intervenant_id, + i.annee_id annee_id, + saff.id structure_aff_id, + sens.id structure_ens_id, + NVL(sens.id,saff.id) structure_id, + cc.id centre_cout_id, + ep.id element_pedagogique_id, + etp.id etape_id, + tf.id type_formation_id, + gtf.id groupe_type_formation_id, + si.id statut_intervenant_id, + p.id periode_id, + + i.source_code intervenant_code, + i.nom_usuel || \' \' || i.prenom intervenant_nom, + i.date_naissance intervenant_date_naissance, + si.libelle intervenant_statut_libelle, + ti.code intervenant_type_code, + ti.libelle intervenant_type_libelle, + g.source_code intervenant_grade_code, + g.libelle_court intervenant_grade_libelle, + di.source_code intervenant_discipline_code, + di.libelle_court intervenant_discipline_libelle, + saff.libelle_court service_structure_aff_libelle, + + sens.libelle_court service_structure_ens_libelle, + etab.libelle etablissement_libelle, + gtf.libelle_court groupe_type_formation_libelle, + tf.libelle_court type_formation_libelle, + etp.niveau etape_niveau, + etp.source_code etape_code, + etp.libelle etape_libelle, + ep.source_code element_code, + ep.libelle element_libelle, + de.source_code element_discipline_code, + de.libelle_court element_discipline_libelle, + fr.libelle_long fonction_referentiel_libelle, + ep.taux_fi element_taux_fi, + ep.taux_fc element_taux_fc, + ep.taux_fa element_taux_fa, + src.libelle element_source_libelle, + COALESCE(to_char(s.description),to_char(sr.commentaires)) commentaires, + + CASE + WHEN mep.date_mise_en_paiement IS NULL THEN \'a-mettre-en-paiement\' + ELSE \'mis-en-paiement\' + END etat, + tr.libelle type_ressource_libelle, + cc.source_code centre_couts_code, + cc.libelle centre_couts_libelle, + df.source_code domaine_fonctionnel_code, + df.libelle domaine_fonctionnel_libelle, + p.libelle_long periode_libelle, + mep.date_mise_en_paiement date_mise_en_paiement, + mep.heures_fi heures_fi, + mep.heures_fa heures_fa, + mep.heures_fc heures_fc, + mep.heures_fc_majorees heures_fc_majorees, + mep.heures_referentiel heures_referentiel +FROM + mep + JOIN centre_cout cc ON cc.id = mep.centre_cout_id + JOIN type_ressource tr ON tr.id = cc.type_ressource_id + LEFT JOIN service s ON s.id = mep.service_id + LEFT JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + LEFT JOIN source src ON src.id = ep.source_id OR (ep.source_id IS NULL AND src.code = \'OSE\') + LEFT JOIN discipline de ON de.id = ep.discipline_id + LEFT JOIN etape etp ON etp.id = ep.etape_id + LEFT JOIN type_formation tf ON tf.id = etp.type_formation_id + LEFT JOIN groupe_type_formation gtf ON gtf.id = tf.groupe_id + LEFT JOIN service_referentiel sr ON sr.id = mep.service_referentiel_id + LEFT JOIN fonction_referentiel fr ON fr.id = sr.fonction_id + JOIN intervenant i ON i.id = NVL( s.intervenant_id, sr.intervenant_id ) + JOIN statut_intervenant si ON si.id = i.statut_id + JOIN type_intervenant ti ON ti.id = si.type_intervenant_id + LEFT JOIN grade g ON g.id = i.grade_id + LEFT JOIN discipline di ON di.id = i.discipline_id + LEFT JOIN structure saff ON saff.id = i.structure_id AND ti.code = \'P\' + LEFT JOIN structure sens ON sens.id = NVL( ep.structure_id, sr.structure_id ) + JOIN etablissement etab ON etab.id = NVL( s.etablissement_id, ose_parametre.get_etablissement() ) + LEFT JOIN periode p ON p.id = mep.periode_paiement_id + LEFT JOIN domaine_fonctionnel df ON df.id = mep.domaine_fonctionnel_id +ORDER BY + intervenant_nom, + service_structure_aff_libelle, + service_structure_ens_libelle, + etape_libelle, + element_libelle', + ), + 'V_EXPORT_PAIEMENT_WINPAIE' => + array ( + 'name' => 'V_EXPORT_PAIEMENT_WINPAIE', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_EXPORT_PAIEMENT_WINPAIE AS +SELECT + annee_id, + type_intervenant_id, + structure_id, + periode_id, + intervenant_id, + + insee, + nom, + \'20\' carte, + code_origine, + CASE WHEN type_intervenant_code = \'P\' THEN \'0204\' ELSE \'2251\' END retenue, + \'0\' sens, + \'B\' mc, + nbu, + montant, + libelle || \' \' || LPAD(TO_CHAR(FLOOR(nbu)),2,\'00\') || \' H\' || + CASE to_char(ROUND( nbu-FLOOR(nbu), 2 )*100,\'00\') + WHEN \' 00\' THEN \'\' ELSE \' \' || LPAD(ROUND( nbu-FLOOR(nbu), 2 )*100,2,\'00\') END libelle +FROM ( + SELECT + i.annee_id annee_id, + ti.id type_intervenant_id, + ti.code type_intervenant_code, + t2.structure_id structure_id, + t2.periode_paiement_id periode_id, + i.id intervenant_id, + CASE WHEN i.numero_insee IS NULL THEN \'\'\'\' ELSE + \'\'\'\' || TRIM(i.numero_insee) || COALESCE(LPAD(TRIM(i.numero_insee_cle), 2, \'0\'),\'00\') + END insee, + i.nom_usuel || \',\' || i.prenom nom, + t2.code_origine code_origine, + CASE WHEN ind <> CEIL(t2.nbu/max_nbu) THEN max_nbu ELSE t2.nbu - max_nbu*(ind-1) END nbu, + t2.nbu tnbu, + OSE_FORMULE.GET_TAUX_HORAIRE_HETD( NVL(t2.date_mise_en_paiement,SYSDATE) ) montant, + COALESCE(t2.unite_budgetaire,\'\') || \' \' || to_char(i.annee_id) || \' \' || to_char(i.annee_id+1) libelle + FROM ( + SELECT + structure_id, + periode_paiement_id, + intervenant_id, + code_origine, + ROUND( SUM(nbu), 2) nbu, + unite_budgetaire, + date_mise_en_paiement + FROM ( + WITH mep AS ( + SELECT + -- pour les filtres + mep.id, + mis.structure_id, + mep.periode_paiement_id, + mis.intervenant_id, + mep.heures, + cc.unite_budgetaire, + mep.date_mise_en_paiement + FROM + v_mep_intervenant_structure mis + JOIN mise_en_paiement mep ON mep.id = mis.mise_en_paiement_id AND mep.histo_destruction IS NULL + JOIN centre_cout cc ON cc.id = mep.centre_cout_id + JOIN type_heures th ON th.id = mep.type_heures_id + WHERE + mep.date_mise_en_paiement IS NOT NULL + AND mep.periode_paiement_id IS NOT NULL + AND th.eligible_extraction_paie = 1 + ) + SELECT + mep.id, + mep.structure_id, + mep.periode_paiement_id, + mep.intervenant_id, + 2 code_origine, + mep.heures * 4 / 10 nbu, + mep.unite_budgetaire, + mep.date_mise_en_paiement + FROM + mep + WHERE + mep.heures * 4 / 10 > 0 + + UNION + + SELECT + mep.id, + mep.structure_id, + mep.periode_paiement_id, + mep.intervenant_id, + 1 code_origine, + mep.heures * 6 / 10 nbu, + mep.unite_budgetaire, + mep.date_mise_en_paiement + FROM + mep + WHERE + mep.heures * 6 / 10 > 0 + ) t1 + GROUP BY + structure_id, + periode_paiement_id, + intervenant_id, + code_origine, + unite_budgetaire, + date_mise_en_paiement + ) t2 + JOIN (SELECT level ind, 99 max_nbu FROM dual CONNECT BY 1=1 AND LEVEL <= 11) tnbu ON ceil(t2.nbu / max_nbu) >= ind + JOIN intervenant i ON i.id = t2.intervenant_id + JOIN statut_intervenant si ON si.id = i.statut_id + JOIN type_intervenant ti ON ti.id = si.type_intervenant_id + JOIN structure s ON s.id = t2.structure_id +) t3 +ORDER BY + annee_id, type_intervenant_id, structure_id, periode_id, nom, code_origine, nbu DESC', + ), + 'V_EXPORT_PILOTAGE_ECARTS_ETATS' => + array ( + 'name' => 'V_EXPORT_PILOTAGE_ECARTS_ETATS', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_EXPORT_PILOTAGE_ECARTS_ETATS AS +SELECT + t3.annee_id annee_id, + t3.annee_id || \'-\' || (t3.annee_id+1) annee, + t3.etat, + t3.type_heures_id, + t3.type_heures, + s.id structure_id, + s.libelle_court structure, + i.id intervenant_id, + ti.libelle intervenant_type, + i.source_code intervenant_code, + i.prenom || \' \' || i.nom_usuel intervenant, + t3.hetd_payables +FROM + +( +SELECT + annee_id, + etat, + type_heures_id, + type_heures, + structure_id, + intervenant_id, + sum(hetd) hetd_payables +FROM ( + SELECT + annee_id, + LOWER(tvh.code) || \'-\' || evh.code etat, + 10*tvh.ordre + evh.ordre ordre, + type_heures_id, + type_heures, + structure_id, + intervenant_id, + SUM(hetd) hetd + FROM ( + SELECT + i.annee_id, + fr.type_volume_horaire_id, + fr.etat_volume_horaire_id, + th.id type_heures_id, + th.code type_heures, + COALESCE(ep.structure_id,i.structure_id) structure_id, + fr.intervenant_id, + SUM(frs.heures_compl_fi) hetd + FROM + formule_resultat_service frs + JOIN formule_resultat fr ON fr.id = frs.formule_resultat_id + JOIN service s ON s.id = frs.service_id + JOIN intervenant i ON i.id = fr.intervenant_id + JOIN type_heures th ON th.code = \'fi\' + LEFT JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + GROUP BY + i.annee_id, + fr.type_volume_horaire_id, + fr.etat_volume_horaire_id, + th.id, th.code, + fr.intervenant_id, + ep.structure_id, + i.structure_id + + UNION ALL + + SELECT + i.annee_id, + fr.type_volume_horaire_id, + fr.etat_volume_horaire_id, + th.id type_heures_id, + th.code type_heures, + COALESCE(ep.structure_id,i.structure_id) structure_id, + fr.intervenant_id, + SUM(frs.heures_compl_fa) hetd + FROM + formule_resultat_service frs + JOIN formule_resultat fr ON fr.id = frs.formule_resultat_id + JOIN service s ON s.id = frs.service_id + JOIN intervenant i ON i.id = fr.intervenant_id + JOIN type_heures th ON th.code = \'fa\' + LEFT JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + GROUP BY + i.annee_id, + fr.type_volume_horaire_id, + fr.etat_volume_horaire_id, + th.id, th.code, + fr.intervenant_id, + ep.structure_id, + i.structure_id + + UNION ALL + + SELECT + i.annee_id, + fr.type_volume_horaire_id, + fr.etat_volume_horaire_id, + th.id type_heures_id, + th.code type_heures, + COALESCE(ep.structure_id,i.structure_id) structure_id, + fr.intervenant_id, + SUM(frs.heures_compl_fc) hetd + FROM + formule_resultat_service frs + JOIN formule_resultat fr ON fr.id = frs.formule_resultat_id + JOIN service s ON s.id = frs.service_id + JOIN intervenant i ON i.id = fr.intervenant_id + JOIN type_heures th ON th.code = \'fc\' + LEFT JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + GROUP BY + i.annee_id, + fr.type_volume_horaire_id, + fr.etat_volume_horaire_id, + th.id, th.code, + fr.intervenant_id, + ep.structure_id, + i.structure_id + + UNION ALL + + SELECT + i.annee_id, + fr.type_volume_horaire_id, + fr.etat_volume_horaire_id, + th.id type_heures_id, + th.code type_heures, + sr.structure_id, + fr.intervenant_id, + sum( frsr.heures_compl_referentiel ) hetd + FROM + formule_resultat_service_ref frsr + JOIN formule_resultat fr ON fr.id = frsr.formule_resultat_id + JOIN service_referentiel sr ON sr.id = frsr.service_referentiel_id + JOIN intervenant i ON i.id = fr.intervenant_id + JOIN type_heures th ON th.code = \'referentiel\' + GROUP BY + i.annee_id, + fr.type_volume_horaire_id, + fr.etat_volume_horaire_id, + th.id, th.code, + fr.intervenant_id, + sr.structure_id + ) t1 + JOIN type_volume_horaire tvh ON tvh.id = t1.type_volume_horaire_id + JOIN etat_volume_horaire evh ON evh.id = t1.etat_volume_horaire_id + GROUP BY + annee_id, tvh.code, evh.code, tvh.ordre, evh.ordre, type_heures_id, type_heures, structure_id, intervenant_id + + UNION ALL + + SELECT + annee_id, + etat, + ordre, + type_heures_id, + type_heures, + structure_id, + intervenant_id, + SUM(hetd) hetd + FROM ( + SELECT + i.annee_id, + \'demande-mise-en-paiement\' etat, + 90 ordre, + th.id type_heures_id, + th.code type_heures, + COALESCE( sr.structure_id, ep.structure_id, i.structure_id ) structure_id, + i.id intervenant_id, + mep.heures hetd + FROM + mise_en_paiement mep + JOIN type_heures th ON th.id = mep.type_heures_id + JOIN centre_cout cc ON cc.id = mep.centre_cout_id + LEFT JOIN formule_resultat_service frs ON frs.id = mep.formule_res_service_id + LEFT JOIN formule_resultat_service_ref frsr ON frsr.id = mep.formule_res_service_ref_id + LEFT JOIN formule_resultat fr ON fr.id = COALESCE(frs.formule_resultat_id, frsr.formule_resultat_id) + LEFT JOIN service s ON s.id = frs.service_id + LEFT JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + LEFT JOIN service_referentiel sr ON sr.id = frsr.service_referentiel_id + LEFT JOIN intervenant i ON i.id = fr.intervenant_id + WHERE + mep.histo_destruction IS NULL + AND th.eligible_extraction_paie = 1 + + UNION ALL + + SELECT + i.annee_id, + \'mise-en-paiement\' etat, + 91 ordre, + th.id type_heures_id, + th.code type_heures, + COALESCE( sr.structure_id, ep.structure_id, i.structure_id ) structure_id, + i.id intervenant_id, + mep.heures hetd + FROM + mise_en_paiement mep + JOIN type_heures th ON th.id = mep.type_heures_id + JOIN centre_cout cc ON cc.id = mep.centre_cout_id + LEFT JOIN formule_resultat_service frs ON frs.id = mep.formule_res_service_id + LEFT JOIN formule_resultat_service_ref frsr ON frsr.id = mep.formule_res_service_ref_id + LEFT JOIN formule_resultat fr ON fr.id = COALESCE(frs.formule_resultat_id, frsr.formule_resultat_id) + LEFT JOIN service s ON s.id = frs.service_id + LEFT JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + LEFT JOIN service_referentiel sr ON sr.id = frsr.service_referentiel_id + LEFT JOIN intervenant i ON i.id = fr.intervenant_id + WHERE + mep.histo_destruction IS NULL + AND th.eligible_extraction_paie = 1 + AND mep.PERIODE_PAIEMENT_ID IS NOT NULL + ) t1 + GROUP BY + annee_id, etat, ordre, type_heures_id, type_heures, structure_id, intervenant_id +) t2 +GROUP BY + annee_id, + etat, ordre + ,type_heures_id, type_heures + ,structure_id + ,intervenant_id +ORDER BY + annee_id, ordre + +) t3 + JOIN intervenant i ON i.id = t3.intervenant_id + JOIN statut_intervenant si ON si.id = i.statut_id + JOIN type_intervenant ti ON ti.id = si.type_intervenant_id + JOIN structure s ON s.id = t3.structure_id', + ), + 'V_EXPORT_SERVICE' => + array ( + 'name' => 'V_EXPORT_SERVICE', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_EXPORT_SERVICE AS +WITH t AS ( SELECT + \'vh_\' || vh.id id, + s.id service_id, + s.intervenant_id intervenant_id, + vh.type_volume_horaire_id type_volume_horaire_id, + fr.etat_volume_horaire_id etat_volume_horaire_id, + s.element_pedagogique_id element_pedagogique_id, + s.etablissement_id etablissement_id, + NULL structure_aff_id, + NULL structure_ens_id, + vh.periode_id periode_id, + vh.type_intervention_id type_intervention_id, + NULL fonction_referentiel_id, + + s.description service_description, + + vh.heures heures, + 0 heures_ref, + 0 heures_non_payees, + frvh.service_fi service_fi, + frvh.service_fa service_fa, + frvh.service_fc service_fc, + 0 service_referentiel, + frvh.heures_compl_fi heures_compl_fi, + frvh.heures_compl_fa heures_compl_fa, + frvh.heures_compl_fc heures_compl_fc, + frvh.heures_compl_fc_majorees heures_compl_fc_majorees, + 0 heures_compl_referentiel, + frvh.total total, + fr.solde solde, + NULL service_ref_formation, + NULL commentaires +FROM + formule_resultat_vh frvh + JOIN formule_resultat fr ON fr.id = frvh.formule_resultat_id + JOIN volume_horaire vh ON vh.id = frvh.volume_horaire_id AND vh.motif_non_paiement_id IS NULL AND vh.histo_destruction IS NULL + JOIN service s ON s.id = vh.service_id AND s.intervenant_id = fr.intervenant_id AND s.histo_destruction IS NULL + +UNION ALL + +SELECT + \'vh_\' || vh.id id, + s.id service_id, + s.intervenant_id intervenant_id, + vh.type_volume_horaire_id type_volume_horaire_id, + vhe.etat_volume_horaire_id etat_volume_horaire_id, + s.element_pedagogique_id element_pedagogique_id, + s.etablissement_id etablissement_id, + NULL structure_aff_id, + NULL structure_ens_id, + vh.periode_id periode_id, + vh.type_intervention_id type_intervention_id, + NULL fonction_referentiel_id, + + s.description service_description, + + vh.heures heures, + 0 heures_ref, + 1 heures_non_payees, + 0 service_fi, + 0 service_fa, + 0 service_fc, + 0 service_referentiel, + 0 heures_compl_fi, + 0 heures_compl_fa, + 0 heures_compl_fc, + 0 heures_compl_fc_majorees, + 0 heures_compl_referentiel, + 0 total, + fr.solde solde, + NULL service_ref_formation, + NULL commentaires +FROM + volume_horaire vh + JOIN service s ON s.id = vh.service_id + JOIN v_volume_horaire_etat vhe ON vhe.volume_horaire_id = vh.id + JOIN formule_resultat fr ON fr.intervenant_id = s.intervenant_id AND fr.type_volume_horaire_id = vh.type_volume_horaire_id AND fr.etat_volume_horaire_id = vhe.etat_volume_horaire_id +WHERE + vh.motif_non_paiement_id IS NOT NULL + AND vh.histo_destruction IS NULL + AND s.histo_destruction IS NULL + +UNION ALL + +SELECT + \'vh_ref_\' || vhr.id id, + sr.id service_id, + sr.intervenant_id intervenant_id, + fr.type_volume_horaire_id type_volume_horaire_id, + fr.etat_volume_horaire_id etat_volume_horaire_id, + NULL element_pedagogique_id, + OSE_PARAMETRE.GET_ETABLISSEMENT etablissement_id, + NULL structure_aff_id, + sr.structure_id structure_ens_id, + NULL periode_id, + NULL type_intervention_id, + sr.fonction_id fonction_referentiel_id, + + NULL service_description, + + 0 heures, + vhr.heures heures_ref, + 0 heures_non_payees, + 0 service_fi, + 0 service_fa, + 0 service_fc, + frvr.service_referentiel service_referentiel, + 0 heures_compl_fi, + 0 heures_compl_fa, + 0 heures_compl_fc, + 0 heures_compl_fc_majorees, + frvr.heures_compl_referentiel heures_compl_referentiel, + frvr.total total, + fr.solde solde, + sr.formation service_ref_formation, + sr.commentaires commentaires +FROM + formule_resultat_vh_ref frvr + JOIN formule_resultat fr ON fr.id = frvr.formule_resultat_id + JOIN volume_horaire_ref vhr ON vhr.id = frvr.volume_horaire_ref_id AND vhr.histo_destruction IS NULL + JOIN service_referentiel sr ON sr.id = vhr.service_referentiel_id AND sr.intervenant_id = fr.intervenant_id AND sr.histo_destruction IS NULL + +UNION ALL + +SELECT + \'vh_0_\' || i.id id, + NULL service_id, + i.id intervenant_id, + tvh.id type_volume_horaire_id, + evh.id etat_volume_horaire_id, + NULL element_pedagogique_id, + OSE_PARAMETRE.GET_ETABLISSEMENT etablissement_id, + NULL structure_aff_id, + NULL structure_ens_id, + NULL periode_id, + NULL type_intervention_id, + NULL fonction_referentiel_id, + + NULL service_description, + + 0 heures, + 0 heures_ref, + 0 heures_non_payees, + 0 service_fi, + 0 service_fa, + 0 service_fc, + 0 service_referentiel, + 0 heures_compl_fi, + 0 heures_compl_fa, + 0 heures_compl_fc, + 0 heures_compl_fc_majorees, + NULL heures_compl_referentiel, + 0 total, + 0 solde, + NULL service_ref_formation, + NULL commentaires +FROM + intervenant i + JOIN statut_intervenant si ON si.id = i.statut_id + JOIN etat_volume_horaire evh ON evh.code IN (\'saisi\',\'valide\') + JOIN type_volume_horaire tvh ON tvh.code IN (\'PREVU\',\'REALISE\') + LEFT JOIN modification_service_du msd ON msd.intervenant_id = i.id AND msd.histo_destruction IS NULL + LEFT JOIN motif_modification_service mms ON mms.id = msd.motif_id +WHERE + i.histo_destruction IS NULL + AND si.service_statutaire > 0 +GROUP BY + i.id, si.service_statutaire, evh.id, tvh.id +HAVING + si.service_statutaire + SUM(msd.heures * mms.multiplicateur) = 0 + + +), ponds AS ( +SELECT + ep.id element_pedagogique_id, + MAX(COALESCE( m.ponderation_service_du, 1)) ponderation_service_du, + MAX(COALESCE( m.ponderation_service_compl, 1)) ponderation_service_compl +FROM + element_pedagogique ep + LEFT JOIN element_modulateur em ON em.element_id = ep.id + AND em.histo_destruction IS NULL + LEFT JOIN modulateur m ON m.id = em.modulateur_id +WHERE + ep.histo_destruction IS NULL +GROUP BY + ep.id +) +SELECT + t.id id, + t.service_id service_id, + i.id intervenant_id, + ti.id type_intervenant_id, + i.annee_id annee_id, + his.histo_modification service_date_modification, + t.type_volume_horaire_id type_volume_horaire_id, + t.etat_volume_horaire_id etat_volume_horaire_id, + etab.id etablissement_id, + saff.id structure_aff_id, + sens.id structure_ens_id, + ose_divers.niveau_formation_id_calc( gtf.id, gtf.pertinence_niveau, etp.niveau ) niveau_formation_id, + etp.id etape_id, + ep.id element_pedagogique_id, + t.periode_id periode_id, + t.type_intervention_id type_intervention_id, + t.fonction_referentiel_id fonction_referentiel_id, + + tvh.libelle || \' \' || evh.libelle type_etat, + i.source_code intervenant_code, + i.nom_usuel || \' \' || i.prenom intervenant_nom, + i.date_naissance intervenant_date_naissance, + si.libelle intervenant_statut_libelle, + ti.code intervenant_type_code, + ti.libelle intervenant_type_libelle, + g.source_code intervenant_grade_code, + g.libelle_court intervenant_grade_libelle, + di.source_code intervenant_discipline_code, + di.libelle_court intervenant_discipline_libelle, + saff.libelle_court service_structure_aff_libelle, + + sens.libelle_court service_structure_ens_libelle, + etab.libelle etablissement_libelle, + gtf.libelle_court groupe_type_formation_libelle, + tf.libelle_court type_formation_libelle, + etp.niveau etape_niveau, + etp.source_code etape_code, + etp.libelle etape_libelle, + ep.source_code element_code, + COALESCE(ep.libelle,to_char(t.service_description)) element_libelle, + de.source_code element_discipline_code, + de.libelle_court element_discipline_libelle, + fr.libelle_long fonction_referentiel_libelle, + ep.taux_fi element_taux_fi, + ep.taux_fc element_taux_fc, + ep.taux_fa element_taux_fa, + t.service_ref_formation service_ref_formation, + t.commentaires commentaires, + p.libelle_court periode_libelle, + CASE WHEN ponds.ponderation_service_compl = 1 THEN NULL ELSE ponds.ponderation_service_compl END element_ponderation_compl, + src.libelle element_source_libelle, + + t.heures heures, + t.heures_ref heures_ref, + t.heures_non_payees heures_non_payees, + si.service_statutaire service_statutaire, + fi.heures_service_modifie service_du_modifie, + t.service_fi service_fi, + t.service_fa service_fa, + t.service_fc service_fc, + t.service_referentiel service_referentiel, + t.heures_compl_fi heures_compl_fi, + t.heures_compl_fa heures_compl_fa, + t.heures_compl_fc heures_compl_fc, + t.heures_compl_fc_majorees heures_compl_fc_majorees, + t.heures_compl_referentiel heures_compl_referentiel, + t.total total, + t.solde solde, + v.histo_modification date_cloture_realise + +FROM + t + JOIN intervenant i ON i.id = t.intervenant_id AND i.histo_destruction IS NULL + JOIN statut_intervenant si ON si.id = i.statut_id + JOIN type_intervenant ti ON ti.id = si.type_intervenant_id + JOIN etablissement etab ON etab.id = t.etablissement_id + JOIN type_volume_horaire tvh ON tvh.id = t.type_volume_horaire_id + JOIN etat_volume_horaire evh ON evh.id = t.etat_volume_horaire_id + LEFT JOIN histo_intervenant_service his ON his.intervenant_id = i.id AND his.type_volume_horaire_id = tvh.id AND his.referentiel = 0 + LEFT JOIN grade g ON g.id = i.grade_id + LEFT JOIN discipline di ON di.id = i.discipline_id + LEFT JOIN structure saff ON saff.id = i.structure_id AND ti.code = \'P\' + LEFT JOIN element_pedagogique ep ON ep.id = t.element_pedagogique_id + LEFT JOIN discipline de ON de.id = ep.discipline_id + LEFT JOIN structure sens ON sens.id = NVL(t.structure_ens_id, ep.structure_id) + LEFT JOIN periode p ON p.id = t.periode_id + LEFT JOIN source src ON src.id = ep.source_id OR (ep.source_id IS NULL AND src.code = \'OSE\') + LEFT JOIN etape etp ON etp.id = ep.etape_id + LEFT JOIN type_formation tf ON tf.id = etp.type_formation_id AND tf.histo_destruction IS NULL + LEFT JOIN groupe_type_formation gtf ON gtf.id = tf.groupe_id AND gtf.histo_destruction IS NULL + LEFT JOIN v_formule_intervenant fi ON fi.intervenant_id = i.id + LEFT JOIN ponds ponds ON ponds.element_pedagogique_id = ep.id + LEFT JOIN fonction_referentiel fr ON fr.id = t.fonction_referentiel_id + LEFT JOIN type_validation tv ON tvh.code = \'REALISE\' AND tv.code = \'CLOTURE_REALISE\' + LEFT JOIN validation v ON v.intervenant_id = i.id AND v.type_validation_id = tv.id AND v.histo_destruction IS NULL', + ), + 'V_EXP_HETD_CENTRE_COUT' => + array ( + 'name' => 'V_EXP_HETD_CENTRE_COUT', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_EXP_HETD_CENTRE_COUT AS +WITH t AS ( + SELECT + tvh.id type_volume_horaire_id, + evh.id etat_volume_horaire_id, + a.id annee_id, + i.id intervenant_id, + si.id statut_intervenant_id, + ti.id type_intervenant_id, + g.id grade_id, + str.id structure_id, + gtf.id groupe_type_formation_id, + tf.id type_formation_id, + e.id etape_id, + + tvh.code type_volume_horaire, + evh.code etat_volume_horaire, + a.libelle annee, + i.code code_intervenant, + i.nom_usuel || \' \' || i.prenom intervenant, + si.libelle statut_intervenant, + ti.libelle type_intervenant, + g.libelle_long grade, + str.libelle_court structure_enseignement, + gtf.libelle_long groupe_type_formation, + tf.libelle_long type_formation, + e.source_code code_formation, + + CASE WHEN mep.id IS NULL THEN frs.total ELSE mep.heures END + total_hetd, + + cc.source_code || \' \' || cc.libelle centre_couts, + OSE_FORMULE.GET_TAUX_HORAIRE_HETD( NVL(mep.date_mise_en_paiement,SYSDATE) ) * CASE WHEN mep.id IS NULL THEN frs.total ELSE mep.heures END + total_euros + FROM + formule_resultat_service frs + JOIN formule_resultat fr ON fr.id = frs.formule_resultat_id + JOIN etat_volume_horaire evh ON evh.id = fr.etat_volume_horaire_id + JOIN type_volume_horaire tvh ON tvh.id = fr.type_volume_horaire_id + JOIN intervenant i ON i.id = fr.intervenant_id + JOIN annee a ON a.id = i.annee_id + JOIN statut_intervenant si ON si.id = i.statut_id + JOIN type_intervenant ti ON ti.id = si.type_intervenant_id + JOIN service s ON s.id = frs.service_id + LEFT JOIN grade g ON g.id = i.grade_id + LEFT JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + JOIN structure str ON str.id = NVL(ep.structure_id, i.structure_id) + LEFT JOIN etape e ON e.id = ep.etape_id + LEFT JOIN type_formation tf ON tf.id = e.type_formation_id + LEFT JOIN groupe_type_formation gtf ON gtf.id = tf.groupe_id + LEFT JOIN mise_en_paiement mep ON mep.formule_res_service_id = frs.id + AND mep.histo_destruction IS NULL + + LEFT JOIN centre_cout cc ON cc.id = MEP.CENTRE_COUT_ID + + UNION ALL + + SELECT + type_volume_horaire_id, etat_volume_horaire_id, annee_id, intervenant_id, statut_intervenant_id, type_intervenant_id, + grade_id, structure_id, groupe_type_formation_id, type_formation_id, etape_id, + + type_volume_horaire, etat_volume_horaire, annee, code_intervenant, intervenant, statut_intervenant, + type_intervenant, grade, structure_enseignement, groupe_type_formation, type_formation, + code_formation, total_hetd, centre_couts, + OSE_FORMULE.GET_TAUX_HORAIRE_HETD( SYSDATE ) * total_hetd total_euros + FROM ( + SELECT + tvh.id type_volume_horaire_id, + evh.id etat_volume_horaire_id, + a.id annee_id, + i.id intervenant_id, + si.id statut_intervenant_id, + ti.id type_intervenant_id, + g.id grade_id, + str.id structure_id, + gtf.id groupe_type_formation_id, + tf.id type_formation_id, + e.id etape_id, + + tvh.code type_volume_horaire, + evh.code etat_volume_horaire, + a.libelle annee, + i.code code_intervenant, + i.nom_usuel || \' \' || i.prenom intervenant, + si.libelle statut_intervenant, + ti.libelle type_intervenant, + g.libelle_long grade, + str.libelle_court structure_enseignement, + gtf.libelle_long groupe_type_formation, + tf.libelle_long type_formation, + e.source_code code_formation, + frs.total - SUM(mep.heures) OVER (PARTITION BY frs.id) total_hetd, + RANK() OVER ( PARTITION BY frs.id ORDER BY mep.id) ordre, + null centre_couts + FROM + formule_resultat_service frs + JOIN formule_resultat fr ON fr.id = frs.formule_resultat_id + JOIN etat_volume_horaire evh ON evh.id = fr.etat_volume_horaire_id + JOIN type_volume_horaire tvh ON tvh.id = fr.type_volume_horaire_id + JOIN intervenant i ON i.id = fr.intervenant_id + JOIN annee a ON a.id = i.annee_id + JOIN statut_intervenant si ON si.id = i.statut_id + JOIN type_intervenant ti ON ti.id = si.type_intervenant_id + JOIN service s ON s.id = frs.service_id + LEFT JOIN grade g ON g.id = i.grade_id + LEFT JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + JOIN structure str ON str.id = NVL(ep.structure_id, i.structure_id) + LEFT JOIN etape e ON e.id = ep.etape_id + LEFT JOIN type_formation tf ON tf.id = e.type_formation_id + LEFT JOIN groupe_type_formation gtf ON gtf.id = tf.groupe_id + LEFT JOIN mise_en_paiement mep ON mep.formule_res_service_id = frs.id + AND mep.histo_destruction IS NULL + ) t WHERE ordre = 1 AND total_hetd > 0 +) +SELECT + type_volume_horaire_id, + etat_volume_horaire_id, + annee_id, + intervenant_id, + statut_intervenant_id, + type_intervenant_id, + grade_id, + structure_id, + groupe_type_formation_id, + type_formation_id, + etape_id, + + type_volume_horaire, + etat_volume_horaire, + annee, + code_intervenant, + intervenant, + statut_intervenant, + type_intervenant, + grade, + structure_enseignement, + groupe_type_formation, + type_formation, + code_formation, + SUM(total_hetd) total_hetd, + centre_couts, + SUM(total_euros) total_euros +FROM + t +GROUP BY + type_volume_horaire_id, + etat_volume_horaire_id, + annee_id, + intervenant_id, + statut_intervenant_id, + type_intervenant_id, + grade_id, + structure_id, + groupe_type_formation_id, + type_formation_id, + etape_id, + + type_volume_horaire, + etat_volume_horaire, + annee, + code_intervenant, + intervenant, + statut_intervenant, + type_intervenant, + grade, + structure_enseignement, + groupe_type_formation, + type_formation, + code_formation, + centre_couts', + ), + 'V_FORMULE_INTERVENANT' => + array ( + 'name' => 'V_FORMULE_INTERVENANT', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_FORMULE_INTERVENANT AS +SELECT + i.id intervenant_id, + i.annee_id annee_id, + CASE WHEN ti.code = \'P\' THEN i.structure_id ELSE NULL END structure_id, + ti.code type_intervenant_code, + si.service_statutaire heures_service_statutaire, + si.depassement_service_du_sans_hc depassement_service_du_sans_hc, + COALESCE( SUM( msd.heures * mms.multiplicateur ), 0 ) heures_service_modifie, + COALESCE( SUM( msd.heures * mms.multiplicateur * mms.decharge ), 0 ) heures_decharge +FROM + intervenant i + LEFT JOIN modification_service_du msd ON msd.intervenant_id = i.id AND msd.histo_destruction IS NULL + LEFT JOIN motif_modification_service mms ON mms.id = msd.motif_id + JOIN statut_intervenant si ON si.id = i.statut_id + JOIN type_intervenant ti ON ti.id = si.type_intervenant_id +WHERE + i.histo_destruction IS NULL + AND i.id = COALESCE( OSE_FORMULE.GET_INTERVENANT_ID, i.id ) +GROUP BY + i.id, i.annee_id, i.structure_id, ti.code, si.service_statutaire, si.depassement_service_du_sans_hc', + ), + 'V_FORMULE_LOCAL_I_PARAMS' => + array ( + 'name' => 'V_FORMULE_LOCAL_I_PARAMS', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_FORMULE_LOCAL_I_PARAMS AS +SELECT + null intervenant_id, + null param_1, + null param_2, + null param_3, + null param_4, + null param_5 +FROM + dual', + ), + 'V_FORMULE_LOCAL_VH_PARAMS' => + array ( + 'name' => 'V_FORMULE_LOCAL_VH_PARAMS', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_FORMULE_LOCAL_VH_PARAMS AS +SELECT + vh.id volume_horaire_id, + null volume_horaire_ref_id, + str.code param_1, + null param_2, + null param_3, + null param_4, + null param_5 +FROM + volume_horaire vh + JOIN service s ON s.id = vh.service_id + JOIN intervenant i ON i.id = s.intervenant_id + LEFT JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + JOIN structure str ON str.id = COALESCE(ep.structure_id,i.structure_id) +WHERE + vh.histo_destruction IS NULL + AND s.histo_destruction IS NULL + AND vh.heures <> 0 + AND vh.motif_non_paiement_id IS NULL + AND s.intervenant_id = COALESCE( OSE_FORMULE.GET_INTERVENANT_ID, s.intervenant_id ) + +UNION ALL + +SELECT + null volume_horaire_id, + vhr.id volume_horaire_ref_id, + str.code param_1, + null param_2, + null param_3, + null param_4, + null param_5 +FROM + volume_horaire_ref vhr + JOIN service_referentiel sr ON sr.id = vhr.service_referentiel_id + JOIN structure str ON str.id = sr.structure_id +WHERE + vhr.histo_destruction IS NULL + AND sr.histo_destruction IS NULL + AND vhr.heures <> 0 + AND sr.intervenant_id = COALESCE( OSE_FORMULE.GET_INTERVENANT_ID, sr.intervenant_id )', + ), + 'V_FORMULE_VOLUME_HORAIRE' => + array ( + 'name' => 'V_FORMULE_VOLUME_HORAIRE', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_FORMULE_VOLUME_HORAIRE AS +SELECT + rownum ordre, + t.ID, + t.VOLUME_HORAIRE_ID, + t.VOLUME_HORAIRE_REF_ID, + t.SERVICE_ID, + t.SERVICE_REFERENTIEL_ID, + t.INTERVENANT_ID, + t.TYPE_INTERVENTION_ID, + t.TYPE_VOLUME_HORAIRE_ID, + t.ETAT_VOLUME_HORAIRE_ID, + t.TAUX_FI, + t.TAUX_FA, + t.TAUX_FC, + t.STRUCTURE_ID, + t.structure_is_affectation, + t.structure_is_univ, + t.PONDERATION_SERVICE_DU, + t.PONDERATION_SERVICE_COMPL, + t.SERVICE_STATUTAIRE, + t.HEURES, + t.HORAIRE_DEBUT, + t.HORAIRE_FIN, + t.TYPE_INTERVENTION_CODE, + t.TAUX_SERVICE_DU, + t.TAUX_SERVICE_COMPL +FROM ( +SELECT + to_number( 1 || vh.id ) id, + vh.id volume_horaire_id, + null volume_horaire_ref_id, + s.id service_id, + null service_referentiel_id, + s.intervenant_id intervenant_id, + ti.id type_intervention_id, + vh.type_volume_horaire_id type_volume_horaire_id, + vhe.etat_volume_horaire_id etat_volume_horaire_id, + + CASE WHEN ep.id IS NOT NULL THEN ep.taux_fi ELSE 1 END taux_fi, + CASE WHEN ep.id IS NOT NULL THEN ep.taux_fa ELSE 0 END taux_fa, + CASE WHEN ep.id IS NOT NULL THEN ep.taux_fc ELSE 0 END taux_fc, + ep.structure_id structure_id, + CASE WHEN COALESCE(ep.structure_id,0) = COALESCE(i.structure_id,0) THEN 1 ELSE 0 END structure_is_affectation, + CASE WHEN COALESCE(ep.structure_id,0) = COALESCE(to_number(p.valeur),0) THEN 1 ELSE 0 END structure_is_univ, + MAX(COALESCE( m.ponderation_service_du, 1)) ponderation_service_du, + MAX(COALESCE( m.ponderation_service_compl, 1)) ponderation_service_compl, + COALESCE(tf.service_statutaire,1) service_statutaire, + + vh.heures heures, + vh.horaire_debut horaire_debut, + vh.horaire_fin horaire_fin, + ti.code type_intervention_code, + COALESCE(tis.taux_hetd_service,ti.taux_hetd_service,1) taux_service_du, + COALESCE(tis.taux_hetd_complementaire,ti.taux_hetd_complementaire,1) taux_service_compl +FROM + volume_horaire vh + JOIN parametre p ON p.nom = \'structure_univ\' + JOIN service s ON s.id = vh.service_id + JOIN intervenant i ON i.id = s.intervenant_id + JOIN type_intervention ti ON ti.id = vh.type_intervention_id + JOIN v_volume_horaire_etat vhe ON vhe.volume_horaire_id = vh.id + + LEFT JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + LEFT JOIN etape e ON e.id = ep.etape_id + LEFT JOIN type_formation tf ON tf.id = e.type_formation_id + LEFT JOIN element_modulateur em ON em.element_id = s.element_pedagogique_id + AND em.histo_destruction IS NULL + LEFT JOIN modulateur m ON m.id = em.modulateur_id + LEFT JOIN type_intervention_statut tis ON tis.type_intervention_id = ti.id AND tis.statut_intervenant_id = i.statut_id +WHERE + vh.histo_destruction IS NULL + AND s.histo_destruction IS NULL + AND vh.heures <> 0 + AND vh.motif_non_paiement_id IS NULL + AND s.intervenant_id = COALESCE( OSE_FORMULE.GET_INTERVENANT_ID, s.intervenant_id ) +GROUP BY + vh.id, s.id, s.intervenant_id, ti.id, vh.type_volume_horaire_id, vhe.etat_volume_horaire_id, ep.id, + ep.taux_fi, ep.taux_fa, ep.taux_fc, ep.structure_id, tf.service_statutaire, vh.heures, + vh.horaire_debut, vh.horaire_fin, tis.taux_hetd_service, tis.taux_hetd_complementaire, + ti.code, ti.taux_hetd_service, ti.taux_hetd_complementaire, i.structure_id, p.valeur + +UNION ALL + +SELECT + to_number( 2 || vhr.id ) id, + null volume_horaire_id, + vhr.id volume_horaire_ref_id, + null service_id, + sr.id service_referentiel_id, + sr.intervenant_id intervenant_id, + null type_intervention_id, + vhr.type_volume_horaire_id type_volume_horaire_id, + evh.id etat_volume_horaire_id, + + 0 taux_fi, + 0 taux_fa, + 0 taux_fc, + sr.structure_id structure_id, + CASE WHEN COALESCE(sr.structure_id,0) = COALESCE(i.structure_id,0) THEN 1 ELSE 0 END structure_is_affectation, + CASE WHEN COALESCE(sr.structure_id,0) = COALESCE(to_number(p.valeur),0) THEN 1 ELSE 0 END structure_is_univ, + 1 ponderation_service_du, + 1 ponderation_service_compl, + COALESCE(fr.service_statutaire,1) service_statutaire, + + vhr.heures heures, + vhr.horaire_debut horaire_debut, + vhr.horaire_fin horaire_fin, + null type_intervention_code, + 1 taux_service_du, + 1 taux_service_compl +FROM + volume_horaire_ref vhr + JOIN parametre p ON p.nom = \'structure_univ\' + JOIN service_referentiel sr ON sr.id = vhr.service_referentiel_id + JOIN intervenant i ON i.id = sr.intervenant_id + JOIN v_volume_horaire_ref_etat vher ON vher.volume_horaire_ref_id = vhr.id + JOIN etat_volume_horaire evh ON evh.id = vher.etat_volume_horaire_id + JOIN fonction_referentiel fr ON fr.id = sr.fonction_id +WHERE + vhr.histo_destruction IS NULL + AND sr.histo_destruction IS NULL + AND vhr.heures <> 0 + AND sr.intervenant_id = COALESCE( OSE_FORMULE.GET_INTERVENANT_ID, sr.intervenant_id ) + +ORDER BY + horaire_fin, horaire_debut, volume_horaire_id, volume_horaire_ref_id +) t', + ), + 'V_FR_SERVICE_CENTRE_COUT' => + array ( + 'name' => 'V_FR_SERVICE_CENTRE_COUT', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_FR_SERVICE_CENTRE_COUT AS +SELECT + frs.id formule_resultat_service_id, cc.id centre_cout_id +FROM + formule_resultat_service frs + JOIN service s ON s.id = frs.service_id + JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + JOIN centre_cout cc ON cc.histo_destruction IS NULL + + JOIN centre_cout_structure ccs ON ccs.centre_cout_id = cc.id + AND ccs.structure_id = ep.structure_id + AND ccs.histo_destruction IS NULL + + JOIN cc_activite a ON a.id = cc.activite_id + AND a.histo_destruction IS NULL + + JOIN type_ressource tr ON tr.id = cc.type_ressource_id + AND tr.histo_destruction IS NULL +WHERE + ( + (frs.heures_compl_fi > 0 AND tr.fi = 1 AND a.fi = 1 ) + OR (frs.heures_compl_fa > 0 AND tr.fa = 1 AND a.fa = 1 ) + OR (frs.heures_compl_fc > 0 AND tr.fc = 1 AND a.fc = 1 ) + OR (frs.heures_compl_fc_majorees > 0 AND tr.fc_majorees = 1 AND a.fc_majorees = 1 ) + ) + +UNION + +SELECT + frs.id formule_resultat_service_id, cc.id +FROM + formule_resultat_service frs + JOIN service s ON s.id = frs.service_id + AND s.element_pedagogique_id IS NULL + + JOIN intervenant i ON i.id = s.intervenant_id + JOIN centre_cout cc ON cc.histo_destruction IS NULL + + JOIN centre_cout_structure ccs ON ccs.centre_cout_id = cc.id + AND ccs.structure_id = i.structure_id + AND ccs.histo_destruction IS NULL + + JOIN cc_activite a ON a.id = cc.activite_id + AND a.histo_destruction IS NULL + + JOIN type_ressource tr ON tr.id = cc.type_ressource_id + AND tr.histo_destruction IS NULL +WHERE + ( + (frs.heures_compl_fi > 0 AND tr.fi = 1 AND a.fi = 1 ) + OR (frs.heures_compl_fa > 0 AND tr.fa = 1 AND a.fa = 1 ) + OR (frs.heures_compl_fc > 0 AND tr.fc = 1 AND a.fc = 1 ) + OR (frs.heures_compl_fc_majorees > 0 AND tr.fc_majorees = 1 AND a.fc_majorees = 1 ) + )', + ), + 'V_FR_SERVICE_REF_CENTRE_COUT' => + array ( + 'name' => 'V_FR_SERVICE_REF_CENTRE_COUT', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_FR_SERVICE_REF_CENTRE_COUT AS +SELECT + frsr.id formule_resultat_serv_ref_id, cc.id +FROM + formule_resultat_service_ref frsr + JOIN service_referentiel sr ON sr.id = frsr.service_referentiel_id + JOIN centre_cout cc ON cc.histo_destruction IS NULL + + JOIN centre_cout_structure ccs ON ccs.centre_cout_id = cc.id + AND ccs.structure_id = sr.structure_id + AND ccs.histo_destruction IS NULL + + JOIN cc_activite a ON a.id = cc.activite_id + AND a.histo_destruction IS NULL + + JOIN type_ressource tr ON tr.id = cc.type_ressource_id + AND tr.histo_destruction IS NULL +WHERE + frsr.heures_compl_referentiel > 0 AND tr.referentiel = 1', + ), + 'V_HAS_DMEP_A_FAIRE' => + array ( + 'name' => 'V_HAS_DMEP_A_FAIRE', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_HAS_DMEP_A_FAIRE AS +SELECT + intervenant_id, + structure_id, + CASE WHEN + SUM(CASE WHEN heures_dmep > heures_compl THEN heures_compl ELSE heures_dmep END) < SUM(heures_compl) + THEN 1 ELSE 0 END has_dmep_a_faire +FROM + ( + SELECT + fr.intervenant_id intervenant_id, + NVL( ep.structure_id, i.structure_id ) structure_id, + frs.heures_compl_fi + frs.heures_compl_fa + frs.heures_compl_fc + frs.heures_compl_fc_majorees heures_compl, + SUM( NVL(mep.heures,0) ) OVER (PARTITION BY frs.id) heures_dmep, + SUM( NVL(CASE WHEN mep.periode_paiement_id IS NOT NULL THEN mep.heures ELSE 0 END,0) ) OVER (PARTITION BY frs.id) heures_mep, + ROW_NUMBER() OVER (PARTITION BY frs.id ORDER BY 1) index__ + FROM + formule_resultat_service frs + JOIN formule_resultat fr ON fr.id = frs.formule_resultat_id + JOIN type_volume_horaire tvh ON tvh.id = fr.type_volume_horaire_id AND tvh.code = \'REALISE\' + JOIN etat_volume_horaire evh ON evh.id = fr.etat_volume_horaire_id AND evh.code = \'valide\' + JOIN intervenant i on i.id = fr.intervenant_id + JOIN service s ON s.id = frs.service_id + LEFT JOIN element_pedagogique ep on ep.id = s.element_pedagogique_id + LEFT JOIN mise_en_paiement mep ON mep.formule_res_service_id = frs.id AND mep.histo_destruction IS NULL + + UNION + + SELECT + fr.intervenant_id intervenant_id, + NVL( s.structure_id, i.structure_id ) structure_id, + frs.heures_compl_referentiel heures_compl, + SUM( NVL(mep.heures,0) ) OVER (PARTITION BY frs.id) heures_dmep, + SUM( NVL(CASE WHEN mep.periode_paiement_id IS NOT NULL THEN mep.heures ELSE 0 END,0) ) OVER (PARTITION BY frs.id) heures_mep, + ROW_NUMBER() OVER (PARTITION BY frs.id ORDER BY 1) index__ + FROM + formule_resultat_service_ref frs + JOIN formule_resultat fr ON fr.id = frs.formule_resultat_id + JOIN type_volume_horaire tvh ON tvh.id = fr.type_volume_horaire_id AND tvh.code = \'REALISE\' + JOIN etat_volume_horaire evh ON evh.id = fr.etat_volume_horaire_id AND evh.code = \'valide\' + JOIN intervenant i on i.id = fr.intervenant_id + JOIN service_referentiel s ON s.id = frs.service_referentiel_id + LEFT JOIN mise_en_paiement mep ON mep.formule_res_service_ref_id = frs.id AND mep.histo_destruction IS NULL + )mep +WHERE + index__ = 1 +GROUP BY + intervenant_id, + structure_id', + ), + 'V_HETD_PREV_VAL_STRUCT' => + array ( + 'name' => 'V_HETD_PREV_VAL_STRUCT', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_HETD_PREV_VAL_STRUCT AS +SELECT + annee_id, + structure_id, + sum(heures) heures + +FROM +( +SELECT + i.annee_id, + NVL( ep.structure_id, i.structure_id ) structure_id, + frs.total heures +FROM + formule_resultat_service frs + JOIN formule_resultat fr ON fr.id = frs.formule_resultat_id + JOIN type_volume_horaire tvh ON tvh.id = fr.type_volume_horaire_id + JOIN etat_volume_horaire evh ON evh.id = fr.etat_volume_horaire_id + JOIN intervenant i ON i.id = fr.intervenant_id + JOIN service s ON s.id = frs.service_id + LEFT JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + +WHERE + tvh.code = \'PREVU\' + AND evh.code = \'valide\' +) t1 + +GROUP BY + annee_id, structure_id', + ), + 'V_IMPORT_TAB_COLS' => + array ( + 'name' => 'V_IMPORT_TAB_COLS', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_IMPORT_TAB_COLS AS +WITH importable_tables (table_name )AS ( + SELECT + t.table_name +FROM + user_tab_cols c + join user_tables t on t.table_name = c.table_name +WHERE + c.column_name = \'SOURCE_CODE\' + +MINUS + +SELECT + mview_name table_name +FROM + USER_MVIEWS +), c_values (table_name, column_name, c_table_name, c_column_name) AS ( +SELECT + tc.table_name, + tc.column_name, + pcc.table_name c_table_name, + pcc.column_name c_column_name +FROM + user_tab_cols tc + JOIN USER_CONS_COLUMNS cc ON cc.table_name = tc.table_name AND cc.column_name = tc.column_name + JOIN USER_CONSTRAINTS c ON c.constraint_name = cc.constraint_name + JOIN USER_CONSTRAINTS pc ON pc.constraint_name = c.r_constraint_name + JOIN USER_CONS_COLUMNS pcc ON pcc.constraint_name = pc.constraint_name +WHERE + c.constraint_type = \'R\' AND pc.constraint_type = \'P\' +) +SELECT + tc.table_name, + tc.column_name, + tc.data_type, + CASE WHEN tc.char_length = 0 THEN NULL ELSE tc.char_length END length, + CASE WHEN tc.nullable = \'Y\' THEN 1 ELSE 0 END nullable, + CASE WHEN tc.data_default IS NOT NULL THEN 1 ELSE 0 END has_default, + cv.c_table_name, + cv.c_column_name, + CASE WHEN stc.table_name IS NULL THEN 0 ELSE 1 END AS import_actif +FROM + user_tab_cols tc + JOIN importable_tables t ON t.table_name = tc.table_name + LEFT JOIN import_tables it ON it.table_name = tc.table_name + LEFT JOIN c_values cv ON cv.table_name = tc.table_name AND cv.column_name = tc.column_name + LEFT JOIN user_tab_cols stc ON stc.table_name = \'SRC_\' || tc.table_name AND stc.column_name = tc.column_name +WHERE + tc.column_name not like \'HISTO_%\' + AND tc.column_name <> \'ID\' + AND tc.table_name <> \'SYNC_LOG\' +ORDER BY + it.ordre, tc.table_name, tc.column_id', + ), + 'V_INDICATEUR_1010' => + array ( + 'name' => 'V_INDICATEUR_1010', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_1010 AS +SELECT rownum id, t."ANNEE_ID",t."INTERVENANT_ID",t."STRUCTURE_ID" FROM +( +SELECT DISTINCT + w.annee_id, + w.intervenant_id, + i.structure_id +FROM + tbl_workflow w + JOIN tbl_workflow wc ON wc.intervenant_id = w.intervenant_id + JOIN intervenant i ON i.id = w.intervenant_id +WHERE + w.etape_code = \'PJ_SAISIE\' + AND wc.etape_code = \'SERVICE_SAISIE\' + AND w.type_intervenant_code = \'E\' + AND wc.realisation > 0 + AND w.atteignable = 1 + AND w.objectif > w.realisation +) t', + ), + 'V_INDICATEUR_1011' => + array ( + 'name' => 'V_INDICATEUR_1011', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_1011 AS +SELECT rownum id, t."ANNEE_ID",t."INTERVENANT_ID",t."STRUCTURE_ID" FROM +( +SELECT DISTINCT + w.annee_id, + w.intervenant_id, + i.structure_id +FROM + tbl_workflow w + JOIN tbl_workflow wc ON wc.intervenant_id = w.intervenant_id + JOIN intervenant i ON i.id = w.intervenant_id +WHERE + w.etape_code = \'PJ_SAISIE\' + AND wc.etape_code = \'SERVICE_SAISIE\' + AND w.type_intervenant_code = \'P\' + AND wc.realisation > 0 + AND w.atteignable = 1 + AND w.objectif > w.realisation +) t', + ), + 'V_INDICATEUR_1020' => + array ( + 'name' => 'V_INDICATEUR_1020', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_1020 AS +SELECT rownum id, t."ANNEE_ID",t."INTERVENANT_ID",t."STRUCTURE_ID" FROM +( +SELECT DISTINCT + w.annee_id, + w.intervenant_id, + i.structure_id +FROM + tbl_workflow w + JOIN tbl_workflow wc ON wc.intervenant_id = w.intervenant_id + JOIN intervenant i ON i.id = w.intervenant_id +WHERE + w.etape_code = \'PJ_VALIDATION\' + AND wc.etape_code = \'PJ_SAISIE\' + AND w.type_intervenant_code = \'E\' + AND wc.objectif = wc.realisation + AND w.atteignable = 1 + AND w.objectif > w.realisation +) t', + ), + 'V_INDICATEUR_1021' => + array ( + 'name' => 'V_INDICATEUR_1021', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_1021 AS +SELECT rownum id, t."ANNEE_ID",t."INTERVENANT_ID",t."STRUCTURE_ID" FROM +( +SELECT DISTINCT + w.annee_id, + w.intervenant_id, + i.structure_id +FROM + tbl_workflow w + JOIN tbl_workflow wc ON wc.intervenant_id = w.intervenant_id + JOIN intervenant i ON i.id = w.intervenant_id +WHERE + w.etape_code = \'PJ_VALIDATION\' + AND wc.etape_code = \'PJ_SAISIE\' + AND w.type_intervenant_code = \'P\' + AND wc.objectif = wc.realisation + AND w.atteignable = 1 + AND w.objectif > w.realisation +) t', + ), + 'V_INDICATEUR_110' => + array ( + 'name' => 'V_INDICATEUR_110', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_110 AS +SELECT + rownum id, + t."ANNEE_ID",t."INTERVENANT_ID",t."STRUCTURE_ID" FROM ( + +SELECT DISTINCT + s.annee_id annee_id, + s.intervenant_id intervenant_id, + s.structure_id structure_id +FROM + tbl_service s +WHERE + s.type_intervenant_code = \'P\' + AND s.type_volume_horaire_code = \'PREVU\' + AND s.intervenant_structure_id <> s.structure_id + AND s.valide > 0 + AND s.structure_id IS NOT NULL + +) t', + ), + 'V_INDICATEUR_1110' => + array ( + 'name' => 'V_INDICATEUR_1110', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_1110 AS +SELECT rownum id, t.ANNEE_ID,t.INTERVENANT_ID,t.STRUCTURE_ID FROM ( +SELECT DISTINCT + idc.annee_id, + idc.intervenant_id, + idc.structure_id +FROM + v_indic_depass_charges idc + JOIN type_volume_horaire tvh ON tvh.id = idc.type_volume_horaire_id + LEFT JOIN periode p ON p.id = idc.periode_id +WHERE + (p.code = \'S1\' OR p.id IS NULL) + AND tvh.code = \'PREVU\' +) t', + ), + 'V_INDICATEUR_1111' => + array ( + 'name' => 'V_INDICATEUR_1111', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_1111 AS +SELECT rownum id, t.ANNEE_ID,t.INTERVENANT_ID,t.STRUCTURE_ID FROM ( +SELECT DISTINCT + idc.annee_id, + idc.intervenant_id, + idc.structure_id +FROM + v_indic_depass_charges idc + JOIN type_volume_horaire tvh ON tvh.id = idc.type_volume_horaire_id + LEFT JOIN periode p ON p.id = idc.periode_id +WHERE + (p.code = \'S2\' OR p.id IS NULL) + AND tvh.code = \'PREVU\' +) t', + ), + 'V_INDICATEUR_1120' => + array ( + 'name' => 'V_INDICATEUR_1120', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_1120 AS +SELECT rownum id, t.ANNEE_ID,t.INTERVENANT_ID,t.STRUCTURE_ID FROM ( +SELECT DISTINCT + idc.annee_id, + idc.intervenant_id, + idc.structure_id +FROM + v_indic_depass_charges idc + JOIN type_volume_horaire tvh ON tvh.id = idc.type_volume_horaire_id + LEFT JOIN periode p ON p.id = idc.periode_id +WHERE + (p.code = \'S1\' OR p.id IS NULL) + AND tvh.code = \'REALISE\' +) t', + ), + 'V_INDICATEUR_1121' => + array ( + 'name' => 'V_INDICATEUR_1121', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_1121 AS +SELECT rownum id, t.ANNEE_ID,t.INTERVENANT_ID,t.STRUCTURE_ID FROM ( +SELECT DISTINCT + idc.annee_id, + idc.intervenant_id, + idc.structure_id +FROM + v_indic_depass_charges idc + JOIN type_volume_horaire tvh ON tvh.id = idc.type_volume_horaire_id + LEFT JOIN periode p ON p.id = idc.periode_id +WHERE + (p.code = \'S2\' OR p.id IS NULL) + AND tvh.code = \'REALISE\' +) t', + ), + 'V_INDICATEUR_120' => + array ( + 'name' => 'V_INDICATEUR_120', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_120 AS +SELECT + rownum id, + t."ANNEE_ID",t."INTERVENANT_ID",t."STRUCTURE_ID" FROM ( + +SELECT DISTINCT + s.annee_id annee_id, + s.intervenant_id intervenant_id, + s.structure_id structure_id +FROM + tbl_service s +WHERE + s.type_intervenant_code = \'P\' + AND s.type_volume_horaire_code = \'PREVU\' + AND s.intervenant_structure_id <> s.structure_id + AND s.valide > 0 + AND s.structure_id IS NOT NULL + +) t', + ), + 'V_INDICATEUR_1210' => + array ( + 'name' => 'V_INDICATEUR_1210', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_1210 AS +SELECT + i.id id, + i.annee_id, + i.id intervenant_id, + i.structure_id, + AVG(t.plafond) plafond, + AVG(t.heures) heures +FROM + ( + SELECT + vhr.type_volume_horaire_id type_volume_horaire_id, + sr.intervenant_id intervenant_id, + fr.plafond plafond, + fr.id fr_id, + SUM(vhr.heures) heures + FROM + service_referentiel sr + JOIN fonction_referentiel fr ON fr.id = sr.fonction_id + JOIN volume_horaire_ref vhr ON vhr.service_referentiel_id = sr.id AND vhr.histo_destruction IS NULL + JOIN type_volume_horaire tvh ON tvh.id = vhr.type_volume_horaire_id AND tvh.code= \'PREVU\' + WHERE + sr.histo_destruction IS NULL + GROUP BY + vhr.type_volume_horaire_id, + sr.intervenant_id, + fr.plafond, + fr.id + ) t + JOIN intervenant i ON i.id = t.intervenant_id +WHERE + t.heures > t.plafond + /*i.id*/ +GROUP BY + t.type_volume_horaire_id, + i.annee_id, + i.id, + i.structure_id', + ), + 'V_INDICATEUR_1211' => + array ( + 'name' => 'V_INDICATEUR_1211', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_1211 AS +SELECT + i.id id, + i.annee_id, + i.id intervenant_id, + i.structure_id, + AVG(t.plafond) plafond, + AVG(t.heures) heures +FROM + ( + SELECT + vhr.type_volume_horaire_id type_volume_horaire_id, + sr.intervenant_id intervenant_id, + fr.plafond plafond, + fr.id fr_id, + SUM(vhr.heures) heures + FROM + service_referentiel sr + JOIN fonction_referentiel frf ON frf.id = sr.fonction_id + JOIN fonction_referentiel fr ON fr.id = frf.parent_id + JOIN volume_horaire_ref vhr ON vhr.service_referentiel_id = sr.id AND vhr.histo_destruction IS NULL + JOIN type_volume_horaire tvh ON tvh.id = vhr.type_volume_horaire_id AND tvh.code= \'PREVU\' + WHERE + sr.histo_destruction IS NULL + GROUP BY + vhr.type_volume_horaire_id, + sr.intervenant_id, + fr.plafond, + fr.id + ) t + JOIN intervenant i ON i.id = t.intervenant_id +WHERE + t.heures > t.plafond + /*i.id*/ +GROUP BY + t.type_volume_horaire_id, + i.annee_id, + i.id, + i.structure_id', + ), + 'V_INDICATEUR_1220' => + array ( + 'name' => 'V_INDICATEUR_1220', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_1220 AS +SELECT + i.id id, + i.annee_id, + i.id intervenant_id, + i.structure_id, + AVG(t.plafond) plafond, + AVG(t.heures) heures +FROM + ( + SELECT + vhr.type_volume_horaire_id type_volume_horaire_id, + sr.intervenant_id intervenant_id, + fr.plafond plafond, + fr.id fr_id, + SUM(vhr.heures) heures + FROM + service_referentiel sr + JOIN fonction_referentiel fr ON fr.id = sr.fonction_id + JOIN volume_horaire_ref vhr ON vhr.service_referentiel_id = sr.id AND vhr.histo_destruction IS NULL + JOIN type_volume_horaire tvh ON tvh.id = vhr.type_volume_horaire_id AND tvh.code= \'REALISE\' + WHERE + sr.histo_destruction IS NULL + GROUP BY + vhr.type_volume_horaire_id, + sr.intervenant_id, + fr.plafond, + fr.id + ) t + JOIN intervenant i ON i.id = t.intervenant_id +WHERE + t.heures > t.plafond + /*i.id*/ +GROUP BY + t.type_volume_horaire_id, + i.annee_id, + i.id, + i.structure_id', + ), + 'V_INDICATEUR_1221' => + array ( + 'name' => 'V_INDICATEUR_1221', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_1221 AS +SELECT + i.id id, + i.annee_id, + i.id intervenant_id, + i.structure_id, + AVG(t.plafond) plafond, + AVG(t.heures) heures +FROM + ( + SELECT + vhr.type_volume_horaire_id type_volume_horaire_id, + sr.intervenant_id intervenant_id, + fr.plafond plafond, + fr.id fr_id, + SUM(vhr.heures) heures + FROM + service_referentiel sr + JOIN fonction_referentiel frf ON frf.id = sr.fonction_id + JOIN fonction_referentiel fr ON fr.id = frf.parent_id + JOIN volume_horaire_ref vhr ON vhr.service_referentiel_id = sr.id AND vhr.histo_destruction IS NULL + JOIN type_volume_horaire tvh ON tvh.id = vhr.type_volume_horaire_id AND tvh.code= \'REALISE\' + WHERE + sr.histo_destruction IS NULL + GROUP BY + vhr.type_volume_horaire_id, + sr.intervenant_id, + fr.plafond, + fr.id + ) t + JOIN intervenant i ON i.id = t.intervenant_id +WHERE + t.heures > t.plafond + /*i.id*/ +GROUP BY + t.type_volume_horaire_id, + i.annee_id, + i.id, + i.structure_id', + ), + 'V_INDICATEUR_1230' => + array ( + 'name' => 'V_INDICATEUR_1230', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_1230 AS +SELECT + t.intervenant_id id, + t.annee_id annee_id, + t.intervenant_id intervenant_id, + t.structure_id structure_id, + t.plafond plafond, + t.heures heures +FROM + ( + SELECT DISTINCT + i.id intervenant_id, + i.annee_id annee_id, + s.plafond_referentiel plafond, + s.id structure_id, + s.libelle_court structure_libelle, + SUM(vhr.heures) OVER (PARTITION BY s.id,vhr.type_volume_horaire_id,i.annee_id) heures + FROM + service_referentiel sr + JOIN intervenant i ON i.id = sr.intervenant_id + JOIN structure s ON s.id = sr.structure_id AND s.plafond_referentiel IS NOT NULL + JOIN volume_horaire_ref vhr ON vhr.service_referentiel_id = sr.id AND vhr.histo_destruction IS NULL + JOIN type_volume_horaire tvh ON tvh.id = vhr.type_volume_horaire_id AND tvh.code = \'PREVU\' + WHERE + sr.histo_destruction IS NULL + ) t +WHERE + t.heures > t.plafond', + ), + 'V_INDICATEUR_1240' => + array ( + 'name' => 'V_INDICATEUR_1240', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_1240 AS +SELECT + t.intervenant_id id, + t.annee_id annee_id, + t.intervenant_id intervenant_id, + t.structure_id structure_id, + t.plafond plafond, + t.heures heures +FROM + ( + SELECT DISTINCT + i.id intervenant_id, + i.annee_id annee_id, + s.plafond_referentiel plafond, + s.id structure_id, + s.libelle_court structure_libelle, + SUM(vhr.heures) OVER (PARTITION BY s.id,vhr.type_volume_horaire_id,i.annee_id) heures + FROM + service_referentiel sr + JOIN intervenant i ON i.id = sr.intervenant_id + JOIN structure s ON s.id = sr.structure_id AND s.plafond_referentiel IS NOT NULL + JOIN volume_horaire_ref vhr ON vhr.service_referentiel_id = sr.id AND vhr.histo_destruction IS NULL + JOIN type_volume_horaire tvh ON tvh.id = vhr.type_volume_horaire_id AND tvh.code = \'REALISE\' + WHERE + sr.histo_destruction IS NULL + ) t +WHERE + t.heures > t.plafond', + ), + 'V_INDICATEUR_130' => + array ( + 'name' => 'V_INDICATEUR_130', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_130 AS +SELECT + rownum id, + t."ANNEE_ID",t."INTERVENANT_ID",t."STRUCTURE_ID" FROM ( + +SELECT DISTINCT + s.annee_id annee_id, + s.intervenant_id intervenant_id, + i.structure_id structure_id +FROM + tbl_service s + JOIN intervenant i ON i.id = s.intervenant_id + JOIN statut_intervenant si ON si.id = i.statut_id +WHERE + si.tem_biatss = 1 + AND s.type_volume_horaire_code = \'PREVU\' + AND s.intervenant_structure_id <> s.structure_id + AND s.valide > 0 + AND s.structure_id IS NOT NULL + +) t', + ), + 'V_INDICATEUR_210' => + array ( + 'name' => 'V_INDICATEUR_210', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_210 AS +SELECT + rownum id, + w.annee_id, + w.intervenant_id, + w.structure_id +FROM + tbl_workflow w +WHERE + w.atteignable = 1 + AND w.etape_code = \'CONSEIL_RESTREINT\' + AND w.objectif > 0 + AND w.realisation < 1', + ), + 'V_INDICATEUR_220' => + array ( + 'name' => 'V_INDICATEUR_220', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_220 AS +SELECT + rownum id, + w.annee_id, + w.intervenant_id, + i.structure_id +FROM + tbl_workflow w + JOIN intervenant i ON i.id = w.intervenant_id +WHERE + w.atteignable = 1 + AND w.etape_code = \'CONSEIL_ACADEMIQUE\' + AND w.objectif > 0 + AND w.realisation < 1', + ), + 'V_INDICATEUR_310' => + array ( + 'name' => 'V_INDICATEUR_310', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_310 AS +WITH caok AS ( + SELECT + w.intervenant_id + FROM + tbl_workflow w + WHERE + w.objectif > 0 + AND w.etape_code = \'CONSEIL_ACADEMIQUE\' + AND w.realisation = w.objectif +) +SELECT + rownum id, + w.annee_id, + w.intervenant_id, + w.structure_id +FROM + tbl_workflow w + JOIN caok ON caok.intervenant_id = w.intervenant_id +WHERE + w.atteignable = 1 + AND w.etape_code = \'CONTRAT\' + AND w.objectif > 0 + AND w.realisation < 1', + ), + 'V_INDICATEUR_320' => + array ( + 'name' => 'V_INDICATEUR_320', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_320 AS +SELECT + rownum id, + t."ANNEE_ID",t."INTERVENANT_ID",t."STRUCTURE_ID" +FROM ( +SELECT DISTINCT + w.annee_id, + w.intervenant_id, + w.structure_id +FROM + tbl_workflow w + LEFT JOIN tbl_contrat c ON c.INTERVENANT_ID = w.intervenant_id AND w.structure_id = c.structure_id +WHERE + w.atteignable = 1 + AND w.etape_code = \'CONTRAT\' + AND w.objectif > 0 + AND w.realisation = 0 + AND NVL(c.EDITE,0) <> 1 +) t', + ), + 'V_INDICATEUR_330' => + array ( + 'name' => 'V_INDICATEUR_330', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_330 AS +WITH has_contrat AS ( + SELECT DISTINCT + intervenant_id + FROM + tbl_contrat + WHERE + edite > 0 +) +SELECT + rownum id, + w.annee_id, + w.intervenant_id, + w.structure_id +FROM + tbl_workflow w + JOIN has_contrat hc ON hc.intervenant_id = w.intervenant_id +WHERE + w.atteignable = 1 + AND w.etape_code = \'CONTRAT\' + AND w.objectif > 0 + AND w.realisation < w.objectif', + ), + 'V_INDICATEUR_340' => + array ( + 'name' => 'V_INDICATEUR_340', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_340 AS +SELECT + rownum id, + s.annee_id, + s.intervenant_id, + s.structure_id +FROM + tbl_service s + JOIN tbl_workflow w ON w.intervenant_id = s.intervenant_id AND w.structure_id = s.structure_id +WHERE + s.type_intervenant_code = \'V\' + AND s.type_volume_horaire_code = \'PREVU\' + AND nbvh <> valide + AND w.etape_code = \'CONTRAT\' + AND w.atteignable = 1 + AND w.objectif > 0 + AND w.realisation = w.objectif', + ), + 'V_INDICATEUR_350' => + array ( + 'name' => 'V_INDICATEUR_350', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_350 AS +SELECT + rownum id, + t."INTERVENANT_ID",t."ANNEE_ID",t."STRUCTURE_ID",t."CONTRAT_ID" +FROM ( +SELECT DISTINCT + i.id intervenant_id, + i.annee_id annee_id, + c.structure_id structure_id, + c.id contrat_id +FROM + contrat c + JOIN contrat_fichier cf ON cf.contrat_id = c.id + JOIN fichier f ON f.id = cf.fichier_id + AND f.histo_destruction IS NULL + JOIN intervenant i ON i.id = c.intervenant_id +WHERE + c.histo_destruction IS NULL +) t', + ), + 'V_INDICATEUR_360' => + array ( + 'name' => 'V_INDICATEUR_360', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_360 AS +SELECT + rownum id, + t."INTERVENANT_ID",t."ANNEE_ID",t."STRUCTURE_ID",t."CONTRAT_ID" +FROM ( +SELECT DISTINCT + i.id intervenant_id, + i.annee_id annee_id, + c.structure_id structure_id, + c.id contrat_id +FROM + contrat c + JOIN intervenant i ON i.id = c.intervenant_id + JOIN tbl_workflow w ON w.intervenant_id = i.id AND w.structure_id = c.structure_id AND w.etape_code = \'CONTRAT\' AND w.atteignable = 1 + JOIN validation v ON v.id = c.validation_id AND v.histo_destruction IS NULL +WHERE + c.histo_destruction IS NULL + AND c.date_retour_signe IS NULL +) t', + ), + 'V_INDICATEUR_410' => + array ( + 'name' => 'V_INDICATEUR_410', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_410 AS +SELECT + rownum id, + d.annee_id, + d.intervenant_id, + i.structure_id +FROM + tbl_dossier d + JOIN intervenant i ON i.id = d.intervenant_id +WHERE + d.dossier_id IS NOT NULL + AND d.validation_id IS NULL + AND d.peut_saisir_dossier = 1', + ), + 'V_INDICATEUR_420' => + array ( + 'name' => 'V_INDICATEUR_420', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_420 AS +SELECT rownum id, t."ANNEE_ID",t."INTERVENANT_ID",t."STRUCTURE_ID" FROM ( + SELECT DISTINCT + i.annee_id annee_id, + i.id intervenant_id, + i.structure_id + FROM + indic_modif_dossier d + JOIN intervenant i ON i.id = d.intervenant_id + WHERE + d.histo_destruction IS NULL +) t', + ), + 'V_INDICATEUR_510' => + array ( + 'name' => 'V_INDICATEUR_510', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_510 AS +WITH t AS ( +SELECT + s.intervenant_id, + s.annee_id, + s.structure_id, + listagg( ep.source_code || \' - \' || ep.libelle, \'||\') WITHIN GROUP (ORDER BY ep.libelle) elements +FROM + tbl_service s + LEFT JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id +WHERE + ( + s.has_heures_mauvaise_periode = 1 + OR s.etape_histo = 0 + OR s.element_pedagogique_histo = 0 + ) + AND s.heures > 0 +GROUP BY + s.intervenant_id, + s.annee_id, + s.structure_id +) +SELECT + rownum id, t."INTERVENANT_ID",t."ANNEE_ID",t."STRUCTURE_ID", t.elements +FROM t', + ), + 'V_INDICATEUR_520' => + array ( + 'name' => 'V_INDICATEUR_520', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_520 AS +SELECT + fr.id id, + i.annee_id annee_id, + i.id intervenant_id, + i.structure_id structure_id, + si.plafond_hc_hors_remu_fc plafond, + fr.heures_compl_fa + fr.heures_compl_fc + fr.heures_compl_fi + fr.heures_compl_referentiel heures +FROM + formule_resultat fr + JOIN type_volume_horaire tvh ON tvh.id = fr.type_volume_horaire_id + JOIN etat_volume_horaire evh ON evh.id = fr.etat_volume_horaire_id + JOIN intervenant i ON i.id = fr.intervenant_id + JOIN statut_intervenant si ON si.id = i.statut_id +WHERE + tvh.code = \'PREVU\' + AND evh.code = \'saisi\' + AND si.plafond_hc_hors_remu_fc < fr.heures_compl_fa + fr.heures_compl_fc + fr.heures_compl_fi + fr.heures_compl_referentiel', + ), + 'V_INDICATEUR_530' => + array ( + 'name' => 'V_INDICATEUR_530', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_530 AS +SELECT + fr.id id, + i.annee_id annee_id, + i.id intervenant_id, + i.structure_id structure_id, + si.plafond_hc_hors_remu_fc plafond, + fr.heures_compl_fa + fr.heures_compl_fc + fr.heures_compl_fi + fr.heures_compl_referentiel heures +FROM + formule_resultat fr + JOIN type_volume_horaire tvh ON tvh.id = fr.type_volume_horaire_id + JOIN etat_volume_horaire evh ON evh.id = fr.etat_volume_horaire_id + JOIN intervenant i ON i.id = fr.intervenant_id + JOIN statut_intervenant si ON si.id = i.statut_id +WHERE + tvh.code = \'REALISE\' + AND evh.code = \'saisi\' + AND si.plafond_hc_hors_remu_fc < fr.heures_compl_fa + fr.heures_compl_fc + fr.heures_compl_fi + fr.heures_compl_referentiel', + ), + 'V_INDICATEUR_540' => + array ( + 'name' => 'V_INDICATEUR_540', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_540 AS +SELECT + rownum id, + i.annee_id annee_id, + i.id intervenant_id, + i.structure_id structure_id, + ROUND( (COALESCE(si.plafond_hc_remu_fc,0) - COALESCE(i.montant_indemnite_fc,0)) / a.taux_hetd, 2 ) plafond, + fr.heures_compl_fc_majorees heures +FROM + intervenant i + JOIN annee a ON a.id = i.annee_id + JOIN statut_intervenant si ON si.id = i.statut_id + JOIN etat_volume_horaire evh ON evh.code = \'saisi\' + JOIN formule_resultat fr ON fr.intervenant_id = i.id AND fr.etat_volume_horaire_id = evh.id + JOIN type_volume_horaire tvh ON tvh.id = fr.type_volume_horaire_id +WHERE + fr.heures_compl_fc_majorees > ROUND( (COALESCE(si.plafond_hc_remu_fc,0) - COALESCE(i.montant_indemnite_fc,0)) / a.taux_hetd, 2 ) + AND tvh.code = \'PREVU\'', + ), + 'V_INDICATEUR_550' => + array ( + 'name' => 'V_INDICATEUR_550', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_550 AS +SELECT + rownum id, + i.annee_id annee_id, + i.id intervenant_id, + i.structure_id structure_id, + ROUND( (COALESCE(si.plafond_hc_remu_fc,0) - COALESCE(i.montant_indemnite_fc,0)) / a.taux_hetd, 2 ) plafond, + fr.heures_compl_fc_majorees heures +FROM + intervenant i + JOIN annee a ON a.id = i.annee_id + JOIN statut_intervenant si ON si.id = i.statut_id + JOIN etat_volume_horaire evh ON evh.code = \'saisi\' + JOIN formule_resultat fr ON fr.intervenant_id = i.id AND fr.etat_volume_horaire_id = evh.id + JOIN type_volume_horaire tvh ON tvh.id = fr.type_volume_horaire_id +WHERE + fr.heures_compl_fc_majorees > ROUND( (COALESCE(si.plafond_hc_remu_fc,0) - COALESCE(i.montant_indemnite_fc,0)) / a.taux_hetd, 2 ) + AND tvh.code = \'REALISE\'', + ), + 'V_INDICATEUR_560' => + array ( + 'name' => 'V_INDICATEUR_560', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_560 AS +SELECT + rownum id, + i.annee_id annee_id, + i.id intervenant_id, + i.structure_id structure_id, + si.maximum_hetd plafond, + fr.total heures +FROM + intervenant i + JOIN etat_volume_horaire evh ON evh.code = \'saisi\' + JOIN formule_resultat fr ON fr.intervenant_id = i.id AND fr.etat_volume_horaire_id = evh.id + JOIN statut_intervenant si ON si.id = i.statut_id + JOIN type_volume_horaire tvh ON tvh.id = fr.type_volume_horaire_id AND tvh.code= \'PREVU\' +WHERE + fr.total - fr.heures_compl_fc_majorees > si.maximum_hetd', + ), + 'V_INDICATEUR_570' => + array ( + 'name' => 'V_INDICATEUR_570', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_570 AS +SELECT + rownum id, + i.annee_id annee_id, + i.id intervenant_id, + i.structure_id structure_id, + si.maximum_hetd plafond, + fr.total heures +FROM + intervenant i + JOIN etat_volume_horaire evh ON evh.code = \'saisi\' + JOIN formule_resultat fr ON fr.intervenant_id = i.id AND fr.etat_volume_horaire_id = evh.id + JOIN statut_intervenant si ON si.id = i.statut_id + JOIN type_volume_horaire tvh ON tvh.id = fr.type_volume_horaire_id AND tvh.code= \'REALISE\' +WHERE + fr.total - fr.heures_compl_fc_majorees > si.maximum_hetd', + ), + 'V_INDICATEUR_610' => + array ( + 'name' => 'V_INDICATEUR_610', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_610 AS +SELECT rownum id, t."ANNEE_ID",t."INTERVENANT_ID",t."STRUCTURE_ID",t."STATUT_INTERVENANT_ID" FROM +( +SELECT DISTINCT + w.annee_id, + w.intervenant_id, + w.structure_id, + w.statut_intervenant_id +FROM + tbl_workflow w +WHERE + w.etape_code = \'SERVICE_VALIDATION\' + AND w.type_intervenant_code = \'P\' + AND w.atteignable = 1 + AND w.objectif > w.realisation +) t', + ), + 'V_INDICATEUR_620' => + array ( + 'name' => 'V_INDICATEUR_620', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_620 AS +SELECT rownum id, t."ANNEE_ID",t."INTERVENANT_ID",t."STRUCTURE_ID" FROM +( +SELECT DISTINCT + w.annee_id, + w.intervenant_id, + w.structure_id +FROM + tbl_workflow w +WHERE + w.etape_code = \'REFERENTIEL_VALIDATION\' + AND w.type_intervenant_code = \'P\' + AND w.atteignable = 1 + AND w.objectif > w.realisation +) t', + ), + 'V_INDICATEUR_630' => + array ( + 'name' => 'V_INDICATEUR_630', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_630 AS +SELECT rownum id, t."ANNEE_ID",t."INTERVENANT_ID",t."STRUCTURE_ID" FROM +( +SELECT DISTINCT + w.annee_id, + w.intervenant_id, + i.structure_id +FROM + tbl_workflow w + JOIN intervenant i ON i.id = w.intervenant_id +WHERE + w.etape_code = \'CLOTURE_REALISE\' + AND w.atteignable = 1 + AND w.objectif > w.realisation +) t', + ), + 'V_INDICATEUR_640' => + array ( + 'name' => 'V_INDICATEUR_640', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_640 AS +SELECT rownum id, t."ANNEE_ID",t."INTERVENANT_ID",t."STRUCTURE_ID" FROM +( +SELECT DISTINCT + w.annee_id, + w.intervenant_id, + w.structure_id +FROM + tbl_workflow w + JOIN tbl_workflow wc ON wc.intervenant_id = w.intervenant_id +WHERE + w.etape_code = \'SERVICE_VALIDATION_REALISE\' + AND w.objectif > w.realisation + AND w.atteignable = 1 + + AND wc.etape_code = \'CLOTURE_REALISE\' + AND wc.objectif = wc.realisation +) t', + ), + 'V_INDICATEUR_650' => + array ( + 'name' => 'V_INDICATEUR_650', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_650 AS +SELECT rownum id, t."ANNEE_ID",t."INTERVENANT_ID",t."STRUCTURE_ID",t."STRUCTURES_CONCERNEES" FROM +( +SELECT + w.annee_id, + w.intervenant_id, + i.structure_id, + LISTAGG(s.libelle_court, \'||\') WITHIN GROUP (ORDER BY s.libelle_court) structures_concernees +FROM + tbl_workflow w + JOIN tbl_workflow wc ON wc.intervenant_id = w.intervenant_id + JOIN intervenant i ON i.id = wc.intervenant_id + JOIN structure s ON s.id = w.structure_id +WHERE + w.etape_code = \'SERVICE_VALIDATION_REALISE\' + AND w.objectif > w.realisation + AND w.atteignable = 1 + + AND wc.etape_code = \'CLOTURE_REALISE\' + AND wc.objectif = wc.realisation + AND w.structure_id <> i.structure_id +GROUP BY + w.annee_id, + w.intervenant_id, + i.structure_id +) t', + ), + 'V_INDICATEUR_660' => + array ( + 'name' => 'V_INDICATEUR_660', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_660 AS +SELECT rownum id, t."ANNEE_ID",t."INTERVENANT_ID",t."STRUCTURE_ID" FROM +( +SELECT + w.annee_id, + w.intervenant_id, + i.structure_id +FROM + tbl_workflow w + JOIN tbl_workflow wc ON wc.intervenant_id = w.intervenant_id + JOIN intervenant i ON i.id = wc.intervenant_id + JOIN structure s ON s.id = w.structure_id +WHERE + w.etape_code = \'REFERENTIEL_VALIDATION_REALISE\' + AND w.objectif > w.realisation + AND w.atteignable = 1 + + AND wc.etape_code = \'CLOTURE_REALISE\' + AND wc.objectif = wc.realisation + AND w.structure_id = i.structure_id +GROUP BY + w.annee_id, + w.intervenant_id, + i.structure_id +) t', + ), + 'V_INDICATEUR_670' => + array ( + 'name' => 'V_INDICATEUR_670', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_670 AS +SELECT rownum id, t."ANNEE_ID",t."INTERVENANT_ID",t."STRUCTURE_ID",t."STRUCTURES_CONCERNEES" FROM +( +SELECT + w.annee_id, + w.intervenant_id, + i.structure_id, + LISTAGG(s.libelle_court, \'||\') WITHIN GROUP (ORDER BY s.libelle_court) structures_concernees +FROM + tbl_workflow w + JOIN tbl_workflow wc ON wc.intervenant_id = w.intervenant_id + JOIN intervenant i ON i.id = wc.intervenant_id + JOIN structure s ON s.id = w.structure_id +WHERE + w.etape_code = \'REFERENTIEL_VALIDATION_REALISE\' + AND w.objectif > w.realisation + AND w.atteignable = 1 + + AND wc.etape_code = \'CLOTURE_REALISE\' + AND wc.objectif = wc.realisation + AND w.structure_id <> i.structure_id +GROUP BY + w.annee_id, + w.intervenant_id, + i.structure_id +) t', + ), + 'V_INDICATEUR_680' => + array ( + 'name' => 'V_INDICATEUR_680', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_680 AS +SELECT + fr.id id, + i.annee_id annee_id, + i.id intervenant_id, + i.structure_id structure_id, + si.plafond_referentiel plafond, + fr.heures_compl_referentiel heures +FROM + formule_resultat fr + JOIN type_volume_horaire tvh ON tvh.id = fr.type_volume_horaire_id + JOIN etat_volume_horaire evh ON evh.id = fr.etat_volume_horaire_id + JOIN intervenant i ON i.id = fr.intervenant_id + JOIN statut_intervenant si ON si.id = i.statut_id +WHERE + tvh.code = \'PREVU\' + AND evh.code = \'saisi\' + AND si.plafond_referentiel < fr.service_referentiel + fr.heures_compl_referentiel', + ), + 'V_INDICATEUR_690' => + array ( + 'name' => 'V_INDICATEUR_690', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_690 AS +SELECT + fr.id id, + i.annee_id annee_id, + i.id intervenant_id, + i.structure_id structure_id, + si.plafond_referentiel plafond, + fr.heures_compl_referentiel heures +FROM + formule_resultat fr + JOIN type_volume_horaire tvh ON tvh.id = fr.type_volume_horaire_id + JOIN etat_volume_horaire evh ON evh.id = fr.etat_volume_horaire_id + JOIN intervenant i ON i.id = fr.intervenant_id + JOIN statut_intervenant si ON si.id = i.statut_id +WHERE + tvh.code = \'REALISE\' + AND evh.code = \'saisi\' + AND si.plafond_referentiel < fr.service_referentiel + fr.heures_compl_referentiel', + ), + 'V_INDICATEUR_710' => + array ( + 'name' => 'V_INDICATEUR_710', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_710 AS +SELECT rownum id, t."ANNEE_ID",t."INTERVENANT_ID",t."STRUCTURE_ID" FROM +( +SELECT DISTINCT + w.annee_id, + w.intervenant_id, + w.structure_id +FROM + tbl_workflow w +WHERE + w.etape_code = \'SERVICE_VALIDATION\' + AND w.type_intervenant_code = \'E\' + AND w.atteignable = 1 + AND w.objectif > w.realisation +) t', + ), + 'V_INDICATEUR_720' => + array ( + 'name' => 'V_INDICATEUR_720', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_720 AS +SELECT rownum id, t."ANNEE_ID",t."INTERVENANT_ID",t."STRUCTURE_ID" FROM +( +SELECT DISTINCT + w.annee_id, + w.intervenant_id, + w.structure_id +FROM + tbl_workflow w +WHERE + w.etape_code = \'SERVICE_VALIDATION_REALISE\' + AND w.type_intervenant_code = \'E\' + AND w.atteignable = 1 + AND w.objectif > w.realisation +) t', + ), + 'V_INDICATEUR_810' => + array ( + 'name' => 'V_INDICATEUR_810', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_810 AS +SELECT rownum id, t."ANNEE_ID",t."INTERVENANT_ID",t."STRUCTURE_ID" FROM +( +SELECT DISTINCT + w.annee_id, + w.intervenant_id, + w.structure_id +FROM + tbl_workflow w +WHERE + w.etape_code = \'DEMANDE_MEP\' + AND w.type_intervenant_code = \'P\' + AND w.atteignable = 1 + AND w.objectif > w.realisation +) t', + ), + 'V_INDICATEUR_820' => + array ( + 'name' => 'V_INDICATEUR_820', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_820 AS +SELECT rownum id, t."ANNEE_ID",t."INTERVENANT_ID",t."STRUCTURE_ID" FROM +( +SELECT DISTINCT + w.annee_id, + w.intervenant_id, + w.structure_id +FROM + tbl_workflow w +WHERE + w.etape_code = \'SAISIE_MEP\' + AND w.type_intervenant_code = \'P\' + AND w.atteignable = 1 + AND w.objectif > w.realisation +) t', + ), + 'V_INDICATEUR_910' => + array ( + 'name' => 'V_INDICATEUR_910', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_910 AS +SELECT rownum id, t."ANNEE_ID",t."INTERVENANT_ID",t."STRUCTURE_ID" FROM +( +SELECT DISTINCT + w.annee_id, + w.intervenant_id, + w.structure_id +FROM + tbl_workflow w +WHERE + w.etape_code = \'DEMANDE_MEP\' + AND w.type_intervenant_code = \'E\' + AND w.atteignable = 1 + AND w.objectif > w.realisation +) t', + ), + 'V_INDICATEUR_920' => + array ( + 'name' => 'V_INDICATEUR_920', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDICATEUR_920 AS +SELECT rownum id, t."ANNEE_ID",t."INTERVENANT_ID",t."STRUCTURE_ID" FROM +( +SELECT DISTINCT + w.annee_id, + w.intervenant_id, + w.structure_id +FROM + tbl_workflow w +WHERE + w.etape_code = \'SAISIE_MEP\' + AND w.type_intervenant_code = \'E\' + AND w.atteignable = 1 + AND w.objectif > w.realisation +) t', + ), + 'V_INDIC_ATTENTE_DEMANDE_MEP' => + array ( + 'name' => 'V_INDIC_ATTENTE_DEMANDE_MEP', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDIC_ATTENTE_DEMANDE_MEP AS +select to_number(i.id||dmep.structure_id) id, i.id intervenant_id, i.source_code, ti.code, i.annee_id, dmep.structure_id, 0 TOTAL_HEURES_MEP, 0 TOTAL_HEURES_COMPL + from intervenant i + join statut_intervenant si on si.id = i.statut_id + join type_intervenant ti on ti.id = si.type_intervenant_id + -- l\'intervenant doit avoir des heures disponibles pour une demande de MEP + join V_HAS_DMEP_A_FAIRE dmep on dmep.intervenant_id = i.id and dmep.has_dmep_a_faire <> 0 + where ( + -- un vacataire n\'a pas d\'autre contrainte + ti.code = \'E\' + or + -- mais un permanent doit... + ( + -- avoir sa saisie de service réalisé clôturée + exists ( + select * from validation v + join type_validation tv on v.type_validation_id = tv.id and tv.code = \'CLOTURE_REALISE\' + where v.intervenant_id = i.id and v.histo_destruction IS NULL + ) + -- et tous ses enseignements réalisés validés (toutes composantes d\'intervention confondues) + and not exists ( + select * from volume_horaire vh + join service s on vh.service_id = s.id and s.histo_destruction IS NULL + join type_volume_horaire tvh on vh.type_volume_horaire_id = tvh.id and tvh.code = \'REALISE\' + left join validation_vol_horaire vvh on vvh.volume_horaire_id = vh.id + left join validation v on vvh.validation_id = v.id and v.histo_destruction IS NULL + left join type_validation tv on v.type_validation_id = tv.id and tv.code = \'SERVICES_PAR_COMP\' + where s.intervenant_id = i.id and v.id is null and vh.histo_destruction IS NULL + ) + -- et tout son référentiel réalisé validé (toutes composantes d\'intervention confondues) + and not exists ( + select * from volume_horaire_ref vh + join service_referentiel s on vh.service_referentiel_id = s.id and s.histo_destruction IS NULL + join type_volume_horaire tvh on vh.type_volume_horaire_id = tvh.id and tvh.code = \'REALISE\' + left join validation_vol_horaire_ref vvh on vvh.volume_horaire_ref_id = vh.id + left join validation v on vvh.validation_id = v.id and v.histo_destruction IS NULL + left join type_validation tv on v.type_validation_id = tv.id and tv.code = \'SERVICES_PAR_COMP\' + where s.intervenant_id = i.id and v.id is null and vh.histo_destruction IS NULL + ) + ) + )', + ), + 'V_INDIC_ATTENTE_MEP' => + array ( + 'name' => 'V_INDIC_ATTENTE_MEP', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDIC_ATTENTE_MEP AS +with + -- total des heures comp ayant fait l\'objet d\'une *demande* de mise en paiement + mep as ( + select intervenant_id, structure_id, sum(nvl(mep_heures, 0)) total_heures_mep + from ( + -- enseignements + select + fr.intervenant_id, + nvl(ep.structure_id, i.structure_id) structure_id, + nvl(mep.heures, 0) mep_heures + from mise_en_paiement mep + join formule_resultat_service frs on mep.formule_res_service_id = frs.id + join formule_resultat fr on frs.formule_resultat_id = fr.id + join intervenant i on fr.intervenant_id = i.id + join type_volume_horaire tvh on fr.type_volume_horaire_id = tvh.id and tvh.code = \'REALISE\' + join etat_volume_horaire evh on fr.etat_volume_horaire_id = evh.id and evh.code = \'valide\' + join service s on frs.service_id = s.id + left join element_pedagogique ep on s.element_pedagogique_id = ep.id + where mep.histo_destruction IS NULL and mep.date_mise_en_paiement is null -- si date_mise_en_paiement = null, c\'est une demande + union all + -- referentiel + select + fr.intervenant_id, + s.structure_id, + nvl(mep.heures, 0) mep_heures + from mise_en_paiement mep + join formule_resultat_service_ref frs on mep.formule_res_service_ref_id = frs.id + join formule_resultat fr on frs.formule_resultat_id = fr.id + join intervenant i on fr.intervenant_id = i.id + join type_volume_horaire tvh on fr.type_volume_horaire_id = tvh.id and tvh.code = \'REALISE\' + join etat_volume_horaire evh on fr.etat_volume_horaire_id = evh.id and evh.code = \'valide\' + join service_referentiel s on frs.service_referentiel_id = s.id + where mep.histo_destruction IS NULL and mep.date_mise_en_paiement is null -- si date_mise_en_paiement = null, c\'est une demande + ) + group by intervenant_id, structure_id + ) +select to_number(intervenant_id||structure_id) id, 2014 annee_id, intervenant_id, structure_id, total_heures_mep from mep', + ), + 'V_INDIC_ATT_VALID_ENS_AUTRE' => + array ( + 'name' => 'V_INDIC_ATT_VALID_ENS_AUTRE', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDIC_ATT_VALID_ENS_AUTRE AS +SELECT distinct + to_char(v.intervenant_id)||to_char(v.structure_id) as id, + v.intervenant_id, + v.structure_id +FROM v_indic_tous_services_valides v +INNER JOIN intervenant i ON V.INTERVENANT_ID = i.id AND i.HISTO_DESTRUCTION IS NULL +INNER JOIN TYPE_VOLUME_HORAIRE tvh ON v.type_volume_horaire_id = tvh.id AND tvh.code = \'REALISE\' +INNER JOIN VALIDATION clot ON clot.intervenant_id = i.id AND clot.HISTO_DESTRUCTION IS NULL +INNER JOIN TYPE_VALIDATION tv ON tv.id = clot.type_validation_id AND tv.code = \'CLOTURE_REALISE\' +WHERE EXISTS + ( + SELECT s2.ID + FROM SERVICE s2 + INNER JOIN ELEMENT_PEDAGOGIQUE ep2 ON s2.ELEMENT_PEDAGOGIQUE_ID = ep2.ID AND ep2.HISTO_DESTRUCTION IS NULL + INNER JOIN VOLUME_HORAIRE vh2 ON s2.ID = vh2.SERVICE_ID AND vh2.HISTO_DESTRUCTION IS NULL + LEFT JOIN VALIDATION_VOL_HORAIRE vvh2 ON vh2.ID = vvh2.VOLUME_HORAIRE_ID + LEFT JOIN VALIDATION val2 ON val2.ID = vvh2.VALIDATION_ID AND val2.HISTO_DESTRUCTION IS NULL + WHERE + s2.INTERVENANT_ID = v.intervenant_id + AND s2.HISTO_DESTRUCTION IS NULL + AND VH2.TYPE_VOLUME_HORAIRE_ID = V.TYPE_VOLUME_HORAIRE_ID + AND ep2.structure_id <> v.structure_id -- autre composante d\'intervention que celle qui a tout validé + AND val2.ID IS NULL -- au moins un VH non validé + )', + ), + 'V_INDIC_ATT_VALID_REF_AUTRE' => + array ( + 'name' => 'V_INDIC_ATT_VALID_REF_AUTRE', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDIC_ATT_VALID_REF_AUTRE AS +SELECT distinct + to_char(v.intervenant_id)||to_char(v.structure_id) as id, + v.intervenant_id, + v.structure_id +FROM v_indic_tous_services_valides v +INNER JOIN intervenant i ON V.INTERVENANT_ID = i.id AND i.HISTO_DESTRUCTION IS NULL +INNER JOIN TYPE_VOLUME_HORAIRE tvh ON v.type_volume_horaire_id = tvh.id AND tvh.code = \'REALISE\' +INNER JOIN VALIDATION clot ON clot.intervenant_id = i.id AND clot.HISTO_DESTRUCTION IS NULL +INNER JOIN TYPE_VALIDATION tv ON tv.id = clot.type_validation_id AND tv.code = \'CLOTURE_REALISE\' +WHERE EXISTS + ( + SELECT s.ID + FROM SERVICE_REFERENTIEL s + INNER JOIN FONCTION_REFERENTIEL f ON S.FONCTION_ID = f.ID AND f.HISTO_DESTRUCTION IS NULL + INNER JOIN VOLUME_HORAIRE_REF vh ON s.ID = VH.SERVICE_REFERENTIEL_ID AND vh.HISTO_DESTRUCTION IS NULL + LEFT JOIN VALIDATION_VOL_HORAIRE vvh ON vh.ID = vvh.VOLUME_HORAIRE_ID + LEFT JOIN VALIDATION val ON val.ID = vvh.VALIDATION_ID AND val.HISTO_DESTRUCTION IS NULL + WHERE + s.INTERVENANT_ID = v.intervenant_id + AND s.HISTO_DESTRUCTION IS NULL + AND VH.TYPE_VOLUME_HORAIRE_ID = V.TYPE_VOLUME_HORAIRE_ID + AND s.structure_id <> v.structure_id -- autre composante d\'intervention que celle qui a tout validé + AND val.ID IS NULL -- au moins un VH non validé + )', + ), + 'V_INDIC_ATT_VALID_SERVICE' => + array ( + 'name' => 'V_INDIC_ATT_VALID_SERVICE', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDIC_ATT_VALID_SERVICE AS +select distinct rownum id, i.id intervenant_id, nvl(ep.structure_id, i.structure_id) structure_id, vh.type_volume_horaire_id +from service s +join intervenant i on i.id = s.intervenant_id and i.histo_destruction IS NULL +join volume_horaire vh on vh.service_id = s.id and vh.histo_destruction IS NULL +join element_pedagogique ep on s.element_pedagogique_id = ep.id and ep.histo_destruction IS NULL +--join type_volume_horaire tvh on vh.type_volume_horaire_id = tvh.id and tvh.code = \'REALISE\' +left join validation_vol_horaire vvh on vvh.volume_horaire_id = vh.id +left join validation v on vvh.validation_id = v.id and v.histo_destruction IS NULL +where v.id is null and s.histo_destruction IS NULL', + ), + 'V_INDIC_ATT_VALID_SERVICE_REF' => + array ( + 'name' => 'V_INDIC_ATT_VALID_SERVICE_REF', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDIC_ATT_VALID_SERVICE_REF AS +select distinct rownum id, i.id intervenant_id, s.structure_id, vh.type_volume_horaire_id +from service_referentiel s +join intervenant i on i.id = s.intervenant_id and i.histo_destruction IS NULL +join volume_horaire_ref vh on vh.service_referentiel_id = s.id and vh.histo_destruction IS NULL +join fonction_referentiel f on s.fonction_id = f.id and f.histo_destruction IS NULL +--join type_volume_horaire tvh on vh.type_volume_horaire_id = tvh.id and tvh.code = \'REALISE\' +left join validation_vol_horaire_ref vvh on vvh.volume_horaire_ref_id = vh.id +left join validation v on vvh.validation_id = v.id and v.histo_destruction IS NULL +where v.id is null and s.histo_destruction IS NULL', + ), + 'V_INDIC_DEPASS_CHARGES' => + array ( + 'name' => 'V_INDIC_DEPASS_CHARGES', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDIC_DEPASS_CHARGES AS +WITH c AS ( + SELECT + vhe.element_pedagogique_id, + vhe.type_intervention_id, + MAX(vhe.heures) heures, + COALESCE( MAX(vhe.groupes), ROUND(SUM(t.groupes),10) ) groupes + + FROM + volume_horaire_ens vhe + JOIN parametre p ON p.nom = \'scenario_charges_services\' + LEFT JOIN tbl_chargens t ON t.element_pedagogique_id = vhe.element_pedagogique_id + AND t.type_intervention_id = vhe.type_intervention_id + AND t.scenario_id = to_number(p.valeur) + GROUP BY + vhe.element_pedagogique_id, + vhe.type_intervention_id +), s AS ( + SELECT + i.annee_id, + vh.type_volume_horaire_id, + s.intervenant_id, + s.element_pedagogique_id, + vh.type_intervention_id, + SUM(vh.heures) heures + FROM + volume_horaire vh + JOIN service s ON s.id = vh.service_id + AND s.element_pedagogique_id IS NOT NULL + AND s.histo_destruction IS NULL + JOIN intervenant i ON i.id = s.intervenant_id + AND i.histo_destruction IS NULL + WHERE + vh.histo_destruction IS NULL + GROUP BY + i.annee_id, + vh.type_volume_horaire_id, + s.intervenant_id, + s.element_pedagogique_id, + vh.type_intervention_id +) +SELECT + rownum id, + s.annee_id annee_id, + s.type_volume_horaire_id type_volume_horaire_id, + s.intervenant_id intervenant_id, + ep.structure_id structure_id, + s.element_pedagogique_id element_pedagogique_id, + ep.periode_id periode_id, + s.type_intervention_id type_intervention_id, + s.heures - COALESCE(c.heures * c.groupes,0) heures +FROM + s + JOIN type_intervention ti ON ti.id = s.type_intervention_id + JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + LEFT JOIN c ON c.element_pedagogique_id = s.element_pedagogique_id + AND c.type_intervention_id = COALESCE(ti.type_intervention_maquette_id,ti.id) +WHERE + s.heures - COALESCE(c.heures * c.groupes,0) > 0', + ), + 'V_INDIC_DEPASS_HC_HORS_REMU_FC' => + array ( + 'name' => 'V_INDIC_DEPASS_HC_HORS_REMU_FC', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDIC_DEPASS_HC_HORS_REMU_FC AS +with totaux as ( + -- totaux HC FI+FA+FC+Ref par intervenant et type de VH + select fr.intervenant_id, fr.type_volume_horaire_id, sum(fr.heures_compl_fi + fr.heures_compl_fa + fr.heures_compl_fc + fr.heures_compl_referentiel) total + from formule_resultat fr + join etat_volume_horaire evh on evh.id = fr.etat_volume_horaire_id and evh.code = \'saisi\' + group by fr.intervenant_id, fr.type_volume_horaire_id +), +depass as ( + -- totaux HC FI+FA+FC+Ref dépassant le plafond HC par intervenant et type de VH + select i.id intervenant_id, t.type_volume_horaire_id, t.total, si.plafond_hc_hors_remu_fc plafond + from intervenant i + join statut_intervenant si on i.statut_id = si.id and si.plafond_hc_hors_remu_fc is not null + join totaux t on t.intervenant_id = i.id + where t.total > si.plafond_hc_hors_remu_fc +), +str_interv as ( + -- structures d\'intervention distinctes par intervenant et type de VH + select distinct s.intervenant_id, vh.type_volume_horaire_id, coalesce(ep.structure_id, i.structure_id) structure_id + from service s + left join element_pedagogique ep on s.element_pedagogique_id = ep.id and ep.histo_destruction IS NULL + join intervenant i on s.intervenant_id = i.id and i.histo_destruction IS NULL + join volume_horaire vh on vh.service_id = s.id and vh.histo_destruction IS NULL + join v_vol_horaire_etat_multi vhe on vhe.volume_horaire_id = vh.id + join etat_volume_horaire evh on vhe.etat_volume_horaire_id = evh.id and evh.code = \'saisi\' + where s.histo_destruction IS NULL +) +select to_number(d.intervenant_id||d.type_volume_horaire_id||str.structure_id) id, 2014 annee_id, d.intervenant_id, d.type_volume_horaire_id, str.structure_id, d.total, d.plafond +from depass d +join str_interv str on str.intervenant_id = d.intervenant_id and str.type_volume_horaire_id = d.type_volume_horaire_id', + ), + 'V_INDIC_DEPASS_REF' => + array ( + 'name' => 'V_INDIC_DEPASS_REF', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDIC_DEPASS_REF AS +with totaux as ( + select fr.intervenant_id, fr.type_volume_horaire_id, sum(fr.service_referentiel) total + from formule_resultat fr + join etat_volume_horaire evh on evh.id = fr.etat_volume_horaire_id and evh.code = \'saisi\' + group by fr.intervenant_id, fr.type_volume_horaire_id + having sum(fr.service_referentiel) > 0 +), +depass as ( + select i.id intervenant_id, t.type_volume_horaire_id, t.total, si.plafond_referentiel plafond + from intervenant i + join statut_intervenant si on i.statut_id = si.id and si.plafond_referentiel is not null and si.plafond_referentiel <> 0 + join totaux t on t.intervenant_id = i.id + where t.total > si.plafond_referentiel +), +str_interv as ( + -- structures d\'intervention distinctes par intervenant et type de VH + select distinct s.intervenant_id, vh.type_volume_horaire_id, s.structure_id + from service_referentiel s + join volume_horaire_ref vh on vh.service_referentiel_id = s.id and vh.histo_destruction IS NULL + join v_vol_horaire_ref_etat_multi vhe on vhe.volume_horaire_ref_id = vh.id + join etat_volume_horaire evh on vhe.etat_volume_horaire_id = evh.id and evh.code = \'saisi\' + where s.histo_destruction IS NULL +) +select to_number(d.intervenant_id||d.type_volume_horaire_id||str.structure_id) id, 2014 annee_id, d.intervenant_id, d.type_volume_horaire_id, str.structure_id, d.total, d.plafond +from depass d +join str_interv str on str.intervenant_id = d.intervenant_id and str.type_volume_horaire_id = d.type_volume_horaire_id', + ), + 'V_INDIC_DIFF_DOSSIER' => + array ( + 'name' => 'V_INDIC_DIFF_DOSSIER', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDIC_DIFF_DOSSIER AS +WITH aa AS ( + SELECT a.*, ose_divers.formatted_adresse( + a.NO_VOIE, + a.NOM_VOIE, + a.BATIMENT, + a.MENTION_COMPLEMENTAIRE, + a.LOCALITE, + a.CODE_POSTAL, + a.VILLE, + a.PAYS_LIBELLE) to_string FROM adresse_intervenant a +) +select + i.id, + i.nom_usuel, + case when d.adresse <> a.to_string then d.adresse else null end adresse_dossier, + case when d.adresse <> a.to_string then a.to_string else null end adresse_import, + case when d.rib <> REPLACE(i.BIC || \'-\' || i.IBAN, \' \') then d.rib else null end rib_dossier, + case when d.rib <> REPLACE(i.BIC || \'-\' || i.IBAN, \' \') then REPLACE(i.BIC || \'-\' || i.IBAN, \' \') else null end rib_import, + case when UPPER(REPLACE(d.nom_usuel, \' \')) <> UPPER(REPLACE(i.nom_usuel, \' \')) then REPLACE(d.nom_usuel, \' \') else null end nom_usuel_dossier, + case when UPPER(REPLACE(d.nom_usuel, \' \')) <> UPPER(REPLACE(i.nom_usuel, \' \')) then REPLACE(i.nom_usuel, \' \') else null end nom_usuel_import, + case when UPPER(REPLACE(d.prenom, \' \')) <> UPPER(REPLACE(i.prenom, \' \')) then REPLACE(d.prenom, \' \') else null end prenom_dossier, + case when UPPER(REPLACE(d.prenom, \' \')) <> UPPER(REPLACE(i.prenom, \' \')) then REPLACE(i.prenom, \' \') else null end prenom_import + from intervenant i + join dossier d on d.intervenant_id = i.id + left join aa a on a.intervenant_id = i.id', + ), + 'V_INDIC_TOUS_SERVICES_VALIDES' => + array ( + 'name' => 'V_INDIC_TOUS_SERVICES_VALIDES', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_INDIC_TOUS_SERVICES_VALIDES AS +with struct_ens_non_valides as ( + -- intervenants et structures d\'intervention pour lesquelles des VH d\'enseignement NE SONT PAS validés + SELECT distinct s.intervenant_id, ep.structure_id, vh.type_volume_horaire_id + FROM SERVICE s + INNER JOIN ELEMENT_PEDAGOGIQUE ep ON s.ELEMENT_PEDAGOGIQUE_ID = ep.ID AND ep.HISTO_DESTRUCTION IS NULL + INNER JOIN VOLUME_HORAIRE vh ON s.ID = vh.SERVICE_ID AND vh.HISTO_DESTRUCTION IS NULL + LEFT JOIN VALIDATION_VOL_HORAIRE vvh ON vvh.volume_horaire_id = vh.id + LEFT JOIN VALIDATION val ON val.ID = vvh.validation_id AND val.HISTO_DESTRUCTION IS NULL + WHERE s.HISTO_DESTRUCTION IS NULL + AND val.id is null +), +struct_ref_non_valides as ( + -- intervenants et structures d\'intervention pour lesquelles des VH de référentiel NE SONT PAS validés + SELECT distinct s.intervenant_id, s.structure_id, vh.type_volume_horaire_id + FROM SERVICE_REFERENTIEL s + INNER JOIN FONCTION_REFERENTIEL f ON s.FONCTION_ID = f.ID AND f.HISTO_DESTRUCTION IS NULL + INNER JOIN VOLUME_HORAIRE_REF vh ON s.ID = VH.SERVICE_REFERENTIEL_ID AND vh.HISTO_DESTRUCTION IS NULL + LEFT JOIN VALIDATION_VOL_HORAIRE_REF vvh ON VVH.VOLUME_HORAIRE_REF_ID = vh.id + LEFT JOIN VALIDATION val ON val.ID = vvh.validation_id AND val.HISTO_DESTRUCTION IS NULL + WHERE s.HISTO_DESTRUCTION IS NULL + AND val.id is null +) +-- intervenants et structures d\'intervention pour lesquelles tous les VH de référentiel et tous les VH d\'enseignement SONT validés +SELECT distinct s.intervenant_id, ep.structure_id, vh.type_volume_horaire_id +FROM SERVICE s +INNER JOIN ELEMENT_PEDAGOGIQUE ep ON s.ELEMENT_PEDAGOGIQUE_ID = ep.ID AND ep.HISTO_DESTRUCTION IS NULL +INNER JOIN VOLUME_HORAIRE vh ON s.ID = vh.SERVICE_ID AND vh.HISTO_DESTRUCTION IS NULL +WHERE not exists ( + SELECT * from struct_ens_non_valides ens_nv + where ens_nv.INTERVENANT_ID = s.intervenant_id and ens_nv.structure_id = ep.structure_id and ens_nv.type_volume_horaire_id = vh.type_volume_horaire_id +) +----- +UNION +----- +SELECT distinct s.intervenant_id, s.structure_id, vh.type_volume_horaire_id +FROM SERVICE_REFERENTIEL s +INNER JOIN FONCTION_REFERENTIEL f ON s.FONCTION_ID = f.ID AND f.HISTO_DESTRUCTION IS NULL +INNER JOIN VOLUME_HORAIRE_REF vh ON s.ID = VH.SERVICE_REFERENTIEL_ID AND vh.HISTO_DESTRUCTION IS NULL +WHERE s.HISTO_DESTRUCTION IS NULL +and not exists ( + SELECT * from struct_ref_non_valides ref_nv + where ref_nv.INTERVENANT_ID = s.intervenant_id and ref_nv.structure_id = s.structure_id and ref_nv.type_volume_horaire_id = vh.type_volume_horaire_id +)', + ), + 'V_MEP_INTERVENANT_STRUCTURE' => + array ( + 'name' => 'V_MEP_INTERVENANT_STRUCTURE', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_MEP_INTERVENANT_STRUCTURE AS +SELECT + rownum id, + t1."MISE_EN_PAIEMENT_ID", + t1."INTERVENANT_ID", + t1."STRUCTURE_ID", + t1.periode_paiement_id, + t1.domaine_fonctionnel_id +FROM ( + +SELECT + mep.id mise_en_paiement_id, + fr.intervenant_id intervenant_id, + sr.structure_id structure_id, + mep.periode_paiement_id periode_paiement_id, + COALESCE(mep.domaine_fonctionnel_id, fr.domaine_fonctionnel_id) domaine_fonctionnel_id +FROM + formule_resultat fr + JOIN formule_resultat_service_ref frsr ON frsr.formule_resultat_id = fr.id + JOIN mise_en_paiement mep ON mep.formule_res_service_ref_id = frsr.id + JOIN centre_cout cc ON cc.id = mep.centre_cout_id + JOIN service_referentiel sr ON sr.id = frsr.service_referentiel_id + JOIN fonction_referentiel fr ON fr.id = sr.fonction_id +UNION + +SELECT + mep.id mise_en_paiement_id, + fr.intervenant_id intervenant_id, + COALESCE( ep.structure_id, i.structure_id ) structure_id, + mep.periode_paiement_id periode_paiement_id, + COALESCE( + mep.domaine_fonctionnel_id, + e.domaine_fonctionnel_id, + to_number((SELECT valeur FROM parametre WHERE nom = \'domaine_fonctionnel_ens_ext\')) + ) domaine_fonctionnel_id +FROM + formule_resultat fr + JOIN intervenant i ON i.id = fr.intervenant_id + JOIN formule_resultat_service frs ON frs.formule_resultat_id = fr.id + JOIN mise_en_paiement mep ON mep.formule_res_service_id = frs.id + JOIN centre_cout cc ON cc.id = mep.centre_cout_id + JOIN service s ON s.id = frs.service_id + LEFT JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + LEFT JOIN etape e ON e.id = ep.etape_id +) t1', + ), + 'V_MODIF_SERVICE_DU_EXPORT_CSV' => + array ( + 'name' => 'V_MODIF_SERVICE_DU_EXPORT_CSV', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_MODIF_SERVICE_DU_EXPORT_CSV AS +SELECT + i.annee_id annee_id, + i.id intervenant_id, + i.structure_id structure_id, + + a.libelle annee, + s.libelle_court structure_libelle, + + i.code intervenant_code, + i.nom_usuel intervenant_nom_usuel, + i.nom_patronymique intervenant_nom_patronymique, + i.prenom intervenant_prenom, + si.libelle intervenant_statut_libelle, + si.service_statutaire intervenant_service_statutaire, + + mss.code motif_code, + mss.libelle motif_libelle, + + msd.heures * mss.multiplicateur heures, + + msd.commentaires commentaires, + u.display_name modificateur, + msd.histo_modification date_modification +FROM + modification_service_du msd + JOIN intervenant i ON i.id = msd.intervenant_id + JOIN annee a ON a.id = i.annee_id + JOIN structure s ON s.id = i.structure_id + JOIN statut_intervenant si ON si.id = i.statut_id + JOIN motif_modification_service mss ON mss.id = msd.motif_id + JOIN utilisateur u ON u.id = msd.histo_modificateur_id +WHERE + msd.histo_destruction IS NULL + AND i.histo_destruction IS NULL +ORDER BY + annee_id, + structure_libelle, + intervenant_nom_usuel, + motif_libelle, + heures', + ), + 'V_NIVEAU_FORMATION' => + array ( + 'name' => 'V_NIVEAU_FORMATION', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_NIVEAU_FORMATION AS +SELECT DISTINCT + ose_divers.niveau_formation_id_calc( gtf.id, gtf.pertinence_niveau, e.niveau ) id, + gtf.libelle_court || e.niveau code, + gtf.libelle_long, + e.niveau, + gtf.id groupe_type_formation_id +FROM + etape e + JOIN type_formation tf ON tf.id = e.type_formation_id AND tf.histo_destruction IS NULL + JOIN groupe_type_formation gtf ON gtf.id = tf.groupe_id AND gtf.histo_destruction IS NULL +WHERE + e.histo_destruction IS NULL + AND ose_divers.niveau_formation_id_calc( gtf.id, gtf.pertinence_niveau, e.niveau ) IS NOT NULL +ORDER BY + gtf.libelle_long, e.niveau', + ), + 'V_PJ_HEURES' => + array ( + 'name' => 'V_PJ_HEURES', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_PJ_HEURES AS +SELECT + i.NOM_USUEL, + i.PRENOM, + i.id intervenant_id, + i.SOURCE_CODE, + i.annee_id, \'service\' categ, + sum(vh.HEURES) as total_heures +from INTERVENANT i + join SERVICE s on s.INTERVENANT_ID = i.id and s.histo_destruction IS NULL + join VOLUME_HORAIRE vh on vh.SERVICE_ID = s.id and vh.histo_destruction IS NULL + join type_volume_horaire tvh ON TVH.ID = VH.TYPE_VOLUME_HORAIRE_ID AND (tvh.code = \'PREVU\') + join ELEMENT_PEDAGOGIQUE ep on s.ELEMENT_PEDAGOGIQUE_ID = ep.id and ep.histo_destruction IS NULL + join ETAPE e on ep.ETAPE_ID = e.id and e.histo_destruction IS NULL +where i.histo_destruction IS NULL + group by i.NOM_USUEL, i.PRENOM, i.id, i.SOURCE_CODE, i.annee_id, \'service\' +UNION + SELECT i.NOM_USUEL, i.PRENOM, i.id intervenant_id, i.SOURCE_CODE, i.annee_id, \'referentiel\' categ, sum(vh.HEURES) as total_heures + from INTERVENANT i + join service_referentiel s on s.INTERVENANT_ID = i.id and s.histo_destruction IS NULL + join volume_horaire_ref vh on vh.service_referentiel_id = s.id and vh.histo_destruction IS NULL + join type_volume_horaire tvh ON TVH.ID = VH.TYPE_VOLUME_HORAIRE_ID AND (tvh.code = \'PREVU\') + join fonction_referentiel ep on s.fonction_id = ep.id and ep.histo_destruction IS NULL + where i.histo_destruction IS NULL + group by i.NOM_USUEL, i.PRENOM, i.id, i.SOURCE_CODE, i.annee_id, \'referentiel\'', + ), + 'V_PRIVILEGES_ROLES' => + array ( + 'name' => 'V_PRIVILEGES_ROLES', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_PRIVILEGES_ROLES AS +WITH statuts_roles AS ( +SELECT + rp.privilege_id, + r.code role +FROM + role_privilege rp + JOIN role r ON r.id = rp.role_id AND r.histo_destruction IS NULL + +UNION ALL + +SELECT + sp.privilege_id, + \'statut/\' || s.source_code role +FROM + statut_privilege sp + JOIN statut_intervenant s ON s.id = sp.statut_id AND s.histo_destruction IS NULL +) +SELECT + cp.code || \'-\' || p.code privilege, + sr.role +FROM + privilege p + JOIN categorie_privilege cp ON cp.id = p.categorie_id + LEFT JOIN statuts_roles sr ON sr.privilege_id = p.id', + ), + 'V_REF_INTERVENANT' => + array ( + 'name' => 'V_REF_INTERVENANT', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_REF_INTERVENANT AS +SELECT DISTINCT + i.source_code C_INTERVENANT +FROM + tbl_service s + JOIN intervenant i ON i.id = s.intervenant_id + JOIN annee a ON a.id = s.annee_id +WHERE + s.nbvh > 0 + AND SYSDATE BETWEEN a.date_debut AND a.date_fin', + ), + 'V_SERVICE_NON_VALIDE' => + array ( + 'name' => 'V_SERVICE_NON_VALIDE', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_SERVICE_NON_VALIDE AS +select vh.ID, i.ID as intervenant_id, s.ID as service_id, vh.ID as volume_horaire_id, ep.id as element_pedagogique_id, ep.LIBELLE, vh.HEURES + from service s + inner join INTERVENANT i on s.INTERVENANT_ID = i.id + inner join ELEMENT_PEDAGOGIQUE ep on s.ELEMENT_PEDAGOGIQUE_ID = ep.id and ep.histo_destruction IS NULL + inner join VOLUME_HORAIRE vh on vh.SERVICE_ID = s.ID and vh.HISTO_DESTRUCTION is null + left join VALIDATION_VOL_HORAIRE vvh on vvh.VOLUME_HORAIRE_ID = vh.ID + left join VALIDATION v on vvh.VALIDATION_ID = v.ID + left join TYPE_VALIDATION tv on v.TYPE_VALIDATION_ID = tv.ID + where (v.ID is null or v.HISTO_DESTRUCTION is not null) and + not exists ( + select * from VALIDATION_VOL_HORAIRE vvh2 + inner join VALIDATION v2 on vvh2.VALIDATION_ID = v2.ID and v2.histo_destruction IS NULL + where vvh2.VOLUME_HORAIRE_ID = vvh.VOLUME_HORAIRE_ID + )', + ), + 'V_SERVICE_VALIDE' => + array ( + 'name' => 'V_SERVICE_VALIDE', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_SERVICE_VALIDE AS +select vh.ID, i.ID as intervenant_id, s.ID as service_id, vh.ID as volume_horaire_id, ep.id as element_pedagogique_id, ep.LIBELLE, vh.HEURES, v.ID as validation_id, tv.CODE + from service s + inner join INTERVENANT i on s.INTERVENANT_ID = i.id + left join ELEMENT_PEDAGOGIQUE ep on s.ELEMENT_PEDAGOGIQUE_ID = ep.id and ep.histo_destruction IS NULL -- pas d\'EP si intervention hors-UCBN + inner join VOLUME_HORAIRE vh on vh.SERVICE_ID = s.ID and vh.histo_destruction IS NULL + inner join VALIDATION_VOL_HORAIRE vvh on vvh.VOLUME_HORAIRE_ID = vh.ID + inner join VALIDATION v on vvh.VALIDATION_ID = v.ID and v.histo_destruction IS NULL + inner join TYPE_VALIDATION tv on v.TYPE_VALIDATION_ID = tv.ID', + ), + 'V_STRUCTURE_TYPE_MODULATEUR' => + array ( + 'name' => 'V_STRUCTURE_TYPE_MODULATEUR', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_STRUCTURE_TYPE_MODULATEUR AS +SELECT DISTINCT + etm.type_modulateur_id type_modulateur_id, + ep.structure_id structure_id +FROM + v_element_type_modulateur etm + JOIN element_pedagogique ep ON ep.id = etm.element_pedagogique_id AND ep.histo_destruction IS NULL', + ), + 'V_TBL_AGREMENT' => + array ( + 'name' => 'V_TBL_AGREMENT', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_TBL_AGREMENT AS +WITH i_s AS ( + SELECT DISTINCT + fr.intervenant_id, + ep.structure_id + FROM + formule_resultat fr + JOIN type_volume_horaire tvh ON tvh.code = \'PREVU\' AND tvh.id = fr.type_volume_horaire_id + JOIN etat_volume_horaire evh ON evh.code = \'valide\' AND evh.id = fr.etat_volume_horaire_id + + JOIN formule_resultat_service frs ON frs.formule_resultat_id = fr.id + JOIN service s ON s.id = frs.service_id + JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + WHERE + frs.total > 0 +) +SELECT + i.annee_id annee_id, + tas.type_agrement_id type_agrement_id, + i.id intervenant_id, + null structure_id, + tas.obligatoire obligatoire, + a.id agrement_id +FROM + type_agrement ta + JOIN type_agrement_statut tas ON tas.type_agrement_id = ta.id + AND tas.histo_destruction IS NULL + + JOIN intervenant i ON i.histo_destruction IS NULL + AND (tas.premier_recrutement IS NULL OR NVL(i.premier_recrutement,0) = tas.premier_recrutement) + AND i.statut_id = tas.statut_intervenant_id + + LEFT JOIN agrement a ON a.type_agrement_id = ta.id + AND a.intervenant_id = i.id + AND a.histo_destruction IS NULL +WHERE + ta.code = \'CONSEIL_ACADEMIQUE\' + +UNION ALL + +SELECT + i.annee_id annee_id, + tas.type_agrement_id type_agrement_id, + i.id intervenant_id, + i_s.structure_id structure_id, + tas.obligatoire obligatoire, + a.id agrement_id +FROM + type_agrement ta + JOIN type_agrement_statut tas ON tas.type_agrement_id = ta.id + AND tas.histo_destruction IS NULL + + JOIN intervenant i ON i.histo_destruction IS NULL + AND (tas.premier_recrutement IS NULL OR NVL(i.premier_recrutement,0) = tas.premier_recrutement) + AND i.statut_id = tas.statut_intervenant_id + + JOIN i_s ON i_s.intervenant_id = i.id + + LEFT JOIN agrement a ON a.type_agrement_id = ta.id + AND a.intervenant_id = i.id + AND a.structure_id = i_s.structure_id + AND a.histo_destruction IS NULL +WHERE + ta.code = \'CONSEIL_RESTREINT\'', + ), + 'V_TBL_CHARGENS' => + array ( + 'name' => 'V_TBL_CHARGENS', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_TBL_CHARGENS AS +WITH t AS ( +SELECT + n.annee_id annee_id, + n.noeud_id noeud_id, + sn.scenario_id scenario_id, + sne.type_heures_id type_heures_id, + ti.id type_intervention_id, + + n.element_pedagogique_id element_pedagogique_id, + n.element_pedagogique_etape_id etape_id, + sne.etape_id etape_ens_id, + n.structure_id structure_id, + n.groupe_type_formation_id groupe_type_formation_id, + + vhe.heures heures, + vhe.heures * ti.taux_hetd_service hetd, + + GREATEST(COALESCE(sns.ouverture, 1),1) ouverture, + GREATEST(COALESCE(sns.dedoublement, snsetp.dedoublement, csdd.dedoublement,1),1) dedoublement, + COALESCE(sns.assiduite,1) assiduite, + sne.effectif*COALESCE(sns.assiduite,1) effectif, + + SUM(sne.effectif*COALESCE(sns.assiduite,1)) OVER (PARTITION BY n.noeud_id, sn.scenario_id, ti.id) t_effectif + +FROM + scenario_noeud_effectif sne + JOIN etape e ON e.id = sne.etape_id + AND e.histo_destruction IS NULL + + JOIN scenario_noeud sn ON sn.id = sne.scenario_noeud_id + AND sn.histo_destruction IS NULL + + JOIN tbl_noeud n ON n.noeud_id = sn.noeud_id + + JOIN volume_horaire_ens vhe ON vhe.element_pedagogique_id = n.element_pedagogique_id + AND vhe.histo_destruction IS NULL + AND vhe.heures > 0 + + JOIN type_intervention ti ON ti.id = vhe.type_intervention_id + + LEFT JOIN tbl_noeud netp ON netp.etape_id = e.id + + LEFT JOIN scenario_noeud snetp ON snetp.scenario_id = sn.scenario_id + AND snetp.noeud_id = netp.noeud_id + AND snetp.histo_destruction IS NULL + + LEFT JOIN scenario_noeud_seuil snsetp ON snsetp.scenario_noeud_id = snetp.id + AND snsetp.type_intervention_id = ti.id + + LEFT JOIN tbl_chargens_seuils_def csdd ON csdd.annee_id = n.annee_id + AND csdd.scenario_id = sn.scenario_id + AND csdd.type_intervention_id = ti.id + AND csdd.groupe_type_formation_id = n.groupe_type_formation_id + AND csdd.structure_id = n.structure_id + + LEFT JOIN scenario_noeud_seuil sns ON sns.scenario_noeud_id = sn.id + AND sns.type_intervention_id = ti.id +) +SELECT + annee_id, + noeud_id, + scenario_id, + type_heures_id, + type_intervention_id, + + element_pedagogique_id, + etape_id, + etape_ens_id, + structure_id, + groupe_type_formation_id, + + ouverture, + dedoublement, + assiduite, + effectif, + heures heures_ens, + --t_effectif, + + CASE WHEN t_effectif < ouverture THEN 0 ELSE + CEIL( t_effectif / dedoublement ) * effectif / t_effectif + END groupes, + + CASE WHEN t_effectif < ouverture THEN 0 ELSE + CEIL( t_effectif / dedoublement ) * heures * effectif / t_effectif + END heures, + + CASE WHEN t_effectif < ouverture THEN 0 ELSE + CEIL( t_effectif / dedoublement ) * hetd * effectif / t_effectif + END hetd + +FROM + t', + ), + 'V_TBL_CHARGENS_SEUILS_DEF' => + array ( + 'name' => 'V_TBL_CHARGENS_SEUILS_DEF', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_TBL_CHARGENS_SEUILS_DEF AS +SELECT + sta.annee_id, + sta.scenario_id, + s.structure_id, + gtf.groupe_type_formation_id, + sta.type_intervention_id, + COALESCE(sc1.dedoublement, sc2.dedoublement, sc3.dedoublement, sc4.dedoublement) dedoublement +FROM + (SELECT DISTINCT scenario_id, type_intervention_id, annee_id FROM seuil_charge WHERE histo_destruction IS NULL) sta + JOIN (SELECT DISTINCT structure_id FROM noeud WHERE structure_id IS NOT NULL) s ON 1=1 + JOIN (SELECT id groupe_type_formation_id FROM groupe_type_formation) gtf ON 1=1 + + LEFT JOIN seuil_charge sc1 ON + sc1.histo_destruction IS NULL + AND sc1.annee_id = sta.annee_id + AND sc1.scenario_id = sta.scenario_id + AND sc1.type_intervention_id = sta.type_intervention_id + AND sc1.structure_id = s.structure_id + AND sc1.groupe_type_formation_id = gtf.groupe_type_formation_id + + LEFT JOIN seuil_charge sc2 ON + sc2.histo_destruction IS NULL + AND sc2.annee_id = sta.annee_id + AND sc2.scenario_id = sta.scenario_id + AND sc2.type_intervention_id = sta.type_intervention_id + AND sc2.structure_id = s.structure_id + AND sc2.groupe_type_formation_id IS NULL + + LEFT JOIN seuil_charge sc3 ON + sc3.histo_destruction IS NULL + AND sc3.annee_id = sta.annee_id + AND sc3.scenario_id = sta.scenario_id + AND sc3.type_intervention_id = sta.type_intervention_id + AND sc3.structure_id IS NULL + AND sc3.groupe_type_formation_id = gtf.groupe_type_formation_id + + LEFT JOIN seuil_charge sc4 ON + sc4.histo_destruction IS NULL + AND sc4.annee_id = sta.annee_id + AND sc4.scenario_id = sta.scenario_id + AND sc4.type_intervention_id = sta.type_intervention_id + AND sc4.structure_id IS NULL + AND sc4.groupe_type_formation_id IS NULL +WHERE + COALESCE(sc1.dedoublement, sc2.dedoublement, sc3.dedoublement, sc4.dedoublement, 1) <> 1', + ), + 'V_TBL_CLOTURE_REALISE' => + array ( + 'name' => 'V_TBL_CLOTURE_REALISE', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_TBL_CLOTURE_REALISE AS +WITH t AS ( + SELECT + i.annee_id annee_id, + i.id intervenant_id, + si.peut_cloturer_saisie peut_cloturer_saisie, + CASE WHEN v.id IS NULL THEN 0 ELSE 1 END cloture + FROM + intervenant i + JOIN statut_intervenant si ON si.id = i.statut_id + JOIN type_validation tv ON tv.code = \'CLOTURE_REALISE\' + + LEFT JOIN validation v ON v.intervenant_id = i.id + AND v.type_validation_id = tv.id + AND v.histo_destruction IS NULL + + WHERE + i.histo_destruction IS NULL +) +SELECT + annee_id, + intervenant_id, + peut_cloturer_saisie, + CASE WHEN sum(cloture) = 0 THEN 0 ELSE 1 END cloture +FROM + t +GROUP BY + annee_id, + intervenant_id, + peut_cloturer_saisie', + ), + 'V_TBL_CONTRAT' => + array ( + 'name' => 'V_TBL_CONTRAT', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_TBL_CONTRAT AS +WITH t AS ( + SELECT + i.annee_id annee_id, + i.id intervenant_id, + si.peut_avoir_contrat peut_avoir_contrat, + NVL(ep.structure_id, i.structure_id) structure_id, + CASE WHEN evh.code IN (\'contrat-edite\',\'contrat-signe\') THEN 1 ELSE 0 END edite, + CASE WHEN evh.code IN (\'contrat-signe\') THEN 1 ELSE 0 END signe + FROM + intervenant i + + JOIN statut_intervenant si ON si.id = i.statut_id + + JOIN service s ON s.intervenant_id = i.id + AND s.histo_destruction IS NULL + + JOIN type_volume_horaire tvh ON tvh.code = \'PREVU\' + + JOIN volume_horaire vh ON vh.service_id = s.id + AND vh.histo_destruction IS NULL + AND vh.heures <> 0 + AND vh.type_volume_horaire_id = tvh.id + AND vh.motif_non_paiement_id IS NULL + + JOIN v_volume_horaire_etat vhe ON vhe.volume_horaire_id = vh.id + + JOIN etat_volume_horaire evh ON evh.id = vhe.etat_volume_horaire_id + AND evh.code IN (\'valide\', \'contrat-edite\', \'contrat-signe\') + + JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + + WHERE + i.histo_destruction IS NULL + AND NOT (si.peut_avoir_contrat = 0 AND evh.code = \'valide\') + + UNION ALL + + SELECT + i.annee_id annee_id, + i.id intervenant_id, + si.peut_avoir_contrat peut_avoir_contrat, + s.structure_id structure_id, + CASE WHEN evh.code IN (\'contrat-edite\',\'contrat-signe\') THEN 1 ELSE 0 END edite, + CASE WHEN evh.code IN (\'contrat-signe\') THEN 1 ELSE 0 END signe + FROM + intervenant i + + JOIN statut_intervenant si ON si.id = i.statut_id + + JOIN service_referentiel s ON s.intervenant_id = i.id + AND s.histo_destruction IS NULL + + JOIN type_volume_horaire tvh ON tvh.code = \'PREVU\' + + JOIN volume_horaire_ref vh ON vh.service_referentiel_id = s.id + AND vh.histo_destruction IS NULL + AND vh.heures <> 0 + AND vh.type_volume_horaire_id = tvh.id + + JOIN v_volume_horaire_ref_etat vhe ON vhe.volume_horaire_ref_id = vh.id + + JOIN etat_volume_horaire evh ON evh.id = vhe.etat_volume_horaire_id + AND evh.code IN (\'valide\', \'contrat-edite\', \'contrat-signe\') + + WHERE + i.histo_destruction IS NULL + AND NOT (si.peut_avoir_contrat = 0 AND evh.code = \'valide\') +) +SELECT + annee_id, + intervenant_id, + peut_avoir_contrat, + structure_id, + count(*) as nbvh, + sum(edite) as edite, + sum(signe) as signe +FROM + t +GROUP BY + annee_id, + intervenant_id, + peut_avoir_contrat, + structure_id', + ), + 'V_TBL_DMEP_LIQUIDATION' => + array ( + 'name' => 'V_TBL_DMEP_LIQUIDATION', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_TBL_DMEP_LIQUIDATION AS +SELECT + annee_id, + type_ressource_id, + structure_id, + SUM(heures) heures +FROM +( + SELECT + i.annee_id, + cc.type_ressource_id, + COALESCE( ep.structure_id, i.structure_id ) structure_id, + mep.heures + FROM + mise_en_paiement mep + JOIN centre_cout cc ON cc.id = mep.centre_cout_id + JOIN formule_resultat_service frs ON frs.id = mep.formule_res_service_id + JOIN service s ON s.id = frs.service_id + JOIN intervenant i ON i.id = s.intervenant_id + LEFT JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + WHERE + mep.histo_destruction IS NULL + + UNION ALL + + SELECT + i.annee_id, + cc.type_ressource_id, + sr.structure_id structure_id, + heures + FROM + mise_en_paiement mep + JOIN centre_cout cc ON cc.id = mep.centre_cout_id + JOIN formule_resultat_service_ref frsr ON frsr.id = mep.formule_res_service_ref_id + JOIN service_referentiel sr ON sr.id = frsr.service_referentiel_id + JOIN intervenant i ON i.id = sr.intervenant_id + + WHERE + mep.histo_destruction IS NULL + +) t1 +GROUP BY + annee_id, type_ressource_id, structure_id', + ), + 'V_TBL_DOSSIER' => + array ( + 'name' => 'V_TBL_DOSSIER', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_TBL_DOSSIER AS +SELECT + i.annee_id, + i.id intervenant_id, + si.peut_saisir_dossier, + d.id dossier_id, + v.id validation_id +FROM + intervenant i + JOIN statut_intervenant si ON si.id = i.statut_id + LEFT JOIN dossier d ON d.intervenant_id = i.id + AND d.histo_destruction IS NULL + + JOIN type_validation tv ON tv.code = \'DONNEES_PERSO_PAR_COMP\' + LEFT JOIN validation v ON v.intervenant_id = i.id + AND v.type_validation_id = tv.id + AND v.histo_destruction IS NULL +WHERE + i.histo_destruction IS NULL', + ), + 'V_TBL_LIEN' => + array ( + 'name' => 'V_TBL_LIEN', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_TBL_LIEN AS +SELECT + l.id lien_id, + s.id scenario_id, + sl.id scenario_lien_id, + l.noeud_sup_id noeud_sup_id, + l.noeud_inf_id noeud_inf_id, + l.structure_id structure_id, + NVL(sl.actif,1) actif, + NVL(sl.poids,1) poids, + MAX(CASE WHEN 1 = NVL(sl.actif,1) THEN NVL(sl.poids,1) ELSE 0 END) OVER (PARTITION BY l.noeud_sup_id, s.id) max_poids, + sl.choix_maximum choix_maximum, + sl.choix_minimum choix_minimum, + + SUM(NVL(sl.actif,1)) OVER (PARTITION BY l.noeud_sup_id, s.id) nb_choix, + SUM(CASE WHEN 1 = NVL(sl.actif,1) THEN NVL(sl.poids,1) ELSE 0 END) OVER (PARTITION BY l.noeud_sup_id, s.id) total_poids + +FROM + lien l + JOIN scenario s ON s.histo_destruction IS NULL + LEFT JOIN scenario_lien sl ON + sl.lien_id = l.id + AND sl.scenario_id = s.id + AND s.histo_destruction IS NULL +WHERE + l.histo_destruction IS NULL', + ), + 'V_TBL_PAIEMENT' => + array ( + 'name' => 'V_TBL_PAIEMENT', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_TBL_PAIEMENT AS +SELECT + i.annee_id annee_id, + frs.id formule_res_service_id, + null formule_res_service_ref_id, + i.id intervenant_id, + COALESCE( ep.structure_id, i.structure_id ) structure_id, + mep.id mise_en_paiement_id, + mep.periode_paiement_id periode_paiement_id, + frs.heures_compl_fi + frs.heures_compl_fc + frs.heures_compl_fa + frs.heures_compl_fc_majorees heures_a_payer, + count(*) OVER(PARTITION BY frs.id) heures_a_payer_pond, + NVL(mep.heures,0) heures_demandees, + CASE WHEN mep.periode_paiement_id IS NULL THEN 0 ELSE mep.heures END heures_payees +FROM + formule_resultat_service frs + JOIN type_volume_horaire tvh ON tvh.code = \'REALISE\' + JOIN etat_volume_horaire evh ON evh.code = \'valide\' + JOIN formule_resultat fr ON fr.id = frs.formule_resultat_id + AND fr.type_volume_horaire_id = tvh.id + AND fr.etat_volume_horaire_id = evh.id + + JOIN intervenant i ON i.id = fr.intervenant_id + JOIN service s ON s.id = frs.service_id + LEFT JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + LEFT JOIN mise_en_paiement mep ON mep.formule_res_service_id = frs.id + AND mep.histo_destruction IS NULL + +UNION ALL + +SELECT + i.annee_id annee_id, + null formule_res_service_id, + frs.id formule_res_service_ref_id, + i.id intervenant_id, + s.structure_id structure_id, + mep.id mise_en_paiement_id, + mep.periode_paiement_id periode_paiement_id, + frs.heures_compl_referentiel heures_a_payer, + count(*) OVER(PARTITION BY frs.id) heures_a_payer_pond, + NVL(mep.heures,0) heures_demandees, + CASE WHEN mep.periode_paiement_id IS NULL THEN 0 ELSE mep.heures END heures_payees +FROM + formule_resultat_service_ref frs + JOIN type_volume_horaire tvh ON tvh.code = \'REALISE\' + JOIN etat_volume_horaire evh ON evh.code = \'valide\' + JOIN formule_resultat fr ON fr.id = frs.formule_resultat_id + AND fr.type_volume_horaire_id = tvh.id + AND fr.etat_volume_horaire_id = evh.id + + JOIN intervenant i ON i.id = fr.intervenant_id + JOIN service_referentiel s ON s.id = frs.service_referentiel_id + LEFT JOIN mise_en_paiement mep ON mep.formule_res_service_ref_id = frs.id + AND mep.histo_destruction IS NULL', + ), + 'V_TBL_PIECE_JOINTE' => + array ( + 'name' => 'V_TBL_PIECE_JOINTE', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_TBL_PIECE_JOINTE AS +WITH pjf AS ( + SELECT + pjf.annee_id, + pjf.type_piece_jointe_id, + pjf.intervenant_id, + COUNT(*) count, + SUM(CASE WHEN validation_id IS NULL THEN 0 ELSE 1 END) validation, + SUM(CASE WHEN fichier_id IS NULL THEN 0 ELSE 1 END) fichier + FROM + tbl_piece_jointe_fournie pjf + GROUP BY + pjf.annee_id, + pjf.type_piece_jointe_id, + pjf.intervenant_id +) +SELECT + NVL( pjd.annee_id, pjf.annee_id ) annee_id, + NVL( pjd.type_piece_jointe_id, pjf.type_piece_jointe_id ) type_piece_jointe_id, + NVL( pjd.intervenant_id, pjf.intervenant_id ) intervenant_id, + CASE WHEN pjd.intervenant_id IS NULL THEN 0 ELSE 1 END demandee, + CASE WHEN pjf.fichier = pjf.count THEN 1 ELSE 0 END fournie, + CASE WHEN pjf.validation = pjf.count THEN 1 ELSE 0 END validee, + NVL(pjd.heures_pour_seuil,0) heures_pour_seuil +FROM + tbl_piece_jointe_demande pjd + FULL JOIN pjf ON pjf.type_piece_jointe_id = pjd.type_piece_jointe_id AND pjf.intervenant_id = pjd.intervenant_id', + ), + 'V_TBL_PIECE_JOINTE_DEMANDE' => + array ( + 'name' => 'V_TBL_PIECE_JOINTE_DEMANDE', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_TBL_PIECE_JOINTE_DEMANDE AS +WITH i_h AS ( + SELECT + s.intervenant_id, + sum(vh.heures) heures, + sum(ep.taux_fc) fc + FROM + service s + JOIN type_volume_horaire tvh ON tvh.code = \'PREVU\' + JOIN volume_horaire vh ON vh.service_id = s.id + AND vh.type_volume_horaire_id = tvh.id + AND vh.histo_destruction IS NULL + JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id -- Service sur l\'établissement + WHERE + s.histo_destruction IS NULL + AND vh.motif_non_paiement_id IS NULL -- pas de motif de non paiement + GROUP BY + s.intervenant_id +) +SELECT + i.annee_id annee_id, + i.id intervenant_id, + tpj.id type_piece_jointe_id, + MAX(COALESCE(i_h.heures, 0)) heures_pour_seuil +FROM + intervenant i + + LEFT JOIN dossier d ON d.intervenant_id = i.id + AND d.histo_destruction IS NULL + + JOIN type_piece_jointe_statut tpjs ON tpjs.statut_intervenant_id = i.statut_id + AND tpjs.histo_destruction IS NULL + AND i.annee_id BETWEEN COALESCE(tpjs.annee_debut_id,i.annee_id) AND COALESCE(tpjs.annee_fin_id,i.annee_id) + + JOIN type_piece_jointe tpj ON tpj.id = tpjs.type_piece_jointe_id + AND tpj.histo_destruction IS NULL + + LEFT JOIN i_h ON i_h.intervenant_id = i.id +WHERE + -- Gestion de l\'historique + i.histo_destruction IS NULL + + -- Seuil HETD + AND (COALESCE(i_h.heures,0) > COALESCE(tpjs.seuil_hetd,-1)) + + -- En fonction du premier recrutement ou non + AND (tpjs.premier_recrutement = 0 OR COALESCE(i.premier_recrutement,0) = 1) + + -- Le RIB n\'est demandé QUE s\'il est différent!! + AND CASE + WHEN tpjs.changement_rib = 0 OR d.id IS NULL THEN 1 + ELSE CASE WHEN replace(i.bic, \' \', \'\') || \'-\' || replace(i.iban, \' \', \'\') = d.rib THEN 0 ELSE 1 END + END = 1 + + -- Filtre FC + AND (tpjs.fc = 0 OR i_h.fc > 0) +GROUP BY + i.annee_id, + i.id, + tpj.id', + ), + 'V_TBL_PIECE_JOINTE_FOURNIE' => + array ( + 'name' => 'V_TBL_PIECE_JOINTE_FOURNIE', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_TBL_PIECE_JOINTE_FOURNIE AS +SELECT + i.annee_id, + pj.type_piece_jointe_id, + pj.intervenant_id, + pj.id piece_jointe_id, + v.id validation_id, + f.id fichier_id +FROM + piece_jointe pj + JOIN intervenant i ON i.id = pj.intervenant_id + AND i.histo_destruction IS NULL + + JOIN piece_jointe_fichier pjf ON pjf.piece_jointe_id = pj.id + JOIN fichier f ON f.id = pjf.fichier_id + AND f.histo_destruction IS NULL + + LEFT JOIN validation v ON v.id = pj.validation_id + AND v.histo_destruction IS NULL +WHERE + pj.histo_destruction IS NULL', + ), + 'V_TBL_SERVICE' => + array ( + 'name' => 'V_TBL_SERVICE', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_TBL_SERVICE AS +WITH t AS ( +SELECT + s.id service_id, + s.intervenant_id intervenant_id, + ep.structure_id structure_id, + ep.id element_pedagogique_id, + ep.periode_id element_pedagogique_periode_id, + etp.id etape_id, + + vh.type_volume_horaire_id type_volume_horaire_id, + vh.heures heures, + tvh.code type_volume_horaire_code, + + CASE WHEN ep.histo_destruction IS NULL THEN 1 ELSE 0 END element_pedagogique_histo, + CASE WHEN etp.histo_destruction IS NULL OR cp.id IS NOT NULL THEN 1 ELSE 0 END etape_histo, + + CASE WHEN ep.periode_id IS NOT NULL THEN + SUM( CASE WHEN vh.periode_id <> ep.periode_id THEN 1 ELSE 0 END ) OVER( PARTITION BY vh.service_id, vh.periode_id, vh.type_volume_horaire_id, vh.type_intervention_id ) + ELSE 0 END has_heures_mauvaise_periode, + + CASE WHEN v.id IS NULL AND vh.auto_validation=0 THEN 0 ELSE 1 END valide +FROM + service s + LEFT JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + LEFT JOIN etape etp ON etp.id = ep.etape_id + LEFT JOIN chemin_pedagogique cp ON cp.etape_id = etp.id + AND cp.element_pedagogique_id = ep.id + AND cp.histo_destruction IS NULL + + JOIN volume_horaire vh ON vh.service_id = s.id + AND vh.histo_destruction IS NULL + + JOIN type_volume_horaire tvh ON tvh.id = vh.type_volume_horaire_id + + LEFT JOIN validation_vol_horaire vvh ON vvh.volume_horaire_id = vh.id + + LEFT JOIN validation v ON v.id = vvh.validation_id + AND v.histo_destruction IS NULL +WHERE + s.histo_destruction IS NULL +) +SELECT + i.annee_id annee_id, + i.id intervenant_id, + i.structure_id intervenant_structure_id, + NVL( t.structure_id, i.structure_id ) structure_id, + ti.id type_intervenant_id, + ti.code type_intervenant_code, + si.peut_saisir_service peut_saisir_service, + + t.element_pedagogique_id, + t.service_id, + t.element_pedagogique_periode_id, + t.etape_id, + t.type_volume_horaire_id, + t.type_volume_horaire_code, + t.element_pedagogique_histo, + t.etape_histo, + + CASE WHEN SUM(t.has_heures_mauvaise_periode) > 0 THEN 1 ELSE 0 END has_heures_mauvaise_periode, + + CASE WHEN type_volume_horaire_id IS NULL THEN 0 ELSE count(*) END nbvh, + CASE WHEN type_volume_horaire_id IS NULL THEN 0 ELSE sum(t.heures) END heures, + sum(valide) valide +FROM + t + JOIN intervenant i ON i.id = t.intervenant_id + JOIN statut_intervenant si ON si.id = i.statut_id + JOIN type_intervenant ti ON ti.id = si.type_intervenant_id +GROUP BY + i.annee_id, + i.id, + i.structure_id, + t.structure_id, + i.structure_id, + ti.id, + ti.code, + si.peut_saisir_service, + t.element_pedagogique_id, + t.service_id, + t.element_pedagogique_periode_id, + t.etape_id, + t.type_volume_horaire_id, + t.type_volume_horaire_code, + t.element_pedagogique_histo, + t.etape_histo', + ), + 'V_TBL_SERVICE_REFERENTIEL' => + array ( + 'name' => 'V_TBL_SERVICE_REFERENTIEL', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_TBL_SERVICE_REFERENTIEL AS +WITH t AS ( + + SELECT + i.annee_id, + i.id intervenant_id, + si.peut_saisir_referentiel peut_saisir_service, + vh.type_volume_horaire_id, + s.structure_id, + CASE WHEN v.id IS NULL AND vh.auto_validation=0 THEN 0 ELSE 1 END valide + FROM + intervenant i + + JOIN statut_intervenant si ON si.id = i.statut_id + + LEFT JOIN service_referentiel s ON s.intervenant_id = i.id + AND s.histo_destruction IS NULL + + LEFT JOIN volume_horaire_ref vh ON vh.service_referentiel_id = s.id + AND vh.histo_destruction IS NULL + + LEFT JOIN validation_vol_horaire_ref vvh ON vvh.volume_horaire_ref_id = vh.id + + LEFT JOIN validation v ON v.id = vvh.validation_id + AND v.histo_destruction IS NULL + WHERE + i.histo_destruction IS NULL + +) +SELECT + annee_id, + intervenant_id, + peut_saisir_service, + type_volume_horaire_id, + structure_id, + CASE WHEN type_volume_horaire_id IS NULL THEN 0 ELSE count(*) END nbvh, + sum(valide) valide +FROM + t +WHERE + NOT (structure_id IS NOT NULL AND type_volume_horaire_id IS NULL) +GROUP BY + annee_id, + intervenant_id, + peut_saisir_service, + type_volume_horaire_id, + structure_id', + ), + 'V_TBL_SERVICE_SAISIE' => + array ( + 'name' => 'V_TBL_SERVICE_SAISIE', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_TBL_SERVICE_SAISIE AS +SELECT + i.annee_id, + i.id intervenant_id, + si.peut_saisir_service, + si.peut_saisir_referentiel, + SUM( CASE WHEN tvhs.code = \'PREVU\' THEN NVL(vh .heures,0) ELSE 0 END ) heures_service_prev, + SUM( CASE WHEN tvhs.code = \'PREVU\' THEN NVL(vhr.heures,0) ELSE 0 END ) heures_referentiel_prev, + SUM( CASE WHEN tvhs.code = \'REALISE\' THEN NVL(vh .heures,0) ELSE 0 END ) heures_service_real, + SUM( CASE WHEN tvhs.code = \'REALISE\' THEN NVL(vhr.heures,0) ELSE 0 END ) heures_referentiel_real +FROM + intervenant i + JOIN statut_intervenant si ON si.id = i.statut_id + LEFT JOIN service s ON s.intervenant_id = i.id AND s.histo_destruction IS NULL + LEFT JOIN volume_horaire vh ON vh.service_id = s.id AND vh.histo_destruction IS NULL + LEFT JOIN type_volume_horaire tvhs ON tvhs.id = vh.type_volume_horaire_id + + LEFT JOIN service_referentiel sr ON sr.intervenant_id = i.id AND sr.histo_destruction IS NULL + LEFT JOIN volume_horaire_ref vhr ON vhr.service_referentiel_id = sr.id AND vhr.histo_destruction IS NULL + LEFT JOIN type_volume_horaire tvhrs ON tvhrs.id = vhr.type_volume_horaire_id +WHERE + i.histo_destruction IS NULL +GROUP BY + i.annee_id, + i.id, + si.peut_saisir_service, + si.peut_saisir_referentiel', + ), + 'V_TBL_VALIDATION_ENSEIGNEMENT' => + array ( + 'name' => 'V_TBL_VALIDATION_ENSEIGNEMENT', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_TBL_VALIDATION_ENSEIGNEMENT AS +SELECT DISTINCT + i.annee_id, + i.id intervenant_id, + CASE WHEN rsv.priorite = \'affectation\' THEN + COALESCE( i.structure_id, ep.structure_id ) + ELSE + COALESCE( ep.structure_id, i.structure_id ) + END structure_id, + vh.type_volume_horaire_id, + s.id service_id, + vh.id volume_horaire_id, + vh.auto_validation, + v.id validation_id +FROM + service s + JOIN volume_horaire vh ON vh.service_id = s.id AND vh.histo_destruction IS NULL + JOIN intervenant i ON i.id = s.intervenant_id AND i.histo_destruction IS NULL + JOIN statut_intervenant si ON si.id = i.statut_id + JOIN regle_structure_validation rsv ON rsv.type_intervenant_id = si.type_intervenant_id AND rsv.type_volume_horaire_id = vh.type_volume_horaire_id + LEFT JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + LEFT JOIN validation_vol_horaire vvh ON vvh.volume_horaire_id = vh.id + LEFT JOIN validation v ON v.id = vvh.validation_id AND v.histo_destruction IS NULL +WHERE + s.histo_destruction IS NULL', + ), + 'V_TBL_VALIDATION_REFERENTIEL' => + array ( + 'name' => 'V_TBL_VALIDATION_REFERENTIEL', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_TBL_VALIDATION_REFERENTIEL AS +SELECT DISTINCT + i.annee_id, + i.id intervenant_id, + CASE WHEN rsv.priorite = \'affectation\' THEN + COALESCE( i.structure_id, s.structure_id ) + ELSE + COALESCE( s.structure_id, i.structure_id ) + END structure_id, + vh.type_volume_horaire_id, + s.id service_referentiel_id, + vh.id volume_horaire_ref_id, + vh.auto_validation, + v.id validation_id +FROM + service_referentiel s + JOIN volume_horaire_ref vh ON vh.service_referentiel_id = s.id AND vh.histo_destruction IS NULL + JOIN intervenant i ON i.id = s.intervenant_id AND i.histo_destruction IS NULL + JOIN statut_intervenant si ON si.id = i.statut_id + JOIN regle_structure_validation rsv ON rsv.type_intervenant_id = si.type_intervenant_id AND rsv.type_volume_horaire_id = vh.type_volume_horaire_id + LEFT JOIN validation_vol_horaire_ref vvh ON vvh.volume_horaire_ref_id = vh.id + LEFT JOIN validation v ON v.id = vvh.validation_id AND v.histo_destruction IS NULL +WHERE + s.histo_destruction IS NULL', + ), + 'V_TBL_VOLUME_HORAIRE' => + array ( + 'name' => 'V_TBL_VOLUME_HORAIRE', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_TBL_VOLUME_HORAIRE AS +WITH has_cp AS ( +SELECT + etape_id +FROM + chemin_pedagogique cp +WHERE + cp.histo_destruction IS NULL +GROUP BY + etape_id +) +SELECT + i.annee_id annee_id, + i.id intervenant_id, + i.structure_id intervenant_structure_id, + NVL(ep.structure_id, i.structure_id) structure_id, + ti.id type_intervenant_id, + s.id service_id, + vh.id volume_horaire_id, + vh.type_intervention_id type_intervention_id, + vh.motif_non_paiement_id motif_non_paiement_id, + vh.periode_id volume_horaire_periode_id, + tvh.id type_volume_horaire_id, + evh.id etat_volume_horaire_id, + ep.id element_pedagogique_id, + ep.periode_id element_pedagogique_periode_id, + etp.id etape_id, + + ti.code type_intervenant_code, + tvh.code type_volume_horaire_code, + evh.code etat_volume_horaire_code, + si.peut_saisir_service peut_saisir_service, + vh.heures heures, + + CASE WHEN ep.histo_destruction IS NULL THEN 1 ELSE 0 END element_pedagogique_histo, + CASE WHEN etp.histo_destruction IS NULL OR has_cp.etape_id IS NOT NULL THEN 1 ELSE 0 END etape_histo, + CASE WHEN ep.periode_id IS NOT NULL AND vh.periode_id <> ep.periode_id THEN 0 ELSE 1 END periode_corresp + +FROM + intervenant i + JOIN statut_intervenant si ON si.id = i.statut_id + JOIN type_intervenant ti ON ti.id = si.type_intervenant_id + JOIN service s ON s.intervenant_id = i.id + AND s.histo_destruction IS NULL + JOIN element_pedagogique ep ON ep.id = s.element_pedagogique_id + JOIN etape etp ON etp.id = ep.etape_id + JOIN volume_horaire vh ON vh.service_id = s.id + AND vh.histo_destruction IS NULL + JOIN type_volume_horaire tvh ON tvh.id = vh.type_volume_horaire_id + JOIN v_volume_horaire_etat vhe ON vhe.volume_horaire_id = vh.id + JOIN etat_volume_horaire evh ON evh.id = vhe.etat_volume_horaire_id + LEFT JOIN has_cp ON has_cp.etape_id = etp.id +WHERE + i.histo_destruction IS NULL', + ), + 'V_TBL_WORKFLOW' => + array ( + 'name' => 'V_TBL_WORKFLOW', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_TBL_WORKFLOW AS +WITH pj AS ( + SELECT + annee_id, + intervenant_id, + SUM(demandee) demandees, + SUM(fournie) fournies, + SUM(validee) validees + FROM + tbl_piece_jointe + WHERE + 1 = OSE_WORKFLOW.match_intervenant(intervenant_id) + AND demandee > 0 + GROUP BY + annee_id, + intervenant_id +), +mep AS ( + SELECT + annee_id, + intervenant_id, + structure_id, + SUM(heures_a_payer / heures_a_payer_pond) sap, + SUM(heures_demandees) dmep, + SUM(heures_payees) mep + --COUNT(*) sap, + --SUM(CASE WHEN mise_en_paiement_id IS NULL THEN 0 ELSE 1 END) dmep, + --SUM(CASE WHEN periode_paiement_id IS NULL THEN 0 ELSE 1 END) mep + FROM + tbl_paiement + WHERE + 1 = OSE_WORKFLOW.match_intervenant(intervenant_id) + GROUP BY + annee_id, + intervenant_id, + structure_id +) +SELECT + e.code etape_code, + d.annee_id annee_id, + d.intervenant_id intervenant_id, + null structure_id, + 1 objectif, + CASE + WHEN e.code = \'DONNEES_PERSO_SAISIE\' THEN + CASE WHEN d.dossier_id IS NULL THEN 0 ELSE 1 END + + WHEN e.code = \'DONNEES_PERSO_VALIDATION\' THEN + CASE WHEN d.validation_id IS NULL THEN 0 ELSE 1 END + + END realisation +FROM + tbl_dossier d + JOIN ( + SELECT \'DONNEES_PERSO_SAISIE\' code FROM dual + UNION SELECT \'DONNEES_PERSO_VALIDATION\' code FROM dual + ) e ON 1=1 +WHERE + d. peut_saisir_dossier = 1 + AND 1 = OSE_WORKFLOW.match_intervenant(d.intervenant_id) + +UNION ALL + +SELECT + e.code etape_code, + tss.annee_id annee_id, + tss.intervenant_id intervenant_id, + NULL structure_id, + 1 objectif, + CASE + WHEN e.code = \'SERVICE_SAISIE\' THEN + CASE WHEN tss.heures_service_prev + tss.heures_referentiel_prev > 0 THEN 1 ELSE 0 END + + WHEN e.code = \'SERVICE_SAISIE_REALISE\' THEN + CASE WHEN tss.heures_service_real + tss.heures_referentiel_real > 0 THEN 1 ELSE 0 END + + END realisation +FROM + TBL_SERVICE_SAISIE tss + JOIN ( + SELECT \'SERVICE_SAISIE\' code FROM dual + UNION SELECT \'SERVICE_SAISIE_REALISE\' code FROM dual + ) e ON 1=1 +WHERE + (tss.peut_saisir_service = 1 OR tss.peut_saisir_referentiel = 1) + AND 1 = OSE_WORKFLOW.match_intervenant(tss.intervenant_id) + +UNION ALL + +SELECT + CASE + WHEN tvh.code = \'PREVU\' THEN \'SERVICE_VALIDATION\' + WHEN tvh.code = \'REALISE\' THEN \'SERVICE_VALIDATION_REALISE\' + END etape_code, + tve.annee_id annee_id, + tve.intervenant_id intervenant_id, + tve.structure_id structure_id, + COUNT(*) objectif, + SUM(CASE WHEN tve.validation_id IS NOT NULL THEN 1 ELSE 0 END) realisation +FROM + tbl_validation_enseignement tve + JOIN type_volume_horaire tvh ON tvh.id = tve.type_volume_horaire_id +WHERE + 1 = OSE_WORKFLOW.match_intervenant(tve.intervenant_id) + AND tve.auto_validation = 0 +GROUP BY + tve.annee_id, + tve.intervenant_id, + tve.structure_id, + tvh.code + +UNION ALL + +SELECT + CASE + WHEN tvh.code = \'PREVU\' THEN \'REFERENTIEL_VALIDATION\' + WHEN tvh.code = \'REALISE\' THEN \'REFERENTIEL_VALIDATION_REALISE\' + END etape_code, + tvr.annee_id annee_id, + tvr.intervenant_id intervenant_id, + tvr.structure_id structure_id, + count(*) objectif, + SUM(CASE WHEN tvr.validation_id IS NOT NULL THEN 1 ELSE 0 END) realisation +FROM + tbl_validation_referentiel tvr + JOIN type_volume_horaire tvh ON tvh.id = tvr.type_volume_horaire_id +WHERE + 1 = OSE_WORKFLOW.match_intervenant(tvr.intervenant_id) + AND tvr.auto_validation = 0 +GROUP BY + tvr.annee_id, + tvr.intervenant_id, + tvr.structure_id, + tvh.code + +UNION ALL + +SELECT + e.code etape_code, + pj.annee_id annee_id, + pj.intervenant_id intervenant_id, + null structure_id, + CASE + WHEN e.code = \'PJ_SAISIE\' THEN pj.demandees + WHEN e.code = \'PJ_VALIDATION\' THEN pj.demandees + END objectif, + CASE + WHEN e.code = \'PJ_SAISIE\' THEN pj.fournies + WHEN e.code = \'PJ_VALIDATION\' THEN pj.validees + END realisation +FROM + pj + JOIN ( + SELECT \'PJ_SAISIE\' code FROM dual + UNION SELECT \'PJ_VALIDATION\' code FROM dual + ) e ON ( + (e.code = \'PJ_SAISIE\' AND pj.demandees > 0) + OR (e.code = \'PJ_VALIDATION\' AND pj.fournies > 0) + ) + +UNION ALL + +SELECT + ta.code etape_code, + a.annee_id annee_id, + a.intervenant_id intervenant_id, + a.structure_id structure_id, + 1 objectif, + CASE WHEN a.agrement_id IS NULL THEN 0 ELSE 1 END realisation +FROM + tbl_agrement a + JOIN type_agrement ta ON ta.id = a.type_agrement_id +WHERE + 1 = OSE_WORKFLOW.match_intervenant(a.intervenant_id) + +UNION ALL + +SELECT + \'CLOTURE_REALISE\' etape_code, + c.annee_id annee_id, + c.intervenant_id intervenant_id, + null structure_id, + 1 objectif, + c.cloture realisation +FROM + tbl_cloture_realise c +WHERE + c.peut_cloturer_saisie = 1 + AND 1 = OSE_WORKFLOW.match_intervenant(c.intervenant_id) + +UNION ALL + +SELECT + e.code etape_code, + mep.annee_id annee_id, + mep.intervenant_id intervenant_id, + mep.structure_id structure_id, + CASE + WHEN e.code = \'DEMANDE_MEP\' THEN mep.sap + WHEN e.code = \'SAISIE_MEP\' THEN mep.dmep + END objectif, + CASE + WHEN e.code = \'DEMANDE_MEP\' THEN mep.dmep + WHEN e.code = \'SAISIE_MEP\' THEN mep.mep + END realisation +FROM + mep + JOIN ( + SELECT \'DEMANDE_MEP\' code FROM dual + UNION SELECT \'SAISIE_MEP\' code FROM dual + ) e ON ( + (e.code = \'DEMANDE_MEP\' AND mep.sap > 0) + OR (e.code = \'SAISIE_MEP\' AND mep.dmep > 0) + ) + + +UNION ALL + +SELECT + \'CONTRAT\' etape_code, + annee_id annee_id, + intervenant_id intervenant_id, + structure_id structure_id, + nbvh objectif, + edite realisation +FROM + tbl_contrat c +WHERE + peut_avoir_contrat = 1 + AND nbvh > 0 + AND 1 = OSE_WORKFLOW.match_intervenant(c.intervenant_id)', + ), + 'V_TOTAL_DEMANDE_MEP_STRUCTURE' => + array ( + 'name' => 'V_TOTAL_DEMANDE_MEP_STRUCTURE', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_TOTAL_DEMANDE_MEP_STRUCTURE AS +with mep as ( + -- enseignements + select + fr.intervenant_id, + nvl(ep.structure_id, i.structure_id) structure_id, + nvl(mep.heures, 0) mep_heures + from mise_en_paiement mep + join formule_resultat_service frs on mep.formule_res_service_id = frs.id --and mep.date_mise_en_paiement is null -- date_mise_en_paiement is null <=> demande + join formule_resultat fr on frs.formule_resultat_id = fr.id + join intervenant i on fr.intervenant_id = i.id + join service s on frs.service_id = s.id + left join element_pedagogique ep on s.element_pedagogique_id = ep.id and ep.histo_destruction IS NULL + where mep.histo_destruction IS NULL + union all + -- referentiel + select + fr.intervenant_id, + s.structure_id, + nvl(mep.heures, 0) mep_heures + from mise_en_paiement mep + join formule_resultat_service_ref frs on mep.formule_res_service_ref_id = frs.id --and mep.date_mise_en_paiement is null -- date_mise_en_paiement is null <=> demande + join formule_resultat fr on frs.formule_resultat_id = fr.id + join intervenant i on fr.intervenant_id = i.id + join service_referentiel s on frs.service_referentiel_id = s.id + where mep.histo_destruction IS NULL +) +select intervenant_id, structure_id, sum(nvl(mep_heures, 0)) total_heures_mep from mep +group by intervenant_id, structure_id', + ), + 'V_VALIDATION_MISE_EN_PAIEMENT' => + array ( + 'name' => 'V_VALIDATION_MISE_EN_PAIEMENT', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_VALIDATION_MISE_EN_PAIEMENT AS +SELECT + vvh.validation_id, + mep.id mise_en_paiement_id +FROM + validation_vol_horaire vvh + JOIN volume_horaire vh ON vh.id = vvh.volume_horaire_id + JOIN formule_resultat_service frs ON frs.service_id = vh.service_id + JOIN mise_en_paiement mep ON mep.formule_res_service_id = frs.id + +UNION + +SELECT + vvh.validation_id, + mep.id mise_en_paiement_id +FROM + validation_vol_horaire_ref vvh + JOIN volume_horaire_ref vh ON vh.id = vvh.volume_horaire_ref_id + JOIN formule_resultat_service_ref frs ON frs.service_referentiel_id = vh.service_referentiel_id + JOIN mise_en_paiement mep ON mep.formule_res_service_ref_id = frs.id', + ), + 'V_VOLUME_HORAIRE_ETAT' => + array ( + 'name' => 'V_VOLUME_HORAIRE_ETAT', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_VOLUME_HORAIRE_ETAT AS +SELECT + vh.id volume_horaire_id, + evh.id etat_volume_horaire_id +FROM + volume_horaire vh + LEFT JOIN contrat c ON c.id = vh.contrat_id AND c.histo_destruction IS NULL + LEFT JOIN validation cv ON cv.id = c.validation_id AND cv.histo_destruction IS NULL + JOIN etat_volume_horaire evh ON evh.code = CASE + WHEN c.date_retour_signe IS NOT NULL THEN \'contrat-signe\' + WHEN cv.id IS NOT NULL THEN \'contrat-edite\' + WHEN vh.auto_validation = 1 OR EXISTS( + SELECT * FROM validation v JOIN validation_vol_horaire vvh ON vvh.validation_id = v.id + WHERE vvh.volume_horaire_id = vh.id AND v.histo_destruction IS NULL + ) THEN \'valide\' + ELSE \'saisi\' + END', + ), + 'V_VOLUME_HORAIRE_REF_ETAT' => + array ( + 'name' => 'V_VOLUME_HORAIRE_REF_ETAT', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_VOLUME_HORAIRE_REF_ETAT AS +SELECT + vhr.id volume_horaire_ref_id, + evh.id etat_volume_horaire_id +FROM + volume_horaire_ref vhr + JOIN etat_volume_horaire evh ON evh.code = CASE + WHEN vhr.auto_validation = 1 OR EXISTS( + SELECT * FROM validation v JOIN validation_vol_horaire_ref vvhr ON vvhr.validation_id = v.id + WHERE vvhr.volume_horaire_ref_id = vhr.id AND v.histo_destruction IS NULL + ) THEN \'valide\' + ELSE \'saisi\' + END', + ), + 'V_VOL_HORAIRE_ETAT_MULTI' => + array ( + 'name' => 'V_VOL_HORAIRE_ETAT_MULTI', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_VOL_HORAIRE_ETAT_MULTI AS +select vh.id VOLUME_HORAIRE_ID, evh.id ETAT_VOLUME_HORAIRE_ID + from volume_horaire vh + join service s on s.id = vh.service_id and s.histo_destruction IS NULL + join etat_volume_horaire evh on evh.code = \'saisi\' + where vh.histo_destruction IS NULL +union all + select vh.id, evh.id + from volume_horaire vh + join service s on s.id = vh.service_id and s.histo_destruction IS NULL + join etat_volume_horaire evh on evh.code = \'valide\' + where vh.histo_destruction IS NULL + and EXISTS( + SELECT * FROM validation v JOIN validation_vol_horaire vvh ON vvh.validation_id = v.id + WHERE vvh.volume_horaire_id = vh.id AND v.histo_destruction IS NULL + ) OR vh.auto_validation = 1 +union all + select vh.id, evh.id + from volume_horaire vh + join service s on s.id = vh.service_id and s.histo_destruction IS NULL + join contrat c on vh.contrat_id = c.id and c.histo_destruction IS NULL + join etat_volume_horaire evh on evh.code = \'contrat-edite\' + where vh.histo_destruction IS NULL +union all + select vh.id, evh.id + from volume_horaire vh + join service s on s.id = vh.service_id and s.histo_destruction IS NULL + join contrat c on vh.contrat_id = c.id and c.histo_destruction IS NULL and c.date_retour_signe is not null + join etat_volume_horaire evh on evh.code = \'contrat-signe\' + where vh.histo_destruction IS NULL', + ), + 'V_VOL_HORAIRE_REF_ETAT_MULTI' => + array ( + 'name' => 'V_VOL_HORAIRE_REF_ETAT_MULTI', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_VOL_HORAIRE_REF_ETAT_MULTI AS +select vh.id VOLUME_HORAIRE_REF_ID, evh.id ETAT_VOLUME_HORAIRE_ID + from volume_horaire_ref vh + join service_referentiel s on s.id = vh.service_referentiel_id and s.histo_destruction IS NULL + join etat_volume_horaire evh on evh.code = \'saisi\' + where vh.histo_destruction IS NULL +union all + select vh.id, evh.id + from volume_horaire_ref vh + join service_referentiel s on s.id = vh.service_referentiel_id and s.histo_destruction IS NULL + join etat_volume_horaire evh on evh.code = \'valide\' + where vh.histo_destruction IS NULL + and vh.auto_validation=1 OR EXISTS( + SELECT * FROM validation v JOIN validation_vol_horaire_ref vvh ON vvh.validation_id = v.id + WHERE vvh.volume_horaire_ref_id = vh.id AND v.histo_destruction IS NULL + )', + ), + 'V_WORKFLOW_ETAPE_PERTINENTE' => + array ( + 'name' => 'V_WORKFLOW_ETAPE_PERTINENTE', + 'definition' => 'CREATE OR REPLACE FORCE VIEW V_WORKFLOW_ETAPE_PERTINENTE AS +WITH peut_pj AS ( + SELECT DISTINCT + statut_intervenant_id, + 1 tem + FROM + type_piece_jointe_statut tpjs + WHERE + tpjs.histo_destruction IS NULL +), +peut_agr AS ( + SELECT + tas.statut_intervenant_id, + ta.code, + tas.premier_recrutement + FROM + type_agrement_statut tas + JOIN type_agrement ta ON ta.id = tas.type_agrement_id + WHERE + tas.histo_destruction IS NULL +) +SELECT + i.annee_id annee_id, + i.id intervenant_id, + e.code etape_code +FROM + intervenant i + JOIN statut_intervenant si ON si.id = i.statut_id + LEFT JOIN peut_pj ON peut_pj.statut_intervenant_id = si.id + LEFT JOIN peut_agr peut_cr ON peut_cr.code = \'CONSEIL_RESTREINT\' AND peut_cr.statut_intervenant_id = si.id AND (peut_cr.premier_recrutement IS NULL OR NVL(i.premier_recrutement,0) = peut_cr.premier_recrutement) + LEFT JOIN peut_agr peut_ca ON peut_ca.code = \'CONSEIL_ACADEMIQUE\' AND peut_ca.statut_intervenant_id = si.id AND (peut_ca.premier_recrutement IS NULL OR NVL(i.premier_recrutement,0) = peut_ca.premier_recrutement) + JOIN wf_etape e ON 1 = CASE e.code + + WHEN \'DONNEES_PERSO_SAISIE\' THEN + si.peut_saisir_dossier + + WHEN \'SERVICE_SAISIE\' THEN + CASE WHEN si.peut_saisir_service + si.peut_saisir_referentiel = 0 THEN 0 ELSE 1 END + + WHEN \'PJ_SAISIE\' THEN + peut_pj.tem + + WHEN \'PJ_VALIDATION\' THEN + peut_pj.tem + + WHEN \'DONNEES_PERSO_VALIDATION\' THEN + si.peut_saisir_dossier + + WHEN \'SERVICE_VALIDATION\' THEN + si.peut_saisir_service + + WHEN \'REFERENTIEL_VALIDATION\' THEN + si.peut_saisir_referentiel + + WHEN \'CONSEIL_RESTREINT\' THEN + CASE WHEN peut_cr.code IS NULL THEN 0 ELSE 1 END + + WHEN \'CONSEIL_ACADEMIQUE\' THEN + CASE WHEN peut_ca.code IS NULL THEN 0 ELSE 1 END + + WHEN \'CONTRAT\' THEN + si.peut_avoir_contrat + + WHEN \'SERVICE_SAISIE_REALISE\' THEN + CASE WHEN si.peut_saisir_service + si.peut_saisir_referentiel = 0 THEN 0 ELSE 1 END + + WHEN \'CLOTURE_REALISE\' THEN + si.peut_cloturer_saisie + + WHEN \'SERVICE_VALIDATION_REALISE\' THEN + si.peut_saisir_service + + WHEN \'REFERENTIEL_VALIDATION_REALISE\' THEN + si.peut_saisir_referentiel + + WHEN \'DEMANDE_MEP\' THEN + CASE WHEN si.peut_saisir_service + si.peut_saisir_referentiel = 0 THEN 0 ELSE 1 END + + WHEN \'SAISIE_MEP\' THEN + CASE WHEN si.peut_saisir_service + si.peut_saisir_referentiel = 0 THEN 0 ELSE 1 END + + END +WHERE + i.histo_destruction IS NULL', + ), + ), + 'BddAdmin\\Ddl\\DdlMaterializedView' => + array ( + 'TBL_NOEUD' => + array ( + 'name' => 'TBL_NOEUD', + 'definition' => 'SELECT + n.id noeud_id, + en.id noeud_etape_id, + n.code code, + n.libelle libelle, + n.annee_id annee_id, + n.etape_id etape_id, + n.element_pedagogique_id element_pedagogique_id, + etp.id element_pedagogique_etape_id, + n.structure_id structure_id, + tf.groupe_id groupe_type_formation_id +FROM + noeud n + LEFT JOIN element_pedagogique ep ON ep.id = n.element_pedagogique_id + LEFT JOIN etape etp ON etp.id = COALESCE(n.etape_id,ep.etape_id) + LEFT JOIN type_formation tf ON tf.id = etp.type_formation_id + LEFT JOIN noeud en ON en.etape_id = etp.id +WHERE + n.histo_destruction IS NULL', + ), + ), + 'BddAdmin\\Ddl\\DdlRefConstraint' => + array ( + 'ADRESSE_INTERVENANT_HCFK' => + array ( + 'name' => 'ADRESSE_INTERVENANT_HCFK', + 'table' => 'ADRESSE_INTERVENANT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'ADRESSE_INTERVENANT_HDFK' => + array ( + 'name' => 'ADRESSE_INTERVENANT_HDFK', + 'table' => 'ADRESSE_INTERVENANT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'ADRESSE_INTERVENANT_HMFK' => + array ( + 'name' => 'ADRESSE_INTERVENANT_HMFK', + 'table' => 'ADRESSE_INTERVENANT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'ADRESSE_INTERVENANT_SOURCE_FK' => + array ( + 'name' => 'ADRESSE_INTERVENANT_SOURCE_FK', + 'table' => 'ADRESSE_INTERVENANT', + 'rtable' => 'SOURCE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'ADRESSE_STRUCTURE_HCFK' => + array ( + 'name' => 'ADRESSE_STRUCTURE_HCFK', + 'table' => 'ADRESSE_STRUCTURE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'ADRESSE_STRUCTURE_HDFK' => + array ( + 'name' => 'ADRESSE_STRUCTURE_HDFK', + 'table' => 'ADRESSE_STRUCTURE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'ADRESSE_STRUCTURE_HMFK' => + array ( + 'name' => 'ADRESSE_STRUCTURE_HMFK', + 'table' => 'ADRESSE_STRUCTURE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'ADRESSE_STRUCTURE_SOURCE_FK' => + array ( + 'name' => 'ADRESSE_STRUCTURE_SOURCE_FK', + 'table' => 'ADRESSE_STRUCTURE', + 'rtable' => 'SOURCE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'ADRESSE_STRUCTURE_STRUCTURE_FK' => + array ( + 'name' => 'ADRESSE_STRUCTURE_STRUCTURE_FK', + 'table' => 'ADRESSE_STRUCTURE', + 'rtable' => 'STRUCTURE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_ID' => 'ID', + ), + ), + 'AFFECTATION_HCFK' => + array ( + 'name' => 'AFFECTATION_HCFK', + 'table' => 'AFFECTATION', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'AFFECTATION_HDFK' => + array ( + 'name' => 'AFFECTATION_HDFK', + 'table' => 'AFFECTATION', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'AFFECTATION_HMFK' => + array ( + 'name' => 'AFFECTATION_HMFK', + 'table' => 'AFFECTATION', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'AFFECTATION_RECHERCH_SOURCE_FK' => + array ( + 'name' => 'AFFECTATION_RECHERCH_SOURCE_FK', + 'table' => 'AFFECTATION_RECHERCHE', + 'rtable' => 'SOURCE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'AFFECTATION_ROLE_FK' => + array ( + 'name' => 'AFFECTATION_ROLE_FK', + 'table' => 'AFFECTATION', + 'rtable' => 'ROLE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ROLE_ID' => 'ID', + ), + ), + 'AFFECTATION_R_HCFK' => + array ( + 'name' => 'AFFECTATION_R_HCFK', + 'table' => 'AFFECTATION_RECHERCHE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'AFFECTATION_R_HDFK' => + array ( + 'name' => 'AFFECTATION_R_HDFK', + 'table' => 'AFFECTATION_RECHERCHE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'AFFECTATION_R_HMFK' => + array ( + 'name' => 'AFFECTATION_R_HMFK', + 'table' => 'AFFECTATION_RECHERCHE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'AFFECTATION_R_INTERVENANT_FK' => + array ( + 'name' => 'AFFECTATION_R_INTERVENANT_FK', + 'table' => 'AFFECTATION_RECHERCHE', + 'rtable' => 'INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'INTERVENANT_ID' => 'ID', + ), + ), + 'AFFECTATION_R_STRUCTURE_FK' => + array ( + 'name' => 'AFFECTATION_R_STRUCTURE_FK', + 'table' => 'AFFECTATION_RECHERCHE', + 'rtable' => 'STRUCTURE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_ID' => 'ID', + ), + ), + 'AFFECTATION_SOURCE_FK' => + array ( + 'name' => 'AFFECTATION_SOURCE_FK', + 'table' => 'AFFECTATION', + 'rtable' => 'SOURCE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'AFFECTATION_STRUCTURE_FK' => + array ( + 'name' => 'AFFECTATION_STRUCTURE_FK', + 'table' => 'AFFECTATION', + 'rtable' => 'STRUCTURE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_ID' => 'ID', + ), + ), + 'AFFECTATION_UTILISATEUR_FK' => + array ( + 'name' => 'AFFECTATION_UTILISATEUR_FK', + 'table' => 'AFFECTATION', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'UTILISATEUR_ID' => 'ID', + ), + ), + 'AGREMENT_HCFK' => + array ( + 'name' => 'AGREMENT_HCFK', + 'table' => 'AGREMENT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'AGREMENT_HDFK' => + array ( + 'name' => 'AGREMENT_HDFK', + 'table' => 'AGREMENT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'AGREMENT_HMFK' => + array ( + 'name' => 'AGREMENT_HMFK', + 'table' => 'AGREMENT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'AGREMENT_INTERVENANT_FK' => + array ( + 'name' => 'AGREMENT_INTERVENANT_FK', + 'table' => 'AGREMENT', + 'rtable' => 'INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'INTERVENANT_ID' => 'ID', + ), + ), + 'AGREMENT_STRUCTURE_FK' => + array ( + 'name' => 'AGREMENT_STRUCTURE_FK', + 'table' => 'AGREMENT', + 'rtable' => 'STRUCTURE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_ID' => 'ID', + ), + ), + 'AGREMENT_TYPE_AGREMENT_FK' => + array ( + 'name' => 'AGREMENT_TYPE_AGREMENT_FK', + 'table' => 'AGREMENT', + 'rtable' => 'TYPE_AGREMENT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_AGREMENT_ID' => 'ID', + ), + ), + 'AII_FK' => + array ( + 'name' => 'AII_FK', + 'table' => 'ADRESSE_INTERVENANT', + 'rtable' => 'INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'INTERVENANT_ID' => 'ID', + ), + ), + 'CAMPAGNE_SAISIE_ANNEE_FK' => + array ( + 'name' => 'CAMPAGNE_SAISIE_ANNEE_FK', + 'table' => 'CAMPAGNE_SAISIE', + 'rtable' => 'ANNEE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_ID' => 'ID', + ), + ), + 'CCEP_CENTRE_COUT_FK' => + array ( + 'name' => 'CCEP_CENTRE_COUT_FK', + 'table' => 'CENTRE_COUT_EP', + 'rtable' => 'CENTRE_COUT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'CENTRE_COUT_ID' => 'ID', + ), + ), + 'CCEP_ELEMENT_PEDAGOGIQUE_FK' => + array ( + 'name' => 'CCEP_ELEMENT_PEDAGOGIQUE_FK', + 'table' => 'CENTRE_COUT_EP', + 'rtable' => 'ELEMENT_PEDAGOGIQUE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ELEMENT_PEDAGOGIQUE_ID' => 'ID', + ), + ), + 'CCEP_TYPE_HEURES_FK' => + array ( + 'name' => 'CCEP_TYPE_HEURES_FK', + 'table' => 'CENTRE_COUT_EP', + 'rtable' => 'TYPE_HEURES', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_HEURES_ID' => 'ID', + ), + ), + 'CCS_CENTRE_COUT_FK' => + array ( + 'name' => 'CCS_CENTRE_COUT_FK', + 'table' => 'CENTRE_COUT_STRUCTURE', + 'rtable' => 'CENTRE_COUT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'CENTRE_COUT_ID' => 'ID', + ), + ), + 'CCS_STRUCTURE_FK' => + array ( + 'name' => 'CCS_STRUCTURE_FK', + 'table' => 'CENTRE_COUT_STRUCTURE', + 'rtable' => 'STRUCTURE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_ID' => 'ID', + ), + ), + 'CC_ACTIVITE_HCFK' => + array ( + 'name' => 'CC_ACTIVITE_HCFK', + 'table' => 'CC_ACTIVITE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'CC_ACTIVITE_HDFK' => + array ( + 'name' => 'CC_ACTIVITE_HDFK', + 'table' => 'CC_ACTIVITE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'CC_ACTIVITE_HMFK' => + array ( + 'name' => 'CC_ACTIVITE_HMFK', + 'table' => 'CC_ACTIVITE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'CENTRE_COUT_ACTIVITE_FK' => + array ( + 'name' => 'CENTRE_COUT_ACTIVITE_FK', + 'table' => 'CENTRE_COUT', + 'rtable' => 'CC_ACTIVITE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ACTIVITE_ID' => 'ID', + ), + ), + 'CENTRE_COUT_CENTRE_COUT_FK' => + array ( + 'name' => 'CENTRE_COUT_CENTRE_COUT_FK', + 'table' => 'CENTRE_COUT', + 'rtable' => 'CENTRE_COUT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'PARENT_ID' => 'ID', + ), + ), + 'CENTRE_COUT_EP_HCFK' => + array ( + 'name' => 'CENTRE_COUT_EP_HCFK', + 'table' => 'CENTRE_COUT_EP', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'CENTRE_COUT_EP_HDFK' => + array ( + 'name' => 'CENTRE_COUT_EP_HDFK', + 'table' => 'CENTRE_COUT_EP', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'CENTRE_COUT_EP_HMFK' => + array ( + 'name' => 'CENTRE_COUT_EP_HMFK', + 'table' => 'CENTRE_COUT_EP', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'CENTRE_COUT_EP_SOURCE_FK' => + array ( + 'name' => 'CENTRE_COUT_EP_SOURCE_FK', + 'table' => 'CENTRE_COUT_EP', + 'rtable' => 'SOURCE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'CENTRE_COUT_HCFK' => + array ( + 'name' => 'CENTRE_COUT_HCFK', + 'table' => 'CENTRE_COUT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'CENTRE_COUT_HDFK' => + array ( + 'name' => 'CENTRE_COUT_HDFK', + 'table' => 'CENTRE_COUT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'CENTRE_COUT_HMFK' => + array ( + 'name' => 'CENTRE_COUT_HMFK', + 'table' => 'CENTRE_COUT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'CENTRE_COUT_SOURCE_FK' => + array ( + 'name' => 'CENTRE_COUT_SOURCE_FK', + 'table' => 'CENTRE_COUT', + 'rtable' => 'SOURCE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'CENTRE_COUT_STRUCTURE_HCFK' => + array ( + 'name' => 'CENTRE_COUT_STRUCTURE_HCFK', + 'table' => 'CENTRE_COUT_STRUCTURE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'CENTRE_COUT_STRUCTURE_HDFK' => + array ( + 'name' => 'CENTRE_COUT_STRUCTURE_HDFK', + 'table' => 'CENTRE_COUT_STRUCTURE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'CENTRE_COUT_STRUCTURE_HMFK' => + array ( + 'name' => 'CENTRE_COUT_STRUCTURE_HMFK', + 'table' => 'CENTRE_COUT_STRUCTURE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'CENTRE_COUT_STRUCTUR_SOURCE_FK' => + array ( + 'name' => 'CENTRE_COUT_STRUCTUR_SOURCE_FK', + 'table' => 'CENTRE_COUT_STRUCTURE', + 'rtable' => 'SOURCE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'CENTRE_COUT_TYPE_RESSOURCE_FK' => + array ( + 'name' => 'CENTRE_COUT_TYPE_RESSOURCE_FK', + 'table' => 'CENTRE_COUT', + 'rtable' => 'TYPE_RESSOURCE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_RESSOURCE_ID' => 'ID', + ), + ), + 'CHEMIN_PEDAGOGIQUE_ETAPE_FK' => + array ( + 'name' => 'CHEMIN_PEDAGOGIQUE_ETAPE_FK', + 'table' => 'CHEMIN_PEDAGOGIQUE', + 'rtable' => 'ETAPE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ETAPE_ID' => 'ID', + ), + ), + 'CHEMIN_PEDAGOGIQUE_HCFK' => + array ( + 'name' => 'CHEMIN_PEDAGOGIQUE_HCFK', + 'table' => 'CHEMIN_PEDAGOGIQUE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'CHEMIN_PEDAGOGIQUE_HDFK' => + array ( + 'name' => 'CHEMIN_PEDAGOGIQUE_HDFK', + 'table' => 'CHEMIN_PEDAGOGIQUE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'CHEMIN_PEDAGOGIQUE_HMFK' => + array ( + 'name' => 'CHEMIN_PEDAGOGIQUE_HMFK', + 'table' => 'CHEMIN_PEDAGOGIQUE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'CHEMIN_PEDAGOGIQUE_SOURCE_FK' => + array ( + 'name' => 'CHEMIN_PEDAGOGIQUE_SOURCE_FK', + 'table' => 'CHEMIN_PEDAGOGIQUE', + 'rtable' => 'SOURCE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'CONTRAT_CONTRAT_FK' => + array ( + 'name' => 'CONTRAT_CONTRAT_FK', + 'table' => 'CONTRAT', + 'rtable' => 'CONTRAT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'CONTRAT_ID' => 'ID', + ), + ), + 'CONTRAT_FICHIER_FFK' => + array ( + 'name' => 'CONTRAT_FICHIER_FFK', + 'table' => 'CONTRAT_FICHIER', + 'rtable' => 'FICHIER', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'FICHIER_ID' => 'ID', + ), + ), + 'CONTRAT_FICHIER_FK' => + array ( + 'name' => 'CONTRAT_FICHIER_FK', + 'table' => 'CONTRAT_FICHIER', + 'rtable' => 'CONTRAT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'CONTRAT_ID' => 'ID', + ), + ), + 'CONTRAT_HCFK' => + array ( + 'name' => 'CONTRAT_HCFK', + 'table' => 'CONTRAT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'CONTRAT_HDFK' => + array ( + 'name' => 'CONTRAT_HDFK', + 'table' => 'CONTRAT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'CONTRAT_HMFK' => + array ( + 'name' => 'CONTRAT_HMFK', + 'table' => 'CONTRAT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'CONTRAT_INTERVENANT_FK' => + array ( + 'name' => 'CONTRAT_INTERVENANT_FK', + 'table' => 'CONTRAT', + 'rtable' => 'INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'INTERVENANT_ID' => 'ID', + ), + ), + 'CONTRAT_STRUCTURE_FK' => + array ( + 'name' => 'CONTRAT_STRUCTURE_FK', + 'table' => 'CONTRAT', + 'rtable' => 'STRUCTURE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_ID' => 'ID', + ), + ), + 'CONTRAT_TYPE_CONTRAT_FK' => + array ( + 'name' => 'CONTRAT_TYPE_CONTRAT_FK', + 'table' => 'CONTRAT', + 'rtable' => 'TYPE_CONTRAT', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'TYPE_CONTRAT_ID' => 'ID', + ), + ), + 'CONTRAT_VALIDATION_FK' => + array ( + 'name' => 'CONTRAT_VALIDATION_FK', + 'table' => 'CONTRAT', + 'rtable' => 'VALIDATION', + 'delete_rule' => 'SET NULL', + 'index' => NULL, + 'columns' => + array ( + 'VALIDATION_ID' => 'ID', + ), + ), + 'CORPS_HCFK' => + array ( + 'name' => 'CORPS_HCFK', + 'table' => 'CORPS', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'CORPS_HDFK' => + array ( + 'name' => 'CORPS_HDFK', + 'table' => 'CORPS', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'CORPS_HMFK' => + array ( + 'name' => 'CORPS_HMFK', + 'table' => 'CORPS', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'CORPS_SOURCE_FK' => + array ( + 'name' => 'CORPS_SOURCE_FK', + 'table' => 'CORPS', + 'rtable' => 'SOURCE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'CPEP_FK' => + array ( + 'name' => 'CPEP_FK', + 'table' => 'CHEMIN_PEDAGOGIQUE', + 'rtable' => 'ELEMENT_PEDAGOGIQUE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ELEMENT_PEDAGOGIQUE_ID' => 'ID', + ), + ), + 'CS_TYPE_INTERVENANT_FK' => + array ( + 'name' => 'CS_TYPE_INTERVENANT_FK', + 'table' => 'CAMPAGNE_SAISIE', + 'rtable' => 'TYPE_INTERVENANT', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'TYPE_INTERVENANT_ID' => 'ID', + ), + ), + 'CS_TYPE_VOLUME_HORAIRE_FK' => + array ( + 'name' => 'CS_TYPE_VOLUME_HORAIRE_FK', + 'table' => 'CAMPAGNE_SAISIE', + 'rtable' => 'TYPE_VOLUME_HORAIRE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'TYPE_VOLUME_HORAIRE_ID' => 'ID', + ), + ), + 'DEPARTEMENT_HCFK' => + array ( + 'name' => 'DEPARTEMENT_HCFK', + 'table' => 'DEPARTEMENT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'DEPARTEMENT_HDFK' => + array ( + 'name' => 'DEPARTEMENT_HDFK', + 'table' => 'DEPARTEMENT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'DEPARTEMENT_HMFK' => + array ( + 'name' => 'DEPARTEMENT_HMFK', + 'table' => 'DEPARTEMENT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'DEPARTEMENT_SOURCE_FK' => + array ( + 'name' => 'DEPARTEMENT_SOURCE_FK', + 'table' => 'DEPARTEMENT', + 'rtable' => 'SOURCE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'DISCIPLINE_HCFK' => + array ( + 'name' => 'DISCIPLINE_HCFK', + 'table' => 'DISCIPLINE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'DISCIPLINE_HDFK' => + array ( + 'name' => 'DISCIPLINE_HDFK', + 'table' => 'DISCIPLINE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'DISCIPLINE_HMFK' => + array ( + 'name' => 'DISCIPLINE_HMFK', + 'table' => 'DISCIPLINE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'DISCIPLINE_SOURCE_FK' => + array ( + 'name' => 'DISCIPLINE_SOURCE_FK', + 'table' => 'DISCIPLINE', + 'rtable' => 'SOURCE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'DOMAINE_FONCTIONNEL_HCFK' => + array ( + 'name' => 'DOMAINE_FONCTIONNEL_HCFK', + 'table' => 'DOMAINE_FONCTIONNEL', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'DOMAINE_FONCTIONNEL_HDFK' => + array ( + 'name' => 'DOMAINE_FONCTIONNEL_HDFK', + 'table' => 'DOMAINE_FONCTIONNEL', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'DOMAINE_FONCTIONNEL_HMFK' => + array ( + 'name' => 'DOMAINE_FONCTIONNEL_HMFK', + 'table' => 'DOMAINE_FONCTIONNEL', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'DOMAINE_FONCTIONNEL_SOURCE_FK' => + array ( + 'name' => 'DOMAINE_FONCTIONNEL_SOURCE_FK', + 'table' => 'DOMAINE_FONCTIONNEL', + 'rtable' => 'SOURCE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'DOSSIER_D_FK' => + array ( + 'name' => 'DOSSIER_D_FK', + 'table' => 'DOSSIER', + 'rtable' => 'DEPARTEMENT', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'DEPT_NAISSANCE_ID' => 'ID', + ), + ), + 'DOSSIER_HCFK' => + array ( + 'name' => 'DOSSIER_HCFK', + 'table' => 'DOSSIER', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'DOSSIER_HDFK' => + array ( + 'name' => 'DOSSIER_HDFK', + 'table' => 'DOSSIER', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'DOSSIER_HMFK' => + array ( + 'name' => 'DOSSIER_HMFK', + 'table' => 'DOSSIER', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'DOSSIER_INTERVENANT_FK' => + array ( + 'name' => 'DOSSIER_INTERVENANT_FK', + 'table' => 'DOSSIER', + 'rtable' => 'INTERVENANT', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'INTERVENANT_ID' => 'ID', + ), + ), + 'DOSSIER_P_FK' => + array ( + 'name' => 'DOSSIER_P_FK', + 'table' => 'DOSSIER', + 'rtable' => 'PAYS', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'PAYS_NAISSANCE_ID' => 'ID', + ), + ), + 'DOTATION_ANNEE_FK' => + array ( + 'name' => 'DOTATION_ANNEE_FK', + 'table' => 'DOTATION', + 'rtable' => 'ANNEE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_ID' => 'ID', + ), + ), + 'DOTATION_HCFK' => + array ( + 'name' => 'DOTATION_HCFK', + 'table' => 'DOTATION', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'DOTATION_HDFK' => + array ( + 'name' => 'DOTATION_HDFK', + 'table' => 'DOTATION', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'DOTATION_HMFK' => + array ( + 'name' => 'DOTATION_HMFK', + 'table' => 'DOTATION', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'DOTATION_STRUCTURE_FK' => + array ( + 'name' => 'DOTATION_STRUCTURE_FK', + 'table' => 'DOTATION', + 'rtable' => 'STRUCTURE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_ID' => 'ID', + ), + ), + 'DOTATION_TYPE_RESSOURCE_FK' => + array ( + 'name' => 'DOTATION_TYPE_RESSOURCE_FK', + 'table' => 'DOTATION', + 'rtable' => 'TYPE_RESSOURCE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'TYPE_RESSOURCE_ID' => 'ID', + ), + ), + 'DS_MDS_FK' => + array ( + 'name' => 'DS_MDS_FK', + 'table' => 'MODIFICATION_SERVICE_DU', + 'rtable' => 'MOTIF_MODIFICATION_SERVICE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'MOTIF_ID' => 'ID', + ), + ), + 'EFFECTIFS_ELEMENT_FK' => + array ( + 'name' => 'EFFECTIFS_ELEMENT_FK', + 'table' => 'EFFECTIFS', + 'rtable' => 'ELEMENT_PEDAGOGIQUE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ELEMENT_PEDAGOGIQUE_ID' => 'ID', + ), + ), + 'EFFECTIFS_FK' => + array ( + 'name' => 'EFFECTIFS_FK', + 'table' => 'EFFECTIFS', + 'rtable' => 'ANNEE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_ID' => 'ID', + ), + ), + 'EFFECTIFS_HCFK' => + array ( + 'name' => 'EFFECTIFS_HCFK', + 'table' => 'EFFECTIFS', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'EFFECTIFS_HDFK' => + array ( + 'name' => 'EFFECTIFS_HDFK', + 'table' => 'EFFECTIFS', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'EFFECTIFS_HMFK' => + array ( + 'name' => 'EFFECTIFS_HMFK', + 'table' => 'EFFECTIFS', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'EFFECTIFS_SOURCE_FK' => + array ( + 'name' => 'EFFECTIFS_SOURCE_FK', + 'table' => 'EFFECTIFS', + 'rtable' => 'SOURCE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'ELEMENT_MODULATEUR_HCFK' => + array ( + 'name' => 'ELEMENT_MODULATEUR_HCFK', + 'table' => 'ELEMENT_MODULATEUR', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'ELEMENT_MODULATEUR_HDFK' => + array ( + 'name' => 'ELEMENT_MODULATEUR_HDFK', + 'table' => 'ELEMENT_MODULATEUR', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'ELEMENT_MODULATEUR_HMFK' => + array ( + 'name' => 'ELEMENT_MODULATEUR_HMFK', + 'table' => 'ELEMENT_MODULATEUR', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'ELEMENT_PEDAGOGIQUE_ANNEE_FK' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_ANNEE_FK', + 'table' => 'ELEMENT_PEDAGOGIQUE', + 'rtable' => 'ANNEE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_ID' => 'ID', + ), + ), + 'ELEMENT_PEDAGOGIQUE_ETAPE_FK' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_ETAPE_FK', + 'table' => 'ELEMENT_PEDAGOGIQUE', + 'rtable' => 'ETAPE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'ETAPE_ID' => 'ID', + ), + ), + 'ELEMENT_PEDAGOGIQUE_HCFK' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_HCFK', + 'table' => 'ELEMENT_PEDAGOGIQUE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'ELEMENT_PEDAGOGIQUE_HDFK' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_HDFK', + 'table' => 'ELEMENT_PEDAGOGIQUE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'ELEMENT_PEDAGOGIQUE_HMFK' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_HMFK', + 'table' => 'ELEMENT_PEDAGOGIQUE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'ELEMENT_PEDAGOGIQUE_PERIODE_FK' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_PERIODE_FK', + 'table' => 'ELEMENT_PEDAGOGIQUE', + 'rtable' => 'PERIODE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'PERIODE_ID' => 'ID', + ), + ), + 'ELEMENT_PEDAGOGIQUE_SOURCE_FK' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_SOURCE_FK', + 'table' => 'ELEMENT_PEDAGOGIQUE', + 'rtable' => 'SOURCE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'ELEMENT_TAUX_REGIMES_HCFK' => + array ( + 'name' => 'ELEMENT_TAUX_REGIMES_HCFK', + 'table' => 'ELEMENT_TAUX_REGIMES', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'ELEMENT_TAUX_REGIMES_HDFK' => + array ( + 'name' => 'ELEMENT_TAUX_REGIMES_HDFK', + 'table' => 'ELEMENT_TAUX_REGIMES', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'ELEMENT_TAUX_REGIMES_HMFK' => + array ( + 'name' => 'ELEMENT_TAUX_REGIMES_HMFK', + 'table' => 'ELEMENT_TAUX_REGIMES', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'ELEMENT_TAUX_REGIMES_SOURCE_FK' => + array ( + 'name' => 'ELEMENT_TAUX_REGIMES_SOURCE_FK', + 'table' => 'ELEMENT_TAUX_REGIMES', + 'rtable' => 'SOURCE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'EM_ELEMENT_PEDAGOGIQUE_FK' => + array ( + 'name' => 'EM_ELEMENT_PEDAGOGIQUE_FK', + 'table' => 'ELEMENT_MODULATEUR', + 'rtable' => 'ELEMENT_PEDAGOGIQUE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ELEMENT_ID' => 'ID', + ), + ), + 'EM_MODULATEUR_FK' => + array ( + 'name' => 'EM_MODULATEUR_FK', + 'table' => 'ELEMENT_MODULATEUR', + 'rtable' => 'MODULATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'MODULATEUR_ID' => 'ID', + ), + ), + 'EPS_FK' => + array ( + 'name' => 'EPS_FK', + 'table' => 'ELEMENT_PEDAGOGIQUE', + 'rtable' => 'STRUCTURE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_ID' => 'ID', + ), + ), + 'EP_DISCIPLINE_FK' => + array ( + 'name' => 'EP_DISCIPLINE_FK', + 'table' => 'ELEMENT_PEDAGOGIQUE', + 'rtable' => 'DISCIPLINE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'DISCIPLINE_ID' => 'ID', + ), + ), + 'ETABLISSEMENT_HCFK' => + array ( + 'name' => 'ETABLISSEMENT_HCFK', + 'table' => 'ETABLISSEMENT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'ETABLISSEMENT_HDFK' => + array ( + 'name' => 'ETABLISSEMENT_HDFK', + 'table' => 'ETABLISSEMENT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'ETABLISSEMENT_HMFK' => + array ( + 'name' => 'ETABLISSEMENT_HMFK', + 'table' => 'ETABLISSEMENT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'ETABLISSEMENT_SOURCE_FK' => + array ( + 'name' => 'ETABLISSEMENT_SOURCE_FK', + 'table' => 'ETABLISSEMENT', + 'rtable' => 'SOURCE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'ETAPE_ANNEE_FK' => + array ( + 'name' => 'ETAPE_ANNEE_FK', + 'table' => 'ETAPE', + 'rtable' => 'ANNEE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_ID' => 'ID', + ), + ), + 'ETAPE_DOMAINE_FONCTIONNEL_FK' => + array ( + 'name' => 'ETAPE_DOMAINE_FONCTIONNEL_FK', + 'table' => 'ETAPE', + 'rtable' => 'DOMAINE_FONCTIONNEL', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'DOMAINE_FONCTIONNEL_ID' => 'ID', + ), + ), + 'ETAPE_HCFK' => + array ( + 'name' => 'ETAPE_HCFK', + 'table' => 'ETAPE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'ETAPE_HDFK' => + array ( + 'name' => 'ETAPE_HDFK', + 'table' => 'ETAPE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'ETAPE_HMFK' => + array ( + 'name' => 'ETAPE_HMFK', + 'table' => 'ETAPE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'ETAPE_SOURCE_FK' => + array ( + 'name' => 'ETAPE_SOURCE_FK', + 'table' => 'ETAPE', + 'rtable' => 'SOURCE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'ETAPE_STRUCTURE_FK' => + array ( + 'name' => 'ETAPE_STRUCTURE_FK', + 'table' => 'ETAPE', + 'rtable' => 'STRUCTURE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_ID' => 'ID', + ), + ), + 'ETAPE_TYPE_FORMATION_FK' => + array ( + 'name' => 'ETAPE_TYPE_FORMATION_FK', + 'table' => 'ETAPE', + 'rtable' => 'TYPE_FORMATION', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'TYPE_FORMATION_ID' => 'ID', + ), + ), + 'ETR_ELEMENT_FK' => + array ( + 'name' => 'ETR_ELEMENT_FK', + 'table' => 'ELEMENT_TAUX_REGIMES', + 'rtable' => 'ELEMENT_PEDAGOGIQUE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ELEMENT_PEDAGOGIQUE_ID' => 'ID', + ), + ), + 'FICHIER_HCFK' => + array ( + 'name' => 'FICHIER_HCFK', + 'table' => 'FICHIER', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'FICHIER_HDFK' => + array ( + 'name' => 'FICHIER_HDFK', + 'table' => 'FICHIER', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'FICHIER_HMFK' => + array ( + 'name' => 'FICHIER_HMFK', + 'table' => 'FICHIER', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'FICHIER_VALID_FK' => + array ( + 'name' => 'FICHIER_VALID_FK', + 'table' => 'FICHIER', + 'rtable' => 'VALIDATION', + 'delete_rule' => 'SET NULL', + 'index' => NULL, + 'columns' => + array ( + 'VALIDATION_ID' => 'ID', + ), + ), + 'FONCTION_REFERENTIEL_HCFK' => + array ( + 'name' => 'FONCTION_REFERENTIEL_HCFK', + 'table' => 'FONCTION_REFERENTIEL', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'FONCTION_REFERENTIEL_HDFK' => + array ( + 'name' => 'FONCTION_REFERENTIEL_HDFK', + 'table' => 'FONCTION_REFERENTIEL', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'FONCTION_REFERENTIEL_HMFK' => + array ( + 'name' => 'FONCTION_REFERENTIEL_HMFK', + 'table' => 'FONCTION_REFERENTIEL', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'FONCTION_REFERENTIEL_SFK' => + array ( + 'name' => 'FONCTION_REFERENTIEL_SFK', + 'table' => 'FONCTION_REFERENTIEL', + 'rtable' => 'STRUCTURE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_ID' => 'ID', + ), + ), + 'FONC_REF_DOMAINE_FONCT_FK' => + array ( + 'name' => 'FONC_REF_DOMAINE_FONCT_FK', + 'table' => 'FONCTION_REFERENTIEL', + 'rtable' => 'DOMAINE_FONCTIONNEL', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'DOMAINE_FONCTIONNEL_ID' => 'ID', + ), + ), + 'FRES_ETAT_VOLUME_HORAIRE_FK' => + array ( + 'name' => 'FRES_ETAT_VOLUME_HORAIRE_FK', + 'table' => 'FORMULE_RESULTAT', + 'rtable' => 'ETAT_VOLUME_HORAIRE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ETAT_VOLUME_HORAIRE_ID' => 'ID', + ), + ), + 'FRES_INTERVENANT_FK' => + array ( + 'name' => 'FRES_INTERVENANT_FK', + 'table' => 'FORMULE_RESULTAT', + 'rtable' => 'INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'INTERVENANT_ID' => 'ID', + ), + ), + 'FRES_TYPE_VOLUME_HORAIRE_FK' => + array ( + 'name' => 'FRES_TYPE_VOLUME_HORAIRE_FK', + 'table' => 'FORMULE_RESULTAT', + 'rtable' => 'TYPE_VOLUME_HORAIRE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_VOLUME_HORAIRE_ID' => 'ID', + ), + ), + 'FRR_FORMULE_RESULTAT_FK' => + array ( + 'name' => 'FRR_FORMULE_RESULTAT_FK', + 'table' => 'FORMULE_RESULTAT_SERVICE_REF', + 'rtable' => 'FORMULE_RESULTAT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'FORMULE_RESULTAT_ID' => 'ID', + ), + ), + 'FRSR_SERVICE_REFERENTIEL_FK' => + array ( + 'name' => 'FRSR_SERVICE_REFERENTIEL_FK', + 'table' => 'FORMULE_RESULTAT_SERVICE_REF', + 'rtable' => 'SERVICE_REFERENTIEL', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'SERVICE_REFERENTIEL_ID' => 'ID', + ), + ), + 'FRS_FORMULE_RESULTAT_FK' => + array ( + 'name' => 'FRS_FORMULE_RESULTAT_FK', + 'table' => 'FORMULE_RESULTAT_SERVICE', + 'rtable' => 'FORMULE_RESULTAT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'FORMULE_RESULTAT_ID' => 'ID', + ), + ), + 'FRS_SERVICE_FK' => + array ( + 'name' => 'FRS_SERVICE_FK', + 'table' => 'FORMULE_RESULTAT_SERVICE', + 'rtable' => 'SERVICE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'SERVICE_ID' => 'ID', + ), + ), + 'FRVHR_FORMULE_RESULTAT_FK' => + array ( + 'name' => 'FRVHR_FORMULE_RESULTAT_FK', + 'table' => 'FORMULE_RESULTAT_VH_REF', + 'rtable' => 'FORMULE_RESULTAT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'FORMULE_RESULTAT_ID' => 'ID', + ), + ), + 'FRVHR_VOLUME_HORAIRE_REF_FK' => + array ( + 'name' => 'FRVHR_VOLUME_HORAIRE_REF_FK', + 'table' => 'FORMULE_RESULTAT_VH_REF', + 'rtable' => 'VOLUME_HORAIRE_REF', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'VOLUME_HORAIRE_REF_ID' => 'ID', + ), + ), + 'FRVH_FORMULE_RESULTAT_FK' => + array ( + 'name' => 'FRVH_FORMULE_RESULTAT_FK', + 'table' => 'FORMULE_RESULTAT_VH', + 'rtable' => 'FORMULE_RESULTAT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'FORMULE_RESULTAT_ID' => 'ID', + ), + ), + 'FRVH_VOLUME_HORAIRE_FK' => + array ( + 'name' => 'FRVH_VOLUME_HORAIRE_FK', + 'table' => 'FORMULE_RESULTAT_VH', + 'rtable' => 'VOLUME_HORAIRE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'VOLUME_HORAIRE_ID' => 'ID', + ), + ), + 'FR_PARENT_FK' => + array ( + 'name' => 'FR_PARENT_FK', + 'table' => 'FONCTION_REFERENTIEL', + 'rtable' => 'FONCTION_REFERENTIEL', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'PARENT_ID' => 'ID', + ), + ), + 'FTI_ANNEE_FK' => + array ( + 'name' => 'FTI_ANNEE_FK', + 'table' => 'FORMULE_TEST_INTERVENANT', + 'rtable' => 'ANNEE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_ID' => 'ID', + ), + ), + 'FTI_ETAT_VOLUME_HORAIRE_FK' => + array ( + 'name' => 'FTI_ETAT_VOLUME_HORAIRE_FK', + 'table' => 'FORMULE_TEST_INTERVENANT', + 'rtable' => 'ETAT_VOLUME_HORAIRE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ETAT_VOLUME_HORAIRE_ID' => 'ID', + ), + ), + 'FTI_FORMULE_FK' => + array ( + 'name' => 'FTI_FORMULE_FK', + 'table' => 'FORMULE_TEST_INTERVENANT', + 'rtable' => 'FORMULE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'FORMULE_ID' => 'ID', + ), + ), + 'FTI_FORMULE_TEST_STRUCTURE_FK' => + array ( + 'name' => 'FTI_FORMULE_TEST_STRUCTURE_FK', + 'table' => 'FORMULE_TEST_INTERVENANT', + 'rtable' => 'FORMULE_TEST_STRUCTURE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_TEST_ID' => 'ID', + ), + ), + 'FTI_TYPE_INTERVENANT_FK' => + array ( + 'name' => 'FTI_TYPE_INTERVENANT_FK', + 'table' => 'FORMULE_TEST_INTERVENANT', + 'rtable' => 'TYPE_INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_INTERVENANT_ID' => 'ID', + ), + ), + 'FTI_TYPE_VOLUME_HORAIRE_FK' => + array ( + 'name' => 'FTI_TYPE_VOLUME_HORAIRE_FK', + 'table' => 'FORMULE_TEST_INTERVENANT', + 'rtable' => 'TYPE_VOLUME_HORAIRE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_VOLUME_HORAIRE_ID' => 'ID', + ), + ), + 'FTVH_FORMULE_TEST_INTERV_FK' => + array ( + 'name' => 'FTVH_FORMULE_TEST_INTERV_FK', + 'table' => 'FORMULE_TEST_VOLUME_HORAIRE', + 'rtable' => 'FORMULE_TEST_INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'INTERVENANT_TEST_ID' => 'ID', + ), + ), + 'FTVH_FORMULE_TEST_STRUCTURE_FK' => + array ( + 'name' => 'FTVH_FORMULE_TEST_STRUCTURE_FK', + 'table' => 'FORMULE_TEST_VOLUME_HORAIRE', + 'rtable' => 'FORMULE_TEST_STRUCTURE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_TEST_ID' => 'ID', + ), + ), + 'GRADE_CORPS_FK' => + array ( + 'name' => 'GRADE_CORPS_FK', + 'table' => 'GRADE', + 'rtable' => 'CORPS', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'CORPS_ID' => 'ID', + ), + ), + 'GRADE_HCFK' => + array ( + 'name' => 'GRADE_HCFK', + 'table' => 'GRADE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'GRADE_HDFK' => + array ( + 'name' => 'GRADE_HDFK', + 'table' => 'GRADE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'GRADE_HMFK' => + array ( + 'name' => 'GRADE_HMFK', + 'table' => 'GRADE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'GRADE_SOURCE_FK' => + array ( + 'name' => 'GRADE_SOURCE_FK', + 'table' => 'GRADE', + 'rtable' => 'SOURCE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'GROUPE_ELEMENT_PEDAGOGIQUE_FK' => + array ( + 'name' => 'GROUPE_ELEMENT_PEDAGOGIQUE_FK', + 'table' => 'GROUPE', + 'rtable' => 'ELEMENT_PEDAGOGIQUE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ELEMENT_PEDAGOGIQUE_ID' => 'ID', + ), + ), + 'GROUPE_HCFK' => + array ( + 'name' => 'GROUPE_HCFK', + 'table' => 'GROUPE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'GROUPE_HDFK' => + array ( + 'name' => 'GROUPE_HDFK', + 'table' => 'GROUPE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'GROUPE_HMFK' => + array ( + 'name' => 'GROUPE_HMFK', + 'table' => 'GROUPE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'GROUPE_TYPE_FORMATION_HCFK' => + array ( + 'name' => 'GROUPE_TYPE_FORMATION_HCFK', + 'table' => 'GROUPE_TYPE_FORMATION', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'GROUPE_TYPE_FORMATION_HDFK' => + array ( + 'name' => 'GROUPE_TYPE_FORMATION_HDFK', + 'table' => 'GROUPE_TYPE_FORMATION', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'GROUPE_TYPE_FORMATION_HMFK' => + array ( + 'name' => 'GROUPE_TYPE_FORMATION_HMFK', + 'table' => 'GROUPE_TYPE_FORMATION', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'GROUPE_TYPE_FORMATIO_SOURCE_FK' => + array ( + 'name' => 'GROUPE_TYPE_FORMATIO_SOURCE_FK', + 'table' => 'GROUPE_TYPE_FORMATION', + 'rtable' => 'SOURCE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'GROUPE_TYPE_INTERVENTION_FK' => + array ( + 'name' => 'GROUPE_TYPE_INTERVENTION_FK', + 'table' => 'GROUPE', + 'rtable' => 'TYPE_INTERVENTION', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'TYPE_INTERVENTION_ID' => 'ID', + ), + ), + 'HSM_INTERVENANT_FK' => + array ( + 'name' => 'HSM_INTERVENANT_FK', + 'table' => 'HISTO_INTERVENANT_SERVICE', + 'rtable' => 'INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'INTERVENANT_ID' => 'ID', + ), + ), + 'HSM_TYPE_VOLUME_HORAIRE_FK' => + array ( + 'name' => 'HSM_TYPE_VOLUME_HORAIRE_FK', + 'table' => 'HISTO_INTERVENANT_SERVICE', + 'rtable' => 'TYPE_VOLUME_HORAIRE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_VOLUME_HORAIRE_ID' => 'ID', + ), + ), + 'HSM_UTILISATEUR_FK' => + array ( + 'name' => 'HSM_UTILISATEUR_FK', + 'table' => 'HISTO_INTERVENANT_SERVICE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'INDIC_DIFF_DOSSIER_INT_FK' => + array ( + 'name' => 'INDIC_DIFF_DOSSIER_INT_FK', + 'table' => 'INDIC_MODIF_DOSSIER', + 'rtable' => 'INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'INTERVENANT_ID' => 'ID', + ), + ), + 'INDIC_MODIF_DOSSIER_HCFK' => + array ( + 'name' => 'INDIC_MODIF_DOSSIER_HCFK', + 'table' => 'INDIC_MODIF_DOSSIER', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'INDIC_MODIF_DOSSIER_HDFK' => + array ( + 'name' => 'INDIC_MODIF_DOSSIER_HDFK', + 'table' => 'INDIC_MODIF_DOSSIER', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'INDIC_MODIF_DOSSIER_HMFK' => + array ( + 'name' => 'INDIC_MODIF_DOSSIER_HMFK', + 'table' => 'INDIC_MODIF_DOSSIER', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'INTERVENANTS_CIVILITES_FK' => + array ( + 'name' => 'INTERVENANTS_CIVILITES_FK', + 'table' => 'INTERVENANT', + 'rtable' => 'CIVILITE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'CIVILITE_ID' => 'ID', + ), + ), + 'INTERVENANT_ANNEE_FK' => + array ( + 'name' => 'INTERVENANT_ANNEE_FK', + 'table' => 'INTERVENANT', + 'rtable' => 'ANNEE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_ID' => 'ID', + ), + ), + 'INTERVENANT_DEPARTEMENT_FK' => + array ( + 'name' => 'INTERVENANT_DEPARTEMENT_FK', + 'table' => 'INTERVENANT', + 'rtable' => 'DEPARTEMENT', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'DEP_NAISSANCE_ID' => 'ID', + ), + ), + 'INTERVENANT_DISCIPLINE_FK' => + array ( + 'name' => 'INTERVENANT_DISCIPLINE_FK', + 'table' => 'INTERVENANT', + 'rtable' => 'DISCIPLINE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'DISCIPLINE_ID' => 'ID', + ), + ), + 'INTERVENANT_GRADE_FK' => + array ( + 'name' => 'INTERVENANT_GRADE_FK', + 'table' => 'INTERVENANT', + 'rtable' => 'GRADE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'GRADE_ID' => 'ID', + ), + ), + 'INTERVENANT_HCFK' => + array ( + 'name' => 'INTERVENANT_HCFK', + 'table' => 'INTERVENANT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'INTERVENANT_HDFK' => + array ( + 'name' => 'INTERVENANT_HDFK', + 'table' => 'INTERVENANT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'INTERVENANT_HMFK' => + array ( + 'name' => 'INTERVENANT_HMFK', + 'table' => 'INTERVENANT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'INTERVENANT_PAYS_NAISS_FK' => + array ( + 'name' => 'INTERVENANT_PAYS_NAISS_FK', + 'table' => 'INTERVENANT', + 'rtable' => 'PAYS', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'PAYS_NAISSANCE_ID' => 'ID', + ), + ), + 'INTERVENANT_PAYS_NAT_FK' => + array ( + 'name' => 'INTERVENANT_PAYS_NAT_FK', + 'table' => 'INTERVENANT', + 'rtable' => 'PAYS', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'PAYS_NATIONALITE_ID' => 'ID', + ), + ), + 'INTERVENANT_SAISIE_INTERV_FK' => + array ( + 'name' => 'INTERVENANT_SAISIE_INTERV_FK', + 'table' => 'INTERVENANT_SAISIE', + 'rtable' => 'INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'INTERVENANT_ID' => 'ID', + ), + ), + 'INTERVENANT_SOURCE_FK' => + array ( + 'name' => 'INTERVENANT_SOURCE_FK', + 'table' => 'INTERVENANT', + 'rtable' => 'SOURCE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'INTERVENANT_STATUT_FK' => + array ( + 'name' => 'INTERVENANT_STATUT_FK', + 'table' => 'INTERVENANT', + 'rtable' => 'STATUT_INTERVENANT', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'STATUT_ID' => 'ID', + ), + ), + 'INTERVENANT_STRUCTURE_FK' => + array ( + 'name' => 'INTERVENANT_STRUCTURE_FK', + 'table' => 'INTERVENANT', + 'rtable' => 'STRUCTURE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_ID' => 'ID', + ), + ), + 'IS_STATUT_INTERVENANT_FK' => + array ( + 'name' => 'IS_STATUT_INTERVENANT_FK', + 'table' => 'INTERVENANT_SAISIE', + 'rtable' => 'STATUT_INTERVENANT', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'STATUT_ID' => 'ID', + ), + ), + 'LIEN_HCFK' => + array ( + 'name' => 'LIEN_HCFK', + 'table' => 'LIEN', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'LIEN_HDFK' => + array ( + 'name' => 'LIEN_HDFK', + 'table' => 'LIEN', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'LIEN_HMFK' => + array ( + 'name' => 'LIEN_HMFK', + 'table' => 'LIEN', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'LIEN_NOEUD_INF_FK' => + array ( + 'name' => 'LIEN_NOEUD_INF_FK', + 'table' => 'LIEN', + 'rtable' => 'NOEUD', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'NOEUD_INF_ID' => 'ID', + ), + ), + 'LIEN_NOEUD_SUP_FK' => + array ( + 'name' => 'LIEN_NOEUD_SUP_FK', + 'table' => 'LIEN', + 'rtable' => 'NOEUD', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'NOEUD_SUP_ID' => 'ID', + ), + ), + 'LIEN_SOURCE_FK' => + array ( + 'name' => 'LIEN_SOURCE_FK', + 'table' => 'LIEN', + 'rtable' => 'SOURCE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'LIEN_STRUCTURE_FK' => + array ( + 'name' => 'LIEN_STRUCTURE_FK', + 'table' => 'LIEN', + 'rtable' => 'STRUCTURE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_ID' => 'ID', + ), + ), + 'MCT_STATUT_INTERVENANT_FK' => + array ( + 'name' => 'MCT_STATUT_INTERVENANT_FK', + 'table' => 'MODELE_CONTRAT', + 'rtable' => 'STATUT_INTERVENANT', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'STATUT_INTERVENANT_ID' => 'ID', + ), + ), + 'MCT_STRUCTURE_FK' => + array ( + 'name' => 'MCT_STRUCTURE_FK', + 'table' => 'MODELE_CONTRAT', + 'rtable' => 'STRUCTURE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_ID' => 'ID', + ), + ), + 'MEP_CENTRE_COUT_FK' => + array ( + 'name' => 'MEP_CENTRE_COUT_FK', + 'table' => 'MISE_EN_PAIEMENT', + 'rtable' => 'CENTRE_COUT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'CENTRE_COUT_ID' => 'ID', + ), + ), + 'MEP_DOMAINE_FONCTIONNEL_FK' => + array ( + 'name' => 'MEP_DOMAINE_FONCTIONNEL_FK', + 'table' => 'MISE_EN_PAIEMENT', + 'rtable' => 'DOMAINE_FONCTIONNEL', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'DOMAINE_FONCTIONNEL_ID' => 'ID', + ), + ), + 'MEP_FR_SERVICE_FK' => + array ( + 'name' => 'MEP_FR_SERVICE_FK', + 'table' => 'MISE_EN_PAIEMENT', + 'rtable' => 'FORMULE_RESULTAT_SERVICE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'FORMULE_RES_SERVICE_ID' => 'ID', + ), + ), + 'MEP_FR_SERVICE_REF_FK' => + array ( + 'name' => 'MEP_FR_SERVICE_REF_FK', + 'table' => 'MISE_EN_PAIEMENT', + 'rtable' => 'FORMULE_RESULTAT_SERVICE_REF', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'FORMULE_RES_SERVICE_REF_ID' => 'ID', + ), + ), + 'MEP_TYPE_HEURES_FK' => + array ( + 'name' => 'MEP_TYPE_HEURES_FK', + 'table' => 'MISE_EN_PAIEMENT', + 'rtable' => 'TYPE_HEURES', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_HEURES_ID' => 'ID', + ), + ), + 'MISE_EN_PAIEMENT_HCFK' => + array ( + 'name' => 'MISE_EN_PAIEMENT_HCFK', + 'table' => 'MISE_EN_PAIEMENT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'MISE_EN_PAIEMENT_HDFK' => + array ( + 'name' => 'MISE_EN_PAIEMENT_HDFK', + 'table' => 'MISE_EN_PAIEMENT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'MISE_EN_PAIEMENT_HMFK' => + array ( + 'name' => 'MISE_EN_PAIEMENT_HMFK', + 'table' => 'MISE_EN_PAIEMENT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'MISE_EN_PAIEMENT_PERIODE_FK' => + array ( + 'name' => 'MISE_EN_PAIEMENT_PERIODE_FK', + 'table' => 'MISE_EN_PAIEMENT', + 'rtable' => 'PERIODE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'PERIODE_PAIEMENT_ID' => 'ID', + ), + ), + 'MISE_EN_PAIEMENT_VALIDATION_FK' => + array ( + 'name' => 'MISE_EN_PAIEMENT_VALIDATION_FK', + 'table' => 'MISE_EN_PAIEMENT', + 'rtable' => 'VALIDATION', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'VALIDATION_ID' => 'ID', + ), + ), + 'MODIFICATION_SERVICE_DU_HCFK' => + array ( + 'name' => 'MODIFICATION_SERVICE_DU_HCFK', + 'table' => 'MODIFICATION_SERVICE_DU', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'MODIFICATION_SERVICE_DU_HDFK' => + array ( + 'name' => 'MODIFICATION_SERVICE_DU_HDFK', + 'table' => 'MODIFICATION_SERVICE_DU', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'MODIFICATION_SERVICE_DU_HMFK' => + array ( + 'name' => 'MODIFICATION_SERVICE_DU_HMFK', + 'table' => 'MODIFICATION_SERVICE_DU', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'MODULATEUR_HCFK' => + array ( + 'name' => 'MODULATEUR_HCFK', + 'table' => 'MODULATEUR', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'MODULATEUR_HDFK' => + array ( + 'name' => 'MODULATEUR_HDFK', + 'table' => 'MODULATEUR', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'MODULATEUR_HMFK' => + array ( + 'name' => 'MODULATEUR_HMFK', + 'table' => 'MODULATEUR', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'MODULATEUR_TYPE_MODULATEUR_FK' => + array ( + 'name' => 'MODULATEUR_TYPE_MODULATEUR_FK', + 'table' => 'MODULATEUR', + 'rtable' => 'TYPE_MODULATEUR', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_MODULATEUR_ID' => 'ID', + ), + ), + 'MOTIF_MODIFICATION_SERVIC_HCFK' => + array ( + 'name' => 'MOTIF_MODIFICATION_SERVIC_HCFK', + 'table' => 'MOTIF_MODIFICATION_SERVICE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'MOTIF_MODIFICATION_SERVIC_HDFK' => + array ( + 'name' => 'MOTIF_MODIFICATION_SERVIC_HDFK', + 'table' => 'MOTIF_MODIFICATION_SERVICE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'MOTIF_MODIFICATION_SERVIC_HMFK' => + array ( + 'name' => 'MOTIF_MODIFICATION_SERVIC_HMFK', + 'table' => 'MOTIF_MODIFICATION_SERVICE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'MOTIF_NON_PAIEMENT_HCFK' => + array ( + 'name' => 'MOTIF_NON_PAIEMENT_HCFK', + 'table' => 'MOTIF_NON_PAIEMENT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'MOTIF_NON_PAIEMENT_HDFK' => + array ( + 'name' => 'MOTIF_NON_PAIEMENT_HDFK', + 'table' => 'MOTIF_NON_PAIEMENT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'MOTIF_NON_PAIEMENT_HMFK' => + array ( + 'name' => 'MOTIF_NON_PAIEMENT_HMFK', + 'table' => 'MOTIF_NON_PAIEMENT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'MSD_INTERVENANT_FK' => + array ( + 'name' => 'MSD_INTERVENANT_FK', + 'table' => 'MODIFICATION_SERVICE_DU', + 'rtable' => 'INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'INTERVENANT_ID' => 'ID', + ), + ), + 'NOEUD_ANNEE_FK' => + array ( + 'name' => 'NOEUD_ANNEE_FK', + 'table' => 'NOEUD', + 'rtable' => 'ANNEE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_ID' => 'ID', + ), + ), + 'NOEUD_ELEMENT_PEDAGOGIQUE_FK' => + array ( + 'name' => 'NOEUD_ELEMENT_PEDAGOGIQUE_FK', + 'table' => 'NOEUD', + 'rtable' => 'ELEMENT_PEDAGOGIQUE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ELEMENT_PEDAGOGIQUE_ID' => 'ID', + ), + ), + 'NOEUD_ETAPE_FK' => + array ( + 'name' => 'NOEUD_ETAPE_FK', + 'table' => 'NOEUD', + 'rtable' => 'ETAPE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ETAPE_ID' => 'ID', + ), + ), + 'NOEUD_HCFK' => + array ( + 'name' => 'NOEUD_HCFK', + 'table' => 'NOEUD', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'NOEUD_HDFK' => + array ( + 'name' => 'NOEUD_HDFK', + 'table' => 'NOEUD', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'NOEUD_HMFK' => + array ( + 'name' => 'NOEUD_HMFK', + 'table' => 'NOEUD', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'NOEUD_SOURCE_FK' => + array ( + 'name' => 'NOEUD_SOURCE_FK', + 'table' => 'NOEUD', + 'rtable' => 'SOURCE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'NOEUD_STRUCTURE_FK' => + array ( + 'name' => 'NOEUD_STRUCTURE_FK', + 'table' => 'NOEUD', + 'rtable' => 'STRUCTURE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_ID' => 'ID', + ), + ), + 'NOTIF_INDICATEUR_IFK' => + array ( + 'name' => 'NOTIF_INDICATEUR_IFK', + 'table' => 'NOTIFICATION_INDICATEUR', + 'rtable' => 'INDICATEUR', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'INDICATEUR_ID' => 'ID', + ), + ), + 'PARAMETRE_HCFK' => + array ( + 'name' => 'PARAMETRE_HCFK', + 'table' => 'PARAMETRE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'PARAMETRE_HDFK' => + array ( + 'name' => 'PARAMETRE_HDFK', + 'table' => 'PARAMETRE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'PARAMETRE_HMFK' => + array ( + 'name' => 'PARAMETRE_HMFK', + 'table' => 'PARAMETRE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'PAYS_HCFK' => + array ( + 'name' => 'PAYS_HCFK', + 'table' => 'PAYS', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'PAYS_HDFK' => + array ( + 'name' => 'PAYS_HDFK', + 'table' => 'PAYS', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'PAYS_HMFK' => + array ( + 'name' => 'PAYS_HMFK', + 'table' => 'PAYS', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'PAYS_SOURCE_FK' => + array ( + 'name' => 'PAYS_SOURCE_FK', + 'table' => 'PAYS', + 'rtable' => 'SOURCE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'PERIODE_HCFK' => + array ( + 'name' => 'PERIODE_HCFK', + 'table' => 'PERIODE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'PERIODE_HDFK' => + array ( + 'name' => 'PERIODE_HDFK', + 'table' => 'PERIODE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'PERIODE_HMFK' => + array ( + 'name' => 'PERIODE_HMFK', + 'table' => 'PERIODE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'PIECE_JOINTE_FICHIER_FFK' => + array ( + 'name' => 'PIECE_JOINTE_FICHIER_FFK', + 'table' => 'PIECE_JOINTE_FICHIER', + 'rtable' => 'FICHIER', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'FICHIER_ID' => 'ID', + ), + ), + 'PIECE_JOINTE_FICHIER_PJFK' => + array ( + 'name' => 'PIECE_JOINTE_FICHIER_PJFK', + 'table' => 'PIECE_JOINTE_FICHIER', + 'rtable' => 'PIECE_JOINTE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'PIECE_JOINTE_ID' => 'ID', + ), + ), + 'PIECE_JOINTE_HCFK' => + array ( + 'name' => 'PIECE_JOINTE_HCFK', + 'table' => 'PIECE_JOINTE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'PIECE_JOINTE_HDFK' => + array ( + 'name' => 'PIECE_JOINTE_HDFK', + 'table' => 'PIECE_JOINTE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'PIECE_JOINTE_HMFK' => + array ( + 'name' => 'PIECE_JOINTE_HMFK', + 'table' => 'PIECE_JOINTE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'PIECE_JOINTE_INTERVENANT_FK' => + array ( + 'name' => 'PIECE_JOINTE_INTERVENANT_FK', + 'table' => 'PIECE_JOINTE', + 'rtable' => 'INTERVENANT', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'INTERVENANT_ID' => 'ID', + ), + ), + 'PIECE_JOINTE_VFK' => + array ( + 'name' => 'PIECE_JOINTE_VFK', + 'table' => 'PIECE_JOINTE', + 'rtable' => 'VALIDATION', + 'delete_rule' => 'SET NULL', + 'index' => NULL, + 'columns' => + array ( + 'VALIDATION_ID' => 'ID', + ), + ), + 'PJ_TYPE_PIECE_JOINTE_FK' => + array ( + 'name' => 'PJ_TYPE_PIECE_JOINTE_FK', + 'table' => 'PIECE_JOINTE', + 'rtable' => 'TYPE_PIECE_JOINTE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_PIECE_JOINTE_ID' => 'ID', + ), + ), + 'PLAFONDAPP_ANNEE_DFK' => + array ( + 'name' => 'PLAFONDAPP_ANNEE_DFK', + 'table' => 'PLAFOND_APPLICATION', + 'rtable' => 'ANNEE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_DEBUT_ID' => 'ID', + ), + ), + 'PLAFONDAPP_ANNEE_FFK' => + array ( + 'name' => 'PLAFONDAPP_ANNEE_FFK', + 'table' => 'PLAFOND_APPLICATION', + 'rtable' => 'ANNEE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_FIN_ID' => 'ID', + ), + ), + 'PLAFONDAPP_PLAFOND_ETAT_FK' => + array ( + 'name' => 'PLAFONDAPP_PLAFOND_ETAT_FK', + 'table' => 'PLAFOND_APPLICATION', + 'rtable' => 'PLAFOND_ETAT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'PLAFOND_ETAT_ID' => 'ID', + ), + ), + 'PLAFONDAPP_PLAFOND_FK' => + array ( + 'name' => 'PLAFONDAPP_PLAFOND_FK', + 'table' => 'PLAFOND_APPLICATION', + 'rtable' => 'PLAFOND', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'PLAFOND_ID' => 'ID', + ), + ), + 'PLAFONDAPP_TVH_FK' => + array ( + 'name' => 'PLAFONDAPP_TVH_FK', + 'table' => 'PLAFOND_APPLICATION', + 'rtable' => 'TYPE_VOLUME_HORAIRE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_VOLUME_HORAIRE_ID' => 'ID', + ), + ), + 'PRIVILEGE_CATEGORIE_FK' => + array ( + 'name' => 'PRIVILEGE_CATEGORIE_FK', + 'table' => 'PRIVILEGE', + 'rtable' => 'CATEGORIE_PRIVILEGE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'CATEGORIE_ID' => 'ID', + ), + ), + 'ROLE_HCFK' => + array ( + 'name' => 'ROLE_HCFK', + 'table' => 'ROLE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'ROLE_HDFK' => + array ( + 'name' => 'ROLE_HDFK', + 'table' => 'ROLE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'ROLE_HMFK' => + array ( + 'name' => 'ROLE_HMFK', + 'table' => 'ROLE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'ROLE_PERIMETRE_FK' => + array ( + 'name' => 'ROLE_PERIMETRE_FK', + 'table' => 'ROLE', + 'rtable' => 'PERIMETRE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'PERIMETRE_ID' => 'ID', + ), + ), + 'ROLE_PRIVILEGE_PRIVILEGE_FK' => + array ( + 'name' => 'ROLE_PRIVILEGE_PRIVILEGE_FK', + 'table' => 'ROLE_PRIVILEGE', + 'rtable' => 'PRIVILEGE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'PRIVILEGE_ID' => 'ID', + ), + ), + 'ROLE_PRIVILEGE_ROLE_FK' => + array ( + 'name' => 'ROLE_PRIVILEGE_ROLE_FK', + 'table' => 'ROLE_PRIVILEGE', + 'rtable' => 'ROLE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ROLE_ID' => 'ID', + ), + ), + 'RSV_TYPE_INTERVENANT_FK' => + array ( + 'name' => 'RSV_TYPE_INTERVENANT_FK', + 'table' => 'REGLE_STRUCTURE_VALIDATION', + 'rtable' => 'TYPE_INTERVENANT', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'TYPE_INTERVENANT_ID' => 'ID', + ), + ), + 'RSV_TYPE_VOLUME_HORAIRE_FK' => + array ( + 'name' => 'RSV_TYPE_VOLUME_HORAIRE_FK', + 'table' => 'REGLE_STRUCTURE_VALIDATION', + 'rtable' => 'TYPE_VOLUME_HORAIRE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'TYPE_VOLUME_HORAIRE_ID' => 'ID', + ), + ), + 'SCENARIO_HCFK' => + array ( + 'name' => 'SCENARIO_HCFK', + 'table' => 'SCENARIO', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'SCENARIO_HDFK' => + array ( + 'name' => 'SCENARIO_HDFK', + 'table' => 'SCENARIO', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'SCENARIO_HMFK' => + array ( + 'name' => 'SCENARIO_HMFK', + 'table' => 'SCENARIO', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'SCENARIO_LIEN_HCFK' => + array ( + 'name' => 'SCENARIO_LIEN_HCFK', + 'table' => 'SCENARIO_LIEN', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'SCENARIO_LIEN_HDFK' => + array ( + 'name' => 'SCENARIO_LIEN_HDFK', + 'table' => 'SCENARIO_LIEN', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'SCENARIO_LIEN_HMFK' => + array ( + 'name' => 'SCENARIO_LIEN_HMFK', + 'table' => 'SCENARIO_LIEN', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'SCENARIO_LIEN_LIEN_FK' => + array ( + 'name' => 'SCENARIO_LIEN_LIEN_FK', + 'table' => 'SCENARIO_LIEN', + 'rtable' => 'LIEN', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'LIEN_ID' => 'ID', + ), + ), + 'SCENARIO_LIEN_SCENARIO_FK' => + array ( + 'name' => 'SCENARIO_LIEN_SCENARIO_FK', + 'table' => 'SCENARIO_LIEN', + 'rtable' => 'SCENARIO', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'SCENARIO_ID' => 'ID', + ), + ), + 'SCENARIO_LIEN_SOURCE_FK' => + array ( + 'name' => 'SCENARIO_LIEN_SOURCE_FK', + 'table' => 'SCENARIO_LIEN', + 'rtable' => 'SOURCE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'SCENARIO_NOEUD_HCFK' => + array ( + 'name' => 'SCENARIO_NOEUD_HCFK', + 'table' => 'SCENARIO_NOEUD', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'SCENARIO_NOEUD_HDFK' => + array ( + 'name' => 'SCENARIO_NOEUD_HDFK', + 'table' => 'SCENARIO_NOEUD', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'SCENARIO_NOEUD_HMFK' => + array ( + 'name' => 'SCENARIO_NOEUD_HMFK', + 'table' => 'SCENARIO_NOEUD', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'SCENARIO_NOEUD_NOEUD_FK' => + array ( + 'name' => 'SCENARIO_NOEUD_NOEUD_FK', + 'table' => 'SCENARIO_NOEUD', + 'rtable' => 'NOEUD', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'NOEUD_ID' => 'ID', + ), + ), + 'SCENARIO_NOEUD_SCENARIO_FK' => + array ( + 'name' => 'SCENARIO_NOEUD_SCENARIO_FK', + 'table' => 'SCENARIO_NOEUD', + 'rtable' => 'SCENARIO', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'SCENARIO_ID' => 'ID', + ), + ), + 'SCENARIO_NOEUD_SOURCE_FK' => + array ( + 'name' => 'SCENARIO_NOEUD_SOURCE_FK', + 'table' => 'SCENARIO_NOEUD', + 'rtable' => 'SOURCE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'SCENARIO_STRUCTURE_FK' => + array ( + 'name' => 'SCENARIO_STRUCTURE_FK', + 'table' => 'SCENARIO', + 'rtable' => 'STRUCTURE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_ID' => 'ID', + ), + ), + 'SERVICE_ELEMENT_PEDAGOGIQUE_FK' => + array ( + 'name' => 'SERVICE_ELEMENT_PEDAGOGIQUE_FK', + 'table' => 'SERVICE', + 'rtable' => 'ELEMENT_PEDAGOGIQUE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'ELEMENT_PEDAGOGIQUE_ID' => 'ID', + ), + ), + 'SERVICE_ETABLISSEMENT_FK' => + array ( + 'name' => 'SERVICE_ETABLISSEMENT_FK', + 'table' => 'SERVICE', + 'rtable' => 'ETABLISSEMENT', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'ETABLISSEMENT_ID' => 'ID', + ), + ), + 'SERVICE_HCFK' => + array ( + 'name' => 'SERVICE_HCFK', + 'table' => 'SERVICE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'SERVICE_HDFK' => + array ( + 'name' => 'SERVICE_HDFK', + 'table' => 'SERVICE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'SERVICE_HMFK' => + array ( + 'name' => 'SERVICE_HMFK', + 'table' => 'SERVICE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'SERVICE_INTERVENANT_FK' => + array ( + 'name' => 'SERVICE_INTERVENANT_FK', + 'table' => 'SERVICE', + 'rtable' => 'INTERVENANT', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'INTERVENANT_ID' => 'ID', + ), + ), + 'SERVICE_REFERENTIEL_HCFK' => + array ( + 'name' => 'SERVICE_REFERENTIEL_HCFK', + 'table' => 'SERVICE_REFERENTIEL', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'SERVICE_REFERENTIEL_HDFK' => + array ( + 'name' => 'SERVICE_REFERENTIEL_HDFK', + 'table' => 'SERVICE_REFERENTIEL', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'SERVICE_REFERENTIEL_HMFK' => + array ( + 'name' => 'SERVICE_REFERENTIEL_HMFK', + 'table' => 'SERVICE_REFERENTIEL', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'SERVICE_REFERENTIEL_SOURCE_FK' => + array ( + 'name' => 'SERVICE_REFERENTIEL_SOURCE_FK', + 'table' => 'SERVICE_REFERENTIEL', + 'rtable' => 'SOURCE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'SERVICE_SOURCE_FK' => + array ( + 'name' => 'SERVICE_SOURCE_FK', + 'table' => 'SERVICE', + 'rtable' => 'SOURCE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'SEUIL_CHARGE_ANNEE_FK' => + array ( + 'name' => 'SEUIL_CHARGE_ANNEE_FK', + 'table' => 'SEUIL_CHARGE', + 'rtable' => 'ANNEE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_ID' => 'ID', + ), + ), + 'SEUIL_CH_GT_FORMATION_FK' => + array ( + 'name' => 'SEUIL_CH_GT_FORMATION_FK', + 'table' => 'SEUIL_CHARGE', + 'rtable' => 'GROUPE_TYPE_FORMATION', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'GROUPE_TYPE_FORMATION_ID' => 'ID', + ), + ), + 'SEUIL_CH_SCENARIO_FK' => + array ( + 'name' => 'SEUIL_CH_SCENARIO_FK', + 'table' => 'SEUIL_CHARGE', + 'rtable' => 'SCENARIO', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'SCENARIO_ID' => 'ID', + ), + ), + 'SEUIL_CH_STRUCTURE_FK' => + array ( + 'name' => 'SEUIL_CH_STRUCTURE_FK', + 'table' => 'SEUIL_CHARGE', + 'rtable' => 'STRUCTURE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_ID' => 'ID', + ), + ), + 'SEUIL_CH_TYPE_INTERVENTION_FK' => + array ( + 'name' => 'SEUIL_CH_TYPE_INTERVENTION_FK', + 'table' => 'SEUIL_CHARGE', + 'rtable' => 'TYPE_INTERVENTION', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'TYPE_INTERVENTION_ID' => 'ID', + ), + ), + 'SEUIL_CH_UTILISATEUR_HCFK' => + array ( + 'name' => 'SEUIL_CH_UTILISATEUR_HCFK', + 'table' => 'SEUIL_CHARGE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'SEUIL_CH_UTILISATEUR_HDFK' => + array ( + 'name' => 'SEUIL_CH_UTILISATEUR_HDFK', + 'table' => 'SEUIL_CHARGE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'SEUIL_CH_UTILISATEUR_HMFK' => + array ( + 'name' => 'SEUIL_CH_UTILISATEUR_HMFK', + 'table' => 'SEUIL_CHARGE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'SNE_ETAPE_FK' => + array ( + 'name' => 'SNE_ETAPE_FK', + 'table' => 'SCENARIO_NOEUD_EFFECTIF', + 'rtable' => 'ETAPE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'ETAPE_ID' => 'ID', + ), + ), + 'SNE_SCENARIO_NOEUD_FK' => + array ( + 'name' => 'SNE_SCENARIO_NOEUD_FK', + 'table' => 'SCENARIO_NOEUD_EFFECTIF', + 'rtable' => 'SCENARIO_NOEUD', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'SCENARIO_NOEUD_ID' => 'ID', + ), + ), + 'SNE_TYPE_HEURES_FK' => + array ( + 'name' => 'SNE_TYPE_HEURES_FK', + 'table' => 'SCENARIO_NOEUD_EFFECTIF', + 'rtable' => 'TYPE_HEURES', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_HEURES_ID' => 'ID', + ), + ), + 'SNS_SCENARIO_NOEUD_FK' => + array ( + 'name' => 'SNS_SCENARIO_NOEUD_FK', + 'table' => 'SCENARIO_NOEUD_SEUIL', + 'rtable' => 'SCENARIO_NOEUD', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'SCENARIO_NOEUD_ID' => 'ID', + ), + ), + 'SNS_TYPE_INTERVENTION_FK' => + array ( + 'name' => 'SNS_TYPE_INTERVENTION_FK', + 'table' => 'SCENARIO_NOEUD_SEUIL', + 'rtable' => 'TYPE_INTERVENTION', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_INTERVENTION_ID' => 'ID', + ), + ), + 'SRFR_FK' => + array ( + 'name' => 'SRFR_FK', + 'table' => 'SERVICE_REFERENTIEL', + 'rtable' => 'FONCTION_REFERENTIEL', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'FONCTION_ID' => 'ID', + ), + ), + 'SR_INTERVENANT_FK' => + array ( + 'name' => 'SR_INTERVENANT_FK', + 'table' => 'SERVICE_REFERENTIEL', + 'rtable' => 'INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'INTERVENANT_ID' => 'ID', + ), + ), + 'SR_STRUCTURE_FK' => + array ( + 'name' => 'SR_STRUCTURE_FK', + 'table' => 'SERVICE_REFERENTIEL', + 'rtable' => 'STRUCTURE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_ID' => 'ID', + ), + ), + 'STATUT_INTERVENANT_HCFK' => + array ( + 'name' => 'STATUT_INTERVENANT_HCFK', + 'table' => 'STATUT_INTERVENANT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'STATUT_INTERVENANT_HDFK' => + array ( + 'name' => 'STATUT_INTERVENANT_HDFK', + 'table' => 'STATUT_INTERVENANT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'STATUT_INTERVENANT_HMFK' => + array ( + 'name' => 'STATUT_INTERVENANT_HMFK', + 'table' => 'STATUT_INTERVENANT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'STATUT_INTERVENANT_SOURCE_FK' => + array ( + 'name' => 'STATUT_INTERVENANT_SOURCE_FK', + 'table' => 'STATUT_INTERVENANT', + 'rtable' => 'SOURCE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'STATUT_INTERVENANT_TYPE_FK' => + array ( + 'name' => 'STATUT_INTERVENANT_TYPE_FK', + 'table' => 'STATUT_INTERVENANT', + 'rtable' => 'TYPE_INTERVENANT', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'TYPE_INTERVENANT_ID' => 'ID', + ), + ), + 'STAT_PRIV_PRIVILEGE_FK' => + array ( + 'name' => 'STAT_PRIV_PRIVILEGE_FK', + 'table' => 'STATUT_PRIVILEGE', + 'rtable' => 'PRIVILEGE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'PRIVILEGE_ID' => 'ID', + ), + ), + 'STAT_PRIV_STATUT_FK' => + array ( + 'name' => 'STAT_PRIV_STATUT_FK', + 'table' => 'STATUT_PRIVILEGE', + 'rtable' => 'STATUT_INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'STATUT_ID' => 'ID', + ), + ), + 'STRUCTURE_HCFK' => + array ( + 'name' => 'STRUCTURE_HCFK', + 'table' => 'STRUCTURE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'STRUCTURE_HDFK' => + array ( + 'name' => 'STRUCTURE_HDFK', + 'table' => 'STRUCTURE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'STRUCTURE_HMFK' => + array ( + 'name' => 'STRUCTURE_HMFK', + 'table' => 'STRUCTURE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'STRUCTURE_SOURCE_FK' => + array ( + 'name' => 'STRUCTURE_SOURCE_FK', + 'table' => 'STRUCTURE', + 'rtable' => 'SOURCE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'TAS_STATUT_INTERVENANT_FK' => + array ( + 'name' => 'TAS_STATUT_INTERVENANT_FK', + 'table' => 'TYPE_AGREMENT_STATUT', + 'rtable' => 'STATUT_INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'STATUT_INTERVENANT_ID' => 'ID', + ), + ), + 'TAS_TYPE_AGREMENT_FK' => + array ( + 'name' => 'TAS_TYPE_AGREMENT_FK', + 'table' => 'TYPE_AGREMENT_STATUT', + 'rtable' => 'TYPE_AGREMENT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_AGREMENT_ID' => 'ID', + ), + ), + 'TAUX_HORAIRE_HETD_HCFK' => + array ( + 'name' => 'TAUX_HORAIRE_HETD_HCFK', + 'table' => 'TAUX_HORAIRE_HETD', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'TAUX_HORAIRE_HETD_HDFK' => + array ( + 'name' => 'TAUX_HORAIRE_HETD_HDFK', + 'table' => 'TAUX_HORAIRE_HETD', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'TAUX_HORAIRE_HETD_HMFK' => + array ( + 'name' => 'TAUX_HORAIRE_HETD_HMFK', + 'table' => 'TAUX_HORAIRE_HETD', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'TBCH_ANNEE_FK' => + array ( + 'name' => 'TBCH_ANNEE_FK', + 'table' => 'TBL_CHARGENS', + 'rtable' => 'ANNEE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_ID' => 'ID', + ), + ), + 'TBCH_ELEMENT_PEDAGOGIQUE_FK' => + array ( + 'name' => 'TBCH_ELEMENT_PEDAGOGIQUE_FK', + 'table' => 'TBL_CHARGENS', + 'rtable' => 'ELEMENT_PEDAGOGIQUE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ELEMENT_PEDAGOGIQUE_ID' => 'ID', + ), + ), + 'TBCH_ETAPE_FK' => + array ( + 'name' => 'TBCH_ETAPE_FK', + 'table' => 'TBL_CHARGENS', + 'rtable' => 'ETAPE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ETAPE_ID' => 'ID', + ), + ), + 'TBCH_ETAPE_FKV1' => + array ( + 'name' => 'TBCH_ETAPE_FKV1', + 'table' => 'TBL_CHARGENS', + 'rtable' => 'ETAPE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ETAPE_ENS_ID' => 'ID', + ), + ), + 'TBCH_GROUPE_TYPE_FORMATION_FK' => + array ( + 'name' => 'TBCH_GROUPE_TYPE_FORMATION_FK', + 'table' => 'TBL_CHARGENS', + 'rtable' => 'GROUPE_TYPE_FORMATION', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'GROUPE_TYPE_FORMATION_ID' => 'ID', + ), + ), + 'TBCH_NOEUD_FK' => + array ( + 'name' => 'TBCH_NOEUD_FK', + 'table' => 'TBL_CHARGENS', + 'rtable' => 'NOEUD', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'NOEUD_ID' => 'ID', + ), + ), + 'TBCH_SCENARIO_FK' => + array ( + 'name' => 'TBCH_SCENARIO_FK', + 'table' => 'TBL_CHARGENS', + 'rtable' => 'SCENARIO', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'SCENARIO_ID' => 'ID', + ), + ), + 'TBCH_STRUCTURE_FK' => + array ( + 'name' => 'TBCH_STRUCTURE_FK', + 'table' => 'TBL_CHARGENS', + 'rtable' => 'STRUCTURE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_ID' => 'ID', + ), + ), + 'TBCH_TYPE_HEURES_FK' => + array ( + 'name' => 'TBCH_TYPE_HEURES_FK', + 'table' => 'TBL_CHARGENS', + 'rtable' => 'TYPE_HEURES', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_HEURES_ID' => 'ID', + ), + ), + 'TBCH_TYPE_INTERVENTION_FK' => + array ( + 'name' => 'TBCH_TYPE_INTERVENTION_FK', + 'table' => 'TBL_CHARGENS', + 'rtable' => 'TYPE_INTERVENTION', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_INTERVENTION_ID' => 'ID', + ), + ), + 'TBL_AGR_AGREMENT_FK' => + array ( + 'name' => 'TBL_AGR_AGREMENT_FK', + 'table' => 'TBL_AGREMENT', + 'rtable' => 'AGREMENT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'AGREMENT_ID' => 'ID', + ), + ), + 'TBL_AGR_ANNEE_FK' => + array ( + 'name' => 'TBL_AGR_ANNEE_FK', + 'table' => 'TBL_AGREMENT', + 'rtable' => 'ANNEE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_ID' => 'ID', + ), + ), + 'TBL_AGR_INTERVENANT_FK' => + array ( + 'name' => 'TBL_AGR_INTERVENANT_FK', + 'table' => 'TBL_AGREMENT', + 'rtable' => 'INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'INTERVENANT_ID' => 'ID', + ), + ), + 'TBL_AGR_STRUCTURE_FK' => + array ( + 'name' => 'TBL_AGR_STRUCTURE_FK', + 'table' => 'TBL_AGREMENT', + 'rtable' => 'STRUCTURE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_ID' => 'ID', + ), + ), + 'TBL_AGR_TYPE_AGREMENT_FK' => + array ( + 'name' => 'TBL_AGR_TYPE_AGREMENT_FK', + 'table' => 'TBL_AGREMENT', + 'rtable' => 'TYPE_AGREMENT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_AGREMENT_ID' => 'ID', + ), + ), + 'TBL_CLOTURE_REALISE_ANNEE_FK' => + array ( + 'name' => 'TBL_CLOTURE_REALISE_ANNEE_FK', + 'table' => 'TBL_CLOTURE_REALISE', + 'rtable' => 'ANNEE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_ID' => 'ID', + ), + ), + 'TBL_CLO_REAL_INTERVENANT_FK' => + array ( + 'name' => 'TBL_CLO_REAL_INTERVENANT_FK', + 'table' => 'TBL_CLOTURE_REALISE', + 'rtable' => 'INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'INTERVENANT_ID' => 'ID', + ), + ), + 'TBL_CONTRAT_ANNEE_FK' => + array ( + 'name' => 'TBL_CONTRAT_ANNEE_FK', + 'table' => 'TBL_CONTRAT', + 'rtable' => 'ANNEE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_ID' => 'ID', + ), + ), + 'TBL_CONTRAT_INTERVENANT_FK' => + array ( + 'name' => 'TBL_CONTRAT_INTERVENANT_FK', + 'table' => 'TBL_CONTRAT', + 'rtable' => 'INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'INTERVENANT_ID' => 'ID', + ), + ), + 'TBL_CONTRAT_STRUCTURE_FK' => + array ( + 'name' => 'TBL_CONTRAT_STRUCTURE_FK', + 'table' => 'TBL_CONTRAT', + 'rtable' => 'STRUCTURE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_ID' => 'ID', + ), + ), + 'TBL_CSD_ANNEE_FK' => + array ( + 'name' => 'TBL_CSD_ANNEE_FK', + 'table' => 'TBL_CHARGENS_SEUILS_DEF', + 'rtable' => 'ANNEE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_ID' => 'ID', + ), + ), + 'TBL_CSD_GTF_FK' => + array ( + 'name' => 'TBL_CSD_GTF_FK', + 'table' => 'TBL_CHARGENS_SEUILS_DEF', + 'rtable' => 'GROUPE_TYPE_FORMATION', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'GROUPE_TYPE_FORMATION_ID' => 'ID', + ), + ), + 'TBL_CSD_SCENARIO_FK' => + array ( + 'name' => 'TBL_CSD_SCENARIO_FK', + 'table' => 'TBL_CHARGENS_SEUILS_DEF', + 'rtable' => 'SCENARIO', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'SCENARIO_ID' => 'ID', + ), + ), + 'TBL_CSD_STRUCTURE_FK' => + array ( + 'name' => 'TBL_CSD_STRUCTURE_FK', + 'table' => 'TBL_CHARGENS_SEUILS_DEF', + 'rtable' => 'STRUCTURE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_ID' => 'ID', + ), + ), + 'TBL_CSD_TYPE_INTERVENTION_FK' => + array ( + 'name' => 'TBL_CSD_TYPE_INTERVENTION_FK', + 'table' => 'TBL_CHARGENS_SEUILS_DEF', + 'rtable' => 'TYPE_INTERVENTION', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'TYPE_INTERVENTION_ID' => 'ID', + ), + ), + 'TBL_DEMS_TBL_FK' => + array ( + 'name' => 'TBL_DEMS_TBL_FK', + 'table' => 'TBL_DEMS', + 'rtable' => 'TBL', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TBL_NAME' => 'TBL_NAME', + ), + ), + 'TBL_DMLIQ_ANNEE_FK' => + array ( + 'name' => 'TBL_DMLIQ_ANNEE_FK', + 'table' => 'TBL_DMEP_LIQUIDATION', + 'rtable' => 'ANNEE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_ID' => 'ID', + ), + ), + 'TBL_DMLIQ_STRUCTURE_FK' => + array ( + 'name' => 'TBL_DMLIQ_STRUCTURE_FK', + 'table' => 'TBL_DMEP_LIQUIDATION', + 'rtable' => 'STRUCTURE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_ID' => 'ID', + ), + ), + 'TBL_DMLIQ_TYPE_RESSOURCE_FK' => + array ( + 'name' => 'TBL_DMLIQ_TYPE_RESSOURCE_FK', + 'table' => 'TBL_DMEP_LIQUIDATION', + 'rtable' => 'TYPE_RESSOURCE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_RESSOURCE_ID' => 'ID', + ), + ), + 'TBL_DOSSIER_ANNEE_FK' => + array ( + 'name' => 'TBL_DOSSIER_ANNEE_FK', + 'table' => 'TBL_DOSSIER', + 'rtable' => 'ANNEE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_ID' => 'ID', + ), + ), + 'TBL_DOSSIER_DOSSIER_FK' => + array ( + 'name' => 'TBL_DOSSIER_DOSSIER_FK', + 'table' => 'TBL_DOSSIER', + 'rtable' => 'DOSSIER', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'DOSSIER_ID' => 'ID', + ), + ), + 'TBL_DOSSIER_INTERVENANT_FK' => + array ( + 'name' => 'TBL_DOSSIER_INTERVENANT_FK', + 'table' => 'TBL_DOSSIER', + 'rtable' => 'INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'INTERVENANT_ID' => 'ID', + ), + ), + 'TBL_DOSSIER_VALIDATION_FK' => + array ( + 'name' => 'TBL_DOSSIER_VALIDATION_FK', + 'table' => 'TBL_DOSSIER', + 'rtable' => 'VALIDATION', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'VALIDATION_ID' => 'ID', + ), + ), + 'TBL_LIEN_LIEN_FK' => + array ( + 'name' => 'TBL_LIEN_LIEN_FK', + 'table' => 'TBL_LIEN', + 'rtable' => 'LIEN', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'LIEN_ID' => 'ID', + ), + ), + 'TBL_LIEN_NOEUD_INF_FK' => + array ( + 'name' => 'TBL_LIEN_NOEUD_INF_FK', + 'table' => 'TBL_LIEN', + 'rtable' => 'NOEUD', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'NOEUD_INF_ID' => 'ID', + ), + ), + 'TBL_LIEN_NOEUD_SUP_FK' => + array ( + 'name' => 'TBL_LIEN_NOEUD_SUP_FK', + 'table' => 'TBL_LIEN', + 'rtable' => 'NOEUD', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'NOEUD_SUP_ID' => 'ID', + ), + ), + 'TBL_LIEN_SCENARIO_FK' => + array ( + 'name' => 'TBL_LIEN_SCENARIO_FK', + 'table' => 'TBL_LIEN', + 'rtable' => 'SCENARIO', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'SCENARIO_ID' => 'ID', + ), + ), + 'TBL_LIEN_SCENARIO_LIEN_FK' => + array ( + 'name' => 'TBL_LIEN_SCENARIO_LIEN_FK', + 'table' => 'TBL_LIEN', + 'rtable' => 'SCENARIO_LIEN', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'SCENARIO_LIEN_ID' => 'ID', + ), + ), + 'TBL_LIEN_STRUCTURE_FK' => + array ( + 'name' => 'TBL_LIEN_STRUCTURE_FK', + 'table' => 'TBL_LIEN', + 'rtable' => 'STRUCTURE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_ID' => 'ID', + ), + ), + 'TBL_PAIEMENT_ANNEE_FK' => + array ( + 'name' => 'TBL_PAIEMENT_ANNEE_FK', + 'table' => 'TBL_PAIEMENT', + 'rtable' => 'ANNEE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_ID' => 'ID', + ), + ), + 'TBL_PAIEMENT_FRSR_FK' => + array ( + 'name' => 'TBL_PAIEMENT_FRSR_FK', + 'table' => 'TBL_PAIEMENT', + 'rtable' => 'FORMULE_RESULTAT_SERVICE_REF', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'FORMULE_RES_SERVICE_REF_ID' => 'ID', + ), + ), + 'TBL_PAIEMENT_FRS_FK' => + array ( + 'name' => 'TBL_PAIEMENT_FRS_FK', + 'table' => 'TBL_PAIEMENT', + 'rtable' => 'FORMULE_RESULTAT_SERVICE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'FORMULE_RES_SERVICE_ID' => 'ID', + ), + ), + 'TBL_PAIEMENT_INTERVENANT_FK' => + array ( + 'name' => 'TBL_PAIEMENT_INTERVENANT_FK', + 'table' => 'TBL_PAIEMENT', + 'rtable' => 'INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'INTERVENANT_ID' => 'ID', + ), + ), + 'TBL_PAIEMENT_MEP_FK' => + array ( + 'name' => 'TBL_PAIEMENT_MEP_FK', + 'table' => 'TBL_PAIEMENT', + 'rtable' => 'MISE_EN_PAIEMENT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'MISE_EN_PAIEMENT_ID' => 'ID', + ), + ), + 'TBL_PAIEMENT_PERIODE_FK' => + array ( + 'name' => 'TBL_PAIEMENT_PERIODE_FK', + 'table' => 'TBL_PAIEMENT', + 'rtable' => 'PERIODE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'PERIODE_PAIEMENT_ID' => 'ID', + ), + ), + 'TBL_PAIEMENT_STRUCTURE_FK' => + array ( + 'name' => 'TBL_PAIEMENT_STRUCTURE_FK', + 'table' => 'TBL_PAIEMENT', + 'rtable' => 'STRUCTURE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_ID' => 'ID', + ), + ), + 'TBL_PIECE_JOINTE_ANNEE_FK' => + array ( + 'name' => 'TBL_PIECE_JOINTE_ANNEE_FK', + 'table' => 'TBL_PIECE_JOINTE', + 'rtable' => 'ANNEE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_ID' => 'ID', + ), + ), + 'TBL_PJD_ANNEE_FK' => + array ( + 'name' => 'TBL_PJD_ANNEE_FK', + 'table' => 'TBL_PIECE_JOINTE_DEMANDE', + 'rtable' => 'ANNEE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_ID' => 'ID', + ), + ), + 'TBL_PJD_INTERVENANT_FK' => + array ( + 'name' => 'TBL_PJD_INTERVENANT_FK', + 'table' => 'TBL_PIECE_JOINTE_DEMANDE', + 'rtable' => 'INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'INTERVENANT_ID' => 'ID', + ), + ), + 'TBL_PJD_TYPE_PIECE_JOINTE_FK' => + array ( + 'name' => 'TBL_PJD_TYPE_PIECE_JOINTE_FK', + 'table' => 'TBL_PIECE_JOINTE_DEMANDE', + 'rtable' => 'TYPE_PIECE_JOINTE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_PIECE_JOINTE_ID' => 'ID', + ), + ), + 'TBL_PJF_ANNEE_FK' => + array ( + 'name' => 'TBL_PJF_ANNEE_FK', + 'table' => 'TBL_PIECE_JOINTE_FOURNIE', + 'rtable' => 'ANNEE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_ID' => 'ID', + ), + ), + 'TBL_PJF_FICHIER_FK' => + array ( + 'name' => 'TBL_PJF_FICHIER_FK', + 'table' => 'TBL_PIECE_JOINTE_FOURNIE', + 'rtable' => 'FICHIER', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'FICHIER_ID' => 'ID', + ), + ), + 'TBL_PJF_INTERVENANT_FK' => + array ( + 'name' => 'TBL_PJF_INTERVENANT_FK', + 'table' => 'TBL_PIECE_JOINTE_FOURNIE', + 'rtable' => 'INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'INTERVENANT_ID' => 'ID', + ), + ), + 'TBL_PJF_PIECE_JOINTE_FK' => + array ( + 'name' => 'TBL_PJF_PIECE_JOINTE_FK', + 'table' => 'TBL_PIECE_JOINTE_FOURNIE', + 'rtable' => 'PIECE_JOINTE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'PIECE_JOINTE_ID' => 'ID', + ), + ), + 'TBL_PJF_TYPE_PIECE_JOINTE_FK' => + array ( + 'name' => 'TBL_PJF_TYPE_PIECE_JOINTE_FK', + 'table' => 'TBL_PIECE_JOINTE_FOURNIE', + 'rtable' => 'TYPE_PIECE_JOINTE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_PIECE_JOINTE_ID' => 'ID', + ), + ), + 'TBL_PJF_VALIDATION_FK' => + array ( + 'name' => 'TBL_PJF_VALIDATION_FK', + 'table' => 'TBL_PIECE_JOINTE_FOURNIE', + 'rtable' => 'VALIDATION', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'VALIDATION_ID' => 'ID', + ), + ), + 'TBL_PJ_INTERVENANT_FK' => + array ( + 'name' => 'TBL_PJ_INTERVENANT_FK', + 'table' => 'TBL_PIECE_JOINTE', + 'rtable' => 'INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'INTERVENANT_ID' => 'ID', + ), + ), + 'TBL_PJ_TYPE_PIECE_JOINTE_FK' => + array ( + 'name' => 'TBL_PJ_TYPE_PIECE_JOINTE_FK', + 'table' => 'TBL_PIECE_JOINTE', + 'rtable' => 'TYPE_PIECE_JOINTE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_PIECE_JOINTE_ID' => 'ID', + ), + ), + 'TBL_SERVICE_ANNEE_FK' => + array ( + 'name' => 'TBL_SERVICE_ANNEE_FK', + 'table' => 'TBL_SERVICE', + 'rtable' => 'ANNEE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_ID' => 'ID', + ), + ), + 'TBL_SERVICE_ELEMENT_FK' => + array ( + 'name' => 'TBL_SERVICE_ELEMENT_FK', + 'table' => 'TBL_SERVICE', + 'rtable' => 'ELEMENT_PEDAGOGIQUE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ELEMENT_PEDAGOGIQUE_ID' => 'ID', + ), + ), + 'TBL_SERVICE_ETAPE_FK' => + array ( + 'name' => 'TBL_SERVICE_ETAPE_FK', + 'table' => 'TBL_SERVICE', + 'rtable' => 'ETAPE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ETAPE_ID' => 'ID', + ), + ), + 'TBL_SERVICE_INTERVENANT_FK' => + array ( + 'name' => 'TBL_SERVICE_INTERVENANT_FK', + 'table' => 'TBL_SERVICE', + 'rtable' => 'INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'INTERVENANT_ID' => 'ID', + ), + ), + 'TBL_SERVICE_PERIODE_EP_FK' => + array ( + 'name' => 'TBL_SERVICE_PERIODE_EP_FK', + 'table' => 'TBL_SERVICE', + 'rtable' => 'PERIODE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ELEMENT_PEDAGOGIQUE_PERIODE_ID' => 'ID', + ), + ), + 'TBL_SERVICE_REF_ANNEE_FK' => + array ( + 'name' => 'TBL_SERVICE_REF_ANNEE_FK', + 'table' => 'TBL_SERVICE_REFERENTIEL', + 'rtable' => 'ANNEE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_ID' => 'ID', + ), + ), + 'TBL_SERVICE_REF_INTERVENANT_FK' => + array ( + 'name' => 'TBL_SERVICE_REF_INTERVENANT_FK', + 'table' => 'TBL_SERVICE_REFERENTIEL', + 'rtable' => 'INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'INTERVENANT_ID' => 'ID', + ), + ), + 'TBL_SERVICE_REF_STRUCTURE_FK' => + array ( + 'name' => 'TBL_SERVICE_REF_STRUCTURE_FK', + 'table' => 'TBL_SERVICE_REFERENTIEL', + 'rtable' => 'STRUCTURE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_ID' => 'ID', + ), + ), + 'TBL_SERVICE_REF_TVH_FK' => + array ( + 'name' => 'TBL_SERVICE_REF_TVH_FK', + 'table' => 'TBL_SERVICE_REFERENTIEL', + 'rtable' => 'TYPE_VOLUME_HORAIRE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_VOLUME_HORAIRE_ID' => 'ID', + ), + ), + 'TBL_SERVICE_SAISIE_ANNEE_FK' => + array ( + 'name' => 'TBL_SERVICE_SAISIE_ANNEE_FK', + 'table' => 'TBL_SERVICE_SAISIE', + 'rtable' => 'ANNEE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_ID' => 'ID', + ), + ), + 'TBL_SERVICE_SERVICE_FK' => + array ( + 'name' => 'TBL_SERVICE_SERVICE_FK', + 'table' => 'TBL_SERVICE', + 'rtable' => 'SERVICE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'SERVICE_ID' => 'ID', + ), + ), + 'TBL_SERVICE_STRUCTURE_FK' => + array ( + 'name' => 'TBL_SERVICE_STRUCTURE_FK', + 'table' => 'TBL_SERVICE', + 'rtable' => 'STRUCTURE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_ID' => 'ID', + ), + ), + 'TBL_SERVICE_STRUCTURE_FKV1' => + array ( + 'name' => 'TBL_SERVICE_STRUCTURE_FKV1', + 'table' => 'TBL_SERVICE', + 'rtable' => 'STRUCTURE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'INTERVENANT_STRUCTURE_ID' => 'ID', + ), + ), + 'TBL_SERVICE_TINTERVENANT_FK' => + array ( + 'name' => 'TBL_SERVICE_TINTERVENANT_FK', + 'table' => 'TBL_SERVICE', + 'rtable' => 'TYPE_INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_INTERVENANT_ID' => 'ID', + ), + ), + 'TBL_SERVICE_TVH_FK' => + array ( + 'name' => 'TBL_SERVICE_TVH_FK', + 'table' => 'TBL_SERVICE', + 'rtable' => 'TYPE_VOLUME_HORAIRE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_VOLUME_HORAIRE_ID' => 'ID', + ), + ), + 'TBL_SRV_SAISIE_INTERVENANT_FK' => + array ( + 'name' => 'TBL_SRV_SAISIE_INTERVENANT_FK', + 'table' => 'TBL_SERVICE_SAISIE', + 'rtable' => 'INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'INTERVENANT_ID' => 'ID', + ), + ), + 'TBL_WORKFLOW_ANNEE_FK' => + array ( + 'name' => 'TBL_WORKFLOW_ANNEE_FK', + 'table' => 'TBL_WORKFLOW', + 'rtable' => 'ANNEE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_ID' => 'ID', + ), + ), + 'TBL_WORKFLOW_EFK' => + array ( + 'name' => 'TBL_WORKFLOW_EFK', + 'table' => 'TBL_WORKFLOW', + 'rtable' => 'WF_ETAPE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ETAPE_ID' => 'ID', + ), + ), + 'TBL_WORKFLOW_IFK' => + array ( + 'name' => 'TBL_WORKFLOW_IFK', + 'table' => 'TBL_WORKFLOW', + 'rtable' => 'INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'INTERVENANT_ID' => 'ID', + ), + ), + 'TBL_WORKFLOW_SFK' => + array ( + 'name' => 'TBL_WORKFLOW_SFK', + 'table' => 'TBL_WORKFLOW', + 'rtable' => 'STRUCTURE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_ID' => 'ID', + ), + ), + 'TBL_WORKFLOW_STATUT_FK' => + array ( + 'name' => 'TBL_WORKFLOW_STATUT_FK', + 'table' => 'TBL_WORKFLOW', + 'rtable' => 'STATUT_INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'STATUT_INTERVENANT_ID' => 'ID', + ), + ), + 'TBL_WORKFLOW_TINTERVENANT_FK' => + array ( + 'name' => 'TBL_WORKFLOW_TINTERVENANT_FK', + 'table' => 'TBL_WORKFLOW', + 'rtable' => 'TYPE_INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_INTERVENANT_ID' => 'ID', + ), + ), + 'TD_TYPE_RESSOURCE_FK' => + array ( + 'name' => 'TD_TYPE_RESSOURCE_FK', + 'table' => 'TYPE_DOTATION', + 'rtable' => 'TYPE_RESSOURCE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'TYPE_RESSOURCE_ID' => 'ID', + ), + ), + 'TIEP_ELEMENT_PEDAGOGIQUE_FK' => + array ( + 'name' => 'TIEP_ELEMENT_PEDAGOGIQUE_FK', + 'table' => 'TYPE_INTERVENTION_EP', + 'rtable' => 'ELEMENT_PEDAGOGIQUE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ELEMENT_PEDAGOGIQUE_ID' => 'ID', + ), + ), + 'TIEP_TYPE_INTERVENTION_FK' => + array ( + 'name' => 'TIEP_TYPE_INTERVENTION_FK', + 'table' => 'TYPE_INTERVENTION_EP', + 'rtable' => 'TYPE_INTERVENTION', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_INTERVENTION_ID' => 'ID', + ), + ), + 'TIS_ANNEE_DEBUT_FK' => + array ( + 'name' => 'TIS_ANNEE_DEBUT_FK', + 'table' => 'TYPE_INTERVENTION_STRUCTURE', + 'rtable' => 'ANNEE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_DEBUT_ID' => 'ID', + ), + ), + 'TIS_ANNEE_FIN_FK' => + array ( + 'name' => 'TIS_ANNEE_FIN_FK', + 'table' => 'TYPE_INTERVENTION_STRUCTURE', + 'rtable' => 'ANNEE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_FIN_ID' => 'ID', + ), + ), + 'TIS_STATUT_INTERVENANT_FK' => + array ( + 'name' => 'TIS_STATUT_INTERVENANT_FK', + 'table' => 'TYPE_INTERVENTION_STATUT', + 'rtable' => 'STATUT_INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'STATUT_INTERVENANT_ID' => 'ID', + ), + ), + 'TIS_STRUCTURE_FK' => + array ( + 'name' => 'TIS_STRUCTURE_FK', + 'table' => 'TYPE_INTERVENTION_STRUCTURE', + 'rtable' => 'STRUCTURE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_ID' => 'ID', + ), + ), + 'TIS_TYPE_INTERVENTION_FK' => + array ( + 'name' => 'TIS_TYPE_INTERVENTION_FK', + 'table' => 'TYPE_INTERVENTION_STRUCTURE', + 'rtable' => 'TYPE_INTERVENTION', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_INTERVENTION_ID' => 'ID', + ), + ), + 'TIS_TYPE_INTERVENTION_FKV1' => + array ( + 'name' => 'TIS_TYPE_INTERVENTION_FKV1', + 'table' => 'TYPE_INTERVENTION_STATUT', + 'rtable' => 'TYPE_INTERVENTION', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_INTERVENTION_ID' => 'ID', + ), + ), + 'TI_TYPE_INTERVENTION_FK' => + array ( + 'name' => 'TI_TYPE_INTERVENTION_FK', + 'table' => 'TYPE_INTERVENTION', + 'rtable' => 'TYPE_INTERVENTION', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'TYPE_INTERVENTION_MAQUETTE_ID' => 'ID', + ), + ), + 'TME_ELEMENT_PEDAGOGIQUE_FK' => + array ( + 'name' => 'TME_ELEMENT_PEDAGOGIQUE_FK', + 'table' => 'TYPE_MODULATEUR_EP', + 'rtable' => 'ELEMENT_PEDAGOGIQUE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ELEMENT_PEDAGOGIQUE_ID' => 'ID', + ), + ), + 'TME_TYPE_MODULATEUR_FK' => + array ( + 'name' => 'TME_TYPE_MODULATEUR_FK', + 'table' => 'TYPE_MODULATEUR_EP', + 'rtable' => 'TYPE_MODULATEUR', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_MODULATEUR_ID' => 'ID', + ), + ), + 'TMS_ANNEE_DEBUT_FK' => + array ( + 'name' => 'TMS_ANNEE_DEBUT_FK', + 'table' => 'TYPE_MODULATEUR_STRUCTURE', + 'rtable' => 'ANNEE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_DEBUT_ID' => 'ID', + ), + ), + 'TMS_ANNEE_FIN_FK' => + array ( + 'name' => 'TMS_ANNEE_FIN_FK', + 'table' => 'TYPE_MODULATEUR_STRUCTURE', + 'rtable' => 'ANNEE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_FIN_ID' => 'ID', + ), + ), + 'TMS_STRUCTURE_FK' => + array ( + 'name' => 'TMS_STRUCTURE_FK', + 'table' => 'TYPE_MODULATEUR_STRUCTURE', + 'rtable' => 'STRUCTURE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_ID' => 'ID', + ), + ), + 'TMS_TYPE_MODUL_FK' => + array ( + 'name' => 'TMS_TYPE_MODUL_FK', + 'table' => 'TYPE_MODULATEUR_STRUCTURE', + 'rtable' => 'TYPE_MODULATEUR', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_MODULATEUR_ID' => 'ID', + ), + ), + 'TPJS_ANNEE_DEB_FK' => + array ( + 'name' => 'TPJS_ANNEE_DEB_FK', + 'table' => 'TYPE_PIECE_JOINTE_STATUT', + 'rtable' => 'ANNEE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_DEBUT_ID' => 'ID', + ), + ), + 'TPJS_ANNEE_FIN_FK' => + array ( + 'name' => 'TPJS_ANNEE_FIN_FK', + 'table' => 'TYPE_PIECE_JOINTE_STATUT', + 'rtable' => 'ANNEE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_FIN_ID' => 'ID', + ), + ), + 'TPJS_STATUT_INTERVENANT_FK' => + array ( + 'name' => 'TPJS_STATUT_INTERVENANT_FK', + 'table' => 'TYPE_PIECE_JOINTE_STATUT', + 'rtable' => 'STATUT_INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'STATUT_INTERVENANT_ID' => 'ID', + ), + ), + 'TPJS_TYPE_PIECE_JOINTE_FK' => + array ( + 'name' => 'TPJS_TYPE_PIECE_JOINTE_FK', + 'table' => 'TYPE_PIECE_JOINTE_STATUT', + 'rtable' => 'TYPE_PIECE_JOINTE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_PIECE_JOINTE_ID' => 'ID', + ), + ), + 'TVE_ANNEE_FK' => + array ( + 'name' => 'TVE_ANNEE_FK', + 'table' => 'TBL_VALIDATION_ENSEIGNEMENT', + 'rtable' => 'ANNEE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_ID' => 'ID', + ), + ), + 'TVE_INTERVENANT_FK' => + array ( + 'name' => 'TVE_INTERVENANT_FK', + 'table' => 'TBL_VALIDATION_ENSEIGNEMENT', + 'rtable' => 'INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'INTERVENANT_ID' => 'ID', + ), + ), + 'TVE_SERVICE_FK' => + array ( + 'name' => 'TVE_SERVICE_FK', + 'table' => 'TBL_VALIDATION_ENSEIGNEMENT', + 'rtable' => 'SERVICE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'SERVICE_ID' => 'ID', + ), + ), + 'TVE_STRUCTURE_FK' => + array ( + 'name' => 'TVE_STRUCTURE_FK', + 'table' => 'TBL_VALIDATION_ENSEIGNEMENT', + 'rtable' => 'STRUCTURE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_ID' => 'ID', + ), + ), + 'TVE_TYPE_VOLUME_HORAIRE_FK' => + array ( + 'name' => 'TVE_TYPE_VOLUME_HORAIRE_FK', + 'table' => 'TBL_VALIDATION_ENSEIGNEMENT', + 'rtable' => 'TYPE_VOLUME_HORAIRE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_VOLUME_HORAIRE_ID' => 'ID', + ), + ), + 'TVE_VALIDATION_FK' => + array ( + 'name' => 'TVE_VALIDATION_FK', + 'table' => 'TBL_VALIDATION_ENSEIGNEMENT', + 'rtable' => 'VALIDATION', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'VALIDATION_ID' => 'ID', + ), + ), + 'TVE_VOLUME_HORAIRE_FK' => + array ( + 'name' => 'TVE_VOLUME_HORAIRE_FK', + 'table' => 'TBL_VALIDATION_ENSEIGNEMENT', + 'rtable' => 'VOLUME_HORAIRE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'VOLUME_HORAIRE_ID' => 'ID', + ), + ), + 'TVR_ANNEE_FK' => + array ( + 'name' => 'TVR_ANNEE_FK', + 'table' => 'TBL_VALIDATION_REFERENTIEL', + 'rtable' => 'ANNEE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_ID' => 'ID', + ), + ), + 'TVR_INTERVENANT_FK' => + array ( + 'name' => 'TVR_INTERVENANT_FK', + 'table' => 'TBL_VALIDATION_REFERENTIEL', + 'rtable' => 'INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'INTERVENANT_ID' => 'ID', + ), + ), + 'TVR_SERVICE_REFERENTIEL_FK' => + array ( + 'name' => 'TVR_SERVICE_REFERENTIEL_FK', + 'table' => 'TBL_VALIDATION_REFERENTIEL', + 'rtable' => 'SERVICE_REFERENTIEL', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'SERVICE_REFERENTIEL_ID' => 'ID', + ), + ), + 'TVR_STRUCTURE_FK' => + array ( + 'name' => 'TVR_STRUCTURE_FK', + 'table' => 'TBL_VALIDATION_REFERENTIEL', + 'rtable' => 'STRUCTURE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_ID' => 'ID', + ), + ), + 'TVR_TYPE_VOLUME_HORAIRE_FK' => + array ( + 'name' => 'TVR_TYPE_VOLUME_HORAIRE_FK', + 'table' => 'TBL_VALIDATION_REFERENTIEL', + 'rtable' => 'TYPE_VOLUME_HORAIRE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_VOLUME_HORAIRE_ID' => 'ID', + ), + ), + 'TVR_VALIDATION_FK' => + array ( + 'name' => 'TVR_VALIDATION_FK', + 'table' => 'TBL_VALIDATION_REFERENTIEL', + 'rtable' => 'VALIDATION', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'VALIDATION_ID' => 'ID', + ), + ), + 'TVR_VOLUME_HORAIRE_REF_FK' => + array ( + 'name' => 'TVR_VOLUME_HORAIRE_REF_FK', + 'table' => 'TBL_VALIDATION_REFERENTIEL', + 'rtable' => 'VOLUME_HORAIRE_REF', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'VOLUME_HORAIRE_REF_ID' => 'ID', + ), + ), + 'TYPE_AGREMENT_HCFK' => + array ( + 'name' => 'TYPE_AGREMENT_HCFK', + 'table' => 'TYPE_AGREMENT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'TYPE_AGREMENT_HDFK' => + array ( + 'name' => 'TYPE_AGREMENT_HDFK', + 'table' => 'TYPE_AGREMENT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'TYPE_AGREMENT_HMFK' => + array ( + 'name' => 'TYPE_AGREMENT_HMFK', + 'table' => 'TYPE_AGREMENT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'TYPE_AGREMENT_STATUT_HCFK' => + array ( + 'name' => 'TYPE_AGREMENT_STATUT_HCFK', + 'table' => 'TYPE_AGREMENT_STATUT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'TYPE_AGREMENT_STATUT_HDFK' => + array ( + 'name' => 'TYPE_AGREMENT_STATUT_HDFK', + 'table' => 'TYPE_AGREMENT_STATUT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'TYPE_AGREMENT_STATUT_HMFK' => + array ( + 'name' => 'TYPE_AGREMENT_STATUT_HMFK', + 'table' => 'TYPE_AGREMENT_STATUT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'TYPE_CONTRAT_HCFK' => + array ( + 'name' => 'TYPE_CONTRAT_HCFK', + 'table' => 'TYPE_CONTRAT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'TYPE_CONTRAT_HDFK' => + array ( + 'name' => 'TYPE_CONTRAT_HDFK', + 'table' => 'TYPE_CONTRAT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'TYPE_CONTRAT_HMFK' => + array ( + 'name' => 'TYPE_CONTRAT_HMFK', + 'table' => 'TYPE_CONTRAT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'TYPE_DOTATION_HCFK' => + array ( + 'name' => 'TYPE_DOTATION_HCFK', + 'table' => 'TYPE_DOTATION', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'TYPE_DOTATION_HDFK' => + array ( + 'name' => 'TYPE_DOTATION_HDFK', + 'table' => 'TYPE_DOTATION', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'TYPE_DOTATION_HMFK' => + array ( + 'name' => 'TYPE_DOTATION_HMFK', + 'table' => 'TYPE_DOTATION', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'TYPE_DOTATION_SOURCE_FK' => + array ( + 'name' => 'TYPE_DOTATION_SOURCE_FK', + 'table' => 'TYPE_DOTATION', + 'rtable' => 'SOURCE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'TYPE_FORMATION_GROUPE_FK' => + array ( + 'name' => 'TYPE_FORMATION_GROUPE_FK', + 'table' => 'TYPE_FORMATION', + 'rtable' => 'GROUPE_TYPE_FORMATION', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'GROUPE_ID' => 'ID', + ), + ), + 'TYPE_FORMATION_HCFK' => + array ( + 'name' => 'TYPE_FORMATION_HCFK', + 'table' => 'TYPE_FORMATION', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'TYPE_FORMATION_HDFK' => + array ( + 'name' => 'TYPE_FORMATION_HDFK', + 'table' => 'TYPE_FORMATION', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'TYPE_FORMATION_HMFK' => + array ( + 'name' => 'TYPE_FORMATION_HMFK', + 'table' => 'TYPE_FORMATION', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'TYPE_FORMATION_SOURCE_FK' => + array ( + 'name' => 'TYPE_FORMATION_SOURCE_FK', + 'table' => 'TYPE_FORMATION', + 'rtable' => 'SOURCE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'TYPE_HEURES_HCFK' => + array ( + 'name' => 'TYPE_HEURES_HCFK', + 'table' => 'TYPE_HEURES', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'TYPE_HEURES_HDFK' => + array ( + 'name' => 'TYPE_HEURES_HDFK', + 'table' => 'TYPE_HEURES', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'TYPE_HEURES_HMFK' => + array ( + 'name' => 'TYPE_HEURES_HMFK', + 'table' => 'TYPE_HEURES', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'TYPE_HEURES_TYPE_HEURES_FK' => + array ( + 'name' => 'TYPE_HEURES_TYPE_HEURES_FK', + 'table' => 'TYPE_HEURES', + 'rtable' => 'TYPE_HEURES', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_HEURES_ELEMENT_ID' => 'ID', + ), + ), + 'TYPE_INTERVENANT_HCFK' => + array ( + 'name' => 'TYPE_INTERVENANT_HCFK', + 'table' => 'TYPE_INTERVENANT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'TYPE_INTERVENANT_HDFK' => + array ( + 'name' => 'TYPE_INTERVENANT_HDFK', + 'table' => 'TYPE_INTERVENANT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'TYPE_INTERVENANT_HMFK' => + array ( + 'name' => 'TYPE_INTERVENANT_HMFK', + 'table' => 'TYPE_INTERVENANT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'TYPE_INTERVENTION_ANNEE_FK' => + array ( + 'name' => 'TYPE_INTERVENTION_ANNEE_FK', + 'table' => 'TYPE_INTERVENTION', + 'rtable' => 'ANNEE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_DEBUT_ID' => 'ID', + ), + ), + 'TYPE_INTERVENTION_ANNEE_FKV1' => + array ( + 'name' => 'TYPE_INTERVENTION_ANNEE_FKV1', + 'table' => 'TYPE_INTERVENTION', + 'rtable' => 'ANNEE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'ANNEE_FIN_ID' => 'ID', + ), + ), + 'TYPE_INTERVENTION_EP_HCFK' => + array ( + 'name' => 'TYPE_INTERVENTION_EP_HCFK', + 'table' => 'TYPE_INTERVENTION_EP', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'TYPE_INTERVENTION_EP_HDFK' => + array ( + 'name' => 'TYPE_INTERVENTION_EP_HDFK', + 'table' => 'TYPE_INTERVENTION_EP', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'TYPE_INTERVENTION_EP_HMFK' => + array ( + 'name' => 'TYPE_INTERVENTION_EP_HMFK', + 'table' => 'TYPE_INTERVENTION_EP', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'TYPE_INTERVENTION_EP_SOURCE_FK' => + array ( + 'name' => 'TYPE_INTERVENTION_EP_SOURCE_FK', + 'table' => 'TYPE_INTERVENTION_EP', + 'rtable' => 'SOURCE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'TYPE_INTERVENTION_HCFK' => + array ( + 'name' => 'TYPE_INTERVENTION_HCFK', + 'table' => 'TYPE_INTERVENTION', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'TYPE_INTERVENTION_HDFK' => + array ( + 'name' => 'TYPE_INTERVENTION_HDFK', + 'table' => 'TYPE_INTERVENTION', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'TYPE_INTERVENTION_HMFK' => + array ( + 'name' => 'TYPE_INTERVENTION_HMFK', + 'table' => 'TYPE_INTERVENTION', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'TYPE_INTERVENTION_STRUCTU_HCFK' => + array ( + 'name' => 'TYPE_INTERVENTION_STRUCTU_HCFK', + 'table' => 'TYPE_INTERVENTION_STRUCTURE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'TYPE_INTERVENTION_STRUCTU_HDFK' => + array ( + 'name' => 'TYPE_INTERVENTION_STRUCTU_HDFK', + 'table' => 'TYPE_INTERVENTION_STRUCTURE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'TYPE_INTERVENTION_STRUCTU_HMFK' => + array ( + 'name' => 'TYPE_INTERVENTION_STRUCTU_HMFK', + 'table' => 'TYPE_INTERVENTION_STRUCTURE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'TYPE_MODULATEUR_EP_HCFK' => + array ( + 'name' => 'TYPE_MODULATEUR_EP_HCFK', + 'table' => 'TYPE_MODULATEUR_EP', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'TYPE_MODULATEUR_EP_HDFK' => + array ( + 'name' => 'TYPE_MODULATEUR_EP_HDFK', + 'table' => 'TYPE_MODULATEUR_EP', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'TYPE_MODULATEUR_EP_HMFK' => + array ( + 'name' => 'TYPE_MODULATEUR_EP_HMFK', + 'table' => 'TYPE_MODULATEUR_EP', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'TYPE_MODULATEUR_EP_SOURCE_FK' => + array ( + 'name' => 'TYPE_MODULATEUR_EP_SOURCE_FK', + 'table' => 'TYPE_MODULATEUR_EP', + 'rtable' => 'SOURCE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'TYPE_MODULATEUR_HCFK' => + array ( + 'name' => 'TYPE_MODULATEUR_HCFK', + 'table' => 'TYPE_MODULATEUR', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'TYPE_MODULATEUR_HDFK' => + array ( + 'name' => 'TYPE_MODULATEUR_HDFK', + 'table' => 'TYPE_MODULATEUR', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'TYPE_MODULATEUR_HMFK' => + array ( + 'name' => 'TYPE_MODULATEUR_HMFK', + 'table' => 'TYPE_MODULATEUR', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'TYPE_MODULATEUR_STRUCTURE_HCFK' => + array ( + 'name' => 'TYPE_MODULATEUR_STRUCTURE_HCFK', + 'table' => 'TYPE_MODULATEUR_STRUCTURE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'TYPE_MODULATEUR_STRUCTURE_HDFK' => + array ( + 'name' => 'TYPE_MODULATEUR_STRUCTURE_HDFK', + 'table' => 'TYPE_MODULATEUR_STRUCTURE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'TYPE_MODULATEUR_STRUCTURE_HMFK' => + array ( + 'name' => 'TYPE_MODULATEUR_STRUCTURE_HMFK', + 'table' => 'TYPE_MODULATEUR_STRUCTURE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'TYPE_PIECE_JOINTE_HCFK' => + array ( + 'name' => 'TYPE_PIECE_JOINTE_HCFK', + 'table' => 'TYPE_PIECE_JOINTE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'TYPE_PIECE_JOINTE_HDFK' => + array ( + 'name' => 'TYPE_PIECE_JOINTE_HDFK', + 'table' => 'TYPE_PIECE_JOINTE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'TYPE_PIECE_JOINTE_HMFK' => + array ( + 'name' => 'TYPE_PIECE_JOINTE_HMFK', + 'table' => 'TYPE_PIECE_JOINTE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'TYPE_PIECE_JOINTE_STATUT_HCFK' => + array ( + 'name' => 'TYPE_PIECE_JOINTE_STATUT_HCFK', + 'table' => 'TYPE_PIECE_JOINTE_STATUT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'TYPE_PIECE_JOINTE_STATUT_HDFK' => + array ( + 'name' => 'TYPE_PIECE_JOINTE_STATUT_HDFK', + 'table' => 'TYPE_PIECE_JOINTE_STATUT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'TYPE_PIECE_JOINTE_STATUT_HMFK' => + array ( + 'name' => 'TYPE_PIECE_JOINTE_STATUT_HMFK', + 'table' => 'TYPE_PIECE_JOINTE_STATUT', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'TYPE_RESSOURCE_HCFK' => + array ( + 'name' => 'TYPE_RESSOURCE_HCFK', + 'table' => 'TYPE_RESSOURCE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'TYPE_RESSOURCE_HDFK' => + array ( + 'name' => 'TYPE_RESSOURCE_HDFK', + 'table' => 'TYPE_RESSOURCE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'TYPE_RESSOURCE_HMFK' => + array ( + 'name' => 'TYPE_RESSOURCE_HMFK', + 'table' => 'TYPE_RESSOURCE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'VALIDATION_HCFK' => + array ( + 'name' => 'VALIDATION_HCFK', + 'table' => 'VALIDATION', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'VALIDATION_HDFK' => + array ( + 'name' => 'VALIDATION_HDFK', + 'table' => 'VALIDATION', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'VALIDATION_HMFK' => + array ( + 'name' => 'VALIDATION_HMFK', + 'table' => 'VALIDATION', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'VALIDATION_INTERVENANT_FK' => + array ( + 'name' => 'VALIDATION_INTERVENANT_FK', + 'table' => 'VALIDATION', + 'rtable' => 'INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'INTERVENANT_ID' => 'ID', + ), + ), + 'VALIDATION_STRUCTURE_FK' => + array ( + 'name' => 'VALIDATION_STRUCTURE_FK', + 'table' => 'VALIDATION', + 'rtable' => 'STRUCTURE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'STRUCTURE_ID' => 'ID', + ), + ), + 'VALIDATION_TYPE_VALIDATION_FK' => + array ( + 'name' => 'VALIDATION_TYPE_VALIDATION_FK', + 'table' => 'VALIDATION', + 'rtable' => 'TYPE_VALIDATION', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_VALIDATION_ID' => 'ID', + ), + ), + 'VHC_ELEMENT_PEDAGOGIQUE_FK' => + array ( + 'name' => 'VHC_ELEMENT_PEDAGOGIQUE_FK', + 'table' => 'VOLUME_HORAIRE_CHARGE', + 'rtable' => 'ELEMENT_PEDAGOGIQUE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'ELEMENT_PEDAGOGIQUE_ID' => 'ID', + ), + ), + 'VHC_SCENARIO_FK' => + array ( + 'name' => 'VHC_SCENARIO_FK', + 'table' => 'VOLUME_HORAIRE_CHARGE', + 'rtable' => 'SCENARIO', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'SCENARIO_ID' => 'ID', + ), + ), + 'VHC_TYPE_INTERVENTION_FK' => + array ( + 'name' => 'VHC_TYPE_INTERVENTION_FK', + 'table' => 'VOLUME_HORAIRE_CHARGE', + 'rtable' => 'TYPE_INTERVENTION', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'TYPE_INTERVENTION_ID' => 'ID', + ), + ), + 'VHENS_ELEMENT_PEDAGOGIQUE_FK' => + array ( + 'name' => 'VHENS_ELEMENT_PEDAGOGIQUE_FK', + 'table' => 'VOLUME_HORAIRE_ENS', + 'rtable' => 'ELEMENT_PEDAGOGIQUE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'ELEMENT_PEDAGOGIQUE_ID' => 'ID', + ), + ), + 'VHENS_TYPE_INTERVENTION_FK' => + array ( + 'name' => 'VHENS_TYPE_INTERVENTION_FK', + 'table' => 'VOLUME_HORAIRE_ENS', + 'rtable' => 'TYPE_INTERVENTION', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_INTERVENTION_ID' => 'ID', + ), + ), + 'VHIT_FK' => + array ( + 'name' => 'VHIT_FK', + 'table' => 'VOLUME_HORAIRE', + 'rtable' => 'TYPE_INTERVENTION', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'TYPE_INTERVENTION_ID' => 'ID', + ), + ), + 'VHMNP_FK' => + array ( + 'name' => 'VHMNP_FK', + 'table' => 'VOLUME_HORAIRE', + 'rtable' => 'MOTIF_NON_PAIEMENT', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'MOTIF_NON_PAIEMENT_ID' => 'ID', + ), + ), + 'VHR_SERVICE_REFERENTIEL_FK' => + array ( + 'name' => 'VHR_SERVICE_REFERENTIEL_FK', + 'table' => 'VOLUME_HORAIRE_REF', + 'rtable' => 'SERVICE_REFERENTIEL', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'SERVICE_REFERENTIEL_ID' => 'ID', + ), + ), + 'VHR_TYPE_VOLUME_HORAIRE_FK' => + array ( + 'name' => 'VHR_TYPE_VOLUME_HORAIRE_FK', + 'table' => 'VOLUME_HORAIRE_REF', + 'rtable' => 'TYPE_VOLUME_HORAIRE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'TYPE_VOLUME_HORAIRE_ID' => 'ID', + ), + ), + 'VH_PERIODE_FK' => + array ( + 'name' => 'VH_PERIODE_FK', + 'table' => 'VOLUME_HORAIRE', + 'rtable' => 'PERIODE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'PERIODE_ID' => 'ID', + ), + ), + 'VH_TYPE_VOLUME_HORAIRE_FK' => + array ( + 'name' => 'VH_TYPE_VOLUME_HORAIRE_FK', + 'table' => 'VOLUME_HORAIRE', + 'rtable' => 'TYPE_VOLUME_HORAIRE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'TYPE_VOLUME_HORAIRE_ID' => 'ID', + ), + ), + 'VOLUMES_HORAIRES_SERVICES_FK' => + array ( + 'name' => 'VOLUMES_HORAIRES_SERVICES_FK', + 'table' => 'VOLUME_HORAIRE', + 'rtable' => 'SERVICE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'SERVICE_ID' => 'ID', + ), + ), + 'VOLUME_HORAIRE_CHARGE_HCFK' => + array ( + 'name' => 'VOLUME_HORAIRE_CHARGE_HCFK', + 'table' => 'VOLUME_HORAIRE_CHARGE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'VOLUME_HORAIRE_CHARGE_HDFK' => + array ( + 'name' => 'VOLUME_HORAIRE_CHARGE_HDFK', + 'table' => 'VOLUME_HORAIRE_CHARGE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'VOLUME_HORAIRE_CHARGE_HMFK' => + array ( + 'name' => 'VOLUME_HORAIRE_CHARGE_HMFK', + 'table' => 'VOLUME_HORAIRE_CHARGE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'VOLUME_HORAIRE_CHARG_SOURCE_FK' => + array ( + 'name' => 'VOLUME_HORAIRE_CHARG_SOURCE_FK', + 'table' => 'VOLUME_HORAIRE_CHARGE', + 'rtable' => 'SOURCE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'VOLUME_HORAIRE_CONTRAT_FK' => + array ( + 'name' => 'VOLUME_HORAIRE_CONTRAT_FK', + 'table' => 'VOLUME_HORAIRE', + 'rtable' => 'CONTRAT', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'CONTRAT_ID' => 'ID', + ), + ), + 'VOLUME_HORAIRE_ENS_HCFK' => + array ( + 'name' => 'VOLUME_HORAIRE_ENS_HCFK', + 'table' => 'VOLUME_HORAIRE_ENS', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'VOLUME_HORAIRE_ENS_HDFK' => + array ( + 'name' => 'VOLUME_HORAIRE_ENS_HDFK', + 'table' => 'VOLUME_HORAIRE_ENS', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'VOLUME_HORAIRE_ENS_HMFK' => + array ( + 'name' => 'VOLUME_HORAIRE_ENS_HMFK', + 'table' => 'VOLUME_HORAIRE_ENS', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'VOLUME_HORAIRE_ENS_SOURCE_FK' => + array ( + 'name' => 'VOLUME_HORAIRE_ENS_SOURCE_FK', + 'table' => 'VOLUME_HORAIRE_ENS', + 'rtable' => 'SOURCE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'VOLUME_HORAIRE_HCFK' => + array ( + 'name' => 'VOLUME_HORAIRE_HCFK', + 'table' => 'VOLUME_HORAIRE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'VOLUME_HORAIRE_HDFK' => + array ( + 'name' => 'VOLUME_HORAIRE_HDFK', + 'table' => 'VOLUME_HORAIRE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'VOLUME_HORAIRE_HMFK' => + array ( + 'name' => 'VOLUME_HORAIRE_HMFK', + 'table' => 'VOLUME_HORAIRE', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'VOLUME_HORAIRE_REF_HCFK' => + array ( + 'name' => 'VOLUME_HORAIRE_REF_HCFK', + 'table' => 'VOLUME_HORAIRE_REF', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_CREATEUR_ID' => 'ID', + ), + ), + 'VOLUME_HORAIRE_REF_HDFK' => + array ( + 'name' => 'VOLUME_HORAIRE_REF_HDFK', + 'table' => 'VOLUME_HORAIRE_REF', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_DESTRUCTEUR_ID' => 'ID', + ), + ), + 'VOLUME_HORAIRE_REF_HMFK' => + array ( + 'name' => 'VOLUME_HORAIRE_REF_HMFK', + 'table' => 'VOLUME_HORAIRE_REF', + 'rtable' => 'UTILISATEUR', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'HISTO_MODIFICATEUR_ID' => 'ID', + ), + ), + 'VOLUME_HORAIRE_REF_SOURCE_FK' => + array ( + 'name' => 'VOLUME_HORAIRE_REF_SOURCE_FK', + 'table' => 'VOLUME_HORAIRE_REF', + 'rtable' => 'SOURCE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'VOLUME_HORAIRE_SOURCE_FK' => + array ( + 'name' => 'VOLUME_HORAIRE_SOURCE_FK', + 'table' => 'VOLUME_HORAIRE', + 'rtable' => 'SOURCE', + 'delete_rule' => NULL, + 'index' => NULL, + 'columns' => + array ( + 'SOURCE_ID' => 'ID', + ), + ), + 'VVHR_VALIDATION_FK' => + array ( + 'name' => 'VVHR_VALIDATION_FK', + 'table' => 'VALIDATION_VOL_HORAIRE_REF', + 'rtable' => 'VALIDATION', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'VALIDATION_ID' => 'ID', + ), + ), + 'VVHR_VOLUME_HORAIRE_REF_FK' => + array ( + 'name' => 'VVHR_VOLUME_HORAIRE_REF_FK', + 'table' => 'VALIDATION_VOL_HORAIRE_REF', + 'rtable' => 'VOLUME_HORAIRE_REF', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'VOLUME_HORAIRE_REF_ID' => 'ID', + ), + ), + 'VVH_VALIDATION_FK' => + array ( + 'name' => 'VVH_VALIDATION_FK', + 'table' => 'VALIDATION_VOL_HORAIRE', + 'rtable' => 'VALIDATION', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'VALIDATION_ID' => 'ID', + ), + ), + 'VVH_VOLUME_HORAIRE_FK' => + array ( + 'name' => 'VVH_VOLUME_HORAIRE_FK', + 'table' => 'VALIDATION_VOL_HORAIRE', + 'rtable' => 'VOLUME_HORAIRE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'VOLUME_HORAIRE_ID' => 'ID', + ), + ), + 'WE_PREC_WE_FK' => + array ( + 'name' => 'WE_PREC_WE_FK', + 'table' => 'WF_ETAPE_DEP', + 'rtable' => 'WF_ETAPE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ETAPE_PREC_ID' => 'ID', + ), + ), + 'WE_SUIV_WE_FK' => + array ( + 'name' => 'WE_SUIV_WE_FK', + 'table' => 'WF_ETAPE_DEP', + 'rtable' => 'WF_ETAPE', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'ETAPE_SUIV_ID' => 'ID', + ), + ), + 'WE_TYPE_INTERVENANT_FK' => + array ( + 'name' => 'WE_TYPE_INTERVENANT_FK', + 'table' => 'WF_ETAPE_DEP', + 'rtable' => 'TYPE_INTERVENANT', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TYPE_INTERVENANT_ID' => 'ID', + ), + ), + 'WF_DB_ETAPE_DEP_FK' => + array ( + 'name' => 'WF_DB_ETAPE_DEP_FK', + 'table' => 'WF_DEP_BLOQUANTE', + 'rtable' => 'WF_ETAPE_DEP', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'WF_ETAPE_DEP_ID' => 'ID', + ), + ), + 'WF_DB_TBL_WORKFLOW_FK' => + array ( + 'name' => 'WF_DB_TBL_WORKFLOW_FK', + 'table' => 'WF_DEP_BLOQUANTE', + 'rtable' => 'TBL_WORKFLOW', + 'delete_rule' => 'CASCADE', + 'index' => NULL, + 'columns' => + array ( + 'TBL_WORKFLOW_ID' => 'ID', + ), + ), + ), + 'BddAdmin\\Ddl\\DdlUniqueConstraint' => + array ( + 'ADRESSE_INTERVENANT_SOURCE_UN' => + array ( + 'name' => 'ADRESSE_INTERVENANT_SOURCE_UN', + 'table' => 'ADRESSE_INTERVENANT', + 'index' => 'ADRESSE_INTERVENANT_SOURCE_UN', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + ), + ), + 'ADRESSE_INTERVENANT__UN' => + array ( + 'name' => 'ADRESSE_INTERVENANT__UN', + 'table' => 'ADRESSE_INTERVENANT', + 'index' => 'ADRESSE_INTERVENANT__UN', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'ADRESSE_STRUCTURE_SOURCE_UN' => + array ( + 'name' => 'ADRESSE_STRUCTURE_SOURCE_UN', + 'table' => 'ADRESSE_STRUCTURE', + 'index' => 'ADRESSE_STRUCTURE_SOURCE_UN', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + ), + ), + 'AFFECTATION_RECHERCH_SOURCE_UN' => + array ( + 'name' => 'AFFECTATION_RECHERCH_SOURCE_UN', + 'table' => 'AFFECTATION_RECHERCHE', + 'index' => 'AFFECTATION_R_SRC_UN', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + ), + ), + 'AFFECTATION_SOURCE_UN' => + array ( + 'name' => 'AFFECTATION_SOURCE_UN', + 'table' => 'AFFECTATION', + 'index' => 'AFFECTATION_SOURCE_UN', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + ), + ), + 'AFFECTATION__UN' => + array ( + 'name' => 'AFFECTATION__UN', + 'table' => 'AFFECTATION', + 'index' => 'AFFECTATION__UN', + 'columns' => + array ( + 0 => 'ROLE_ID', + 1 => 'STRUCTURE_ID', + 2 => 'HISTO_DESTRUCTION', + 3 => 'UTILISATEUR_ID', + ), + ), + 'AGREMENT__UN' => + array ( + 'name' => 'AGREMENT__UN', + 'table' => 'AGREMENT', + 'index' => 'AGREMENT__UN', + 'columns' => + array ( + 0 => 'TYPE_AGREMENT_ID', + 1 => 'INTERVENANT_ID', + 2 => 'STRUCTURE_ID', + 3 => 'HISTO_DESTRUCTION', + ), + ), + 'CAMPAGNE_SAISIE__UN' => + array ( + 'name' => 'CAMPAGNE_SAISIE__UN', + 'table' => 'CAMPAGNE_SAISIE', + 'index' => 'CAMPAGNE_SAISIE__UN_IDX', + 'columns' => + array ( + 0 => 'ANNEE_ID', + 1 => 'TYPE_INTERVENANT_ID', + 2 => 'TYPE_VOLUME_HORAIRE_ID', + ), + ), + 'CATEGORIE_PRIVILEGE__UN' => + array ( + 'name' => 'CATEGORIE_PRIVILEGE__UN', + 'table' => 'CATEGORIE_PRIVILEGE', + 'index' => 'CATEGORIE_PRIVILEGE__UN', + 'columns' => + array ( + 0 => 'CODE', + ), + ), + 'CCS_CC_S__UN' => + array ( + 'name' => 'CCS_CC_S__UN', + 'table' => 'CENTRE_COUT_STRUCTURE', + 'index' => 'CCS_CC_S__UN_IDX', + 'columns' => + array ( + 0 => 'CENTRE_COUT_ID', + 1 => 'STRUCTURE_ID', + 2 => 'HISTO_DESTRUCTION', + ), + ), + 'CENTRE_COUT_EP__UN' => + array ( + 'name' => 'CENTRE_COUT_EP__UN', + 'table' => 'CENTRE_COUT_EP', + 'index' => 'CENTRE_COUT_EP__UN', + 'columns' => + array ( + 0 => 'CENTRE_COUT_ID', + 1 => 'ELEMENT_PEDAGOGIQUE_ID', + 2 => 'TYPE_HEURES_ID', + 3 => 'HISTO_DESTRUCTION', + ), + ), + 'CENTRE_COUT_STRUCTUR_SOURCE_UN' => + array ( + 'name' => 'CENTRE_COUT_STRUCTUR_SOURCE_UN', + 'table' => 'CENTRE_COUT_STRUCTURE', + 'index' => 'CCS_SOURCE_CODE_UN_IDX', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'CHEMIN_PEDAGOGIQUE_SOURCE_UN' => + array ( + 'name' => 'CHEMIN_PEDAGOGIQUE_SOURCE_UN', + 'table' => 'CHEMIN_PEDAGOGIQUE', + 'index' => 'CHEMIN_PEDAGO_SRC_ID_UN', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + ), + ), + 'CHEMIN_PEDAGOGIQUE__UN' => + array ( + 'name' => 'CHEMIN_PEDAGOGIQUE__UN', + 'table' => 'CHEMIN_PEDAGOGIQUE', + 'index' => 'CHEMIN_PEDAGOGIQUE__UN', + 'columns' => + array ( + 0 => 'ELEMENT_PEDAGOGIQUE_ID', + 1 => 'ETAPE_ID', + 2 => 'HISTO_DESTRUCTION', + ), + ), + 'CIVILITE_LIBELLE_COURT_UN' => + array ( + 'name' => 'CIVILITE_LIBELLE_COURT_UN', + 'table' => 'CIVILITE', + 'index' => 'CIVILITE_LIBELLE_COURT_UN', + 'columns' => + array ( + 0 => 'LIBELLE_COURT', + ), + ), + 'CONTRAT_NUMERO_AVENANT_UN' => + array ( + 'name' => 'CONTRAT_NUMERO_AVENANT_UN', + 'table' => 'CONTRAT', + 'index' => 'CONTRAT_NUMERO_AVENANT_UN', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + 1 => 'STRUCTURE_ID', + 2 => 'NUMERO_AVENANT', + 3 => 'VALIDATION_ID', + 4 => 'HISTO_DESTRUCTION', + ), + ), + 'CORPS_SOURCE_UN' => + array ( + 'name' => 'CORPS_SOURCE_UN', + 'table' => 'CORPS', + 'index' => 'CORPS_SOURCE_UN', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + ), + ), + 'DISCIPLINE_SOURCE_UN' => + array ( + 'name' => 'DISCIPLINE_SOURCE_UN', + 'table' => 'DISCIPLINE', + 'index' => 'DISCIPLINE_SOURCE_UN', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + ), + ), + 'DOSSIER_UK1' => + array ( + 'name' => 'DOSSIER_UK1', + 'table' => 'DOSSIER', + 'index' => 'DOSSIER_UK1', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTION', + ), + ), + 'DOTATION__UN' => + array ( + 'name' => 'DOTATION__UN', + 'table' => 'DOTATION', + 'index' => 'DOTATION__UN', + 'columns' => + array ( + 0 => 'TYPE_RESSOURCE_ID', + 1 => 'ANNEE_ID', + 2 => 'ANNEE_CIVILE', + 3 => 'STRUCTURE_ID', + 4 => 'LIBELLE', + 5 => 'HISTO_DESTRUCTION', + ), + ), + 'EFFECTIFS_SOURCE_UN' => + array ( + 'name' => 'EFFECTIFS_SOURCE_UN', + 'table' => 'EFFECTIFS', + 'index' => 'EFFECTIFS__UN', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'ANNEE_ID', + ), + ), + 'ELEMENT_MODULATEUR__UN' => + array ( + 'name' => 'ELEMENT_MODULATEUR__UN', + 'table' => 'ELEMENT_MODULATEUR', + 'index' => 'ELEMENT_MODULATEUR__UN', + 'columns' => + array ( + 0 => 'ELEMENT_ID', + 1 => 'MODULATEUR_ID', + 2 => 'HISTO_DESTRUCTION', + ), + ), + 'ELEMENT_PEDAGOGIQUE_SOURCE_UN' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_SOURCE_UN', + 'table' => 'ELEMENT_PEDAGOGIQUE', + 'index' => 'EP_SRC_UN', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'ANNEE_ID', + 2 => 'HISTO_DESTRUCTION', + ), + ), + 'ELEMENT_TAUX_REGIMES_SOURCE_UN' => + array ( + 'name' => 'ELEMENT_TAUX_REGIMES_SOURCE_UN', + 'table' => 'ELEMENT_TAUX_REGIMES', + 'index' => 'ELEMENT_TAUX_REGIMES__UN', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'ELEMENT_TAUX_REGIMES__UNV1' => + array ( + 'name' => 'ELEMENT_TAUX_REGIMES__UNV1', + 'table' => 'ELEMENT_TAUX_REGIMES', + 'index' => 'ELEMENT_TAUX_REGIMES__UNV1', + 'columns' => + array ( + 0 => 'ELEMENT_PEDAGOGIQUE_ID', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'EP_CODE_UN' => + array ( + 'name' => 'EP_CODE_UN', + 'table' => 'ELEMENT_PEDAGOGIQUE', + 'index' => 'EP_CODE_UN', + 'columns' => + array ( + 0 => 'CODE', + 1 => 'HISTO_DESTRUCTION', + 2 => 'ANNEE_ID', + ), + ), + 'ETABLISSEMENT_SOURCE_UN' => + array ( + 'name' => 'ETABLISSEMENT_SOURCE_UN', + 'table' => 'ETABLISSEMENT', + 'index' => 'ETABLISSEMENT_SOURCE_UN', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'ETAPE_CODE_UN' => + array ( + 'name' => 'ETAPE_CODE_UN', + 'table' => 'ETAPE', + 'index' => 'ETAPE_CODE_UN', + 'columns' => + array ( + 0 => 'CODE', + 1 => 'ANNEE_ID', + 2 => 'HISTO_DESTRUCTION', + ), + ), + 'ETAPE_SOURCE_UN' => + array ( + 'name' => 'ETAPE_SOURCE_UN', + 'table' => 'ETAPE', + 'index' => 'ETAPE_SRC_UN', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'HISTO_DESTRUCTION', + 2 => 'ANNEE_ID', + ), + ), + 'ETAT_SORTIE_CODE_UN' => + array ( + 'name' => 'ETAT_SORTIE_CODE_UN', + 'table' => 'ETAT_SORTIE', + 'index' => 'ETAT_SORTIE_CODE_UN', + 'columns' => + array ( + 0 => 'CODE', + ), + ), + 'ETAT_VOLUME_HORAIRE__UN' => + array ( + 'name' => 'ETAT_VOLUME_HORAIRE__UN', + 'table' => 'ETAT_VOLUME_HORAIRE', + 'index' => 'ETAT_VOLUME_HORAIRE__UN', + 'columns' => + array ( + 0 => 'CODE', + ), + ), + 'FONCTION_REFERENTIEL_CODE_UN' => + array ( + 'name' => 'FONCTION_REFERENTIEL_CODE_UN', + 'table' => 'FONCTION_REFERENTIEL', + 'index' => 'FONCTION_REFERENTIEL_CODE_UN', + 'columns' => + array ( + 0 => 'CODE', + ), + ), + 'FORMULE_RESULTAT__UN' => + array ( + 'name' => 'FORMULE_RESULTAT__UN', + 'table' => 'FORMULE_RESULTAT', + 'index' => 'FORMULE_RESULTAT__UN', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + 1 => 'TYPE_VOLUME_HORAIRE_ID', + 2 => 'ETAT_VOLUME_HORAIRE_ID', + ), + ), + 'FORMULE_TEST_STRUCTURE__UN' => + array ( + 'name' => 'FORMULE_TEST_STRUCTURE__UN', + 'table' => 'FORMULE_TEST_STRUCTURE', + 'index' => 'FORMULE_TEST_STRUCTURE__UN', + 'columns' => + array ( + 0 => 'LIBELLE', + ), + ), + 'FORMULE__UN' => + array ( + 'name' => 'FORMULE__UN', + 'table' => 'FORMULE', + 'index' => 'FORMULE__UN', + 'columns' => + array ( + 0 => 'LIBELLE', + ), + ), + 'GROUPE_TYPE_FORMATIO_SOURCE_UN' => + array ( + 'name' => 'GROUPE_TYPE_FORMATIO_SOURCE_UN', + 'table' => 'GROUPE_TYPE_FORMATION', + 'index' => 'GTYPE_FORMATION_SOURCE_UN', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + ), + ), + 'GROUPE__UN' => + array ( + 'name' => 'GROUPE__UN', + 'table' => 'GROUPE', + 'index' => 'GROUPE__UN', + 'columns' => + array ( + 0 => 'ELEMENT_PEDAGOGIQUE_ID', + 1 => 'HISTO_DESTRUCTEUR_ID', + 2 => 'TYPE_INTERVENTION_ID', + ), + ), + 'HISTO_INTERVENANT_SERVICE__UN' => + array ( + 'name' => 'HISTO_INTERVENANT_SERVICE__UN', + 'table' => 'HISTO_INTERVENANT_SERVICE', + 'index' => 'HISTO_INTERVENANT_SERVICE__UN', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + 1 => 'TYPE_VOLUME_HORAIRE_ID', + 2 => 'REFERENTIEL', + ), + ), + 'INTERVENANT_CODE_UN' => + array ( + 'name' => 'INTERVENANT_CODE_UN', + 'table' => 'INTERVENANT', + 'index' => 'INTERVENANT_CODE_UN', + 'columns' => + array ( + 0 => 'CODE', + 1 => 'ANNEE_ID', + ), + ), + 'INTERVENANT_SAISIE__UN' => + array ( + 'name' => 'INTERVENANT_SAISIE__UN', + 'table' => 'INTERVENANT_SAISIE', + 'index' => 'INTERVENANT_SAISIE__UN', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + ), + ), + 'INTERVENANT_SOURCE_UN' => + array ( + 'name' => 'INTERVENANT_SOURCE_UN', + 'table' => 'INTERVENANT', + 'index' => 'INTERVENANT_SOURCE_UN', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'ANNEE_ID', + 2 => 'HISTO_DESTRUCTION', + ), + ), + 'INTERVENANT_UTIL_CODE_UN' => + array ( + 'name' => 'INTERVENANT_UTIL_CODE_UN', + 'table' => 'INTERVENANT', + 'index' => 'INTERVENANT_UTIL_CODE_UN', + 'columns' => + array ( + 0 => 'UTILISATEUR_CODE', + 1 => 'ANNEE_ID', + 2 => 'STATUT_ID', + ), + ), + 'LIEN_SOURCE_UN' => + array ( + 'name' => 'LIEN_SOURCE_UN', + 'table' => 'LIEN', + 'index' => 'LIEN_SRC_UN', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'MODULATEUR__UN' => + array ( + 'name' => 'MODULATEUR__UN', + 'table' => 'MODULATEUR', + 'index' => 'MODULATEUR__UN', + 'columns' => + array ( + 0 => 'CODE', + ), + ), + 'MOTIF_MODIFICATION_SERVIC_UK1' => + array ( + 'name' => 'MOTIF_MODIFICATION_SERVIC_UK1', + 'table' => 'MOTIF_MODIFICATION_SERVICE', + 'index' => 'MOTIF_MODIFICATION_SERVIC_UK1', + 'columns' => + array ( + 0 => 'CODE', + ), + ), + 'NOEUD_SOURCE_UN' => + array ( + 'name' => 'NOEUD_SOURCE_UN', + 'table' => 'NOEUD', + 'index' => 'NOEUD_SRC_UN', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'NOTIFICATION_INDICATEUR__UN' => + array ( + 'name' => 'NOTIFICATION_INDICATEUR__UN', + 'table' => 'NOTIFICATION_INDICATEUR', + 'index' => 'NOTIFICATION_INDICATEUR__UN', + 'columns' => + array ( + 0 => 'INDICATEUR_ID', + 1 => 'AFFECTATION_ID', + ), + ), + 'PAYS_SRC_UN' => + array ( + 'name' => 'PAYS_SRC_UN', + 'table' => 'PAYS', + 'index' => 'PAYS_SRC_UN', + 'columns' => + array ( + 0 => 'SOURCE_ID', + 1 => 'SOURCE_CODE', + 2 => 'HISTO_DESTRUCTION', + ), + ), + 'PERIMETRE_CODE_UN' => + array ( + 'name' => 'PERIMETRE_CODE_UN', + 'table' => 'PERIMETRE', + 'index' => 'PERIMETRE_CODE_UN', + 'columns' => + array ( + 0 => 'CODE', + ), + ), + 'PERIMETRE_LIBELLE_UN' => + array ( + 'name' => 'PERIMETRE_LIBELLE_UN', + 'table' => 'PERIMETRE', + 'index' => 'PERIMETRE_LIBELLE_UN', + 'columns' => + array ( + 0 => 'LIBELLE', + ), + ), + 'PERIODE__UN' => + array ( + 'name' => 'PERIODE__UN', + 'table' => 'PERIODE', + 'index' => 'PERIODE__UN', + 'columns' => + array ( + 0 => 'CODE', + ), + ), + 'PIECE_JOINTE__UN' => + array ( + 'name' => 'PIECE_JOINTE__UN', + 'table' => 'PIECE_JOINTE', + 'index' => 'PIECE_JOINTE__UN', + 'columns' => + array ( + 0 => 'TYPE_PIECE_JOINTE_ID', + 1 => 'INTERVENANT_ID', + 2 => 'HISTO_DESTRUCTION', + ), + ), + 'PRIVILEGE__UN' => + array ( + 'name' => 'PRIVILEGE__UN', + 'table' => 'PRIVILEGE', + 'index' => 'PRIVILEGE__UN', + 'columns' => + array ( + 0 => 'CATEGORIE_ID', + 1 => 'CODE', + ), + ), + 'REGLE_STRUCTURE_VALIDATION__UN' => + array ( + 'name' => 'REGLE_STRUCTURE_VALIDATION__UN', + 'table' => 'REGLE_STRUCTURE_VALIDATION', + 'index' => 'REGLE_STRUCTURE_VALIDATION__UN', + 'columns' => + array ( + 0 => 'TYPE_VOLUME_HORAIRE_ID', + 1 => 'TYPE_INTERVENANT_ID', + ), + ), + 'ROLE_CODE_UN' => + array ( + 'name' => 'ROLE_CODE_UN', + 'table' => 'ROLE', + 'index' => 'ROLE_CODE_UN', + 'columns' => + array ( + 0 => 'CODE', + ), + ), + 'SCENARIO_LIEN_SOURCE_UN' => + array ( + 'name' => 'SCENARIO_LIEN_SOURCE_UN', + 'table' => 'SCENARIO_LIEN', + 'index' => 'SCENARIO_LIEN_SRC_UN', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'SCENARIO_LIEN__UN' => + array ( + 'name' => 'SCENARIO_LIEN__UN', + 'table' => 'SCENARIO_LIEN', + 'index' => 'SCENARIO_LIEN__UN', + 'columns' => + array ( + 0 => 'SCENARIO_ID', + 1 => 'LIEN_ID', + 2 => 'HISTO_DESTRUCTION', + ), + ), + 'SCENARIO_NOEUD_SOURCE_UN' => + array ( + 'name' => 'SCENARIO_NOEUD_SOURCE_UN', + 'table' => 'SCENARIO_NOEUD', + 'index' => 'SCENARIO_NOEUD_SRC_UN', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'SCENARIO_NOEUD__UN' => + array ( + 'name' => 'SCENARIO_NOEUD__UN', + 'table' => 'SCENARIO_NOEUD', + 'index' => 'SCENARIO_NOEUD__UN', + 'columns' => + array ( + 0 => 'SCENARIO_ID', + 1 => 'NOEUD_ID', + 2 => 'HISTO_DESTRUCTION', + ), + ), + 'SERVICE_REFERENTIEL_SOURCE_UN' => + array ( + 'name' => 'SERVICE_REFERENTIEL_SOURCE_UN', + 'table' => 'SERVICE_REFERENTIEL', + 'index' => 'SERVICE_REFERENTIEL_SOURCE_UN', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'SERVICE_SOURCE_UN' => + array ( + 'name' => 'SERVICE_SOURCE_UN', + 'table' => 'SERVICE', + 'index' => 'SERVICE_SOURCE_UN', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'SERVICE__UN' => + array ( + 'name' => 'SERVICE__UN', + 'table' => 'SERVICE', + 'index' => 'SERVICE__UN', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + 1 => 'ELEMENT_PEDAGOGIQUE_ID', + 2 => 'ETABLISSEMENT_ID', + 3 => 'HISTO_DESTRUCTION', + ), + ), + 'SOURCE_CODE_UN' => + array ( + 'name' => 'SOURCE_CODE_UN', + 'table' => 'SOURCE', + 'index' => 'SOURCE_CODE_UN', + 'columns' => + array ( + 0 => 'CODE', + ), + ), + 'STATUT_INTERVENANT_ODRE_UN' => + array ( + 'name' => 'STATUT_INTERVENANT_ODRE_UN', + 'table' => 'STATUT_INTERVENANT', + 'index' => 'STATUT_INTERVENANT_ODRE_UN', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTION', + 1 => 'ORDRE', + ), + ), + 'STATUT_INTERVENANT_SOURCE_UN' => + array ( + 'name' => 'STATUT_INTERVENANT_SOURCE_UN', + 'table' => 'STATUT_INTERVENANT', + 'index' => 'STATUT_INTERVENANT__UN', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + ), + ), + 'STRUCTURE_CODE_UN' => + array ( + 'name' => 'STRUCTURE_CODE_UN', + 'table' => 'STRUCTURE', + 'index' => 'STRUCTURE_CODE_UN', + 'columns' => + array ( + 0 => 'CODE', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'STRUCTURE_SOURCE_UN' => + array ( + 'name' => 'STRUCTURE_SOURCE_UN', + 'table' => 'STRUCTURE', + 'index' => 'STRUCTURE_SOURCE_CODE_UN', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'TBL_AGREMENT__UN' => + array ( + 'name' => 'TBL_AGREMENT__UN', + 'table' => 'TBL_AGREMENT', + 'index' => 'TBL_AGREMENT__UN_IDX', + 'columns' => + array ( + 0 => 'TYPE_AGREMENT_ID', + 1 => 'INTERVENANT_ID', + 2 => 'STRUCTURE_ID', + 3 => 'TO_DELETE', + ), + ), + 'TBL_CHARGENS_SEUILS_DEF__UN' => + array ( + 'name' => 'TBL_CHARGENS_SEUILS_DEF__UN', + 'table' => 'TBL_CHARGENS_SEUILS_DEF', + 'index' => 'TBL_CHARGENS_SEUILS_DEF__UN', + 'columns' => + array ( + 0 => 'SCENARIO_ID', + 1 => 'TYPE_INTERVENTION_ID', + 2 => 'STRUCTURE_ID', + 3 => 'GROUPE_TYPE_FORMATION_ID', + 4 => 'ANNEE_ID', + ), + ), + 'TBL_CHARGENS__UN' => + array ( + 'name' => 'TBL_CHARGENS__UN', + 'table' => 'TBL_CHARGENS', + 'index' => 'TBL_CHARGENS__UN', + 'columns' => + array ( + 0 => 'ANNEE_ID', + 1 => 'NOEUD_ID', + 2 => 'SCENARIO_ID', + 3 => 'TYPE_HEURES_ID', + 4 => 'TYPE_INTERVENTION_ID', + 5 => 'ELEMENT_PEDAGOGIQUE_ID', + 6 => 'ETAPE_ID', + 7 => 'ETAPE_ENS_ID', + 8 => 'STRUCTURE_ID', + 9 => 'GROUPE_TYPE_FORMATION_ID', + ), + ), + 'TBL_CLOTURE_REALISE__UN' => + array ( + 'name' => 'TBL_CLOTURE_REALISE__UN', + 'table' => 'TBL_CLOTURE_REALISE', + 'index' => 'TBL_CLOTURE_REALISE__UN_IDX', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + 1 => 'TO_DELETE', + ), + ), + 'TBL_CONTRAT__UN' => + array ( + 'name' => 'TBL_CONTRAT__UN', + 'table' => 'TBL_CONTRAT', + 'index' => 'TBL_CONTRAT__UN_IDX', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + 1 => 'STRUCTURE_ID', + 2 => 'TO_DELETE', + ), + ), + 'TBL_DMEP_LIQUIDATION__UN' => + array ( + 'name' => 'TBL_DMEP_LIQUIDATION__UN', + 'table' => 'TBL_DMEP_LIQUIDATION', + 'index' => 'TBL_DMEP_LIQUIDATION__UN_IDX', + 'columns' => + array ( + 0 => 'ANNEE_ID', + 1 => 'TYPE_RESSOURCE_ID', + 2 => 'STRUCTURE_ID', + 3 => 'TO_DELETE', + ), + ), + 'TBL_DOSSIER__UN' => + array ( + 'name' => 'TBL_DOSSIER__UN', + 'table' => 'TBL_DOSSIER', + 'index' => 'TBL_DOSSIER__UN_IDX', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + 1 => 'TO_DELETE', + ), + ), + 'TBL_PAIEMENT__UN' => + array ( + 'name' => 'TBL_PAIEMENT__UN', + 'table' => 'TBL_PAIEMENT', + 'index' => 'TBL_PAIEMENT__UN', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + 1 => 'TO_DELETE', + 2 => 'MISE_EN_PAIEMENT_ID', + 3 => 'FORMULE_RES_SERVICE_ID', + 4 => 'FORMULE_RES_SERVICE_REF_ID', + ), + ), + 'TBL_PIECE_JOINTE_DEMANDE__UN' => + array ( + 'name' => 'TBL_PIECE_JOINTE_DEMANDE__UN', + 'table' => 'TBL_PIECE_JOINTE_DEMANDE', + 'index' => 'TBL_PJD_UN_IDX', + 'columns' => + array ( + 0 => 'TYPE_PIECE_JOINTE_ID', + 1 => 'INTERVENANT_ID', + 2 => 'TO_DELETE', + ), + ), + 'TBL_PIECE_JOINTE_FOURNIE__UN' => + array ( + 'name' => 'TBL_PIECE_JOINTE_FOURNIE__UN', + 'table' => 'TBL_PIECE_JOINTE_FOURNIE', + 'index' => 'TBL_PJF_UN_IDX', + 'columns' => + array ( + 0 => 'TYPE_PIECE_JOINTE_ID', + 1 => 'INTERVENANT_ID', + 2 => 'VALIDATION_ID', + 3 => 'FICHIER_ID', + ), + ), + 'TBL_PIECE_JOINTE__UN' => + array ( + 'name' => 'TBL_PIECE_JOINTE__UN', + 'table' => 'TBL_PIECE_JOINTE', + 'index' => 'TBL_PIECE_JOINTE__UN_IDX', + 'columns' => + array ( + 0 => 'TYPE_PIECE_JOINTE_ID', + 1 => 'INTERVENANT_ID', + 2 => 'TO_DELETE', + ), + ), + 'TBL_SERVICE_REFERENTIEL__UN' => + array ( + 'name' => 'TBL_SERVICE_REFERENTIEL__UN', + 'table' => 'TBL_SERVICE_REFERENTIEL', + 'index' => 'TBL_SERVICE_REFERENTIEL_UN_IDX', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + 1 => 'TYPE_VOLUME_HORAIRE_ID', + 2 => 'STRUCTURE_ID', + 3 => 'TO_DELETE', + ), + ), + 'TBL_SERVICE_SAISIE__UN' => + array ( + 'name' => 'TBL_SERVICE_SAISIE__UN', + 'table' => 'TBL_SERVICE_SAISIE', + 'index' => 'TBL_SERVICE_SAISIE_UN_IDX', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + 1 => 'TO_DELETE', + ), + ), + 'TBL_SERVICE__UN' => + array ( + 'name' => 'TBL_SERVICE__UN', + 'table' => 'TBL_SERVICE', + 'index' => 'TBL_SERVICE__UN', + 'columns' => + array ( + 0 => 'SERVICE_ID', + 1 => 'TYPE_VOLUME_HORAIRE_ID', + 2 => 'TO_DELETE', + ), + ), + 'TBL_VALIDATION_ENSEIGNEMENT_UN' => + array ( + 'name' => 'TBL_VALIDATION_ENSEIGNEMENT_UN', + 'table' => 'TBL_VALIDATION_ENSEIGNEMENT', + 'index' => 'TBL_VALIDATION_ENSEIGNEMENT_UN', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + 1 => 'STRUCTURE_ID', + 2 => 'TYPE_VOLUME_HORAIRE_ID', + 3 => 'SERVICE_ID', + 4 => 'VOLUME_HORAIRE_ID', + 5 => 'VALIDATION_ID', + 6 => 'TO_DELETE', + ), + ), + 'TBL_VALIDATION_REFERENTIEL__UN' => + array ( + 'name' => 'TBL_VALIDATION_REFERENTIEL__UN', + 'table' => 'TBL_VALIDATION_REFERENTIEL', + 'index' => 'TBL_VALIDATION_REFERENTIEL__UN', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + 1 => 'STRUCTURE_ID', + 2 => 'TYPE_VOLUME_HORAIRE_ID', + 3 => 'SERVICE_REFERENTIEL_ID', + 4 => 'VOLUME_HORAIRE_REF_ID', + 5 => 'VALIDATION_ID', + 6 => 'TO_DELETE', + ), + ), + 'TBL_WORKFLOW__UN' => + array ( + 'name' => 'TBL_WORKFLOW__UN', + 'table' => 'TBL_WORKFLOW', + 'index' => 'TBL_WORKFLOW__UN', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + 1 => 'ETAPE_ID', + 2 => 'STRUCTURE_ID', + ), + ), + 'TYPE_AGREMENT_STATUT__UN' => + array ( + 'name' => 'TYPE_AGREMENT_STATUT__UN', + 'table' => 'TYPE_AGREMENT_STATUT', + 'index' => 'TYPE_AGREMENT_STATUT__UN', + 'columns' => + array ( + 0 => 'TYPE_AGREMENT_ID', + 1 => 'STATUT_INTERVENANT_ID', + 2 => 'PREMIER_RECRUTEMENT', + ), + ), + 'TYPE_AGREMENT__UN' => + array ( + 'name' => 'TYPE_AGREMENT__UN', + 'table' => 'TYPE_AGREMENT', + 'index' => 'TYPE_AGREMENT__UN', + 'columns' => + array ( + 0 => 'CODE', + ), + ), + 'TYPE_FORMATION_SOURCE_UN' => + array ( + 'name' => 'TYPE_FORMATION_SOURCE_UN', + 'table' => 'TYPE_FORMATION', + 'index' => 'TYPE_FORMATION__UN', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + ), + ), + 'TYPE_HEURES_UN' => + array ( + 'name' => 'TYPE_HEURES_UN', + 'table' => 'TYPE_HEURES', + 'index' => 'TYPE_HEURES_UN', + 'columns' => + array ( + 0 => 'CODE', + ), + ), + 'TYPE_INTERVENANT_CODE_UN' => + array ( + 'name' => 'TYPE_INTERVENANT_CODE_UN', + 'table' => 'TYPE_INTERVENANT', + 'index' => 'TYPE_INTERVENANT_CODE_UN', + 'columns' => + array ( + 0 => 'CODE', + ), + ), + 'TYPE_INTERVENTION_STATUT__UN' => + array ( + 'name' => 'TYPE_INTERVENTION_STATUT__UN', + 'table' => 'TYPE_INTERVENTION_STATUT', + 'index' => 'TYPE_INTERVENTION_STATUT__UN', + 'columns' => + array ( + 0 => 'TYPE_INTERVENTION_ID', + 1 => 'STATUT_INTERVENANT_ID', + ), + ), + 'TYPE_MODULATEUR_EP_SOURCE_UN' => + array ( + 'name' => 'TYPE_MODULATEUR_EP_SOURCE_UN', + 'table' => 'TYPE_MODULATEUR_EP', + 'index' => 'TYPE_MODULATEUR_EP__UN', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + ), + ), + 'TYPE_MODULATEUR_EP__UNV1' => + array ( + 'name' => 'TYPE_MODULATEUR_EP__UNV1', + 'table' => 'TYPE_MODULATEUR_EP', + 'index' => 'TYPE_MODULATEUR_EP__UNV1', + 'columns' => + array ( + 0 => 'TYPE_MODULATEUR_ID', + 1 => 'ELEMENT_PEDAGOGIQUE_ID', + ), + ), + 'TYPE_MODULATEUR_STRUCTURE_UN' => + array ( + 'name' => 'TYPE_MODULATEUR_STRUCTURE_UN', + 'table' => 'TYPE_MODULATEUR_STRUCTURE', + 'index' => 'TYPE_MODULATEUR_STRUCTURE_UN', + 'columns' => + array ( + 0 => 'TYPE_MODULATEUR_ID', + 1 => 'STRUCTURE_ID', + 2 => 'ANNEE_DEBUT_ID', + 3 => 'HISTO_DESTRUCTION', + ), + ), + 'TYPE_VOLUME_HORAIRE__UN' => + array ( + 'name' => 'TYPE_VOLUME_HORAIRE__UN', + 'table' => 'TYPE_VOLUME_HORAIRE', + 'index' => 'TYPE_VOLUME_HORAIRE__UN', + 'columns' => + array ( + 0 => 'CODE', + ), + ), + 'UTILISATEUR_USERNAME_UN' => + array ( + 'name' => 'UTILISATEUR_USERNAME_UN', + 'table' => 'UTILISATEUR', + 'index' => 'UTILISATEUR_USERNAME_UN', + 'columns' => + array ( + 0 => 'USERNAME', + ), + ), + 'VOLUME_HORAIRE_CHARGE__UN' => + array ( + 'name' => 'VOLUME_HORAIRE_CHARGE__UN', + 'table' => 'VOLUME_HORAIRE_CHARGE', + 'index' => 'VOLUME_HORAIRE_CHARGE__UN', + 'columns' => + array ( + 0 => 'ELEMENT_PEDAGOGIQUE_ID', + 1 => 'TYPE_INTERVENTION_ID', + 2 => 'HISTO_DESTRUCTION', + ), + ), + 'VOLUME_HORAIRE_CHARG_SOURCE_UN' => + array ( + 'name' => 'VOLUME_HORAIRE_CHARG_SOURCE_UN', + 'table' => 'VOLUME_HORAIRE_CHARGE', + 'index' => 'VHC_HISTO_UN', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'VOLUME_HORAIRE_ENS_SOURCE_UN' => + array ( + 'name' => 'VOLUME_HORAIRE_ENS_SOURCE_UN', + 'table' => 'VOLUME_HORAIRE_ENS', + 'index' => 'VOLUME_HORAIRE_ENS_UK1', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'VOLUME_HORAIRE_REF_SOURCE_UN' => + array ( + 'name' => 'VOLUME_HORAIRE_REF_SOURCE_UN', + 'table' => 'VOLUME_HORAIRE_REF', + 'index' => 'VOLUME_HORAIRE_REF_SOURCE_UN', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'VOLUME_HORAIRE_SOURCE_UN' => + array ( + 'name' => 'VOLUME_HORAIRE_SOURCE_UN', + 'table' => 'VOLUME_HORAIRE', + 'index' => 'VOLUME_HORAIRE_SOURCE_UN', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'WF_ETAPE_CODE_UN' => + array ( + 'name' => 'WF_ETAPE_CODE_UN', + 'table' => 'WF_ETAPE', + 'index' => 'WF_ETAPE_CODE_UN', + 'columns' => + array ( + 0 => 'CODE', + ), + ), + 'WF_ETAPE_DEP__UN' => + array ( + 'name' => 'WF_ETAPE_DEP__UN', + 'table' => 'WF_ETAPE_DEP', + 'index' => 'WF_ETAPE_DEP__UN_IDX', + 'columns' => + array ( + 0 => 'ETAPE_SUIV_ID', + 1 => 'ETAPE_PREC_ID', + ), + ), + 'WF_ETAPE_ORDRE_UN' => + array ( + 'name' => 'WF_ETAPE_ORDRE_UN', + 'table' => 'WF_ETAPE', + 'index' => 'WF_ETAPE_ORDRE_UN', + 'columns' => + array ( + 0 => 'ORDRE', + ), + ), + ), + 'BddAdmin\\Ddl\\DdlTrigger' => + array ( + 'AFFECTATION_RECHERCHE_CK' => + array ( + 'name' => 'AFFECTATION_RECHERCHE_CK', + 'definition' => 'CREATE OR REPLACE TRIGGER "AFFECTATION_RECHERCHE_CK" +BEFORE INSERT OR UPDATE ON affectation_recherche +FOR EACH ROW +DECLARE + pragma autonomous_transaction; + rows_found integer; +BEGIN + + if :NEW.histo_destruction IS NOT NULL THEN RETURN; END IF; -- pas de check si c\'est pour une historicisation + + select + count(*) into rows_found + from + affectation_recherche + where + intervenant_id = :new.intervenant_id + AND structure_id = :new.structure_id + AND histo_destruction IS NULL + AND id <> :NEW.id; + + if rows_found > 0 THEN + raise_application_error(-20101, \'Un enseignant (id=\' || :NEW.intervenant_id || \') ne peut pas avoir plusieurs affectations de recherche pour une même structure\'); + END IF; + +END;', + ), + 'AGREMENT_CK' => + array ( + 'name' => 'AGREMENT_CK', + 'definition' => 'CREATE OR REPLACE TRIGGER "AGREMENT_CK" +BEFORE UPDATE ON agrement FOR EACH ROW +DECLARE + contrat_found INTEGER; +BEGIN + + SELECT + COUNT(*) INTO contrat_found + FROM + contrat c + WHERE + c.INTERVENANT_ID = :NEW.intervenant_id + AND c.structure_id = NVL(:NEW.structure_id,c.structure_id) + AND c.histo_destruction IS NULL + AND ROWNUM = 1; + + IF + 1 = contrat_found + AND :NEW.histo_destruction IS NOT NULL AND :OLD.histo_destruction IS NULL + THEN + + IF :NEW.structure_id IS NULL THEN + raise_application_error(-20101, \'Cet agrément ne peut pas être supprimé car un contrat a été signé.\'); + ELSE + raise_application_error(-20101, \'Cet agrément ne peut pas être supprimé car un contrat a été signé dans la même composante.\'); + END IF; + END IF; + +END;', + ), + 'CALC_TAUX_HETD_ANNEES' => + array ( + 'name' => 'CALC_TAUX_HETD_ANNEES', + 'definition' => 'CREATE OR REPLACE TRIGGER "CALC_TAUX_HETD_ANNEES" +AFTER INSERT OR UPDATE OR DELETE ON "TAUX_HORAIRE_HETD" +BEGIN + OSE_FORMULE.UPDATE_ANNEE_TAUX_HETD; +END;', + ), + 'CHARGENS_MAJ_EFFECTIFS' => + array ( + 'name' => 'CHARGENS_MAJ_EFFECTIFS', + 'definition' => 'CREATE OR REPLACE TRIGGER "CHARGENS_MAJ_EFFECTIFS" + AFTER INSERT OR UPDATE OR DELETE ON scenario_noeud_effectif + REFERENCING FOR EACH ROW +BEGIN +RETURN; + return; + IF NOT ose_chargens.ENABLE_TRIGGER_EFFECTIFS THEN RETURN; END IF; + IF DELETING THEN + ose_chargens.DEM_CALC_SUB_EFFECTIF( :OLD.scenario_noeud_id, :OLD.type_heures_id, :OLD.etape_id, 0 ); + ELSE + ose_chargens.DEM_CALC_SUB_EFFECTIF( :NEW.scenario_noeud_id, :NEW.type_heures_id, :NEW.etape_id, :NEW.effectif ); + END IF; + +END;', + ), + 'ELEMENT_PEDAGOGIQUE_CK' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_CK', + 'definition' => 'CREATE OR REPLACE TRIGGER "ELEMENT_PEDAGOGIQUE_CK" +BEFORE INSERT OR UPDATE ON element_pedagogique FOR EACH ROW +DECLARE + enseignement INTEGER; + source_id INTEGER; +BEGIN + SELECT id INTO source_id FROM source WHERE code = \'OSE\'; + + IF :NEW.source_id <> source_id THEN RETURN; END IF; -- impossible de checker car l\'UPD par import se fait champ par champ... + + IF :NEW.fi = 0 AND :NEW.fc = 0 AND :NEW.fa = 0 THEN + raise_application_error(-20101, \'Un enseignement doit obligatoirement être au moins en FI, FC ou FA\'); + END IF; + + IF 1 <> ROUND(:NEW.taux_fi + :NEW.taux_fc + :NEW.taux_fa, 2) THEN + raise_application_error( -20101, \'Le total des taux FI, FC et FA n\'\'est pas égal à 100%\'); + END IF; + + IF :NEW.fi = 0 AND :NEW.taux_fi > 0 THEN + raise_application_error( -20101, \'Le taux FI doit être à 0 puisque la formation n\'\'est pas dispensée en FI\'); + END IF; + + IF :NEW.fa = 0 AND :NEW.taux_fa > 0 THEN + raise_application_error( -20101, \'Le taux FA doit être à 0 puisque la formation n\'\'est pas dispensée en FA\'); + END IF; + + IF :NEW.fc = 0 AND :NEW.taux_fc > 0 THEN + raise_application_error( -20101, \'Le taux FC doit être à 0 puisque la formation n\'\'est pas dispensée en FC\'); + END IF; + + IF :NEW.periode_id IS NOT NULL THEN + SELECT p.enseignement + INTO enseignement + FROM periode p + WHERE p.id = :NEW.periode_id; + IF enseignement <> 1 THEN + raise_application_error(-20101, \'Cette période n\'\'est pas appliquable à cet élément pédagogique.\'); + END IF; + END IF; + +END;', + ), + 'F_CONTRAT' => + array ( + 'name' => 'F_CONTRAT', + 'definition' => 'CREATE OR REPLACE TRIGGER "F_CONTRAT" + AFTER DELETE OR UPDATE OF INTERVENANT_ID, HISTO_CREATION, HISTO_DESTRUCTION, STRUCTURE_ID, DATE_RETOUR_SIGNE, VALIDATION_ID ON CONTRAT + REFERENCING FOR EACH ROW + BEGIN + + IF NOT UNICAEN_TBL.ACTIV_TRIGGERS THEN RETURN; END IF; + + FOR p IN ( + + SELECT DISTINCT + s.intervenant_id + FROM + volume_horaire vh + JOIN service s ON s.id = vh.service_id AND s.histo_destruction IS NULL + WHERE + vh.histo_destruction IS NULL + AND (vh.contrat_id = :OLD.id OR vh.contrat_id = :NEW.id) + + ) LOOP + + UNICAEN_TBL.DEMANDE_CALCUL(\'formule\', UNICAEN_TBL.make_params(\'INTERVENANT_ID\', p.intervenant_id) ); + + END LOOP; + +END;', + ), + 'F_CONTRAT_S' => + array ( + 'name' => 'F_CONTRAT_S', + 'definition' => 'CREATE OR REPLACE TRIGGER "F_CONTRAT_S" +AFTER UPDATE OR DELETE ON contrat +BEGIN + UNICAEN_TBL.CALCULER_DEMANDES; +END;', + ), + 'F_ELEMENT_MODULATEUR' => + array ( + 'name' => 'F_ELEMENT_MODULATEUR', + 'definition' => 'CREATE OR REPLACE TRIGGER "F_ELEMENT_MODULATEUR" +AFTER INSERT OR UPDATE OR DELETE ON element_modulateur +FOR EACH ROW +BEGIN + + IF NOT UNICAEN_TBL.ACTIV_TRIGGERS THEN RETURN; END IF; + + FOR p IN ( + + SELECT DISTINCT + s.intervenant_id + FROM + service s + WHERE + s.histo_destruction IS NULL + AND (s.element_pedagogique_id = :OLD.element_id OR s.element_pedagogique_id = :NEW.element_id) + + ) LOOP + + UNICAEN_TBL.DEMANDE_CALCUL(\'formule\', UNICAEN_TBL.make_params(\'INTERVENANT_ID\', p.intervenant_id) ); + + END LOOP; + +END;', + ), + 'F_ELEMENT_MODULATEUR_S' => + array ( + 'name' => 'F_ELEMENT_MODULATEUR_S', + 'definition' => 'CREATE OR REPLACE TRIGGER "F_ELEMENT_MODULATEUR_S" +AFTER INSERT OR UPDATE OR DELETE ON element_modulateur +BEGIN + UNICAEN_TBL.CALCULER_DEMANDES; +END;', + ), + 'F_ELEMENT_PEDAGOGIQUE' => + array ( + 'name' => 'F_ELEMENT_PEDAGOGIQUE', + 'definition' => 'CREATE OR REPLACE TRIGGER "F_ELEMENT_PEDAGOGIQUE" + AFTER DELETE OR UPDATE OF ID, STRUCTURE_ID, PERIODE_ID, TAUX_FOAD, FI, FC, FA, HISTO_CREATION, HISTO_DESTRUCTION, TAUX_FA, TAUX_FC, TAUX_FI, ANNEE_ID ON "ELEMENT_PEDAGOGIQUE" + REFERENCING FOR EACH ROW + BEGIN + + IF NOT UNICAEN_TBL.ACTIV_TRIGGERS THEN RETURN; END IF; + + FOR p IN + ( SELECT DISTINCT s.intervenant_id + FROM service s + WHERE (s.element_pedagogique_id = :NEW.id + OR s.element_pedagogique_id = :OLD.id) + AND s.histo_destruction IS NULL + ) LOOP UNICAEN_TBL.DEMANDE_CALCUL(\'formule\', UNICAEN_TBL.make_params(\'INTERVENANT_ID\', p.intervenant_id) ); +END LOOP; +END;', + ), + 'F_ELEMENT_PEDAGOGIQUE_S' => + array ( + 'name' => 'F_ELEMENT_PEDAGOGIQUE_S', + 'definition' => 'CREATE OR REPLACE TRIGGER "F_ELEMENT_PEDAGOGIQUE_S" AFTER +UPDATE OR DELETE ON element_pedagogique BEGIN + UNICAEN_TBL.CALCULER_DEMANDES; +END;', + ), + 'F_INTERVENANT' => + array ( + 'name' => 'F_INTERVENANT', + 'definition' => 'CREATE OR REPLACE TRIGGER "F_INTERVENANT" + AFTER UPDATE OF ID, DATE_NAISSANCE, STATUT_ID, STRUCTURE_ID, HISTO_CREATION, HISTO_DESTRUCTION, PREMIER_RECRUTEMENT, ANNEE_ID ON "INTERVENANT" + REFERENCING FOR EACH ROW + BEGIN + + IF NOT UNICAEN_TBL.ACTIV_TRIGGERS THEN RETURN; END IF; + + FOR p IN ( + + SELECT DISTINCT + fr.intervenant_id + FROM + formule_resultat fr + WHERE + fr.intervenant_id = :NEW.id OR fr.intervenant_id = :OLD.id + + ) LOOP + + UNICAEN_TBL.DEMANDE_CALCUL(\'formule\', UNICAEN_TBL.make_params(\'INTERVENANT_ID\', p.intervenant_id) ); + + END LOOP; + +END;', + ), + 'F_INTERVENANT_S' => + array ( + 'name' => 'F_INTERVENANT_S', + 'definition' => 'CREATE OR REPLACE TRIGGER "F_INTERVENANT_S" +AFTER UPDATE ON "INTERVENANT" +BEGIN + UNICAEN_TBL.CALCULER_DEMANDES; +END;', + ), + 'F_MODIF_SERVICE_DU' => + array ( + 'name' => 'F_MODIF_SERVICE_DU', + 'definition' => 'CREATE OR REPLACE TRIGGER "F_MODIF_SERVICE_DU" +AFTER INSERT OR UPDATE OR DELETE ON modification_service_du +FOR EACH ROW +BEGIN + + IF NOT UNICAEN_TBL.ACTIV_TRIGGERS THEN RETURN; END IF; + + IF DELETING OR UPDATING THEN + UNICAEN_TBL.DEMANDE_CALCUL(\'formule\', UNICAEN_TBL.make_params(\'INTERVENANT_ID\', :OLD.intervenant_id) ); + END IF; + IF INSERTING OR UPDATING THEN + UNICAEN_TBL.DEMANDE_CALCUL(\'formule\', UNICAEN_TBL.make_params(\'INTERVENANT_ID\', :NEW.intervenant_id) ); + END IF; + +END;', + ), + 'F_MODIF_SERVICE_DU_S' => + array ( + 'name' => 'F_MODIF_SERVICE_DU_S', + 'definition' => 'CREATE OR REPLACE TRIGGER "F_MODIF_SERVICE_DU_S" +AFTER INSERT OR UPDATE OR DELETE ON modification_service_du +BEGIN + UNICAEN_TBL.CALCULER_DEMANDES; +END;', + ), + 'F_MODULATEUR' => + array ( + 'name' => 'F_MODULATEUR', + 'definition' => 'CREATE OR REPLACE TRIGGER "F_MODULATEUR" +AFTER UPDATE OR DELETE ON modulateur +FOR EACH ROW +BEGIN + + IF NOT UNICAEN_TBL.ACTIV_TRIGGERS THEN RETURN; END IF; + + FOR p IN ( + + SELECT DISTINCT + s.intervenant_id + FROM + service s + JOIN element_modulateur em ON + em.element_id = s.element_pedagogique_id + AND em.histo_destruction IS NULL + WHERE + s.histo_destruction IS NULL + AND (em.modulateur_id = :OLD.id OR em.modulateur_id = :NEW.id) + + ) LOOP + + UNICAEN_TBL.DEMANDE_CALCUL(\'formule\', UNICAEN_TBL.make_params(\'INTERVENANT_ID\', p.intervenant_id) ); + + END LOOP; +END;', + ), + 'F_MODULATEUR_S' => + array ( + 'name' => 'F_MODULATEUR_S', + 'definition' => 'CREATE OR REPLACE TRIGGER "F_MODULATEUR_S" +AFTER UPDATE OR DELETE ON modulateur +BEGIN + UNICAEN_TBL.CALCULER_DEMANDES; +END;', + ), + 'F_MOTIF_MODIFICATION_SERVICE' => + array ( + 'name' => 'F_MOTIF_MODIFICATION_SERVICE', + 'definition' => 'CREATE OR REPLACE TRIGGER "F_MOTIF_MODIFICATION_SERVICE" +AFTER UPDATE OR DELETE ON MOTIF_MODIFICATION_SERVICE +FOR EACH ROW +BEGIN + + IF NOT UNICAEN_TBL.ACTIV_TRIGGERS THEN RETURN; END IF; + + FOR p IN ( + + SELECT DISTINCT + intervenant_id + FROM + modification_service_du msd + WHERE + msd.histo_destruction IS NULL + AND (msd.motif_id = :NEW.id OR msd.motif_id = :OLD.id) + + ) LOOP + + UNICAEN_TBL.DEMANDE_CALCUL(\'formule\', UNICAEN_TBL.make_params(\'INTERVENANT_ID\', p.intervenant_id) ); + + END LOOP; + +END;', + ), + 'F_MOTIF_MODIFICATION_SERVICE_S' => + array ( + 'name' => 'F_MOTIF_MODIFICATION_SERVICE_S', + 'definition' => 'CREATE OR REPLACE TRIGGER "F_MOTIF_MODIFICATION_SERVICE_S" +AFTER UPDATE OR DELETE ON MOTIF_MODIFICATION_SERVICE +BEGIN + UNICAEN_TBL.CALCULER_DEMANDES; +END;', + ), + 'F_STATUT_INTERVENANT' => + array ( + 'name' => 'F_STATUT_INTERVENANT', + 'definition' => 'CREATE OR REPLACE TRIGGER "F_STATUT_INTERVENANT" +AFTER UPDATE OF + service_statutaire, + depassement, + type_intervenant_id, + non_autorise +ON STATUT_INTERVENANT +FOR EACH ROW +BEGIN return; /* Désactivation du trigger... */ + + IF NOT UNICAEN_TBL.ACTIV_TRIGGERS THEN RETURN; END IF; + + FOR p IN ( + + SELECT DISTINCT + fr.intervenant_id + FROM + intervenant i + JOIN formule_resultat fr ON fr.intervenant_id = i.id + WHERE + (i.statut_id = :NEW.id OR i.statut_id = :OLD.id) + AND i.histo_destruction IS NULL + + ) LOOP + + UNICAEN_TBL.DEMANDE_CALCUL(\'formule\', UNICAEN_TBL.make_params(\'INTERVENANT_ID\', p.intervenant_id) ); + + END LOOP; +END;', + ), + 'F_STATUT_INTERVENANT_S' => + array ( + 'name' => 'F_STATUT_INTERVENANT_S', + 'definition' => 'CREATE OR REPLACE TRIGGER "F_STATUT_INTERVENANT_S" +AFTER UPDATE ON STATUT_INTERVENANT +BEGIN + UNICAEN_TBL.CALCULER_DEMANDES; +END;', + ), + 'F_TYPE_INTERVENTION' => + array ( + 'name' => 'F_TYPE_INTERVENTION', + 'definition' => 'CREATE OR REPLACE TRIGGER "F_TYPE_INTERVENTION" +AFTER UPDATE OF + taux_hetd_service, + taux_hetd_complementaire +ON type_intervention +FOR EACH ROW +BEGIN + + IF NOT UNICAEN_TBL.ACTIV_TRIGGERS THEN RETURN; END IF; + + FOR p IN ( + + SELECT DISTINCT + s.intervenant_id + FROM + volume_horaire vh + JOIN service s ON s.id = vh.service_id AND s.histo_destruction IS NULL + WHERE + vh.histo_destruction IS NULL + AND (vh.type_intervention_id = :NEW.id OR vh.type_intervention_id = :OLD.id) + + ) LOOP + + UNICAEN_TBL.DEMANDE_CALCUL(\'formule\', UNICAEN_TBL.make_params(\'INTERVENANT_ID\', p.intervenant_id) ); + + END LOOP; +END;', + ), + 'F_TYPE_INTERVENTION_S' => + array ( + 'name' => 'F_TYPE_INTERVENTION_S', + 'definition' => 'CREATE OR REPLACE TRIGGER "F_TYPE_INTERVENTION_S" +AFTER UPDATE ON type_intervention +BEGIN + UNICAEN_TBL.CALCULER_DEMANDES; +END;', + ), + 'INDIC_TRG_MODIF_DOSSIER' => + array ( + 'name' => 'INDIC_TRG_MODIF_DOSSIER', + 'definition' => 'CREATE OR REPLACE TRIGGER "INDIC_TRG_MODIF_DOSSIER" + AFTER INSERT OR UPDATE OF NOM_USUEL, NOM_PATRONYMIQUE, PRENOM, CIVILITE_ID, ADRESSE, RIB, DATE_NAISSANCE ON "DOSSIER" + + FOR EACH ROW +/** + * But : mettre à jour la liste des PJ attendues. + */ +DECLARE + i integer := 1; + intervenantId NUMERIC; + found integer; + estCreationDossier integer; + type array_t is table of varchar2(1024); + + attrNames array_t := array_t(); + attrOldVals array_t := array_t(); + attrNewVals array_t := array_t(); + + -- valeurs importées (format texte) : + impSourceName source.libelle%type; + impNomUsuel indic_modif_dossier.ATTR_NEW_VALUE%type; + impNomPatro indic_modif_dossier.ATTR_NEW_VALUE%type; + impPrenom indic_modif_dossier.ATTR_NEW_VALUE%type; + impCivilite indic_modif_dossier.ATTR_NEW_VALUE%type; + impDateNaiss indic_modif_dossier.ATTR_NEW_VALUE%type; + impAdresse indic_modif_dossier.ATTR_NEW_VALUE%type; + impRib indic_modif_dossier.ATTR_NEW_VALUE%type; + -- anciennes valeurs dans le dossier (format texte) : + oldSourceName source.libelle%type; + oldNomUsuel indic_modif_dossier.ATTR_NEW_VALUE%type; + oldNomPatro indic_modif_dossier.ATTR_NEW_VALUE%type; + oldPrenom indic_modif_dossier.ATTR_NEW_VALUE%type; + oldCivilite indic_modif_dossier.ATTR_NEW_VALUE%type; + oldDateNaiss indic_modif_dossier.ATTR_NEW_VALUE%type; + oldAdresse indic_modif_dossier.ATTR_NEW_VALUE%type; + oldRib indic_modif_dossier.ATTR_NEW_VALUE%type; + -- nouvelles valeurs dans le dossier (format texte) : + newSourceName source.libelle%type; + newNomUsuel indic_modif_dossier.ATTR_NEW_VALUE%type; + newNomPatro indic_modif_dossier.ATTR_NEW_VALUE%type; + newPrenom indic_modif_dossier.ATTR_NEW_VALUE%type; + newCivilite indic_modif_dossier.ATTR_NEW_VALUE%type; + newDateNaiss indic_modif_dossier.ATTR_NEW_VALUE%type; + newAdresse indic_modif_dossier.ATTR_NEW_VALUE%type; + newRib indic_modif_dossier.ATTR_NEW_VALUE%type; +BEGIN + -- + -- Témoin indiquant s\'il s\'agit d\'une création de dossier (insert). + -- + estCreationDossier := case when inserting then 1 else 0 end; + + -- + -- Fetch source OSE. + -- + select s.libelle into newSourceName from source s where s.code = \'OSE\'; + + -- + -- Fetch et formattage texte des valeurs importées. + -- + select + i.id, + s.libelle, + nvl(i.NOM_USUEL, \'(Aucun)\'), + nvl(i.NOM_PATRONYMIQUE, \'(Aucun)\'), + nvl(i.PRENOM, \'(Aucun)\'), + nvl(c.libelle_court, \'(Aucune)\'), + nvl(to_char(i.DATE_NAISSANCE, \'DD/MM/YYYY\'), \'(Aucune)\'), + nvl(ose_divers.formatted_rib(i.bic, i.iban), \'(Aucun)\'), + case when a.id is not null + then ose_divers.formatted_adresse(a.NO_VOIE, a.NOM_VOIE, a.BATIMENT, a.MENTION_COMPLEMENTAIRE, a.LOCALITE, a.CODE_POSTAL, a.VILLE, a.PAYS_LIBELLE) + else \'(Aucune)\' + end + into + intervenantId, + oldSourceName, + impNomUsuel, + impNomPatro, + impPrenom, + impCivilite, + impDateNaiss, + impRib, + impAdresse + from intervenant i + join source s on s.id = i.source_id + left join civilite c on c.id = i.civilite_id + left join adresse_intervenant a on a.intervenant_id = i.id AND a.histo_destruction IS NULL + where i.id = :NEW.intervenant_id; + + -- + -- Anciennes valeurs dans le cas d\'une création de dossier : ce sont les valeurs importées. + -- + if (1 = estCreationDossier) then + --dbms_output.put_line(\'inserting\'); + oldNomUsuel := impNomUsuel; + oldNomPatro := impNomPatro; + oldPrenom := impPrenom; + oldCivilite := impCivilite; + oldDateNaiss := impDateNaiss; + oldAdresse := impAdresse; + oldRib := impRib; + -- + -- Anciennes valeurs dans le cas d\'une mise à jour du dossier. + -- + else + --dbms_output.put_line(\'updating\'); + oldNomUsuel := trim(:OLD.NOM_USUEL); + oldNomPatro := trim(:OLD.NOM_PATRONYMIQUE); + oldPrenom := trim(:OLD.PRENOM); + oldDateNaiss := case when :OLD.DATE_NAISSANCE is null then \'(Aucune)\' else to_char(:OLD.DATE_NAISSANCE, \'DD/MM/YYYY\') end; + oldAdresse := trim(:OLD.ADRESSE); + oldRib := trim(:OLD.RIB); + if :OLD.CIVILITE_ID is not null then + select c.libelle_court into oldCivilite from civilite c where c.id = :OLD.CIVILITE_ID; + else + oldCivilite := \'(Aucune)\'; + end if; + select s.libelle into oldSourceName from source s where s.code = \'OSE\'; + end if; + + -- + -- Nouvelles valeurs saisies. + -- + newNomUsuel := trim(:NEW.NOM_USUEL); + newNomPatro := trim(:NEW.NOM_PATRONYMIQUE); + newPrenom := trim(:NEW.PRENOM); + newDateNaiss := case when :NEW.DATE_NAISSANCE is null then \'(Aucune)\' else to_char(:NEW.DATE_NAISSANCE, \'DD/MM/YYYY\') end; + newAdresse := trim(:NEW.ADRESSE); + newRib := trim(:NEW.RIB); + if :NEW.CIVILITE_ID is not null then + select c.libelle_court into newCivilite from civilite c where c.id = :NEW.CIVILITE_ID; + else + newCivilite := \'(Aucune)\'; + end if; + + -- + -- Détection des différences. + -- + if newNomUsuel <> oldNomUsuel then + --dbms_output.put_line(\'NOM_USUEL \' || sourceLib || \' = \' || oldNomUsuel || \' --> NOM_USUEL OSE = \' || :NEW.NOM_USUEL); + attrNames.extend(1); + attrOldVals.extend(1); + attrNewVals.extend(1); + attrNames(i) := \'Nom usuel\'; + attrOldVals(i) := oldNomUsuel; + attrNewVals(i) := newNomUsuel; + i := i + 1; + end if; + if newNomPatro <> oldNomPatro then + --dbms_output.put_line(\'NOM_PATRONYMIQUE \' || sourceLib || \' = \' || oldNomPatro || \' --> NOM_PATRONYMIQUE OSE = \' || :NEW.NOM_PATRONYMIQUE); + attrNames.extend(1); + attrOldVals.extend(1); + attrNewVals.extend(1); + attrNames(i) := \'Nom de naissance\'; + attrOldVals(i) := oldNomPatro; + attrNewVals(i) := newNomPatro; + i := i + 1; + end if; + if newPrenom <> oldPrenom then + --dbms_output.put_line(\'PRENOM \' || sourceLib || \' = \' || oldPrenom || \' --> PRENOM OSE = \' || :NEW.PRENOM); + attrNames.extend(1); + attrOldVals.extend(1); + attrNewVals.extend(1); + attrNames(i) := \'Prénom\'; + attrOldVals(i) := oldPrenom; + attrNewVals(i) := newPrenom; + i := i + 1; + end if; + if newCivilite <> oldCivilite then + --dbms_output.put_line(\'CIVILITE_ID \' || sourceLib || \' = \' || oldCivilite || \' --> CIVILITE_ID OSE = \' || :NEW.CIVILITE_ID); + attrNames.extend(1); + attrOldVals.extend(1); + attrNewVals.extend(1); + attrNames(i) := \'Civilité\'; + attrOldVals(i) := oldCivilite; + attrNewVals(i) := newCivilite; + i := i + 1; + end if; + if newDateNaiss <> oldDateNaiss then + --dbms_output.put_line(\'DATE_NAISSANCE \' || sourceLib || \' = \' || oldDateNaiss || \' --> DATE_NAISSANCE OSE = \' || :NEW.DATE_NAISSANCE); + attrNames.extend(1); + attrOldVals.extend(1); + attrNewVals.extend(1); + attrNames(i) := \'Date de naissance\'; + attrOldVals(i) := oldDateNaiss; + attrNewVals(i) := newDateNaiss; + i := i + 1; + end if; + if newAdresse <> oldAdresse then + --dbms_output.put_line(\'ADRESSE \' || sourceLib || \' = \' || oldAdresse || \' --> ADRESSE OSE = \' || :NEW.ADRESSE); + attrNames.extend(1); + attrOldVals.extend(1); + attrNewVals.extend(1); + attrNames(i) := \'Adresse postale\'; + attrOldVals(i) := oldAdresse; + attrNewVals(i) := newAdresse; + i := i + 1; + end if; + if oldRib is null or newRib <> oldRib then + --dbms_output.put_line(\'RIB \' || sourceLib || \' = \' || oldRib || \' --> RIB OSE = \' || :NEW.RIB); + attrNames.extend(1); + attrOldVals.extend(1); + attrNewVals.extend(1); + attrNames(i) := \'RIB\'; + attrOldVals(i) := oldRib; + attrNewVals(i) := newRib; + i := i + 1; + end if; + + -- + -- Enregistrement des différences. + -- + for i in 1 .. attrNames.count loop + --dbms_output.put_line(attrNames(i) || \' \' || oldSourceName || \' = \' || attrOldVals(i) || \' --> \' || attrNames(i) || \' \' || newSourceName || \' = \' || attrNewVals(i)); + + -- vérification que la même modif n\'est pas déjà consignée + select count(*) into found from indic_modif_dossier + where INTERVENANT_ID = intervenantId + and ATTR_NAME = attrNames(i) + and ATTR_OLD_VALUE = to_char(attrOldVals(i)) + and ATTR_NEW_VALUE = to_char(attrNewVals(i)); + if found > 0 then + continue; + end if; + + insert into INDIC_MODIF_DOSSIER( + id, + INTERVENANT_ID, + ATTR_NAME, + ATTR_OLD_SOURCE_NAME, + ATTR_OLD_VALUE, + ATTR_NEW_SOURCE_NAME, + ATTR_NEW_VALUE, + EST_CREATION_DOSSIER, -- témoin indiquant s\'il s\'agit d\'une création ou d\'une modification de dossier + HISTO_CREATION, -- NB: date de modification du dossier + HISTO_CREATEUR_ID, -- NB: auteur de la modification du dossier + HISTO_MODIFICATION, + HISTO_MODIFICATEUR_ID + ) + values ( + indic_modif_dossier_id_seq.nextval, + intervenantId, + attrNames(i), + oldSourceName, + to_char(attrOldVals(i)), + newSourceName, + to_char(attrNewVals(i)), + estCreationDossier, + :NEW.HISTO_MODIFICATION, + :NEW.HISTO_MODIFICATEUR_ID, + :NEW.HISTO_MODIFICATION, + :NEW.HISTO_MODIFICATEUR_ID + ); + end loop; + +END;', + ), + 'INTERVENANT_HORO_SERVICE' => + array ( + 'name' => 'INTERVENANT_HORO_SERVICE', + 'definition' => 'CREATE OR REPLACE TRIGGER "INTERVENANT_HORO_SERVICE" +AFTER INSERT OR UPDATE OR DELETE ON service +FOR EACH ROW +BEGIN + + IF DELETING THEN + + ose_divers.intervenant_horodatage_service( + :OLD.intervenant_id, + null, + 0, + :OLD.histo_modificateur_id, + :OLD.histo_modification + ); + + ELSE + + ose_divers.intervenant_horodatage_service( + :NEW.intervenant_id, + null, + 0, + :NEW.histo_modificateur_id, + :NEW.histo_modification + ); + + END IF; + +END;', + ), + 'INTERVENANT_HORO_SERVICE_REF' => + array ( + 'name' => 'INTERVENANT_HORO_SERVICE_REF', + 'definition' => 'CREATE OR REPLACE TRIGGER "INTERVENANT_HORO_SERVICE_REF" +AFTER INSERT OR UPDATE OR DELETE ON service_referentiel +FOR EACH ROW +BEGIN + + IF DELETING THEN + + ose_divers.intervenant_horodatage_service( + :OLD.intervenant_id, + null, + 1, + :OLD.histo_modificateur_id, + :OLD.histo_modification + ); + + ELSE + + ose_divers.intervenant_horodatage_service( + :NEW.intervenant_id, + null, + 1, + :NEW.histo_modificateur_id, + :NEW.histo_modification + ); + + END IF; + +END;', + ), + 'INTERVENANT_HORO_VH' => + array ( + 'name' => 'INTERVENANT_HORO_VH', + 'definition' => 'CREATE OR REPLACE TRIGGER "INTERVENANT_HORO_VH" +AFTER INSERT OR UPDATE OR DELETE ON volume_horaire +FOR EACH ROW +DECLARE + intervenant_id NUMERIC; +BEGIN + + + + IF DELETING THEN + SELECT s.intervenant_id INTO intervenant_id FROM service s WHERE s.id = :OLD.service_id; + + ose_divers.intervenant_horodatage_service( + intervenant_id, + :OLD.type_volume_horaire_id, + 0, + :OLD.histo_modificateur_id, + :OLD.histo_modification + ); + + ELSE + SELECT s.intervenant_id INTO intervenant_id FROM service s WHERE s.id = :NEW.service_id; + + ose_divers.intervenant_horodatage_service( + intervenant_id, + :NEW.type_volume_horaire_id, + 0, + :NEW.histo_modificateur_id, + :NEW.histo_modification + ); + + END IF; + +END;', + ), + 'INTERVENANT_HORO_VH_REF' => + array ( + 'name' => 'INTERVENANT_HORO_VH_REF', + 'definition' => 'CREATE OR REPLACE TRIGGER "INTERVENANT_HORO_VH_REF" +AFTER INSERT OR UPDATE OR DELETE ON volume_horaire_ref +FOR EACH ROW +DECLARE + intervenant_id NUMERIC; +BEGIN + + + + IF DELETING THEN + SELECT s.intervenant_id INTO intervenant_id FROM service_referentiel s WHERE s.id = :OLD.service_referentiel_id; + + ose_divers.intervenant_horodatage_service( + intervenant_id, + :OLD.type_volume_horaire_id, + 1, + :OLD.histo_modificateur_id, + :OLD.histo_modification + ); + + ELSE + SELECT s.intervenant_id INTO intervenant_id FROM service_referentiel s WHERE s.id = :NEW.service_referentiel_id; + + ose_divers.intervenant_horodatage_service( + intervenant_id, + :NEW.type_volume_horaire_id, + 1, + :NEW.histo_modificateur_id, + :NEW.histo_modification + ); + + END IF; + +END;', + ), + 'INTERVENANT_RECHERCHE' => + array ( + 'name' => 'INTERVENANT_RECHERCHE', + 'definition' => 'CREATE OR REPLACE TRIGGER "INTERVENANT_RECHERCHE" + BEFORE INSERT OR UPDATE OF NOM_USUEL, NOM_PATRONYMIQUE, PRENOM ON INTERVENANT + REFERENCING FOR EACH ROW +BEGIN + + :NEW.critere_recherche := ose_divers.str_reduce( :NEW.nom_usuel || \' \' || :NEW.nom_patronymique || \' \' || :NEW.prenom ); + +END;', + ), + 'MISE_EN_PAIEMENT_CK' => + array ( + 'name' => 'MISE_EN_PAIEMENT_CK', + 'definition' => 'CREATE OR REPLACE TRIGGER "MISE_EN_PAIEMENT_CK" + BEFORE INSERT OR UPDATE ON "MISE_EN_PAIEMENT" + REFERENCING FOR EACH ROW + DECLARE + has_validation NUMERIC; + has_mise_en_paiement NUMERIC; +BEGIN + + /* Initialisation des conditions */ + SELECT COUNT(*) INTO has_validation FROM validation v WHERE + v.id = :NEW.validation_id + AND v.histo_destruction IS NULL; + + IF :NEW.date_mise_en_paiement IS NULL THEN + has_mise_en_paiement := 0; + ELSE + has_mise_en_paiement := 1; + END IF; + + /* Mise en place des contraintes */ + IF :NEW.formule_res_service_id IS NULL AND :NEW.formule_res_service_ref_id IS NULL THEN + raise_application_error(-20101, \'La mise en paiement ne correspond à aucun service ou service référentiel.\'); + END IF; + + IF 1 = has_validation AND :NEW.date_validation IS NULL THEN + raise_application_error(-20101, \'La validation de la mise en paiement numéro \' || :NEW.id || \' est bien renseignée mais la date de validation n\'\'est pas précisée.\'); + END IF; + + IF :NEW.periode_paiement_id IS NOT NULL AND :NEW.date_mise_en_paiement IS NULL THEN + raise_application_error(-20101, \'La mise en paiement numéro \' || :NEW.id || \' est bien effectuée mais la date de mise en paiement n\'\'est pas précisée.\'); + END IF; + +-- IF 0 = has_validation AND 1 = has_mise_en_paiement THEN +-- raise_application_error(-20101, \'La demande de mise en paiement numéro \' || :NEW.id || \' ne peut faire l\'\'objet d\'\'une mise en paiement tant qu\'\'elle n\'\'est pas validée.\'); +-- END IF; + + IF + :OLD.validation_id IS NOT NULL AND :OLD.histo_destruction IS NULL + AND 1 = has_validation AND :NEW.histo_destruction IS NOT NULL + THEN + raise_application_error(-20101, \'Il est impossible de supprimer une mise en paiement validée.\'); + END IF; +END;', + ), + 'MISE_EN_PAIEMENT_DEL_CK' => + array ( + 'name' => 'MISE_EN_PAIEMENT_DEL_CK', + 'definition' => 'CREATE OR REPLACE TRIGGER "MISE_EN_PAIEMENT_DEL_CK" + BEFORE DELETE ON "MISE_EN_PAIEMENT" + REFERENCING FOR EACH ROW + DECLARE + has_validation NUMERIC; +BEGIN + + /* Initialisation des conditions */ + SELECT COUNT(*) INTO has_validation FROM validation v WHERE + v.id = :NEW.validation_id + AND v.histo_destruction IS NULL; + + /* Mise en place des contraintes */ + IF + 1 = has_validation AND :OLD.histo_destruction IS NOT NULL + THEN + raise_application_error(-20101, \'Il est impossible de supprimer une mise en paiement validée.\'); + END IF; +END;', + ), + 'SERVICE_CK' => + array ( + 'name' => 'SERVICE_CK', + 'definition' => 'CREATE OR REPLACE TRIGGER "SERVICE_CK" +BEFORE INSERT OR UPDATE ON service +FOR EACH ROW +DECLARE + etablissement integer; + res integer; +BEGIN + + etablissement := OSE_PARAMETRE.GET_ETABLISSEMENT(); + + IF :NEW.etablissement_id = etablissement AND :NEW.element_pedagogique_id IS NULL THEN + raise_application_error(-20101, \'Un enseignement doit obligatoirement être renseigné si le service est réalisé en interne.\'); + END IF; + + + IF :NEW.etablissement_id <> etablissement AND OSE_DIVERS.INTERVENANT_HAS_PRIVILEGE(:NEW.intervenant_id, \'saisie_service_exterieur\') = 0 THEN + raise_application_error(-20101, \'Les intervenants vacataires n\'\'ont pas la possibilité de renseigner des enseignements pris à l\'\'extérieur.\'); + END IF; + + IF :NEW.intervenant_id IS NOT NULL AND :NEW.element_pedagogique_id IS NOT NULL THEN + SELECT + count(*) INTO res + FROM + intervenant i, + element_pedagogique ep + WHERE + i.id = :NEW.intervenant_id + AND ep.id = :NEW.element_pedagogique_id + AND ep.annee_id = i.annee_id + ; + + IF 0 = res THEN -- années non concomitantes + raise_application_error(-20101, \'L\'\'année de l\'\'intervenant ne correspond pas à l\'\'année de l\'\'élément pédagogique.\'); + END IF; + END IF; + +END;', + ), + 'SERVICE_HISTO_CK' => + array ( + 'name' => 'SERVICE_HISTO_CK', + 'definition' => 'CREATE OR REPLACE TRIGGER "SERVICE_HISTO_CK" + BEFORE UPDATE OF intervenant_id, element_pedagogique_id, etablissement_id ON "SERVICE" + REFERENCING FOR EACH ROW + DECLARE + has_validation integer; +BEGIN + SELECT COUNT(*) INTO has_validation + FROM + VALIDATION_VOL_HORAIRE vvh + JOIN validation v ON v.id = VVH.VALIDATION_ID + JOIN volume_horaire vh ON vh.id = VVH.VOLUME_HORAIRE_ID + WHERE + V.HISTO_DESTRUCTION IS NULL + AND vh.service_ID = :NEW.ID; + + IF 0 <> has_validation THEN + raise_application_error(-20101, \'Il est impossible de modifier ou supprimer un service dont des heures ont déjà été validées.\'); + END IF; + +END;', + ), + 'SERVICE_HISTO_CK_S' => + array ( + 'name' => 'SERVICE_HISTO_CK_S', + 'definition' => 'CREATE OR REPLACE TRIGGER "SERVICE_HISTO_CK_S" +AFTER UPDATE ON service +BEGIN + -- En cas de restauration d\'un service, on ne restaure pas les historiques de volumes horaires pour ne pas récussiter d\'éventuels volume horaires indésirables car préalablement supprimés + FOR s IN ( + + SELECT * + FROM + service s + WHERE + s.histo_destruction IS NOT NULL AND s.histo_destruction > SYSDATE - 1 + + ) LOOP + + UPDATE VOLUME_HORAIRE SET histo_destruction = s.histo_destruction, histo_destructeur_id = s.histo_destructeur_id WHERE service_id = s.id AND VOLUME_HORAIRE.histo_destruction IS NULL; + + END LOOP; + +END;', + ), + 'SERVICE_REFERENTIEL_HISTO_CK' => + array ( + 'name' => 'SERVICE_REFERENTIEL_HISTO_CK', + 'definition' => 'CREATE OR REPLACE TRIGGER "SERVICE_REFERENTIEL_HISTO_CK" +BEFORE UPDATE OF + FONCTION_ID, + INTERVENANT_ID, + STRUCTURE_ID, + HISTO_DESTRUCTION +ON service_referentiel FOR EACH ROW +DECLARE + has_validation integer; +BEGIN + SELECT COUNT(*) INTO has_validation + FROM + VALIDATION_VOL_HORAIRE_REF vvh + JOIN validation v ON v.id = VVH.VALIDATION_ID + JOIN volume_horaire_ref vh ON vh.id = vvh.volume_horaire_ref_id + WHERE + V.HISTO_DESTRUCTION IS NULL + AND vh.service_referentiel_id = :OLD.ID; + + IF 0 <> has_validation THEN + raise_application_error(-20101, \'Il est impossible de modifier ou supprimer du référentiel dont des heures ont déjà été validées.\'); + END IF; + +END;', + ), + 'T_CRG_ETAPE' => + array ( + 'name' => 'T_CRG_ETAPE', + 'definition' => 'CREATE OR REPLACE TRIGGER "T_CRG_ETAPE" + AFTER INSERT OR DELETE OR UPDATE OF HISTO_DESTRUCTION ON "ETAPE" + REFERENCING FOR EACH ROW + BEGIN + IF NOT UNICAEN_TBL.ACTIV_TRIGGERS THEN RETURN; END IF; + + IF DELETING THEN + UNICAEN_TBL.DEMANDE_CALCUL( \'chargens\', \'etape_id = \' || :OLD.id || \' OR etape_ens_id = \' || :OLD.id ); + ELSE + UNICAEN_TBL.DEMANDE_CALCUL( \'chargens\', \'etape_id = \' || :NEW.id || \' OR etape_ens_id = \' || :NEW.id ); + END IF; + +END;', + ), + 'T_CRG_ETAPE_S' => + array ( + 'name' => 'T_CRG_ETAPE_S', + 'definition' => 'CREATE OR REPLACE TRIGGER "T_CRG_ETAPE_S" + AFTER INSERT OR DELETE OR UPDATE ON "ETAPE" + BEGIN + UNICAEN_TBL.CALCULER_DEMANDES; +END;', + ), + 'T_CRG_SCENARIO_NOEUD' => + array ( + 'name' => 'T_CRG_SCENARIO_NOEUD', + 'definition' => 'CREATE OR REPLACE TRIGGER "T_CRG_SCENARIO_NOEUD" + AFTER INSERT OR DELETE OR UPDATE OF SCENARIO_ID, NOEUD_ID, HISTO_DESTRUCTION ON "SCENARIO_NOEUD" + REFERENCING FOR EACH ROW + BEGIN + IF NOT UNICAEN_TBL.ACTIV_TRIGGERS THEN RETURN; END IF; + + IF DELETING THEN + UNICAEN_TBL.DEMANDE_CALCUL( \'chargens\', unicaen_tbl.make_params(\'noeud_id\', :OLD.noeud_id, \'scenario_id\', :OLD.scenario_id ) ); + ELSE + UNICAEN_TBL.DEMANDE_CALCUL( \'chargens\', unicaen_tbl.make_params(\'noeud_id\', :NEW.noeud_id, \'scenario_id\', :NEW.scenario_id ) ); + END IF; + +END;', + ), + 'T_CRG_SCENARIO_NOEUD_EFFECTIF' => + array ( + 'name' => 'T_CRG_SCENARIO_NOEUD_EFFECTIF', + 'definition' => 'CREATE OR REPLACE TRIGGER "T_CRG_SCENARIO_NOEUD_EFFECTIF" + AFTER INSERT OR DELETE OR UPDATE OF SCENARIO_NOEUD_ID, TYPE_HEURES_ID, EFFECTIF, ETAPE_ID ON "SCENARIO_NOEUD_EFFECTIF" + REFERENCING FOR EACH ROW + BEGIN + IF NOT UNICAEN_TBL.ACTIV_TRIGGERS THEN RETURN; END IF; + + FOR p IN ( + + SELECT + sn.noeud_id, sn.scenario_id, n.etape_id + FROM + scenario_noeud sn + JOIN noeud n ON n.id = sn.noeud_id + WHERE + sn.id = :OLD.scenario_noeud_id OR sn.id = :NEW.scenario_noeud_id + + ) LOOP + + IF p.etape_id IS NOT NULL THEN + UNICAEN_TBL.DEMANDE_CALCUL( \'chargens\', unicaen_tbl.make_params(\'etape_ens_id\', p.etape_id, \'scenario_id\', p.scenario_id ) ); + END IF; + UNICAEN_TBL.DEMANDE_CALCUL( \'chargens\', unicaen_tbl.make_params(\'noeud_id\', p.noeud_id, \'scenario_id\', p.scenario_id ) ); + + END LOOP; + +END;', + ), + 'T_CRG_SCENARIO_NOEUD_SEUIL' => + array ( + 'name' => 'T_CRG_SCENARIO_NOEUD_SEUIL', + 'definition' => 'CREATE OR REPLACE TRIGGER "T_CRG_SCENARIO_NOEUD_SEUIL" + AFTER INSERT OR DELETE OR UPDATE OF SCENARIO_NOEUD_ID, TYPE_INTERVENTION_ID, OUVERTURE, DEDOUBLEMENT, ASSIDUITE ON "SCENARIO_NOEUD_SEUIL" + REFERENCING FOR EACH ROW + BEGIN + IF NOT UNICAEN_TBL.ACTIV_TRIGGERS THEN RETURN; END IF; + + FOR p IN ( + + SELECT + sn.noeud_id, sn.scenario_id, n.etape_id + FROM + scenario_noeud sn + JOIN noeud n ON n.id = sn.noeud_id + WHERE + sn.id = :OLD.scenario_noeud_id OR sn.id = :NEW.scenario_noeud_id + + ) LOOP + + IF p.etape_id IS NOT NULL THEN + UNICAEN_TBL.DEMANDE_CALCUL( \'chargens\', unicaen_tbl.make_params(\'etape_ens_id\', p.etape_id, \'scenario_id\', p.scenario_id ) ); + END IF; + UNICAEN_TBL.DEMANDE_CALCUL( \'chargens\', unicaen_tbl.make_params(\'noeud_id\', p.noeud_id, \'scenario_id\', p.scenario_id ) ); + + END LOOP; + +END;', + ), + 'T_CRG_TYPE_INTERVENTION' => + array ( + 'name' => 'T_CRG_TYPE_INTERVENTION', + 'definition' => 'CREATE OR REPLACE TRIGGER "T_CRG_TYPE_INTERVENTION" + AFTER INSERT OR DELETE OR UPDATE ON "TYPE_INTERVENTION" + BEGIN + UNICAEN_TBL.CALCULER_DEMANDES; +END;', + ), + 'T_CRG_VOLUME_HORAIRE_ENS' => + array ( + 'name' => 'T_CRG_VOLUME_HORAIRE_ENS', + 'definition' => 'CREATE OR REPLACE TRIGGER "T_CRG_VOLUME_HORAIRE_ENS" + AFTER INSERT OR DELETE OR UPDATE OF TYPE_INTERVENTION_ID, HEURES, HISTO_DESTRUCTION, ELEMENT_PEDAGOGIQUE_ID ON "VOLUME_HORAIRE_ENS" + REFERENCING FOR EACH ROW + BEGIN + IF NOT UNICAEN_TBL.ACTIV_TRIGGERS THEN RETURN; END IF; + + IF DELETING THEN + UNICAEN_TBL.DEMANDE_CALCUL( \'chargens\', unicaen_tbl.make_params(\'element_pedagogique_id\', :OLD.element_pedagogique_id ) ); + ELSE + UNICAEN_TBL.DEMANDE_CALCUL( \'chargens\', unicaen_tbl.make_params(\'element_pedagogique_id\', :NEW.element_pedagogique_id ) ); + END IF; + +END;', + ), + 'VALIDATION_CK' => + array ( + 'name' => 'VALIDATION_CK', + 'definition' => 'CREATE OR REPLACE TRIGGER "VALIDATION_CK" +BEFORE UPDATE OF histo_destruction, histo_destructeur_id OR DELETE ON validation +FOR EACH ROW +DECLARE + v validation%rowtype; + err varchar2(500) default null; + pragma autonomous_transaction; +BEGIN + + IF deleting THEN + v.id := :OLD.id; + v.type_validation_id := :OLD.type_validation_id; + v.intervenant_id := :OLD.intervenant_id; + v.structure_id := :OLD.structure_id; + + + ELSIF :OLD.histo_destruction IS NULL AND :NEW.histo_destruction IS NOT NULL THEN + + v.id := :NEW.id; + v.type_validation_id := :NEW.type_validation_id; + v.intervenant_id := :NEW.intervenant_id; + v.structure_id := :NEW.structure_id; + + END IF; + + err := ose_validation.can_devalider( v ); + + IF err is not null THEN + raise_application_error(-20101, err); + END IF; + +END;', + ), + 'VALIDATION_VOL_HORAIRE_CK' => + array ( + 'name' => 'VALIDATION_VOL_HORAIRE_CK', + 'definition' => 'CREATE OR REPLACE TRIGGER "VALIDATION_VOL_HORAIRE_CK" +BEFORE INSERT OR UPDATE OR DELETE ON validation_vol_horaire +FOR EACH ROW +DECLARE + contrat_blinde NUMERIC; + donnee_historisee NUMERIC; + pragma autonomous_transaction; +BEGIN + + if updating or deleting then + + SELECT count(*) INTO contrat_blinde + FROM volume_horaire vh + JOIN contrat c ON c.id = vh.contrat_id AND c.histo_destruction IS NULL + WHERE vh.id = :OLD.volume_horaire_id; + + -- Si des volumes horaires ont déjà fait l\'objet de contrats alors pas de dévalidation possible des heures + IF contrat_blinde = 1 THEN + raise_application_error(-20101, \'La dévalidation est impossible car un contrat a déjà été édité sur la base de ces heures.\'); + END IF; + + else + + -- si on en trouve un service, EP, étape ou VH historisé, problème + select count(*) into donnee_historisee + from service s + join element_pedagogique ep on s.element_pedagogique_id = ep.id + --join etape e on ep.etape_id = e.id + join volume_horaire vh on vh.service_id = s.id + where + vh.id = :NEW.volume_horaire_id + AND ( + s.histo_destructeur_id is not null + or ep.histo_destructeur_id is not null + --or e.histo_destructeur_id is not null + or (vh.histo_destructeur_id is not null) + ) + AND vh.heures > 0; + + IF donnee_historisee > 0 THEN + raise_application_error(-20101, :NEW.volume_horaire_id || \' La validation est impossible car elle porte sur des données historisées (supprimées).\'); + END IF; + + end if; + +END;', + ), + 'VOLUME_HORAIRE_CK' => + array ( + 'name' => 'VOLUME_HORAIRE_CK', + 'definition' => 'CREATE OR REPLACE TRIGGER "VOLUME_HORAIRE_CK" +BEFORE INSERT OR UPDATE ON volume_horaire +FOR EACH ROW + DECLARE + has_validation NUMERIC; + modified BOOLEAN; + intervenant_id NUMERIC; + BEGIN + IF :OLD.motif_non_paiement_id IS NULL AND :NEW.motif_non_paiement_id IS NOT NULL THEN + SELECT s.intervenant_id INTO intervenant_id FROM service s WHERE s.id = :NEW.service_id; + IF 0 = ose_divers.intervenant_has_privilege( intervenant_id, \'saisie_motif_non_paiement\') THEN + raise_application_error(-20101, \'Il est impossible d\'\'associer un motif de non paiement à cet intervenant.\'); + END IF; + END IF; + + IF :NEW.motif_non_paiement_id IS NOT NULL AND :NEW.contrat_id IS NOT NULL THEN + raise_application_error(-20101, \'Les heures ayant un motif de non paiement ne peuvent faire l\'\'objet d\'\'une contractualisation\'); + END IF; + + modified := + NVL(:NEW.id,0) <> NVL(:OLD.id,0) + OR NVL(:NEW.type_volume_horaire_id,0) <> NVL(:OLD.type_volume_horaire_id,0) + OR NVL(:NEW.service_id,0) <> NVL(:OLD.service_id,0) + OR NVL(:NEW.periode_id,0) <> NVL(:OLD.periode_id,0) + OR NVL(:NEW.type_intervention_id,0) <> NVL(:OLD.type_intervention_id,0) + OR NVL(:NEW.heures,0) <> NVL(:OLD.heures,0) + OR NVL(:NEW.motif_non_paiement_id,0) <> NVL(:OLD.motif_non_paiement_id,0) + OR NVL(:NEW.histo_creation,SYSDATE) <> NVL(:OLD.histo_creation,SYSDATE) + OR NVL(:NEW.histo_createur_id,0) <> NVL(:OLD.histo_createur_id,0) + OR NVL(:NEW.histo_destruction,SYSDATE) <> NVL(:OLD.histo_destruction,SYSDATE) + OR NVL(:NEW.histo_destructeur_id,0) <> NVL(:OLD.histo_destructeur_id,0); + + SELECT + COUNT(*) + INTO + has_validation + FROM + VALIDATION_VOL_HORAIRE vvh + JOIN validation v ON v.id = VVH.VALIDATION_ID + WHERE + V.HISTO_DESTRUCTION IS NULL + AND vvh.VOLUME_HORAIRE_ID = :NEW.ID; + + IF modified AND 0 <> has_validation THEN + raise_application_error(-20101, \'Il est impossible de modifier des heures déjà validées.\'); + END IF; + END;', + ), + 'VOLUME_HORAIRE_DEL_CK' => + array ( + 'name' => 'VOLUME_HORAIRE_DEL_CK', + 'definition' => 'CREATE OR REPLACE TRIGGER "VOLUME_HORAIRE_DEL_CK" BEFORE + DELETE ON volume_horaire FOR EACH ROW DECLARE has_validation INTEGER; + pragma autonomous_transaction; + BEGIN + SELECT COUNT(*) + INTO has_validation + FROM VALIDATION_VOL_HORAIRE vvh + JOIN validation v + ON v.id = VVH.VALIDATION_ID + WHERE V.HISTO_DESTRUCTION IS NULL + AND vvh.VOLUME_HORAIRE_ID = :OLD.ID; + IF 0 <> has_validation THEN + raise_application_error(-20101, \'Il est impossible de supprimer des heures déjà validées.\'); + END IF; + END;', + ), + 'VOLUME_HORAIRE_REF_CK' => + array ( + 'name' => 'VOLUME_HORAIRE_REF_CK', + 'definition' => 'CREATE OR REPLACE TRIGGER "VOLUME_HORAIRE_REF_CK" BEFORE UPDATE ON volume_horaire_REF FOR EACH ROW + DECLARE + has_validation NUMERIC; + BEGIN + + SELECT + COUNT(*) + INTO + has_validation + FROM + VALIDATION_VOL_HORAIRE_REF vvh + JOIN validation v ON v.id = VVH.VALIDATION_ID + WHERE + V.HISTO_DESTRUCTION IS NULL + AND vvh.VOLUME_HORAIRE_REF_ID = :NEW.ID; + + IF 0 <> has_validation THEN + raise_application_error(-20101, \'Il est impossible de modifier des heures référentiel déjà validées.\'); + END IF; +END;', + ), + 'VOLUME_HORAIRE_REF_DEL_CK' => + array ( + 'name' => 'VOLUME_HORAIRE_REF_DEL_CK', + 'definition' => 'CREATE OR REPLACE TRIGGER "VOLUME_HORAIRE_REF_DEL_CK" BEFORE DELETE ON volume_horaire_REF FOR EACH ROW + DECLARE has_validation INTEGER; + pragma autonomous_transaction; + BEGIN + SELECT COUNT(*) + INTO has_validation + FROM VALIDATION_VOL_HORAIRE_REF vvh + JOIN validation v + ON v.id = VVH.VALIDATION_ID + WHERE V.HISTO_DESTRUCTION IS NULL + AND vvh.VOLUME_HORAIRE_REF_ID = :OLD.ID; + IF 0 <> has_validation THEN + raise_application_error(-20101, \'Il est impossible de supprimer des heures référentiel déjà validées.\'); + END IF; + END;', + ), + 'WF_ETAPE_DEP_CK' => + array ( + 'name' => 'WF_ETAPE_DEP_CK', + 'definition' => 'CREATE OR REPLACE TRIGGER "WF_ETAPE_DEP_CK" +BEFORE INSERT OR UPDATE ON wf_etape_dep +FOR EACH ROW +BEGIN + + OSE_WORKFLOW.DEP_CHECK( :new.etape_suiv_id, :new.etape_prec_id ); + +END;', + ), + ), + 'BddAdmin\\Ddl\\DdlIndex' => + array ( + 'ADRESSE_INTERVENANT_HCFK_IDX' => + array ( + 'name' => 'ADRESSE_INTERVENANT_HCFK_IDX', + 'unique' => false, + 'table' => 'ADRESSE_INTERVENANT', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'ADRESSE_INTERVENANT_HDFK_IDX' => + array ( + 'name' => 'ADRESSE_INTERVENANT_HDFK_IDX', + 'unique' => false, + 'table' => 'ADRESSE_INTERVENANT', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'ADRESSE_INTERVENANT_HMFK_IDX' => + array ( + 'name' => 'ADRESSE_INTERVENANT_HMFK_IDX', + 'unique' => false, + 'table' => 'ADRESSE_INTERVENANT', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'ADRESSE_INTERVENANT_PK' => + array ( + 'name' => 'ADRESSE_INTERVENANT_PK', + 'unique' => true, + 'table' => 'ADRESSE_INTERVENANT', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'ADRESSE_INTERVENANT_SOURCE_FK' => + array ( + 'name' => 'ADRESSE_INTERVENANT_SOURCE_FK', + 'unique' => false, + 'table' => 'ADRESSE_INTERVENANT', + 'columns' => + array ( + 0 => 'SOURCE_ID', + ), + ), + 'ADRESSE_INTERVENANT_SOURCE_UN' => + array ( + 'name' => 'ADRESSE_INTERVENANT_SOURCE_UN', + 'unique' => true, + 'table' => 'ADRESSE_INTERVENANT', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + ), + ), + 'ADRESSE_INTERVENANT__UN' => + array ( + 'name' => 'ADRESSE_INTERVENANT__UN', + 'unique' => true, + 'table' => 'ADRESSE_INTERVENANT', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'ADRESSE_STRUCTURE_HCFK_IDX' => + array ( + 'name' => 'ADRESSE_STRUCTURE_HCFK_IDX', + 'unique' => false, + 'table' => 'ADRESSE_STRUCTURE', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'ADRESSE_STRUCTURE_HDFK_IDX' => + array ( + 'name' => 'ADRESSE_STRUCTURE_HDFK_IDX', + 'unique' => false, + 'table' => 'ADRESSE_STRUCTURE', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'ADRESSE_STRUCTURE_HMFK_IDX' => + array ( + 'name' => 'ADRESSE_STRUCTURE_HMFK_IDX', + 'unique' => false, + 'table' => 'ADRESSE_STRUCTURE', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'ADRESSE_STRUCTURE_PK' => + array ( + 'name' => 'ADRESSE_STRUCTURE_PK', + 'unique' => true, + 'table' => 'ADRESSE_STRUCTURE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'ADRESSE_STRUCTURE_SOURCE_FK' => + array ( + 'name' => 'ADRESSE_STRUCTURE_SOURCE_FK', + 'unique' => false, + 'table' => 'ADRESSE_STRUCTURE', + 'columns' => + array ( + 0 => 'SOURCE_ID', + ), + ), + 'ADRESSE_STRUCTURE_SOURCE_UN' => + array ( + 'name' => 'ADRESSE_STRUCTURE_SOURCE_UN', + 'unique' => true, + 'table' => 'ADRESSE_STRUCTURE', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + ), + ), + 'ADRESSE_STRUCTURE_STRUCTURE_FK' => + array ( + 'name' => 'ADRESSE_STRUCTURE_STRUCTURE_FK', + 'unique' => false, + 'table' => 'ADRESSE_STRUCTURE', + 'columns' => + array ( + 0 => 'STRUCTURE_ID', + ), + ), + 'AFFECTATION_HCFK_IDX' => + array ( + 'name' => 'AFFECTATION_HCFK_IDX', + 'unique' => false, + 'table' => 'AFFECTATION', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'AFFECTATION_HDFK_IDX' => + array ( + 'name' => 'AFFECTATION_HDFK_IDX', + 'unique' => false, + 'table' => 'AFFECTATION', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'AFFECTATION_HMFK_IDX' => + array ( + 'name' => 'AFFECTATION_HMFK_IDX', + 'unique' => false, + 'table' => 'AFFECTATION', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'AFFECTATION_PK' => + array ( + 'name' => 'AFFECTATION_PK', + 'unique' => true, + 'table' => 'AFFECTATION', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'AFFECTATION_RECHERCH_SOURCE_FK' => + array ( + 'name' => 'AFFECTATION_RECHERCH_SOURCE_FK', + 'unique' => false, + 'table' => 'AFFECTATION_RECHERCHE', + 'columns' => + array ( + 0 => 'SOURCE_ID', + ), + ), + 'AFFECTATION_ROLE_FK_IDX' => + array ( + 'name' => 'AFFECTATION_ROLE_FK_IDX', + 'unique' => false, + 'table' => 'AFFECTATION', + 'columns' => + array ( + 0 => 'ROLE_ID', + ), + ), + 'AFFECTATION_R_HCFK_IDX' => + array ( + 'name' => 'AFFECTATION_R_HCFK_IDX', + 'unique' => false, + 'table' => 'AFFECTATION_RECHERCHE', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'AFFECTATION_R_HDFK_IDX' => + array ( + 'name' => 'AFFECTATION_R_HDFK_IDX', + 'unique' => false, + 'table' => 'AFFECTATION_RECHERCHE', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'AFFECTATION_R_HMFK_IDX' => + array ( + 'name' => 'AFFECTATION_R_HMFK_IDX', + 'unique' => false, + 'table' => 'AFFECTATION_RECHERCHE', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'AFFECTATION_R_INTERVENANT_FK' => + array ( + 'name' => 'AFFECTATION_R_INTERVENANT_FK', + 'unique' => false, + 'table' => 'AFFECTATION_RECHERCHE', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + ), + ), + 'AFFECTATION_R_PK' => + array ( + 'name' => 'AFFECTATION_R_PK', + 'unique' => true, + 'table' => 'AFFECTATION_RECHERCHE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'AFFECTATION_R_SRC_UN' => + array ( + 'name' => 'AFFECTATION_R_SRC_UN', + 'unique' => true, + 'table' => 'AFFECTATION_RECHERCHE', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + ), + ), + 'AFFECTATION_R_STRUCTURE_FK_IDX' => + array ( + 'name' => 'AFFECTATION_R_STRUCTURE_FK_IDX', + 'unique' => false, + 'table' => 'AFFECTATION_RECHERCHE', + 'columns' => + array ( + 0 => 'STRUCTURE_ID', + ), + ), + 'AFFECTATION_SOURCE_FK_IDX' => + array ( + 'name' => 'AFFECTATION_SOURCE_FK_IDX', + 'unique' => false, + 'table' => 'AFFECTATION', + 'columns' => + array ( + 0 => 'SOURCE_ID', + ), + ), + 'AFFECTATION_SOURCE_UN' => + array ( + 'name' => 'AFFECTATION_SOURCE_UN', + 'unique' => true, + 'table' => 'AFFECTATION', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + ), + ), + 'AFFECTATION_STRUCTURE_FK_IDX' => + array ( + 'name' => 'AFFECTATION_STRUCTURE_FK_IDX', + 'unique' => false, + 'table' => 'AFFECTATION', + 'columns' => + array ( + 0 => 'STRUCTURE_ID', + ), + ), + 'AFFECTATION__UN' => + array ( + 'name' => 'AFFECTATION__UN', + 'unique' => true, + 'table' => 'AFFECTATION', + 'columns' => + array ( + 0 => 'ROLE_ID', + 1 => 'STRUCTURE_ID', + 2 => 'HISTO_DESTRUCTION', + 3 => 'UTILISATEUR_ID', + ), + ), + 'AGREMENT_HCFK_IDX' => + array ( + 'name' => 'AGREMENT_HCFK_IDX', + 'unique' => false, + 'table' => 'AGREMENT', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'AGREMENT_HDFK_IDX' => + array ( + 'name' => 'AGREMENT_HDFK_IDX', + 'unique' => false, + 'table' => 'AGREMENT', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'AGREMENT_HMFK_IDX' => + array ( + 'name' => 'AGREMENT_HMFK_IDX', + 'unique' => false, + 'table' => 'AGREMENT', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'AGREMENT_INTERVENANT_FK_IDX' => + array ( + 'name' => 'AGREMENT_INTERVENANT_FK_IDX', + 'unique' => false, + 'table' => 'AGREMENT', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + ), + ), + 'AGREMENT_PK' => + array ( + 'name' => 'AGREMENT_PK', + 'unique' => true, + 'table' => 'AGREMENT', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'AGREMENT_STRUCTURE_FK_IDX' => + array ( + 'name' => 'AGREMENT_STRUCTURE_FK_IDX', + 'unique' => false, + 'table' => 'AGREMENT', + 'columns' => + array ( + 0 => 'STRUCTURE_ID', + ), + ), + 'AGREMENT_TYPE_AGREMENT_FK_IDX' => + array ( + 'name' => 'AGREMENT_TYPE_AGREMENT_FK_IDX', + 'unique' => false, + 'table' => 'AGREMENT', + 'columns' => + array ( + 0 => 'TYPE_AGREMENT_ID', + ), + ), + 'AGREMENT__UN' => + array ( + 'name' => 'AGREMENT__UN', + 'unique' => true, + 'table' => 'AGREMENT', + 'columns' => + array ( + 0 => 'TYPE_AGREMENT_ID', + 1 => 'INTERVENANT_ID', + 2 => 'STRUCTURE_ID', + 3 => 'HISTO_DESTRUCTION', + ), + ), + 'AII_FK' => + array ( + 'name' => 'AII_FK', + 'unique' => false, + 'table' => 'ADRESSE_INTERVENANT', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + ), + ), + 'ANNEE_PK' => + array ( + 'name' => 'ANNEE_PK', + 'unique' => true, + 'table' => 'ANNEE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'CAMPAGNE_PK_IDX' => + array ( + 'name' => 'CAMPAGNE_PK_IDX', + 'unique' => true, + 'table' => 'CAMPAGNE_SAISIE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'CAMPAGNE_SAISIE_ANNEE_FK_IDX' => + array ( + 'name' => 'CAMPAGNE_SAISIE_ANNEE_FK_IDX', + 'unique' => false, + 'table' => 'CAMPAGNE_SAISIE', + 'columns' => + array ( + 0 => 'ANNEE_ID', + ), + ), + 'CAMPAGNE_SAISIE__UN_IDX' => + array ( + 'name' => 'CAMPAGNE_SAISIE__UN_IDX', + 'unique' => true, + 'table' => 'CAMPAGNE_SAISIE', + 'columns' => + array ( + 0 => 'ANNEE_ID', + 1 => 'TYPE_INTERVENANT_ID', + 2 => 'TYPE_VOLUME_HORAIRE_ID', + ), + ), + 'CATEGORIE_PRIVILEGE_PK' => + array ( + 'name' => 'CATEGORIE_PRIVILEGE_PK', + 'unique' => true, + 'table' => 'CATEGORIE_PRIVILEGE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'CATEGORIE_PRIVILEGE__UN' => + array ( + 'name' => 'CATEGORIE_PRIVILEGE__UN', + 'unique' => true, + 'table' => 'CATEGORIE_PRIVILEGE', + 'columns' => + array ( + 0 => 'CODE', + ), + ), + 'CCEP_CENTRE_COUT_FK_IDX' => + array ( + 'name' => 'CCEP_CENTRE_COUT_FK_IDX', + 'unique' => false, + 'table' => 'CENTRE_COUT_EP', + 'columns' => + array ( + 0 => 'CENTRE_COUT_ID', + ), + ), + 'CCEP_ELEMENT_PEDAGOGIQUE_FK' => + array ( + 'name' => 'CCEP_ELEMENT_PEDAGOGIQUE_FK', + 'unique' => false, + 'table' => 'CENTRE_COUT_EP', + 'columns' => + array ( + 0 => 'ELEMENT_PEDAGOGIQUE_ID', + ), + ), + 'CCEP_TYPE_HEURES_FK_IDX' => + array ( + 'name' => 'CCEP_TYPE_HEURES_FK_IDX', + 'unique' => false, + 'table' => 'CENTRE_COUT_EP', + 'columns' => + array ( + 0 => 'TYPE_HEURES_ID', + ), + ), + 'CCS_CC_S__UN_IDX' => + array ( + 'name' => 'CCS_CC_S__UN_IDX', + 'unique' => true, + 'table' => 'CENTRE_COUT_STRUCTURE', + 'columns' => + array ( + 0 => 'CENTRE_COUT_ID', + 1 => 'STRUCTURE_ID', + 2 => 'HISTO_DESTRUCTION', + ), + ), + 'CCS_CENTRE_COUT_FK_IDX' => + array ( + 'name' => 'CCS_CENTRE_COUT_FK_IDX', + 'unique' => false, + 'table' => 'CENTRE_COUT_STRUCTURE', + 'columns' => + array ( + 0 => 'CENTRE_COUT_ID', + ), + ), + 'CCS_SOURCE_CODE_UN_IDX' => + array ( + 'name' => 'CCS_SOURCE_CODE_UN_IDX', + 'unique' => true, + 'table' => 'CENTRE_COUT_STRUCTURE', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'CCS_STRUCTURE_FK_IDX' => + array ( + 'name' => 'CCS_STRUCTURE_FK_IDX', + 'unique' => false, + 'table' => 'CENTRE_COUT_STRUCTURE', + 'columns' => + array ( + 0 => 'STRUCTURE_ID', + ), + ), + 'CC_ACTIVITE_FA' => + array ( + 'name' => 'CC_ACTIVITE_FA', + 'unique' => false, + 'table' => 'CC_ACTIVITE', + 'columns' => + array ( + 0 => 'FA', + ), + ), + 'CC_ACTIVITE_FC' => + array ( + 'name' => 'CC_ACTIVITE_FC', + 'unique' => false, + 'table' => 'CC_ACTIVITE', + 'columns' => + array ( + 0 => 'FC', + ), + ), + 'CC_ACTIVITE_FI' => + array ( + 'name' => 'CC_ACTIVITE_FI', + 'unique' => false, + 'table' => 'CC_ACTIVITE', + 'columns' => + array ( + 0 => 'FI', + ), + ), + 'CC_ACTIVITE_HCFK_IDX' => + array ( + 'name' => 'CC_ACTIVITE_HCFK_IDX', + 'unique' => false, + 'table' => 'CC_ACTIVITE', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'CC_ACTIVITE_HDFK_IDX' => + array ( + 'name' => 'CC_ACTIVITE_HDFK_IDX', + 'unique' => false, + 'table' => 'CC_ACTIVITE', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'CC_ACTIVITE_HMFK_IDX' => + array ( + 'name' => 'CC_ACTIVITE_HMFK_IDX', + 'unique' => false, + 'table' => 'CC_ACTIVITE', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'CC_ACTIVITE_PK' => + array ( + 'name' => 'CC_ACTIVITE_PK', + 'unique' => true, + 'table' => 'CC_ACTIVITE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'CC_ACTIVITE_REF' => + array ( + 'name' => 'CC_ACTIVITE_REF', + 'unique' => false, + 'table' => 'CC_ACTIVITE', + 'columns' => + array ( + 0 => 'REFERENTIEL', + ), + ), + 'CENTRE_COUT_ACTIVITE_FK_IDX' => + array ( + 'name' => 'CENTRE_COUT_ACTIVITE_FK_IDX', + 'unique' => false, + 'table' => 'CENTRE_COUT', + 'columns' => + array ( + 0 => 'ACTIVITE_ID', + ), + ), + 'CENTRE_COUT_CENTRE_COUT_FK_IDX' => + array ( + 'name' => 'CENTRE_COUT_CENTRE_COUT_FK_IDX', + 'unique' => false, + 'table' => 'CENTRE_COUT', + 'columns' => + array ( + 0 => 'PARENT_ID', + ), + ), + 'CENTRE_COUT_EP_HCFK_IDX' => + array ( + 'name' => 'CENTRE_COUT_EP_HCFK_IDX', + 'unique' => false, + 'table' => 'CENTRE_COUT_EP', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'CENTRE_COUT_EP_HDFK_IDX' => + array ( + 'name' => 'CENTRE_COUT_EP_HDFK_IDX', + 'unique' => false, + 'table' => 'CENTRE_COUT_EP', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'CENTRE_COUT_EP_HMFK_IDX' => + array ( + 'name' => 'CENTRE_COUT_EP_HMFK_IDX', + 'unique' => false, + 'table' => 'CENTRE_COUT_EP', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'CENTRE_COUT_EP_PK' => + array ( + 'name' => 'CENTRE_COUT_EP_PK', + 'unique' => true, + 'table' => 'CENTRE_COUT_EP', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'CENTRE_COUT_EP_SOURCE_FK' => + array ( + 'name' => 'CENTRE_COUT_EP_SOURCE_FK', + 'unique' => false, + 'table' => 'CENTRE_COUT_EP', + 'columns' => + array ( + 0 => 'SOURCE_ID', + ), + ), + 'CENTRE_COUT_EP__UN' => + array ( + 'name' => 'CENTRE_COUT_EP__UN', + 'unique' => true, + 'table' => 'CENTRE_COUT_EP', + 'columns' => + array ( + 0 => 'CENTRE_COUT_ID', + 1 => 'ELEMENT_PEDAGOGIQUE_ID', + 2 => 'TYPE_HEURES_ID', + 3 => 'HISTO_DESTRUCTION', + ), + ), + 'CENTRE_COUT_HCFK_IDX' => + array ( + 'name' => 'CENTRE_COUT_HCFK_IDX', + 'unique' => false, + 'table' => 'CENTRE_COUT', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'CENTRE_COUT_HDFK_IDX' => + array ( + 'name' => 'CENTRE_COUT_HDFK_IDX', + 'unique' => false, + 'table' => 'CENTRE_COUT', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'CENTRE_COUT_HMFK_IDX' => + array ( + 'name' => 'CENTRE_COUT_HMFK_IDX', + 'unique' => false, + 'table' => 'CENTRE_COUT', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'CENTRE_COUT_PK' => + array ( + 'name' => 'CENTRE_COUT_PK', + 'unique' => true, + 'table' => 'CENTRE_COUT', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'CENTRE_COUT_SOURCE_FK_IDX' => + array ( + 'name' => 'CENTRE_COUT_SOURCE_FK_IDX', + 'unique' => false, + 'table' => 'CENTRE_COUT', + 'columns' => + array ( + 0 => 'SOURCE_ID', + ), + ), + 'CENTRE_COUT_STRUCTURE_HCFK_IDX' => + array ( + 'name' => 'CENTRE_COUT_STRUCTURE_HCFK_IDX', + 'unique' => false, + 'table' => 'CENTRE_COUT_STRUCTURE', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'CENTRE_COUT_STRUCTURE_HDFK_IDX' => + array ( + 'name' => 'CENTRE_COUT_STRUCTURE_HDFK_IDX', + 'unique' => false, + 'table' => 'CENTRE_COUT_STRUCTURE', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'CENTRE_COUT_STRUCTURE_HMFK_IDX' => + array ( + 'name' => 'CENTRE_COUT_STRUCTURE_HMFK_IDX', + 'unique' => false, + 'table' => 'CENTRE_COUT_STRUCTURE', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'CENTRE_COUT_STRUCTURE_PK_IDX' => + array ( + 'name' => 'CENTRE_COUT_STRUCTURE_PK_IDX', + 'unique' => true, + 'table' => 'CENTRE_COUT_STRUCTURE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'CENTRE_COUT_TYPE_RESSOURCE_FK' => + array ( + 'name' => 'CENTRE_COUT_TYPE_RESSOURCE_FK', + 'unique' => false, + 'table' => 'CENTRE_COUT', + 'columns' => + array ( + 0 => 'TYPE_RESSOURCE_ID', + ), + ), + 'CHEMIN_PEDAGOGIQUE_ETAPE_FK' => + array ( + 'name' => 'CHEMIN_PEDAGOGIQUE_ETAPE_FK', + 'unique' => false, + 'table' => 'CHEMIN_PEDAGOGIQUE', + 'columns' => + array ( + 0 => 'ETAPE_ID', + ), + ), + 'CHEMIN_PEDAGOGIQUE_HCFK_IDX' => + array ( + 'name' => 'CHEMIN_PEDAGOGIQUE_HCFK_IDX', + 'unique' => false, + 'table' => 'CHEMIN_PEDAGOGIQUE', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'CHEMIN_PEDAGOGIQUE_HDFK_IDX' => + array ( + 'name' => 'CHEMIN_PEDAGOGIQUE_HDFK_IDX', + 'unique' => false, + 'table' => 'CHEMIN_PEDAGOGIQUE', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'CHEMIN_PEDAGOGIQUE_HMFK_IDX' => + array ( + 'name' => 'CHEMIN_PEDAGOGIQUE_HMFK_IDX', + 'unique' => false, + 'table' => 'CHEMIN_PEDAGOGIQUE', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'CHEMIN_PEDAGOGIQUE_PK' => + array ( + 'name' => 'CHEMIN_PEDAGOGIQUE_PK', + 'unique' => true, + 'table' => 'CHEMIN_PEDAGOGIQUE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'CHEMIN_PEDAGOGIQUE_SOURCE_FK' => + array ( + 'name' => 'CHEMIN_PEDAGOGIQUE_SOURCE_FK', + 'unique' => false, + 'table' => 'CHEMIN_PEDAGOGIQUE', + 'columns' => + array ( + 0 => 'SOURCE_ID', + ), + ), + 'CHEMIN_PEDAGOGIQUE__UN' => + array ( + 'name' => 'CHEMIN_PEDAGOGIQUE__UN', + 'unique' => true, + 'table' => 'CHEMIN_PEDAGOGIQUE', + 'columns' => + array ( + 0 => 'ELEMENT_PEDAGOGIQUE_ID', + 1 => 'ETAPE_ID', + 2 => 'HISTO_DESTRUCTION', + ), + ), + 'CHEMIN_PEDAGO_SRC_ID_UN' => + array ( + 'name' => 'CHEMIN_PEDAGO_SRC_ID_UN', + 'unique' => true, + 'table' => 'CHEMIN_PEDAGOGIQUE', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + ), + ), + 'CIVILITE_LIBELLE_COURT_UN' => + array ( + 'name' => 'CIVILITE_LIBELLE_COURT_UN', + 'unique' => true, + 'table' => 'CIVILITE', + 'columns' => + array ( + 0 => 'LIBELLE_COURT', + ), + ), + 'CIVILITE_PK' => + array ( + 'name' => 'CIVILITE_PK', + 'unique' => true, + 'table' => 'CIVILITE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'CONTRAT_CONTRAT_FK_IDX' => + array ( + 'name' => 'CONTRAT_CONTRAT_FK_IDX', + 'unique' => false, + 'table' => 'CONTRAT', + 'columns' => + array ( + 0 => 'CONTRAT_ID', + ), + ), + 'CONTRAT_FICHIER_FFK_IDX' => + array ( + 'name' => 'CONTRAT_FICHIER_FFK_IDX', + 'unique' => false, + 'table' => 'CONTRAT_FICHIER', + 'columns' => + array ( + 0 => 'FICHIER_ID', + ), + ), + 'CONTRAT_FICHIER_FK' => + array ( + 'name' => 'CONTRAT_FICHIER_FK', + 'unique' => false, + 'table' => 'CONTRAT_FICHIER', + 'columns' => + array ( + 0 => 'CONTRAT_ID', + ), + ), + 'CONTRAT_FICHIER_PK' => + array ( + 'name' => 'CONTRAT_FICHIER_PK', + 'unique' => true, + 'table' => 'CONTRAT_FICHIER', + 'columns' => + array ( + 0 => 'CONTRAT_ID', + 1 => 'FICHIER_ID', + ), + ), + 'CONTRAT_HCFK_IDX' => + array ( + 'name' => 'CONTRAT_HCFK_IDX', + 'unique' => false, + 'table' => 'CONTRAT', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'CONTRAT_HDFK_IDX' => + array ( + 'name' => 'CONTRAT_HDFK_IDX', + 'unique' => false, + 'table' => 'CONTRAT', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'CONTRAT_HMFK_IDX' => + array ( + 'name' => 'CONTRAT_HMFK_IDX', + 'unique' => false, + 'table' => 'CONTRAT', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'CONTRAT_INTERVENANT_FK_IDX' => + array ( + 'name' => 'CONTRAT_INTERVENANT_FK_IDX', + 'unique' => false, + 'table' => 'CONTRAT', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + ), + ), + 'CONTRAT_NUMERO_AVENANT_UN' => + array ( + 'name' => 'CONTRAT_NUMERO_AVENANT_UN', + 'unique' => true, + 'table' => 'CONTRAT', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + 1 => 'STRUCTURE_ID', + 2 => 'NUMERO_AVENANT', + 3 => 'VALIDATION_ID', + 4 => 'HISTO_DESTRUCTION', + ), + ), + 'CONTRAT_PK' => + array ( + 'name' => 'CONTRAT_PK', + 'unique' => true, + 'table' => 'CONTRAT', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'CONTRAT_STRUCTURE_FK_IDX' => + array ( + 'name' => 'CONTRAT_STRUCTURE_FK_IDX', + 'unique' => false, + 'table' => 'CONTRAT', + 'columns' => + array ( + 0 => 'STRUCTURE_ID', + ), + ), + 'CONTRAT_TYPE_CONTRAT_FK_IDX' => + array ( + 'name' => 'CONTRAT_TYPE_CONTRAT_FK_IDX', + 'unique' => false, + 'table' => 'CONTRAT', + 'columns' => + array ( + 0 => 'TYPE_CONTRAT_ID', + ), + ), + 'CONTRAT_VALIDATION_FK_IDX' => + array ( + 'name' => 'CONTRAT_VALIDATION_FK_IDX', + 'unique' => false, + 'table' => 'CONTRAT', + 'columns' => + array ( + 0 => 'VALIDATION_ID', + ), + ), + 'CORPS_HCFK_IDX' => + array ( + 'name' => 'CORPS_HCFK_IDX', + 'unique' => false, + 'table' => 'CORPS', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'CORPS_HDFK_IDX' => + array ( + 'name' => 'CORPS_HDFK_IDX', + 'unique' => false, + 'table' => 'CORPS', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'CORPS_HMFK_IDX' => + array ( + 'name' => 'CORPS_HMFK_IDX', + 'unique' => false, + 'table' => 'CORPS', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'CORPS_PK' => + array ( + 'name' => 'CORPS_PK', + 'unique' => true, + 'table' => 'CORPS', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'CORPS_SOURCE_FK_IDX' => + array ( + 'name' => 'CORPS_SOURCE_FK_IDX', + 'unique' => false, + 'table' => 'CORPS', + 'columns' => + array ( + 0 => 'SOURCE_ID', + ), + ), + 'CORPS_SOURCE_UN' => + array ( + 'name' => 'CORPS_SOURCE_UN', + 'unique' => true, + 'table' => 'CORPS', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + ), + ), + 'CPEP_FK_IDX' => + array ( + 'name' => 'CPEP_FK_IDX', + 'unique' => false, + 'table' => 'CHEMIN_PEDAGOGIQUE', + 'columns' => + array ( + 0 => 'ELEMENT_PEDAGOGIQUE_ID', + ), + ), + 'CS_TYPE_INTERVENANT_FK_IDX' => + array ( + 'name' => 'CS_TYPE_INTERVENANT_FK_IDX', + 'unique' => false, + 'table' => 'CAMPAGNE_SAISIE', + 'columns' => + array ( + 0 => 'TYPE_INTERVENANT_ID', + ), + ), + 'CS_TYPE_VOLUME_HORAIRE_FK_IDX' => + array ( + 'name' => 'CS_TYPE_VOLUME_HORAIRE_FK_IDX', + 'unique' => false, + 'table' => 'CAMPAGNE_SAISIE', + 'columns' => + array ( + 0 => 'TYPE_VOLUME_HORAIRE_ID', + ), + ), + 'DEPARTEMENT_HCFK_IDX' => + array ( + 'name' => 'DEPARTEMENT_HCFK_IDX', + 'unique' => false, + 'table' => 'DEPARTEMENT', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'DEPARTEMENT_HDFK_IDX' => + array ( + 'name' => 'DEPARTEMENT_HDFK_IDX', + 'unique' => false, + 'table' => 'DEPARTEMENT', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'DEPARTEMENT_HMFK_IDX' => + array ( + 'name' => 'DEPARTEMENT_HMFK_IDX', + 'unique' => false, + 'table' => 'DEPARTEMENT', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'DEPARTEMENT_PK' => + array ( + 'name' => 'DEPARTEMENT_PK', + 'unique' => true, + 'table' => 'DEPARTEMENT', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'DEPARTEMENT_SOURCE_FK_IDX' => + array ( + 'name' => 'DEPARTEMENT_SOURCE_FK_IDX', + 'unique' => false, + 'table' => 'DEPARTEMENT', + 'columns' => + array ( + 0 => 'SOURCE_ID', + ), + ), + 'DISCIPLINE_HCFK_IDX' => + array ( + 'name' => 'DISCIPLINE_HCFK_IDX', + 'unique' => false, + 'table' => 'DISCIPLINE', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'DISCIPLINE_HDFK_IDX' => + array ( + 'name' => 'DISCIPLINE_HDFK_IDX', + 'unique' => false, + 'table' => 'DISCIPLINE', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'DISCIPLINE_HMFK_IDX' => + array ( + 'name' => 'DISCIPLINE_HMFK_IDX', + 'unique' => false, + 'table' => 'DISCIPLINE', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'DISCIPLINE_PK' => + array ( + 'name' => 'DISCIPLINE_PK', + 'unique' => true, + 'table' => 'DISCIPLINE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'DISCIPLINE_SOURCE_FK_IDX' => + array ( + 'name' => 'DISCIPLINE_SOURCE_FK_IDX', + 'unique' => false, + 'table' => 'DISCIPLINE', + 'columns' => + array ( + 0 => 'SOURCE_ID', + ), + ), + 'DISCIPLINE_SOURCE_UN' => + array ( + 'name' => 'DISCIPLINE_SOURCE_UN', + 'unique' => true, + 'table' => 'DISCIPLINE', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + ), + ), + 'DOMAINE_FONCTIONNEL_HCFK_IDX' => + array ( + 'name' => 'DOMAINE_FONCTIONNEL_HCFK_IDX', + 'unique' => false, + 'table' => 'DOMAINE_FONCTIONNEL', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'DOMAINE_FONCTIONNEL_HDFK_IDX' => + array ( + 'name' => 'DOMAINE_FONCTIONNEL_HDFK_IDX', + 'unique' => false, + 'table' => 'DOMAINE_FONCTIONNEL', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'DOMAINE_FONCTIONNEL_HMFK_IDX' => + array ( + 'name' => 'DOMAINE_FONCTIONNEL_HMFK_IDX', + 'unique' => false, + 'table' => 'DOMAINE_FONCTIONNEL', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'DOMAINE_FONCTIONNEL_PK' => + array ( + 'name' => 'DOMAINE_FONCTIONNEL_PK', + 'unique' => true, + 'table' => 'DOMAINE_FONCTIONNEL', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'DOMAINE_FONCTIONNEL_SOURCE_FK' => + array ( + 'name' => 'DOMAINE_FONCTIONNEL_SOURCE_FK', + 'unique' => false, + 'table' => 'DOMAINE_FONCTIONNEL', + 'columns' => + array ( + 0 => 'SOURCE_ID', + ), + ), + 'DOSSIER_D_FK' => + array ( + 'name' => 'DOSSIER_D_FK', + 'unique' => false, + 'table' => 'DOSSIER', + 'columns' => + array ( + 0 => 'DEPT_NAISSANCE_ID', + ), + ), + 'DOSSIER_HCFK_IDX' => + array ( + 'name' => 'DOSSIER_HCFK_IDX', + 'unique' => false, + 'table' => 'DOSSIER', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'DOSSIER_HDFK_IDX' => + array ( + 'name' => 'DOSSIER_HDFK_IDX', + 'unique' => false, + 'table' => 'DOSSIER', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'DOSSIER_HMFK_IDX' => + array ( + 'name' => 'DOSSIER_HMFK_IDX', + 'unique' => false, + 'table' => 'DOSSIER', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'DOSSIER_INTERVENANT_FK_IDX' => + array ( + 'name' => 'DOSSIER_INTERVENANT_FK_IDX', + 'unique' => false, + 'table' => 'DOSSIER', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + ), + ), + 'DOSSIER_PK' => + array ( + 'name' => 'DOSSIER_PK', + 'unique' => true, + 'table' => 'DOSSIER', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'DOSSIER_P_FK' => + array ( + 'name' => 'DOSSIER_P_FK', + 'unique' => false, + 'table' => 'DOSSIER', + 'columns' => + array ( + 0 => 'PAYS_NAISSANCE_ID', + ), + ), + 'DOSSIER_UK1' => + array ( + 'name' => 'DOSSIER_UK1', + 'unique' => true, + 'table' => 'DOSSIER', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTION', + ), + ), + 'DOTATION_ANNEE_FK_IDX' => + array ( + 'name' => 'DOTATION_ANNEE_FK_IDX', + 'unique' => false, + 'table' => 'DOTATION', + 'columns' => + array ( + 0 => 'ANNEE_ID', + ), + ), + 'DOTATION_HCFK_IDX' => + array ( + 'name' => 'DOTATION_HCFK_IDX', + 'unique' => false, + 'table' => 'DOTATION', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'DOTATION_HDFK_IDX' => + array ( + 'name' => 'DOTATION_HDFK_IDX', + 'unique' => false, + 'table' => 'DOTATION', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'DOTATION_HMFK_IDX' => + array ( + 'name' => 'DOTATION_HMFK_IDX', + 'unique' => false, + 'table' => 'DOTATION', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'DOTATION_PK' => + array ( + 'name' => 'DOTATION_PK', + 'unique' => true, + 'table' => 'DOTATION', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'DOTATION_STRUCTURE_FK_IDX' => + array ( + 'name' => 'DOTATION_STRUCTURE_FK_IDX', + 'unique' => false, + 'table' => 'DOTATION', + 'columns' => + array ( + 0 => 'STRUCTURE_ID', + ), + ), + 'DOTATION_TYPE_RESSOURCE_FK' => + array ( + 'name' => 'DOTATION_TYPE_RESSOURCE_FK', + 'unique' => false, + 'table' => 'DOTATION', + 'columns' => + array ( + 0 => 'TYPE_RESSOURCE_ID', + ), + ), + 'DOTATION__UN' => + array ( + 'name' => 'DOTATION__UN', + 'unique' => true, + 'table' => 'DOTATION', + 'columns' => + array ( + 0 => 'TYPE_RESSOURCE_ID', + 1 => 'ANNEE_ID', + 2 => 'ANNEE_CIVILE', + 3 => 'STRUCTURE_ID', + 4 => 'LIBELLE', + 5 => 'HISTO_DESTRUCTION', + ), + ), + 'DS_MDS_FK_IDX' => + array ( + 'name' => 'DS_MDS_FK_IDX', + 'unique' => false, + 'table' => 'MODIFICATION_SERVICE_DU', + 'columns' => + array ( + 0 => 'MOTIF_ID', + ), + ), + 'EFFECTIFS_ELEMENT_FK_IDX' => + array ( + 'name' => 'EFFECTIFS_ELEMENT_FK_IDX', + 'unique' => false, + 'table' => 'EFFECTIFS', + 'columns' => + array ( + 0 => 'ELEMENT_PEDAGOGIQUE_ID', + ), + ), + 'EFFECTIFS_FK' => + array ( + 'name' => 'EFFECTIFS_FK', + 'unique' => false, + 'table' => 'EFFECTIFS', + 'columns' => + array ( + 0 => 'ANNEE_ID', + ), + ), + 'EFFECTIFS_HCFK_IDX' => + array ( + 'name' => 'EFFECTIFS_HCFK_IDX', + 'unique' => false, + 'table' => 'EFFECTIFS', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'EFFECTIFS_HDFK_IDX' => + array ( + 'name' => 'EFFECTIFS_HDFK_IDX', + 'unique' => false, + 'table' => 'EFFECTIFS', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'EFFECTIFS_HMFK_IDX' => + array ( + 'name' => 'EFFECTIFS_HMFK_IDX', + 'unique' => false, + 'table' => 'EFFECTIFS', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'EFFECTIFS_PK' => + array ( + 'name' => 'EFFECTIFS_PK', + 'unique' => true, + 'table' => 'EFFECTIFS', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'EFFECTIFS_SOURCE_FK_IDX' => + array ( + 'name' => 'EFFECTIFS_SOURCE_FK_IDX', + 'unique' => false, + 'table' => 'EFFECTIFS', + 'columns' => + array ( + 0 => 'SOURCE_ID', + ), + ), + 'EFFECTIFS__UN' => + array ( + 'name' => 'EFFECTIFS__UN', + 'unique' => true, + 'table' => 'EFFECTIFS', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'ANNEE_ID', + ), + ), + 'ELEMENT_MODULATEUR_HCFK_IDX' => + array ( + 'name' => 'ELEMENT_MODULATEUR_HCFK_IDX', + 'unique' => false, + 'table' => 'ELEMENT_MODULATEUR', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'ELEMENT_MODULATEUR_HDFK_IDX' => + array ( + 'name' => 'ELEMENT_MODULATEUR_HDFK_IDX', + 'unique' => false, + 'table' => 'ELEMENT_MODULATEUR', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'ELEMENT_MODULATEUR_HMFK_IDX' => + array ( + 'name' => 'ELEMENT_MODULATEUR_HMFK_IDX', + 'unique' => false, + 'table' => 'ELEMENT_MODULATEUR', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'ELEMENT_MODULATEUR_PK' => + array ( + 'name' => 'ELEMENT_MODULATEUR_PK', + 'unique' => true, + 'table' => 'ELEMENT_MODULATEUR', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'ELEMENT_MODULATEUR__UN' => + array ( + 'name' => 'ELEMENT_MODULATEUR__UN', + 'unique' => true, + 'table' => 'ELEMENT_MODULATEUR', + 'columns' => + array ( + 0 => 'ELEMENT_ID', + 1 => 'MODULATEUR_ID', + 2 => 'HISTO_DESTRUCTION', + ), + ), + 'ELEMENT_PEDAGOGIQUE_ANNEE_FK' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_ANNEE_FK', + 'unique' => false, + 'table' => 'ELEMENT_PEDAGOGIQUE', + 'columns' => + array ( + 0 => 'ANNEE_ID', + ), + ), + 'ELEMENT_PEDAGOGIQUE_ETAPE_FK' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_ETAPE_FK', + 'unique' => false, + 'table' => 'ELEMENT_PEDAGOGIQUE', + 'columns' => + array ( + 0 => 'ETAPE_ID', + ), + ), + 'ELEMENT_PEDAGOGIQUE_HCFK_IDX' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_HCFK_IDX', + 'unique' => false, + 'table' => 'ELEMENT_PEDAGOGIQUE', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'ELEMENT_PEDAGOGIQUE_HDFK_IDX' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_HDFK_IDX', + 'unique' => false, + 'table' => 'ELEMENT_PEDAGOGIQUE', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'ELEMENT_PEDAGOGIQUE_HMFK_IDX' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_HMFK_IDX', + 'unique' => false, + 'table' => 'ELEMENT_PEDAGOGIQUE', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'ELEMENT_PEDAGOGIQUE_PERIODE_FK' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_PERIODE_FK', + 'unique' => false, + 'table' => 'ELEMENT_PEDAGOGIQUE', + 'columns' => + array ( + 0 => 'PERIODE_ID', + ), + ), + 'ELEMENT_PEDAGOGIQUE_PK' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_PK', + 'unique' => true, + 'table' => 'ELEMENT_PEDAGOGIQUE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'ELEMENT_PEDAGOGIQUE_SOURCE_FK' => + array ( + 'name' => 'ELEMENT_PEDAGOGIQUE_SOURCE_FK', + 'unique' => false, + 'table' => 'ELEMENT_PEDAGOGIQUE', + 'columns' => + array ( + 0 => 'SOURCE_ID', + ), + ), + 'ELEMENT_TAUX_REGIMES_HCFK_IDX' => + array ( + 'name' => 'ELEMENT_TAUX_REGIMES_HCFK_IDX', + 'unique' => false, + 'table' => 'ELEMENT_TAUX_REGIMES', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'ELEMENT_TAUX_REGIMES_HDFK_IDX' => + array ( + 'name' => 'ELEMENT_TAUX_REGIMES_HDFK_IDX', + 'unique' => false, + 'table' => 'ELEMENT_TAUX_REGIMES', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'ELEMENT_TAUX_REGIMES_HMFK_IDX' => + array ( + 'name' => 'ELEMENT_TAUX_REGIMES_HMFK_IDX', + 'unique' => false, + 'table' => 'ELEMENT_TAUX_REGIMES', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'ELEMENT_TAUX_REGIMES_PK' => + array ( + 'name' => 'ELEMENT_TAUX_REGIMES_PK', + 'unique' => true, + 'table' => 'ELEMENT_TAUX_REGIMES', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'ELEMENT_TAUX_REGIMES_SOURCE_FK' => + array ( + 'name' => 'ELEMENT_TAUX_REGIMES_SOURCE_FK', + 'unique' => false, + 'table' => 'ELEMENT_TAUX_REGIMES', + 'columns' => + array ( + 0 => 'SOURCE_ID', + ), + ), + 'ELEMENT_TAUX_REGIMES__UN' => + array ( + 'name' => 'ELEMENT_TAUX_REGIMES__UN', + 'unique' => true, + 'table' => 'ELEMENT_TAUX_REGIMES', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'ELEMENT_TAUX_REGIMES__UNV1' => + array ( + 'name' => 'ELEMENT_TAUX_REGIMES__UNV1', + 'unique' => true, + 'table' => 'ELEMENT_TAUX_REGIMES', + 'columns' => + array ( + 0 => 'ELEMENT_PEDAGOGIQUE_ID', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'EM_ELEMENT_PEDAGOGIQUE_FK_IDX' => + array ( + 'name' => 'EM_ELEMENT_PEDAGOGIQUE_FK_IDX', + 'unique' => false, + 'table' => 'ELEMENT_MODULATEUR', + 'columns' => + array ( + 0 => 'ELEMENT_ID', + ), + ), + 'EM_MODULATEUR_FK_IDX' => + array ( + 'name' => 'EM_MODULATEUR_FK_IDX', + 'unique' => false, + 'table' => 'ELEMENT_MODULATEUR', + 'columns' => + array ( + 0 => 'MODULATEUR_ID', + ), + ), + 'EPS_FK_IDX' => + array ( + 'name' => 'EPS_FK_IDX', + 'unique' => false, + 'table' => 'ELEMENT_PEDAGOGIQUE', + 'columns' => + array ( + 0 => 'STRUCTURE_ID', + ), + ), + 'EP_CODE_UN' => + array ( + 'name' => 'EP_CODE_UN', + 'unique' => true, + 'table' => 'ELEMENT_PEDAGOGIQUE', + 'columns' => + array ( + 0 => 'CODE', + 1 => 'HISTO_DESTRUCTION', + 2 => 'ANNEE_ID', + ), + ), + 'EP_CODE__UN' => + array ( + 'name' => 'EP_CODE__UN', + 'unique' => true, + 'table' => 'ELEMENT_PEDAGOGIQUE', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'ANNEE_ID', + ), + ), + 'EP_DISCIPLINE_FK_IDX' => + array ( + 'name' => 'EP_DISCIPLINE_FK_IDX', + 'unique' => false, + 'table' => 'ELEMENT_PEDAGOGIQUE', + 'columns' => + array ( + 0 => 'DISCIPLINE_ID', + ), + ), + 'EP_SRC_UN' => + array ( + 'name' => 'EP_SRC_UN', + 'unique' => true, + 'table' => 'ELEMENT_PEDAGOGIQUE', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'ANNEE_ID', + 2 => 'HISTO_DESTRUCTION', + ), + ), + 'ETABLISSEMENT_HCFK_IDX' => + array ( + 'name' => 'ETABLISSEMENT_HCFK_IDX', + 'unique' => false, + 'table' => 'ETABLISSEMENT', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'ETABLISSEMENT_HDFK_IDX' => + array ( + 'name' => 'ETABLISSEMENT_HDFK_IDX', + 'unique' => false, + 'table' => 'ETABLISSEMENT', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'ETABLISSEMENT_HMFK_IDX' => + array ( + 'name' => 'ETABLISSEMENT_HMFK_IDX', + 'unique' => false, + 'table' => 'ETABLISSEMENT', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'ETABLISSEMENT_PK' => + array ( + 'name' => 'ETABLISSEMENT_PK', + 'unique' => true, + 'table' => 'ETABLISSEMENT', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'ETABLISSEMENT_SOURCE_FK_IDX' => + array ( + 'name' => 'ETABLISSEMENT_SOURCE_FK_IDX', + 'unique' => false, + 'table' => 'ETABLISSEMENT', + 'columns' => + array ( + 0 => 'SOURCE_ID', + ), + ), + 'ETABLISSEMENT_SOURCE_ID_UN' => + array ( + 'name' => 'ETABLISSEMENT_SOURCE_ID_UN', + 'unique' => true, + 'table' => 'ETABLISSEMENT', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + ), + ), + 'ETABLISSEMENT_SOURCE_UN' => + array ( + 'name' => 'ETABLISSEMENT_SOURCE_UN', + 'unique' => true, + 'table' => 'ETABLISSEMENT', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'ETAPE_ANNEE_FK' => + array ( + 'name' => 'ETAPE_ANNEE_FK', + 'unique' => false, + 'table' => 'ETAPE', + 'columns' => + array ( + 0 => 'ANNEE_ID', + ), + ), + 'ETAPE_CODE_UN' => + array ( + 'name' => 'ETAPE_CODE_UN', + 'unique' => true, + 'table' => 'ETAPE', + 'columns' => + array ( + 0 => 'CODE', + 1 => 'ANNEE_ID', + 2 => 'HISTO_DESTRUCTION', + ), + ), + 'ETAPE_DOMAINE_FONCTIONNEL_FK' => + array ( + 'name' => 'ETAPE_DOMAINE_FONCTIONNEL_FK', + 'unique' => false, + 'table' => 'ETAPE', + 'columns' => + array ( + 0 => 'DOMAINE_FONCTIONNEL_ID', + ), + ), + 'ETAPE_HCFK_IDX' => + array ( + 'name' => 'ETAPE_HCFK_IDX', + 'unique' => false, + 'table' => 'ETAPE', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'ETAPE_HDFK_IDX' => + array ( + 'name' => 'ETAPE_HDFK_IDX', + 'unique' => false, + 'table' => 'ETAPE', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'ETAPE_HMFK_IDX' => + array ( + 'name' => 'ETAPE_HMFK_IDX', + 'unique' => false, + 'table' => 'ETAPE', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'ETAPE_PK' => + array ( + 'name' => 'ETAPE_PK', + 'unique' => true, + 'table' => 'ETAPE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'ETAPE_SOURCE_FK_IDX' => + array ( + 'name' => 'ETAPE_SOURCE_FK_IDX', + 'unique' => false, + 'table' => 'ETAPE', + 'columns' => + array ( + 0 => 'SOURCE_ID', + ), + ), + 'ETAPE_SRC_UN' => + array ( + 'name' => 'ETAPE_SRC_UN', + 'unique' => true, + 'table' => 'ETAPE', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'HISTO_DESTRUCTION', + 2 => 'ANNEE_ID', + ), + ), + 'ETAPE_STRUCTURE_FK_IDX' => + array ( + 'name' => 'ETAPE_STRUCTURE_FK_IDX', + 'unique' => false, + 'table' => 'ETAPE', + 'columns' => + array ( + 0 => 'STRUCTURE_ID', + ), + ), + 'ETAPE_TYPE_FORMATION_FK_IDX' => + array ( + 'name' => 'ETAPE_TYPE_FORMATION_FK_IDX', + 'unique' => false, + 'table' => 'ETAPE', + 'columns' => + array ( + 0 => 'TYPE_FORMATION_ID', + ), + ), + 'ETAT_SORTIE_CODE_UN' => + array ( + 'name' => 'ETAT_SORTIE_CODE_UN', + 'unique' => true, + 'table' => 'ETAT_SORTIE', + 'columns' => + array ( + 0 => 'CODE', + ), + ), + 'ETAT_SORTIE_PK' => + array ( + 'name' => 'ETAT_SORTIE_PK', + 'unique' => true, + 'table' => 'ETAT_SORTIE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'ETAT_VOLUME_HORAIRE_PK' => + array ( + 'name' => 'ETAT_VOLUME_HORAIRE_PK', + 'unique' => true, + 'table' => 'ETAT_VOLUME_HORAIRE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'ETAT_VOLUME_HORAIRE__UN' => + array ( + 'name' => 'ETAT_VOLUME_HORAIRE__UN', + 'unique' => true, + 'table' => 'ETAT_VOLUME_HORAIRE', + 'columns' => + array ( + 0 => 'CODE', + ), + ), + 'ETR_ELEMENT_FK_IDX' => + array ( + 'name' => 'ETR_ELEMENT_FK_IDX', + 'unique' => false, + 'table' => 'ELEMENT_TAUX_REGIMES', + 'columns' => + array ( + 0 => 'ELEMENT_PEDAGOGIQUE_ID', + ), + ), + 'FICHIER_HCFK_IDX' => + array ( + 'name' => 'FICHIER_HCFK_IDX', + 'unique' => false, + 'table' => 'FICHIER', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'FICHIER_HDFK_IDX' => + array ( + 'name' => 'FICHIER_HDFK_IDX', + 'unique' => false, + 'table' => 'FICHIER', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'FICHIER_HMFK_IDX' => + array ( + 'name' => 'FICHIER_HMFK_IDX', + 'unique' => false, + 'table' => 'FICHIER', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'FICHIER_PK' => + array ( + 'name' => 'FICHIER_PK', + 'unique' => true, + 'table' => 'FICHIER', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'FICHIER_VALID_FK_IDX' => + array ( + 'name' => 'FICHIER_VALID_FK_IDX', + 'unique' => false, + 'table' => 'FICHIER', + 'columns' => + array ( + 0 => 'VALIDATION_ID', + ), + ), + 'FONCTION_REFERENTIEL_CODE_UN' => + array ( + 'name' => 'FONCTION_REFERENTIEL_CODE_UN', + 'unique' => true, + 'table' => 'FONCTION_REFERENTIEL', + 'columns' => + array ( + 0 => 'CODE', + ), + ), + 'FONCTION_REFERENTIEL_HCFK_IDX' => + array ( + 'name' => 'FONCTION_REFERENTIEL_HCFK_IDX', + 'unique' => false, + 'table' => 'FONCTION_REFERENTIEL', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'FONCTION_REFERENTIEL_HDFK_IDX' => + array ( + 'name' => 'FONCTION_REFERENTIEL_HDFK_IDX', + 'unique' => false, + 'table' => 'FONCTION_REFERENTIEL', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'FONCTION_REFERENTIEL_HMFK_IDX' => + array ( + 'name' => 'FONCTION_REFERENTIEL_HMFK_IDX', + 'unique' => false, + 'table' => 'FONCTION_REFERENTIEL', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'FONCTION_REFERENTIEL_PK' => + array ( + 'name' => 'FONCTION_REFERENTIEL_PK', + 'unique' => true, + 'table' => 'FONCTION_REFERENTIEL', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'FONCTION_REFERENTIEL_SFK_IDX' => + array ( + 'name' => 'FONCTION_REFERENTIEL_SFK_IDX', + 'unique' => false, + 'table' => 'FONCTION_REFERENTIEL', + 'columns' => + array ( + 0 => 'STRUCTURE_ID', + ), + ), + 'FONC_REF_DOMAINE_FONCT_FK_IDX' => + array ( + 'name' => 'FONC_REF_DOMAINE_FONCT_FK_IDX', + 'unique' => false, + 'table' => 'FONCTION_REFERENTIEL', + 'columns' => + array ( + 0 => 'DOMAINE_FONCTIONNEL_ID', + ), + ), + 'FORMULE_PK' => + array ( + 'name' => 'FORMULE_PK', + 'unique' => true, + 'table' => 'FORMULE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'FORMULE_RESULTAT_PK' => + array ( + 'name' => 'FORMULE_RESULTAT_PK', + 'unique' => true, + 'table' => 'FORMULE_RESULTAT', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'FORMULE_RESULTAT_SERVICE_PK' => + array ( + 'name' => 'FORMULE_RESULTAT_SERVICE_PK', + 'unique' => true, + 'table' => 'FORMULE_RESULTAT_SERVICE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'FORMULE_RESULTAT_TYPE_INT_IDX' => + array ( + 'name' => 'FORMULE_RESULTAT_TYPE_INT_IDX', + 'unique' => false, + 'table' => 'FORMULE_RESULTAT', + 'columns' => + array ( + 0 => 'TYPE_INTERVENANT_CODE', + ), + ), + 'FORMULE_RESULTAT_VH_PK' => + array ( + 'name' => 'FORMULE_RESULTAT_VH_PK', + 'unique' => true, + 'table' => 'FORMULE_RESULTAT_VH', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'FORMULE_RESULTAT_VH_REF_PK' => + array ( + 'name' => 'FORMULE_RESULTAT_VH_REF_PK', + 'unique' => true, + 'table' => 'FORMULE_RESULTAT_VH_REF', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'FORMULE_RESULTAT__UN' => + array ( + 'name' => 'FORMULE_RESULTAT__UN', + 'unique' => true, + 'table' => 'FORMULE_RESULTAT', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + 1 => 'TYPE_VOLUME_HORAIRE_ID', + 2 => 'ETAT_VOLUME_HORAIRE_ID', + ), + ), + 'FORMULE_TEST_INTERVENANT_PK' => + array ( + 'name' => 'FORMULE_TEST_INTERVENANT_PK', + 'unique' => true, + 'table' => 'FORMULE_TEST_INTERVENANT', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'FORMULE_TEST_STRUCTURE_PK' => + array ( + 'name' => 'FORMULE_TEST_STRUCTURE_PK', + 'unique' => true, + 'table' => 'FORMULE_TEST_STRUCTURE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'FORMULE_TEST_STRUCTURE__UN' => + array ( + 'name' => 'FORMULE_TEST_STRUCTURE__UN', + 'unique' => true, + 'table' => 'FORMULE_TEST_STRUCTURE', + 'columns' => + array ( + 0 => 'LIBELLE', + ), + ), + 'FORMULE_TEST_VOLUME_HORAIRE_PK' => + array ( + 'name' => 'FORMULE_TEST_VOLUME_HORAIRE_PK', + 'unique' => true, + 'table' => 'FORMULE_TEST_VOLUME_HORAIRE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'FORMULE__UN' => + array ( + 'name' => 'FORMULE__UN', + 'unique' => true, + 'table' => 'FORMULE', + 'columns' => + array ( + 0 => 'LIBELLE', + ), + ), + 'FRES_ETAT_VOLUME_HORAIRE_FK' => + array ( + 'name' => 'FRES_ETAT_VOLUME_HORAIRE_FK', + 'unique' => false, + 'table' => 'FORMULE_RESULTAT', + 'columns' => + array ( + 0 => 'ETAT_VOLUME_HORAIRE_ID', + ), + ), + 'FRES_INTERVENANT_FK_IDX' => + array ( + 'name' => 'FRES_INTERVENANT_FK_IDX', + 'unique' => false, + 'table' => 'FORMULE_RESULTAT', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + ), + ), + 'FRES_TYPE_VOLUME_HORAIRE_FK' => + array ( + 'name' => 'FRES_TYPE_VOLUME_HORAIRE_FK', + 'unique' => false, + 'table' => 'FORMULE_RESULTAT', + 'columns' => + array ( + 0 => 'TYPE_VOLUME_HORAIRE_ID', + ), + ), + 'FRR_FORMULE_RESULTAT_FK_IDX' => + array ( + 'name' => 'FRR_FORMULE_RESULTAT_FK_IDX', + 'unique' => false, + 'table' => 'FORMULE_RESULTAT_SERVICE_REF', + 'columns' => + array ( + 0 => 'FORMULE_RESULTAT_ID', + ), + ), + 'FRSR_PK' => + array ( + 'name' => 'FRSR_PK', + 'unique' => true, + 'table' => 'FORMULE_RESULTAT_SERVICE_REF', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'FRSR_SERVICE_REFERENTIEL_FK' => + array ( + 'name' => 'FRSR_SERVICE_REFERENTIEL_FK', + 'unique' => false, + 'table' => 'FORMULE_RESULTAT_SERVICE_REF', + 'columns' => + array ( + 0 => 'SERVICE_REFERENTIEL_ID', + ), + ), + 'FRS_FORMULE_RESULTAT_FK_IDX' => + array ( + 'name' => 'FRS_FORMULE_RESULTAT_FK_IDX', + 'unique' => false, + 'table' => 'FORMULE_RESULTAT_SERVICE', + 'columns' => + array ( + 0 => 'FORMULE_RESULTAT_ID', + ), + ), + 'FRS_SERVICE_FK_IDX' => + array ( + 'name' => 'FRS_SERVICE_FK_IDX', + 'unique' => false, + 'table' => 'FORMULE_RESULTAT_SERVICE', + 'columns' => + array ( + 0 => 'SERVICE_ID', + ), + ), + 'FRVHR_FORMULE_RESULTAT_FK_IDX' => + array ( + 'name' => 'FRVHR_FORMULE_RESULTAT_FK_IDX', + 'unique' => false, + 'table' => 'FORMULE_RESULTAT_VH_REF', + 'columns' => + array ( + 0 => 'FORMULE_RESULTAT_ID', + ), + ), + 'FRVHR_VOLUME_HORAIRE_REF_FK' => + array ( + 'name' => 'FRVHR_VOLUME_HORAIRE_REF_FK', + 'unique' => false, + 'table' => 'FORMULE_RESULTAT_VH_REF', + 'columns' => + array ( + 0 => 'VOLUME_HORAIRE_REF_ID', + ), + ), + 'FRVH_FORMULE_RESULTAT_FK_IDX' => + array ( + 'name' => 'FRVH_FORMULE_RESULTAT_FK_IDX', + 'unique' => false, + 'table' => 'FORMULE_RESULTAT_VH', + 'columns' => + array ( + 0 => 'FORMULE_RESULTAT_ID', + ), + ), + 'FRVH_VOLUME_HORAIRE_FK_IDX' => + array ( + 'name' => 'FRVH_VOLUME_HORAIRE_FK_IDX', + 'unique' => false, + 'table' => 'FORMULE_RESULTAT_VH', + 'columns' => + array ( + 0 => 'VOLUME_HORAIRE_ID', + ), + ), + 'GRADE_CORPS_FK_IDX' => + array ( + 'name' => 'GRADE_CORPS_FK_IDX', + 'unique' => false, + 'table' => 'GRADE', + 'columns' => + array ( + 0 => 'CORPS_ID', + ), + ), + 'GRADE_HCFK_IDX' => + array ( + 'name' => 'GRADE_HCFK_IDX', + 'unique' => false, + 'table' => 'GRADE', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'GRADE_HDFK_IDX' => + array ( + 'name' => 'GRADE_HDFK_IDX', + 'unique' => false, + 'table' => 'GRADE', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'GRADE_HMFK_IDX' => + array ( + 'name' => 'GRADE_HMFK_IDX', + 'unique' => false, + 'table' => 'GRADE', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'GRADE_PK' => + array ( + 'name' => 'GRADE_PK', + 'unique' => true, + 'table' => 'GRADE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'GROUPE_ELEMENT_PEDAGOGIQUE_FK' => + array ( + 'name' => 'GROUPE_ELEMENT_PEDAGOGIQUE_FK', + 'unique' => false, + 'table' => 'GROUPE', + 'columns' => + array ( + 0 => 'ELEMENT_PEDAGOGIQUE_ID', + ), + ), + 'GROUPE_HCFK_IDX' => + array ( + 'name' => 'GROUPE_HCFK_IDX', + 'unique' => false, + 'table' => 'GROUPE', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'GROUPE_HDFK_IDX' => + array ( + 'name' => 'GROUPE_HDFK_IDX', + 'unique' => false, + 'table' => 'GROUPE', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'GROUPE_HMFK_IDX' => + array ( + 'name' => 'GROUPE_HMFK_IDX', + 'unique' => false, + 'table' => 'GROUPE', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'GROUPE_PK' => + array ( + 'name' => 'GROUPE_PK', + 'unique' => true, + 'table' => 'GROUPE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'GROUPE_TYPE_FORMATION_HCFK_IDX' => + array ( + 'name' => 'GROUPE_TYPE_FORMATION_HCFK_IDX', + 'unique' => false, + 'table' => 'GROUPE_TYPE_FORMATION', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'GROUPE_TYPE_FORMATION_HDFK_IDX' => + array ( + 'name' => 'GROUPE_TYPE_FORMATION_HDFK_IDX', + 'unique' => false, + 'table' => 'GROUPE_TYPE_FORMATION', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'GROUPE_TYPE_FORMATION_HMFK_IDX' => + array ( + 'name' => 'GROUPE_TYPE_FORMATION_HMFK_IDX', + 'unique' => false, + 'table' => 'GROUPE_TYPE_FORMATION', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'GROUPE_TYPE_FORMATION_PK' => + array ( + 'name' => 'GROUPE_TYPE_FORMATION_PK', + 'unique' => true, + 'table' => 'GROUPE_TYPE_FORMATION', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'GROUPE_TYPE_FORMATIO_SOURCE_FK' => + array ( + 'name' => 'GROUPE_TYPE_FORMATIO_SOURCE_FK', + 'unique' => false, + 'table' => 'GROUPE_TYPE_FORMATION', + 'columns' => + array ( + 0 => 'SOURCE_ID', + ), + ), + 'GROUPE_TYPE_INTERVENTION_FK' => + array ( + 'name' => 'GROUPE_TYPE_INTERVENTION_FK', + 'unique' => false, + 'table' => 'GROUPE', + 'columns' => + array ( + 0 => 'TYPE_INTERVENTION_ID', + ), + ), + 'GROUPE__UN' => + array ( + 'name' => 'GROUPE__UN', + 'unique' => true, + 'table' => 'GROUPE', + 'columns' => + array ( + 0 => 'ELEMENT_PEDAGOGIQUE_ID', + 1 => 'HISTO_DESTRUCTEUR_ID', + 2 => 'TYPE_INTERVENTION_ID', + ), + ), + 'GTYPE_FORMATION_SOURCE_UN' => + array ( + 'name' => 'GTYPE_FORMATION_SOURCE_UN', + 'unique' => true, + 'table' => 'GROUPE_TYPE_FORMATION', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + ), + ), + 'HISTO_INTERVENANT_SERVICE__UN' => + array ( + 'name' => 'HISTO_INTERVENANT_SERVICE__UN', + 'unique' => true, + 'table' => 'HISTO_INTERVENANT_SERVICE', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + 1 => 'TYPE_VOLUME_HORAIRE_ID', + 2 => 'REFERENTIEL', + ), + ), + 'HISTO_SERVICE_MODIFICATION_PK' => + array ( + 'name' => 'HISTO_SERVICE_MODIFICATION_PK', + 'unique' => true, + 'table' => 'HISTO_INTERVENANT_SERVICE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'HSM_INTERVENANT_FK_IDX' => + array ( + 'name' => 'HSM_INTERVENANT_FK_IDX', + 'unique' => false, + 'table' => 'HISTO_INTERVENANT_SERVICE', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + ), + ), + 'HSM_TYPE_VOLUME_HORAIRE_FK_IDX' => + array ( + 'name' => 'HSM_TYPE_VOLUME_HORAIRE_FK_IDX', + 'unique' => false, + 'table' => 'HISTO_INTERVENANT_SERVICE', + 'columns' => + array ( + 0 => 'TYPE_VOLUME_HORAIRE_ID', + ), + ), + 'HSM_UTILISATEUR_FK_IDX' => + array ( + 'name' => 'HSM_UTILISATEUR_FK_IDX', + 'unique' => false, + 'table' => 'HISTO_INTERVENANT_SERVICE', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'IMPORT_TABLES_PK' => + array ( + 'name' => 'IMPORT_TABLES_PK', + 'unique' => true, + 'table' => 'IMPORT_TABLES', + 'columns' => + array ( + 0 => 'TABLE_NAME', + ), + ), + 'INDICATEUR_PK' => + array ( + 'name' => 'INDICATEUR_PK', + 'unique' => true, + 'table' => 'INDICATEUR', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'INDIC_DIFF_DOSSIER_INT_FK' => + array ( + 'name' => 'INDIC_DIFF_DOSSIER_INT_FK', + 'unique' => false, + 'table' => 'INDIC_MODIF_DOSSIER', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + ), + ), + 'INDIC_MODIF_DOSSIER_HCFK_IDX' => + array ( + 'name' => 'INDIC_MODIF_DOSSIER_HCFK_IDX', + 'unique' => false, + 'table' => 'INDIC_MODIF_DOSSIER', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'INDIC_MODIF_DOSSIER_HDFK_IDX' => + array ( + 'name' => 'INDIC_MODIF_DOSSIER_HDFK_IDX', + 'unique' => false, + 'table' => 'INDIC_MODIF_DOSSIER', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'INDIC_MODIF_DOSSIER_HMFK_IDX' => + array ( + 'name' => 'INDIC_MODIF_DOSSIER_HMFK_IDX', + 'unique' => false, + 'table' => 'INDIC_MODIF_DOSSIER', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'INDIC_MODIF_DOSSIER_PK' => + array ( + 'name' => 'INDIC_MODIF_DOSSIER_PK', + 'unique' => true, + 'table' => 'INDIC_MODIF_DOSSIER', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'INTERVENANTS_CIVILITES_FK_IDX' => + array ( + 'name' => 'INTERVENANTS_CIVILITES_FK_IDX', + 'unique' => false, + 'table' => 'INTERVENANT', + 'columns' => + array ( + 0 => 'CIVILITE_ID', + ), + ), + 'INTERVENANT_ANNEE_FK_IDX' => + array ( + 'name' => 'INTERVENANT_ANNEE_FK_IDX', + 'unique' => false, + 'table' => 'INTERVENANT', + 'columns' => + array ( + 0 => 'ANNEE_ID', + ), + ), + 'INTERVENANT_CODE_UN' => + array ( + 'name' => 'INTERVENANT_CODE_UN', + 'unique' => true, + 'table' => 'INTERVENANT', + 'columns' => + array ( + 0 => 'CODE', + 1 => 'ANNEE_ID', + ), + ), + 'INTERVENANT_DEPARTEMENT_FK' => + array ( + 'name' => 'INTERVENANT_DEPARTEMENT_FK', + 'unique' => false, + 'table' => 'INTERVENANT', + 'columns' => + array ( + 0 => 'DEP_NAISSANCE_ID', + ), + ), + 'INTERVENANT_DISCIPLINE_FK_IDX' => + array ( + 'name' => 'INTERVENANT_DISCIPLINE_FK_IDX', + 'unique' => false, + 'table' => 'INTERVENANT', + 'columns' => + array ( + 0 => 'DISCIPLINE_ID', + ), + ), + 'INTERVENANT_GRADE_FK_IDX' => + array ( + 'name' => 'INTERVENANT_GRADE_FK_IDX', + 'unique' => false, + 'table' => 'INTERVENANT', + 'columns' => + array ( + 0 => 'GRADE_ID', + ), + ), + 'INTERVENANT_HCFK_IDX' => + array ( + 'name' => 'INTERVENANT_HCFK_IDX', + 'unique' => false, + 'table' => 'INTERVENANT', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'INTERVENANT_HDFK_IDX' => + array ( + 'name' => 'INTERVENANT_HDFK_IDX', + 'unique' => false, + 'table' => 'INTERVENANT', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'INTERVENANT_HMFK_IDX' => + array ( + 'name' => 'INTERVENANT_HMFK_IDX', + 'unique' => false, + 'table' => 'INTERVENANT', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'INTERVENANT_LISTE_NOIRE_PK' => + array ( + 'name' => 'INTERVENANT_LISTE_NOIRE_PK', + 'unique' => true, + 'table' => 'LISTE_NOIRE', + 'columns' => + array ( + 0 => 'CODE', + ), + ), + 'INTERVENANT_NOM_PATRO_IDX' => + array ( + 'name' => 'INTERVENANT_NOM_PATRO_IDX', + 'unique' => false, + 'table' => 'INTERVENANT', + 'columns' => + array ( + 0 => 'NOM_PATRONYMIQUE', + ), + ), + 'INTERVENANT_NOM_USUEL_IDX' => + array ( + 'name' => 'INTERVENANT_NOM_USUEL_IDX', + 'unique' => false, + 'table' => 'INTERVENANT', + 'columns' => + array ( + 0 => 'NOM_USUEL', + ), + ), + 'INTERVENANT_PAYS_NAISS_FK' => + array ( + 'name' => 'INTERVENANT_PAYS_NAISS_FK', + 'unique' => false, + 'table' => 'INTERVENANT', + 'columns' => + array ( + 0 => 'PAYS_NAISSANCE_ID', + ), + ), + 'INTERVENANT_PAYS_NAT_FK' => + array ( + 'name' => 'INTERVENANT_PAYS_NAT_FK', + 'unique' => false, + 'table' => 'INTERVENANT', + 'columns' => + array ( + 0 => 'PAYS_NATIONALITE_ID', + ), + ), + 'INTERVENANT_PK' => + array ( + 'name' => 'INTERVENANT_PK', + 'unique' => true, + 'table' => 'INTERVENANT', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'INTERVENANT_PRENOM_IDX' => + array ( + 'name' => 'INTERVENANT_PRENOM_IDX', + 'unique' => false, + 'table' => 'INTERVENANT', + 'columns' => + array ( + 0 => 'PRENOM', + ), + ), + 'INTERVENANT_RECHERCHE_IDX' => + array ( + 'name' => 'INTERVENANT_RECHERCHE_IDX', + 'unique' => false, + 'table' => 'INTERVENANT', + 'columns' => + array ( + 0 => 'CRITERE_RECHERCHE', + ), + ), + 'INTERVENANT_SAISIE_PK' => + array ( + 'name' => 'INTERVENANT_SAISIE_PK', + 'unique' => true, + 'table' => 'INTERVENANT_SAISIE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'INTERVENANT_SAISIE__UN' => + array ( + 'name' => 'INTERVENANT_SAISIE__UN', + 'unique' => true, + 'table' => 'INTERVENANT_SAISIE', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + ), + ), + 'INTERVENANT_SOURCE_CODE_IDX' => + array ( + 'name' => 'INTERVENANT_SOURCE_CODE_IDX', + 'unique' => false, + 'table' => 'INTERVENANT', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + ), + ), + 'INTERVENANT_SOURCE_FK_IDX' => + array ( + 'name' => 'INTERVENANT_SOURCE_FK_IDX', + 'unique' => false, + 'table' => 'INTERVENANT', + 'columns' => + array ( + 0 => 'SOURCE_ID', + ), + ), + 'INTERVENANT_SOURCE_UN' => + array ( + 'name' => 'INTERVENANT_SOURCE_UN', + 'unique' => true, + 'table' => 'INTERVENANT', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'ANNEE_ID', + 2 => 'HISTO_DESTRUCTION', + ), + ), + 'INTERVENANT_SOURCE__UN' => + array ( + 'name' => 'INTERVENANT_SOURCE__UN', + 'unique' => true, + 'table' => 'INTERVENANT', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'ANNEE_ID', + ), + ), + 'INTERVENANT_STATUT_FK_IDX' => + array ( + 'name' => 'INTERVENANT_STATUT_FK_IDX', + 'unique' => false, + 'table' => 'INTERVENANT', + 'columns' => + array ( + 0 => 'STATUT_ID', + ), + ), + 'INTERVENANT_STRUCTURE_FK_IDX' => + array ( + 'name' => 'INTERVENANT_STRUCTURE_FK_IDX', + 'unique' => false, + 'table' => 'INTERVENANT', + 'columns' => + array ( + 0 => 'STRUCTURE_ID', + ), + ), + 'INTERVENANT_UTIL_CODE_UN' => + array ( + 'name' => 'INTERVENANT_UTIL_CODE_UN', + 'unique' => true, + 'table' => 'INTERVENANT', + 'columns' => + array ( + 0 => 'UTILISATEUR_CODE', + 1 => 'ANNEE_ID', + 2 => 'STATUT_ID', + ), + ), + 'IS_STATUT_INTERVENANT_FK' => + array ( + 'name' => 'IS_STATUT_INTERVENANT_FK', + 'unique' => false, + 'table' => 'INTERVENANT_SAISIE', + 'columns' => + array ( + 0 => 'STATUT_ID', + ), + ), + 'LIEN_HCFK' => + array ( + 'name' => 'LIEN_HCFK', + 'unique' => false, + 'table' => 'LIEN', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'LIEN_HDFK' => + array ( + 'name' => 'LIEN_HDFK', + 'unique' => false, + 'table' => 'LIEN', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'LIEN_HMFK' => + array ( + 'name' => 'LIEN_HMFK', + 'unique' => false, + 'table' => 'LIEN', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'LIEN_NOEUD_INF_FK' => + array ( + 'name' => 'LIEN_NOEUD_INF_FK', + 'unique' => false, + 'table' => 'LIEN', + 'columns' => + array ( + 0 => 'NOEUD_INF_ID', + ), + ), + 'LIEN_NOEUD_SUP_FK' => + array ( + 'name' => 'LIEN_NOEUD_SUP_FK', + 'unique' => false, + 'table' => 'LIEN', + 'columns' => + array ( + 0 => 'NOEUD_SUP_ID', + ), + ), + 'LIEN_PK' => + array ( + 'name' => 'LIEN_PK', + 'unique' => true, + 'table' => 'LIEN', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'LIEN_SOURCE_FK' => + array ( + 'name' => 'LIEN_SOURCE_FK', + 'unique' => false, + 'table' => 'LIEN', + 'columns' => + array ( + 0 => 'SOURCE_ID', + ), + ), + 'LIEN_SRC_UN' => + array ( + 'name' => 'LIEN_SRC_UN', + 'unique' => true, + 'table' => 'LIEN', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'LIEN_STRUCTURE_FK' => + array ( + 'name' => 'LIEN_STRUCTURE_FK', + 'unique' => false, + 'table' => 'LIEN', + 'columns' => + array ( + 0 => 'STRUCTURE_ID', + ), + ), + 'MEP_CENTRE_COUT_FK_IDX' => + array ( + 'name' => 'MEP_CENTRE_COUT_FK_IDX', + 'unique' => false, + 'table' => 'MISE_EN_PAIEMENT', + 'columns' => + array ( + 0 => 'CENTRE_COUT_ID', + ), + ), + 'MEP_DOMAINE_FONCTIONNEL_FK_IDX' => + array ( + 'name' => 'MEP_DOMAINE_FONCTIONNEL_FK_IDX', + 'unique' => false, + 'table' => 'MISE_EN_PAIEMENT', + 'columns' => + array ( + 0 => 'DOMAINE_FONCTIONNEL_ID', + ), + ), + 'MEP_FR_SERVICE_FK_IDX' => + array ( + 'name' => 'MEP_FR_SERVICE_FK_IDX', + 'unique' => false, + 'table' => 'MISE_EN_PAIEMENT', + 'columns' => + array ( + 0 => 'FORMULE_RES_SERVICE_ID', + ), + ), + 'MEP_FR_SERVICE_REF_FK_IDX' => + array ( + 'name' => 'MEP_FR_SERVICE_REF_FK_IDX', + 'unique' => false, + 'table' => 'MISE_EN_PAIEMENT', + 'columns' => + array ( + 0 => 'FORMULE_RES_SERVICE_REF_ID', + ), + ), + 'MEP_TYPE_HEURES_FK_IDX' => + array ( + 'name' => 'MEP_TYPE_HEURES_FK_IDX', + 'unique' => false, + 'table' => 'MISE_EN_PAIEMENT', + 'columns' => + array ( + 0 => 'TYPE_HEURES_ID', + ), + ), + 'MISE_EN_PAIEMENT_HCFK_IDX' => + array ( + 'name' => 'MISE_EN_PAIEMENT_HCFK_IDX', + 'unique' => false, + 'table' => 'MISE_EN_PAIEMENT', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'MISE_EN_PAIEMENT_HDFK_IDX' => + array ( + 'name' => 'MISE_EN_PAIEMENT_HDFK_IDX', + 'unique' => false, + 'table' => 'MISE_EN_PAIEMENT', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'MISE_EN_PAIEMENT_HMFK_IDX' => + array ( + 'name' => 'MISE_EN_PAIEMENT_HMFK_IDX', + 'unique' => false, + 'table' => 'MISE_EN_PAIEMENT', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'MISE_EN_PAIEMENT_PERIODE_FK' => + array ( + 'name' => 'MISE_EN_PAIEMENT_PERIODE_FK', + 'unique' => false, + 'table' => 'MISE_EN_PAIEMENT', + 'columns' => + array ( + 0 => 'PERIODE_PAIEMENT_ID', + ), + ), + 'MISE_EN_PAIEMENT_PK' => + array ( + 'name' => 'MISE_EN_PAIEMENT_PK', + 'unique' => true, + 'table' => 'MISE_EN_PAIEMENT', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'MISE_EN_PAIEMENT_VALIDATION_FK' => + array ( + 'name' => 'MISE_EN_PAIEMENT_VALIDATION_FK', + 'unique' => false, + 'table' => 'MISE_EN_PAIEMENT', + 'columns' => + array ( + 0 => 'VALIDATION_ID', + ), + ), + 'MODELE_CONTRAT_PK' => + array ( + 'name' => 'MODELE_CONTRAT_PK', + 'unique' => true, + 'table' => 'MODELE_CONTRAT', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'MODIFICATION_SERVICE_DU_HCFK' => + array ( + 'name' => 'MODIFICATION_SERVICE_DU_HCFK', + 'unique' => false, + 'table' => 'MODIFICATION_SERVICE_DU', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'MODIFICATION_SERVICE_DU_HDFK' => + array ( + 'name' => 'MODIFICATION_SERVICE_DU_HDFK', + 'unique' => false, + 'table' => 'MODIFICATION_SERVICE_DU', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'MODIFICATION_SERVICE_DU_HMFK' => + array ( + 'name' => 'MODIFICATION_SERVICE_DU_HMFK', + 'unique' => false, + 'table' => 'MODIFICATION_SERVICE_DU', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'MODIFICATION_SERVICE_DU_PK' => + array ( + 'name' => 'MODIFICATION_SERVICE_DU_PK', + 'unique' => true, + 'table' => 'MODIFICATION_SERVICE_DU', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'MODULATEUR_HCFK_IDX' => + array ( + 'name' => 'MODULATEUR_HCFK_IDX', + 'unique' => false, + 'table' => 'MODULATEUR', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'MODULATEUR_HDFK_IDX' => + array ( + 'name' => 'MODULATEUR_HDFK_IDX', + 'unique' => false, + 'table' => 'MODULATEUR', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'MODULATEUR_HMFK_IDX' => + array ( + 'name' => 'MODULATEUR_HMFK_IDX', + 'unique' => false, + 'table' => 'MODULATEUR', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'MODULATEUR_PK' => + array ( + 'name' => 'MODULATEUR_PK', + 'unique' => true, + 'table' => 'MODULATEUR', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'MODULATEUR_TYPE_MODULATEUR_FK' => + array ( + 'name' => 'MODULATEUR_TYPE_MODULATEUR_FK', + 'unique' => false, + 'table' => 'MODULATEUR', + 'columns' => + array ( + 0 => 'TYPE_MODULATEUR_ID', + ), + ), + 'MODULATEUR__UN' => + array ( + 'name' => 'MODULATEUR__UN', + 'unique' => true, + 'table' => 'MODULATEUR', + 'columns' => + array ( + 0 => 'CODE', + ), + ), + 'MOTIF_MODIFICATION_SERVICE_PK' => + array ( + 'name' => 'MOTIF_MODIFICATION_SERVICE_PK', + 'unique' => true, + 'table' => 'MOTIF_MODIFICATION_SERVICE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'MOTIF_MODIFICATION_SERVIC_HCFK' => + array ( + 'name' => 'MOTIF_MODIFICATION_SERVIC_HCFK', + 'unique' => false, + 'table' => 'MOTIF_MODIFICATION_SERVICE', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'MOTIF_MODIFICATION_SERVIC_HDFK' => + array ( + 'name' => 'MOTIF_MODIFICATION_SERVIC_HDFK', + 'unique' => false, + 'table' => 'MOTIF_MODIFICATION_SERVICE', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'MOTIF_MODIFICATION_SERVIC_HMFK' => + array ( + 'name' => 'MOTIF_MODIFICATION_SERVIC_HMFK', + 'unique' => false, + 'table' => 'MOTIF_MODIFICATION_SERVICE', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'MOTIF_MODIFICATION_SERVIC_UK1' => + array ( + 'name' => 'MOTIF_MODIFICATION_SERVIC_UK1', + 'unique' => true, + 'table' => 'MOTIF_MODIFICATION_SERVICE', + 'columns' => + array ( + 0 => 'CODE', + ), + ), + 'MOTIF_NON_PAIEMENT_HCFK_IDX' => + array ( + 'name' => 'MOTIF_NON_PAIEMENT_HCFK_IDX', + 'unique' => false, + 'table' => 'MOTIF_NON_PAIEMENT', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'MOTIF_NON_PAIEMENT_HDFK_IDX' => + array ( + 'name' => 'MOTIF_NON_PAIEMENT_HDFK_IDX', + 'unique' => false, + 'table' => 'MOTIF_NON_PAIEMENT', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'MOTIF_NON_PAIEMENT_HMFK_IDX' => + array ( + 'name' => 'MOTIF_NON_PAIEMENT_HMFK_IDX', + 'unique' => false, + 'table' => 'MOTIF_NON_PAIEMENT', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'MOTIF_NON_PAIEMENT_PK' => + array ( + 'name' => 'MOTIF_NON_PAIEMENT_PK', + 'unique' => true, + 'table' => 'MOTIF_NON_PAIEMENT', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'MSD_INTERVENANT_FK_IDX' => + array ( + 'name' => 'MSD_INTERVENANT_FK_IDX', + 'unique' => false, + 'table' => 'MODIFICATION_SERVICE_DU', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + ), + ), + 'NOEUD_ANNEE_FK' => + array ( + 'name' => 'NOEUD_ANNEE_FK', + 'unique' => false, + 'table' => 'NOEUD', + 'columns' => + array ( + 0 => 'ANNEE_ID', + ), + ), + 'NOEUD_ELEMENT_PEDAGOGIQUE_FK' => + array ( + 'name' => 'NOEUD_ELEMENT_PEDAGOGIQUE_FK', + 'unique' => false, + 'table' => 'NOEUD', + 'columns' => + array ( + 0 => 'ELEMENT_PEDAGOGIQUE_ID', + ), + ), + 'NOEUD_ETAPE_FK' => + array ( + 'name' => 'NOEUD_ETAPE_FK', + 'unique' => false, + 'table' => 'NOEUD', + 'columns' => + array ( + 0 => 'ETAPE_ID', + ), + ), + 'NOEUD_HCFK' => + array ( + 'name' => 'NOEUD_HCFK', + 'unique' => false, + 'table' => 'NOEUD', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'NOEUD_HDFK' => + array ( + 'name' => 'NOEUD_HDFK', + 'unique' => false, + 'table' => 'NOEUD', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'NOEUD_HMFK' => + array ( + 'name' => 'NOEUD_HMFK', + 'unique' => false, + 'table' => 'NOEUD', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'NOEUD_PK' => + array ( + 'name' => 'NOEUD_PK', + 'unique' => true, + 'table' => 'NOEUD', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'NOEUD_SOURCE_FK' => + array ( + 'name' => 'NOEUD_SOURCE_FK', + 'unique' => false, + 'table' => 'NOEUD', + 'columns' => + array ( + 0 => 'SOURCE_ID', + ), + ), + 'NOEUD_SRC_UN' => + array ( + 'name' => 'NOEUD_SRC_UN', + 'unique' => true, + 'table' => 'NOEUD', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'NOEUD_STRUCTURE_FK' => + array ( + 'name' => 'NOEUD_STRUCTURE_FK', + 'unique' => false, + 'table' => 'NOEUD', + 'columns' => + array ( + 0 => 'STRUCTURE_ID', + ), + ), + 'NOTIFICATION_INDICATEUR__UN' => + array ( + 'name' => 'NOTIFICATION_INDICATEUR__UN', + 'unique' => true, + 'table' => 'NOTIFICATION_INDICATEUR', + 'columns' => + array ( + 0 => 'INDICATEUR_ID', + 1 => 'AFFECTATION_ID', + ), + ), + 'NOTIF_INDICATEUR_AFK_IDX' => + array ( + 'name' => 'NOTIF_INDICATEUR_AFK_IDX', + 'unique' => false, + 'table' => 'NOTIFICATION_INDICATEUR', + 'columns' => + array ( + 0 => 'AFFECTATION_ID', + ), + ), + 'NOTIF_INDICATEUR_IFK_IDX' => + array ( + 'name' => 'NOTIF_INDICATEUR_IFK_IDX', + 'unique' => false, + 'table' => 'NOTIFICATION_INDICATEUR', + 'columns' => + array ( + 0 => 'INDICATEUR_ID', + ), + ), + 'NOTIF_INDICATEUR_PK' => + array ( + 'name' => 'NOTIF_INDICATEUR_PK', + 'unique' => true, + 'table' => 'NOTIFICATION_INDICATEUR', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'PARAMETRE_HCFK_IDX' => + array ( + 'name' => 'PARAMETRE_HCFK_IDX', + 'unique' => false, + 'table' => 'PARAMETRE', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'PARAMETRE_HDFK_IDX' => + array ( + 'name' => 'PARAMETRE_HDFK_IDX', + 'unique' => false, + 'table' => 'PARAMETRE', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'PARAMETRE_HMFK_IDX' => + array ( + 'name' => 'PARAMETRE_HMFK_IDX', + 'unique' => false, + 'table' => 'PARAMETRE', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'PARAMETRE_PK' => + array ( + 'name' => 'PARAMETRE_PK', + 'unique' => true, + 'table' => 'PARAMETRE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'PAYS_HCFK_IDX' => + array ( + 'name' => 'PAYS_HCFK_IDX', + 'unique' => false, + 'table' => 'PAYS', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'PAYS_HDFK_IDX' => + array ( + 'name' => 'PAYS_HDFK_IDX', + 'unique' => false, + 'table' => 'PAYS', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'PAYS_HMFK_IDX' => + array ( + 'name' => 'PAYS_HMFK_IDX', + 'unique' => false, + 'table' => 'PAYS', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'PAYS_PK' => + array ( + 'name' => 'PAYS_PK', + 'unique' => true, + 'table' => 'PAYS', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'PAYS_SOURCE_FK_IDX' => + array ( + 'name' => 'PAYS_SOURCE_FK_IDX', + 'unique' => false, + 'table' => 'PAYS', + 'columns' => + array ( + 0 => 'SOURCE_ID', + ), + ), + 'PAYS_SRC_UN' => + array ( + 'name' => 'PAYS_SRC_UN', + 'unique' => true, + 'table' => 'PAYS', + 'columns' => + array ( + 0 => 'SOURCE_ID', + 1 => 'SOURCE_CODE', + 2 => 'HISTO_DESTRUCTION', + ), + ), + 'PERIMETRE_CODE_UN' => + array ( + 'name' => 'PERIMETRE_CODE_UN', + 'unique' => true, + 'table' => 'PERIMETRE', + 'columns' => + array ( + 0 => 'CODE', + ), + ), + 'PERIMETRE_LIBELLE_UN' => + array ( + 'name' => 'PERIMETRE_LIBELLE_UN', + 'unique' => true, + 'table' => 'PERIMETRE', + 'columns' => + array ( + 0 => 'LIBELLE', + ), + ), + 'PERIMETRE_PK' => + array ( + 'name' => 'PERIMETRE_PK', + 'unique' => true, + 'table' => 'PERIMETRE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'PERIODE_HCFK_IDX' => + array ( + 'name' => 'PERIODE_HCFK_IDX', + 'unique' => false, + 'table' => 'PERIODE', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'PERIODE_HDFK_IDX' => + array ( + 'name' => 'PERIODE_HDFK_IDX', + 'unique' => false, + 'table' => 'PERIODE', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'PERIODE_HMFK_IDX' => + array ( + 'name' => 'PERIODE_HMFK_IDX', + 'unique' => false, + 'table' => 'PERIODE', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'PERIODE_PK' => + array ( + 'name' => 'PERIODE_PK', + 'unique' => true, + 'table' => 'PERIODE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'PERIODE__UN' => + array ( + 'name' => 'PERIODE__UN', + 'unique' => true, + 'table' => 'PERIODE', + 'columns' => + array ( + 0 => 'CODE', + ), + ), + 'PIECE_JOINTE_FICHIER_FFK_IDX' => + array ( + 'name' => 'PIECE_JOINTE_FICHIER_FFK_IDX', + 'unique' => false, + 'table' => 'PIECE_JOINTE_FICHIER', + 'columns' => + array ( + 0 => 'FICHIER_ID', + ), + ), + 'PIECE_JOINTE_FICHIER_PJFK_IDX' => + array ( + 'name' => 'PIECE_JOINTE_FICHIER_PJFK_IDX', + 'unique' => false, + 'table' => 'PIECE_JOINTE_FICHIER', + 'columns' => + array ( + 0 => 'PIECE_JOINTE_ID', + ), + ), + 'PIECE_JOINTE_FICHIER_PK' => + array ( + 'name' => 'PIECE_JOINTE_FICHIER_PK', + 'unique' => true, + 'table' => 'PIECE_JOINTE_FICHIER', + 'columns' => + array ( + 0 => 'PIECE_JOINTE_ID', + 1 => 'FICHIER_ID', + ), + ), + 'PIECE_JOINTE_HCFK_IDX' => + array ( + 'name' => 'PIECE_JOINTE_HCFK_IDX', + 'unique' => false, + 'table' => 'PIECE_JOINTE', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'PIECE_JOINTE_HDFK_IDX' => + array ( + 'name' => 'PIECE_JOINTE_HDFK_IDX', + 'unique' => false, + 'table' => 'PIECE_JOINTE', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'PIECE_JOINTE_HMFK_IDX' => + array ( + 'name' => 'PIECE_JOINTE_HMFK_IDX', + 'unique' => false, + 'table' => 'PIECE_JOINTE', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'PIECE_JOINTE_INTERVENANT_FK' => + array ( + 'name' => 'PIECE_JOINTE_INTERVENANT_FK', + 'unique' => false, + 'table' => 'PIECE_JOINTE', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + ), + ), + 'PIECE_JOINTE_PK' => + array ( + 'name' => 'PIECE_JOINTE_PK', + 'unique' => true, + 'table' => 'PIECE_JOINTE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'PIECE_JOINTE_VFK_IDX' => + array ( + 'name' => 'PIECE_JOINTE_VFK_IDX', + 'unique' => false, + 'table' => 'PIECE_JOINTE', + 'columns' => + array ( + 0 => 'VALIDATION_ID', + ), + ), + 'PIECE_JOINTE__UN' => + array ( + 'name' => 'PIECE_JOINTE__UN', + 'unique' => true, + 'table' => 'PIECE_JOINTE', + 'columns' => + array ( + 0 => 'TYPE_PIECE_JOINTE_ID', + 1 => 'INTERVENANT_ID', + 2 => 'HISTO_DESTRUCTION', + ), + ), + 'PJ_TYPE_PIECE_JOINTE_FK_IDX' => + array ( + 'name' => 'PJ_TYPE_PIECE_JOINTE_FK_IDX', + 'unique' => false, + 'table' => 'PIECE_JOINTE', + 'columns' => + array ( + 0 => 'TYPE_PIECE_JOINTE_ID', + ), + ), + 'PLAFOND_APPLICATION_PK' => + array ( + 'name' => 'PLAFOND_APPLICATION_PK', + 'unique' => true, + 'table' => 'PLAFOND_APPLICATION', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'PLAFOND_ETAT_PK' => + array ( + 'name' => 'PLAFOND_ETAT_PK', + 'unique' => true, + 'table' => 'PLAFOND_ETAT', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'PLAFOND_PK' => + array ( + 'name' => 'PLAFOND_PK', + 'unique' => true, + 'table' => 'PLAFOND', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'PRIVILEGE_CATEGORIE_FK_IDX' => + array ( + 'name' => 'PRIVILEGE_CATEGORIE_FK_IDX', + 'unique' => false, + 'table' => 'PRIVILEGE', + 'columns' => + array ( + 0 => 'CATEGORIE_ID', + ), + ), + 'PRIVILEGE_PK' => + array ( + 'name' => 'PRIVILEGE_PK', + 'unique' => true, + 'table' => 'PRIVILEGE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'PRIVILEGE__UN' => + array ( + 'name' => 'PRIVILEGE__UN', + 'unique' => true, + 'table' => 'PRIVILEGE', + 'columns' => + array ( + 0 => 'CATEGORIE_ID', + 1 => 'CODE', + ), + ), + 'REGLE_STRUCTURE_VALIDATION_PK' => + array ( + 'name' => 'REGLE_STRUCTURE_VALIDATION_PK', + 'unique' => true, + 'table' => 'REGLE_STRUCTURE_VALIDATION', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'REGLE_STRUCTURE_VALIDATION__UN' => + array ( + 'name' => 'REGLE_STRUCTURE_VALIDATION__UN', + 'unique' => true, + 'table' => 'REGLE_STRUCTURE_VALIDATION', + 'columns' => + array ( + 0 => 'TYPE_VOLUME_HORAIRE_ID', + 1 => 'TYPE_INTERVENANT_ID', + ), + ), + 'ROLE_CODE_UN' => + array ( + 'name' => 'ROLE_CODE_UN', + 'unique' => true, + 'table' => 'ROLE', + 'columns' => + array ( + 0 => 'CODE', + ), + ), + 'ROLE_HCFK_IDX' => + array ( + 'name' => 'ROLE_HCFK_IDX', + 'unique' => false, + 'table' => 'ROLE', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'ROLE_HDFK_IDX' => + array ( + 'name' => 'ROLE_HDFK_IDX', + 'unique' => false, + 'table' => 'ROLE', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'ROLE_HMFK_IDX' => + array ( + 'name' => 'ROLE_HMFK_IDX', + 'unique' => false, + 'table' => 'ROLE', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'ROLE_PERIMETRE_FK_IDX' => + array ( + 'name' => 'ROLE_PERIMETRE_FK_IDX', + 'unique' => false, + 'table' => 'ROLE', + 'columns' => + array ( + 0 => 'PERIMETRE_ID', + ), + ), + 'ROLE_PK' => + array ( + 'name' => 'ROLE_PK', + 'unique' => true, + 'table' => 'ROLE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'ROLE_PRIVILEGE_PK' => + array ( + 'name' => 'ROLE_PRIVILEGE_PK', + 'unique' => true, + 'table' => 'ROLE_PRIVILEGE', + 'columns' => + array ( + 0 => 'PRIVILEGE_ID', + 1 => 'ROLE_ID', + ), + ), + 'ROLE_PRIVILEGE_PRIVILEGE_FK' => + array ( + 'name' => 'ROLE_PRIVILEGE_PRIVILEGE_FK', + 'unique' => false, + 'table' => 'ROLE_PRIVILEGE', + 'columns' => + array ( + 0 => 'PRIVILEGE_ID', + ), + ), + 'ROLE_PRIVILEGE_ROLE_FK_IDX' => + array ( + 'name' => 'ROLE_PRIVILEGE_ROLE_FK_IDX', + 'unique' => false, + 'table' => 'ROLE_PRIVILEGE', + 'columns' => + array ( + 0 => 'ROLE_ID', + ), + ), + 'RSV_TYPE_INTERVENANT_FK_IDX' => + array ( + 'name' => 'RSV_TYPE_INTERVENANT_FK_IDX', + 'unique' => false, + 'table' => 'REGLE_STRUCTURE_VALIDATION', + 'columns' => + array ( + 0 => 'TYPE_INTERVENANT_ID', + ), + ), + 'RSV_TYPE_VOLUME_HORAIRE_FK_IDX' => + array ( + 'name' => 'RSV_TYPE_VOLUME_HORAIRE_FK_IDX', + 'unique' => false, + 'table' => 'REGLE_STRUCTURE_VALIDATION', + 'columns' => + array ( + 0 => 'TYPE_VOLUME_HORAIRE_ID', + ), + ), + 'SCENARIO_HCFK' => + array ( + 'name' => 'SCENARIO_HCFK', + 'unique' => false, + 'table' => 'SCENARIO', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'SCENARIO_HDFK' => + array ( + 'name' => 'SCENARIO_HDFK', + 'unique' => false, + 'table' => 'SCENARIO', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'SCENARIO_HMFK' => + array ( + 'name' => 'SCENARIO_HMFK', + 'unique' => false, + 'table' => 'SCENARIO', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'SCENARIO_LIEN_HCFK' => + array ( + 'name' => 'SCENARIO_LIEN_HCFK', + 'unique' => false, + 'table' => 'SCENARIO_LIEN', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'SCENARIO_LIEN_HDFK' => + array ( + 'name' => 'SCENARIO_LIEN_HDFK', + 'unique' => false, + 'table' => 'SCENARIO_LIEN', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'SCENARIO_LIEN_HMFK' => + array ( + 'name' => 'SCENARIO_LIEN_HMFK', + 'unique' => false, + 'table' => 'SCENARIO_LIEN', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'SCENARIO_LIEN_LIEN_FK' => + array ( + 'name' => 'SCENARIO_LIEN_LIEN_FK', + 'unique' => false, + 'table' => 'SCENARIO_LIEN', + 'columns' => + array ( + 0 => 'LIEN_ID', + ), + ), + 'SCENARIO_LIEN_PK' => + array ( + 'name' => 'SCENARIO_LIEN_PK', + 'unique' => true, + 'table' => 'SCENARIO_LIEN', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'SCENARIO_LIEN_SCENARIO_FK' => + array ( + 'name' => 'SCENARIO_LIEN_SCENARIO_FK', + 'unique' => false, + 'table' => 'SCENARIO_LIEN', + 'columns' => + array ( + 0 => 'SCENARIO_ID', + ), + ), + 'SCENARIO_LIEN_SOURCE_FK' => + array ( + 'name' => 'SCENARIO_LIEN_SOURCE_FK', + 'unique' => false, + 'table' => 'SCENARIO_LIEN', + 'columns' => + array ( + 0 => 'SOURCE_ID', + ), + ), + 'SCENARIO_LIEN_SRC_UN' => + array ( + 'name' => 'SCENARIO_LIEN_SRC_UN', + 'unique' => true, + 'table' => 'SCENARIO_LIEN', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'SCENARIO_LIEN__UN' => + array ( + 'name' => 'SCENARIO_LIEN__UN', + 'unique' => true, + 'table' => 'SCENARIO_LIEN', + 'columns' => + array ( + 0 => 'SCENARIO_ID', + 1 => 'LIEN_ID', + 2 => 'HISTO_DESTRUCTION', + ), + ), + 'SCENARIO_NOEUD_EFFECTIF_PK' => + array ( + 'name' => 'SCENARIO_NOEUD_EFFECTIF_PK', + 'unique' => true, + 'table' => 'SCENARIO_NOEUD_EFFECTIF', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'SCENARIO_NOEUD_HCFK' => + array ( + 'name' => 'SCENARIO_NOEUD_HCFK', + 'unique' => false, + 'table' => 'SCENARIO_NOEUD', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'SCENARIO_NOEUD_HDFK' => + array ( + 'name' => 'SCENARIO_NOEUD_HDFK', + 'unique' => false, + 'table' => 'SCENARIO_NOEUD', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'SCENARIO_NOEUD_HMFK' => + array ( + 'name' => 'SCENARIO_NOEUD_HMFK', + 'unique' => false, + 'table' => 'SCENARIO_NOEUD', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'SCENARIO_NOEUD_NOEUD_FK' => + array ( + 'name' => 'SCENARIO_NOEUD_NOEUD_FK', + 'unique' => false, + 'table' => 'SCENARIO_NOEUD', + 'columns' => + array ( + 0 => 'NOEUD_ID', + ), + ), + 'SCENARIO_NOEUD_PK' => + array ( + 'name' => 'SCENARIO_NOEUD_PK', + 'unique' => true, + 'table' => 'SCENARIO_NOEUD', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'SCENARIO_NOEUD_SCENARIO_FK' => + array ( + 'name' => 'SCENARIO_NOEUD_SCENARIO_FK', + 'unique' => false, + 'table' => 'SCENARIO_NOEUD', + 'columns' => + array ( + 0 => 'SCENARIO_ID', + ), + ), + 'SCENARIO_NOEUD_SEUIL_PK' => + array ( + 'name' => 'SCENARIO_NOEUD_SEUIL_PK', + 'unique' => true, + 'table' => 'SCENARIO_NOEUD_SEUIL', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'SCENARIO_NOEUD_SOURCE_FK' => + array ( + 'name' => 'SCENARIO_NOEUD_SOURCE_FK', + 'unique' => false, + 'table' => 'SCENARIO_NOEUD', + 'columns' => + array ( + 0 => 'SOURCE_ID', + ), + ), + 'SCENARIO_NOEUD_SRC_UN' => + array ( + 'name' => 'SCENARIO_NOEUD_SRC_UN', + 'unique' => true, + 'table' => 'SCENARIO_NOEUD', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'SCENARIO_NOEUD__UN' => + array ( + 'name' => 'SCENARIO_NOEUD__UN', + 'unique' => true, + 'table' => 'SCENARIO_NOEUD', + 'columns' => + array ( + 0 => 'SCENARIO_ID', + 1 => 'NOEUD_ID', + 2 => 'HISTO_DESTRUCTION', + ), + ), + 'SCENARIO_PK' => + array ( + 'name' => 'SCENARIO_PK', + 'unique' => true, + 'table' => 'SCENARIO', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'SCENARIO_STRUCTURE_FK' => + array ( + 'name' => 'SCENARIO_STRUCTURE_FK', + 'unique' => false, + 'table' => 'SCENARIO', + 'columns' => + array ( + 0 => 'STRUCTURE_ID', + ), + ), + 'SERVICE_ELEMENT_PEDAGOGIQUE_FK' => + array ( + 'name' => 'SERVICE_ELEMENT_PEDAGOGIQUE_FK', + 'unique' => false, + 'table' => 'SERVICE', + 'columns' => + array ( + 0 => 'ELEMENT_PEDAGOGIQUE_ID', + ), + ), + 'SERVICE_ETABLISSEMENT_FK_IDX' => + array ( + 'name' => 'SERVICE_ETABLISSEMENT_FK_IDX', + 'unique' => false, + 'table' => 'SERVICE', + 'columns' => + array ( + 0 => 'ETABLISSEMENT_ID', + ), + ), + 'SERVICE_HCFK_IDX' => + array ( + 'name' => 'SERVICE_HCFK_IDX', + 'unique' => false, + 'table' => 'SERVICE', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'SERVICE_HDFK_IDX' => + array ( + 'name' => 'SERVICE_HDFK_IDX', + 'unique' => false, + 'table' => 'SERVICE', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'SERVICE_HMFK_IDX' => + array ( + 'name' => 'SERVICE_HMFK_IDX', + 'unique' => false, + 'table' => 'SERVICE', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'SERVICE_INTERVENANT_FK_IDX' => + array ( + 'name' => 'SERVICE_INTERVENANT_FK_IDX', + 'unique' => false, + 'table' => 'SERVICE', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + ), + ), + 'SERVICE_PK' => + array ( + 'name' => 'SERVICE_PK', + 'unique' => true, + 'table' => 'SERVICE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'SERVICE_REFERENTIEL_HCFK_IDX' => + array ( + 'name' => 'SERVICE_REFERENTIEL_HCFK_IDX', + 'unique' => false, + 'table' => 'SERVICE_REFERENTIEL', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'SERVICE_REFERENTIEL_HDFK_IDX' => + array ( + 'name' => 'SERVICE_REFERENTIEL_HDFK_IDX', + 'unique' => false, + 'table' => 'SERVICE_REFERENTIEL', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'SERVICE_REFERENTIEL_HMFK_IDX' => + array ( + 'name' => 'SERVICE_REFERENTIEL_HMFK_IDX', + 'unique' => false, + 'table' => 'SERVICE_REFERENTIEL', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'SERVICE_REFERENTIEL_PK' => + array ( + 'name' => 'SERVICE_REFERENTIEL_PK', + 'unique' => true, + 'table' => 'SERVICE_REFERENTIEL', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'SERVICE_REFERENTIEL_SOURCE_UN' => + array ( + 'name' => 'SERVICE_REFERENTIEL_SOURCE_UN', + 'unique' => true, + 'table' => 'SERVICE_REFERENTIEL', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'SERVICE_SOURCE_UN' => + array ( + 'name' => 'SERVICE_SOURCE_UN', + 'unique' => true, + 'table' => 'SERVICE', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'SERVICE__UN' => + array ( + 'name' => 'SERVICE__UN', + 'unique' => true, + 'table' => 'SERVICE', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + 1 => 'ELEMENT_PEDAGOGIQUE_ID', + 2 => 'ETABLISSEMENT_ID', + 3 => 'HISTO_DESTRUCTION', + ), + ), + 'SEUIL_CHARGE_ANNEE_FK' => + array ( + 'name' => 'SEUIL_CHARGE_ANNEE_FK', + 'unique' => false, + 'table' => 'SEUIL_CHARGE', + 'columns' => + array ( + 0 => 'ANNEE_ID', + ), + ), + 'SEUIL_CHARGE_PK' => + array ( + 'name' => 'SEUIL_CHARGE_PK', + 'unique' => true, + 'table' => 'SEUIL_CHARGE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'SEUIL_CH_GT_FORMATION_FK' => + array ( + 'name' => 'SEUIL_CH_GT_FORMATION_FK', + 'unique' => false, + 'table' => 'SEUIL_CHARGE', + 'columns' => + array ( + 0 => 'GROUPE_TYPE_FORMATION_ID', + ), + ), + 'SEUIL_CH_SCENARIO_FK' => + array ( + 'name' => 'SEUIL_CH_SCENARIO_FK', + 'unique' => false, + 'table' => 'SEUIL_CHARGE', + 'columns' => + array ( + 0 => 'SCENARIO_ID', + ), + ), + 'SEUIL_CH_STRUCTURE_FK' => + array ( + 'name' => 'SEUIL_CH_STRUCTURE_FK', + 'unique' => false, + 'table' => 'SEUIL_CHARGE', + 'columns' => + array ( + 0 => 'STRUCTURE_ID', + ), + ), + 'SEUIL_CH_TYPE_INTERVENTION_FK' => + array ( + 'name' => 'SEUIL_CH_TYPE_INTERVENTION_FK', + 'unique' => false, + 'table' => 'SEUIL_CHARGE', + 'columns' => + array ( + 0 => 'TYPE_INTERVENTION_ID', + ), + ), + 'SEUIL_CH_UTILISATEUR_HCFK' => + array ( + 'name' => 'SEUIL_CH_UTILISATEUR_HCFK', + 'unique' => false, + 'table' => 'SEUIL_CHARGE', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'SEUIL_CH_UTILISATEUR_HDFK' => + array ( + 'name' => 'SEUIL_CH_UTILISATEUR_HDFK', + 'unique' => false, + 'table' => 'SEUIL_CHARGE', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'SEUIL_CH_UTILISATEUR_HMFK' => + array ( + 'name' => 'SEUIL_CH_UTILISATEUR_HMFK', + 'unique' => false, + 'table' => 'SEUIL_CHARGE', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'SNE_ETAPE_FK' => + array ( + 'name' => 'SNE_ETAPE_FK', + 'unique' => false, + 'table' => 'SCENARIO_NOEUD_EFFECTIF', + 'columns' => + array ( + 0 => 'ETAPE_ID', + ), + ), + 'SNE_SCENARIO_NOEUD_FK' => + array ( + 'name' => 'SNE_SCENARIO_NOEUD_FK', + 'unique' => false, + 'table' => 'SCENARIO_NOEUD_EFFECTIF', + 'columns' => + array ( + 0 => 'SCENARIO_NOEUD_ID', + ), + ), + 'SNE_TYPE_HEURES_FK' => + array ( + 'name' => 'SNE_TYPE_HEURES_FK', + 'unique' => false, + 'table' => 'SCENARIO_NOEUD_EFFECTIF', + 'columns' => + array ( + 0 => 'TYPE_HEURES_ID', + ), + ), + 'SNS_SCENARIO_NOEUD_FK' => + array ( + 'name' => 'SNS_SCENARIO_NOEUD_FK', + 'unique' => false, + 'table' => 'SCENARIO_NOEUD_SEUIL', + 'columns' => + array ( + 0 => 'SCENARIO_NOEUD_ID', + ), + ), + 'SNS_TYPE_INTERVENTION_FK' => + array ( + 'name' => 'SNS_TYPE_INTERVENTION_FK', + 'unique' => false, + 'table' => 'SCENARIO_NOEUD_SEUIL', + 'columns' => + array ( + 0 => 'TYPE_INTERVENTION_ID', + ), + ), + 'SOURCE_CODE_UN' => + array ( + 'name' => 'SOURCE_CODE_UN', + 'unique' => true, + 'table' => 'SOURCE', + 'columns' => + array ( + 0 => 'CODE', + ), + ), + 'SOURCE_PK' => + array ( + 'name' => 'SOURCE_PK', + 'unique' => true, + 'table' => 'SOURCE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'SRFR_FK_IDX' => + array ( + 'name' => 'SRFR_FK_IDX', + 'unique' => false, + 'table' => 'SERVICE_REFERENTIEL', + 'columns' => + array ( + 0 => 'FONCTION_ID', + ), + ), + 'SR_INTERVENANT_FK_IDX' => + array ( + 'name' => 'SR_INTERVENANT_FK_IDX', + 'unique' => false, + 'table' => 'SERVICE_REFERENTIEL', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + ), + ), + 'SR_STRUCTURE_FK_IDX' => + array ( + 'name' => 'SR_STRUCTURE_FK_IDX', + 'unique' => false, + 'table' => 'SERVICE_REFERENTIEL', + 'columns' => + array ( + 0 => 'STRUCTURE_ID', + ), + ), + 'STATUT_INTERVENANT_HCFK_IDX' => + array ( + 'name' => 'STATUT_INTERVENANT_HCFK_IDX', + 'unique' => false, + 'table' => 'STATUT_INTERVENANT', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'STATUT_INTERVENANT_HDFK_IDX' => + array ( + 'name' => 'STATUT_INTERVENANT_HDFK_IDX', + 'unique' => false, + 'table' => 'STATUT_INTERVENANT', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'STATUT_INTERVENANT_HMFK_IDX' => + array ( + 'name' => 'STATUT_INTERVENANT_HMFK_IDX', + 'unique' => false, + 'table' => 'STATUT_INTERVENANT', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'STATUT_INTERVENANT_ODRE_UN' => + array ( + 'name' => 'STATUT_INTERVENANT_ODRE_UN', + 'unique' => true, + 'table' => 'STATUT_INTERVENANT', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTION', + 1 => 'ORDRE', + ), + ), + 'STATUT_INTERVENANT_PK' => + array ( + 'name' => 'STATUT_INTERVENANT_PK', + 'unique' => true, + 'table' => 'STATUT_INTERVENANT', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'STATUT_INTERVENANT_SOURCE_FK' => + array ( + 'name' => 'STATUT_INTERVENANT_SOURCE_FK', + 'unique' => false, + 'table' => 'STATUT_INTERVENANT', + 'columns' => + array ( + 0 => 'SOURCE_ID', + ), + ), + 'STATUT_INTERVENANT_TYPE_FK_IDX' => + array ( + 'name' => 'STATUT_INTERVENANT_TYPE_FK_IDX', + 'unique' => false, + 'table' => 'STATUT_INTERVENANT', + 'columns' => + array ( + 0 => 'TYPE_INTERVENANT_ID', + ), + ), + 'STATUT_INTERVENANT__UN' => + array ( + 'name' => 'STATUT_INTERVENANT__UN', + 'unique' => true, + 'table' => 'STATUT_INTERVENANT', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + ), + ), + 'STATUT_PRIVILEGE_PK' => + array ( + 'name' => 'STATUT_PRIVILEGE_PK', + 'unique' => true, + 'table' => 'STATUT_PRIVILEGE', + 'columns' => + array ( + 0 => 'STATUT_ID', + 1 => 'PRIVILEGE_ID', + ), + ), + 'STAT_PRIV_PRIVILEGE_FK_IDX' => + array ( + 'name' => 'STAT_PRIV_PRIVILEGE_FK_IDX', + 'unique' => false, + 'table' => 'STATUT_PRIVILEGE', + 'columns' => + array ( + 0 => 'PRIVILEGE_ID', + ), + ), + 'STAT_PRIV_STATUT_FK_IDX' => + array ( + 'name' => 'STAT_PRIV_STATUT_FK_IDX', + 'unique' => false, + 'table' => 'STATUT_PRIVILEGE', + 'columns' => + array ( + 0 => 'STATUT_ID', + ), + ), + 'STRUCTURE_CODE_UN' => + array ( + 'name' => 'STRUCTURE_CODE_UN', + 'unique' => true, + 'table' => 'STRUCTURE', + 'columns' => + array ( + 0 => 'CODE', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'STRUCTURE_HCFK_IDX' => + array ( + 'name' => 'STRUCTURE_HCFK_IDX', + 'unique' => false, + 'table' => 'STRUCTURE', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'STRUCTURE_HDFK_IDX' => + array ( + 'name' => 'STRUCTURE_HDFK_IDX', + 'unique' => false, + 'table' => 'STRUCTURE', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'STRUCTURE_HMFK_IDX' => + array ( + 'name' => 'STRUCTURE_HMFK_IDX', + 'unique' => false, + 'table' => 'STRUCTURE', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'STRUCTURE_PK' => + array ( + 'name' => 'STRUCTURE_PK', + 'unique' => true, + 'table' => 'STRUCTURE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'STRUCTURE_SOURCE_CODE_UN' => + array ( + 'name' => 'STRUCTURE_SOURCE_CODE_UN', + 'unique' => true, + 'table' => 'STRUCTURE', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'SYNC_LOG_PK' => + array ( + 'name' => 'SYNC_LOG_PK', + 'unique' => true, + 'table' => 'SYNC_LOG', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TAS_STATUT_INTERVENANT_FK_IDX' => + array ( + 'name' => 'TAS_STATUT_INTERVENANT_FK_IDX', + 'unique' => false, + 'table' => 'TYPE_AGREMENT_STATUT', + 'columns' => + array ( + 0 => 'STATUT_INTERVENANT_ID', + ), + ), + 'TAS_TYPE_AGREMENT_FK_IDX' => + array ( + 'name' => 'TAS_TYPE_AGREMENT_FK_IDX', + 'unique' => false, + 'table' => 'TYPE_AGREMENT_STATUT', + 'columns' => + array ( + 0 => 'TYPE_AGREMENT_ID', + ), + ), + 'TAUX_HORAIRE_HETD_HCFK_IDX' => + array ( + 'name' => 'TAUX_HORAIRE_HETD_HCFK_IDX', + 'unique' => false, + 'table' => 'TAUX_HORAIRE_HETD', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'TAUX_HORAIRE_HETD_HDFK_IDX' => + array ( + 'name' => 'TAUX_HORAIRE_HETD_HDFK_IDX', + 'unique' => false, + 'table' => 'TAUX_HORAIRE_HETD', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'TAUX_HORAIRE_HETD_HMFK_IDX' => + array ( + 'name' => 'TAUX_HORAIRE_HETD_HMFK_IDX', + 'unique' => false, + 'table' => 'TAUX_HORAIRE_HETD', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'TAUX_HORAIRE_HETD_PK' => + array ( + 'name' => 'TAUX_HORAIRE_HETD_PK', + 'unique' => true, + 'table' => 'TAUX_HORAIRE_HETD', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_AGREMENT_PK_IDX' => + array ( + 'name' => 'TBL_AGREMENT_PK_IDX', + 'unique' => true, + 'table' => 'TBL_AGREMENT', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_AGREMENT__UN_IDX' => + array ( + 'name' => 'TBL_AGREMENT__UN_IDX', + 'unique' => true, + 'table' => 'TBL_AGREMENT', + 'columns' => + array ( + 0 => 'TYPE_AGREMENT_ID', + 1 => 'INTERVENANT_ID', + 2 => 'STRUCTURE_ID', + 3 => 'TO_DELETE', + ), + ), + 'TBL_AGR_AGREMENT_FK_IDX' => + array ( + 'name' => 'TBL_AGR_AGREMENT_FK_IDX', + 'unique' => false, + 'table' => 'TBL_AGREMENT', + 'columns' => + array ( + 0 => 'AGREMENT_ID', + ), + ), + 'TBL_AGR_ANNEE_FK_IDX' => + array ( + 'name' => 'TBL_AGR_ANNEE_FK_IDX', + 'unique' => false, + 'table' => 'TBL_AGREMENT', + 'columns' => + array ( + 0 => 'ANNEE_ID', + ), + ), + 'TBL_AGR_INTERVENANT_FK_IDX' => + array ( + 'name' => 'TBL_AGR_INTERVENANT_FK_IDX', + 'unique' => false, + 'table' => 'TBL_AGREMENT', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + ), + ), + 'TBL_AGR_STRUCTURE_FK_IDX' => + array ( + 'name' => 'TBL_AGR_STRUCTURE_FK_IDX', + 'unique' => false, + 'table' => 'TBL_AGREMENT', + 'columns' => + array ( + 0 => 'STRUCTURE_ID', + ), + ), + 'TBL_AGR_TYPE_AGREMENT_FK_IDX' => + array ( + 'name' => 'TBL_AGR_TYPE_AGREMENT_FK_IDX', + 'unique' => false, + 'table' => 'TBL_AGREMENT', + 'columns' => + array ( + 0 => 'TYPE_AGREMENT_ID', + ), + ), + 'TBL_CHARGENS_PK' => + array ( + 'name' => 'TBL_CHARGENS_PK', + 'unique' => true, + 'table' => 'TBL_CHARGENS', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_CHARGENS_SEUILS_DEF_PK' => + array ( + 'name' => 'TBL_CHARGENS_SEUILS_DEF_PK', + 'unique' => true, + 'table' => 'TBL_CHARGENS_SEUILS_DEF', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_CHARGENS_SEUILS_DEF__UN' => + array ( + 'name' => 'TBL_CHARGENS_SEUILS_DEF__UN', + 'unique' => true, + 'table' => 'TBL_CHARGENS_SEUILS_DEF', + 'columns' => + array ( + 0 => 'SCENARIO_ID', + 1 => 'TYPE_INTERVENTION_ID', + 2 => 'STRUCTURE_ID', + 3 => 'GROUPE_TYPE_FORMATION_ID', + 4 => 'ANNEE_ID', + ), + ), + 'TBL_CHARGENS__UN' => + array ( + 'name' => 'TBL_CHARGENS__UN', + 'unique' => true, + 'table' => 'TBL_CHARGENS', + 'columns' => + array ( + 0 => 'ANNEE_ID', + 1 => 'NOEUD_ID', + 2 => 'SCENARIO_ID', + 3 => 'TYPE_HEURES_ID', + 4 => 'TYPE_INTERVENTION_ID', + 5 => 'ELEMENT_PEDAGOGIQUE_ID', + 6 => 'ETAPE_ID', + 7 => 'ETAPE_ENS_ID', + 8 => 'STRUCTURE_ID', + 9 => 'GROUPE_TYPE_FORMATION_ID', + ), + ), + 'TBL_CLOTURE_REALISE_ANNEE_FK' => + array ( + 'name' => 'TBL_CLOTURE_REALISE_ANNEE_FK', + 'unique' => false, + 'table' => 'TBL_CLOTURE_REALISE', + 'columns' => + array ( + 0 => 'ANNEE_ID', + ), + ), + 'TBL_CLOTURE_REALISE_PK_IDX' => + array ( + 'name' => 'TBL_CLOTURE_REALISE_PK_IDX', + 'unique' => true, + 'table' => 'TBL_CLOTURE_REALISE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_CLOTURE_REALISE__UN_IDX' => + array ( + 'name' => 'TBL_CLOTURE_REALISE__UN_IDX', + 'unique' => true, + 'table' => 'TBL_CLOTURE_REALISE', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + 1 => 'TO_DELETE', + ), + ), + 'TBL_CONTRAT_ANNEE_FK_IDX' => + array ( + 'name' => 'TBL_CONTRAT_ANNEE_FK_IDX', + 'unique' => false, + 'table' => 'TBL_CONTRAT', + 'columns' => + array ( + 0 => 'ANNEE_ID', + ), + ), + 'TBL_CONTRAT_INTERVENANT_FK_IDX' => + array ( + 'name' => 'TBL_CONTRAT_INTERVENANT_FK_IDX', + 'unique' => false, + 'table' => 'TBL_CONTRAT', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + ), + ), + 'TBL_CONTRAT_PK_IDX' => + array ( + 'name' => 'TBL_CONTRAT_PK_IDX', + 'unique' => true, + 'table' => 'TBL_CONTRAT', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_CONTRAT_STRUCTURE_FK_IDX' => + array ( + 'name' => 'TBL_CONTRAT_STRUCTURE_FK_IDX', + 'unique' => false, + 'table' => 'TBL_CONTRAT', + 'columns' => + array ( + 0 => 'STRUCTURE_ID', + ), + ), + 'TBL_CONTRAT__UN_IDX' => + array ( + 'name' => 'TBL_CONTRAT__UN_IDX', + 'unique' => true, + 'table' => 'TBL_CONTRAT', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + 1 => 'STRUCTURE_ID', + 2 => 'TO_DELETE', + ), + ), + 'TBL_CSD_ANNEE_FK' => + array ( + 'name' => 'TBL_CSD_ANNEE_FK', + 'unique' => false, + 'table' => 'TBL_CHARGENS_SEUILS_DEF', + 'columns' => + array ( + 0 => 'ANNEE_ID', + ), + ), + 'TBL_CSD_GTF_FK' => + array ( + 'name' => 'TBL_CSD_GTF_FK', + 'unique' => false, + 'table' => 'TBL_CHARGENS_SEUILS_DEF', + 'columns' => + array ( + 0 => 'GROUPE_TYPE_FORMATION_ID', + ), + ), + 'TBL_CSD_SCENARIO_FK' => + array ( + 'name' => 'TBL_CSD_SCENARIO_FK', + 'unique' => false, + 'table' => 'TBL_CHARGENS_SEUILS_DEF', + 'columns' => + array ( + 0 => 'SCENARIO_ID', + ), + ), + 'TBL_CSD_STRUCTURE_FK' => + array ( + 'name' => 'TBL_CSD_STRUCTURE_FK', + 'unique' => false, + 'table' => 'TBL_CHARGENS_SEUILS_DEF', + 'columns' => + array ( + 0 => 'STRUCTURE_ID', + ), + ), + 'TBL_CSD_TYPE_INTERVENTION_FK' => + array ( + 'name' => 'TBL_CSD_TYPE_INTERVENTION_FK', + 'unique' => false, + 'table' => 'TBL_CHARGENS_SEUILS_DEF', + 'columns' => + array ( + 0 => 'TYPE_INTERVENTION_ID', + ), + ), + 'TBL_DEMS_TBL_FK' => + array ( + 'name' => 'TBL_DEMS_TBL_FK', + 'unique' => false, + 'table' => 'TBL_DEMS', + 'columns' => + array ( + 0 => 'TBL_NAME', + ), + ), + 'TBL_DMEP_LIQUIDATION_PK_IDX' => + array ( + 'name' => 'TBL_DMEP_LIQUIDATION_PK_IDX', + 'unique' => true, + 'table' => 'TBL_DMEP_LIQUIDATION', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_DMEP_LIQUIDATION__UN_IDX' => + array ( + 'name' => 'TBL_DMEP_LIQUIDATION__UN_IDX', + 'unique' => true, + 'table' => 'TBL_DMEP_LIQUIDATION', + 'columns' => + array ( + 0 => 'ANNEE_ID', + 1 => 'TYPE_RESSOURCE_ID', + 2 => 'STRUCTURE_ID', + 3 => 'TO_DELETE', + ), + ), + 'TBL_DMLIQ_ANNEE_FK_IDX' => + array ( + 'name' => 'TBL_DMLIQ_ANNEE_FK_IDX', + 'unique' => false, + 'table' => 'TBL_DMEP_LIQUIDATION', + 'columns' => + array ( + 0 => 'ANNEE_ID', + ), + ), + 'TBL_DMLIQ_STRUCTURE_FK_IDX' => + array ( + 'name' => 'TBL_DMLIQ_STRUCTURE_FK_IDX', + 'unique' => false, + 'table' => 'TBL_DMEP_LIQUIDATION', + 'columns' => + array ( + 0 => 'STRUCTURE_ID', + ), + ), + 'TBL_DMLIQ_TYPE_RESSOURCE_FK' => + array ( + 'name' => 'TBL_DMLIQ_TYPE_RESSOURCE_FK', + 'unique' => false, + 'table' => 'TBL_DMEP_LIQUIDATION', + 'columns' => + array ( + 0 => 'TYPE_RESSOURCE_ID', + ), + ), + 'TBL_DOSSIER_ANNEE_FK_IDX' => + array ( + 'name' => 'TBL_DOSSIER_ANNEE_FK_IDX', + 'unique' => false, + 'table' => 'TBL_DOSSIER', + 'columns' => + array ( + 0 => 'ANNEE_ID', + ), + ), + 'TBL_DOSSIER_DOSSIER_FK_IDX' => + array ( + 'name' => 'TBL_DOSSIER_DOSSIER_FK_IDX', + 'unique' => false, + 'table' => 'TBL_DOSSIER', + 'columns' => + array ( + 0 => 'DOSSIER_ID', + ), + ), + 'TBL_DOSSIER_PK_IDX' => + array ( + 'name' => 'TBL_DOSSIER_PK_IDX', + 'unique' => true, + 'table' => 'TBL_DOSSIER', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_DOSSIER_VALIDATION_FK_IDX' => + array ( + 'name' => 'TBL_DOSSIER_VALIDATION_FK_IDX', + 'unique' => false, + 'table' => 'TBL_DOSSIER', + 'columns' => + array ( + 0 => 'VALIDATION_ID', + ), + ), + 'TBL_DOSSIER__UN_IDX' => + array ( + 'name' => 'TBL_DOSSIER__UN_IDX', + 'unique' => true, + 'table' => 'TBL_DOSSIER', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + 1 => 'TO_DELETE', + ), + ), + 'TBL_LIEN_ACTIF_IDX' => + array ( + 'name' => 'TBL_LIEN_ACTIF_IDX', + 'unique' => false, + 'table' => 'TBL_LIEN', + 'columns' => + array ( + 0 => 'ACTIF', + ), + ), + 'TBL_LIEN_LIEN_FK' => + array ( + 'name' => 'TBL_LIEN_LIEN_FK', + 'unique' => false, + 'table' => 'TBL_LIEN', + 'columns' => + array ( + 0 => 'LIEN_ID', + ), + ), + 'TBL_LIEN_NOEUD_INF_FK' => + array ( + 'name' => 'TBL_LIEN_NOEUD_INF_FK', + 'unique' => false, + 'table' => 'TBL_LIEN', + 'columns' => + array ( + 0 => 'NOEUD_INF_ID', + ), + ), + 'TBL_LIEN_NOEUD_SUP_FK' => + array ( + 'name' => 'TBL_LIEN_NOEUD_SUP_FK', + 'unique' => false, + 'table' => 'TBL_LIEN', + 'columns' => + array ( + 0 => 'NOEUD_SUP_ID', + ), + ), + 'TBL_LIEN_PK' => + array ( + 'name' => 'TBL_LIEN_PK', + 'unique' => true, + 'table' => 'TBL_LIEN', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_LIEN_SCENARIO_FK' => + array ( + 'name' => 'TBL_LIEN_SCENARIO_FK', + 'unique' => false, + 'table' => 'TBL_LIEN', + 'columns' => + array ( + 0 => 'SCENARIO_ID', + ), + ), + 'TBL_LIEN_SCENARIO_LIEN_FK' => + array ( + 'name' => 'TBL_LIEN_SCENARIO_LIEN_FK', + 'unique' => false, + 'table' => 'TBL_LIEN', + 'columns' => + array ( + 0 => 'SCENARIO_LIEN_ID', + ), + ), + 'TBL_LIEN_STRUCTURE_FK' => + array ( + 'name' => 'TBL_LIEN_STRUCTURE_FK', + 'unique' => false, + 'table' => 'TBL_LIEN', + 'columns' => + array ( + 0 => 'STRUCTURE_ID', + ), + ), + 'TBL_NOEUD_ANNEE_IDX' => + array ( + 'name' => 'TBL_NOEUD_ANNEE_IDX', + 'unique' => false, + 'table' => 'TBL_NOEUD', + 'columns' => + array ( + 0 => 'ANNEE_ID', + ), + ), + 'TBL_NOEUD_ETAPE_IDX' => + array ( + 'name' => 'TBL_NOEUD_ETAPE_IDX', + 'unique' => false, + 'table' => 'TBL_NOEUD', + 'columns' => + array ( + 0 => 'ETAPE_ID', + ), + ), + 'TBL_NOEUD_GTF_IDX' => + array ( + 'name' => 'TBL_NOEUD_GTF_IDX', + 'unique' => false, + 'table' => 'TBL_NOEUD', + 'columns' => + array ( + 0 => 'GROUPE_TYPE_FORMATION_ID', + ), + ), + 'TBL_NOEUD_NETAPE_IDX' => + array ( + 'name' => 'TBL_NOEUD_NETAPE_IDX', + 'unique' => false, + 'table' => 'TBL_NOEUD', + 'columns' => + array ( + 0 => 'NOEUD_ETAPE_ID', + ), + ), + 'TBL_NOEUD_NOEUD_IDX' => + array ( + 'name' => 'TBL_NOEUD_NOEUD_IDX', + 'unique' => false, + 'table' => 'TBL_NOEUD', + 'columns' => + array ( + 0 => 'NOEUD_ID', + ), + ), + 'TBL_NOEUD_STRUCTURE_IDX' => + array ( + 'name' => 'TBL_NOEUD_STRUCTURE_IDX', + 'unique' => false, + 'table' => 'TBL_NOEUD', + 'columns' => + array ( + 0 => 'STRUCTURE_ID', + ), + ), + 'TBL_PAIEMENT_ANNEE_FK_IDX' => + array ( + 'name' => 'TBL_PAIEMENT_ANNEE_FK_IDX', + 'unique' => false, + 'table' => 'TBL_PAIEMENT', + 'columns' => + array ( + 0 => 'ANNEE_ID', + ), + ), + 'TBL_PAIEMENT_FRSR_FK_IDX' => + array ( + 'name' => 'TBL_PAIEMENT_FRSR_FK_IDX', + 'unique' => false, + 'table' => 'TBL_PAIEMENT', + 'columns' => + array ( + 0 => 'FORMULE_RES_SERVICE_REF_ID', + ), + ), + 'TBL_PAIEMENT_FRS_FK_IDX' => + array ( + 'name' => 'TBL_PAIEMENT_FRS_FK_IDX', + 'unique' => false, + 'table' => 'TBL_PAIEMENT', + 'columns' => + array ( + 0 => 'FORMULE_RES_SERVICE_ID', + ), + ), + 'TBL_PAIEMENT_INTERVENANT_FK' => + array ( + 'name' => 'TBL_PAIEMENT_INTERVENANT_FK', + 'unique' => false, + 'table' => 'TBL_PAIEMENT', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + ), + ), + 'TBL_PAIEMENT_MEP_FK_IDX' => + array ( + 'name' => 'TBL_PAIEMENT_MEP_FK_IDX', + 'unique' => false, + 'table' => 'TBL_PAIEMENT', + 'columns' => + array ( + 0 => 'MISE_EN_PAIEMENT_ID', + ), + ), + 'TBL_PAIEMENT_PERIODE_FK_IDX' => + array ( + 'name' => 'TBL_PAIEMENT_PERIODE_FK_IDX', + 'unique' => false, + 'table' => 'TBL_PAIEMENT', + 'columns' => + array ( + 0 => 'PERIODE_PAIEMENT_ID', + ), + ), + 'TBL_PAIEMENT_PK_IDX' => + array ( + 'name' => 'TBL_PAIEMENT_PK_IDX', + 'unique' => true, + 'table' => 'TBL_PAIEMENT', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_PAIEMENT_STRUCTURE_FK_IDX' => + array ( + 'name' => 'TBL_PAIEMENT_STRUCTURE_FK_IDX', + 'unique' => false, + 'table' => 'TBL_PAIEMENT', + 'columns' => + array ( + 0 => 'STRUCTURE_ID', + ), + ), + 'TBL_PAIEMENT__UN' => + array ( + 'name' => 'TBL_PAIEMENT__UN', + 'unique' => true, + 'table' => 'TBL_PAIEMENT', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + 1 => 'TO_DELETE', + 2 => 'MISE_EN_PAIEMENT_ID', + 3 => 'FORMULE_RES_SERVICE_ID', + 4 => 'FORMULE_RES_SERVICE_REF_ID', + ), + ), + 'TBL_PIECE_JOINTE_ANNEE_FK_IDX' => + array ( + 'name' => 'TBL_PIECE_JOINTE_ANNEE_FK_IDX', + 'unique' => false, + 'table' => 'TBL_PIECE_JOINTE', + 'columns' => + array ( + 0 => 'ANNEE_ID', + ), + ), + 'TBL_PIECE_JOINTE_PK_IDX' => + array ( + 'name' => 'TBL_PIECE_JOINTE_PK_IDX', + 'unique' => true, + 'table' => 'TBL_PIECE_JOINTE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_PIECE_JOINTE__UN_IDX' => + array ( + 'name' => 'TBL_PIECE_JOINTE__UN_IDX', + 'unique' => true, + 'table' => 'TBL_PIECE_JOINTE', + 'columns' => + array ( + 0 => 'TYPE_PIECE_JOINTE_ID', + 1 => 'INTERVENANT_ID', + 2 => 'TO_DELETE', + ), + ), + 'TBL_PJD_ANNEE_FK_IDX' => + array ( + 'name' => 'TBL_PJD_ANNEE_FK_IDX', + 'unique' => false, + 'table' => 'TBL_PIECE_JOINTE_DEMANDE', + 'columns' => + array ( + 0 => 'ANNEE_ID', + ), + ), + 'TBL_PJD_INTERVENANT_FK_IDX' => + array ( + 'name' => 'TBL_PJD_INTERVENANT_FK_IDX', + 'unique' => false, + 'table' => 'TBL_PIECE_JOINTE_DEMANDE', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + ), + ), + 'TBL_PJD_PK_IDX' => + array ( + 'name' => 'TBL_PJD_PK_IDX', + 'unique' => true, + 'table' => 'TBL_PIECE_JOINTE_DEMANDE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_PJD_TYPE_PIECE_JOINTE_FK' => + array ( + 'name' => 'TBL_PJD_TYPE_PIECE_JOINTE_FK', + 'unique' => false, + 'table' => 'TBL_PIECE_JOINTE_DEMANDE', + 'columns' => + array ( + 0 => 'TYPE_PIECE_JOINTE_ID', + ), + ), + 'TBL_PJD_UN_IDX' => + array ( + 'name' => 'TBL_PJD_UN_IDX', + 'unique' => true, + 'table' => 'TBL_PIECE_JOINTE_DEMANDE', + 'columns' => + array ( + 0 => 'TYPE_PIECE_JOINTE_ID', + 1 => 'INTERVENANT_ID', + 2 => 'TO_DELETE', + ), + ), + 'TBL_PJF_ANNEE_FK_IDX' => + array ( + 'name' => 'TBL_PJF_ANNEE_FK_IDX', + 'unique' => false, + 'table' => 'TBL_PIECE_JOINTE_FOURNIE', + 'columns' => + array ( + 0 => 'ANNEE_ID', + ), + ), + 'TBL_PJF_FICHIER_FK_IDX' => + array ( + 'name' => 'TBL_PJF_FICHIER_FK_IDX', + 'unique' => false, + 'table' => 'TBL_PIECE_JOINTE_FOURNIE', + 'columns' => + array ( + 0 => 'FICHIER_ID', + ), + ), + 'TBL_PJF_INTERVENANT_FK_IDX' => + array ( + 'name' => 'TBL_PJF_INTERVENANT_FK_IDX', + 'unique' => false, + 'table' => 'TBL_PIECE_JOINTE_FOURNIE', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + ), + ), + 'TBL_PJF_PIECE_JOINTE_FK_IDX' => + array ( + 'name' => 'TBL_PJF_PIECE_JOINTE_FK_IDX', + 'unique' => false, + 'table' => 'TBL_PIECE_JOINTE_FOURNIE', + 'columns' => + array ( + 0 => 'PIECE_JOINTE_ID', + ), + ), + 'TBL_PJF_PK_IDX' => + array ( + 'name' => 'TBL_PJF_PK_IDX', + 'unique' => true, + 'table' => 'TBL_PIECE_JOINTE_FOURNIE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_PJF_TYPE_PIECE_JOINTE_FK' => + array ( + 'name' => 'TBL_PJF_TYPE_PIECE_JOINTE_FK', + 'unique' => false, + 'table' => 'TBL_PIECE_JOINTE_FOURNIE', + 'columns' => + array ( + 0 => 'TYPE_PIECE_JOINTE_ID', + ), + ), + 'TBL_PJF_UN_IDX' => + array ( + 'name' => 'TBL_PJF_UN_IDX', + 'unique' => true, + 'table' => 'TBL_PIECE_JOINTE_FOURNIE', + 'columns' => + array ( + 0 => 'TYPE_PIECE_JOINTE_ID', + 1 => 'INTERVENANT_ID', + 2 => 'VALIDATION_ID', + 3 => 'FICHIER_ID', + ), + ), + 'TBL_PJF_VALIDATION_FK_IDX' => + array ( + 'name' => 'TBL_PJF_VALIDATION_FK_IDX', + 'unique' => false, + 'table' => 'TBL_PIECE_JOINTE_FOURNIE', + 'columns' => + array ( + 0 => 'VALIDATION_ID', + ), + ), + 'TBL_PJ_INTERVENANT_FK_IDX' => + array ( + 'name' => 'TBL_PJ_INTERVENANT_FK_IDX', + 'unique' => false, + 'table' => 'TBL_PIECE_JOINTE', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + ), + ), + 'TBL_PJ_TYPE_PIECE_JOINTE_FK' => + array ( + 'name' => 'TBL_PJ_TYPE_PIECE_JOINTE_FK', + 'unique' => false, + 'table' => 'TBL_PIECE_JOINTE', + 'columns' => + array ( + 0 => 'TYPE_PIECE_JOINTE_ID', + ), + ), + 'TBL_PK' => + array ( + 'name' => 'TBL_PK', + 'unique' => true, + 'table' => 'TBL', + 'columns' => + array ( + 0 => 'TBL_NAME', + ), + ), + 'TBL_SERVICE_ANNEE_FK_IDX' => + array ( + 'name' => 'TBL_SERVICE_ANNEE_FK_IDX', + 'unique' => false, + 'table' => 'TBL_SERVICE', + 'columns' => + array ( + 0 => 'ANNEE_ID', + ), + ), + 'TBL_SERVICE_ELEMENT_FK_IDX' => + array ( + 'name' => 'TBL_SERVICE_ELEMENT_FK_IDX', + 'unique' => false, + 'table' => 'TBL_SERVICE', + 'columns' => + array ( + 0 => 'ELEMENT_PEDAGOGIQUE_ID', + ), + ), + 'TBL_SERVICE_ETAPE_FK_IDX' => + array ( + 'name' => 'TBL_SERVICE_ETAPE_FK_IDX', + 'unique' => false, + 'table' => 'TBL_SERVICE', + 'columns' => + array ( + 0 => 'ETAPE_ID', + ), + ), + 'TBL_SERVICE_INTERVENANT_FK_IDX' => + array ( + 'name' => 'TBL_SERVICE_INTERVENANT_FK_IDX', + 'unique' => false, + 'table' => 'TBL_SERVICE', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + ), + ), + 'TBL_SERVICE_PERIODE_EP_FK_IDX' => + array ( + 'name' => 'TBL_SERVICE_PERIODE_EP_FK_IDX', + 'unique' => false, + 'table' => 'TBL_SERVICE', + 'columns' => + array ( + 0 => 'ELEMENT_PEDAGOGIQUE_PERIODE_ID', + ), + ), + 'TBL_SERVICE_PK' => + array ( + 'name' => 'TBL_SERVICE_PK', + 'unique' => true, + 'table' => 'TBL_SERVICE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_SERVICE_REFERENTIEL_PK_IDX' => + array ( + 'name' => 'TBL_SERVICE_REFERENTIEL_PK_IDX', + 'unique' => true, + 'table' => 'TBL_SERVICE_REFERENTIEL', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_SERVICE_REFERENTIEL_UN_IDX' => + array ( + 'name' => 'TBL_SERVICE_REFERENTIEL_UN_IDX', + 'unique' => true, + 'table' => 'TBL_SERVICE_REFERENTIEL', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + 1 => 'TYPE_VOLUME_HORAIRE_ID', + 2 => 'STRUCTURE_ID', + 3 => 'TO_DELETE', + ), + ), + 'TBL_SERVICE_REF_ANNEE_FK_IDX' => + array ( + 'name' => 'TBL_SERVICE_REF_ANNEE_FK_IDX', + 'unique' => false, + 'table' => 'TBL_SERVICE_REFERENTIEL', + 'columns' => + array ( + 0 => 'ANNEE_ID', + ), + ), + 'TBL_SERVICE_REF_INTERVENANT_FK' => + array ( + 'name' => 'TBL_SERVICE_REF_INTERVENANT_FK', + 'unique' => false, + 'table' => 'TBL_SERVICE_REFERENTIEL', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + ), + ), + 'TBL_SERVICE_REF_STRUCTURE_FK' => + array ( + 'name' => 'TBL_SERVICE_REF_STRUCTURE_FK', + 'unique' => false, + 'table' => 'TBL_SERVICE_REFERENTIEL', + 'columns' => + array ( + 0 => 'STRUCTURE_ID', + ), + ), + 'TBL_SERVICE_REF_TVH_FK_IDX' => + array ( + 'name' => 'TBL_SERVICE_REF_TVH_FK_IDX', + 'unique' => false, + 'table' => 'TBL_SERVICE_REFERENTIEL', + 'columns' => + array ( + 0 => 'TYPE_VOLUME_HORAIRE_ID', + ), + ), + 'TBL_SERVICE_SAISIE_ANNEE_FK' => + array ( + 'name' => 'TBL_SERVICE_SAISIE_ANNEE_FK', + 'unique' => false, + 'table' => 'TBL_SERVICE_SAISIE', + 'columns' => + array ( + 0 => 'ANNEE_ID', + ), + ), + 'TBL_SERVICE_SAISIE_PK_IDX' => + array ( + 'name' => 'TBL_SERVICE_SAISIE_PK_IDX', + 'unique' => true, + 'table' => 'TBL_SERVICE_SAISIE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_SERVICE_SAISIE_UN_IDX' => + array ( + 'name' => 'TBL_SERVICE_SAISIE_UN_IDX', + 'unique' => true, + 'table' => 'TBL_SERVICE_SAISIE', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + 1 => 'TO_DELETE', + ), + ), + 'TBL_SERVICE_SERVICE_FK_IDX' => + array ( + 'name' => 'TBL_SERVICE_SERVICE_FK_IDX', + 'unique' => false, + 'table' => 'TBL_SERVICE', + 'columns' => + array ( + 0 => 'SERVICE_ID', + ), + ), + 'TBL_SERVICE_STRUCTURE_FKV1_IDX' => + array ( + 'name' => 'TBL_SERVICE_STRUCTURE_FKV1_IDX', + 'unique' => false, + 'table' => 'TBL_SERVICE', + 'columns' => + array ( + 0 => 'INTERVENANT_STRUCTURE_ID', + ), + ), + 'TBL_SERVICE_STRUCTURE_FK_IDX' => + array ( + 'name' => 'TBL_SERVICE_STRUCTURE_FK_IDX', + 'unique' => false, + 'table' => 'TBL_SERVICE', + 'columns' => + array ( + 0 => 'STRUCTURE_ID', + ), + ), + 'TBL_SERVICE_TINTERVENANT_FK' => + array ( + 'name' => 'TBL_SERVICE_TINTERVENANT_FK', + 'unique' => false, + 'table' => 'TBL_SERVICE', + 'columns' => + array ( + 0 => 'TYPE_INTERVENANT_ID', + ), + ), + 'TBL_SERVICE_TVH_FK_IDX' => + array ( + 'name' => 'TBL_SERVICE_TVH_FK_IDX', + 'unique' => false, + 'table' => 'TBL_SERVICE', + 'columns' => + array ( + 0 => 'TYPE_VOLUME_HORAIRE_ID', + ), + ), + 'TBL_SERVICE_TVH_IDX_IDX' => + array ( + 'name' => 'TBL_SERVICE_TVH_IDX_IDX', + 'unique' => false, + 'table' => 'TBL_SERVICE', + 'columns' => + array ( + 0 => 'TYPE_VOLUME_HORAIRE_CODE', + ), + ), + 'TBL_SERVICE_TYPE_INT_IDX' => + array ( + 'name' => 'TBL_SERVICE_TYPE_INT_IDX', + 'unique' => false, + 'table' => 'TBL_SERVICE', + 'columns' => + array ( + 0 => 'TYPE_INTERVENANT_CODE', + ), + ), + 'TBL_SERVICE__UN' => + array ( + 'name' => 'TBL_SERVICE__UN', + 'unique' => true, + 'table' => 'TBL_SERVICE', + 'columns' => + array ( + 0 => 'SERVICE_ID', + 1 => 'TYPE_VOLUME_HORAIRE_ID', + 2 => 'TO_DELETE', + ), + ), + 'TBL_VALIDATION_ENSEIGNEMENT_PK' => + array ( + 'name' => 'TBL_VALIDATION_ENSEIGNEMENT_PK', + 'unique' => true, + 'table' => 'TBL_VALIDATION_ENSEIGNEMENT', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_VALIDATION_ENSEIGNEMENT_UN' => + array ( + 'name' => 'TBL_VALIDATION_ENSEIGNEMENT_UN', + 'unique' => true, + 'table' => 'TBL_VALIDATION_ENSEIGNEMENT', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + 1 => 'STRUCTURE_ID', + 2 => 'TYPE_VOLUME_HORAIRE_ID', + 3 => 'SERVICE_ID', + 4 => 'VOLUME_HORAIRE_ID', + 5 => 'VALIDATION_ID', + 6 => 'TO_DELETE', + ), + ), + 'TBL_VALIDATION_REFERENTIEL_PK' => + array ( + 'name' => 'TBL_VALIDATION_REFERENTIEL_PK', + 'unique' => true, + 'table' => 'TBL_VALIDATION_REFERENTIEL', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_VALIDATION_REFERENTIEL__UN' => + array ( + 'name' => 'TBL_VALIDATION_REFERENTIEL__UN', + 'unique' => true, + 'table' => 'TBL_VALIDATION_REFERENTIEL', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + 1 => 'STRUCTURE_ID', + 2 => 'TYPE_VOLUME_HORAIRE_ID', + 3 => 'SERVICE_REFERENTIEL_ID', + 4 => 'VOLUME_HORAIRE_REF_ID', + 5 => 'VALIDATION_ID', + 6 => 'TO_DELETE', + ), + ), + 'TBL_WORKFLOW_ANNEE_FK_IDX' => + array ( + 'name' => 'TBL_WORKFLOW_ANNEE_FK_IDX', + 'unique' => false, + 'table' => 'TBL_WORKFLOW', + 'columns' => + array ( + 0 => 'ANNEE_ID', + ), + ), + 'TBL_WORKFLOW_EFK_IDX' => + array ( + 'name' => 'TBL_WORKFLOW_EFK_IDX', + 'unique' => false, + 'table' => 'TBL_WORKFLOW', + 'columns' => + array ( + 0 => 'ETAPE_ID', + ), + ), + 'TBL_WORKFLOW_ETAPE_IDX' => + array ( + 'name' => 'TBL_WORKFLOW_ETAPE_IDX', + 'unique' => false, + 'table' => 'TBL_WORKFLOW', + 'columns' => + array ( + 0 => 'ETAPE_CODE', + ), + ), + 'TBL_WORKFLOW_IFK_IDX' => + array ( + 'name' => 'TBL_WORKFLOW_IFK_IDX', + 'unique' => false, + 'table' => 'TBL_WORKFLOW', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + ), + ), + 'TBL_WORKFLOW_PK_IDX' => + array ( + 'name' => 'TBL_WORKFLOW_PK_IDX', + 'unique' => true, + 'table' => 'TBL_WORKFLOW', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TBL_WORKFLOW_SFK_IDX' => + array ( + 'name' => 'TBL_WORKFLOW_SFK_IDX', + 'unique' => false, + 'table' => 'TBL_WORKFLOW', + 'columns' => + array ( + 0 => 'STRUCTURE_ID', + ), + ), + 'TBL_WORKFLOW_TINTERVENANT_FK' => + array ( + 'name' => 'TBL_WORKFLOW_TINTERVENANT_FK', + 'unique' => false, + 'table' => 'TBL_WORKFLOW', + 'columns' => + array ( + 0 => 'TYPE_INTERVENANT_ID', + ), + ), + 'TBL_WORKFLOW_TYPE_INT_IDX' => + array ( + 'name' => 'TBL_WORKFLOW_TYPE_INT_IDX', + 'unique' => false, + 'table' => 'TBL_WORKFLOW', + 'columns' => + array ( + 0 => 'TYPE_INTERVENANT_CODE', + ), + ), + 'TBL_WORKFLOW__UN' => + array ( + 'name' => 'TBL_WORKFLOW__UN', + 'unique' => true, + 'table' => 'TBL_WORKFLOW', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + 1 => 'ETAPE_ID', + 2 => 'STRUCTURE_ID', + ), + ), + 'TD_TYPE_RESSOURCE_FK_IDX' => + array ( + 'name' => 'TD_TYPE_RESSOURCE_FK_IDX', + 'unique' => false, + 'table' => 'TYPE_DOTATION', + 'columns' => + array ( + 0 => 'TYPE_RESSOURCE_ID', + ), + ), + 'TEST_BUFFER_PK' => + array ( + 'name' => 'TEST_BUFFER_PK', + 'unique' => true, + 'table' => 'TEST_BUFFER', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TIEP_ELEMENT_PEDAGOGIQUE_FK' => + array ( + 'name' => 'TIEP_ELEMENT_PEDAGOGIQUE_FK', + 'unique' => false, + 'table' => 'TYPE_INTERVENTION_EP', + 'columns' => + array ( + 0 => 'ELEMENT_PEDAGOGIQUE_ID', + ), + ), + 'TIEP_TYPE_INTERVENTION_FK_IDX' => + array ( + 'name' => 'TIEP_TYPE_INTERVENTION_FK_IDX', + 'unique' => false, + 'table' => 'TYPE_INTERVENTION_EP', + 'columns' => + array ( + 0 => 'TYPE_INTERVENTION_ID', + ), + ), + 'TIS_ANNEE_DEBUT_FK_IDX' => + array ( + 'name' => 'TIS_ANNEE_DEBUT_FK_IDX', + 'unique' => false, + 'table' => 'TYPE_INTERVENTION_STRUCTURE', + 'columns' => + array ( + 0 => 'ANNEE_DEBUT_ID', + ), + ), + 'TIS_ANNEE_FIN_FK_IDX' => + array ( + 'name' => 'TIS_ANNEE_FIN_FK_IDX', + 'unique' => false, + 'table' => 'TYPE_INTERVENTION_STRUCTURE', + 'columns' => + array ( + 0 => 'ANNEE_FIN_ID', + ), + ), + 'TIS_STRUCTURE_FK_IDX' => + array ( + 'name' => 'TIS_STRUCTURE_FK_IDX', + 'unique' => false, + 'table' => 'TYPE_INTERVENTION_STRUCTURE', + 'columns' => + array ( + 0 => 'STRUCTURE_ID', + ), + ), + 'TIS_TYPE_INTERVENTION_FK_IDX' => + array ( + 'name' => 'TIS_TYPE_INTERVENTION_FK_IDX', + 'unique' => false, + 'table' => 'TYPE_INTERVENTION_STRUCTURE', + 'columns' => + array ( + 0 => 'TYPE_INTERVENTION_ID', + ), + ), + 'TME_ELEMENT_PEDAGOGIQUE_FK_IDX' => + array ( + 'name' => 'TME_ELEMENT_PEDAGOGIQUE_FK_IDX', + 'unique' => false, + 'table' => 'TYPE_MODULATEUR_EP', + 'columns' => + array ( + 0 => 'ELEMENT_PEDAGOGIQUE_ID', + ), + ), + 'TME_TYPE_MODULATEUR_FK_IDX' => + array ( + 'name' => 'TME_TYPE_MODULATEUR_FK_IDX', + 'unique' => false, + 'table' => 'TYPE_MODULATEUR_EP', + 'columns' => + array ( + 0 => 'TYPE_MODULATEUR_ID', + ), + ), + 'TMS_ANNEE_DEBUT_FK_IDX' => + array ( + 'name' => 'TMS_ANNEE_DEBUT_FK_IDX', + 'unique' => false, + 'table' => 'TYPE_MODULATEUR_STRUCTURE', + 'columns' => + array ( + 0 => 'ANNEE_DEBUT_ID', + ), + ), + 'TMS_ANNEE_FIN_FK_IDX' => + array ( + 'name' => 'TMS_ANNEE_FIN_FK_IDX', + 'unique' => false, + 'table' => 'TYPE_MODULATEUR_STRUCTURE', + 'columns' => + array ( + 0 => 'ANNEE_FIN_ID', + ), + ), + 'TMS_STRUCTURE_FK_IDX' => + array ( + 'name' => 'TMS_STRUCTURE_FK_IDX', + 'unique' => false, + 'table' => 'TYPE_MODULATEUR_STRUCTURE', + 'columns' => + array ( + 0 => 'STRUCTURE_ID', + ), + ), + 'TMS_TYPE_MODUL_FK_IDX' => + array ( + 'name' => 'TMS_TYPE_MODUL_FK_IDX', + 'unique' => false, + 'table' => 'TYPE_MODULATEUR_STRUCTURE', + 'columns' => + array ( + 0 => 'TYPE_MODULATEUR_ID', + ), + ), + 'TPJS_ANNEE_DEB_FK' => + array ( + 'name' => 'TPJS_ANNEE_DEB_FK', + 'unique' => false, + 'table' => 'TYPE_PIECE_JOINTE_STATUT', + 'columns' => + array ( + 0 => 'ANNEE_DEBUT_ID', + ), + ), + 'TPJS_ANNEE_FIN_FK' => + array ( + 'name' => 'TPJS_ANNEE_FIN_FK', + 'unique' => false, + 'table' => 'TYPE_PIECE_JOINTE_STATUT', + 'columns' => + array ( + 0 => 'ANNEE_FIN_ID', + ), + ), + 'TPJS_STATUT_INTERVENANT_FK_IDX' => + array ( + 'name' => 'TPJS_STATUT_INTERVENANT_FK_IDX', + 'unique' => false, + 'table' => 'TYPE_PIECE_JOINTE_STATUT', + 'columns' => + array ( + 0 => 'STATUT_INTERVENANT_ID', + ), + ), + 'TPJS_TYPE_PIECE_JOINTE_FK_IDX' => + array ( + 'name' => 'TPJS_TYPE_PIECE_JOINTE_FK_IDX', + 'unique' => false, + 'table' => 'TYPE_PIECE_JOINTE_STATUT', + 'columns' => + array ( + 0 => 'TYPE_PIECE_JOINTE_ID', + ), + ), + 'TVE_ANNEE_FK_IDX' => + array ( + 'name' => 'TVE_ANNEE_FK_IDX', + 'unique' => false, + 'table' => 'TBL_VALIDATION_ENSEIGNEMENT', + 'columns' => + array ( + 0 => 'ANNEE_ID', + ), + ), + 'TVE_INTERVENANT_FK_IDX' => + array ( + 'name' => 'TVE_INTERVENANT_FK_IDX', + 'unique' => false, + 'table' => 'TBL_VALIDATION_ENSEIGNEMENT', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + ), + ), + 'TVE_SERVICE_FK_IDX' => + array ( + 'name' => 'TVE_SERVICE_FK_IDX', + 'unique' => false, + 'table' => 'TBL_VALIDATION_ENSEIGNEMENT', + 'columns' => + array ( + 0 => 'SERVICE_ID', + ), + ), + 'TVE_STRUCTURE_FK_IDX' => + array ( + 'name' => 'TVE_STRUCTURE_FK_IDX', + 'unique' => false, + 'table' => 'TBL_VALIDATION_ENSEIGNEMENT', + 'columns' => + array ( + 0 => 'STRUCTURE_ID', + ), + ), + 'TVE_TYPE_VOLUME_HORAIRE_FK_IDX' => + array ( + 'name' => 'TVE_TYPE_VOLUME_HORAIRE_FK_IDX', + 'unique' => false, + 'table' => 'TBL_VALIDATION_ENSEIGNEMENT', + 'columns' => + array ( + 0 => 'TYPE_VOLUME_HORAIRE_ID', + ), + ), + 'TVE_VALIDATION_FK_IDX' => + array ( + 'name' => 'TVE_VALIDATION_FK_IDX', + 'unique' => false, + 'table' => 'TBL_VALIDATION_ENSEIGNEMENT', + 'columns' => + array ( + 0 => 'VALIDATION_ID', + ), + ), + 'TVE_VOLUME_HORAIRE_FK_IDX' => + array ( + 'name' => 'TVE_VOLUME_HORAIRE_FK_IDX', + 'unique' => false, + 'table' => 'TBL_VALIDATION_ENSEIGNEMENT', + 'columns' => + array ( + 0 => 'VOLUME_HORAIRE_ID', + ), + ), + 'TVR_ANNEE_FK_IDX' => + array ( + 'name' => 'TVR_ANNEE_FK_IDX', + 'unique' => false, + 'table' => 'TBL_VALIDATION_REFERENTIEL', + 'columns' => + array ( + 0 => 'ANNEE_ID', + ), + ), + 'TVR_INTERVENANT_FK_IDX' => + array ( + 'name' => 'TVR_INTERVENANT_FK_IDX', + 'unique' => false, + 'table' => 'TBL_VALIDATION_REFERENTIEL', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + ), + ), + 'TVR_SERVICE_REFERENTIEL_FK_IDX' => + array ( + 'name' => 'TVR_SERVICE_REFERENTIEL_FK_IDX', + 'unique' => false, + 'table' => 'TBL_VALIDATION_REFERENTIEL', + 'columns' => + array ( + 0 => 'SERVICE_REFERENTIEL_ID', + ), + ), + 'TVR_STRUCTURE_FK_IDX' => + array ( + 'name' => 'TVR_STRUCTURE_FK_IDX', + 'unique' => false, + 'table' => 'TBL_VALIDATION_REFERENTIEL', + 'columns' => + array ( + 0 => 'STRUCTURE_ID', + ), + ), + 'TVR_TYPE_VOLUME_HORAIRE_FK_IDX' => + array ( + 'name' => 'TVR_TYPE_VOLUME_HORAIRE_FK_IDX', + 'unique' => false, + 'table' => 'TBL_VALIDATION_REFERENTIEL', + 'columns' => + array ( + 0 => 'TYPE_VOLUME_HORAIRE_ID', + ), + ), + 'TVR_VALIDATION_FK_IDX' => + array ( + 'name' => 'TVR_VALIDATION_FK_IDX', + 'unique' => false, + 'table' => 'TBL_VALIDATION_REFERENTIEL', + 'columns' => + array ( + 0 => 'VALIDATION_ID', + ), + ), + 'TVR_VOLUME_HORAIRE_REF_FK_IDX' => + array ( + 'name' => 'TVR_VOLUME_HORAIRE_REF_FK_IDX', + 'unique' => false, + 'table' => 'TBL_VALIDATION_REFERENTIEL', + 'columns' => + array ( + 0 => 'VOLUME_HORAIRE_REF_ID', + ), + ), + 'TYPE_AGREMENT_HCFK_IDX' => + array ( + 'name' => 'TYPE_AGREMENT_HCFK_IDX', + 'unique' => false, + 'table' => 'TYPE_AGREMENT', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'TYPE_AGREMENT_HDFK_IDX' => + array ( + 'name' => 'TYPE_AGREMENT_HDFK_IDX', + 'unique' => false, + 'table' => 'TYPE_AGREMENT', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'TYPE_AGREMENT_HMFK_IDX' => + array ( + 'name' => 'TYPE_AGREMENT_HMFK_IDX', + 'unique' => false, + 'table' => 'TYPE_AGREMENT', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'TYPE_AGREMENT_PK' => + array ( + 'name' => 'TYPE_AGREMENT_PK', + 'unique' => true, + 'table' => 'TYPE_AGREMENT', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_AGREMENT_STATUT_HCFK_IDX' => + array ( + 'name' => 'TYPE_AGREMENT_STATUT_HCFK_IDX', + 'unique' => false, + 'table' => 'TYPE_AGREMENT_STATUT', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'TYPE_AGREMENT_STATUT_HDFK_IDX' => + array ( + 'name' => 'TYPE_AGREMENT_STATUT_HDFK_IDX', + 'unique' => false, + 'table' => 'TYPE_AGREMENT_STATUT', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'TYPE_AGREMENT_STATUT_HMFK_IDX' => + array ( + 'name' => 'TYPE_AGREMENT_STATUT_HMFK_IDX', + 'unique' => false, + 'table' => 'TYPE_AGREMENT_STATUT', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'TYPE_AGREMENT_STATUT_PK' => + array ( + 'name' => 'TYPE_AGREMENT_STATUT_PK', + 'unique' => true, + 'table' => 'TYPE_AGREMENT_STATUT', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_AGREMENT_STATUT__UN' => + array ( + 'name' => 'TYPE_AGREMENT_STATUT__UN', + 'unique' => true, + 'table' => 'TYPE_AGREMENT_STATUT', + 'columns' => + array ( + 0 => 'TYPE_AGREMENT_ID', + 1 => 'STATUT_INTERVENANT_ID', + 2 => 'PREMIER_RECRUTEMENT', + ), + ), + 'TYPE_AGREMENT__UN' => + array ( + 'name' => 'TYPE_AGREMENT__UN', + 'unique' => true, + 'table' => 'TYPE_AGREMENT', + 'columns' => + array ( + 0 => 'CODE', + ), + ), + 'TYPE_CONTRAT_HCFK_IDX' => + array ( + 'name' => 'TYPE_CONTRAT_HCFK_IDX', + 'unique' => false, + 'table' => 'TYPE_CONTRAT', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'TYPE_CONTRAT_HDFK_IDX' => + array ( + 'name' => 'TYPE_CONTRAT_HDFK_IDX', + 'unique' => false, + 'table' => 'TYPE_CONTRAT', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'TYPE_CONTRAT_HMFK_IDX' => + array ( + 'name' => 'TYPE_CONTRAT_HMFK_IDX', + 'unique' => false, + 'table' => 'TYPE_CONTRAT', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'TYPE_CONTRAT_PK' => + array ( + 'name' => 'TYPE_CONTRAT_PK', + 'unique' => true, + 'table' => 'TYPE_CONTRAT', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_DOTATION_HCFK_IDX' => + array ( + 'name' => 'TYPE_DOTATION_HCFK_IDX', + 'unique' => false, + 'table' => 'TYPE_DOTATION', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'TYPE_DOTATION_HDFK_IDX' => + array ( + 'name' => 'TYPE_DOTATION_HDFK_IDX', + 'unique' => false, + 'table' => 'TYPE_DOTATION', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'TYPE_DOTATION_HMFK_IDX' => + array ( + 'name' => 'TYPE_DOTATION_HMFK_IDX', + 'unique' => false, + 'table' => 'TYPE_DOTATION', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'TYPE_DOTATION_PK' => + array ( + 'name' => 'TYPE_DOTATION_PK', + 'unique' => true, + 'table' => 'TYPE_DOTATION', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_DOTATION_SOURCE_FK_IDX' => + array ( + 'name' => 'TYPE_DOTATION_SOURCE_FK_IDX', + 'unique' => false, + 'table' => 'TYPE_DOTATION', + 'columns' => + array ( + 0 => 'SOURCE_ID', + ), + ), + 'TYPE_FORMATION_GROUPE_FK_IDX' => + array ( + 'name' => 'TYPE_FORMATION_GROUPE_FK_IDX', + 'unique' => false, + 'table' => 'TYPE_FORMATION', + 'columns' => + array ( + 0 => 'GROUPE_ID', + ), + ), + 'TYPE_FORMATION_HCFK_IDX' => + array ( + 'name' => 'TYPE_FORMATION_HCFK_IDX', + 'unique' => false, + 'table' => 'TYPE_FORMATION', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'TYPE_FORMATION_HDFK_IDX' => + array ( + 'name' => 'TYPE_FORMATION_HDFK_IDX', + 'unique' => false, + 'table' => 'TYPE_FORMATION', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'TYPE_FORMATION_HMFK_IDX' => + array ( + 'name' => 'TYPE_FORMATION_HMFK_IDX', + 'unique' => false, + 'table' => 'TYPE_FORMATION', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'TYPE_FORMATION_PK' => + array ( + 'name' => 'TYPE_FORMATION_PK', + 'unique' => true, + 'table' => 'TYPE_FORMATION', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_FORMATION_SOURCE_FK_IDX' => + array ( + 'name' => 'TYPE_FORMATION_SOURCE_FK_IDX', + 'unique' => false, + 'table' => 'TYPE_FORMATION', + 'columns' => + array ( + 0 => 'SOURCE_ID', + ), + ), + 'TYPE_FORMATION__UN' => + array ( + 'name' => 'TYPE_FORMATION__UN', + 'unique' => true, + 'table' => 'TYPE_FORMATION', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + ), + ), + 'TYPE_HEURES_HCFK_IDX' => + array ( + 'name' => 'TYPE_HEURES_HCFK_IDX', + 'unique' => false, + 'table' => 'TYPE_HEURES', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'TYPE_HEURES_HDFK_IDX' => + array ( + 'name' => 'TYPE_HEURES_HDFK_IDX', + 'unique' => false, + 'table' => 'TYPE_HEURES', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'TYPE_HEURES_HMFK_IDX' => + array ( + 'name' => 'TYPE_HEURES_HMFK_IDX', + 'unique' => false, + 'table' => 'TYPE_HEURES', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'TYPE_HEURES_PK' => + array ( + 'name' => 'TYPE_HEURES_PK', + 'unique' => true, + 'table' => 'TYPE_HEURES', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_HEURES_TYPE_HEURES_FK_IDX' => + array ( + 'name' => 'TYPE_HEURES_TYPE_HEURES_FK_IDX', + 'unique' => false, + 'table' => 'TYPE_HEURES', + 'columns' => + array ( + 0 => 'TYPE_HEURES_ELEMENT_ID', + ), + ), + 'TYPE_HEURES_UN' => + array ( + 'name' => 'TYPE_HEURES_UN', + 'unique' => true, + 'table' => 'TYPE_HEURES', + 'columns' => + array ( + 0 => 'CODE', + ), + ), + 'TYPE_INTERVENANT_CODE_UN' => + array ( + 'name' => 'TYPE_INTERVENANT_CODE_UN', + 'unique' => true, + 'table' => 'TYPE_INTERVENANT', + 'columns' => + array ( + 0 => 'CODE', + ), + ), + 'TYPE_INTERVENANT_HCFK_IDX' => + array ( + 'name' => 'TYPE_INTERVENANT_HCFK_IDX', + 'unique' => false, + 'table' => 'TYPE_INTERVENANT', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'TYPE_INTERVENANT_HDFK_IDX' => + array ( + 'name' => 'TYPE_INTERVENANT_HDFK_IDX', + 'unique' => false, + 'table' => 'TYPE_INTERVENANT', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'TYPE_INTERVENANT_HMFK_IDX' => + array ( + 'name' => 'TYPE_INTERVENANT_HMFK_IDX', + 'unique' => false, + 'table' => 'TYPE_INTERVENANT', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'TYPE_INTERVENANT_PK' => + array ( + 'name' => 'TYPE_INTERVENANT_PK', + 'unique' => true, + 'table' => 'TYPE_INTERVENANT', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_INTERVENTION_ANNEE_FK' => + array ( + 'name' => 'TYPE_INTERVENTION_ANNEE_FK', + 'unique' => false, + 'table' => 'TYPE_INTERVENTION', + 'columns' => + array ( + 0 => 'ANNEE_DEBUT_ID', + ), + ), + 'TYPE_INTERVENTION_ANNEE_FKV1' => + array ( + 'name' => 'TYPE_INTERVENTION_ANNEE_FKV1', + 'unique' => false, + 'table' => 'TYPE_INTERVENTION', + 'columns' => + array ( + 0 => 'ANNEE_FIN_ID', + ), + ), + 'TYPE_INTERVENTION_EP_HCFK_IDX' => + array ( + 'name' => 'TYPE_INTERVENTION_EP_HCFK_IDX', + 'unique' => false, + 'table' => 'TYPE_INTERVENTION_EP', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'TYPE_INTERVENTION_EP_HDFK_IDX' => + array ( + 'name' => 'TYPE_INTERVENTION_EP_HDFK_IDX', + 'unique' => false, + 'table' => 'TYPE_INTERVENTION_EP', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'TYPE_INTERVENTION_EP_HMFK_IDX' => + array ( + 'name' => 'TYPE_INTERVENTION_EP_HMFK_IDX', + 'unique' => false, + 'table' => 'TYPE_INTERVENTION_EP', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'TYPE_INTERVENTION_EP_PK' => + array ( + 'name' => 'TYPE_INTERVENTION_EP_PK', + 'unique' => true, + 'table' => 'TYPE_INTERVENTION_EP', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_INTERVENTION_EP_SOURCE_FK' => + array ( + 'name' => 'TYPE_INTERVENTION_EP_SOURCE_FK', + 'unique' => false, + 'table' => 'TYPE_INTERVENTION_EP', + 'columns' => + array ( + 0 => 'SOURCE_ID', + ), + ), + 'TYPE_INTERVENTION_HCFK_IDX' => + array ( + 'name' => 'TYPE_INTERVENTION_HCFK_IDX', + 'unique' => false, + 'table' => 'TYPE_INTERVENTION', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'TYPE_INTERVENTION_HDFK_IDX' => + array ( + 'name' => 'TYPE_INTERVENTION_HDFK_IDX', + 'unique' => false, + 'table' => 'TYPE_INTERVENTION', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'TYPE_INTERVENTION_HMFK_IDX' => + array ( + 'name' => 'TYPE_INTERVENTION_HMFK_IDX', + 'unique' => false, + 'table' => 'TYPE_INTERVENTION', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'TYPE_INTERVENTION_PK' => + array ( + 'name' => 'TYPE_INTERVENTION_PK', + 'unique' => true, + 'table' => 'TYPE_INTERVENTION', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_INTERVENTION_STATUT_PK' => + array ( + 'name' => 'TYPE_INTERVENTION_STATUT_PK', + 'unique' => true, + 'table' => 'TYPE_INTERVENTION_STATUT', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_INTERVENTION_STATUT__UN' => + array ( + 'name' => 'TYPE_INTERVENTION_STATUT__UN', + 'unique' => true, + 'table' => 'TYPE_INTERVENTION_STATUT', + 'columns' => + array ( + 0 => 'TYPE_INTERVENTION_ID', + 1 => 'STATUT_INTERVENANT_ID', + ), + ), + 'TYPE_INTERVENTION_STRUCTURE_PK' => + array ( + 'name' => 'TYPE_INTERVENTION_STRUCTURE_PK', + 'unique' => true, + 'table' => 'TYPE_INTERVENTION_STRUCTURE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_INTERVENTION_STRUCTU_HCFK' => + array ( + 'name' => 'TYPE_INTERVENTION_STRUCTU_HCFK', + 'unique' => false, + 'table' => 'TYPE_INTERVENTION_STRUCTURE', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'TYPE_INTERVENTION_STRUCTU_HDFK' => + array ( + 'name' => 'TYPE_INTERVENTION_STRUCTU_HDFK', + 'unique' => false, + 'table' => 'TYPE_INTERVENTION_STRUCTURE', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'TYPE_INTERVENTION_STRUCTU_HMFK' => + array ( + 'name' => 'TYPE_INTERVENTION_STRUCTU_HMFK', + 'unique' => false, + 'table' => 'TYPE_INTERVENTION_STRUCTURE', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'TYPE_MODULATEUR_EP_HCFK_IDX' => + array ( + 'name' => 'TYPE_MODULATEUR_EP_HCFK_IDX', + 'unique' => false, + 'table' => 'TYPE_MODULATEUR_EP', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'TYPE_MODULATEUR_EP_HDFK_IDX' => + array ( + 'name' => 'TYPE_MODULATEUR_EP_HDFK_IDX', + 'unique' => false, + 'table' => 'TYPE_MODULATEUR_EP', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'TYPE_MODULATEUR_EP_HMFK_IDX' => + array ( + 'name' => 'TYPE_MODULATEUR_EP_HMFK_IDX', + 'unique' => false, + 'table' => 'TYPE_MODULATEUR_EP', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'TYPE_MODULATEUR_EP_PK' => + array ( + 'name' => 'TYPE_MODULATEUR_EP_PK', + 'unique' => true, + 'table' => 'TYPE_MODULATEUR_EP', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_MODULATEUR_EP_SOURCE_FK' => + array ( + 'name' => 'TYPE_MODULATEUR_EP_SOURCE_FK', + 'unique' => false, + 'table' => 'TYPE_MODULATEUR_EP', + 'columns' => + array ( + 0 => 'SOURCE_ID', + ), + ), + 'TYPE_MODULATEUR_EP__UN' => + array ( + 'name' => 'TYPE_MODULATEUR_EP__UN', + 'unique' => true, + 'table' => 'TYPE_MODULATEUR_EP', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + ), + ), + 'TYPE_MODULATEUR_EP__UNV1' => + array ( + 'name' => 'TYPE_MODULATEUR_EP__UNV1', + 'unique' => true, + 'table' => 'TYPE_MODULATEUR_EP', + 'columns' => + array ( + 0 => 'TYPE_MODULATEUR_ID', + 1 => 'ELEMENT_PEDAGOGIQUE_ID', + ), + ), + 'TYPE_MODULATEUR_HCFK_IDX' => + array ( + 'name' => 'TYPE_MODULATEUR_HCFK_IDX', + 'unique' => false, + 'table' => 'TYPE_MODULATEUR', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'TYPE_MODULATEUR_HDFK_IDX' => + array ( + 'name' => 'TYPE_MODULATEUR_HDFK_IDX', + 'unique' => false, + 'table' => 'TYPE_MODULATEUR', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'TYPE_MODULATEUR_HMFK_IDX' => + array ( + 'name' => 'TYPE_MODULATEUR_HMFK_IDX', + 'unique' => false, + 'table' => 'TYPE_MODULATEUR', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'TYPE_MODULATEUR_PK' => + array ( + 'name' => 'TYPE_MODULATEUR_PK', + 'unique' => true, + 'table' => 'TYPE_MODULATEUR', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_MODULATEUR_STRUCTURE_HCFK' => + array ( + 'name' => 'TYPE_MODULATEUR_STRUCTURE_HCFK', + 'unique' => false, + 'table' => 'TYPE_MODULATEUR_STRUCTURE', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'TYPE_MODULATEUR_STRUCTURE_HDFK' => + array ( + 'name' => 'TYPE_MODULATEUR_STRUCTURE_HDFK', + 'unique' => false, + 'table' => 'TYPE_MODULATEUR_STRUCTURE', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'TYPE_MODULATEUR_STRUCTURE_HMFK' => + array ( + 'name' => 'TYPE_MODULATEUR_STRUCTURE_HMFK', + 'unique' => false, + 'table' => 'TYPE_MODULATEUR_STRUCTURE', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'TYPE_MODULATEUR_STRUCTURE_PK' => + array ( + 'name' => 'TYPE_MODULATEUR_STRUCTURE_PK', + 'unique' => true, + 'table' => 'TYPE_MODULATEUR_STRUCTURE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_MODULATEUR_STRUCTURE_UN' => + array ( + 'name' => 'TYPE_MODULATEUR_STRUCTURE_UN', + 'unique' => true, + 'table' => 'TYPE_MODULATEUR_STRUCTURE', + 'columns' => + array ( + 0 => 'TYPE_MODULATEUR_ID', + 1 => 'STRUCTURE_ID', + 2 => 'ANNEE_DEBUT_ID', + 3 => 'HISTO_DESTRUCTION', + ), + ), + 'TYPE_PIECE_JOINTE_HCFK_IDX' => + array ( + 'name' => 'TYPE_PIECE_JOINTE_HCFK_IDX', + 'unique' => false, + 'table' => 'TYPE_PIECE_JOINTE', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'TYPE_PIECE_JOINTE_HDFK_IDX' => + array ( + 'name' => 'TYPE_PIECE_JOINTE_HDFK_IDX', + 'unique' => false, + 'table' => 'TYPE_PIECE_JOINTE', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'TYPE_PIECE_JOINTE_HMFK_IDX' => + array ( + 'name' => 'TYPE_PIECE_JOINTE_HMFK_IDX', + 'unique' => false, + 'table' => 'TYPE_PIECE_JOINTE', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'TYPE_PIECE_JOINTE_PK' => + array ( + 'name' => 'TYPE_PIECE_JOINTE_PK', + 'unique' => true, + 'table' => 'TYPE_PIECE_JOINTE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_PIECE_JOINTE_STATUT_HCFK' => + array ( + 'name' => 'TYPE_PIECE_JOINTE_STATUT_HCFK', + 'unique' => false, + 'table' => 'TYPE_PIECE_JOINTE_STATUT', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'TYPE_PIECE_JOINTE_STATUT_HDFK' => + array ( + 'name' => 'TYPE_PIECE_JOINTE_STATUT_HDFK', + 'unique' => false, + 'table' => 'TYPE_PIECE_JOINTE_STATUT', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'TYPE_PIECE_JOINTE_STATUT_HMFK' => + array ( + 'name' => 'TYPE_PIECE_JOINTE_STATUT_HMFK', + 'unique' => false, + 'table' => 'TYPE_PIECE_JOINTE_STATUT', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'TYPE_PIECE_JOINTE_STATUT_PK' => + array ( + 'name' => 'TYPE_PIECE_JOINTE_STATUT_PK', + 'unique' => true, + 'table' => 'TYPE_PIECE_JOINTE_STATUT', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_RESSOURCE_FA' => + array ( + 'name' => 'TYPE_RESSOURCE_FA', + 'unique' => false, + 'table' => 'TYPE_RESSOURCE', + 'columns' => + array ( + 0 => 'FA', + ), + ), + 'TYPE_RESSOURCE_FC' => + array ( + 'name' => 'TYPE_RESSOURCE_FC', + 'unique' => false, + 'table' => 'TYPE_RESSOURCE', + 'columns' => + array ( + 0 => 'FC', + ), + ), + 'TYPE_RESSOURCE_FI' => + array ( + 'name' => 'TYPE_RESSOURCE_FI', + 'unique' => false, + 'table' => 'TYPE_RESSOURCE', + 'columns' => + array ( + 0 => 'FI', + ), + ), + 'TYPE_RESSOURCE_HCFK_IDX' => + array ( + 'name' => 'TYPE_RESSOURCE_HCFK_IDX', + 'unique' => false, + 'table' => 'TYPE_RESSOURCE', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'TYPE_RESSOURCE_HDFK_IDX' => + array ( + 'name' => 'TYPE_RESSOURCE_HDFK_IDX', + 'unique' => false, + 'table' => 'TYPE_RESSOURCE', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'TYPE_RESSOURCE_HMFK_IDX' => + array ( + 'name' => 'TYPE_RESSOURCE_HMFK_IDX', + 'unique' => false, + 'table' => 'TYPE_RESSOURCE', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'TYPE_RESSOURCE_PK' => + array ( + 'name' => 'TYPE_RESSOURCE_PK', + 'unique' => true, + 'table' => 'TYPE_RESSOURCE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_RESSOURCE_REF' => + array ( + 'name' => 'TYPE_RESSOURCE_REF', + 'unique' => false, + 'table' => 'TYPE_RESSOURCE', + 'columns' => + array ( + 0 => 'REFERENTIEL', + ), + ), + 'TYPE_VALIDATION_PK' => + array ( + 'name' => 'TYPE_VALIDATION_PK', + 'unique' => true, + 'table' => 'TYPE_VALIDATION', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_VOLUME_HORAIRE_PK' => + array ( + 'name' => 'TYPE_VOLUME_HORAIRE_PK', + 'unique' => true, + 'table' => 'TYPE_VOLUME_HORAIRE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'TYPE_VOLUME_HORAIRE__UN' => + array ( + 'name' => 'TYPE_VOLUME_HORAIRE__UN', + 'unique' => true, + 'table' => 'TYPE_VOLUME_HORAIRE', + 'columns' => + array ( + 0 => 'CODE', + ), + ), + 'USER_PASSWORD_RESET_TOKEN_UN' => + array ( + 'name' => 'USER_PASSWORD_RESET_TOKEN_UN', + 'unique' => true, + 'table' => 'UTILISATEUR', + 'columns' => + array ( + 0 => 'PASSWORD_RESET_TOKEN', + ), + ), + 'UTILISATEUR_PK' => + array ( + 'name' => 'UTILISATEUR_PK', + 'unique' => true, + 'table' => 'UTILISATEUR', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'UTILISATEUR_USERNAME_UN' => + array ( + 'name' => 'UTILISATEUR_USERNAME_UN', + 'unique' => true, + 'table' => 'UTILISATEUR', + 'columns' => + array ( + 0 => 'USERNAME', + ), + ), + 'VALIDATION_HCFK_IDX' => + array ( + 'name' => 'VALIDATION_HCFK_IDX', + 'unique' => false, + 'table' => 'VALIDATION', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'VALIDATION_HDFK_IDX' => + array ( + 'name' => 'VALIDATION_HDFK_IDX', + 'unique' => false, + 'table' => 'VALIDATION', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'VALIDATION_HMFK_IDX' => + array ( + 'name' => 'VALIDATION_HMFK_IDX', + 'unique' => false, + 'table' => 'VALIDATION', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'VALIDATION_INTERVENANT_FK_IDX' => + array ( + 'name' => 'VALIDATION_INTERVENANT_FK_IDX', + 'unique' => false, + 'table' => 'VALIDATION', + 'columns' => + array ( + 0 => 'INTERVENANT_ID', + ), + ), + 'VALIDATION_PK' => + array ( + 'name' => 'VALIDATION_PK', + 'unique' => true, + 'table' => 'VALIDATION', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'VALIDATION_STRUCTURE_FK_IDX' => + array ( + 'name' => 'VALIDATION_STRUCTURE_FK_IDX', + 'unique' => false, + 'table' => 'VALIDATION', + 'columns' => + array ( + 0 => 'STRUCTURE_ID', + ), + ), + 'VALIDATION_TYPE_VALIDATION_FK' => + array ( + 'name' => 'VALIDATION_TYPE_VALIDATION_FK', + 'unique' => false, + 'table' => 'VALIDATION', + 'columns' => + array ( + 0 => 'TYPE_VALIDATION_ID', + ), + ), + 'VALIDATION_VOL_HORAIRE_PK' => + array ( + 'name' => 'VALIDATION_VOL_HORAIRE_PK', + 'unique' => true, + 'table' => 'VALIDATION_VOL_HORAIRE', + 'columns' => + array ( + 0 => 'VALIDATION_ID', + 1 => 'VOLUME_HORAIRE_ID', + ), + ), + 'VALIDATION_VOL_HORAIRE_REF_PK' => + array ( + 'name' => 'VALIDATION_VOL_HORAIRE_REF_PK', + 'unique' => true, + 'table' => 'VALIDATION_VOL_HORAIRE_REF', + 'columns' => + array ( + 0 => 'VALIDATION_ID', + 1 => 'VOLUME_HORAIRE_REF_ID', + ), + ), + 'VERSION_PK' => + array ( + 'name' => 'VERSION_PK', + 'unique' => true, + 'table' => 'VERSION', + 'columns' => + array ( + 0 => 'NUMERO', + ), + ), + 'VHC_HISTO_UN' => + array ( + 'name' => 'VHC_HISTO_UN', + 'unique' => true, + 'table' => 'VOLUME_HORAIRE_CHARGE', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'VHC_SCENARIO_FK' => + array ( + 'name' => 'VHC_SCENARIO_FK', + 'unique' => false, + 'table' => 'VOLUME_HORAIRE_CHARGE', + 'columns' => + array ( + 0 => 'SCENARIO_ID', + ), + ), + 'VHC_TYPE_INTERVENTION_FK' => + array ( + 'name' => 'VHC_TYPE_INTERVENTION_FK', + 'unique' => false, + 'table' => 'VOLUME_HORAIRE_CHARGE', + 'columns' => + array ( + 0 => 'TYPE_INTERVENTION_ID', + ), + ), + 'VHENS_ELEMENT_PEDAGOGIQUE_FK' => + array ( + 'name' => 'VHENS_ELEMENT_PEDAGOGIQUE_FK', + 'unique' => false, + 'table' => 'VOLUME_HORAIRE_ENS', + 'columns' => + array ( + 0 => 'ELEMENT_PEDAGOGIQUE_ID', + ), + ), + 'VHENS_TYPE_INTERVENTION_FK_IDX' => + array ( + 'name' => 'VHENS_TYPE_INTERVENTION_FK_IDX', + 'unique' => false, + 'table' => 'VOLUME_HORAIRE_ENS', + 'columns' => + array ( + 0 => 'TYPE_INTERVENTION_ID', + ), + ), + 'VHIT_FK_IDX' => + array ( + 'name' => 'VHIT_FK_IDX', + 'unique' => false, + 'table' => 'VOLUME_HORAIRE', + 'columns' => + array ( + 0 => 'TYPE_INTERVENTION_ID', + ), + ), + 'VHMNP_FK_IDX' => + array ( + 'name' => 'VHMNP_FK_IDX', + 'unique' => false, + 'table' => 'VOLUME_HORAIRE', + 'columns' => + array ( + 0 => 'MOTIF_NON_PAIEMENT_ID', + ), + ), + 'VHR_SERVICE_REFERENTIEL_FK_IDX' => + array ( + 'name' => 'VHR_SERVICE_REFERENTIEL_FK_IDX', + 'unique' => false, + 'table' => 'VOLUME_HORAIRE_REF', + 'columns' => + array ( + 0 => 'SERVICE_REFERENTIEL_ID', + ), + ), + 'VHR_TYPE_VOLUME_HORAIRE_FK_IDX' => + array ( + 'name' => 'VHR_TYPE_VOLUME_HORAIRE_FK_IDX', + 'unique' => false, + 'table' => 'VOLUME_HORAIRE_REF', + 'columns' => + array ( + 0 => 'TYPE_VOLUME_HORAIRE_ID', + ), + ), + 'VH_PERIODE_FK_IDX' => + array ( + 'name' => 'VH_PERIODE_FK_IDX', + 'unique' => false, + 'table' => 'VOLUME_HORAIRE', + 'columns' => + array ( + 0 => 'PERIODE_ID', + ), + ), + 'VH_TYPE_VOLUME_HORAIRE_FK_IDX' => + array ( + 'name' => 'VH_TYPE_VOLUME_HORAIRE_FK_IDX', + 'unique' => false, + 'table' => 'VOLUME_HORAIRE', + 'columns' => + array ( + 0 => 'TYPE_VOLUME_HORAIRE_ID', + ), + ), + 'VOLUMES_HORAIRES_SERVICES_FK' => + array ( + 'name' => 'VOLUMES_HORAIRES_SERVICES_FK', + 'unique' => false, + 'table' => 'VOLUME_HORAIRE', + 'columns' => + array ( + 0 => 'SERVICE_ID', + ), + ), + 'VOLUME_HORAIRE_CHARGE_HCFK' => + array ( + 'name' => 'VOLUME_HORAIRE_CHARGE_HCFK', + 'unique' => false, + 'table' => 'VOLUME_HORAIRE_CHARGE', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'VOLUME_HORAIRE_CHARGE_HDFK' => + array ( + 'name' => 'VOLUME_HORAIRE_CHARGE_HDFK', + 'unique' => false, + 'table' => 'VOLUME_HORAIRE_CHARGE', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'VOLUME_HORAIRE_CHARGE_HMFK' => + array ( + 'name' => 'VOLUME_HORAIRE_CHARGE_HMFK', + 'unique' => false, + 'table' => 'VOLUME_HORAIRE_CHARGE', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'VOLUME_HORAIRE_CHARGE_PK' => + array ( + 'name' => 'VOLUME_HORAIRE_CHARGE_PK', + 'unique' => true, + 'table' => 'VOLUME_HORAIRE_CHARGE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'VOLUME_HORAIRE_CHARGE__UN' => + array ( + 'name' => 'VOLUME_HORAIRE_CHARGE__UN', + 'unique' => true, + 'table' => 'VOLUME_HORAIRE_CHARGE', + 'columns' => + array ( + 0 => 'ELEMENT_PEDAGOGIQUE_ID', + 1 => 'TYPE_INTERVENTION_ID', + 2 => 'HISTO_DESTRUCTION', + ), + ), + 'VOLUME_HORAIRE_CHARG_SOURCE_FK' => + array ( + 'name' => 'VOLUME_HORAIRE_CHARG_SOURCE_FK', + 'unique' => false, + 'table' => 'VOLUME_HORAIRE_CHARGE', + 'columns' => + array ( + 0 => 'SOURCE_ID', + ), + ), + 'VOLUME_HORAIRE_CONTRAT_FK_IDX' => + array ( + 'name' => 'VOLUME_HORAIRE_CONTRAT_FK_IDX', + 'unique' => false, + 'table' => 'VOLUME_HORAIRE', + 'columns' => + array ( + 0 => 'CONTRAT_ID', + ), + ), + 'VOLUME_HORAIRE_ENS_HCFK_IDX' => + array ( + 'name' => 'VOLUME_HORAIRE_ENS_HCFK_IDX', + 'unique' => false, + 'table' => 'VOLUME_HORAIRE_ENS', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'VOLUME_HORAIRE_ENS_HDFK_IDX' => + array ( + 'name' => 'VOLUME_HORAIRE_ENS_HDFK_IDX', + 'unique' => false, + 'table' => 'VOLUME_HORAIRE_ENS', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'VOLUME_HORAIRE_ENS_HMFK_IDX' => + array ( + 'name' => 'VOLUME_HORAIRE_ENS_HMFK_IDX', + 'unique' => false, + 'table' => 'VOLUME_HORAIRE_ENS', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'VOLUME_HORAIRE_ENS_PK' => + array ( + 'name' => 'VOLUME_HORAIRE_ENS_PK', + 'unique' => true, + 'table' => 'VOLUME_HORAIRE_ENS', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'VOLUME_HORAIRE_ENS_SOURCE_FK' => + array ( + 'name' => 'VOLUME_HORAIRE_ENS_SOURCE_FK', + 'unique' => false, + 'table' => 'VOLUME_HORAIRE_ENS', + 'columns' => + array ( + 0 => 'SOURCE_ID', + ), + ), + 'VOLUME_HORAIRE_ENS_UK1' => + array ( + 'name' => 'VOLUME_HORAIRE_ENS_UK1', + 'unique' => true, + 'table' => 'VOLUME_HORAIRE_ENS', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'VOLUME_HORAIRE_HCFK_IDX' => + array ( + 'name' => 'VOLUME_HORAIRE_HCFK_IDX', + 'unique' => false, + 'table' => 'VOLUME_HORAIRE', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'VOLUME_HORAIRE_HDFK_IDX' => + array ( + 'name' => 'VOLUME_HORAIRE_HDFK_IDX', + 'unique' => false, + 'table' => 'VOLUME_HORAIRE', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'VOLUME_HORAIRE_HEURES_IDX' => + array ( + 'name' => 'VOLUME_HORAIRE_HEURES_IDX', + 'unique' => false, + 'table' => 'VOLUME_HORAIRE', + 'columns' => + array ( + 0 => 'HEURES', + ), + ), + 'VOLUME_HORAIRE_HMFK_IDX' => + array ( + 'name' => 'VOLUME_HORAIRE_HMFK_IDX', + 'unique' => false, + 'table' => 'VOLUME_HORAIRE', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'VOLUME_HORAIRE_PK' => + array ( + 'name' => 'VOLUME_HORAIRE_PK', + 'unique' => true, + 'table' => 'VOLUME_HORAIRE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'VOLUME_HORAIRE_REF_HCFK_IDX' => + array ( + 'name' => 'VOLUME_HORAIRE_REF_HCFK_IDX', + 'unique' => false, + 'table' => 'VOLUME_HORAIRE_REF', + 'columns' => + array ( + 0 => 'HISTO_CREATEUR_ID', + ), + ), + 'VOLUME_HORAIRE_REF_HDFK_IDX' => + array ( + 'name' => 'VOLUME_HORAIRE_REF_HDFK_IDX', + 'unique' => false, + 'table' => 'VOLUME_HORAIRE_REF', + 'columns' => + array ( + 0 => 'HISTO_DESTRUCTEUR_ID', + ), + ), + 'VOLUME_HORAIRE_REF_HMFK_IDX' => + array ( + 'name' => 'VOLUME_HORAIRE_REF_HMFK_IDX', + 'unique' => false, + 'table' => 'VOLUME_HORAIRE_REF', + 'columns' => + array ( + 0 => 'HISTO_MODIFICATEUR_ID', + ), + ), + 'VOLUME_HORAIRE_REF_PK' => + array ( + 'name' => 'VOLUME_HORAIRE_REF_PK', + 'unique' => true, + 'table' => 'VOLUME_HORAIRE_REF', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'VOLUME_HORAIRE_REF_SOURCE_UN' => + array ( + 'name' => 'VOLUME_HORAIRE_REF_SOURCE_UN', + 'unique' => true, + 'table' => 'VOLUME_HORAIRE_REF', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'VOLUME_HORAIRE_SOURCE_UN' => + array ( + 'name' => 'VOLUME_HORAIRE_SOURCE_UN', + 'unique' => true, + 'table' => 'VOLUME_HORAIRE', + 'columns' => + array ( + 0 => 'SOURCE_CODE', + 1 => 'HISTO_DESTRUCTION', + ), + ), + 'VVHR_VALIDATION_FK_IDX' => + array ( + 'name' => 'VVHR_VALIDATION_FK_IDX', + 'unique' => false, + 'table' => 'VALIDATION_VOL_HORAIRE_REF', + 'columns' => + array ( + 0 => 'VALIDATION_ID', + ), + ), + 'VVHR_VOLUME_HORAIRE_REF_FK_IDX' => + array ( + 'name' => 'VVHR_VOLUME_HORAIRE_REF_FK_IDX', + 'unique' => false, + 'table' => 'VALIDATION_VOL_HORAIRE_REF', + 'columns' => + array ( + 0 => 'VOLUME_HORAIRE_REF_ID', + ), + ), + 'VVH_VALIDATION_FK_IDX' => + array ( + 'name' => 'VVH_VALIDATION_FK_IDX', + 'unique' => false, + 'table' => 'VALIDATION_VOL_HORAIRE', + 'columns' => + array ( + 0 => 'VALIDATION_ID', + ), + ), + 'VVH_VOLUME_HORAIRE_FK_IDX' => + array ( + 'name' => 'VVH_VOLUME_HORAIRE_FK_IDX', + 'unique' => false, + 'table' => 'VALIDATION_VOL_HORAIRE', + 'columns' => + array ( + 0 => 'VOLUME_HORAIRE_ID', + ), + ), + 'WE_PREC_WE_FK_IDX' => + array ( + 'name' => 'WE_PREC_WE_FK_IDX', + 'unique' => false, + 'table' => 'WF_ETAPE_DEP', + 'columns' => + array ( + 0 => 'ETAPE_PREC_ID', + ), + ), + 'WE_SUIV_WE_FK_IDX' => + array ( + 'name' => 'WE_SUIV_WE_FK_IDX', + 'unique' => false, + 'table' => 'WF_ETAPE_DEP', + 'columns' => + array ( + 0 => 'ETAPE_SUIV_ID', + ), + ), + 'WE_TYPE_INTERVENANT_FK_IDX' => + array ( + 'name' => 'WE_TYPE_INTERVENANT_FK_IDX', + 'unique' => false, + 'table' => 'WF_ETAPE_DEP', + 'columns' => + array ( + 0 => 'TYPE_INTERVENANT_ID', + ), + ), + 'WF_DB_ETAPE_DEP_FK_IDX' => + array ( + 'name' => 'WF_DB_ETAPE_DEP_FK_IDX', + 'unique' => false, + 'table' => 'WF_DEP_BLOQUANTE', + 'columns' => + array ( + 0 => 'WF_ETAPE_DEP_ID', + ), + ), + 'WF_DB_TBL_WORKFLOW_FK_IDX' => + array ( + 'name' => 'WF_DB_TBL_WORKFLOW_FK_IDX', + 'unique' => false, + 'table' => 'WF_DEP_BLOQUANTE', + 'columns' => + array ( + 0 => 'TBL_WORKFLOW_ID', + ), + ), + 'WF_DEPS_BLOQUANTES_PK_IDX' => + array ( + 'name' => 'WF_DEPS_BLOQUANTES_PK_IDX', + 'unique' => true, + 'table' => 'WF_DEP_BLOQUANTE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'WF_ETAPE_CODE_UN' => + array ( + 'name' => 'WF_ETAPE_CODE_UN', + 'unique' => true, + 'table' => 'WF_ETAPE', + 'columns' => + array ( + 0 => 'CODE', + ), + ), + 'WF_ETAPE_DEP_PK' => + array ( + 'name' => 'WF_ETAPE_DEP_PK', + 'unique' => true, + 'table' => 'WF_ETAPE_DEP', + 'columns' => + array ( + 0 => 'ID', + ), + ), + 'WF_ETAPE_DEP_PK_IDX' => + array ( + 'name' => 'WF_ETAPE_DEP_PK_IDX', + 'unique' => true, + 'table' => 'WF_ETAPE_DEP', + 'columns' => + array ( + 0 => 'ETAPE_PREC_ID', + 1 => 'ETAPE_SUIV_ID', + ), + ), + 'WF_ETAPE_DEP__UN_IDX' => + array ( + 'name' => 'WF_ETAPE_DEP__UN_IDX', + 'unique' => true, + 'table' => 'WF_ETAPE_DEP', + 'columns' => + array ( + 0 => 'ETAPE_SUIV_ID', + 1 => 'ETAPE_PREC_ID', + ), + ), + 'WF_ETAPE_ORDRE_UN' => + array ( + 'name' => 'WF_ETAPE_ORDRE_UN', + 'unique' => true, + 'table' => 'WF_ETAPE', + 'columns' => + array ( + 0 => 'ORDRE', + ), + ), + 'WF_ETAPE_PK' => + array ( + 'name' => 'WF_ETAPE_PK', + 'unique' => true, + 'table' => 'WF_ETAPE', + 'columns' => + array ( + 0 => 'ID', + ), + ), + ), +); \ No newline at end of file -- GitLab