R/StaffFunctions.R

Defines functions deleteStaffType createStaffType modifyStaffType getStaffType getAllStaffTypes deleteStaffStaffType createStaffStaffType modifyStaffStaffType getStaffStaffType getAllStaffStaffTypes deleteStaff createStaff modifyStaff getStaff getAllStaff deleteStaffEntityYear createStaffEntityYear modifyStaffEntityYear getStaffEntityYear getAllStaffEntityYears deleteStaffDepartment createStaffDepartment modifyStaffDepartment getStaffDepartment getAllStaffDepartments deleteScheduleBlockerDisplayPeriod createScheduleBlockerDisplayPeriod modifyScheduleBlockerDisplayPeriod getScheduleBlockerDisplayPeriod getAllScheduleBlockerDisplayPeriods deleteScheduleBlocker createScheduleBlocker modifyScheduleBlocker getScheduleBlocker getAllScheduleBlockers deleteNumberedStaffEntityYearForDistrictAndSchoolYear createNumberedStaffEntityYearForDistrictAndSchoolYear modifyNumberedStaffEntityYearForDistrictAndSchoolYear getNumberedStaffEntityYearForDistrictAndSchoolYear getAllNumberedStaffEntityYearForDistrictAndSchoolYears deleteNextStaffNumber createNextStaffNumber modifyNextStaffNumber getNextStaffNumber getAllNextStaffNumbers deleteMassPrintStaffScheduleRunHistory createMassPrintStaffScheduleRunHistory modifyMassPrintStaffScheduleRunHistory getMassPrintStaffScheduleRunHistory getAllMassPrintStaffScheduleRunHistories deleteJobTitleMA createJobTitleMA modifyJobTitleMA getJobTitleMA getAllJobTitleMAs deleteDepartment createDepartment modifyDepartment getDepartment getAllDepartments deleteConfigSystemStaff createConfigSystemStaff modifyConfigSystemStaff getConfigSystemStaff getAllConfigSystemsStaff deleteConfigEntityGroupYearStaff createConfigEntityGroupYearStaff modifyConfigEntityGroupYearStaff getConfigEntityGroupYearStaff getAllConfigEntityGroupYearsStaff

Documented in createConfigEntityGroupYearStaff createConfigSystemStaff createDepartment createJobTitleMA createMassPrintStaffScheduleRunHistory createNextStaffNumber createNumberedStaffEntityYearForDistrictAndSchoolYear createScheduleBlocker createScheduleBlockerDisplayPeriod createStaff createStaffDepartment createStaffEntityYear createStaffStaffType createStaffType deleteConfigEntityGroupYearStaff deleteConfigSystemStaff deleteDepartment deleteJobTitleMA deleteMassPrintStaffScheduleRunHistory deleteNextStaffNumber deleteNumberedStaffEntityYearForDistrictAndSchoolYear deleteScheduleBlocker deleteScheduleBlockerDisplayPeriod deleteStaff deleteStaffDepartment deleteStaffEntityYear deleteStaffStaffType deleteStaffType getAllConfigEntityGroupYearsStaff getAllConfigSystemsStaff getAllDepartments getAllJobTitleMAs getAllMassPrintStaffScheduleRunHistories getAllNextStaffNumbers getAllNumberedStaffEntityYearForDistrictAndSchoolYears getAllScheduleBlockerDisplayPeriods getAllScheduleBlockers getAllStaff getAllStaffDepartments getAllStaffEntityYears getAllStaffStaffTypes getAllStaffTypes getConfigEntityGroupYearStaff getConfigSystemStaff getDepartment

#' Get all ConfigEntityGroupYears.
#'
#' This function returns a dataframe of all ConfigEntityGroupYears in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Staff
#' @return All ConfigEntityGroupYears in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllConfigEntityGroupYearsStaff <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnConfigEntityGroupYearID = F, returnAllowFoodServiceOnlinePaymentsAccessByDefault = F, returnCreatedTime = F, returnEntityGroupKey = F, returnEntityID = F, returnModifiedTime = F, returnSchoolYearID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Staff", "ConfigEntityGroupYear", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific ConfigEntityGroupYear
#'
#' This function returns fields for a ConfigEntityGroupYear.
#'
#' @param ConfigEntityGroupYearID The id of the ConfigEntityGroupYear.\cr Run \code{\link{getAllConfigEntityGroupYears}} for a list of ConfigEntityGroupYears.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Staff
#' @return Details for the ConfigEntityGroupYear.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getConfigEntityGroupYearStaff <- function(ConfigEntityGroupYearID, EntityID = 1, returnConfigEntityGroupYearID = F, returnAllowFoodServiceOnlinePaymentsAccessByDefault = F, returnCreatedTime = F, returnEntityGroupKey = F, returnEntityID = F, returnModifiedTime = F, returnSchoolYearID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Staff",  "ConfigEntityGroupYear", ConfigEntityGroupYearID, searchFields, EntityID)

	}


#' Modify a specific ConfigEntityGroupYear
#'
#' This function modifies fields for a ConfigEntityGroupYear.
#'
#' @param ConfigEntityGroupYearID The id of the ConfigEntityGroupYear to be modified.\cr Run \code{\link{getAllConfigEntityGroupYears}} for a list of ConfigEntityGroupYears.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Staff
#' @return Details of the modified ConfigEntityGroupYear.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyConfigEntityGroupYearStaff <- function(ConfigEntityGroupYearID, EntityID = 1, setAllowFoodServiceOnlinePaymentsAccessByDefault = NULL, setEntityGroupKey = NULL, setEntityID = NULL, setSchoolYearID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Staff",  "ConfigEntityGroupYear", ConfigEntityGroupYearID, names(functionParams), functionParams, EntityID)

	}


#' Create new ConfigEntityGroupYear.
#'
#' This function creates a new ConfigEntityGroupYear.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Staff
#' @return The fields used to define the newly created ConfigEntityGroupYear.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createConfigEntityGroupYearStaff <- function(EntityID = 1, setAllowFoodServiceOnlinePaymentsAccessByDefault = NULL, setEntityGroupKey = NULL, setEntityID = NULL, setSchoolYearID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Staff",  "ConfigEntityGroupYear", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific ConfigEntityGroupYear
#'
#' This function deletes a ConfigEntityGroupYear.
#'
#' @param ConfigEntityGroupYearID The id of the ConfigEntityGroupYear.\cr Run \code{\link{getAllConfigEntityGroupYears}} for a list of ConfigEntityGroupYears.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Staff
#' @return The id of the deleted ConfigEntityGroupYear.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteConfigEntityGroupYearStaff <- function(ConfigEntityGroupYearID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Staff",  "ConfigEntityGroupYear", ConfigEntityGroupYearID, EntityID)

	}


#' Get all ConfigSystems.
#'
#' This function returns a dataframe of all ConfigSystems in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Staff
#' @return All ConfigSystems in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllConfigSystemsStaff <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnConfigSystemID = F, returnAutoGenerateSecurityUser = F, returnAutoGenerateSecurityUserCode = F, returnCreatedTime = F, returnModifiedTime = F, returnNewTeacherAccessUserMessageContent = F, returnNewTeacherAccessUserMessageSubject = F, returnStaffNumberMask = F, returnStaffNumberStartValue = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Staff", "ConfigSystem", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific ConfigSystem
#'
#' This function returns fields for a ConfigSystem.
#'
#' @param ConfigSystemID The id of the ConfigSystem.\cr Run \code{\link{getAllConfigSystems}} for a list of ConfigSystems.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Staff
#' @return Details for the ConfigSystem.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getConfigSystemStaff <- function(ConfigSystemID, EntityID = 1, returnConfigSystemID = F, returnAutoGenerateSecurityUser = F, returnAutoGenerateSecurityUserCode = F, returnCreatedTime = F, returnModifiedTime = F, returnNewTeacherAccessUserMessageContent = F, returnNewTeacherAccessUserMessageSubject = F, returnStaffNumberMask = F, returnStaffNumberStartValue = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Staff",  "ConfigSystem", ConfigSystemID, searchFields, EntityID)

	}


#' Modify a specific ConfigSystem
#'
#' This function modifies fields for a ConfigSystem.
#'
#' @param ConfigSystemID The id of the ConfigSystem to be modified.\cr Run \code{\link{getAllConfigSystems}} for a list of ConfigSystems.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Staff
#' @return Details of the modified ConfigSystem.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyConfigSystemStaff <- function(ConfigSystemID, EntityID = 1, setAutoGenerateSecurityUser = NULL, setAutoGenerateSecurityUserCode = NULL, setNewTeacherAccessUserMessageContent = NULL, setNewTeacherAccessUserMessageSubject = NULL, setStaffNumberMask = NULL, setStaffNumberStartValue = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Staff",  "ConfigSystem", ConfigSystemID, names(functionParams), functionParams, EntityID)

	}


#' Create new ConfigSystem.
#'
#' This function creates a new ConfigSystem.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Staff
#' @return The fields used to define the newly created ConfigSystem.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createConfigSystemStaff <- function(EntityID = 1, setAutoGenerateSecurityUser = NULL, setAutoGenerateSecurityUserCode = NULL, setNewTeacherAccessUserMessageContent = NULL, setNewTeacherAccessUserMessageSubject = NULL, setStaffNumberMask = NULL, setStaffNumberStartValue = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Staff",  "ConfigSystem", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific ConfigSystem
#'
#' This function deletes a ConfigSystem.
#'
#' @param ConfigSystemID The id of the ConfigSystem.\cr Run \code{\link{getAllConfigSystems}} for a list of ConfigSystems.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Staff
#' @return The id of the deleted ConfigSystem.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteConfigSystemStaff <- function(ConfigSystemID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Staff",  "ConfigSystem", ConfigSystemID, EntityID)

	}


#' Get all Departments.
#'
#' This function returns a dataframe of all Departments in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Staff
#' @return All Departments in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllDepartments <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnDepartmentID = F, returnCode = F, returnCodeDescription = F, returnCreatedTime = F, returnDepartmentIDClonedFrom = F, returnDepartmentIDClonedTo = F, returnDescription = F, returnEntityGroupKey = F, returnEntityID = F, returnModifiedTime = F, returnSchoolYearID = F, returnStaffIDDepartmentHead = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Staff", "Department", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific Department
#'
#' This function returns fields for a Department.
#'
#' @param DepartmentID The id of the Department.\cr Run \code{\link{getAllDepartments}} for a list of Departments.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Staff
#' @return Details for the Department.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getDepartment <- function(DepartmentID, EntityID = 1, returnDepartmentID = F, returnCode = F, returnCodeDescription = F, returnCreatedTime = F, returnDepartmentIDClonedFrom = F, returnDepartmentIDClonedTo = F, returnDescription = F, returnEntityGroupKey = F, returnEntityID = F, returnModifiedTime = F, returnSchoolYearID = F, returnStaffIDDepartmentHead = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Staff",  "Department", DepartmentID, searchFields, EntityID)

	}


#' Modify a specific Department
#'
#' This function modifies fields for a Department.
#'
#' @param DepartmentID The id of the Department to be modified.\cr Run \code{\link{getAllDepartments}} for a list of Departments.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Staff
#' @return Details of the modified Department.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyDepartment <- function(DepartmentID, EntityID = 1, setCode = NULL, setDepartmentIDClonedFrom = NULL, setDescription = NULL, setEntityGroupKey = NULL, setEntityID = NULL, setSchoolYearID = NULL, setStaffIDDepartmentHead = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Staff",  "Department", DepartmentID, names(functionParams), functionParams, EntityID)

	}


#' Create new Department.
#'
#' This function creates a new Department.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Staff
#' @return The fields used to define the newly created Department.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createDepartment <- function(EntityID = 1, setCode = NULL, setDepartmentIDClonedFrom = NULL, setDescription = NULL, setEntityGroupKey = NULL, setEntityID = NULL, setSchoolYearID = NULL, setStaffIDDepartmentHead = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Staff",  "Department", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific Department
#'
#' This function deletes a Department.
#'
#' @param DepartmentID The id of the Department.\cr Run \code{\link{getAllDepartments}} for a list of Departments.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Staff
#' @return The id of the deleted Department.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteDepartment <- function(DepartmentID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Staff",  "Department", DepartmentID, EntityID)

	}


#' Get all JobTitleMAs.
#'
#' This function returns a dataframe of all JobTitleMAs in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Staff
#' @return All JobTitleMAs in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllJobTitleMAs <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnJobTitleMAID = F, returnCreatedTime = F, returnModifiedTime = F, returnStaffID = F, returnTitle = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Staff", "JobTitleMA", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific JobTitleMA
#'
#' This function returns fields for a JobTitleMA.
#'
#' @param JobTitleMAID The id of the JobTitleMA.\cr Run \code{\link{getAllJobTitleMAs}} for a list of JobTitleMAs.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Staff
#' @return Details for the JobTitleMA.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getJobTitleMA <- function(JobTitleMAID, EntityID = 1, returnJobTitleMAID = F, returnCreatedTime = F, returnModifiedTime = F, returnStaffID = F, returnTitle = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Staff",  "JobTitleMA", JobTitleMAID, searchFields, EntityID)

	}


#' Modify a specific JobTitleMA
#'
#' This function modifies fields for a JobTitleMA.
#'
#' @param JobTitleMAID The id of the JobTitleMA to be modified.\cr Run \code{\link{getAllJobTitleMAs}} for a list of JobTitleMAs.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Staff
#' @return Details of the modified JobTitleMA.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyJobTitleMA <- function(JobTitleMAID, EntityID = 1, setStaffID = NULL, setTitle = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Staff",  "JobTitleMA", JobTitleMAID, names(functionParams), functionParams, EntityID)

	}


#' Create new JobTitleMA.
#'
#' This function creates a new JobTitleMA.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Staff
#' @return The fields used to define the newly created JobTitleMA.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createJobTitleMA <- function(EntityID = 1, setStaffID = NULL, setTitle = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Staff",  "JobTitleMA", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific JobTitleMA
#'
#' This function deletes a JobTitleMA.
#'
#' @param JobTitleMAID The id of the JobTitleMA.\cr Run \code{\link{getAllJobTitleMAs}} for a list of JobTitleMAs.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Staff
#' @return The id of the deleted JobTitleMA.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteJobTitleMA <- function(JobTitleMAID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Staff",  "JobTitleMA", JobTitleMAID, EntityID)

	}


#' Get all MassPrintStaffScheduleRunHistories.
#'
#' This function returns a dataframe of all MassPrintStaffScheduleRunHistories in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Staff
#' @return All MassPrintStaffScheduleRunHistories in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllMassPrintStaffScheduleRunHistories <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnMassPrintStaffScheduleRunHistoryID = F, returnCreatedTime = F, returnEntityID = F, returnMediaID = F, returnModifiedTime = F, returnParameterData = F, returnParameterDescription = F, returnRequestIdentifier = F, returnRunDescription = F, returnSchoolYearID = F, returnSendMessageOnComplete = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnWorkflowInstanceID = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Staff", "MassPrintStaffScheduleRunHistory", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific MassPrintStaffScheduleRunHistory
#'
#' This function returns fields for a MassPrintStaffScheduleRunHistory.
#'
#' @param MassPrintStaffScheduleRunHistoryID The id of the MassPrintStaffScheduleRunHistory.\cr Run \code{\link{getAllMassPrintStaffScheduleRunHistories}} for a list of MassPrintStaffScheduleRunHistories.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Staff
#' @return Details for the MassPrintStaffScheduleRunHistory.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getMassPrintStaffScheduleRunHistory <- function(MassPrintStaffScheduleRunHistoryID, EntityID = 1, returnMassPrintStaffScheduleRunHistoryID = F, returnCreatedTime = F, returnEntityID = F, returnMediaID = F, returnModifiedTime = F, returnParameterData = F, returnParameterDescription = F, returnRequestIdentifier = F, returnRunDescription = F, returnSchoolYearID = F, returnSendMessageOnComplete = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnWorkflowInstanceID = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Staff",  "MassPrintStaffScheduleRunHistory", MassPrintStaffScheduleRunHistoryID, searchFields, EntityID)

	}


#' Modify a specific MassPrintStaffScheduleRunHistory
#'
#' This function modifies fields for a MassPrintStaffScheduleRunHistory.
#'
#' @param MassPrintStaffScheduleRunHistoryID The id of the MassPrintStaffScheduleRunHistory to be modified.\cr Run \code{\link{getAllMassPrintStaffScheduleRunHistories}} for a list of MassPrintStaffScheduleRunHistorys.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Staff
#' @return Details of the modified MassPrintStaffScheduleRunHistory.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyMassPrintStaffScheduleRunHistory <- function(MassPrintStaffScheduleRunHistoryID, EntityID = 1, setEntityID = NULL, setMediaID = NULL, setRequestIdentifier = NULL, setRunDescription = NULL, setSchoolYearID = NULL, setSendMessageOnComplete = NULL, setWorkflowInstanceID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Staff",  "MassPrintStaffScheduleRunHistory", MassPrintStaffScheduleRunHistoryID, names(functionParams), functionParams, EntityID)

	}


#' Create new MassPrintStaffScheduleRunHistory.
#'
#' This function creates a new MassPrintStaffScheduleRunHistory.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Staff
#' @return The fields used to define the newly created MassPrintStaffScheduleRunHistory.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createMassPrintStaffScheduleRunHistory <- function(EntityID = 1, setEntityID = NULL, setMediaID = NULL, setRequestIdentifier = NULL, setRunDescription = NULL, setSchoolYearID = NULL, setSendMessageOnComplete = NULL, setWorkflowInstanceID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Staff",  "MassPrintStaffScheduleRunHistory", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific MassPrintStaffScheduleRunHistory
#'
#' This function deletes a MassPrintStaffScheduleRunHistory.
#'
#' @param MassPrintStaffScheduleRunHistoryID The id of the MassPrintStaffScheduleRunHistory.\cr Run \code{\link{getAllMassPrintStaffScheduleRunHistories}} for a list of MassPrintStaffScheduleRunHistories.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Staff
#' @return The id of the deleted MassPrintStaffScheduleRunHistory.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteMassPrintStaffScheduleRunHistory <- function(MassPrintStaffScheduleRunHistoryID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Staff",  "MassPrintStaffScheduleRunHistory", MassPrintStaffScheduleRunHistoryID, EntityID)

	}


#' Get all NextStaffNumbers.
#'
#' This function returns a dataframe of all NextStaffNumbers in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Staff
#' @return All NextStaffNumbers in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllNextStaffNumbers <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnNextStaffNumberID = F, returnCreatedTime = F, returnMaskPrefix = F, returnModifiedTime = F, returnSequenceNumber = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Staff", "NextStaffNumber", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific NextStaffNumber
#'
#' This function returns fields for a NextStaffNumber.
#'
#' @param NextStaffNumberID The id of the NextStaffNumber.\cr Run \code{\link{getAllNextStaffNumbers}} for a list of NextStaffNumbers.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Staff
#' @return Details for the NextStaffNumber.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getNextStaffNumber <- function(NextStaffNumberID, EntityID = 1, returnNextStaffNumberID = F, returnCreatedTime = F, returnMaskPrefix = F, returnModifiedTime = F, returnSequenceNumber = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Staff",  "NextStaffNumber", NextStaffNumberID, searchFields, EntityID)

	}


#' Modify a specific NextStaffNumber
#'
#' This function modifies fields for a NextStaffNumber.
#'
#' @param NextStaffNumberID The id of the NextStaffNumber to be modified.\cr Run \code{\link{getAllNextStaffNumbers}} for a list of NextStaffNumbers.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Staff
#' @return Details of the modified NextStaffNumber.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyNextStaffNumber <- function(NextStaffNumberID, EntityID = 1, setMaskPrefix = NULL, setSequenceNumber = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Staff",  "NextStaffNumber", NextStaffNumberID, names(functionParams), functionParams, EntityID)

	}


#' Create new NextStaffNumber.
#'
#' This function creates a new NextStaffNumber.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Staff
#' @return The fields used to define the newly created NextStaffNumber.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createNextStaffNumber <- function(EntityID = 1, setMaskPrefix = NULL, setSequenceNumber = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Staff",  "NextStaffNumber", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific NextStaffNumber
#'
#' This function deletes a NextStaffNumber.
#'
#' @param NextStaffNumberID The id of the NextStaffNumber.\cr Run \code{\link{getAllNextStaffNumbers}} for a list of NextStaffNumbers.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Staff
#' @return The id of the deleted NextStaffNumber.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteNextStaffNumber <- function(NextStaffNumberID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Staff",  "NextStaffNumber", NextStaffNumberID, EntityID)

	}


#' Get all NumberedStaffEntityYearForDistrictAndSchoolYears.
#'
#' This function returns a dataframe of all NumberedStaffEntityYearForDistrictAndSchoolYears in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Staff
#' @return All NumberedStaffEntityYearForDistrictAndSchoolYears in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllNumberedStaffEntityYearForDistrictAndSchoolYears <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnStaffEntityYearID = F, returnDistrictID = F, returnEntityID = F, returnSchoolYearID = F, returnStaffDistrictRowNumber = F, returnStaffID = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Staff", "NumberedStaffEntityYearForDistrictAndSchoolYear", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific NumberedStaffEntityYearForDistrictAndSchoolYear
#'
#' This function returns fields for a NumberedStaffEntityYearForDistrictAndSchoolYear.
#'
#' @param NumberedStaffEntityYearForDistrictAndSchoolYearID The id of the NumberedStaffEntityYearForDistrictAndSchoolYear.\cr Run \code{\link{getAllNumberedStaffEntityYearForDistrictAndSchoolYears}} for a list of NumberedStaffEntityYearForDistrictAndSchoolYears.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Staff
#' @return Details for the NumberedStaffEntityYearForDistrictAndSchoolYear.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getNumberedStaffEntityYearForDistrictAndSchoolYear <- function(NumberedStaffEntityYearForDistrictAndSchoolYearID, EntityID = 1, returnStaffEntityYearID = F, returnDistrictID = F, returnEntityID = F, returnSchoolYearID = F, returnStaffDistrictRowNumber = F, returnStaffID = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Staff",  "NumberedStaffEntityYearForDistrictAndSchoolYear", NumberedStaffEntityYearForDistrictAndSchoolYearID, searchFields, EntityID)

	}


#' Modify a specific NumberedStaffEntityYearForDistrictAndSchoolYear
#'
#' This function modifies fields for a NumberedStaffEntityYearForDistrictAndSchoolYear.
#'
#' @param NumberedStaffEntityYearForDistrictAndSchoolYearID The id of the NumberedStaffEntityYearForDistrictAndSchoolYear to be modified.\cr Run \code{\link{getAllNumberedStaffEntityYearForDistrictAndSchoolYears}} for a list of NumberedStaffEntityYearForDistrictAndSchoolYears.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Staff
#' @return Details of the modified NumberedStaffEntityYearForDistrictAndSchoolYear.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyNumberedStaffEntityYearForDistrictAndSchoolYear <- function(NumberedStaffEntityYearForDistrictAndSchoolYearID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Staff",  "NumberedStaffEntityYearForDistrictAndSchoolYear", NumberedStaffEntityYearForDistrictAndSchoolYearID, names(functionParams), functionParams, EntityID)

	}


#' Create new NumberedStaffEntityYearForDistrictAndSchoolYear.
#'
#' This function creates a new NumberedStaffEntityYearForDistrictAndSchoolYear.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Staff
#' @return The fields used to define the newly created NumberedStaffEntityYearForDistrictAndSchoolYear.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createNumberedStaffEntityYearForDistrictAndSchoolYear <- function(EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Staff",  "NumberedStaffEntityYearForDistrictAndSchoolYear", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific NumberedStaffEntityYearForDistrictAndSchoolYear
#'
#' This function deletes a NumberedStaffEntityYearForDistrictAndSchoolYear.
#'
#' @param NumberedStaffEntityYearForDistrictAndSchoolYearID The id of the NumberedStaffEntityYearForDistrictAndSchoolYear.\cr Run \code{\link{getAllNumberedStaffEntityYearForDistrictAndSchoolYears}} for a list of NumberedStaffEntityYearForDistrictAndSchoolYears.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Staff
#' @return The id of the deleted NumberedStaffEntityYearForDistrictAndSchoolYear.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteNumberedStaffEntityYearForDistrictAndSchoolYear <- function(NumberedStaffEntityYearForDistrictAndSchoolYearID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Staff",  "NumberedStaffEntityYearForDistrictAndSchoolYear", NumberedStaffEntityYearForDistrictAndSchoolYearID, EntityID)

	}


#' Get all ScheduleBlockers.
#'
#' This function returns a dataframe of all ScheduleBlockers in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Staff
#' @return All ScheduleBlockers in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllScheduleBlockers <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnScheduleBlockerID = F, returnCreatedTime = F, returnEndDate = F, returnEntityID = F, returnModifiedTime = F, returnReason = F, returnSchoolYearID = F, returnStaffID = F, returnStartDate = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Staff", "ScheduleBlocker", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific ScheduleBlocker
#'
#' This function returns fields for a ScheduleBlocker.
#'
#' @param ScheduleBlockerID The id of the ScheduleBlocker.\cr Run \code{\link{getAllScheduleBlockers}} for a list of ScheduleBlockers.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Staff
#' @return Details for the ScheduleBlocker.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getScheduleBlocker <- function(ScheduleBlockerID, EntityID = 1, returnScheduleBlockerID = F, returnCreatedTime = F, returnEndDate = F, returnEntityID = F, returnModifiedTime = F, returnReason = F, returnSchoolYearID = F, returnStaffID = F, returnStartDate = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Staff",  "ScheduleBlocker", ScheduleBlockerID, searchFields, EntityID)

	}


#' Modify a specific ScheduleBlocker
#'
#' This function modifies fields for a ScheduleBlocker.
#'
#' @param ScheduleBlockerID The id of the ScheduleBlocker to be modified.\cr Run \code{\link{getAllScheduleBlockers}} for a list of ScheduleBlockers.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Staff
#' @return Details of the modified ScheduleBlocker.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyScheduleBlocker <- function(ScheduleBlockerID, EntityID = 1, setEndDate = NULL, setEntityID = NULL, setReason = NULL, setSchoolYearID = NULL, setStaffID = NULL, setStartDate = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Staff",  "ScheduleBlocker", ScheduleBlockerID, names(functionParams), functionParams, EntityID)

	}


#' Create new ScheduleBlocker.
#'
#' This function creates a new ScheduleBlocker.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Staff
#' @return The fields used to define the newly created ScheduleBlocker.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createScheduleBlocker <- function(EntityID = 1, setEndDate = NULL, setEntityID = NULL, setReason = NULL, setSchoolYearID = NULL, setStaffID = NULL, setStartDate = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Staff",  "ScheduleBlocker", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific ScheduleBlocker
#'
#' This function deletes a ScheduleBlocker.
#'
#' @param ScheduleBlockerID The id of the ScheduleBlocker.\cr Run \code{\link{getAllScheduleBlockers}} for a list of ScheduleBlockers.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Staff
#' @return The id of the deleted ScheduleBlocker.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteScheduleBlocker <- function(ScheduleBlockerID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Staff",  "ScheduleBlocker", ScheduleBlockerID, EntityID)

	}


#' Get all ScheduleBlockerDisplayPeriods.
#'
#' This function returns a dataframe of all ScheduleBlockerDisplayPeriods in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Staff
#' @return All ScheduleBlockerDisplayPeriods in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllScheduleBlockerDisplayPeriods <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnScheduleBlockerDisplayPeriodID = F, returnCreatedTime = F, returnDisplayPeriodID = F, returnModifiedTime = F, returnScheduleBlockerID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Staff", "ScheduleBlockerDisplayPeriod", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific ScheduleBlockerDisplayPeriod
#'
#' This function returns fields for a ScheduleBlockerDisplayPeriod.
#'
#' @param ScheduleBlockerDisplayPeriodID The id of the ScheduleBlockerDisplayPeriod.\cr Run \code{\link{getAllScheduleBlockerDisplayPeriods}} for a list of ScheduleBlockerDisplayPeriods.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Staff
#' @return Details for the ScheduleBlockerDisplayPeriod.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getScheduleBlockerDisplayPeriod <- function(ScheduleBlockerDisplayPeriodID, EntityID = 1, returnScheduleBlockerDisplayPeriodID = F, returnCreatedTime = F, returnDisplayPeriodID = F, returnModifiedTime = F, returnScheduleBlockerID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Staff",  "ScheduleBlockerDisplayPeriod", ScheduleBlockerDisplayPeriodID, searchFields, EntityID)

	}


#' Modify a specific ScheduleBlockerDisplayPeriod
#'
#' This function modifies fields for a ScheduleBlockerDisplayPeriod.
#'
#' @param ScheduleBlockerDisplayPeriodID The id of the ScheduleBlockerDisplayPeriod to be modified.\cr Run \code{\link{getAllScheduleBlockerDisplayPeriods}} for a list of ScheduleBlockerDisplayPeriods.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Staff
#' @return Details of the modified ScheduleBlockerDisplayPeriod.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyScheduleBlockerDisplayPeriod <- function(ScheduleBlockerDisplayPeriodID, EntityID = 1, setDisplayPeriodID = NULL, setScheduleBlockerID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Staff",  "ScheduleBlockerDisplayPeriod", ScheduleBlockerDisplayPeriodID, names(functionParams), functionParams, EntityID)

	}


#' Create new ScheduleBlockerDisplayPeriod.
#'
#' This function creates a new ScheduleBlockerDisplayPeriod.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Staff
#' @return The fields used to define the newly created ScheduleBlockerDisplayPeriod.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createScheduleBlockerDisplayPeriod <- function(EntityID = 1, setDisplayPeriodID = NULL, setScheduleBlockerID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Staff",  "ScheduleBlockerDisplayPeriod", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific ScheduleBlockerDisplayPeriod
#'
#' This function deletes a ScheduleBlockerDisplayPeriod.
#'
#' @param ScheduleBlockerDisplayPeriodID The id of the ScheduleBlockerDisplayPeriod.\cr Run \code{\link{getAllScheduleBlockerDisplayPeriods}} for a list of ScheduleBlockerDisplayPeriods.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Staff
#' @return The id of the deleted ScheduleBlockerDisplayPeriod.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteScheduleBlockerDisplayPeriod <- function(ScheduleBlockerDisplayPeriodID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Staff",  "ScheduleBlockerDisplayPeriod", ScheduleBlockerDisplayPeriodID, EntityID)

	}


#' Get all StaffDepartments.
#'
#' This function returns a dataframe of all StaffDepartments in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Staff
#' @return All StaffDepartments in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllStaffDepartments <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnStaffDepartmentID = F, returnCreatedTime = F, returnDepartmentID = F, returnIsDefaultDepartment = F, returnModifiedTime = F, returnStaffDepartmentIDClonedFrom = F, returnStaffID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Staff", "StaffDepartment", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific StaffDepartment
#'
#' This function returns fields for a StaffDepartment.
#'
#' @param StaffDepartmentID The id of the StaffDepartment.\cr Run \code{\link{getAllStaffDepartments}} for a list of StaffDepartments.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Staff
#' @return Details for the StaffDepartment.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getStaffDepartment <- function(StaffDepartmentID, EntityID = 1, returnStaffDepartmentID = F, returnCreatedTime = F, returnDepartmentID = F, returnIsDefaultDepartment = F, returnModifiedTime = F, returnStaffDepartmentIDClonedFrom = F, returnStaffID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Staff",  "StaffDepartment", StaffDepartmentID, searchFields, EntityID)

	}


#' Modify a specific StaffDepartment
#'
#' This function modifies fields for a StaffDepartment.
#'
#' @param StaffDepartmentID The id of the StaffDepartment to be modified.\cr Run \code{\link{getAllStaffDepartments}} for a list of StaffDepartments.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Staff
#' @return Details of the modified StaffDepartment.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyStaffDepartment <- function(StaffDepartmentID, EntityID = 1, setDepartmentID = NULL, setIsDefaultDepartment = NULL, setStaffDepartmentIDClonedFrom = NULL, setStaffID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Staff",  "StaffDepartment", StaffDepartmentID, names(functionParams), functionParams, EntityID)

	}


#' Create new StaffDepartment.
#'
#' This function creates a new StaffDepartment.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Staff
#' @return The fields used to define the newly created StaffDepartment.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createStaffDepartment <- function(EntityID = 1, setDepartmentID = NULL, setIsDefaultDepartment = NULL, setStaffDepartmentIDClonedFrom = NULL, setStaffID = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Staff",  "StaffDepartment", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific StaffDepartment
#'
#' This function deletes a StaffDepartment.
#'
#' @param StaffDepartmentID The id of the StaffDepartment.\cr Run \code{\link{getAllStaffDepartments}} for a list of StaffDepartments.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Staff
#' @return The id of the deleted StaffDepartment.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteStaffDepartment <- function(StaffDepartmentID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Staff",  "StaffDepartment", StaffDepartmentID, EntityID)

	}


#' Get all StaffEntityYears.
#'
#' This function returns a dataframe of all StaffEntityYears in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Staff
#' @return All StaffEntityYears in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllStaffEntityYears <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnStaffEntityYearID = F, returnCreatedTime = F, returnEntityID = F, returnIsActive = F, returnIsAdditionalStaffOnNotification = F, returnIsCareerCenterCounselor = F, returnIsDisciplineOfficer = F, returnIsSubstituteTeacher = F, returnIsTeacher = F, returnModifiedTime = F, returnRoomIDDefault = F, returnSchoolYearID = F, returnStaffDepartmentSummary = F, returnStaffEntityYearClonedTo = F, returnStaffEntityYearIDClonedFrom = F, returnStaffID = F, returnTeacherNumber = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Staff", "StaffEntityYear", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific StaffEntityYear
#'
#' This function returns fields for a StaffEntityYear.
#'
#' @param StaffEntityYearID The id of the StaffEntityYear.\cr Run \code{\link{getAllStaffEntityYears}} for a list of StaffEntityYears.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Staff
#' @return Details for the StaffEntityYear.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getStaffEntityYear <- function(StaffEntityYearID, EntityID = 1, returnStaffEntityYearID = F, returnCreatedTime = F, returnEntityID = F, returnIsActive = F, returnIsAdditionalStaffOnNotification = F, returnIsCareerCenterCounselor = F, returnIsDisciplineOfficer = F, returnIsSubstituteTeacher = F, returnIsTeacher = F, returnModifiedTime = F, returnRoomIDDefault = F, returnSchoolYearID = F, returnStaffDepartmentSummary = F, returnStaffEntityYearClonedTo = F, returnStaffEntityYearIDClonedFrom = F, returnStaffID = F, returnTeacherNumber = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Staff",  "StaffEntityYear", StaffEntityYearID, searchFields, EntityID)

	}


#' Modify a specific StaffEntityYear
#'
#' This function modifies fields for a StaffEntityYear.
#'
#' @param StaffEntityYearID The id of the StaffEntityYear to be modified.\cr Run \code{\link{getAllStaffEntityYears}} for a list of StaffEntityYears.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Staff
#' @return Details of the modified StaffEntityYear.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyStaffEntityYear <- function(StaffEntityYearID, EntityID = 1, setEntityID = NULL, setIsActive = NULL, setIsCareerCenterCounselor = NULL, setIsDisciplineOfficer = NULL, setIsSubstituteTeacher = NULL, setIsTeacher = NULL, setRoomIDDefault = NULL, setSchoolYearID = NULL, setStaffEntityYearIDClonedFrom = NULL, setStaffID = NULL, setTeacherNumber = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Staff",  "StaffEntityYear", StaffEntityYearID, names(functionParams), functionParams, EntityID)

	}


#' Create new StaffEntityYear.
#'
#' This function creates a new StaffEntityYear.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Staff
#' @return The fields used to define the newly created StaffEntityYear.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createStaffEntityYear <- function(EntityID = 1, setEntityID = NULL, setIsActive = NULL, setIsCareerCenterCounselor = NULL, setIsDisciplineOfficer = NULL, setIsSubstituteTeacher = NULL, setIsTeacher = NULL, setRoomIDDefault = NULL, setSchoolYearID = NULL, setStaffEntityYearIDClonedFrom = NULL, setStaffID = NULL, setTeacherNumber = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Staff",  "StaffEntityYear", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific StaffEntityYear
#'
#' This function deletes a StaffEntityYear.
#'
#' @param StaffEntityYearID The id of the StaffEntityYear.\cr Run \code{\link{getAllStaffEntityYears}} for a list of StaffEntityYears.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Staff
#' @return The id of the deleted StaffEntityYear.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteStaffEntityYear <- function(StaffEntityYearID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Staff",  "StaffEntityYear", StaffEntityYearID, EntityID)

	}


#' Get all Staff.
#'
#' This function returns a dataframe of all Staff in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Staff
#' @return All Staff in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllStaff <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnStaffID = F, returnActiveStudentCount = F, returnAssignmentCount = F, returnAssignmentCountForTermCalculated = F, returnAssignmentCountYTDCalculated = F, returnAssignmentDataString = F, returnCreatedTime = F, returnDateTimeofLastScoredAssignment = F, returnDistrictID = F, returnDueDateOfLastAssignmentScored = F, returnFamilyStudentAccessStaffNameToUse = F, returnFileFolderNumber = F, returnFullNameFL = F, returnFullNameFML = F, returnFullNameLFM = F, returnFutureAssignmentCountForTermCalculated = F, returnGradebookLastAccessedTime = F, returnGradedAssignmentCountForTermCalculated = F, returnGradeLevelLowerBound = F, returnGradeLevelUpperBound = F, returnIsActiveForDistrict = F, returnIsCurrentStaffEntityYear = F, returnMissingAssignmentCountForTermCalculated = F, returnModifiedTime = F, returnNameID = F, returnNoCountAssignmentCountForTermCalculated = F, returnNonGradedAssignmentCountForTerm = F, returnNonGradedAssignmentCountNoStudentAssignmentsForTerm = F, returnNonGradedAssignmentCountNoStudentAssignmentsYTD = F, returnPercentageOfAssignmentsScoredYTD = F, returnScoreClarifierAssignmentCountForTermCalculated = F, returnStaffMeetCount = F, returnStaffMNID = F, returnStaffNumber = F, returnStaffWebsite = F, returnStudentAssignmentDataString = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Staff", "Staff", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific Staff
#'
#' This function returns fields for a Staff.
#'
#' @param StaffID The id of the Staff.\cr Run \code{\link{getAllStaff}} for a list of Staff.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Staff
#' @return Details for the Staff.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getStaff <- function(StaffID, EntityID = 1, returnStaffID = F, returnActiveStudentCount = F, returnAssignmentCount = F, returnAssignmentCountForTermCalculated = F, returnAssignmentCountYTDCalculated = F, returnAssignmentDataString = F, returnCreatedTime = F, returnDateTimeofLastScoredAssignment = F, returnDistrictID = F, returnDueDateOfLastAssignmentScored = F, returnFamilyStudentAccessStaffNameToUse = F, returnFileFolderNumber = F, returnFullNameFL = F, returnFullNameFML = F, returnFullNameLFM = F, returnFutureAssignmentCountForTermCalculated = F, returnGradebookLastAccessedTime = F, returnGradedAssignmentCountForTermCalculated = F, returnGradeLevelLowerBound = F, returnGradeLevelUpperBound = F, returnIsActiveForDistrict = F, returnIsCurrentStaffEntityYear = F, returnMissingAssignmentCountForTermCalculated = F, returnModifiedTime = F, returnNameID = F, returnNoCountAssignmentCountForTermCalculated = F, returnNonGradedAssignmentCountForTerm = F, returnNonGradedAssignmentCountNoStudentAssignmentsForTerm = F, returnNonGradedAssignmentCountNoStudentAssignmentsYTD = F, returnPercentageOfAssignmentsScoredYTD = F, returnScoreClarifierAssignmentCountForTermCalculated = F, returnStaffMeetCount = F, returnStaffMNID = F, returnStaffNumber = F, returnStaffWebsite = F, returnStudentAssignmentDataString = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Staff",  "Staff", StaffID, searchFields, EntityID)

	}


#' Modify a specific Staff
#'
#' This function modifies fields for a Staff.
#'
#' @param StaffID The id of the Staff to be modified.\cr Run \code{\link{getAllStaff}} for a list of Staffs.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Staff
#' @return Details of the modified Staff.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyStaff <- function(StaffID, EntityID = 1, setDistrictID = NULL, setFileFolderNumber = NULL, setNameID = NULL, setStaffNumber = NULL, setStaffWebsite = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Staff",  "Staff", StaffID, names(functionParams), functionParams, EntityID)

	}


#' Create new Staff.
#'
#' This function creates a new Staff.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Staff
#' @return The fields used to define the newly created Staff.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createStaff <- function(EntityID = 1, setDistrictID = NULL, setFileFolderNumber = NULL, setNameID = NULL, setStaffNumber = NULL, setStaffWebsite = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Staff",  "Staff", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific Staff
#'
#' This function deletes a Staff.
#'
#' @param StaffID The id of the Staff.\cr Run \code{\link{getAllStaff}} for a list of Staff.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Staff
#' @return The id of the deleted Staff.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteStaff <- function(StaffID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Staff",  "Staff", StaffID, EntityID)

	}


#' Get all StaffStaffTypes.
#'
#' This function returns a dataframe of all StaffStaffTypes in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Staff
#' @return All StaffStaffTypes in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllStaffStaffTypes <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnStaffStaffTypeID = F, returnCreatedTime = F, returnEndDate = F, returnIsPrimary = F, returnModifiedTime = F, returnStaffID = F, returnStaffStaffTypeIDClonedFrom = F, returnStaffTypeID = F, returnStartDate = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Staff", "StaffStaffType", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific StaffStaffType
#'
#' This function returns fields for a StaffStaffType.
#'
#' @param StaffStaffTypeID The id of the StaffStaffType.\cr Run \code{\link{getAllStaffStaffTypes}} for a list of StaffStaffTypes.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Staff
#' @return Details for the StaffStaffType.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getStaffStaffType <- function(StaffStaffTypeID, EntityID = 1, returnStaffStaffTypeID = F, returnCreatedTime = F, returnEndDate = F, returnIsPrimary = F, returnModifiedTime = F, returnStaffID = F, returnStaffStaffTypeIDClonedFrom = F, returnStaffTypeID = F, returnStartDate = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Staff",  "StaffStaffType", StaffStaffTypeID, searchFields, EntityID)

	}


#' Modify a specific StaffStaffType
#'
#' This function modifies fields for a StaffStaffType.
#'
#' @param StaffStaffTypeID The id of the StaffStaffType to be modified.\cr Run \code{\link{getAllStaffStaffTypes}} for a list of StaffStaffTypes.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Staff
#' @return Details of the modified StaffStaffType.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyStaffStaffType <- function(StaffStaffTypeID, EntityID = 1, setEndDate = NULL, setIsPrimary = NULL, setStaffID = NULL, setStaffStaffTypeIDClonedFrom = NULL, setStaffTypeID = NULL, setStartDate = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Staff",  "StaffStaffType", StaffStaffTypeID, names(functionParams), functionParams, EntityID)

	}


#' Create new StaffStaffType.
#'
#' This function creates a new StaffStaffType.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Staff
#' @return The fields used to define the newly created StaffStaffType.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createStaffStaffType <- function(EntityID = 1, setEndDate = NULL, setIsPrimary = NULL, setStaffID = NULL, setStaffStaffTypeIDClonedFrom = NULL, setStaffTypeID = NULL, setStartDate = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Staff",  "StaffStaffType", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific StaffStaffType
#'
#' This function deletes a StaffStaffType.
#'
#' @param StaffStaffTypeID The id of the StaffStaffType.\cr Run \code{\link{getAllStaffStaffTypes}} for a list of StaffStaffTypes.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Staff
#' @return The id of the deleted StaffStaffType.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteStaffStaffType <- function(StaffStaffTypeID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Staff",  "StaffStaffType", StaffStaffTypeID, EntityID)

	}


#' Get all StaffTypes.
#'
#' This function returns a dataframe of all StaffTypes in the database.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param searchConditionsList A list of search conditions to filter results which are joined by the searchConditionsGroupType. Of the form {FieldName} {ConditionType} {SearchCondition}. For example, c('StudentID LessEqual 500', 'LastName Like Ander\%'). Run \code{\link{getAllSearchConditionTypes}} for a list of ConditionTypes. Defaults to NULL (unfiltered).
#' @param searchConditionsGroupType The conjunction which joins multiple searchConditions in the searchConditionsList. Either 'Or' or 'And'. Defaults to 'And'.
#' @param searchSortFieldNamesList The list of fields sort results by. Defaults to NULL (unsorted).
#' @param searchSortFieldNamesDescendingList A list of T/F values corresponding to whether to sort each field in searchSortFieldNamesList in descending order. Defaults to F for each FieldName in searchSortFieldNamesList.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Staff
#' @return All StaffTypes in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllStaffTypes <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnStaffTypeID = F, returnCode = F, returnCodeDescription = F, returnCreatedTime = F, returnDescription = F, returnDistrictID = F, returnModifiedTime = F, returnSchoolYearID = F, returnStaffTypeIDClonedFrom = F, returnStaffTypeIDClonedTo = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getAllDataObjectsForObject("Staff", "StaffType", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific StaffType
#'
#' This function returns fields for a StaffType.
#'
#' @param StaffTypeID The id of the StaffType.\cr Run \code{\link{getAllStaffTypes}} for a list of StaffTypes.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param return{FieldName} A TRUE or FALSE value determining whether or not to return {FieldName} for the given object. Defaults to FALSE for all return fields which for convenience returns all fields for the object.
#' @concept Staff
#' @return Details for the StaffType.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getStaffType <- function(StaffTypeID, EntityID = 1, returnStaffTypeID = F, returnCode = F, returnCodeDescription = F, returnCreatedTime = F, returnDescription = F, returnDistrictID = F, returnModifiedTime = F, returnSchoolYearID = F, returnStaffTypeIDClonedFrom = F, returnStaffTypeIDClonedTo = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		searchFields <- names(functionParams)[(unlist(lapply(functionParams, function(x) ifelse(length(x) == 1, x == T, F)))) & (names(functionParams) %>% stringr::str_detect("^return"))]

		if(length(searchFields) == 0) searchFields <- names(functionParams)[names(functionParams) %>% stringr::str_detect("^return")]

		searchFields <- searchFields %>% stringr::str_replace("return", "")

		getDataObject("Staff",  "StaffType", StaffTypeID, searchFields, EntityID)

	}


#' Modify a specific StaffType
#'
#' This function modifies fields for a StaffType.
#'
#' @param StaffTypeID The id of the StaffType to be modified.\cr Run \code{\link{getAllStaffTypes}} for a list of StaffTypes.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Staff
#' @return Details of the modified StaffType.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyStaffType <- function(StaffTypeID, EntityID = 1, setCode = NULL, setDescription = NULL, setDistrictID = NULL, setSchoolYearID = NULL, setStaffTypeIDClonedFrom = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-(1:2)]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		modifyDataObject("Staff",  "StaffType", StaffTypeID, names(functionParams), functionParams, EntityID)

	}


#' Create new StaffType.
#'
#' This function creates a new StaffType.
#'
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @param set{FieldName} Values to set {FieldName} to for the given object. Defaults to NULL for all set fields which does not set the field's value.
#' @concept Staff
#' @return The fields used to define the newly created StaffType.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createStaffType <- function(EntityID = 1, setCode = NULL, setDescription = NULL, setDistrictID = NULL, setSchoolYearID = NULL, setStaffTypeIDClonedFrom = NULL){

		suppressMessages(suppressWarnings(require(dplyr)))

		functionParams <- as.list(environment())[-1]

		functionParams <- functionParams[which(unlist(lapply(functionParams, function(x) length(x) > 0)))]

		names(functionParams) <- names(functionParams) %>% stringr::str_replace("set", "")

		createDataObject("Staff",  "StaffType", names(functionParams), functionParams, EntityID)

	}


#' Delete a specific StaffType
#'
#' This function deletes a StaffType.
#'
#' @param StaffTypeID The id of the StaffType.\cr Run \code{\link{getAllStaffTypes}} for a list of StaffTypes.
#' @param EntityID The id of the entity. Run \code{\link{getAllEntities}} for a list of entities.
#' @concept Staff
#' @return The id of the deleted StaffType.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	deleteStaffType <- function(StaffTypeID, EntityID = 1){

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("Staff",  "StaffType", StaffTypeID, EntityID)

	}
samterfa/SkywardSDK documentation built on Oct. 13, 2020, 6:53 a.m.