|
|
-- 1/3 : Création de la table temporaire
|
|
|
DROP TABLE IF EXISTS w_dbsetup
|
|
|
;
|
|
|
|
|
|
CREATE TEMP TABLE w_dbsetup AS
|
|
|
SELECT
|
|
|
code,
|
|
|
CASE WHEN oid = 0 THEN oid ELSE 1 END AS oid,
|
|
|
texte,
|
|
|
"type"
|
|
|
FROM pmsi.t_specialites_medecin
|
|
|
WHERE
|
|
|
(length(code) = 2 OR oid = 0)
|
|
|
AND code != texte
|
|
|
ORDER BY code LIMIT 0
|
|
|
;
|
|
|
|
|
|
-- 2/3 : Peuplement de la table temporaire
|
|
|
INSERT INTO w_dbsetup(
|
|
|
code,
|
|
|
oid,
|
|
|
texte,
|
|
|
type
|
|
|
)
|
|
|
VALUES
|
|
|
('01', 1, 'MEDECINE GENERALE', 'E'),
|
|
|
('02', 1, 'ANESTHESIOLOGIE - REANIMATION CHIRURGICALE', 'E'),
|
|
|
('03', 1, 'PATHOLOGIE CARDIO-VASCULAIRE', 'E'),
|
|
|
('04', 1, 'CHIRURGIE GENERALE', 'E'),
|
|
|
('05', 1, 'DERMATOLOGIE ET VENEROLOGIE', 'E'),
|
|
|
('06', 1, 'RADIODIAGNOSTIC ET IMAGERIE MEDICALE', 'E'),
|
|
|
('07', 1, 'GYNECOLOGIE OBSTETRIQUE', 'E'),
|
|
|
('08', 1, 'GASTRO-ENTEROLOGIE ET HEPATOLOGIE', 'E'),
|
|
|
('09', 1, 'MEDECINE INTERNE', 'E'),
|
|
|
('10', 1, 'NEUROCHIRURGIEN', 'E'),
|
|
|
('11', 1, 'OTO RHINO LARYNGOLOGISTE', 'E'),
|
|
|
('12', 1, 'PEDIATRE', 'E'),
|
|
|
('13', 1, 'PNEUMOLOGIE', 'E'),
|
|
|
('14', 1, 'RHUMATOLOGIE', 'E'),
|
|
|
('15', 1, 'OPHTAMOLOGIE', 'E'),
|
|
|
('16', 1, 'CHIRURGIE UROLOGIQUE', 'E'),
|
|
|
('17', 1, 'NEURO PSYCHIATRIE', 'E'),
|
|
|
('18', 1, 'STOMATOLOGIE', 'E'),
|
|
|
('19', 1, 'DENTISTES', 'E'),
|
|
|
('20', 1, 'REANIMATION MEDICALE', 'E'),
|
|
|
('21', 1, 'SAGES FEMMES', 'E'),
|
|
|
('22', 1, 'SPECIALISTE EN MED GENER', ' '),
|
|
|
('23', 1, 'RECONNAISS SPEC MED GENER', ' '),
|
|
|
('24', 1, 'INFIRMIER-E', 'E'),
|
|
|
('26', 1, 'MASSEUR KINE', 'E'),
|
|
|
('27', 1, 'PEDICURE', 'E'),
|
|
|
('28', 1, 'ORTHOPHONISTE', 'E'),
|
|
|
('29', 1, 'ORTHOPTISTE', 'E'),
|
|
|
('30', 1, 'LABORATOIRES', 'E'),
|
|
|
('31', 1, 'MEDECINE PHYSIQUE ET DE READAPTATION', 'E'),
|
|
|
('32', 1, 'NEUROLOGIE', 'E'),
|
|
|
('33', 1, 'PSYCHIATRIE GENERALE', 'E'),
|
|
|
('34', 1, 'GERIATRIE', 'E'),
|
|
|
('35', 1, 'NEPHROLOGIE', 'E'),
|
|
|
('36', 1, 'ODF', 'E'),
|
|
|
('37', 1, 'ANATOMO-CYTO-PATHOLOGIE', 'E'),
|
|
|
('38', 1, 'MEDECINS BIOLOGISTES', 'E'),
|
|
|
('39', 1, 'LABORATOIRES POLYVALENTS', 'E'),
|
|
|
('40', 1, 'LABORATOIRES D ANATOMO-CYTO-PATHOLOGIE', 'E'),
|
|
|
('41', 1, 'CHIRURGIE ORTHOPEDIQUE et TRAUMATOLOGIE', 'E'),
|
|
|
('42', 1, 'ENDOCRINOLOGIE et METABOLISMES', 'E'),
|
|
|
('43', 1, 'CHIRURGIE INFANTILE', 'E'),
|
|
|
('44', 1, 'CHIRURGIE MAXILLO-FACIALE', 'E'),
|
|
|
('45', 1, 'CHIRURGIE MAXILLO-FACIALE et STOMATOLOGIE', 'E'),
|
|
|
('46', 1, 'CHIRURGIE PLASTIQUE RECONSTRUCTRICE et ESTHETIQUE', 'E'),
|
|
|
('47', 1, 'CHIRURGIE THORACIQUE et CARDIO-VASCULAIRE', 'E'),
|
|
|
('48', 1, 'CHIRURGIE VASCULAIRE', 'E'),
|
|
|
('49', 1, 'CHIRURGIE VISCERALE et DIGESTIVE', 'E'),
|
|
|
('50', 1, 'PHARMACIE D OFFICINE', 'E'),
|
|
|
('51', 1, 'PHARMACIE MUTUALISTE', 'E'),
|
|
|
('53', 1, 'CHIRURGIEN-DENTISTE SPECIALISTE EN CHIRURGIE ORALE', ' '),
|
|
|
('54', 1, 'CHIRURGIEN-DENTISTE SPECIALISTE EN MEDECINE BUCCO-DENTAIRE', ' '),
|
|
|
('55', 1, 'TRANSPORTEUR SANITAIRE', 'E'),
|
|
|
('56', 1, 'TRANSPORTEUR NON SANITAIRE', 'E'),
|
|
|
('60', 1, 'FOURNISSEUR', 'E'),
|
|
|
('69', 1, 'MEDECIN SPECIALISE EN CHIRURGIE ORALE', ' '),
|
|
|
('70', 1, 'GYNECOLOGIE MEDICALE', 'E'),
|
|
|
('71', 1, 'HEMATOLOGIE', 'E'),
|
|
|
('72', 1, 'MEDECINE NUCLEAIRE', 'E'),
|
|
|
('73', 1, 'ONCOLOGIE MEDICALE', 'E'),
|
|
|
('74', 1, 'ONCOLOGIE RADIOTHERAPIQUE', 'E'),
|
|
|
('75', 1, 'PSYCHIATRIE DE L''ENFANT et de L''ADOLESCENT', 'E'),
|
|
|
('76', 1, 'RADIOTHERAPIE', 'E'),
|
|
|
('77', 1, 'OBSTETRIQUE', 'E'),
|
|
|
('78', 1, 'GENETIQUE MEDICALE', 'E'),
|
|
|
('79', 1, 'GYNECOLOGIE OBSTETRIQUE ET GYNECOLOGIE MEDICALE', 'E'),
|
|
|
('80', 1, 'SANTE PUBLIQUE ET MEDECINE SOCIALE', 'E'),
|
|
|
('81', 1, 'MEDECINE DES MALADIES INFECTIEUSES ET TROPICALES', ' '),
|
|
|
('82', 1, 'MEDECINE LEGALE ET EXPERTISES MEDICALES', ' '),
|
|
|
('83', 1, 'MEDECINE D URGENCE', ' '),
|
|
|
('84', 1, 'MEDECINE VASCULAIRE', ' '),
|
|
|
('85', 1, 'ALLERGOLOGIE', ' '),
|
|
|
('99', 1, 'AUTRES SPECIALITES', 'E'),
|
|
|
('**', 0, 'Non renseignée', 'E')
|
|
|
;
|
|
|
|
|
|
-- 3/3 : Màj de la table iCTI
|
|
|
UPDATE pmsi.t_specialites_medecin SET
|
|
|
code = w_dbsetup.code
|
|
|
FROM w_dbsetup
|
|
|
WHERE
|
|
|
t_specialites_medecin.oid = w_dbsetup.oid
|
|
|
AND w_dbsetup.oid = 0;
|
|
|
|
|
|
|
|
|
UPDATE pmsi.t_specialites_medecin SET
|
|
|
texte = w_dbsetup.texte,
|
|
|
type = w_dbsetup.type
|
|
|
FROM w_dbsetup
|
|
|
WHERE
|
|
|
t_specialites_medecin.code = w_dbsetup.code
|
|
|
AND (
|
|
|
t_specialites_medecin.texte <> w_dbsetup.texte OR
|
|
|
t_specialites_medecin.type <> w_dbsetup.type OR
|
|
|
t_specialites_medecin.texte IS NULL OR
|
|
|
t_specialites_medecin.type IS NULL
|
|
|
);
|
|
|
|
|
|
|
|
|
INSERT INTO pmsi.t_specialites_medecin(oid, code, texte, type)
|
|
|
SELECT oid, code, texte, type
|
|
|
FROM w_dbsetup
|
|
|
WHERE
|
|
|
oid = 0
|
|
|
AND oid NOT IN (SELECT oid FROM pmsi.t_specialites_medecin);
|
|
|
|
|
|
|
|
|
INSERT INTO pmsi.t_specialites_medecin(code, texte, type)
|
|
|
SELECT code, texte, type
|
|
|
FROM w_dbsetup
|
|
|
WHERE
|
|
|
oid <> 0
|
|
|
AND code NOT IN (SELECT code FROM pmsi.t_specialites_medecin);
|