|
|
@@ -1,8 +1,10 @@ |
|
|
|
source("functionsOvalide.R") |
|
|
|
library(lubridate) |
|
|
|
|
|
|
|
# Date pour le rapport |
|
|
|
date <- format.Date(today(),format="%d/%m/%Y") |
|
|
|
|
|
|
|
# Récupération des arguments pour utilisation non interactive |
|
|
|
arguments <- commandArgs() |
|
|
|
if (length(arguments) != 13) |
|
|
|
{ |
|
|
@@ -20,13 +22,16 @@ if (length(arguments) != 13) |
|
|
|
mois <- as.numeric(arguments[13]) |
|
|
|
} |
|
|
|
|
|
|
|
# getOvalide |
|
|
|
# Récupération des fichiers ePMSI |
|
|
|
print("1/9 - Connexion à ePMSI") |
|
|
|
connectOvalide(CHUuser, CHUpass, ATIHuser, ATIHpass) |
|
|
|
print(str_c("2/9 - Téléchargement du tableau de", mois, annee, sep = " ")) |
|
|
|
getOvalide(CHUuser, CHUpass, annee, mois) |
|
|
|
print(str_c("3/9 - Téléchargement du tableau de", mois, annee - 1, sep = " ")) |
|
|
|
getOvalide(CHUuser, CHUpass, annee - 1, mois) |
|
|
|
|
|
|
|
# extractOvalide |
|
|
|
print("ePMSI : extraction des tableaux") |
|
|
|
# Extraction des données des fichiers ePMSI |
|
|
|
print("4/9 - Extraction des tableaux ePMSI") |
|
|
|
read.csv2("listOvalide.csv") %>% |
|
|
|
{ |
|
|
|
apply(., 1, . %>% |
|
|
@@ -46,6 +51,7 @@ read.csv2("listOvalide.csv") %>% |
|
|
|
names(OvalideP) <<- .$name |
|
|
|
} |
|
|
|
|
|
|
|
# Récupération des données ePMSI de 2015 fusionnées CCEG-CHU |
|
|
|
if (annee == 2016) |
|
|
|
{ |
|
|
|
load("Ovalide.Rdata") |
|
|
@@ -53,11 +59,12 @@ if (annee == 2016) |
|
|
|
rm("CCEGCHU2015") |
|
|
|
} |
|
|
|
|
|
|
|
# Nettoyage des fichiers extraits. Les archives sont conservées. |
|
|
|
unlink(str_c("OVALIDE T2A.MCO.DGF", annee, mois, "html", sep = ".")) |
|
|
|
unlink(str_c("OVALIDE T2A.MCO.DGF", annee - 1, mois, "html", sep = ".")) |
|
|
|
|
|
|
|
# RUM + structure + calcul durée de séjour |
|
|
|
print("LIVENNE : RUM et structure") |
|
|
|
print("5/9 - LIVENNE : RUM et structure") |
|
|
|
src_mysql("pmsi_dim", "localhost", user = user, password = password) %>% |
|
|
|
tbl(sql("SELECT finess, idhosp, idrss, idrum, date_entree, date_sortie, cmd, um FROM fix116 |
|
|
|
UNION |
|
|
@@ -77,7 +84,6 @@ src_mysql("pmsi_dim", "localhost", user = user, password = password) %>% |
|
|
|
filter(dummy == last(dummy)) %>% |
|
|
|
select(-dummy, -uf_date_ferm) %>% |
|
|
|
ungroup) %>% |
|
|
|
# mutate(idrss = ifelse(idhosp %>% as.numeric < 500000000, str_c("m", idrss), idrss)) %>% # Dédoublonnage rss maternité 2013 |
|
|
|
mutate(idrss = ifelse(finess == "540000031", str_c("m", idrss), idrss)) %>% # maternité |
|
|
|
mutate(idrss = ifelse(finess == "540020112", str_c("c", idrss), idrss)) %>% # CCEG |
|
|
|
mutate(idhosp = idhosp %>% str_replace_all(" ", "")) %>% |
|
|
@@ -95,11 +101,13 @@ rum %>% |
|
|
|
mois_sortie = month(date_sortie)) %>% |
|
|
|
filter(annee_sortie > annee - 3) -> rss |
|
|
|
|
|
|
|
# Sélection uniquement des RUMs appartenant aux RSS |
|
|
|
print("7/9 - Sélection des RUMs") |
|
|
|
rum %<>% |
|
|
|
right_join(rss %>% select(idrss, annee_sortie, mois_sortie)) |
|
|
|
|
|
|
|
# GAM et structure --> hospit non codées |
|
|
|
print("LIVENNE : GAM") |
|
|
|
print("8/9 - LIVENNE : GAM") |
|
|
|
src_mysql("pmsi_dim", "localhost", user = user, password = password) %>% |
|
|
|
tbl("mvt_gam") %>% |
|
|
|
select(idhosp, date_entree, date_sortie, uf, pass_typ, type_resp) %>% |
|
|
@@ -130,6 +138,8 @@ src_mysql("pmsi_dim", "localhost", user = user, password = password) %>% |
|
|
|
pole_libelle = last(pole_libelle)) %>% |
|
|
|
mutate(mois_sortie = month(date_sortie)) -> gam |
|
|
|
|
|
|
|
print("9/9 - Écriture des données") |
|
|
|
# Enregistrement de l'exhaustivité au moment de la cloture |
|
|
|
if (mois == 1) |
|
|
|
{ |
|
|
|
exhau <- data.frame(mois = 1:12, rss = NA, manq = NA) |
|
|
|