Commit 2511a1bd authored by Laurent Lecluse's avatar Laurent Lecluse
Browse files

Merge branch 'master' of https://git.unicaen.fr/open-source/OSE into plafonds-perso

parents 16f86fc8 80f00db5
Loading
Loading
Loading
Loading
+10 −2
Changes for CHANGELOG.md: 10 added lines, 2 removed lines.
Original line number Diff line number Diff line
@@ -38,10 +38,18 @@ Objectif : Connecteur import Actul+ & système différentiel pour comparer des c



# OSE 15.5 (01/07/2021)
# OSE 15.6 (à venir)

## Correction de bug

* Dans ODF, la liste des éléments dont on peut forcer la synchronisation tient maintenant compte des données à restaurer en plus de celles à insérer



# OSE 15.5 (01/07/2021)

## Correction de bugs

* Retour de la vua matérialisée MV_EXT_SERVICE qui avait disparu de OSE par erreur depuis la V15
* Correction d'un problème de MAJ de MV_EXT_SERVICE depuis la 15.4 qui provoquait une erreur suite à la l'ajout d'une colonne sur l'export des services.  

@@ -58,7 +66,7 @@ Objectif : Connecteur import Actul+ & système différentiel pour comparer des c
* Formules de calcul de Sorbonne Nouvelle et de La Réunion
* Ajout de la colonne "code RH" à l'export CSV des services

## Correction de bug
## Correction de bugs

* Inversion d'affichage Fi et Fa dans administration > type de ressources (#38510)
* Meilleur rafraichissement de la feuille de route suite à la completion des données personnelles
+106 −0
Changes for doc%2FConnecteurs-Import%2FSiham%2FPartie_B_SIHAM_INTERV%2FB2_SIHAM_INTERV_Scripts/lance_synchro_Siham_Ose_2021.sql: 106 added lines, 0 removed lines.
Original line number Diff line number Diff line
set heading off
set pagesize 0
set feedback off
set echo off
set verify off
set linesize 1000
set trimspool on
set serveroutput on
spool /data/appli/ose/cron/log_siham/PREP2_trace_sql_synchro_Siham_Ose.lst append;
--spool C:\temp\Toad_exports\trace_sql_synchro_Siham_Ose.lst;
--select '---------- '||name from v$database;
select rpad('_____________ Debut synchro_Siham_ose sql :'||to_char(sysdate,'DD/MM/YYYY HH24:MI:SS'),106,'_') from dual;

set serveroutput on size unlimited

DECLARE
/* ------------------------------------------------------------------------------------------ 
   PARTIE B/ SIHAM_REF : synchro des INTERVENANTS
   
   SIHAM => OSE synchro en insert ou update  dans UM_INTERVENANT
  -------------------------------------------------------------------------------------------  
*/ 
-- VARIABLES A PARAMETRER ----------------------------
v_annee_id              number(9)		:= 2021;  				-- ANNEE_ID de OSE : param manuellement et alim auto de v_d_deb_annee_univ v_d_fin_annee_univ
v_date_systeme          date			:= to_date('01/09/'||to_char(v_annee_id),'DD/MM/YYYY');  	-- date d'observation (par défaut sysdate, mais on peut générer tous les ACTIFS pour une date passée)
																-- !!  Pour que les SYNCHRO fonctionnent IL FAUT QUE  v_d_deb_annee_univ <= v_date_systeme <= v_d_fin_annee_univ.

v_type_transfert        varchar2(10)    := 'ACTIFS';          	-- Valeurs 'MANUEL'/'DIFF'/'ACTIFS'
v_date_profondeur		date			:= to_date('01/09/'||to_char(v_annee_id),'DD/MM/YYYY');
--trunc(sysdate-2); 	-- dans le cas de DIFF : synchronise les dossiers modifiés dans Siham depuis cette date

/* ------------------------------------------------------------------------------------------
!! BIEN REGLER LES VARIABLES CI-DESSUS : cf. détails Doc MOP_SYNCHRO_OSE_RH_v1.3_L.docx

	MANU : 	Mode manuel = que les dossiers à forcer insérés manuellement dans UM_TRANSFERT_FORCE (ne tient pas compte de v_date_profondeur)
	
	DIFF : 	Différentiel journalier pour les dossiers modifiés dans Siham du v_date_profondeur au v_date_systeme
			OU Forcés (UM_TRANSFERT_FORCE) OU dossiers OREC							
				Par ex : diff depuis la veille : 2020/trunc(sysdate)/'DIFF'/trunc(sysdate-1)							
						 diff depuis 15 jours  : 2020/trunc(sysdate)/'DIFF'/trunc(sysdate-15)	
		
    ACTIFS : tous les ACTIFS à la date v_date_systeme (ne tient pas compte de v_date_profondeur)
				Par ex : tous les actifs à ce jour : 2020/trunc(sysdate)/'ACTIFS'/trunc(sysdate) 
						 tous les actifs au 02/10/2020 : 2020/trunc(to_date('02/10/2020','DD/MM/YYYY'))/'ROSE'/'ACTIFS'/trunc(sysdate)
------------------------------------------------------------------------------------------ */

-- VARIABLES DE TRAITEMENT ----------------------------
v_d_deb_annee_univ            date := to_date('01/09/'||to_char(v_annee_id),'DD/MM/YYYY');
v_d_fin_annee_univ            date := to_date('31/08/'||to_char(v_annee_id+1),'DD/MM/YYYY');
v_source_id                   number(2) := 0;
v_nb_dossier_traites          number(9) := 0;
v_nb_multi_statut_insert_auto 	number(9) := 0;											  
  
BEGIN
  -- Pour obliger à avoir une v_date_systeme dans l'année synchronisée
  IF v_date_systeme < v_d_deb_annee_univ THEN v_date_systeme := v_d_deb_annee_univ;
  ELSE
	IF v_date_systeme > v_d_fin_annee_univ THEN v_date_systeme := v_d_fin_annee_univ;
	END IF;
  END IF;

  IF v_type_transfert = 'DIFF' and v_date_systeme < v_date_profondeur THEN
    dbms_output.put_line('Lancement DIFF impossible, la date de profondeur doit etre <= a la date systeme ');
  ELSE
	select id INTO v_source_id from OSE.SOURCE where code = 'Siham'; 	-- ##A_PERSONNALISER_CHOIX_OSE## suivant votre declaration de connecteur

	dbms_output.put_line('_____');
	dbms_output.put_line(rpad('_____ ETAPE 0 : PURGE traces derniere synchro (UM_TRANSFERT_INDIVIDUS) :'||v_annee_id,106,'_'));
	UM_PURGE_UM_TRANSFERT_INDIVIDU(v_annee_id);
	
	select count(*) INTO v_nb_dossier_traites from UM_TRANSFERT_INDIVIDU where annee_id = v_annee_id;
	dbms_output.put_line('   Nb d''enreg restant sur '||v_annee_id||' : '||v_nb_dossier_traites);  -- v2.1
	
    /*==========================  SELECTION DOSSIER INTERVENANT =========================================*/
	dbms_output.put_line('_____');
	dbms_output.put_line(rpad('_____ ETAPE 1 : SELECTION dossiers (UM_TRANSFERT_INDIVIDUS) pour annee : '||to_char(v_d_deb_annee_univ,'DD/MM/YYYY')||' - '||to_char(v_d_fin_annee_univ,'DD/MM/YYYY'),106,'_'));
	UM_SELECT_INTERVENANT(v_annee_id, v_d_deb_annee_univ, v_d_fin_annee_univ, v_type_transfert, v_date_profondeur, v_date_systeme);
    dbms_output.put_line('      => Apres SELECT intervenant : '||to_char(sysdate,'DD/MM/YYYY HH24:MI:SS'));
	
	/*========================== MAJ table OSE.UM_INTERVENANT (INSERT 1ere fois ou UPDATE) ==============*/
	dbms_output.put_line('_____');
	dbms_output.put_line(rpad('_____ ETAPE 2 : MAJ (UM_INTERVENANT) pour annee : '||to_char(v_d_deb_annee_univ,'DD/MM/YYYY')||' - '||to_char(v_d_fin_annee_univ,'DD/MM/YYYY'),106,'_'));
    UM_INSERT_INTERVENANT(v_source_id, v_annee_id, v_d_deb_annee_univ, v_d_fin_annee_univ, v_date_systeme);
	dbms_output.put_line('      => Apres INSERT intervenant : '||to_char(sysdate,'DD/MM/YYYY HH24:MI:SS'));
	
	/*========================== Traitement DES INSERT AUTO MULTI STATUT ================================*/
	select count(*) INTO v_nb_multi_statut_insert_auto from UM_TRANSFERT_INDIVIDU where annee_id = v_annee_id and tem_ose_update = 'A_INS';
	if v_nb_multi_statut_insert_auto <> 0 then 
		dbms_output.put_line('_____');
		dbms_output.put_line(rpad('_____ ETAPE 2_COMPL : Traitement des multi statut auto : '||v_nb_multi_statut_insert_auto||' pour annee : '||to_char(v_d_deb_annee_univ,'YYYY')||' - '||to_char(v_d_fin_annee_univ,'YYYY'),106,'_'));
		UM_SELECT_MULTI_STATUT(v_annee_id);
		UM_INSERT_INTERVENANT(v_source_id, v_annee_id, v_d_deb_annee_univ, v_d_fin_annee_univ, v_date_systeme);
		dbms_output.put_line('      => Apres INSERT intervenant Multi-Statut : '||to_char(sysdate,'DD/MM/YYYY HH24:MI:SS'));
	end if;
	/*===================================================================================================*/
	dbms_output.put_line('_____');
	dbms_output.put_line(rpad('_____ ETAPE 3 : MAJ ADRESSES (UM_INTERVENANT_ADRESSE) : ',106,'_'));
	UM_SYNCHRO_ADRESSE_INTERVENANT(v_source_id, v_annee_id, trunc(sysdate));  -- Synchro ADR pour les INTERVENANTS venant d être synchronisés
	dbms_output.put_line('      => Apres SYNCHRO ADR intervenant : '||to_char(sysdate,'DD/MM/YYYY HH24:MI:SS'));
	
  END IF;
  
END;
/
select rpad('_____________ Fin : '||to_char(sysdate,'DD/MM/YYYY HH24:MI:SS'),106,'_') from dual;
spool off;
+1 −1
Changes for doc/Connecteurs-Import/Octopus/MV_INTERVENANT.sql: 1 added line, 1 removed line.
Original line number Diff line number Diff line
@@ -127,7 +127,7 @@ WITH i AS (
				MAX(REPLACE(d.bic, ' ', ''))   bic
			FROM intervenant i
			JOIN intervenant_dossier d ON d.intervenant_id = i.id AND d.histo_destruction IS null
			WHERE  i.annee_id = 2020 AND i.histo_destruction IS NULL AND d.iban IS NOT NULL AND d.rib_hors_sepa = 0 AND i.source_id = '24'
			WHERE  i.annee_id = 2020 AND i.histo_destruction IS NULL AND d.iban IS NOT NULL AND d.rib_hors_sepa = 0 AND i.source_id = '24' AND i.code_rh IS NOT NULL
			GROUP BY i.code
         ),
         compte as
Loading