diff --git a/R/process_extract_ooh_outcomes.R b/R/process_extract_ooh_outcomes.R index 77c38db30..7e8bd94ea 100644 --- a/R/process_extract_ooh_outcomes.R +++ b/R/process_extract_ooh_outcomes.R @@ -9,7 +9,12 @@ #' #' @return the final data as a [tibble][tibble::tibble-package]. #' @family process extracts -process_extract_ooh_outcomes <- function(data, year) { +process_extract_ooh_outcomes <- function( + data, + year, + run_id = NA, + run_date_time = NA +) { log_slf_event(stage = "process", status = "start", type = "gp_ooh-o", year = year) # Only run for a single year @@ -18,7 +23,6 @@ process_extract_ooh_outcomes <- function(data, year) { # Check that the supplied year is in the correct format year <- check_year_format(year) - # Outcomes Data --------------------------------- ## Data Cleaning outcomes_clean <- data %>% @@ -52,6 +56,10 @@ process_extract_ooh_outcomes <- function(data, year) { names_prefix = "ooh_outcome", values_from = .data$outcome ) %>% + dplyr::mutate( + run_id = run_id, + run_date_time = run_date_time + ) %>% dplyr::select( "ooh_case_id", tidyselect::any_of(c( diff --git a/R/read_extract_ooh_outcomes.R b/R/read_extract_ooh_outcomes.R index 33fa15077..9dffe961f 100644 --- a/R/read_extract_ooh_outcomes.R +++ b/R/read_extract_ooh_outcomes.R @@ -5,22 +5,41 @@ #' @return a [tibble][tibble::tibble-package] with OOH Outcomes extract data read_extract_ooh_outcomes <- function( year, - file_path = get_boxi_extract_path(year = year, type = "gp_ooh-o") + denodo_connect = get_denodo_connection(BYOC_MODE = BYOC_MODE), + file_path = get_boxi_extract_path( + year = year, + type = "gp_ooh-o", + BYOC_MODE = BYOC_MODE + ), + BYOC_MODE ) { log_slf_event(stage = "read", status = "start", type = "gp_ooh-o", year = year) + year <- check_year_format(year, format = "fyyear") + c_year <- convert_fyyear_to_year(year) + + on.exit(try(DBI::dbDisconnect(denodo_connect), silent = TRUE), add = TRUE) + + # Specify years available for running + if (file_path == get_dummy_boxi_extract_path(BYOC_MODE = BYOC_MODE)) { + return(tibble::tibble()) + } + ## Load extract file - outcomes_extract <- read_file(file_path, - # All columns are character type - col_types = readr::cols(.default = readr::col_character()) + outcomes_extract <- dplyr::tbl( + denodo_connect, + dbplyr::in_schema("sdl", "sdl_gp_ooh_outcome_source") ) %>% - # rename variables - dplyr::rename( - ooh_case_id = "GUID", - outcome = "Case Outcome" + dplyr::filter( + .data$sc_start_financial_year == !!c_year, + .data$case_outcome != "", + .data$out_of_hours_services_flag == "Y" + ) %>% + dplyr::select( + ooh_case_id = "guid", + outcome = "case_outcome" ) %>% - # Remove blank outcomes - dplyr::filter(.data$outcome != "") %>% + dplyr::collect() %>% dplyr::distinct() log_slf_event(stage = "read", status = "complete", type = "gp_ooh-o", year = year) diff --git a/man/process_extract_ooh_outcomes.Rd b/man/process_extract_ooh_outcomes.Rd index d59617e7b..f4e638a22 100644 --- a/man/process_extract_ooh_outcomes.Rd +++ b/man/process_extract_ooh_outcomes.Rd @@ -4,7 +4,7 @@ \alias{process_extract_ooh_outcomes} \title{Process the GP OOH Outcomes extract} \usage{ -process_extract_ooh_outcomes(data, year) +process_extract_ooh_outcomes(data, year, run_id = NA, run_date_time = NA) } \arguments{ \item{data}{The extract to process} diff --git a/man/read_extract_ooh_outcomes.Rd b/man/read_extract_ooh_outcomes.Rd index 4bf02fcb5..01bc8c16d 100644 --- a/man/read_extract_ooh_outcomes.Rd +++ b/man/read_extract_ooh_outcomes.Rd @@ -6,7 +6,10 @@ \usage{ read_extract_ooh_outcomes( year, - file_path = get_boxi_extract_path(year = year, type = "gp_ooh-o") + denodo_connect = get_denodo_connection(BYOC_MODE = BYOC_MODE), + file_path = get_boxi_extract_path(year = year, type = "gp_ooh-o", BYOC_MODE = + BYOC_MODE), + BYOC_MODE ) } \arguments{