Périmètre ER_ETE_F

Bonjour,

Je sollicite votre expertise car des interrogations subsistent malgré mes recherches en ligne et l’exploration des bases concernées dans le DCIR.

Premièrement, dans la formation DIB de l’Institut 4.10, une note indique que la table ER_ETE_F contient “retrace les informations administratives des séjours en établissements privés et publics et les actes et consultations externes des établissements publics”.

La table semble toutefois contenir des informations pour tout établissement disposant d’un FINESS (centres dentaires, laboratoires de biologie etc) ; est-ce qu’on peut donc retenir que tous les actes effectués et facturés par un établissement disposant d’un FINESS apparaitront systématiquement dans ER_ETE_F ?
Par ailleurs, les lignes présentes dans ER_ETE_F ont une correspondance dans ER_PRS_F, inversement existe-t-il une variable dans ER_PFS_F qui permettrait de savoir qu’une ligne figurera dans ER_ETE_F ? (un PFS_EXE_NUM manquant ou à 00000000 par exemple ?)

Quand je fais la jointure entre une partie de ER_ETE_F filtrée (1016 lignes issues d’un centre dentaire, FLX_TRT_DTD couvrant tout 2013), je retrouve uniquement 800 lignes après un inner join avec ER_PRS_F, et ce que je prenne les 9 clés de jointure ou les 9 moins REM_TYP_AFF, connaissez-vous une explication à ce phénomène ?

Merci par avance pour votre aide,

Raphaël

Bonjour Raphaël,

Merci pour votre question.

La table ER_ETE_F retrace de manière exhaustive les prestations (actes, séjours) exécutées par les centres de santé et les établissements privés. Elle contient également des prestations des établissements publics mais ces remontées ne sont pas exhaustives (ACE en facturation directe et activité transmise pour information).

Lors de la jointure de ER_PRS_F (=prs) et ER_ETE_F (=ete), les filtres suivants doivent être appliqués pour ne garder que les prestations des établissements de santé privés :

  • ete.ETE_IND_TAA ne 1 or ete.ETE_IND_TAA is missing

  • prs.DPN_QLF ne 71

Il n’existe pas à notre connaissance de variable permettant de savoir si une ligne se trouve systématiquement dans ER_ETE_F.

Concernant votre requête entre ER_ETE_F et ER_PRS_F, elle se fait effectivement avec les 8 clés de jointure (9 clés moins REM_TYP_AFF).
Pourriez-vous nous partager le code de votre requête afin que nous puissions vous répondre plus facilement ? Merci de faire attention à ne pas partager d’identifiant bénéficiaire, si vous en avez dans votre code.

Bien cordialement,

Angélique Delbarre - HDH

Bonjour Angélique,

Merci pour votre réponse, dont le premier élément nous est très utile : nous voudrions récupérer tous les actes et consultations externe des hôpitaux publics et privés (considérée comme activité libérale dans le second cas) ainsi que les consultations et actes qui ont lieu en centre de santé ou autre établissement de santé public ou privé. Ainsi nous pouvons utiliser votre filtre pour ne conserver que les établissements privés de ER_ETE_F, et trouver leur contrepartie publique dans les tables CSTC (informations patient) chaînées avec FCSTC (lorsque exe_spe n’est pas absent) ? Nous filtrons dans ER_PRS_F sur pse_spe_cod qui permet de conserver les médecins sur lesquels nous travaillons.

Concernant ER_ETE_F, lorsqu’un praticien exerce dans une clinique ou un centre de santé en libéral et facture en son nom, apparait-il systématiquement dans ER_ETE_F (avec le FINESS de l’établissement) ? Ou les lignes peuvent-elles n’apparaitre que dans ER_PRS_F ? Certains volumes d’activité nous semblent faibles (mais surtout pour les centres dentaires) d’où cette interrogation sur l’implication (travail effectué dans un centre muni d’un FINESS) => (activité apparait dans ER_ETE_F).

Enfin, le code en question, qui comtpe plus de lignes dans la table issue de ER_ETE_F que dans celle qui résulte de la jointure avce ER_PRS_F (la dernière instruction vérifie qu’il n’existe bien qu’une ligne dans ER_ETE_F par clé de jointure existant dans ER_PRS_F, je ne sais pas si une ligne dans ER_PRS_F peut amener à plusieurs lignes dans les tables affinées ?)

Merci pour votre temps,

Bien cordialement,

Raphaël

proc sql; drop table orauser.wittenheim;
create table orauser.wittenheim as select * from oravue.er_ete_f where
etb_exe_fin=‹ 68001181 ›;quit;
/*1028 lignes */

%let DEBUT = 20130101; /*Date de Debut de Soins sous la forme AAAAMMJJ, conserver le nom de la variable */
%let FIN = 20141231; /*Date de Fin de Soins sous la forme AAAAMMJJ, conserver le nom de la variable. */

/* Paramètres pour la macro magic_loop - NE PAS MODIFIER /
%LET BORNE = 1; /
1 : Oui 0 : Non. Indique si on a une Date de fin soins en parametre de la requete. Si 0 La date de fin de soins sera celle du dernier mois dispo*/
%LET NBFLUX = 24; /* Indique le Nombre de mois de Flux prix en compte apres Date de Fin de Soins Modification du Parametre non necessaire si si BORNE=0 */

/* Années pour le traitement des tables PMSI */
%let annee_debut = %substr(&DEBUT, 3, 2);
%let annee_fin = %substr(&FIN, 3, 2);

%MACRO MA_REQUETE;
proc sql;
create table conso as select * from orauser.wittenheim ete inner join
oravue.er_prs_f t1 on
t1.DCT_ORD_NUM = ete.DCT_ORD_NUM
AND t1.FLX_DIS_DTD = ete.FLX_DIS_DTD
AND t1.FLX_EMT_NUM = ete.FLX_EMT_NUM
AND t1.FLX_EMT_ORD = ete.FLX_EMT_ORD
AND t1.FLX_EMT_TYP = ete.FLX_EMT_TYP
AND t1.FLX_TRT_DTD = ete.FLX_TRT_DTD
AND t1.PRS_ORD_NUM = ete.PRS_ORD_NUM
/AND t1.REM_TYP_AFF = ete.REM_TYP_AFF/
AND t1.ORG_CLE_NUM = ete.ORG_CLE_NUM

						where 
							t1.FLX_DIS_DTD = &DFLUX 
			AND (t1.EXE_SOI_DTD BETWEEN &DEBSOIN 	AND &FINSOIN   );quit;

%MEND MA_REQUETE;

%m_magic_loop;
/800 lignes dans jointure er prs f et wittenheim/

proc sort data=orauser.wittenheim
out=table_sans_doublon
dupout=table_doublons;
by
DCT_ORD_NUM
FLX_DIS_DTD
FLX_EMT_NUM
FLX_EMT_ORD
FLX_EMT_TYP
FLX_TRT_DTD
PRS_ORD_NUM
ORG_CLE_NUM
;
run;