Commit 548ef2e1 authored by Bertrand Gauthier's avatar Bertrand Gauthier
Browse files

Doc de version 1.2.3.

parent e040233d
Loading
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
@@ -49,3 +49,16 @@ des acteurs.
- [FEATURE] Nouvelle colonne dans la vue SYGAL_THESE : année universitaire de première inscription en thèse.
- [FEATURE] Nouvelle vue SYGAL_THESE_ANNEE_UNIV : liste pour chaque thèse de toutes les années universitaires 
            où le doctorant était inscrit en thèse.

## v1.2.3 (29/01/2019)

- [FEATURE] La vue `SYGAL_FINANCEMENT` tente une "synthèse" des financements. 

    L'idée est de ne retenir qu'une année (la plus ancienne) par thèse et par origine de financement :
    - en concaténant les observations (COMPLEMENT_FINANCEMENT)
    - en cumulant les quotités
    - en retenant la plus petite date de début de financement
    - en retenant la plus grande date de fin de financement.
    
    On n'exclue plus les financements pour lesquels l'année n'est pas renseignée. 
    Quand le cas se présente on force par la 1ère année d'inscription administrative en thèse.
+98 −0
Original line number Diff line number Diff line
# v1.2.3


## Sources PHP

Sur le serveur, placez-vous dans le répertoire du web service (sans doute `/var/www/sygal-import-ws`) 
puis lancez les commandes suivantes pour installer la nouvelle version :
```bash
git fetch && git fetch --tags && git checkout --force 1.2.3 && bash install.sh
```

Selon le moteur PHP que vous avez installé, rechargez le service, exemple :
  - php7.0-fpm         : `service php7.0-fpm reload`
  - apache2-mod-php7.0 : `service apache2 reload`


## Base de données

### Apogée

La vue `SYGAL_FINANCEMENT` doit être mise à jour. 

L'idée de la nouvelle version est de ne retenir qu'une année (la plus ancienne) par thèse et par origine de financement :
- en concaténant les observations (COMPLEMENT_FINANCEMENT)
- en cumulant les quotités
- en retenant la plus petite date de début de financement
- en retenant la plus grande date de fin de financement.
On n'exclue plus les financements pour lesquels l'année n'est pas renseignée. 
Quand le cas se présente on force par la 1ère année d'inscription administrative en thèse.

Exemple d'une thèse de Caen :

Ancienne vue :

      ID SOURCE   THESE_ID ANNE OR COMPLEMENT_FINANCEMENT                                   QUOTITE_FINANCEMENT DATE_DEB DATE_FIN
    ---- ------ ---------- ---- -- -------------------------------------------------------- ------------------- -------- --------
    1192 apogee      12350 2016 32 Bourse ARS                                                                   01/11/16 30/10/17
    1193 apogee      12350 2017 32 Internat Baclesse Caen                                                       01/11/17 30/05/18
    1194 apogee      12350 2018 32 Fonds propres ABTE                                                           01/06/18 30/10/19

Nouvelle vue :

      ID SOURCE   THESE_ID ANNE OR COMPLEMENT_FINANCEMENT                                   QUOTITE_FINANCEMENT DATE_DEB DATE_FIN
    ---- ------ ---------- ---- -- -------------------------------------------------------- ------------------- -------- --------
    1192 apogee      12350 2016 32 Bourse ARS / Internat Baclesse Caen / Fonds propres ABTE                     01/11/16 30/10/19

Voici le nouveau script de la vue `SYGAL_FINANCEMENT` :

```sql
CREATE OR REPLACE VIEW "SYGAL_FINANCEMENT" ( "ID", "SOURCE_ID", "THESE_ID", "ANNEE_ID", "ORIGINE_FINANCEMENT_ID", "COMPLEMENT_FINANCEMENT", "QUOTITE_FINANCEMENT", "DATE_DEBUT_FINANCEMENT", "DATE_FIN_FINANCEMENT" ) AS 
with inscription_admin as (
  select
    iae.cod_ind,
    iae.cod_dip,
    iae.cod_vrs_vdi,
    dip.lib_dip,
    min ( iae.cod_anu ) cod_anu_prm_iae
  from ins_adm_etp iae
  join diplome     dip on dip.cod_dip     = iae.cod_dip
  join typ_diplome tpd on tpd.cod_tpd_etb = dip.cod_tpd_etb
  where iae.eta_iae         =  'E'  -- Inscription administrative non annulee
    and iae.eta_pmt_iae     =  'P'  -- Inscription administrative payee
    and dip.cod_tpd_etb     in ( '39', '40' )
    and tpd.eta_ths_hdr_drt =  'T'  -- Inscription en these
    and tpd.tem_sante       =  'N'  -- Exclusion des theses d exercice
  group by
    iae.cod_ind,
    iae.cod_dip,
    iae.cod_vrs_vdi,
    dip.lib_dip
    )
select
  min ( tfi.cod_seq_tfi )                          as id,       -- Premier numero de sequence du financement
  'apogee'                                         as source_id,
  tfi.cod_ths                                      as these_id,
  min ( nvl ( tfi.cod_anu, iae.cod_anu_prm_iae ) ) as annee_id, -- Identifiant de l annee universitaire (ex. 2018 pour 2018/2019)
  tfi.cod_ofi                                      as origine_financement_id,
  listagg ( tfi.compl_tfi, ' / ' ) within group ( order by tfi.cod_ths, tfi.cod_ofi, tfi.quotite_tfi, nvl ( tfi.cod_anu, iae.cod_anu_prm_iae ), tfi.cod_seq_tfi ) as complement_financement,
  tfi.quotite_tfi                                  as quotite_financement,
  min ( tfi.dat_deb_tfi )                          as date_debut_financement,
  max ( tfi.dat_fin_tfi )                          as date_fin_financement
from inscription_admin   iae
join these_hdr_sout      ths on ths.cod_ind     = iae.cod_ind and ths.cod_dip = iae.cod_dip and ths.cod_vrs_vdi = iae.cod_vrs_vdi
join ths_financement     tfi on tfi.cod_ths     = ths.cod_ths
join origine_financement ofi on ofi.cod_ofi     = tfi.cod_ofi
where ths.cod_ths_trv     = '1'     -- Exclusion des travaux
  and ofi.tem_en_sve_ofi  = 'O'     -- Exclusion des anciens codes des origines de financements
group by
  tfi.cod_ths,
  tfi.cod_ofi,
  tfi.quotite_tfi
/
```

### Physalis

Vue `SYGAL_FINANCEMENT` à écrire ! 
Cf. explications concernant Apogée ci-dessus.