-- 1/3 : Création de la table temporaire DROP TABLE IF EXISTS w_dbsetup ; CREATE TEMP TABLE w_dbsetup AS SELECT t_etude_cardio_familles_actes.code, t_etude_cardio_familles_actes.texte, t_etude_cardio_familles_actes.texte_court, t_etude_cardio_familles_actes.mention, t_etude_cardio_familles_actes.seuil_annuel, t_etude_cardio_familles_actes.est_seuil, t_listes.code AS liste_code, t_etude_cardio_familles_actes.cdc, t_etude_cardio_modalites.code AS cardio_modalite_code, t_etude_cardio_mentions.code AS cardio_mention_code FROM pmsi.t_etude_cardio_familles_actes JOIN pmsi.t_listes ON t_listes.oid = liste_id JOIN pmsi.t_etude_cardio_mentions ON t_etude_cardio_mentions.oid = t_etude_cardio_familles_actes.cardio_mention_id JOIN pmsi.t_etude_cardio_modalites ON t_etude_cardio_modalites.oid = t_etude_cardio_familles_actes.cardio_modalite_id LIMIT 0 ; -- 2/3 : Peuplement de la table temporaire INSERT INTO w_dbsetup( code, texte, texte_court, mention, seuil_annuel, est_seuil, liste_code, cdc, cardio_modalite_code, cardio_mention_code ) VALUES ('CONGA3', 'Fermeture du canal artériel', 'Fermeture du canal artériel', 'A', 40, 't', 'CTI_CARDIO_FERMETURE_ARTERIEL_ACTES_2022', 2022, 'CONG', 'CONGA'), ('CONGA2', 'Dilatation de sténose valvulaire pulmonaire', 'Dilatation de sténose valvulaire pulmonaire', 'A', 40, 't', 'CTI_CARDIO_DILATATION_STENOSE_ACTES_2022', 2022, 'CONG', 'CONGA'), ('CONGA1', 'Anomalies du cloisonnement interatrial', 'Anomalies du cloisonnement interatrial', 'A', 40, 't', 'CTI_CARDIO_ANOMALIES_CLOISONNEMENT_ACTES_2022', 2022, 'CONG', 'CONGA'), ('CONGB3', 'Intervention sur septum atrial ou ventriculaire', 'Intervention sur septum atrial ou ventriculaire', 'B', 80, 't', 'CTI_CARDIO_SEPTUM_ACTES_2022', 2022, 'CONG', 'CONGB'), ('CONGB21', 'Dilatation chez l''enfant', 'Dilatation chez l''enfant', 'B', 80, 't', 'CTI_CARDIO_DILATATION_ENF_ACTES_2022', 2022, 'CONG', 'CONGB'), ('CONGB2', 'Dilatation', 'Dilatation', 'B', 80, 't', 'CTI_CARDIO_DILATATION_ACTES_2022', 2022, 'CONG', 'CONGB'), ('CONGB11', 'Pose de stent ou de dispositif intracardiaque chez l''enfant', 'Pose de stent ou de dispositif intracardiaque chez l''enfant', 'B', 80, 't', 'CTI_CARDIO_POSE_STENT_ENF_ACTES_2022', 2022, 'CONG', 'CONGB'), ('CONGB1', 'Pose de stent ou de dispositif intracardiaque', 'Pose de stent ou de dispositif intracardiaque', 'B', 80, 't', 'CTI_CARDIO_POSE_STENT_ACTES_2022', 2022, 'CONG', 'CONGB'), ('ISCHA2', 'Prise en charge des cardiopathies structurelles acquises sans pose de prothèse et des fermetures de septum interauriculaires', 'Prise en charge des cardiopathies structurelles', 'A', 15, 't', 'CTI_CARDIO_FERM_SEPTUM_ACTES_2022', 2022, 'ISCH', 'ISCHA'), ('ISCHA1HS', 'Prise en charge des cardiopathies ischémiques (hors seuil)', 'Prise en charge des cardiopathies ischémiques (HS)', 'A', 400, 'f', 'CTI_CARDIO_ISCHEMIQUES_ACTES_HS_2022', 2022, 'ISCH', 'ISCHA'), ('ISCHA1', 'Prise en charge des cardiopathies ischémiques', 'Prise en charge des cardiopathies ischémiques', 'A', 400, 't', 'CTI_CARDIO_ISCHEMIQUES_ACTES_2022', 2022, 'ISCH', 'ISCHA'), ('RYTHA2', 'Pose de pace maker mono et double chambre avec sonde', 'Pose de pace maker mono et double chambre avec sonde', 'A', 10, 't', 'CTI_CARDIO_MAKER_MONO_DOUBLE_ACTES_2022', 2022, 'RYTH', 'RYTHA'), ('RYTHA1', 'Actes interventionnels d''électrophysiologie diagnostique', 'Actes interventionnels d''électrophysiologie diagnostique', 'A', 10, 't', 'CTI_CARDIO_ELECTRO_ACTES_2022', 2022, 'RYTH', 'RYTHA'), ('RYTHB2HS', 'Pose de défibrillateurs et de stimulateurs multisites (hors seuil)', 'Pose de défibrillateurs et de stimulateurs multisites (HS)', 'B', 50, 'f', 'CTI_CARDIO_DEFIBR_MULTI_ACTES_HS_2022', 2022, 'RYTH', 'RYTHB'), ('RYTHB2', 'Pose de défibrillateurs et de stimulateurs multisites', 'Pose de défibrillateurs et de stimulateurs multisites', 'B', 50, 't', 'CTI_CARDIO_DEFIBR_MULTI_ACTES_2022', 2022, 'RYTH', 'RYTHB'), ('RYTHB1', 'Ablations atriales droites et atrioventriculaires', 'Ablations atriales droites et atrioventriculaires', 'B', 50, 't', 'CTI_CARDIO_ABLATION_ATR_DROITE_ACTES_2022', 2022, 'RYTH', 'RYTHB'), ('RYTHC1HS', 'Ablations atriales avec abord transeptal (hors seuil)', 'Ablations atriales avec abord transeptal (HS)', 'C', 100, 'f', 'CTI_CARDIO_ABLATION_ATR_TRANS_ACTES_HS_2022', 2022, 'RYTH', 'RYTHC'), ('RYTHC1', 'Ablations atriales avec abord transeptal', 'Ablations atriales avec abord transeptal', 'C', 100, 't', 'CTI_CARDIO_ABLATION_ATR_TRANS_ACTES_2022', 2022, 'RYTH', 'RYTHC'), ('RYTHD1HS', 'Activités à haut risque de plaie cardiaque (hors seuil)', 'Activités à haut risque de plaie cardiaque', 'D', 100, 'f', 'CTI_CARDIO_RISQUE_PLAIE_ACTES_HS_2022', 2022, 'RYTH', 'RYTHD') ; -- 3/3 : Màj de la table iCTI UPDATE pmsi.t_etude_cardio_familles_actes SET texte = w_dbsetup.texte, texte_court = w_dbsetup.texte_court, mention = w_dbsetup.mention, seuil_annuel = w_dbsetup.seuil_annuel, est_seuil = w_dbsetup.est_seuil, liste_id = t_listes.oid, cardio_modalite_id = t_etude_cardio_modalites.oid, cardio_mention_id = t_etude_cardio_mentions.oid FROM w_dbsetup JOIN pmsi.t_listes ON t_listes.code = liste_code JOIN pmsi.t_etude_cardio_mentions ON t_etude_cardio_mentions.code = cardio_mention_code JOIN pmsi.t_etude_cardio_modalites ON t_etude_cardio_modalites.code = cardio_modalite_code WHERE 1=1 AND t_etude_cardio_familles_actes.code = w_dbsetup.code AND t_etude_cardio_familles_actes.cdc = w_dbsetup.cdc AND ( t_etude_cardio_familles_actes.texte IS DISTINCT FROM w_dbsetup.texte OR t_etude_cardio_familles_actes.texte_court IS DISTINCT FROM w_dbsetup.texte_court OR t_etude_cardio_familles_actes.mention IS DISTINCT FROM w_dbsetup.mention OR t_etude_cardio_familles_actes.seuil_annuel IS DISTINCT FROM w_dbsetup.seuil_annuel OR t_etude_cardio_familles_actes.est_seuil IS DISTINCT FROM w_dbsetup.est_seuil OR t_etude_cardio_familles_actes.liste_id IS DISTINCT FROM t_listes.oid OR t_etude_cardio_familles_actes.cardio_modalite_id IS DISTINCT FROM t_etude_cardio_modalites.oid OR t_etude_cardio_familles_actes.cardio_mention_id IS DISTINCT FROM t_etude_cardio_mentions.oid ) ; INSERT INTO pmsi.t_etude_cardio_familles_actes( code, texte, texte_court, mention, seuil_annuel, est_seuil, liste_id, cdc, cardio_modalite_id, cardio_mention_id ) SELECT w_dbsetup.code, w_dbsetup.texte, w_dbsetup.texte_court, w_dbsetup.mention, w_dbsetup.seuil_annuel, w_dbsetup.est_seuil, t_listes.oid, w_dbsetup.cdc, t_etude_cardio_modalites.oid, t_etude_cardio_mentions.oid FROM w_dbsetup JOIN pmsi.t_listes ON t_listes.code = w_dbsetup.liste_code JOIN pmsi.t_etude_cardio_mentions ON t_etude_cardio_mentions.code = w_dbsetup.cardio_mention_code JOIN pmsi.t_etude_cardio_modalites ON t_etude_cardio_modalites.code = w_dbsetup.cardio_modalite_code LEFT JOIN pmsi.t_etude_cardio_familles_actes ON t_etude_cardio_familles_actes.code = w_dbsetup.code AND t_etude_cardio_familles_actes.cdc = w_dbsetup.cdc WHERE t_etude_cardio_familles_actes.code IS NULL OR t_etude_cardio_familles_actes.cdc IS NULL ;