From e185a1e44d50c58ad0cc1efc7b14e012a52bb0a1 Mon Sep 17 00:00:00 2001 From: Costa <47926492N@ICO.SCS.local> Date: Tue, 16 Nov 2021 11:10:11 +0100 Subject: [PATCH] Adding dbtype to sqlShowSamples function. --- sqlFunctions.R | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/sqlFunctions.R b/sqlFunctions.R index d697b1a..a101683 100644 --- a/sqlFunctions.R +++ b/sqlFunctions.R @@ -27,17 +27,23 @@ sqlBackUp<-function(dbfile=file,bu.dir){ } sqlShowSamples<-function(conn=dta, nhcs=nhc.test, verb=F, dbtype){ + if (dbtype == "OV"){ + db<-c("dbtables"="SAMPLES", "dbcode"="OVID", "dbsamples"="samples") + query<-paste0("SELECT O.NHC,S.* FROM ",db["dbtables"]," S INNER JOIN ",db["dbcode"]," O ON O.",db["dbcode"],"=S.",db["dbcode"]) + } + if (dbtype == "UM"){ + db<-c("dbtables"="MUESTRAS", "dbcode"="UMID", "dbsamples"="CODIGO") + query<-paste0("SELECT O.NHC,S.* FROM ",db["dbtables"]," S INNER JOIN ",db["dbcode"]," O ON O.",db["dbcode"],"=S.",db["dbcode"]) + } + if (nrow(sqlQuery(conn, query) %>% filter(NHC %in% nhcs)) == 0){ + return("No hay muestras de ningĂșn paciente.") + } if (isFALSE(verb)){ - sqlQuery(conn, "SELECT O.NHC,S.* - FROM SAMPLES S - INNER JOIN OVID O - ON O.OVID=S.OVID") %>% filter(NHC %in% nhcs) %>% - group_by(NHC,OVID) %>% summarise(Samples=length(samples), Names=paste0(samples, collapse = ";")) %>% merge(data.frame(NHC=nhcs),all=T) + sqlQuery(conn, query) %>% filter(NHC %in% nhcs) %>% + group_by(NHC,db["dbcode"]) %>% summarise(Samples=length(UQ(rlang::sym(db["dbsamples"]))), Names=paste0(UQ(rlang::sym(db["dbsamples"])), collapse = ";")) %>% + merge(data.frame(NHC=nhcs),all=T) %>% rename((!!db["dbcode"]):='db["dbcode"]') }else{ - sqlQuery(conn, "SELECT O.NHC,S.* - FROM SAMPLES S - INNER JOIN OVID O - ON O.OVID=S.OVID") %>% filter(NHC %in% nhcs) + sqlQuery(conn, query) %>% filter(NHC %in% nhcs) } }