# Table VISIT_OCCURRENCE
# Description
Cette table contient les événements qui se produisent lorsqu'une personne interagit avec le système de santé pendant une certaine période. Par exemple lorsqu'un patient se rend dans un établissement de soins de santé ou bien lorsqu'un personnel médical se rend chez un patient, ou bien lors d'une téléconsultation ou encore lorsque la visite est de courte durée ou donne lieu à une hospitalisation.
La table VISIT_OCCURRENCE contient les durées pendant lesquelles une personne reçoit sans interruption des actes médicaux d'un ou de plusieurs prestataires dans un lieu de soins. Les visites sont classées en plusieurs catégories : soins ambulatoires, hospitalisation, urgences et soins de longue durée. Les personnes peuvent passer de l'un à l'autre de ces milieux au cours d'un séjour/traitements.
Le concept de visite est décrit par des concepts dans le domaine des visites, qui forment une structure hiérarchique. Les concepts possibles dans le format OMOP-CDM sont :
Inpatient visit (opens new window) (Visite de patient hospitalisé) Concept_ID = 9201 : Personne se rendant à l'hôpital, sur un site de soins, occupant un lit, pour une durée de plus d'une journée, avec des médecins et d'autres prestataires disponibles en permanence pour fournir un service 24 heures sur 24
Emergency Room Visit (opens new window) (Visite de la salle d'urgence) Concept_ID = 9203 : Personne qui se rend dans un établissement de soins de santé spécialisé dans le traitement des urgences, sur un site de soins, dans un délai d'un jour, avec des médecins et des prestataires disponibles en permanence pour fournir un service 24 heures sur 24
Emergency Room and inpatient visit (opens new window) (Salle d'urgence et visite des patients hospitalisés) Concept_ID = 262 : Personne qui se rend aux urgences, puis est hospitalisée, lorsque le service des urgences fait partie de l'hôpital et que la transition entre les urgences et les autres services de l'hôpital n'est pas définie.
Non-hospital institution visit (opens new window) (Visite d'un établissement non hospitalier) Concept_ID = 42898160 : Personne se rendant dans un établissement spécialisé pour des raisons de santé, sur un site de soins, sans médecin mais avec la présence possible d'autres prestataires de soins, en permanence, pour fournir un service 24 heures sur 24
Outpatient visit (opens new window) (Visite ambulatoire) Concept_ID = 9202: Personne qui se rend dans un établissement de soins ambulatoires spécialisé, dans un site de soins, dans un délai d'un jour, sans lit, avec des médecins ou des prestataires de services médicaux qui fournissent des services pendant la visite
Home visit (opens new window) (Visite à domicile) Concept_ID = 581476: Prestataire visitant une personne, sans site de soins, dans un délai d'un jour, fournissant un service
Telehealtd visit (opens new window) (Visite en téléconsultation) Concept_ID = 5083: Le patient s'engage avec le fournisseur par le biais des médias de communication
Pharmacy visit (opens new window) (Visite en pharmacie) Concept_ID = 581458 : Personne qui se rend à la pharmacie pour délivrer un médicament, sur un site de soins, dans la journée
Laboratory Visit (opens new window) (Visite du laboratoire) Concept_ID = 32036 : Visite d'un patient dans un établissement spécialisé, sur un site de soins, dans un délai d'un jour, en vue d'une analyse biologique.
Ambulance Visit (opens new window) (Visite en ambulance) Concpet_ID = 581478 : Personne utilisant un service de transport dans le but d'effectuer l'une des autres visites, sans site de soins, dans un délai d'un jour, éventuellement avec des prestataires accompagnant la visite et fournissant le service.
Case Management Visit (opens new window) : Visite de gestion de cas Concept_ID = 38004193 : Personne en contact avec le système de soins de santé, sans site de soins, dans un délai d'un jour, sans prestataire, à des fins administratives
La durée de la visite, ou "durée du séjour", est définie comme suit : visit_end_date - visit_start_date Pour toutes les visites, cette durée est inférieure à 1 jour, sauf pour les visites de patients hospitalisés (inpatient visit) et les visites d'établissements non hospitaliers (Non-hospital institution Visits). Le CDM contient également la table VISIT_DETAIL dans laquelle sont stockées des informations supplémentaires sur la visite, par exemple les transferts entre unités lors d'une visite de patient hospitalisé.
# Commentaires généraux
Pour le PMSI, on retient deux types de visite :
Visites avec hospitalisation (au moins 1 nuit) : tables C du PMSI. Le concept_id associé est "9201 : inpatient visit"
Visites sans hospitalisation (le patient ne reste pas pour une nuit) : tables ACE (Actes et Consultations Externes, voir la documentation SNDS) du PMSI. Le concept_id associé est "9202 : outpatient visit".
Pour le DCIR, il n'y a pas de "inpatient_visit". En effet, les séjours hospitaliers des établissements publics remontent à la fois dans le PMSI et le DCIR, on les retire donc du DCIR pour éviter les doublons. Pour distinguer les visites en pharmacie, en laboratoire et en ville (outpatient), on utilise le code de prestation de référence (prs_nat_ref), et leur correspondance avec les trois concept_id : "9202 : outpatient visit", "581458 : pharmacy visit" et "32036 : laboratory visit".
Comme pour les tables LOCATION et CARE_SITE, on retire les établissements de _ER_ETE_F pour lesquels ( etb_cat_rg1 > 1203 ET ete_cat_cod ) OU ( ete_cat_cod ∊ [362 ; 422 ] ) (cf partie LOCATION)
On traite séparément les visites qui remontent des établissements de santé (ER_ETE_F) et les autres (ER_PRS_F dont on a enlevé les lignes qui sont dans ER_ETE_F)
# Tables et variables utilisées dans le SNDS
Tables du PMSI :
T_MCOaaC | T_RIPaaC | T_SSRaaC | T_SSRaaB |
T_MCOaaCSTC
| T_HADaaC
| T_SSRaaCSTC
|
Tables du DCIR :
_ER_ETE_F |
_ER_PRS_F |
Fichier de correspondance prs_nat_ref --> OMOP
- prs_nat_ref
- mapped_omop
Nomenclature IR_CET_V:
- etb_cat_cod
- etb_cat_rg1
# Tables et variables utilisées dans le modèle OMOP
PERSON
| CARE_SITE
| SOURCE_TO_CONCEPT_MAP
| PROVIDER
|
# Variables au format OMOP remplies
Variables | Description | Type | Clé primaire | Clé étrangère | Table de la clé étrangère |
visit_occurrence_id* | Ce champ permet d’identifier de manière unique une interaction entre un patient et le système de santé. Cet identifiant est utilisé par les autres tables du CDM pour associer des évènements à une visite. | integer | Oui | Non | |
person_id* | integer | Non | Oui | PERSON | |
visit_concept_id* | Ce champ contient un concept id qui représente le type de visite, comme les patients hospitalisés au moins une nuit (inpatient) ou les visites en ambulatoire (outpatient). Tous les concepts de ce champ sont standards et appartiennent au domaine Visit. | integer | Non | Oui | CONCEPT |
visit_start_date* | Pour les séjours (inpatient visits), la date de début est généralement la date d’admission. Pour les visites en ambulatoire, la date de début et la date de fin sont égales. | date | Non | Non | |
visit_start_datetime | datetime | Non | Non | ||
visit_end_date* | Pour les séjours (inpatient visits), la date de fin est généralement la date de sortie. | date | Non | Non | |
visit_end_datetime | datetime | Non | Non | ||
visit_type_concept_id* | Ce champ est utilisé pour comprendre la provenance de l’enregistrement des données concernant la visite (provenance des données) | Integer | Non | Oui | CONCEPT |
provider_id | Il n’y a qu’un seul professionnel de santé par visite et le document de l’ETL doit clairement définir comment il est choisi (traitant, prescripteur, etc). S’il y a plusieurs professionnels de santé qui interviennent au cours d’une visite, ils peuvent être pris en compte dans les tables évènements (CONDITION_OCCURRENCE, PROCEDURE_OCCURRENCE, etc.) ou dans la table VISIT_DETAIL. | integer | Non | Oui | PROVIDER |
care_site_id | Ce champ indique dans quel centre de soin a eu lieu la visite. | integer | Non | Oui | CARE_SITE |
visit_source_value | Ce champ contient la valeur des données source qui indique le type de visite dont il s’agit (séjour, ambulatoire, urgence, etc.) | varchar(50) | Non | Non |
# PMSI Inpatient visit
# Commentaires généraux
Dans cette partie, on traite le cas des hospitalisations.
Les tables C désignent les tables T_MCOaaC, T_RIPaaC, T_HADaaC, T_SSRaaC.
On sélectionne uniquement les séjours valides, c'est-à-dire pour lesquels la date de début d'exécution des soins (exe_soi_dtd) est renseignée.
On supprime les séjours avec codes retours erronés, c'est-à-dire qu'on garde les lignes pour lesquelles les codes retours valent 0 (nir_ret, nai_ret, sex_ret, sej_ret, fho_ret, pms_ret, dat_ret, coh_nai_ret, coh_sex_ret des tables C).
Jusqu'en 2017, les hôpitaux de l'APHP, l'APHM et les HCL les séjours sont transmis en double, à la fois avec eta_num = finess juridique et eta_num = finess géographique. Cette fiche conseille de prendre en compte seulement les séjours transmis à travers leur finess juridique. On supprime les séjours transmis à travers leur finess géographique, c'est à dire pour lesquels eta_num.
APHM : 130780521, 130783236, 130783293, 130784234, 130804297
HCL : 690784137, 690784152, 690784178,830100558
APHP : 600100101, 750041543, 750100018, 750100042, 750100075, 750100083, 750100091, 750100109, 750100125, 750100166, 750100208, 750100216, 750100232, 750100273,750100299, 750801441, 750803447, 750803454, 910100015, 910100023, 920100013, 920100021, 920100039, 920100047, 920100054, 920100062, 930100011, 930100037, 930100045, 940100027, 940100035, 940100043, 940100050, 940100068
# Tables et variables utilisées dans le SNDS
T_MCOaaC
| T_RIPaaC
| T_SSRaaC
| T_SSRaaB
| T_HADaaC
| T_HADaaB
|
# Règles de transformation
Variables | Règles | Jointure | Filtre | |
Gauche | Droite | |||
visit_occurrence_id* | hash (visit_occurrence_source_value) | |||
person_id* | person_id de la table PERSON | Tables C nir_ano_17 | PERSON person_source_value | |
visit_concept_id* | T_MCOaaB
| T_MCOaaC eta_num, rsa_num | T_MCOaaB eta_num, rsa_num | |
T_SSRaaB : Pour hos_typ_num =
| T_SSRaaC eta_num, rsa_num | T_SSRaaB eta_num, rsa_num | ||
HAD et RIP (tables C)
| ||||
visit_start_date* | exe_soi_dtd des tables C | |||
visit_start_datetime | visit_start_date + ‘00:00:0000’ | |||
visit_end_date* | exe_soi_dtf des tables C Pour RIP, la date de fin d’un séjour n’est renseigné que pour la dernière séquence du séjour : il faut récupérer l’exe_soi_dtf correspondant au sej_idt | |||
visit_end_datetime | visit_end_date + ‘00:00:0000’ | |||
visit_type_ concept_id* | 32810 | |||
provider_id | 0 | |||
care_site_id | care_site_id de la table CARE_SITE | T_MCOaaC eta_num | CARE_SITE care_site_source_value | |
T_SSRaaB COALESCE(eta_num_geo, eta_num) | CARE_SITE care_site_source_value | |||
T_RIPaaC eta_num_epmsi | CARE_SITE care_site_source_value | |||
T_HADaaC: eta_num_two avant 2017 eta_num_geo à partir de 2017 | CARE_SITE care_site_source_value | |||
visit_occurrence_ source_value | T_MCOaaC: ‘mcoaa’ || ‘_ ‘ || eta_num || ‘_ ‘ || rsa_num T_SSRaaC: ‘ssr’ || ‘_ ‘ || eta_num || ‘_ ‘ || rha_num || ‘_’ || exe_soi_dtd T_HADaaC : ‘hadaa’ || ‘_ ‘ || eta_num_epmsi || ‘_ ‘ || rhad_num T_RIPaaC : ‘rip’ || ‘_ ‘ || eta_num_epmsi || ‘_ ‘ || ‘sej_idt’ || ‘exe_soi_dtd’ || (de T_RIPaaRSA) | T_RIPaaC finess_nb, visit_nb | T_RIPaaRSA finess_nb, visit_nb | |
visit_source_value | SSR : hos_typ_um de T_SSRaaB HAD : “Hospitalisation à domicile” | T_SSRaaC eta_num, rha_num | T_SSRaaB eta_num, rha_num | |
admitting_ source_value | T_MCOaaB, T_HADaaB , T_SSRaaB et T_RIPaaRSA : ent_prv | Tables C finess_nb, visit_nb | Tables B (RSA pour RIP) finess_nb, visit_nb | |
discharge_to_ source_value | T_MCOaaB, T_HADaaB et T_SSRaaB et T_RIPaaRSA : sor_des | Tables C finess_nb, visit_nb | Tables B (RSA pour RIP) finess_nb, visit_nb | |
admitting_source_ concept_id | target_concept_id de SOURCE_TO_CONCEPT_MAP | Tables C finess_nb, visit_nb | Tables B (RSA pour RIP) finess_nb, visit_nb | |
Tables B (RSA pour RIP): ent_prv | SOURCE_TO_ CONCEPT_MAP source_code | source_vocabulary_id = ‘MS_ENT_V’ | ||
discharge_to_ concept_id | target_concept_id de SOURCE_TO_CONCEPT_MAP | Tables C finess_nb, visit_nb | Tables B (RSA pour RIP) finess_nb, visit_nb | |
Tables B (RSa pour RIP) sor_des | SOURCE_TO_CONCEPT_MAP source_code | source_vocabulary_id = ‘MS_SOR_V’ |
# PMSI Outpatient visit
# Commentaires généraux
Dans cette partie, on traite les actes et consultations externes (ACE).
Les tables CSTC désignent les tables T_MCOaaCSTC et T_SSRaaCSTC
On sélectionne uniquement les séjours valides, c'est-à-dire pour lesquels la date de début d'exécution des soins (exe_soi_dtd) est renseignée.
On supprime les séjours avec codes retours erronés, c'est-à-dire qu'on garde les lignes pour lesquelles les codes retours valent 0 (nir_ret, nai_ret, sex_ret, ias_ret, ent_dat_ret des tables CSTC)
# Tables et variables utilisées dans le SNDS
T_MCOaaCSTC
| T_MCOaaFBSTC
| T_SSRaaCSTC
| T_SSRaaFBSTC
|
# Règles de transformation
Variables | Règles | Jointure | ||
Gauche | Droite | Filtre | ||
visit_occurrence_id* | hash (visit_occurrence_source_value) | |||
person_id* | person_id de la table PERSON | Tables CSTC nir_ano_17 | PERSON person_source_value | |
visit_concept_id* | TablesT_MCOaaFBSTC
| Tables CSTC eta_num, seq_num | Tables FBSTC eta_num, seq_num | Pour T_MCOaaFBSTC: substr(reverse(act_cod),1,2) NOT IN (‘F ‘, ‘N ‘) On retire les lignes de majoration pour consultation un jour férié ou de nuit (duplication de la donnée) |
SSR : 9202 (outpatient) | ||||
visit_start_date* | exe_soi_dtd des tables CSTC | |||
visit_start_datetime | visit_start_date + ‘00:00:0000’ | |||
visit_end_date* | COALESCE(exe_soi_dtf, exe_soi_dtd) des tables CSTC | |||
visit_end_datetime | visit_end_date + ‘00:00:0000’ | |||
visit_type_concept_id* | 32810 | |||
provider_id | provider_id de PROVIDER | T_MCOaaFBSTC et T_SSRaaFBSTC exe_spe | PROVIDER provider_source_value | |
Tables CSTC eta_num, seq_num | Tables FBSTC eta_num, seq_num | |||
SSR :Jointure 2: T_SSRaaFBSTC exe_spe | SSR : Jointure 2: PROVIDER provider_source_value | |||
care_site_id | care_site_id de la table CARE_SITE | T_MCOaaFBSTC eta_num_geo à partir de 2016 eta_num avant | CARE_SITE care_site_source_value | |
T_SSRaaFBSTC eta_num_geo à partir de 2017 eta_num avant | CARE_SITE care_site_source_value | |||
visit_occurrence_source_value |
T_SSRaaCSTC: ‘ssrace’ || ‘_ ‘ || eta_num || ‘_ ‘ || seq_num |
# DCIR _ER_ETE_F
# Commentaires généraux
Dans cette partie, on traite les visites en établissement de santé (_ER_ETE_F).
Comme pour les tables LOCATION et CARE_SITE, on garde les établissements de _ER_ETE_F pour lesquels( etb_cat_rg1 > 1203 ET ete_cat_cod ≠ 114 ) OU ( ete_cat_cod ∊ [362 ; 422 ] ) (cf partie LOCATION)
# Règles de transformation
Variable | Règles | Jointure | Filtre | |
Gauche | Droite | |||
visit_occurrence_id* | hash (visit_occurrence_source_value) | |||
person_id* | person_id de la table PERSON | _ER_ETE_F ben_nir_psa | PERSON person_source_value | |
visit_concept_id* |
| _ER_ETE_F prs_nat_ref | correspondance_prs_ nat_ref_omop prs_nat_ref | |
visit_start_date* | exe_soi_dtd de _ER_ETE_F | |||
visit_start_datetime | visit_start_date + ‘00:00:0000’ | |||
visit_end_date* | exe_soi_dtf de _ER_ETE_F si rempli, sinon exe_soi_dtd | |||
visit_end_datetime | visit_end_date + ‘00:00:0000’ | |||
visit_type_concept_id* | 32810 | |||
provider_id | provider_id de PROVIDER | _ER_ETE_F pse_spe_cod | PROVIDER provider_source_value | pse_spe_cod NOT IN (0,99) |
_ER_ETE_F pse_act_nat | PROVIDER provider_source_value | pse_act_nat NOT IN (0,99) | ||
0 | pse_act_nat AND pse_spe_cod IN (0,99) | |||
care_site_id | care_site_id de CARE_SITE | _ER_ETE_F etb_exe_fin | CARE_SITE care_site_source_value | etb_pre_fin != null |
visit_occurrence_source_value | dcir_visit_id |
# DCIR _ER_PRS_F\ER_ETE_F
# Commentaires généraux
Dans cette partie, sont concernées les visites de _ER_PRS_F qui ne sont pas dans _ER_ETE_F (elles ont déjà été prises en compte dans la partie précédente)
# Règles de transformation
Champ | Règles | Jointure | Filtre | |
Gauche | Droite | |||
visit_occurrence_id* | hash (visit_occurrence_source_value) | |||
person_id* | person_id de la table PERSON | _ER_PRS_F ben_nir_psa | PERSON person_source_value | |
visit_concept_id* |
| _ER_PRS_F prs_nat_ref | correspondance_prs_nat_ref_omop prs_nat_ref | |
visit_start_date* | exe_soi_dtd de _ER_PRS_F | |||
visit_start_datetime | visit_start_date + ‘00:00:0000’ | |||
visit_end_date* |
| |||
visit_end_datetime | visit_end_date + ‘00:00:0000’ | |||
visit_type_concept_id* | 32810 | |||
provider_id | provider_id de PROVIDER | _ER_PRS_F pse_spe_cod | PROVIDER provider_source_value | pse_spe_cod NOT IN (0,99) |
_ER_PRS_F pse_act_nat | PROVIDER provider_source_value | pse_act_nat NOT IN (0,99) | ||
0 | pse_act_nat AND pse_spe_cod IN (0,99) | |||
care_site_id | care_site_id de CARE_SITE | _ER_PRS_F etb_pre_fin | CARE_SITE care_site_source_value | |
visit_occurrence_source_value | dcir_visit_id |