Schema
Owner
postgres
Descriptions
There is no description for function ps_integration_tout_stat_rel
Options
Option | Value |
---|---|
Returns |
integer |
Language |
|
Parameters |
There are no parameters for function ps_integration_tout_stat_rel |
Definition
CREATE OR REPLACE FUNCTION safran.ps_integration_tout_stat_rel (
)
RETURNS integer AS
$span$
DECLARE
var_count integer; -- Nombre de cartes insérées
var_message text;
var_sql text;
r1 record;
start_date text;
BEGIN
SELECT timeofday() INTO start_date;
RAISE NOTICE 'Début de la procédure à % ...', (SELECT extract(hour from (timeofday()::timestamp))::text || ':' || extract(minute from (timeofday()::timestamp))::text);
RAISE NOTICE 'Vérification des données...';
PERFORM safran.ps_verificationDonneesPresentes('safran');
RAISE NOTICE ' --> Aucune table de données ne manque (à %)', (SELECT extract(hour from (timeofday()::timestamp))::text) || ':' || (SELECT extract(minute from (timeofday()::timestamp))::text) || ')';
RAISE NOTICE 'Suppression des cartes des indicateurs statistiques et relatifs et des tables de données associées ...';
PERFORM safran.ps_suppression_tout_stat_rel('safran');
RAISE NOTICE ' --> Cartes et données statistiques et relatives supprimées (à %)', (SELECT extract(hour from (timeofday()::timestamp))::text) || ':' || (SELECT extract(minute from (timeofday()::timestamp))::text) || ')';
RAISE NOTICE 'Remplacement des valeurs -999 à null ...';
FOR r1 IN
SELECT table_name
FROM information_schema.tables
WHERE table_schema='safran' AND table_type ='BASE TABLE'
LOOP
EXECUTE 'UPDATE safran.'|| r1.table_name ||' SET dur = 0, deb = null WHERE def = 0';
EXECUTE 'UPDATE safran.'|| r1.table_name ||' SET deb = null WHERE deb = -999';
END LOOP;
RAISE NOTICE ' --> Remplacement terminé (à %)', (SELECT extract(hour from (timeofday()::timestamp))::text) || ':' || (SELECT extract(minute from (timeofday()::timestamp))::text) || ')';
RAISE NOTICE 'Calcul des indicateurs statistiques ...';
PERFORM safran.ps_calcul_statistiques();
SELECT COUNT(*) INTO var_count FROM public.t_carte_statistique_indicateur_casind;
IF var_count > 0 THEN
var_message := 'Calcul des indicateurs statistiques terminé avec succès : '|| var_count ||' cartes créées';
ELSE
var_message := 'La procédure n''a pas échouée, mais aucune carte d''indicateurs statistiques n''a été insérée';
END IF;
var_message := var_message || ' (à '|| (SELECT extract(hour from (timeofday()::timestamp))::text) || ':' || (SELECT extract(minute from (timeofday()::timestamp))::text) || ')';
RAISE NOTICE ' --> %', var_message;
RAISE NOTICE 'Calcul des relatifs...';
PERFORM safran.ps_calcul_relatif();
RAISE NOTICE ' --> Calcul des indicateurs relatifs terminé (à %)', (SELECT extract(hour from (timeofday()::timestamp))::text) || ':' || (SELECT extract(minute from (timeofday()::timestamp))::text) || ')';
SELECT COUNT(*) INTO var_count FROM public.t_carte_indicateur_caind WHERE caind_casind_id IS NOT NULL;
IF var_count > 0 THEN
var_message := 'Calcul des indicateurs relatifs terminé avec succès : ' || var_count || ' cartes créées';
ELSE
var_message := 'La procédure n''a pas échouée, mais aucune carte d''indicateurs relatifs n''a été insérée';
END IF;
var_message := var_message || ' (à '|| (SELECT extract(hour from (timeofday()::timestamp))::text) || ':' || (SELECT extract(minute from (timeofday()::timestamp))::text) || ')';
RAISE NOTICE ' --> %', var_message;
RAISE NOTICE 'Création des index sur les tables de données des indicateurs élémentaires ...';
PERFORM safran.ps_creation_index_data_ind();
RAISE NOTICE ' --> terminé à %', (SELECT extract(hour from (timeofday()::timestamp))::text || ':' || extract(minute from (timeofday()::timestamp))::text);
RAISE NOTICE 'Création des index sur les tables de données des indicateurs statistiques ...';
PERFORM safran.ps_creation_index_data_stat();
RAISE NOTICE ' --> terminé à %', (SELECT extract(hour from (timeofday()::timestamp))::text || ':' || extract(minute from (timeofday()::timestamp))::text);
RAISE NOTICE 'Création des index sur les tables de données des indicateurs relatifs ...';
PERFORM safran.ps_creation_index_data_rel();
RAISE NOTICE ' --> terminé à %', (SELECT extract(hour from (timeofday()::timestamp))::text || ':' || extract(minute from (timeofday()::timestamp))::text);
RAISE NOTICE 'Date de début de la procédure : %', start_date ;
RAISE NOTICE 'Date de fin de la procédure : %', (SELECT timeofday()) ;
RETURN 0;
END;
$span$
LANGUAGE 'plpgsql'
VOLATILE
CALLED ON NULL INPUT
SECURITY INVOKER
PARALLEL UNSAFE
COST 100;
This file was generated with SQL Manager for PostgreSQL (www.pgsqlmanager.com) at 07/12/2018 13:23 |
![]() ![]() ![]() |