|
|
-- 1/3 : Création de la table temporaire
|
|
|
DROP TABLE IF EXISTS w_dbsetup
|
|
|
;
|
|
|
|
|
|
CREATE TEMP TABLE w_dbsetup AS
|
|
|
SELECT
|
|
|
t_divers.code,
|
|
|
t_divers.description,
|
|
|
t_divers.show_info_module,
|
|
|
t_divers.texte,
|
|
|
t_divers.valeur,
|
|
|
t_divers.valeur_date::text
|
|
|
FROM
|
|
|
pmsi.t_divers
|
|
|
ORDER BY code LIMIT 0
|
|
|
;
|
|
|
|
|
|
-- 2/3 : Peuplement de la table temporaire
|
|
|
INSERT INTO w_dbsetup(
|
|
|
code,
|
|
|
description,
|
|
|
show_info_module,
|
|
|
texte,
|
|
|
valeur,
|
|
|
valeur_date
|
|
|
)
|
|
|
VALUES
|
|
|
('ANN_DEBUT_RECUP_SEJ_SRC', 'Valeur numérique permettant de paramétrer l''année de début de récupération des séjours en soustrayant cette valeur à l''année en cours ', 'f', 'Récupération séjours en SRC à partir de N - Valeur saisie (années)', '', ''),
|
|
|
('EXPERT_DATE_SELECT', '0=année actuelle, 1=année précédente, 2=12 mois glissants, 3=Personnalisé', 'f', 'Mode de sélection de la période', '0', '1970-01-01'),
|
|
|
('FIDES_ACE_DATE', '', 'f', 'Date de passage à FIDES ACE', '01/01/1970', '1970-01-01'),
|
|
|
('GHMDMS2', '', 'f', 'CTI. DMS cible Public 2024', '', '1970-01-01'),
|
|
|
('GHMDMS3', '', 'f', 'CTI. DMS cible Privé 2024', '', '1970-01-01'),
|
|
|
('GHMDMSHOSPIDIAG', '', 'f', 'CTI. DMS Hospidiag (2024)', '', '1970-01-01'),
|
|
|
('NOW', 'Date non modifiable', 't', 'Dernier import fil de l''eau', '', ''),
|
|
|
('NOWCLOTURE', 'Date non modifiable', 't', 'Dernier import e-PMSI', '', ''),
|
|
|
('OPTPMSI_CPT_INTERV', 'CTI=Interventions CTI, PRO=Interventions prestataires client', 'f', 'Méthode de comptage des interventions', 'CTI', '1970-01-01')
|
|
|
;
|
|
|
|
|
|
-- 3/3 : Màj de la table iCTI
|
|
|
UPDATE pmsi.t_divers SET
|
|
|
texte = w_dbsetup.texte,
|
|
|
description = w_dbsetup.description
|
|
|
FROM w_dbsetup
|
|
|
WHERE
|
|
|
t_divers.code = w_dbsetup.code
|
|
|
AND (
|
|
|
t_divers.texte IS DISTINCT FROM w_dbsetup.texte OR
|
|
|
t_divers.description IS DISTINCT FROM w_dbsetup.description
|
|
|
);
|
|
|
|
|
|
INSERT INTO pmsi.t_divers(code, description, show_info_module, texte, valeur, valeur_date)
|
|
|
SELECT
|
|
|
w_dbsetup.code,
|
|
|
w_dbsetup.description,
|
|
|
w_dbsetup.show_info_module,
|
|
|
w_dbsetup.texte,
|
|
|
w_dbsetup.valeur,
|
|
|
CASE WHEN w_dbsetup.valeur_date = '' THEN '19700101'::date ELSE w_dbsetup.valeur_date::date END AS valeur_date
|
|
|
FROM
|
|
|
w_dbsetup
|
|
|
WHERE w_dbsetup.code NOT IN (SELECT code from pmsi.t_divers)
|
|
|
;
|
|
|
|
|
|
UPDATE pmsi.t_divers SET
|
|
|
valeur_date = date_trunc('year', (now() - interval '1 year'))::date,
|
|
|
valeur = to_char(date_trunc('year', (now() - interval '1 year')), 'DD/MM/YYYY')
|
|
|
WHERE 1=1
|
|
|
AND code = 'EXPERT_DATE_DEBUT'
|
|
|
AND valeur_date < date_trunc('year', (now() - interval '1 year'))::date;
|