Open cdemkegit opened 2 months ago
@JoyBaule Can you give me more information on this issue and how to fix it. Mostly I need to know what it is intended to check. It looks like it was never working in the first place.
@andreabr-dixie Do you know if this has ever been working or is it broken just now?
this is attached to the DataStewardAudits
@cdemkegit @JoyBaule I don't think it was ever working. I don't think I have ever seen any errors.
@cdemkegit @andreabr-dixie I have looked through this some more, I think what happened is that the reporting element for g_18a wasn't fully implemented or was in the process of being worked on and fell through the cracks. Also, because we hadn't run a graduation snapshot from Edify until this year, this error wasn't on the radar like some of our more well known audit report errors like student type. That is not to say that USHE didn't ever return this issue in a FIX file during the graduation submission cycle previously because this is actually a common error which returns about a dozen records each year and requires a closer look with Julie's input. I think the idea in utValidateR was to address it in earnest but again, best intentions/time/turnover, etc.
@cdemkegit the official error from USHE states that the number of credit hours earned is less than the number of credit hours required. For example a student is awarded a bachelors for a degree that requires 120 credit hours but actually only has 118 credit hours. There are a number of reasons for this, sometimes it is a data entry error or a student repeated a class after graduation. Finally, this year we had a couple awards awarded posthumously. If we can get the audit report to show the errors Julie can provide an explanation ahead of the first file submission to lessen the error/FIX load. We do this often with the census and end of term snapshots and can apply a mutate statement ahead of file submission.
@JoyBaule @cdemkegit I think this still needs to be fixed. As Joy said above, this is looking at the total number of credits the student had a graduation, and compares it to the total number of credits required for the degree. It should report any students who have credits less than the required hours. I know there was a summer a few years ago when several students were awarded degrees but didn't have the required hours. Joy could probably give you the few students who were awarded posthumously this last year to test with.
g17a check as it is currently
"G18a", expr(is.na(primary_program_id) |
is.numeric(required_credits) &
!is.na(required_credits) &
required_credits >= 0 ),
proposed changes:
"G18a", expr(is.na(primary_program_id) |
is.numeric(required_credits) &
!is.na(required_credits) &
required_credits >= 0 &
overall_cumulative_credits_earned >= required_credits),
@andreabringhurst , @JoyBaule, @mkhassan-isu does this look like it can get to what we are looking for?
here is me playing around to see if my logic is even right.
sample_size <- 30
data_df <- tibble(
primary_program_id = sample(c("psy", "math", "engl", NA), sample_size, TRUE),
required_credits = sample(c(130, 134, 120, 0, NA), sample_size, TRUE),
overall_cumulative_credits_earned = sample(c(120, 150, 30, 0, NA), sample_size, TRUE)
)
is_enough_credits_to_grad <- function(.data){
output_df <- .data %>%
mutate(check =
is.na(primary_program_id) |
is.numeric(required_credits) &
!is.na(required_credits) &
overall_cumulative_credits_earned >= 0 &
is.numeric(overall_cumulative_credits_earned) &
!is.na(overall_cumulative_credits_earned) &
overall_cumulative_credits_earned >= 0 &
overall_cumulative_credits_earned >= required_credits)
return(output_df)
}
test <- is_enough_credits_to_grad(data_df)
This is never worked but we didn't noticed it until summer 2024. Look In the
checklist.R file
g_18AData elements needed to make this work: Are these elements are in the graduation sql already? Yes, see schedued-pins graduation.
overall_cumulative_credits_earned
required_credits
overall_cumulative_credits_earned < required_credits