Hi @greshje.gmail I use the OHDSI Shiny Modules to view the DbDiagnostics results. It requires that your results are hosted in a database somewhere (I use sqlite). Here is my example code:
### INSTRUCTIONS - Install the dependencies, set the output folder where your results sit and then run the script without any other modifications
remotes::install_github("OHDSI/ResultModelManager")
remotes::install_github("OHDSI/OhdsiShinyModules", ref = "develop")
remotes::install_github("OHDSI/ShinyAppBuilder")
install.packages("RSQLite")
library(magrittr)
library(ShinyAppBuilder)
library(ResultModelManager)
library(OhdsiShinyModules)
#### Create sqlite database
setwd("")
sqlLiteLocation <- ""
dd_summary <- read.csv("data_diagnostics_summary.csv")
dd_results <- read.csv("data_diagnostics_output.csv")
dataDiagnosticsResults <- RSQLite::dbConnect(RSQLite::SQLite(), "test-dd-db-example.sqlite")
RSQLite::dbWriteTable(dataDiagnosticsResults, "data_diagnostics_summary", dd_summary, overwrite = T)
RSQLite::dbWriteTable(dataDiagnosticsResults, "data_diagnostics_output", dd_results, overwrite = T)
RSQLite::dbListTables(dataDiagnosticsResults)
createDefaultDataDashboardConfig <- function(
resultDatabaseDetails,
useKeyring = T
){
result <- createModuleConfig(
moduleId = 'dataDiag',
tabName = "DataDiagnostics",
shinyModulePackage = 'OhdsiShinyModules',
moduleUiFunction = "dataDiagnosticViewer",
moduleServerFunction = "dataDiagnosticServer",
moduleDatabaseConnectionKeyService = NULL,
moduleDatabaseConnectionKeyUsername = NULL,
moduleInfoBoxFile = "dataDiagnosticHelperFile()",
moduleIcon = "stethoscope",
resultDatabaseDetails = resultDatabaseDetails,
useKeyring = useKeyring
)
return(result)
}
config <- initializeModuleConfig() %>%
addModuleConfig(
createDefaultAboutConfig(
resultDatabaseDetails = list(),
useKeyring = T
)
) %>%
addModuleConfig(
createModuleConfig(
moduleId = 'dataDiag',
tabName = "DataDiagnostics",
shinyModulePackage = 'OhdsiShinyModules',
moduleUiFunction = "dataDiagnosticViewer",
moduleServerFunction = "dataDiagnosticServer",
moduleDatabaseConnectionKeyService = 'resultDatabaseDetails',
moduleDatabaseConnectionKeyUsername = NULL,
moduleInfoBoxFile = "dataDiagnosticHelperFile()",
moduleIcon = "stethoscope",
resultDatabaseDetails = list(
dbms = 'sqlite',
tablePrefix = '',
schema = 'main',
vocabularyDatabaseSchema = 'main'
),
useKeyring = T
)
)
connectionDetails <- DatabaseConnector::createConnectionDetails(dbms = "sqlite",
server = paste0(sqlLiteLocation,"/test-dd-db-example.sqlite"))
connection <- ResultModelManager::ConnectionHandler$new(connectionDetails)
ShinyAppBuilder::viewShiny(config = config, connection = connection)