R/StaffPlanningFunctions.R

Defines functions deleteTempPlanPositionSupplement createTempPlanPositionSupplement modifyTempPlanPositionSupplement getTempPlanPositionSupplement getAllTempPlanPositionSupplements deleteTempPlanPositionPayBenefitAccount createTempPlanPositionPayBenefitAccount modifyTempPlanPositionPayBenefitAccount getTempPlanPositionPayBenefitAccount getAllTempPlanPositionPayBenefitAccounts deleteTempPlanPositionPayBenefit createTempPlanPositionPayBenefit modifyTempPlanPositionPayBenefit getTempPlanPositionPayBenefit getAllTempPlanPositionPayBenefits deleteTempPlanPositionPayAccountDistribution createTempPlanPositionPayAccountDistribution modifyTempPlanPositionPayAccountDistribution getTempPlanPositionPayAccountDistribution getAllTempPlanPositionPayAccountDistributions deleteTempPlanPositionPayAccountCalculation createTempPlanPositionPayAccountCalculation modifyTempPlanPositionPayAccountCalculation getTempPlanPositionPayAccountCalculation getAllTempPlanPositionPayAccountCalculations deleteTempPlanPositionPay createTempPlanPositionPay modifyTempPlanPositionPay getTempPlanPositionPay getAllTempPlanPositionPaies deleteTempPlanPositionException createTempPlanPositionException modifyTempPlanPositionException getTempPlanPositionException getAllTempPlanPositionExceptions deleteTempPlanPositionEmployee createTempPlanPositionEmployee modifyTempPlanPositionEmployee getTempPlanPositionEmployee getAllTempPlanPositionEmployees deleteTempPlanPositionDistributionAccountDistribution createTempPlanPositionDistributionAccountDistribution modifyTempPlanPositionDistributionAccountDistribution getTempPlanPositionDistributionAccountDistribution getAllTempPlanPositionDistributionAccountDistributions deleteTempPlanPositionDistribution createTempPlanPositionDistribution modifyTempPlanPositionDistribution getTempPlanPositionDistribution getAllTempPlanPositionDistributions deleteTempPlanPositionBenefit createTempPlanPositionBenefit modifyTempPlanPositionBenefit getTempPlanPositionBenefit getAllTempPlanPositionBenefits deleteTempExceptionStaffPlanning createTempExceptionStaffPlanning modifyTempExceptionStaffPlanning getTempExceptionStaffPlanning getAllTempExceptionsStaffPlanning deletePositionTypePlanPositionDistributionSummary createPositionTypePlanPositionDistributionSummary modifyPositionTypePlanPositionDistributionSummary getPositionTypePlanPositionDistributionSummary getAllPositionTypePlanPositionDistributionSummaries deletePlanPositionSupplement createPlanPositionSupplement modifyPlanPositionSupplement getPlanPositionSupplement getAllPlanPositionSupplements deletePlanPositionPayBenefitAccount createPlanPositionPayBenefitAccount modifyPlanPositionPayBenefitAccount getPlanPositionPayBenefitAccount getAllPlanPositionPayBenefitAccounts deletePlanPositionPayBenefit createPlanPositionPayBenefit modifyPlanPositionPayBenefit getPlanPositionPayBenefit getAllPlanPositionPayBenefits deletePlanPositionPayAccountDistribution createPlanPositionPayAccountDistribution modifyPlanPositionPayAccountDistribution getPlanPositionPayAccountDistribution getAllPlanPositionPayAccountDistributions deletePlanPositionPayAccountCalculation createPlanPositionPayAccountCalculation modifyPlanPositionPayAccountCalculation getPlanPositionPayAccountCalculation getAllPlanPositionPayAccountCalculations deletePlanPositionPay createPlanPositionPay modifyPlanPositionPay getPlanPositionPay getAllPlanPositionPaies deletePlanPositionDistributionAccountDistribution createPlanPositionDistributionAccountDistribution modifyPlanPositionDistributionAccountDistribution getPlanPositionDistributionAccountDistribution getAllPlanPositionDistributionAccountDistributions deletePlanPositionDistribution createPlanPositionDistribution modifyPlanPositionDistribution getPlanPositionDistribution getAllPlanPositionDistributions deletePlanPositionBenefit createPlanPositionBenefit modifyPlanPositionBenefit getPlanPositionBenefit getAllPlanPositionBenefits deletePlanPosition createPlanPosition modifyPlanPosition getPlanPosition getAllPlanPositions deletePlanGroupPositionType createPlanGroupPositionType modifyPlanGroupPositionType getPlanGroupPositionType getAllPlanGroupPositionTypes deletePlanGroupClearance createPlanGroupClearance modifyPlanGroupClearance getPlanGroupClearance getAllPlanGroupClearances deletePlanGroupBuilding createPlanGroupBuilding modifyPlanGroupBuilding getPlanGroupBuilding getAllPlanGroupBuildings deletePlanGroupAssignmentType createPlanGroupAssignmentType modifyPlanGroupAssignmentType getPlanGroupAssignmentType getAllPlanGroupAssignmentTypes deletePlanGroup createPlanGroup modifyPlanGroup getPlanGroup getAllPlanGroups deletePlanEmployee createPlanEmployee modifyPlanEmployee getPlanEmployee getAllPlanEmployees deletePlanStaffPlanning createPlanStaffPlanning modifyPlanStaffPlanning getPlanStaffPlanning getAllPlansStaffPlanning deleteBuildingPlanPositionDistributionSummary createBuildingPlanPositionDistributionSummary modifyBuildingPlanPositionDistributionSummary getBuildingPlanPositionDistributionSummary getAllBuildingPlanPositionDistributionSummaries deleteAssignmentTypePlanPositionDistributionSummary createAssignmentTypePlanPositionDistributionSummary modifyAssignmentTypePlanPositionDistributionSummary getAssignmentTypePlanPositionDistributionSummary getAllAssignmentTypePlanPositionDistributionSummaries

Documented in createAssignmentTypePlanPositionDistributionSummary createBuildingPlanPositionDistributionSummary createPlanEmployee createPlanGroup createPlanGroupAssignmentType createPlanGroupBuilding createPlanGroupClearance createPlanGroupPositionType createPlanPosition createPlanPositionBenefit createPlanPositionDistribution createPlanPositionDistributionAccountDistribution createPlanPositionPay createPlanPositionPayAccountCalculation createPlanPositionPayAccountDistribution createPlanPositionPayBenefit createPlanPositionPayBenefitAccount createPlanPositionSupplement createPlanStaffPlanning createPositionTypePlanPositionDistributionSummary createTempExceptionStaffPlanning createTempPlanPositionBenefit createTempPlanPositionDistribution createTempPlanPositionDistributionAccountDistribution createTempPlanPositionEmployee createTempPlanPositionException createTempPlanPositionPay createTempPlanPositionPayAccountCalculation createTempPlanPositionPayAccountDistribution createTempPlanPositionPayBenefit createTempPlanPositionPayBenefitAccount createTempPlanPositionSupplement deleteAssignmentTypePlanPositionDistributionSummary deleteBuildingPlanPositionDistributionSummary deletePlanEmployee deletePlanGroup deletePlanGroupAssignmentType deletePlanGroupBuilding deletePlanGroupClearance deletePlanGroupPositionType deletePlanPosition deletePlanPositionBenefit deletePlanPositionDistribution deletePlanPositionDistributionAccountDistribution deletePlanPositionPay deletePlanPositionPayAccountCalculation deletePlanPositionPayAccountDistribution deletePlanPositionPayBenefit deletePlanPositionPayBenefitAccount deletePlanPositionSupplement deletePlanStaffPlanning deletePositionTypePlanPositionDistributionSummary deleteTempExceptionStaffPlanning deleteTempPlanPositionBenefit deleteTempPlanPositionDistribution deleteTempPlanPositionDistributionAccountDistribution deleteTempPlanPositionEmployee deleteTempPlanPositionException deleteTempPlanPositionPay deleteTempPlanPositionPayAccountCalculation deleteTempPlanPositionPayAccountDistribution deleteTempPlanPositionPayBenefit deleteTempPlanPositionPayBenefitAccount deleteTempPlanPositionSupplement getAllAssignmentTypePlanPositionDistributionSummaries getAllBuildingPlanPositionDistributionSummaries getAllPlanEmployees getAllPlanGroupAssignmentTypes getAllPlanGroupBuildings getAllPlanGroupClearances getAllPlanGroupPositionTypes getAllPlanGroups getAllPlanPositionBenefits getAllPlanPositionDistributionAccountDistributions getAllPlanPositionDistributions getAllPlanPositionPaies getAllPlanPositionPayAccountCalculations getAllPlanPositionPayAccountDistributions getAllPlanPositionPayBenefitAccounts getAllPlanPositionPayBenefits getAllPlanPositions getAllPlanPositionSupplements getAllPlansStaffPlanning getAllPositionTypePlanPositionDistributionSummaries getAllTempExceptionsStaffPlanning getAllTempPlanPositionBenefits getAllTempPlanPositionDistributionAccountDistributions getAllTempPlanPositionDistributions getAllTempPlanPositionEmployees getAllTempPlanPositionExceptions getAllTempPlanPositionPaies getAllTempPlanPositionPayAccountCalculations getAllTempPlanPositionPayAccountDistributions getAllTempPlanPositionPayBenefitAccounts getAllTempPlanPositionPayBenefits getAllTempPlanPositionSupplements getAssignmentTypePlanPositionDistributionSummary getBuildingPlanPositionDistributionSummary

#' Get all AssignmentTypePlanPositionDistributionSummaries.
#'
#' This function returns a dataframe of all AssignmentTypePlanPositionDistributionSummaries 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 StaffPlanning
#' @return All AssignmentTypePlanPositionDistributionSummaries in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllAssignmentTypePlanPositionDistributionSummaries <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnPlanPositionDistributionIDFirst = F, returnAssignmentTypeID = F, returnFTE = F, returnPlanGroupID = F, returnPositionTypeID = 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("StaffPlanning", "AssignmentTypePlanPositionDistributionSummary", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific AssignmentTypePlanPositionDistributionSummary
#'
#' This function returns fields for an AssignmentTypePlanPositionDistributionSummary.
#'
#' @param AssignmentTypePlanPositionDistributionSummaryID The id of the AssignmentTypePlanPositionDistributionSummary.\cr Run \code{\link{getAllAssignmentTypePlanPositionDistributionSummaries}} for a list of AssignmentTypePlanPositionDistributionSummaries.
#' @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 StaffPlanning
#' @return Details for the AssignmentTypePlanPositionDistributionSummary.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAssignmentTypePlanPositionDistributionSummary <- function(AssignmentTypePlanPositionDistributionSummaryID, EntityID = 1, returnPlanPositionDistributionIDFirst = F, returnAssignmentTypeID = F, returnFTE = F, returnPlanGroupID = F, returnPositionTypeID = 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("StaffPlanning",  "AssignmentTypePlanPositionDistributionSummary", AssignmentTypePlanPositionDistributionSummaryID, searchFields, EntityID)

	}


#' Modify a specific AssignmentTypePlanPositionDistributionSummary
#'
#' This function modifies fields for an AssignmentTypePlanPositionDistributionSummary.
#'
#' @param AssignmentTypePlanPositionDistributionSummaryID The id of the AssignmentTypePlanPositionDistributionSummary to be modified.\cr Run \code{\link{getAllAssignmentTypePlanPositionDistributionSummaries}} for a list of AssignmentTypePlanPositionDistributionSummarys.
#' @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 StaffPlanning
#' @return Details of the modified AssignmentTypePlanPositionDistributionSummary.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyAssignmentTypePlanPositionDistributionSummary <- function(AssignmentTypePlanPositionDistributionSummaryID, EntityID = 1, setPlanPositionDistributionIDFirst = NULL, setAssignmentTypeID = NULL, setPlanGroupID = NULL, setPositionTypeID = 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("StaffPlanning",  "AssignmentTypePlanPositionDistributionSummary", AssignmentTypePlanPositionDistributionSummaryID, names(functionParams), functionParams, EntityID)

	}


#' Create new AssignmentTypePlanPositionDistributionSummary.
#'
#' This function creates a new AssignmentTypePlanPositionDistributionSummary.
#'
#' @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 StaffPlanning
#' @return The fields used to define the newly created AssignmentTypePlanPositionDistributionSummary.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createAssignmentTypePlanPositionDistributionSummary <- function(EntityID = 1, setPlanPositionDistributionIDFirst = NULL, setAssignmentTypeID = NULL, setPlanGroupID = NULL, setPositionTypeID = 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("StaffPlanning",  "AssignmentTypePlanPositionDistributionSummary", names(functionParams), functionParams, EntityID)

	}


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

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("StaffPlanning",  "AssignmentTypePlanPositionDistributionSummary", AssignmentTypePlanPositionDistributionSummaryID, EntityID)

	}


#' Get all BuildingPlanPositionDistributionSummaries.
#'
#' This function returns a dataframe of all BuildingPlanPositionDistributionSummaries 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 StaffPlanning
#' @return All BuildingPlanPositionDistributionSummaries in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllBuildingPlanPositionDistributionSummaries <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnPlanPositionDistributionIDFirst = F, returnBuildingID = F, returnFTE = F, returnPlanGroupID = F, returnPositionTypeID = 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("StaffPlanning", "BuildingPlanPositionDistributionSummary", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific BuildingPlanPositionDistributionSummary
#'
#' This function returns fields for a BuildingPlanPositionDistributionSummary.
#'
#' @param BuildingPlanPositionDistributionSummaryID The id of the BuildingPlanPositionDistributionSummary.\cr Run \code{\link{getAllBuildingPlanPositionDistributionSummaries}} for a list of BuildingPlanPositionDistributionSummaries.
#' @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 StaffPlanning
#' @return Details for the BuildingPlanPositionDistributionSummary.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getBuildingPlanPositionDistributionSummary <- function(BuildingPlanPositionDistributionSummaryID, EntityID = 1, returnPlanPositionDistributionIDFirst = F, returnBuildingID = F, returnFTE = F, returnPlanGroupID = F, returnPositionTypeID = 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("StaffPlanning",  "BuildingPlanPositionDistributionSummary", BuildingPlanPositionDistributionSummaryID, searchFields, EntityID)

	}


#' Modify a specific BuildingPlanPositionDistributionSummary
#'
#' This function modifies fields for a BuildingPlanPositionDistributionSummary.
#'
#' @param BuildingPlanPositionDistributionSummaryID The id of the BuildingPlanPositionDistributionSummary to be modified.\cr Run \code{\link{getAllBuildingPlanPositionDistributionSummaries}} for a list of BuildingPlanPositionDistributionSummarys.
#' @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 StaffPlanning
#' @return Details of the modified BuildingPlanPositionDistributionSummary.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyBuildingPlanPositionDistributionSummary <- function(BuildingPlanPositionDistributionSummaryID, EntityID = 1, setPlanPositionDistributionIDFirst = NULL, setBuildingID = NULL, setPlanGroupID = NULL, setPositionTypeID = 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("StaffPlanning",  "BuildingPlanPositionDistributionSummary", BuildingPlanPositionDistributionSummaryID, names(functionParams), functionParams, EntityID)

	}


#' Create new BuildingPlanPositionDistributionSummary.
#'
#' This function creates a new BuildingPlanPositionDistributionSummary.
#'
#' @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 StaffPlanning
#' @return The fields used to define the newly created BuildingPlanPositionDistributionSummary.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createBuildingPlanPositionDistributionSummary <- function(EntityID = 1, setPlanPositionDistributionIDFirst = NULL, setBuildingID = NULL, setPlanGroupID = NULL, setPositionTypeID = 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("StaffPlanning",  "BuildingPlanPositionDistributionSummary", names(functionParams), functionParams, EntityID)

	}


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

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("StaffPlanning",  "BuildingPlanPositionDistributionSummary", BuildingPlanPositionDistributionSummaryID, EntityID)

	}


#' Get all Plans.
#'
#' This function returns a dataframe of all Plans 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 StaffPlanning
#' @return All Plans in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllPlansStaffPlanning <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnPlanID = F, returnBudgetVersionAmount = F, returnBudgetVersionDifference = F, returnCalculationStatus = F, returnCreatedTime = F, returnCurrentUserHasPlanGroupAccess = F, returnDescription = F, returnDistrictID = F, returnFiscalYearID = F, returnIsBudgeted = F, returnModifiedTime = F, returnNumberOfOccupiedPositions = F, returnNumberOfVacantPositions = F, returnTotalBenefitAmount = F, returnTotalCompensationAmount = F, returnTotalPayAmount = 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("StaffPlanning", "Plan", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific Plan
#'
#' This function returns fields for a Plan.
#'
#' @param PlanID The id of the Plan.\cr Run \code{\link{getAllPlans}} for a list of Plans.
#' @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 StaffPlanning
#' @return Details for the Plan.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getPlanStaffPlanning <- function(PlanID, EntityID = 1, returnPlanID = F, returnBudgetVersionAmount = F, returnBudgetVersionDifference = F, returnCalculationStatus = F, returnCreatedTime = F, returnCurrentUserHasPlanGroupAccess = F, returnDescription = F, returnDistrictID = F, returnFiscalYearID = F, returnIsBudgeted = F, returnModifiedTime = F, returnNumberOfOccupiedPositions = F, returnNumberOfVacantPositions = F, returnTotalBenefitAmount = F, returnTotalCompensationAmount = F, returnTotalPayAmount = 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("StaffPlanning",  "Plan", PlanID, searchFields, EntityID)

	}


#' Modify a specific Plan
#'
#' This function modifies fields for a Plan.
#'
#' @param PlanID The id of the Plan to be modified.\cr Run \code{\link{getAllPlans}} for a list of Plans.
#' @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 StaffPlanning
#' @return Details of the modified Plan.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyPlanStaffPlanning <- function(PlanID, EntityID = 1, setDescription = NULL, setDistrictID = NULL, setFiscalYearID = 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("StaffPlanning",  "Plan", PlanID, names(functionParams), functionParams, EntityID)

	}


#' Create new Plan.
#'
#' This function creates a new Plan.
#'
#' @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 StaffPlanning
#' @return The fields used to define the newly created Plan.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createPlanStaffPlanning <- function(EntityID = 1, setDescription = NULL, setDistrictID = NULL, setFiscalYearID = 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("StaffPlanning",  "Plan", names(functionParams), functionParams, EntityID)

	}


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

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("StaffPlanning",  "Plan", PlanID, EntityID)

	}


#' Get all PlanEmployees.
#'
#' This function returns a dataframe of all PlanEmployees 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 StaffPlanning
#' @return All PlanEmployees in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllPlanEmployees <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnPlanEmployeeID = F, returnAssignedFTE = F, returnCreatedTime = F, returnCurrentUserHasPlanGroupAccess = F, returnEmployeeID = F, returnModifiedTime = F, returnPlanID = F, returnTotalBenefitAmount = F, returnTotalCompensationAmount = F, returnTotalPayAmount = 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("StaffPlanning", "PlanEmployee", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific PlanEmployee
#'
#' This function returns fields for a PlanEmployee.
#'
#' @param PlanEmployeeID The id of the PlanEmployee.\cr Run \code{\link{getAllPlanEmployees}} for a list of PlanEmployees.
#' @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 StaffPlanning
#' @return Details for the PlanEmployee.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getPlanEmployee <- function(PlanEmployeeID, EntityID = 1, returnPlanEmployeeID = F, returnAssignedFTE = F, returnCreatedTime = F, returnCurrentUserHasPlanGroupAccess = F, returnEmployeeID = F, returnModifiedTime = F, returnPlanID = F, returnTotalBenefitAmount = F, returnTotalCompensationAmount = F, returnTotalPayAmount = 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("StaffPlanning",  "PlanEmployee", PlanEmployeeID, searchFields, EntityID)

	}


#' Modify a specific PlanEmployee
#'
#' This function modifies fields for a PlanEmployee.
#'
#' @param PlanEmployeeID The id of the PlanEmployee to be modified.\cr Run \code{\link{getAllPlanEmployees}} for a list of PlanEmployees.
#' @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 StaffPlanning
#' @return Details of the modified PlanEmployee.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyPlanEmployee <- function(PlanEmployeeID, EntityID = 1, setEmployeeID = NULL, setPlanID = 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("StaffPlanning",  "PlanEmployee", PlanEmployeeID, names(functionParams), functionParams, EntityID)

	}


#' Create new PlanEmployee.
#'
#' This function creates a new PlanEmployee.
#'
#' @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 StaffPlanning
#' @return The fields used to define the newly created PlanEmployee.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createPlanEmployee <- function(EntityID = 1, setEmployeeID = NULL, setPlanID = 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("StaffPlanning",  "PlanEmployee", names(functionParams), functionParams, EntityID)

	}


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

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("StaffPlanning",  "PlanEmployee", PlanEmployeeID, EntityID)

	}


#' Get all PlanGroups.
#'
#' This function returns a dataframe of all PlanGroups 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 StaffPlanning
#' @return All PlanGroups in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllPlanGroups <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnPlanGroupID = F, returnAssignedFTE = F, returnAvailableFTE = F, returnBudgetedFTE = F, returnCode = F, returnCodeDescription = F, returnCreatedTime = F, returnCurrentUserHasPlanGroupAccess = F, returnDescription = F, returnIsUnassigned = F, returnModifiedTime = F, returnNumberOfOccupiedPositions = F, returnNumberOfVacantPositions = F, returnPlanID = 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("StaffPlanning", "PlanGroup", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific PlanGroup
#'
#' This function returns fields for a PlanGroup.
#'
#' @param PlanGroupID The id of the PlanGroup.\cr Run \code{\link{getAllPlanGroups}} for a list of PlanGroups.
#' @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 StaffPlanning
#' @return Details for the PlanGroup.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getPlanGroup <- function(PlanGroupID, EntityID = 1, returnPlanGroupID = F, returnAssignedFTE = F, returnAvailableFTE = F, returnBudgetedFTE = F, returnCode = F, returnCodeDescription = F, returnCreatedTime = F, returnCurrentUserHasPlanGroupAccess = F, returnDescription = F, returnIsUnassigned = F, returnModifiedTime = F, returnNumberOfOccupiedPositions = F, returnNumberOfVacantPositions = F, returnPlanID = 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("StaffPlanning",  "PlanGroup", PlanGroupID, searchFields, EntityID)

	}


#' Modify a specific PlanGroup
#'
#' This function modifies fields for a PlanGroup.
#'
#' @param PlanGroupID The id of the PlanGroup to be modified.\cr Run \code{\link{getAllPlanGroups}} for a list of PlanGroups.
#' @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 StaffPlanning
#' @return Details of the modified PlanGroup.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyPlanGroup <- function(PlanGroupID, EntityID = 1, setBudgetedFTE = NULL, setCode = NULL, setDescription = NULL, setIsUnassigned = NULL, setPlanID = 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("StaffPlanning",  "PlanGroup", PlanGroupID, names(functionParams), functionParams, EntityID)

	}


#' Create new PlanGroup.
#'
#' This function creates a new PlanGroup.
#'
#' @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 StaffPlanning
#' @return The fields used to define the newly created PlanGroup.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createPlanGroup <- function(EntityID = 1, setBudgetedFTE = NULL, setCode = NULL, setDescription = NULL, setIsUnassigned = NULL, setPlanID = 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("StaffPlanning",  "PlanGroup", names(functionParams), functionParams, EntityID)

	}


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

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("StaffPlanning",  "PlanGroup", PlanGroupID, EntityID)

	}


#' Get all PlanGroupAssignmentTypes.
#'
#' This function returns a dataframe of all PlanGroupAssignmentTypes 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 StaffPlanning
#' @return All PlanGroupAssignmentTypes in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllPlanGroupAssignmentTypes <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnPlanGroupAssignmentTypeID = F, returnAssignmentTypeID = F, returnCreatedTime = F, returnCurrentUserHasPlanGroupAccess = F, returnModifiedTime = F, returnPlanGroupID = 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("StaffPlanning", "PlanGroupAssignmentType", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific PlanGroupAssignmentType
#'
#' This function returns fields for a PlanGroupAssignmentType.
#'
#' @param PlanGroupAssignmentTypeID The id of the PlanGroupAssignmentType.\cr Run \code{\link{getAllPlanGroupAssignmentTypes}} for a list of PlanGroupAssignmentTypes.
#' @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 StaffPlanning
#' @return Details for the PlanGroupAssignmentType.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getPlanGroupAssignmentType <- function(PlanGroupAssignmentTypeID, EntityID = 1, returnPlanGroupAssignmentTypeID = F, returnAssignmentTypeID = F, returnCreatedTime = F, returnCurrentUserHasPlanGroupAccess = F, returnModifiedTime = F, returnPlanGroupID = 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("StaffPlanning",  "PlanGroupAssignmentType", PlanGroupAssignmentTypeID, searchFields, EntityID)

	}


#' Modify a specific PlanGroupAssignmentType
#'
#' This function modifies fields for a PlanGroupAssignmentType.
#'
#' @param PlanGroupAssignmentTypeID The id of the PlanGroupAssignmentType to be modified.\cr Run \code{\link{getAllPlanGroupAssignmentTypes}} for a list of PlanGroupAssignmentTypes.
#' @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 StaffPlanning
#' @return Details of the modified PlanGroupAssignmentType.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyPlanGroupAssignmentType <- function(PlanGroupAssignmentTypeID, EntityID = 1, setAssignmentTypeID = NULL, setPlanGroupID = 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("StaffPlanning",  "PlanGroupAssignmentType", PlanGroupAssignmentTypeID, names(functionParams), functionParams, EntityID)

	}


#' Create new PlanGroupAssignmentType.
#'
#' This function creates a new PlanGroupAssignmentType.
#'
#' @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 StaffPlanning
#' @return The fields used to define the newly created PlanGroupAssignmentType.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createPlanGroupAssignmentType <- function(EntityID = 1, setAssignmentTypeID = NULL, setPlanGroupID = 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("StaffPlanning",  "PlanGroupAssignmentType", names(functionParams), functionParams, EntityID)

	}


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

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("StaffPlanning",  "PlanGroupAssignmentType", PlanGroupAssignmentTypeID, EntityID)

	}


#' Get all PlanGroupBuildings.
#'
#' This function returns a dataframe of all PlanGroupBuildings 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 StaffPlanning
#' @return All PlanGroupBuildings in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllPlanGroupBuildings <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnPlanGroupBuildingID = F, returnBuildingID = F, returnCreatedTime = F, returnCurrentUserHasPlanGroupAccess = F, returnModifiedTime = F, returnPlanGroupID = 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("StaffPlanning", "PlanGroupBuilding", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific PlanGroupBuilding
#'
#' This function returns fields for a PlanGroupBuilding.
#'
#' @param PlanGroupBuildingID The id of the PlanGroupBuilding.\cr Run \code{\link{getAllPlanGroupBuildings}} for a list of PlanGroupBuildings.
#' @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 StaffPlanning
#' @return Details for the PlanGroupBuilding.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getPlanGroupBuilding <- function(PlanGroupBuildingID, EntityID = 1, returnPlanGroupBuildingID = F, returnBuildingID = F, returnCreatedTime = F, returnCurrentUserHasPlanGroupAccess = F, returnModifiedTime = F, returnPlanGroupID = 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("StaffPlanning",  "PlanGroupBuilding", PlanGroupBuildingID, searchFields, EntityID)

	}


#' Modify a specific PlanGroupBuilding
#'
#' This function modifies fields for a PlanGroupBuilding.
#'
#' @param PlanGroupBuildingID The id of the PlanGroupBuilding to be modified.\cr Run \code{\link{getAllPlanGroupBuildings}} for a list of PlanGroupBuildings.
#' @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 StaffPlanning
#' @return Details of the modified PlanGroupBuilding.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyPlanGroupBuilding <- function(PlanGroupBuildingID, EntityID = 1, setBuildingID = NULL, setPlanGroupID = 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("StaffPlanning",  "PlanGroupBuilding", PlanGroupBuildingID, names(functionParams), functionParams, EntityID)

	}


#' Create new PlanGroupBuilding.
#'
#' This function creates a new PlanGroupBuilding.
#'
#' @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 StaffPlanning
#' @return The fields used to define the newly created PlanGroupBuilding.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createPlanGroupBuilding <- function(EntityID = 1, setBuildingID = NULL, setPlanGroupID = 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("StaffPlanning",  "PlanGroupBuilding", names(functionParams), functionParams, EntityID)

	}


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

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("StaffPlanning",  "PlanGroupBuilding", PlanGroupBuildingID, EntityID)

	}


#' Get all PlanGroupClearances.
#'
#' This function returns a dataframe of all PlanGroupClearances 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 StaffPlanning
#' @return All PlanGroupClearances in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllPlanGroupClearances <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnPlanGroupClearanceID = F, returnCreatedTime = F, returnCurrentUserHasPlanGroupAccess = F, returnModifiedTime = F, returnPlanGroupID = F, returnSecurityGroupID = 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("StaffPlanning", "PlanGroupClearance", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific PlanGroupClearance
#'
#' This function returns fields for a PlanGroupClearance.
#'
#' @param PlanGroupClearanceID The id of the PlanGroupClearance.\cr Run \code{\link{getAllPlanGroupClearances}} for a list of PlanGroupClearances.
#' @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 StaffPlanning
#' @return Details for the PlanGroupClearance.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getPlanGroupClearance <- function(PlanGroupClearanceID, EntityID = 1, returnPlanGroupClearanceID = F, returnCreatedTime = F, returnCurrentUserHasPlanGroupAccess = F, returnModifiedTime = F, returnPlanGroupID = F, returnSecurityGroupID = 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("StaffPlanning",  "PlanGroupClearance", PlanGroupClearanceID, searchFields, EntityID)

	}


#' Modify a specific PlanGroupClearance
#'
#' This function modifies fields for a PlanGroupClearance.
#'
#' @param PlanGroupClearanceID The id of the PlanGroupClearance to be modified.\cr Run \code{\link{getAllPlanGroupClearances}} for a list of PlanGroupClearances.
#' @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 StaffPlanning
#' @return Details of the modified PlanGroupClearance.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyPlanGroupClearance <- function(PlanGroupClearanceID, EntityID = 1, setPlanGroupID = NULL, setSecurityGroupID = 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("StaffPlanning",  "PlanGroupClearance", PlanGroupClearanceID, names(functionParams), functionParams, EntityID)

	}


#' Create new PlanGroupClearance.
#'
#' This function creates a new PlanGroupClearance.
#'
#' @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 StaffPlanning
#' @return The fields used to define the newly created PlanGroupClearance.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createPlanGroupClearance <- function(EntityID = 1, setPlanGroupID = NULL, setSecurityGroupID = 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("StaffPlanning",  "PlanGroupClearance", names(functionParams), functionParams, EntityID)

	}


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

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("StaffPlanning",  "PlanGroupClearance", PlanGroupClearanceID, EntityID)

	}


#' Get all PlanGroupPositionTypes.
#'
#' This function returns a dataframe of all PlanGroupPositionTypes 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 StaffPlanning
#' @return All PlanGroupPositionTypes in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllPlanGroupPositionTypes <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnPlanGroupPositionTypeID = F, returnCreatedTime = F, returnCurrentUserHasPlanGroupAccess = F, returnModifiedTime = F, returnPlanGroupID = F, returnPositionTypeID = 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("StaffPlanning", "PlanGroupPositionType", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific PlanGroupPositionType
#'
#' This function returns fields for a PlanGroupPositionType.
#'
#' @param PlanGroupPositionTypeID The id of the PlanGroupPositionType.\cr Run \code{\link{getAllPlanGroupPositionTypes}} for a list of PlanGroupPositionTypes.
#' @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 StaffPlanning
#' @return Details for the PlanGroupPositionType.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getPlanGroupPositionType <- function(PlanGroupPositionTypeID, EntityID = 1, returnPlanGroupPositionTypeID = F, returnCreatedTime = F, returnCurrentUserHasPlanGroupAccess = F, returnModifiedTime = F, returnPlanGroupID = F, returnPositionTypeID = 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("StaffPlanning",  "PlanGroupPositionType", PlanGroupPositionTypeID, searchFields, EntityID)

	}


#' Modify a specific PlanGroupPositionType
#'
#' This function modifies fields for a PlanGroupPositionType.
#'
#' @param PlanGroupPositionTypeID The id of the PlanGroupPositionType to be modified.\cr Run \code{\link{getAllPlanGroupPositionTypes}} for a list of PlanGroupPositionTypes.
#' @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 StaffPlanning
#' @return Details of the modified PlanGroupPositionType.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyPlanGroupPositionType <- function(PlanGroupPositionTypeID, EntityID = 1, setPlanGroupID = NULL, setPositionTypeID = 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("StaffPlanning",  "PlanGroupPositionType", PlanGroupPositionTypeID, names(functionParams), functionParams, EntityID)

	}


#' Create new PlanGroupPositionType.
#'
#' This function creates a new PlanGroupPositionType.
#'
#' @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 StaffPlanning
#' @return The fields used to define the newly created PlanGroupPositionType.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createPlanGroupPositionType <- function(EntityID = 1, setPlanGroupID = NULL, setPositionTypeID = 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("StaffPlanning",  "PlanGroupPositionType", names(functionParams), functionParams, EntityID)

	}


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

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("StaffPlanning",  "PlanGroupPositionType", PlanGroupPositionTypeID, EntityID)

	}


#' Get all PlanPositions.
#'
#' This function returns a dataframe of all PlanPositions 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 StaffPlanning
#' @return All PlanPositions in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllPlanPositions <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnPlanPositionID = F, returnAnnualPay = F, returnAssignedFTE = F, returnAvailableFTE = F, returnBudgetedFTE = F, returnCalculationStatus = F, returnCalculationStatusCode = F, returnCalendarID = F, returnCreatedTime = F, returnCurrentUserHasPlanGroupAccess = F, returnDescription = F, returnEmployeePlacementDescription = F, returnEmployeePlacementID = F, returnFormattedFullPaySecondsPerDay = F, returnFormattedFullPaySecondsPerDayDecimal = F, returnFullPaidDays = F, returnFullPaySecondsPerDay = F, returnJobTypeID = F, returnLaneID = F, returnMatrixID = F, returnModifiedTime = F, returnPlacementID = F, returnPlacementType = F, returnPlacementTypeCode = F, returnPlanEmployeeID = F, returnPlanID = F, returnPlanPositionDistributionsAssignmentTypeCodes = F, returnPlanPositionDistributionsAssignmentTypeDescriptions = F, returnPlanPositionDistributionsBuildingCodes = F, returnPlanPositionDistributionsBuildingDescriptions = F, returnPlanPositionDistributionsDepartmentCodes = F, returnPlanPositionDistributionsDepartmentDescriptions = F, returnPlanPositionDistributionsFTEGroupCodes = F, returnPlanPositionDistributionsFTEGroupDescriptions = F, returnPositionGroupID = F, returnPositionIDClonedFrom = F, returnPositionIdentifier = F, returnPositionNumberID = F, returnPositionTypeID = F, returnRate = F, returnRequiredCredits = F, returnSalaryCalculationMethodID = F, returnStepNumber = F, returnTotalBenefitAmount = F, returnTotalCompensationAmount = F, returnTotalPayAmount = 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("StaffPlanning", "PlanPosition", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific PlanPosition
#'
#' This function returns fields for a PlanPosition.
#'
#' @param PlanPositionID The id of the PlanPosition.\cr Run \code{\link{getAllPlanPositions}} for a list of PlanPositions.
#' @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 StaffPlanning
#' @return Details for the PlanPosition.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getPlanPosition <- function(PlanPositionID, EntityID = 1, returnPlanPositionID = F, returnAnnualPay = F, returnAssignedFTE = F, returnAvailableFTE = F, returnBudgetedFTE = F, returnCalculationStatus = F, returnCalculationStatusCode = F, returnCalendarID = F, returnCreatedTime = F, returnCurrentUserHasPlanGroupAccess = F, returnDescription = F, returnEmployeePlacementDescription = F, returnEmployeePlacementID = F, returnFormattedFullPaySecondsPerDay = F, returnFormattedFullPaySecondsPerDayDecimal = F, returnFullPaidDays = F, returnFullPaySecondsPerDay = F, returnJobTypeID = F, returnLaneID = F, returnMatrixID = F, returnModifiedTime = F, returnPlacementID = F, returnPlacementType = F, returnPlacementTypeCode = F, returnPlanEmployeeID = F, returnPlanID = F, returnPlanPositionDistributionsAssignmentTypeCodes = F, returnPlanPositionDistributionsAssignmentTypeDescriptions = F, returnPlanPositionDistributionsBuildingCodes = F, returnPlanPositionDistributionsBuildingDescriptions = F, returnPlanPositionDistributionsDepartmentCodes = F, returnPlanPositionDistributionsDepartmentDescriptions = F, returnPlanPositionDistributionsFTEGroupCodes = F, returnPlanPositionDistributionsFTEGroupDescriptions = F, returnPositionGroupID = F, returnPositionIDClonedFrom = F, returnPositionIdentifier = F, returnPositionNumberID = F, returnPositionTypeID = F, returnRate = F, returnRequiredCredits = F, returnSalaryCalculationMethodID = F, returnStepNumber = F, returnTotalBenefitAmount = F, returnTotalCompensationAmount = F, returnTotalPayAmount = 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("StaffPlanning",  "PlanPosition", PlanPositionID, searchFields, EntityID)

	}


#' Modify a specific PlanPosition
#'
#' This function modifies fields for a PlanPosition.
#'
#' @param PlanPositionID The id of the PlanPosition to be modified.\cr Run \code{\link{getAllPlanPositions}} for a list of PlanPositions.
#' @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 StaffPlanning
#' @return Details of the modified PlanPosition.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyPlanPosition <- function(PlanPositionID, EntityID = 1, setAnnualPay = NULL, setBudgetedFTE = NULL, setCalculationStatus = NULL, setCalculationStatusCode = NULL, setCalendarID = NULL, setDescription = NULL, setEmployeePlacementDescription = NULL, setEmployeePlacementID = NULL, setFormattedFullPaySecondsPerDay = NULL, setFullPaidDays = NULL, setFullPaySecondsPerDay = NULL, setJobTypeID = NULL, setLaneID = NULL, setMatrixID = NULL, setPlacementID = NULL, setPlacementType = NULL, setPlacementTypeCode = NULL, setPlanEmployeeID = NULL, setPlanID = NULL, setPositionGroupID = NULL, setPositionIDClonedFrom = NULL, setPositionNumberID = NULL, setPositionTypeID = NULL, setRate = NULL, setRequiredCredits = NULL, setSalaryCalculationMethodID = NULL, setStepNumber = 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("StaffPlanning",  "PlanPosition", PlanPositionID, names(functionParams), functionParams, EntityID)

	}


#' Create new PlanPosition.
#'
#' This function creates a new PlanPosition.
#'
#' @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 StaffPlanning
#' @return The fields used to define the newly created PlanPosition.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createPlanPosition <- function(EntityID = 1, setAnnualPay = NULL, setBudgetedFTE = NULL, setCalculationStatus = NULL, setCalculationStatusCode = NULL, setCalendarID = NULL, setDescription = NULL, setEmployeePlacementDescription = NULL, setEmployeePlacementID = NULL, setFormattedFullPaySecondsPerDay = NULL, setFullPaidDays = NULL, setFullPaySecondsPerDay = NULL, setJobTypeID = NULL, setLaneID = NULL, setMatrixID = NULL, setPlacementID = NULL, setPlacementType = NULL, setPlacementTypeCode = NULL, setPlanEmployeeID = NULL, setPlanID = NULL, setPositionGroupID = NULL, setPositionIDClonedFrom = NULL, setPositionNumberID = NULL, setPositionTypeID = NULL, setRate = NULL, setRequiredCredits = NULL, setSalaryCalculationMethodID = NULL, setStepNumber = 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("StaffPlanning",  "PlanPosition", names(functionParams), functionParams, EntityID)

	}


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

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("StaffPlanning",  "PlanPosition", PlanPositionID, EntityID)

	}


#' Get all PlanPositionBenefits.
#'
#' This function returns a dataframe of all PlanPositionBenefits 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 StaffPlanning
#' @return All PlanPositionBenefits in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllPlanPositionBenefits <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnPlanPositionBenefitID = F, returnBenefitID = F, returnCalculationType = F, returnCalculationTypeCode = F, returnCreatedTime = F, returnModifiedTime = F, returnPlanPositionID = F, returnTotalAnnualAmountCalculated = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnValue = 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("StaffPlanning", "PlanPositionBenefit", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific PlanPositionBenefit
#'
#' This function returns fields for a PlanPositionBenefit.
#'
#' @param PlanPositionBenefitID The id of the PlanPositionBenefit.\cr Run \code{\link{getAllPlanPositionBenefits}} for a list of PlanPositionBenefits.
#' @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 StaffPlanning
#' @return Details for the PlanPositionBenefit.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getPlanPositionBenefit <- function(PlanPositionBenefitID, EntityID = 1, returnPlanPositionBenefitID = F, returnBenefitID = F, returnCalculationType = F, returnCalculationTypeCode = F, returnCreatedTime = F, returnModifiedTime = F, returnPlanPositionID = F, returnTotalAnnualAmountCalculated = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnValue = 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("StaffPlanning",  "PlanPositionBenefit", PlanPositionBenefitID, searchFields, EntityID)

	}


#' Modify a specific PlanPositionBenefit
#'
#' This function modifies fields for a PlanPositionBenefit.
#'
#' @param PlanPositionBenefitID The id of the PlanPositionBenefit to be modified.\cr Run \code{\link{getAllPlanPositionBenefits}} for a list of PlanPositionBenefits.
#' @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 StaffPlanning
#' @return Details of the modified PlanPositionBenefit.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyPlanPositionBenefit <- function(PlanPositionBenefitID, EntityID = 1, setBenefitID = NULL, setCalculationType = NULL, setCalculationTypeCode = NULL, setPlanPositionID = NULL, setValue = 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("StaffPlanning",  "PlanPositionBenefit", PlanPositionBenefitID, names(functionParams), functionParams, EntityID)

	}


#' Create new PlanPositionBenefit.
#'
#' This function creates a new PlanPositionBenefit.
#'
#' @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 StaffPlanning
#' @return The fields used to define the newly created PlanPositionBenefit.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createPlanPositionBenefit <- function(EntityID = 1, setBenefitID = NULL, setCalculationType = NULL, setCalculationTypeCode = NULL, setPlanPositionID = NULL, setValue = 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("StaffPlanning",  "PlanPositionBenefit", names(functionParams), functionParams, EntityID)

	}


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

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("StaffPlanning",  "PlanPositionBenefit", PlanPositionBenefitID, EntityID)

	}


#' Get all PlanPositionDistributions.
#'
#' This function returns a dataframe of all PlanPositionDistributions 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 StaffPlanning
#' @return All PlanPositionDistributions in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllPlanPositionDistributions <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnPlanPositionDistributionID = F, returnAssignmentTypeID = F, returnBuildingID = F, returnCreatedTime = F, returnCurrentUserHasPlanGroupAccess = F, returnDepartmentID = F, returnFTE = F, returnFTEGroupID = F, returnModifiedTime = F, returnPlanGroupID = F, returnPlanPositionID = 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("StaffPlanning", "PlanPositionDistribution", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific PlanPositionDistribution
#'
#' This function returns fields for a PlanPositionDistribution.
#'
#' @param PlanPositionDistributionID The id of the PlanPositionDistribution.\cr Run \code{\link{getAllPlanPositionDistributions}} for a list of PlanPositionDistributions.
#' @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 StaffPlanning
#' @return Details for the PlanPositionDistribution.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getPlanPositionDistribution <- function(PlanPositionDistributionID, EntityID = 1, returnPlanPositionDistributionID = F, returnAssignmentTypeID = F, returnBuildingID = F, returnCreatedTime = F, returnCurrentUserHasPlanGroupAccess = F, returnDepartmentID = F, returnFTE = F, returnFTEGroupID = F, returnModifiedTime = F, returnPlanGroupID = F, returnPlanPositionID = 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("StaffPlanning",  "PlanPositionDistribution", PlanPositionDistributionID, searchFields, EntityID)

	}


#' Modify a specific PlanPositionDistribution
#'
#' This function modifies fields for a PlanPositionDistribution.
#'
#' @param PlanPositionDistributionID The id of the PlanPositionDistribution to be modified.\cr Run \code{\link{getAllPlanPositionDistributions}} for a list of PlanPositionDistributions.
#' @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 StaffPlanning
#' @return Details of the modified PlanPositionDistribution.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyPlanPositionDistribution <- function(PlanPositionDistributionID, EntityID = 1, setAssignmentTypeID = NULL, setBuildingID = NULL, setDepartmentID = NULL, setFTE = NULL, setFTEGroupID = NULL, setPlanGroupID = NULL, setPlanPositionID = 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("StaffPlanning",  "PlanPositionDistribution", PlanPositionDistributionID, names(functionParams), functionParams, EntityID)

	}


#' Create new PlanPositionDistribution.
#'
#' This function creates a new PlanPositionDistribution.
#'
#' @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 StaffPlanning
#' @return The fields used to define the newly created PlanPositionDistribution.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createPlanPositionDistribution <- function(EntityID = 1, setAssignmentTypeID = NULL, setBuildingID = NULL, setDepartmentID = NULL, setFTE = NULL, setFTEGroupID = NULL, setPlanGroupID = NULL, setPlanPositionID = 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("StaffPlanning",  "PlanPositionDistribution", names(functionParams), functionParams, EntityID)

	}


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

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("StaffPlanning",  "PlanPositionDistribution", PlanPositionDistributionID, EntityID)

	}


#' Get all PlanPositionDistributionAccountDistributions.
#'
#' This function returns a dataframe of all PlanPositionDistributionAccountDistributions 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 StaffPlanning
#' @return All PlanPositionDistributionAccountDistributions in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllPlanPositionDistributionAccountDistributions <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnPlanPositionDistributionAccountDistributionID = F, returnAccountID = F, returnCreatedTime = F, returnDistributionPercent = F, returnModifiedTime = F, returnPlanPositionDistributionID = F, returnProratedDistributionPercent = 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("StaffPlanning", "PlanPositionDistributionAccountDistribution", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific PlanPositionDistributionAccountDistribution
#'
#' This function returns fields for a PlanPositionDistributionAccountDistribution.
#'
#' @param PlanPositionDistributionAccountDistributionID The id of the PlanPositionDistributionAccountDistribution.\cr Run \code{\link{getAllPlanPositionDistributionAccountDistributions}} for a list of PlanPositionDistributionAccountDistributions.
#' @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 StaffPlanning
#' @return Details for the PlanPositionDistributionAccountDistribution.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getPlanPositionDistributionAccountDistribution <- function(PlanPositionDistributionAccountDistributionID, EntityID = 1, returnPlanPositionDistributionAccountDistributionID = F, returnAccountID = F, returnCreatedTime = F, returnDistributionPercent = F, returnModifiedTime = F, returnPlanPositionDistributionID = F, returnProratedDistributionPercent = 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("StaffPlanning",  "PlanPositionDistributionAccountDistribution", PlanPositionDistributionAccountDistributionID, searchFields, EntityID)

	}


#' Modify a specific PlanPositionDistributionAccountDistribution
#'
#' This function modifies fields for a PlanPositionDistributionAccountDistribution.
#'
#' @param PlanPositionDistributionAccountDistributionID The id of the PlanPositionDistributionAccountDistribution to be modified.\cr Run \code{\link{getAllPlanPositionDistributionAccountDistributions}} for a list of PlanPositionDistributionAccountDistributions.
#' @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 StaffPlanning
#' @return Details of the modified PlanPositionDistributionAccountDistribution.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyPlanPositionDistributionAccountDistribution <- function(PlanPositionDistributionAccountDistributionID, EntityID = 1, setAccountID = NULL, setDistributionPercent = NULL, setPlanPositionDistributionID = 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("StaffPlanning",  "PlanPositionDistributionAccountDistribution", PlanPositionDistributionAccountDistributionID, names(functionParams), functionParams, EntityID)

	}


#' Create new PlanPositionDistributionAccountDistribution.
#'
#' This function creates a new PlanPositionDistributionAccountDistribution.
#'
#' @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 StaffPlanning
#' @return The fields used to define the newly created PlanPositionDistributionAccountDistribution.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createPlanPositionDistributionAccountDistribution <- function(EntityID = 1, setAccountID = NULL, setDistributionPercent = NULL, setPlanPositionDistributionID = 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("StaffPlanning",  "PlanPositionDistributionAccountDistribution", names(functionParams), functionParams, EntityID)

	}


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

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("StaffPlanning",  "PlanPositionDistributionAccountDistribution", PlanPositionDistributionAccountDistributionID, EntityID)

	}


#' Get all PlanPositionPaies.
#'
#' This function returns a dataframe of all PlanPositionPaies 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 StaffPlanning
#' @return All PlanPositionPaies in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllPlanPositionPaies <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnPlanPositionPayID = F, returnAccountDistributionString = F, returnAssignmentPayTypeIDOriginal = F, returnCreatedTime = F, returnModifiedTime = F, returnPayScheduleID = F, returnPayTypeID = F, returnPlanPositionID = F, returnStipendAmount = F, returnTotalAmount = F, returnTotalAnnualAmountCalculated = F, returnType = F, returnTypeCode = 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("StaffPlanning", "PlanPositionPay", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific PlanPositionPay
#'
#' This function returns fields for a PlanPositionPay.
#'
#' @param PlanPositionPayID The id of the PlanPositionPay.\cr Run \code{\link{getAllPlanPositionPaies}} for a list of PlanPositionPaies.
#' @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 StaffPlanning
#' @return Details for the PlanPositionPay.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getPlanPositionPay <- function(PlanPositionPayID, EntityID = 1, returnPlanPositionPayID = F, returnAccountDistributionString = F, returnAssignmentPayTypeIDOriginal = F, returnCreatedTime = F, returnModifiedTime = F, returnPayScheduleID = F, returnPayTypeID = F, returnPlanPositionID = F, returnStipendAmount = F, returnTotalAmount = F, returnTotalAnnualAmountCalculated = F, returnType = F, returnTypeCode = 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("StaffPlanning",  "PlanPositionPay", PlanPositionPayID, searchFields, EntityID)

	}


#' Modify a specific PlanPositionPay
#'
#' This function modifies fields for a PlanPositionPay.
#'
#' @param PlanPositionPayID The id of the PlanPositionPay to be modified.\cr Run \code{\link{getAllPlanPositionPaies}} for a list of PlanPositionPays.
#' @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 StaffPlanning
#' @return Details of the modified PlanPositionPay.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyPlanPositionPay <- function(PlanPositionPayID, EntityID = 1, setAccountDistributionString = NULL, setAssignmentPayTypeIDOriginal = NULL, setPayScheduleID = NULL, setPayTypeID = NULL, setPlanPositionID = NULL, setStipendAmount = NULL, setType = NULL, setTypeCode = 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("StaffPlanning",  "PlanPositionPay", PlanPositionPayID, names(functionParams), functionParams, EntityID)

	}


#' Create new PlanPositionPay.
#'
#' This function creates a new PlanPositionPay.
#'
#' @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 StaffPlanning
#' @return The fields used to define the newly created PlanPositionPay.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createPlanPositionPay <- function(EntityID = 1, setAccountDistributionString = NULL, setAssignmentPayTypeIDOriginal = NULL, setPayScheduleID = NULL, setPayTypeID = NULL, setPlanPositionID = NULL, setStipendAmount = NULL, setType = NULL, setTypeCode = 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("StaffPlanning",  "PlanPositionPay", names(functionParams), functionParams, EntityID)

	}


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

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("StaffPlanning",  "PlanPositionPay", PlanPositionPayID, EntityID)

	}


#' Get all PlanPositionPayAccountCalculations.
#'
#' This function returns a dataframe of all PlanPositionPayAccountCalculations 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 StaffPlanning
#' @return All PlanPositionPayAccountCalculations in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllPlanPositionPayAccountCalculations <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnPlanPositionPayAccountCalculationID = F, returnAnnualAmount = F, returnCreatedTime = F, returnModifiedTime = F, returnPlanPositionPayAccountDistributionID = 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("StaffPlanning", "PlanPositionPayAccountCalculation", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific PlanPositionPayAccountCalculation
#'
#' This function returns fields for a PlanPositionPayAccountCalculation.
#'
#' @param PlanPositionPayAccountCalculationID The id of the PlanPositionPayAccountCalculation.\cr Run \code{\link{getAllPlanPositionPayAccountCalculations}} for a list of PlanPositionPayAccountCalculations.
#' @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 StaffPlanning
#' @return Details for the PlanPositionPayAccountCalculation.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getPlanPositionPayAccountCalculation <- function(PlanPositionPayAccountCalculationID, EntityID = 1, returnPlanPositionPayAccountCalculationID = F, returnAnnualAmount = F, returnCreatedTime = F, returnModifiedTime = F, returnPlanPositionPayAccountDistributionID = 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("StaffPlanning",  "PlanPositionPayAccountCalculation", PlanPositionPayAccountCalculationID, searchFields, EntityID)

	}


#' Modify a specific PlanPositionPayAccountCalculation
#'
#' This function modifies fields for a PlanPositionPayAccountCalculation.
#'
#' @param PlanPositionPayAccountCalculationID The id of the PlanPositionPayAccountCalculation to be modified.\cr Run \code{\link{getAllPlanPositionPayAccountCalculations}} for a list of PlanPositionPayAccountCalculations.
#' @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 StaffPlanning
#' @return Details of the modified PlanPositionPayAccountCalculation.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyPlanPositionPayAccountCalculation <- function(PlanPositionPayAccountCalculationID, EntityID = 1, setAnnualAmount = NULL, setPlanPositionPayAccountDistributionID = 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("StaffPlanning",  "PlanPositionPayAccountCalculation", PlanPositionPayAccountCalculationID, names(functionParams), functionParams, EntityID)

	}


#' Create new PlanPositionPayAccountCalculation.
#'
#' This function creates a new PlanPositionPayAccountCalculation.
#'
#' @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 StaffPlanning
#' @return The fields used to define the newly created PlanPositionPayAccountCalculation.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createPlanPositionPayAccountCalculation <- function(EntityID = 1, setAnnualAmount = NULL, setPlanPositionPayAccountDistributionID = 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("StaffPlanning",  "PlanPositionPayAccountCalculation", names(functionParams), functionParams, EntityID)

	}


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

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("StaffPlanning",  "PlanPositionPayAccountCalculation", PlanPositionPayAccountCalculationID, EntityID)

	}


#' Get all PlanPositionPayAccountDistributions.
#'
#' This function returns a dataframe of all PlanPositionPayAccountDistributions 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 StaffPlanning
#' @return All PlanPositionPayAccountDistributions in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllPlanPositionPayAccountDistributions <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnPlanPositionPayAccountDistributionID = F, returnAccountID = F, returnCreatedTime = F, returnDistributionPercent = F, returnModifiedTime = F, returnPlanPositionPayID = 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("StaffPlanning", "PlanPositionPayAccountDistribution", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific PlanPositionPayAccountDistribution
#'
#' This function returns fields for a PlanPositionPayAccountDistribution.
#'
#' @param PlanPositionPayAccountDistributionID The id of the PlanPositionPayAccountDistribution.\cr Run \code{\link{getAllPlanPositionPayAccountDistributions}} for a list of PlanPositionPayAccountDistributions.
#' @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 StaffPlanning
#' @return Details for the PlanPositionPayAccountDistribution.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getPlanPositionPayAccountDistribution <- function(PlanPositionPayAccountDistributionID, EntityID = 1, returnPlanPositionPayAccountDistributionID = F, returnAccountID = F, returnCreatedTime = F, returnDistributionPercent = F, returnModifiedTime = F, returnPlanPositionPayID = 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("StaffPlanning",  "PlanPositionPayAccountDistribution", PlanPositionPayAccountDistributionID, searchFields, EntityID)

	}


#' Modify a specific PlanPositionPayAccountDistribution
#'
#' This function modifies fields for a PlanPositionPayAccountDistribution.
#'
#' @param PlanPositionPayAccountDistributionID The id of the PlanPositionPayAccountDistribution to be modified.\cr Run \code{\link{getAllPlanPositionPayAccountDistributions}} for a list of PlanPositionPayAccountDistributions.
#' @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 StaffPlanning
#' @return Details of the modified PlanPositionPayAccountDistribution.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyPlanPositionPayAccountDistribution <- function(PlanPositionPayAccountDistributionID, EntityID = 1, setAccountID = NULL, setDistributionPercent = NULL, setPlanPositionPayID = 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("StaffPlanning",  "PlanPositionPayAccountDistribution", PlanPositionPayAccountDistributionID, names(functionParams), functionParams, EntityID)

	}


#' Create new PlanPositionPayAccountDistribution.
#'
#' This function creates a new PlanPositionPayAccountDistribution.
#'
#' @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 StaffPlanning
#' @return The fields used to define the newly created PlanPositionPayAccountDistribution.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createPlanPositionPayAccountDistribution <- function(EntityID = 1, setAccountID = NULL, setDistributionPercent = NULL, setPlanPositionPayID = 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("StaffPlanning",  "PlanPositionPayAccountDistribution", names(functionParams), functionParams, EntityID)

	}


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

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("StaffPlanning",  "PlanPositionPayAccountDistribution", PlanPositionPayAccountDistributionID, EntityID)

	}


#' Get all PlanPositionPayBenefits.
#'
#' This function returns a dataframe of all PlanPositionPayBenefits 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 StaffPlanning
#' @return All PlanPositionPayBenefits in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllPlanPositionPayBenefits <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnPlanPositionPayBenefitID = F, returnCreatedTime = F, returnModifiedTime = F, returnPlanPositionBenefitID = F, returnPlanPositionPayID = 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("StaffPlanning", "PlanPositionPayBenefit", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific PlanPositionPayBenefit
#'
#' This function returns fields for a PlanPositionPayBenefit.
#'
#' @param PlanPositionPayBenefitID The id of the PlanPositionPayBenefit.\cr Run \code{\link{getAllPlanPositionPayBenefits}} for a list of PlanPositionPayBenefits.
#' @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 StaffPlanning
#' @return Details for the PlanPositionPayBenefit.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getPlanPositionPayBenefit <- function(PlanPositionPayBenefitID, EntityID = 1, returnPlanPositionPayBenefitID = F, returnCreatedTime = F, returnModifiedTime = F, returnPlanPositionBenefitID = F, returnPlanPositionPayID = 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("StaffPlanning",  "PlanPositionPayBenefit", PlanPositionPayBenefitID, searchFields, EntityID)

	}


#' Modify a specific PlanPositionPayBenefit
#'
#' This function modifies fields for a PlanPositionPayBenefit.
#'
#' @param PlanPositionPayBenefitID The id of the PlanPositionPayBenefit to be modified.\cr Run \code{\link{getAllPlanPositionPayBenefits}} for a list of PlanPositionPayBenefits.
#' @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 StaffPlanning
#' @return Details of the modified PlanPositionPayBenefit.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyPlanPositionPayBenefit <- function(PlanPositionPayBenefitID, EntityID = 1, setPlanPositionBenefitID = NULL, setPlanPositionPayID = 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("StaffPlanning",  "PlanPositionPayBenefit", PlanPositionPayBenefitID, names(functionParams), functionParams, EntityID)

	}


#' Create new PlanPositionPayBenefit.
#'
#' This function creates a new PlanPositionPayBenefit.
#'
#' @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 StaffPlanning
#' @return The fields used to define the newly created PlanPositionPayBenefit.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createPlanPositionPayBenefit <- function(EntityID = 1, setPlanPositionBenefitID = NULL, setPlanPositionPayID = 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("StaffPlanning",  "PlanPositionPayBenefit", names(functionParams), functionParams, EntityID)

	}


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

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("StaffPlanning",  "PlanPositionPayBenefit", PlanPositionPayBenefitID, EntityID)

	}


#' Get all PlanPositionPayBenefitAccounts.
#'
#' This function returns a dataframe of all PlanPositionPayBenefitAccounts 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 StaffPlanning
#' @return All PlanPositionPayBenefitAccounts in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllPlanPositionPayBenefitAccounts <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnPlanPositionPayBenefitAccountID = F, returnAccountID = F, returnAnnualAmount = F, returnCreatedTime = F, returnModifiedTime = F, returnPlanPositionPayAccountDistributionID = F, returnPlanPositionPayBenefitID = 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("StaffPlanning", "PlanPositionPayBenefitAccount", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific PlanPositionPayBenefitAccount
#'
#' This function returns fields for a PlanPositionPayBenefitAccount.
#'
#' @param PlanPositionPayBenefitAccountID The id of the PlanPositionPayBenefitAccount.\cr Run \code{\link{getAllPlanPositionPayBenefitAccounts}} for a list of PlanPositionPayBenefitAccounts.
#' @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 StaffPlanning
#' @return Details for the PlanPositionPayBenefitAccount.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getPlanPositionPayBenefitAccount <- function(PlanPositionPayBenefitAccountID, EntityID = 1, returnPlanPositionPayBenefitAccountID = F, returnAccountID = F, returnAnnualAmount = F, returnCreatedTime = F, returnModifiedTime = F, returnPlanPositionPayAccountDistributionID = F, returnPlanPositionPayBenefitID = 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("StaffPlanning",  "PlanPositionPayBenefitAccount", PlanPositionPayBenefitAccountID, searchFields, EntityID)

	}


#' Modify a specific PlanPositionPayBenefitAccount
#'
#' This function modifies fields for a PlanPositionPayBenefitAccount.
#'
#' @param PlanPositionPayBenefitAccountID The id of the PlanPositionPayBenefitAccount to be modified.\cr Run \code{\link{getAllPlanPositionPayBenefitAccounts}} for a list of PlanPositionPayBenefitAccounts.
#' @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 StaffPlanning
#' @return Details of the modified PlanPositionPayBenefitAccount.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyPlanPositionPayBenefitAccount <- function(PlanPositionPayBenefitAccountID, EntityID = 1, setAccountID = NULL, setAnnualAmount = NULL, setPlanPositionPayAccountDistributionID = NULL, setPlanPositionPayBenefitID = 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("StaffPlanning",  "PlanPositionPayBenefitAccount", PlanPositionPayBenefitAccountID, names(functionParams), functionParams, EntityID)

	}


#' Create new PlanPositionPayBenefitAccount.
#'
#' This function creates a new PlanPositionPayBenefitAccount.
#'
#' @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 StaffPlanning
#' @return The fields used to define the newly created PlanPositionPayBenefitAccount.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createPlanPositionPayBenefitAccount <- function(EntityID = 1, setAccountID = NULL, setAnnualAmount = NULL, setPlanPositionPayAccountDistributionID = NULL, setPlanPositionPayBenefitID = 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("StaffPlanning",  "PlanPositionPayBenefitAccount", names(functionParams), functionParams, EntityID)

	}


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

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("StaffPlanning",  "PlanPositionPayBenefitAccount", PlanPositionPayBenefitAccountID, EntityID)

	}


#' Get all PlanPositionSupplements.
#'
#' This function returns a dataframe of all PlanPositionSupplements 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 StaffPlanning
#' @return All PlanPositionSupplements in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllPlanPositionSupplements <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnPlanPositionSupplementID = F, returnAnnualPay = F, returnCreatedTime = F, returnModifiedTime = F, returnPlanPositionID = F, returnRate = F, returnSupplementTypeID = 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("StaffPlanning", "PlanPositionSupplement", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific PlanPositionSupplement
#'
#' This function returns fields for a PlanPositionSupplement.
#'
#' @param PlanPositionSupplementID The id of the PlanPositionSupplement.\cr Run \code{\link{getAllPlanPositionSupplements}} for a list of PlanPositionSupplements.
#' @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 StaffPlanning
#' @return Details for the PlanPositionSupplement.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getPlanPositionSupplement <- function(PlanPositionSupplementID, EntityID = 1, returnPlanPositionSupplementID = F, returnAnnualPay = F, returnCreatedTime = F, returnModifiedTime = F, returnPlanPositionID = F, returnRate = F, returnSupplementTypeID = 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("StaffPlanning",  "PlanPositionSupplement", PlanPositionSupplementID, searchFields, EntityID)

	}


#' Modify a specific PlanPositionSupplement
#'
#' This function modifies fields for a PlanPositionSupplement.
#'
#' @param PlanPositionSupplementID The id of the PlanPositionSupplement to be modified.\cr Run \code{\link{getAllPlanPositionSupplements}} for a list of PlanPositionSupplements.
#' @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 StaffPlanning
#' @return Details of the modified PlanPositionSupplement.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyPlanPositionSupplement <- function(PlanPositionSupplementID, EntityID = 1, setAnnualPay = NULL, setPlanPositionID = NULL, setRate = NULL, setSupplementTypeID = 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("StaffPlanning",  "PlanPositionSupplement", PlanPositionSupplementID, names(functionParams), functionParams, EntityID)

	}


#' Create new PlanPositionSupplement.
#'
#' This function creates a new PlanPositionSupplement.
#'
#' @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 StaffPlanning
#' @return The fields used to define the newly created PlanPositionSupplement.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createPlanPositionSupplement <- function(EntityID = 1, setAnnualPay = NULL, setPlanPositionID = NULL, setRate = NULL, setSupplementTypeID = 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("StaffPlanning",  "PlanPositionSupplement", names(functionParams), functionParams, EntityID)

	}


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

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("StaffPlanning",  "PlanPositionSupplement", PlanPositionSupplementID, EntityID)

	}


#' Get all PositionTypePlanPositionDistributionSummaries.
#'
#' This function returns a dataframe of all PositionTypePlanPositionDistributionSummaries 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 StaffPlanning
#' @return All PositionTypePlanPositionDistributionSummaries in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllPositionTypePlanPositionDistributionSummaries <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnPlanPositionDistributionIDFirst = F, returnFTE = F, returnPlanGroupID = F, returnPositionTypeID = 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("StaffPlanning", "PositionTypePlanPositionDistributionSummary", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific PositionTypePlanPositionDistributionSummary
#'
#' This function returns fields for a PositionTypePlanPositionDistributionSummary.
#'
#' @param PositionTypePlanPositionDistributionSummaryID The id of the PositionTypePlanPositionDistributionSummary.\cr Run \code{\link{getAllPositionTypePlanPositionDistributionSummaries}} for a list of PositionTypePlanPositionDistributionSummaries.
#' @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 StaffPlanning
#' @return Details for the PositionTypePlanPositionDistributionSummary.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getPositionTypePlanPositionDistributionSummary <- function(PositionTypePlanPositionDistributionSummaryID, EntityID = 1, returnPlanPositionDistributionIDFirst = F, returnFTE = F, returnPlanGroupID = F, returnPositionTypeID = 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("StaffPlanning",  "PositionTypePlanPositionDistributionSummary", PositionTypePlanPositionDistributionSummaryID, searchFields, EntityID)

	}


#' Modify a specific PositionTypePlanPositionDistributionSummary
#'
#' This function modifies fields for a PositionTypePlanPositionDistributionSummary.
#'
#' @param PositionTypePlanPositionDistributionSummaryID The id of the PositionTypePlanPositionDistributionSummary to be modified.\cr Run \code{\link{getAllPositionTypePlanPositionDistributionSummaries}} for a list of PositionTypePlanPositionDistributionSummarys.
#' @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 StaffPlanning
#' @return Details of the modified PositionTypePlanPositionDistributionSummary.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyPositionTypePlanPositionDistributionSummary <- function(PositionTypePlanPositionDistributionSummaryID, EntityID = 1, setPlanPositionDistributionIDFirst = NULL, setPlanGroupID = NULL, setPositionTypeID = 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("StaffPlanning",  "PositionTypePlanPositionDistributionSummary", PositionTypePlanPositionDistributionSummaryID, names(functionParams), functionParams, EntityID)

	}


#' Create new PositionTypePlanPositionDistributionSummary.
#'
#' This function creates a new PositionTypePlanPositionDistributionSummary.
#'
#' @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 StaffPlanning
#' @return The fields used to define the newly created PositionTypePlanPositionDistributionSummary.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createPositionTypePlanPositionDistributionSummary <- function(EntityID = 1, setPlanPositionDistributionIDFirst = NULL, setPlanGroupID = NULL, setPositionTypeID = 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("StaffPlanning",  "PositionTypePlanPositionDistributionSummary", names(functionParams), functionParams, EntityID)

	}


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

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("StaffPlanning",  "PositionTypePlanPositionDistributionSummary", PositionTypePlanPositionDistributionSummaryID, EntityID)

	}


#' Get all TempExceptions.
#'
#' This function returns a dataframe of all TempExceptions 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 StaffPlanning
#' @return All TempExceptions in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllTempExceptionsStaffPlanning <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnTempExceptionID = F, returnCreatedTime = F, returnError = F, returnErroredObjectID = F, returnErrorField = F, returnModifiedTime = 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("StaffPlanning", "TempException", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific TempException
#'
#' This function returns fields for a TempException.
#'
#' @param TempExceptionID The id of the TempException.\cr Run \code{\link{getAllTempExceptions}} for a list of TempExceptions.
#' @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 StaffPlanning
#' @return Details for the TempException.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getTempExceptionStaffPlanning <- function(TempExceptionID, EntityID = 1, returnTempExceptionID = F, returnCreatedTime = F, returnError = F, returnErroredObjectID = F, returnErrorField = F, returnModifiedTime = 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("StaffPlanning",  "TempException", TempExceptionID, searchFields, EntityID)

	}


#' Modify a specific TempException
#'
#' This function modifies fields for a TempException.
#'
#' @param TempExceptionID The id of the TempException to be modified.\cr Run \code{\link{getAllTempExceptions}} for a list of TempExceptions.
#' @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 StaffPlanning
#' @return Details of the modified TempException.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyTempExceptionStaffPlanning <- function(TempExceptionID, EntityID = 1, setError = NULL, setErroredObjectID = NULL, setErrorField = 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("StaffPlanning",  "TempException", TempExceptionID, names(functionParams), functionParams, EntityID)

	}


#' Create new TempException.
#'
#' This function creates a new TempException.
#'
#' @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 StaffPlanning
#' @return The fields used to define the newly created TempException.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createTempExceptionStaffPlanning <- function(EntityID = 1, setError = NULL, setErroredObjectID = NULL, setErrorField = 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("StaffPlanning",  "TempException", names(functionParams), functionParams, EntityID)

	}


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

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("StaffPlanning",  "TempException", TempExceptionID, EntityID)

	}


#' Get all TempPlanPositionBenefits.
#'
#' This function returns a dataframe of all TempPlanPositionBenefits 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 StaffPlanning
#' @return All TempPlanPositionBenefits in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllTempPlanPositionBenefits <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnTempPlanPositionBenefitID = F, returnBenefitCodeDescription = F, returnBenefitID = F, returnBenefitTypeTX = F, returnCalculationType = F, returnCalculationTypeCode = F, returnCreatedTime = F, returnErrorCount = F, returnModifiedTime = F, returnNewValue = F, returnPlanPositionBenefitID = F, returnPlanPositionEmployeeName = F, returnPlanPositionEmployeeNumber = F, returnPlanPositionID = F, returnPositionNumber = F, returnPositionTypeDescription = F, returnStateBenefitTXID = F, returnTempPlanPositionEmployeeID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnValue = 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("StaffPlanning", "TempPlanPositionBenefit", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific TempPlanPositionBenefit
#'
#' This function returns fields for a TempPlanPositionBenefit.
#'
#' @param TempPlanPositionBenefitID The id of the TempPlanPositionBenefit.\cr Run \code{\link{getAllTempPlanPositionBenefits}} for a list of TempPlanPositionBenefits.
#' @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 StaffPlanning
#' @return Details for the TempPlanPositionBenefit.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getTempPlanPositionBenefit <- function(TempPlanPositionBenefitID, EntityID = 1, returnTempPlanPositionBenefitID = F, returnBenefitCodeDescription = F, returnBenefitID = F, returnBenefitTypeTX = F, returnCalculationType = F, returnCalculationTypeCode = F, returnCreatedTime = F, returnErrorCount = F, returnModifiedTime = F, returnNewValue = F, returnPlanPositionBenefitID = F, returnPlanPositionEmployeeName = F, returnPlanPositionEmployeeNumber = F, returnPlanPositionID = F, returnPositionNumber = F, returnPositionTypeDescription = F, returnStateBenefitTXID = F, returnTempPlanPositionEmployeeID = F, returnUserIDCreatedBy = F, returnUserIDModifiedBy = F, returnValue = 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("StaffPlanning",  "TempPlanPositionBenefit", TempPlanPositionBenefitID, searchFields, EntityID)

	}


#' Modify a specific TempPlanPositionBenefit
#'
#' This function modifies fields for a TempPlanPositionBenefit.
#'
#' @param TempPlanPositionBenefitID The id of the TempPlanPositionBenefit to be modified.\cr Run \code{\link{getAllTempPlanPositionBenefits}} for a list of TempPlanPositionBenefits.
#' @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 StaffPlanning
#' @return Details of the modified TempPlanPositionBenefit.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyTempPlanPositionBenefit <- function(TempPlanPositionBenefitID, EntityID = 1, setBenefitCodeDescription = NULL, setBenefitID = NULL, setBenefitTypeTX = NULL, setCalculationType = NULL, setCalculationTypeCode = NULL, setErrorCount = NULL, setNewValue = NULL, setPlanPositionBenefitID = NULL, setPlanPositionEmployeeName = NULL, setPlanPositionEmployeeNumber = NULL, setPlanPositionID = NULL, setPositionNumber = NULL, setPositionTypeDescription = NULL, setStateBenefitTXID = NULL, setTempPlanPositionEmployeeID = NULL, setValue = 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("StaffPlanning",  "TempPlanPositionBenefit", TempPlanPositionBenefitID, names(functionParams), functionParams, EntityID)

	}


#' Create new TempPlanPositionBenefit.
#'
#' This function creates a new TempPlanPositionBenefit.
#'
#' @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 StaffPlanning
#' @return The fields used to define the newly created TempPlanPositionBenefit.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createTempPlanPositionBenefit <- function(EntityID = 1, setBenefitCodeDescription = NULL, setBenefitID = NULL, setBenefitTypeTX = NULL, setCalculationType = NULL, setCalculationTypeCode = NULL, setErrorCount = NULL, setNewValue = NULL, setPlanPositionBenefitID = NULL, setPlanPositionEmployeeName = NULL, setPlanPositionEmployeeNumber = NULL, setPlanPositionID = NULL, setPositionNumber = NULL, setPositionTypeDescription = NULL, setStateBenefitTXID = NULL, setTempPlanPositionEmployeeID = NULL, setValue = 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("StaffPlanning",  "TempPlanPositionBenefit", names(functionParams), functionParams, EntityID)

	}


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

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("StaffPlanning",  "TempPlanPositionBenefit", TempPlanPositionBenefitID, EntityID)

	}


#' Get all TempPlanPositionDistributions.
#'
#' This function returns a dataframe of all TempPlanPositionDistributions 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 StaffPlanning
#' @return All TempPlanPositionDistributions in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllTempPlanPositionDistributions <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnTempPlanPositionDistributionID = F, returnAssignmentTypeID = F, returnBuildingID = F, returnCreatedTime = F, returnDepartmentID = F, returnFTE = F, returnFTEGroupID = F, returnModifiedTime = F, returnTempPlanPositionEmployeeID = 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("StaffPlanning", "TempPlanPositionDistribution", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific TempPlanPositionDistribution
#'
#' This function returns fields for a TempPlanPositionDistribution.
#'
#' @param TempPlanPositionDistributionID The id of the TempPlanPositionDistribution.\cr Run \code{\link{getAllTempPlanPositionDistributions}} for a list of TempPlanPositionDistributions.
#' @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 StaffPlanning
#' @return Details for the TempPlanPositionDistribution.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getTempPlanPositionDistribution <- function(TempPlanPositionDistributionID, EntityID = 1, returnTempPlanPositionDistributionID = F, returnAssignmentTypeID = F, returnBuildingID = F, returnCreatedTime = F, returnDepartmentID = F, returnFTE = F, returnFTEGroupID = F, returnModifiedTime = F, returnTempPlanPositionEmployeeID = 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("StaffPlanning",  "TempPlanPositionDistribution", TempPlanPositionDistributionID, searchFields, EntityID)

	}


#' Modify a specific TempPlanPositionDistribution
#'
#' This function modifies fields for a TempPlanPositionDistribution.
#'
#' @param TempPlanPositionDistributionID The id of the TempPlanPositionDistribution to be modified.\cr Run \code{\link{getAllTempPlanPositionDistributions}} for a list of TempPlanPositionDistributions.
#' @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 StaffPlanning
#' @return Details of the modified TempPlanPositionDistribution.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyTempPlanPositionDistribution <- function(TempPlanPositionDistributionID, EntityID = 1, setAssignmentTypeID = NULL, setBuildingID = NULL, setDepartmentID = NULL, setFTE = NULL, setFTEGroupID = NULL, setTempPlanPositionEmployeeID = 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("StaffPlanning",  "TempPlanPositionDistribution", TempPlanPositionDistributionID, names(functionParams), functionParams, EntityID)

	}


#' Create new TempPlanPositionDistribution.
#'
#' This function creates a new TempPlanPositionDistribution.
#'
#' @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 StaffPlanning
#' @return The fields used to define the newly created TempPlanPositionDistribution.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createTempPlanPositionDistribution <- function(EntityID = 1, setAssignmentTypeID = NULL, setBuildingID = NULL, setDepartmentID = NULL, setFTE = NULL, setFTEGroupID = NULL, setTempPlanPositionEmployeeID = 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("StaffPlanning",  "TempPlanPositionDistribution", names(functionParams), functionParams, EntityID)

	}


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

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("StaffPlanning",  "TempPlanPositionDistribution", TempPlanPositionDistributionID, EntityID)

	}


#' Get all TempPlanPositionDistributionAccountDistributions.
#'
#' This function returns a dataframe of all TempPlanPositionDistributionAccountDistributions 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 StaffPlanning
#' @return All TempPlanPositionDistributionAccountDistributions in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllTempPlanPositionDistributionAccountDistributions <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnTempPlanPositionDistributionAccountDistributionID = F, returnAccountID = F, returnCreatedTime = F, returnDistributionPercent = F, returnModifiedTime = F, returnStateConcordDepartmentTNID = F, returnTempPlanPositionDistributionID = 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("StaffPlanning", "TempPlanPositionDistributionAccountDistribution", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific TempPlanPositionDistributionAccountDistribution
#'
#' This function returns fields for a TempPlanPositionDistributionAccountDistribution.
#'
#' @param TempPlanPositionDistributionAccountDistributionID The id of the TempPlanPositionDistributionAccountDistribution.\cr Run \code{\link{getAllTempPlanPositionDistributionAccountDistributions}} for a list of TempPlanPositionDistributionAccountDistributions.
#' @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 StaffPlanning
#' @return Details for the TempPlanPositionDistributionAccountDistribution.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getTempPlanPositionDistributionAccountDistribution <- function(TempPlanPositionDistributionAccountDistributionID, EntityID = 1, returnTempPlanPositionDistributionAccountDistributionID = F, returnAccountID = F, returnCreatedTime = F, returnDistributionPercent = F, returnModifiedTime = F, returnStateConcordDepartmentTNID = F, returnTempPlanPositionDistributionID = 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("StaffPlanning",  "TempPlanPositionDistributionAccountDistribution", TempPlanPositionDistributionAccountDistributionID, searchFields, EntityID)

	}


#' Modify a specific TempPlanPositionDistributionAccountDistribution
#'
#' This function modifies fields for a TempPlanPositionDistributionAccountDistribution.
#'
#' @param TempPlanPositionDistributionAccountDistributionID The id of the TempPlanPositionDistributionAccountDistribution to be modified.\cr Run \code{\link{getAllTempPlanPositionDistributionAccountDistributions}} for a list of TempPlanPositionDistributionAccountDistributions.
#' @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 StaffPlanning
#' @return Details of the modified TempPlanPositionDistributionAccountDistribution.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyTempPlanPositionDistributionAccountDistribution <- function(TempPlanPositionDistributionAccountDistributionID, EntityID = 1, setAccountID = NULL, setDistributionPercent = NULL, setStateConcordDepartmentTNID = NULL, setTempPlanPositionDistributionID = 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("StaffPlanning",  "TempPlanPositionDistributionAccountDistribution", TempPlanPositionDistributionAccountDistributionID, names(functionParams), functionParams, EntityID)

	}


#' Create new TempPlanPositionDistributionAccountDistribution.
#'
#' This function creates a new TempPlanPositionDistributionAccountDistribution.
#'
#' @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 StaffPlanning
#' @return The fields used to define the newly created TempPlanPositionDistributionAccountDistribution.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createTempPlanPositionDistributionAccountDistribution <- function(EntityID = 1, setAccountID = NULL, setDistributionPercent = NULL, setStateConcordDepartmentTNID = NULL, setTempPlanPositionDistributionID = 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("StaffPlanning",  "TempPlanPositionDistributionAccountDistribution", names(functionParams), functionParams, EntityID)

	}


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

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("StaffPlanning",  "TempPlanPositionDistributionAccountDistribution", TempPlanPositionDistributionAccountDistributionID, EntityID)

	}


#' Get all TempPlanPositionEmployees.
#'
#' This function returns a dataframe of all TempPlanPositionEmployees 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 StaffPlanning
#' @return All TempPlanPositionEmployees in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllTempPlanPositionEmployees <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnTempPlanPositionEmployeeID = F, returnAmountType = F, returnAmountTypeCode = F, returnAnnualPay = F, returnAssignmentTypeCodes = F, returnAssignmentTypeDescriptions = F, returnBudgetedFTE = F, returnBuildingCodes = F, returnBuildingDescriptions = F, returnCalendarCode = F, returnCalendarID = F, returnCappedAtMaximumRate = F, returnConfigFiscalYearTRSStateBaseStepID = F, returnConfigFiscalYearTRSStateBaseStepLaneCodeStepNumber = F, returnCreatedTime = F, returnDescription = F, returnEmployeeFullNameLFM = F, returnEmployeeID = F, returnEmployeeNumber = F, returnEmployeePlacementDescription = F, returnEmployeePlacementID = F, returnErrorCount = F, returnErrorMessage = F, returnFormattedFullPaySecondsPerDay = F, returnFullPaidDays = F, returnFullPaySecondsPerDay = F, returnHasFatalException = F, returnJobTypeID = F, returnLaneCode = F, returnLaneID = F, returnMatrixCode = F, returnMatrixID = F, returnMidpointGroup = F, returnMidpointGroupCodeDescription = F, returnMidpointGroupID = F, returnModifiedTime = F, returnOldAnnualPay = F, returnOldBudgetedFTE = F, returnOldCalendarCode = F, returnOldEmployeePlacementDescription = F, returnOldFormattedFullPaySecondsPerDay = F, returnOldFullPaySecondsPerDay = F, returnOldLaneCode = F, returnOldMatrixCode = F, returnOldMidpointGroup = F, returnOldPlacementCode = F, returnOldPlacementType = F, returnOldPlacementTypeCode = F, returnOldRate = F, returnOldRequiredCredits = F, returnOldSalaryCalculationMethodCode = F, returnOldStepNumber = F, returnOldTRSStateBaseStep = F, returnOldTRSStateBaseStepAmount = F, returnPlacementCode = F, returnPlacementID = F, returnPlacementType = F, returnPlacementTypeCode = F, returnPlanPositionID = F, returnPositionGroupID = F, returnPositionIDClonedFrom = F, returnPositionIdentifier = F, returnPositionNumberCode = F, returnPositionNumberID = F, returnPositionTypeCode = F, returnPositionTypeCodeDescription = F, returnPositionTypeID = F, returnRate = F, returnRequiredCredits = F, returnSalaryCalculationMethodCode = F, returnSalaryCalculationMethodID = F, returnStepNumber = F, returnTRSStateBaseStep = F, returnTRSStateBaseStepAmount = F, returnTRSStateBaseStepID = 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("StaffPlanning", "TempPlanPositionEmployee", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific TempPlanPositionEmployee
#'
#' This function returns fields for a TempPlanPositionEmployee.
#'
#' @param TempPlanPositionEmployeeID The id of the TempPlanPositionEmployee.\cr Run \code{\link{getAllTempPlanPositionEmployees}} for a list of TempPlanPositionEmployees.
#' @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 StaffPlanning
#' @return Details for the TempPlanPositionEmployee.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getTempPlanPositionEmployee <- function(TempPlanPositionEmployeeID, EntityID = 1, returnTempPlanPositionEmployeeID = F, returnAmountType = F, returnAmountTypeCode = F, returnAnnualPay = F, returnAssignmentTypeCodes = F, returnAssignmentTypeDescriptions = F, returnBudgetedFTE = F, returnBuildingCodes = F, returnBuildingDescriptions = F, returnCalendarCode = F, returnCalendarID = F, returnCappedAtMaximumRate = F, returnConfigFiscalYearTRSStateBaseStepID = F, returnConfigFiscalYearTRSStateBaseStepLaneCodeStepNumber = F, returnCreatedTime = F, returnDescription = F, returnEmployeeFullNameLFM = F, returnEmployeeID = F, returnEmployeeNumber = F, returnEmployeePlacementDescription = F, returnEmployeePlacementID = F, returnErrorCount = F, returnErrorMessage = F, returnFormattedFullPaySecondsPerDay = F, returnFullPaidDays = F, returnFullPaySecondsPerDay = F, returnHasFatalException = F, returnJobTypeID = F, returnLaneCode = F, returnLaneID = F, returnMatrixCode = F, returnMatrixID = F, returnMidpointGroup = F, returnMidpointGroupCodeDescription = F, returnMidpointGroupID = F, returnModifiedTime = F, returnOldAnnualPay = F, returnOldBudgetedFTE = F, returnOldCalendarCode = F, returnOldEmployeePlacementDescription = F, returnOldFormattedFullPaySecondsPerDay = F, returnOldFullPaySecondsPerDay = F, returnOldLaneCode = F, returnOldMatrixCode = F, returnOldMidpointGroup = F, returnOldPlacementCode = F, returnOldPlacementType = F, returnOldPlacementTypeCode = F, returnOldRate = F, returnOldRequiredCredits = F, returnOldSalaryCalculationMethodCode = F, returnOldStepNumber = F, returnOldTRSStateBaseStep = F, returnOldTRSStateBaseStepAmount = F, returnPlacementCode = F, returnPlacementID = F, returnPlacementType = F, returnPlacementTypeCode = F, returnPlanPositionID = F, returnPositionGroupID = F, returnPositionIDClonedFrom = F, returnPositionIdentifier = F, returnPositionNumberCode = F, returnPositionNumberID = F, returnPositionTypeCode = F, returnPositionTypeCodeDescription = F, returnPositionTypeID = F, returnRate = F, returnRequiredCredits = F, returnSalaryCalculationMethodCode = F, returnSalaryCalculationMethodID = F, returnStepNumber = F, returnTRSStateBaseStep = F, returnTRSStateBaseStepAmount = F, returnTRSStateBaseStepID = 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("StaffPlanning",  "TempPlanPositionEmployee", TempPlanPositionEmployeeID, searchFields, EntityID)

	}


#' Modify a specific TempPlanPositionEmployee
#'
#' This function modifies fields for a TempPlanPositionEmployee.
#'
#' @param TempPlanPositionEmployeeID The id of the TempPlanPositionEmployee to be modified.\cr Run \code{\link{getAllTempPlanPositionEmployees}} for a list of TempPlanPositionEmployees.
#' @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 StaffPlanning
#' @return Details of the modified TempPlanPositionEmployee.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyTempPlanPositionEmployee <- function(TempPlanPositionEmployeeID, EntityID = 1, setAmountType = NULL, setAmountTypeCode = NULL, setAnnualPay = NULL, setAssignmentTypeCodes = NULL, setAssignmentTypeDescriptions = NULL, setBudgetedFTE = NULL, setBuildingCodes = NULL, setBuildingDescriptions = NULL, setCalendarCode = NULL, setCalendarID = NULL, setCappedAtMaximumRate = NULL, setConfigFiscalYearTRSStateBaseStepID = NULL, setConfigFiscalYearTRSStateBaseStepLaneCodeStepNumber = NULL, setDescription = NULL, setEmployeeFullNameLFM = NULL, setEmployeeID = NULL, setEmployeeNumber = NULL, setEmployeePlacementDescription = NULL, setEmployeePlacementID = NULL, setErrorCount = NULL, setErrorMessage = NULL, setFormattedFullPaySecondsPerDay = NULL, setFullPaidDays = NULL, setFullPaySecondsPerDay = NULL, setHasFatalException = NULL, setJobTypeID = NULL, setLaneCode = NULL, setLaneID = NULL, setMatrixCode = NULL, setMatrixID = NULL, setMidpointGroup = NULL, setMidpointGroupCodeDescription = NULL, setMidpointGroupID = NULL, setOldAnnualPay = NULL, setOldBudgetedFTE = NULL, setOldCalendarCode = NULL, setOldEmployeePlacementDescription = NULL, setOldFormattedFullPaySecondsPerDay = NULL, setOldFullPaySecondsPerDay = NULL, setOldLaneCode = NULL, setOldMatrixCode = NULL, setOldMidpointGroup = NULL, setOldPlacementCode = NULL, setOldPlacementType = NULL, setOldPlacementTypeCode = NULL, setOldRate = NULL, setOldRequiredCredits = NULL, setOldSalaryCalculationMethodCode = NULL, setOldStepNumber = NULL, setOldTRSStateBaseStep = NULL, setOldTRSStateBaseStepAmount = NULL, setPlacementCode = NULL, setPlacementID = NULL, setPlacementType = NULL, setPlacementTypeCode = NULL, setPlanPositionID = NULL, setPositionGroupID = NULL, setPositionIDClonedFrom = NULL, setPositionIdentifier = NULL, setPositionNumberCode = NULL, setPositionNumberID = NULL, setPositionTypeCode = NULL, setPositionTypeCodeDescription = NULL, setPositionTypeID = NULL, setRate = NULL, setRequiredCredits = NULL, setSalaryCalculationMethodCode = NULL, setSalaryCalculationMethodID = NULL, setStepNumber = NULL, setTRSStateBaseStep = NULL, setTRSStateBaseStepAmount = NULL, setTRSStateBaseStepID = 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("StaffPlanning",  "TempPlanPositionEmployee", TempPlanPositionEmployeeID, names(functionParams), functionParams, EntityID)

	}


#' Create new TempPlanPositionEmployee.
#'
#' This function creates a new TempPlanPositionEmployee.
#'
#' @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 StaffPlanning
#' @return The fields used to define the newly created TempPlanPositionEmployee.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createTempPlanPositionEmployee <- function(EntityID = 1, setAmountType = NULL, setAmountTypeCode = NULL, setAnnualPay = NULL, setAssignmentTypeCodes = NULL, setAssignmentTypeDescriptions = NULL, setBudgetedFTE = NULL, setBuildingCodes = NULL, setBuildingDescriptions = NULL, setCalendarCode = NULL, setCalendarID = NULL, setCappedAtMaximumRate = NULL, setConfigFiscalYearTRSStateBaseStepID = NULL, setConfigFiscalYearTRSStateBaseStepLaneCodeStepNumber = NULL, setDescription = NULL, setEmployeeFullNameLFM = NULL, setEmployeeID = NULL, setEmployeeNumber = NULL, setEmployeePlacementDescription = NULL, setEmployeePlacementID = NULL, setErrorCount = NULL, setErrorMessage = NULL, setFormattedFullPaySecondsPerDay = NULL, setFullPaidDays = NULL, setFullPaySecondsPerDay = NULL, setHasFatalException = NULL, setJobTypeID = NULL, setLaneCode = NULL, setLaneID = NULL, setMatrixCode = NULL, setMatrixID = NULL, setMidpointGroup = NULL, setMidpointGroupCodeDescription = NULL, setMidpointGroupID = NULL, setOldAnnualPay = NULL, setOldBudgetedFTE = NULL, setOldCalendarCode = NULL, setOldEmployeePlacementDescription = NULL, setOldFormattedFullPaySecondsPerDay = NULL, setOldFullPaySecondsPerDay = NULL, setOldLaneCode = NULL, setOldMatrixCode = NULL, setOldMidpointGroup = NULL, setOldPlacementCode = NULL, setOldPlacementType = NULL, setOldPlacementTypeCode = NULL, setOldRate = NULL, setOldRequiredCredits = NULL, setOldSalaryCalculationMethodCode = NULL, setOldStepNumber = NULL, setOldTRSStateBaseStep = NULL, setOldTRSStateBaseStepAmount = NULL, setPlacementCode = NULL, setPlacementID = NULL, setPlacementType = NULL, setPlacementTypeCode = NULL, setPlanPositionID = NULL, setPositionGroupID = NULL, setPositionIDClonedFrom = NULL, setPositionIdentifier = NULL, setPositionNumberCode = NULL, setPositionNumberID = NULL, setPositionTypeCode = NULL, setPositionTypeCodeDescription = NULL, setPositionTypeID = NULL, setRate = NULL, setRequiredCredits = NULL, setSalaryCalculationMethodCode = NULL, setSalaryCalculationMethodID = NULL, setStepNumber = NULL, setTRSStateBaseStep = NULL, setTRSStateBaseStepAmount = NULL, setTRSStateBaseStepID = 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("StaffPlanning",  "TempPlanPositionEmployee", names(functionParams), functionParams, EntityID)

	}


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

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("StaffPlanning",  "TempPlanPositionEmployee", TempPlanPositionEmployeeID, EntityID)

	}


#' Get all TempPlanPositionExceptions.
#'
#' This function returns a dataframe of all TempPlanPositionExceptions 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 StaffPlanning
#' @return All TempPlanPositionExceptions in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllTempPlanPositionExceptions <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnTempPlanPositionExceptionID = F, returnCreatedTime = F, returnDescription = F, returnError = F, returnErrorType = F, returnErrorTypeCode = F, returnModifiedTime = F, returnPositionIdentifier = F, returnPositionNumberCode = 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("StaffPlanning", "TempPlanPositionException", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific TempPlanPositionException
#'
#' This function returns fields for a TempPlanPositionException.
#'
#' @param TempPlanPositionExceptionID The id of the TempPlanPositionException.\cr Run \code{\link{getAllTempPlanPositionExceptions}} for a list of TempPlanPositionExceptions.
#' @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 StaffPlanning
#' @return Details for the TempPlanPositionException.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getTempPlanPositionException <- function(TempPlanPositionExceptionID, EntityID = 1, returnTempPlanPositionExceptionID = F, returnCreatedTime = F, returnDescription = F, returnError = F, returnErrorType = F, returnErrorTypeCode = F, returnModifiedTime = F, returnPositionIdentifier = F, returnPositionNumberCode = 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("StaffPlanning",  "TempPlanPositionException", TempPlanPositionExceptionID, searchFields, EntityID)

	}


#' Modify a specific TempPlanPositionException
#'
#' This function modifies fields for a TempPlanPositionException.
#'
#' @param TempPlanPositionExceptionID The id of the TempPlanPositionException to be modified.\cr Run \code{\link{getAllTempPlanPositionExceptions}} for a list of TempPlanPositionExceptions.
#' @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 StaffPlanning
#' @return Details of the modified TempPlanPositionException.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyTempPlanPositionException <- function(TempPlanPositionExceptionID, EntityID = 1, setDescription = NULL, setError = NULL, setErrorType = NULL, setErrorTypeCode = NULL, setPositionIdentifier = NULL, setPositionNumberCode = 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("StaffPlanning",  "TempPlanPositionException", TempPlanPositionExceptionID, names(functionParams), functionParams, EntityID)

	}


#' Create new TempPlanPositionException.
#'
#' This function creates a new TempPlanPositionException.
#'
#' @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 StaffPlanning
#' @return The fields used to define the newly created TempPlanPositionException.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createTempPlanPositionException <- function(EntityID = 1, setDescription = NULL, setError = NULL, setErrorType = NULL, setErrorTypeCode = NULL, setPositionIdentifier = NULL, setPositionNumberCode = 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("StaffPlanning",  "TempPlanPositionException", names(functionParams), functionParams, EntityID)

	}


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

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("StaffPlanning",  "TempPlanPositionException", TempPlanPositionExceptionID, EntityID)

	}


#' Get all TempPlanPositionPaies.
#'
#' This function returns a dataframe of all TempPlanPositionPaies 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 StaffPlanning
#' @return All TempPlanPositionPaies in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllTempPlanPositionPaies <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnTempPlanPositionPayID = F, returnAccountDistributionString = F, returnAssignmentPayTypeIDOriginal = F, returnAssignmentTypeCodes = F, returnAssignmentTypeDescriptions = F, returnBuildingCodes = F, returnBuildingDescriptions = F, returnCreatedTime = F, returnEmployeeFullNameLFM = F, returnEmployeeNumber = F, returnErrorCount = F, returnMatchingExpenditureEligibility = F, returnMatchingExpenditureEligibilityCode = F, returnModifiedTime = F, returnNewDisplayAccount = F, returnNewMatchingExpenditureEligibility = F, returnNewMatchingExpenditureEligibilityCode = F, returnOldDisplayAccount = F, returnPayScheduleCodeDescription = F, returnPayScheduleID = F, returnPayTypeCodeDescription = F, returnPayTypeID = F, returnPlanPositionPayID = F, returnPositionTypeCodeDescription = F, returnStipendAmount = F, returnTempPlanPositionEmployeeID = F, returnType = F, returnTypeCode = 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("StaffPlanning", "TempPlanPositionPay", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific TempPlanPositionPay
#'
#' This function returns fields for a TempPlanPositionPay.
#'
#' @param TempPlanPositionPayID The id of the TempPlanPositionPay.\cr Run \code{\link{getAllTempPlanPositionPaies}} for a list of TempPlanPositionPaies.
#' @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 StaffPlanning
#' @return Details for the TempPlanPositionPay.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getTempPlanPositionPay <- function(TempPlanPositionPayID, EntityID = 1, returnTempPlanPositionPayID = F, returnAccountDistributionString = F, returnAssignmentPayTypeIDOriginal = F, returnAssignmentTypeCodes = F, returnAssignmentTypeDescriptions = F, returnBuildingCodes = F, returnBuildingDescriptions = F, returnCreatedTime = F, returnEmployeeFullNameLFM = F, returnEmployeeNumber = F, returnErrorCount = F, returnMatchingExpenditureEligibility = F, returnMatchingExpenditureEligibilityCode = F, returnModifiedTime = F, returnNewDisplayAccount = F, returnNewMatchingExpenditureEligibility = F, returnNewMatchingExpenditureEligibilityCode = F, returnOldDisplayAccount = F, returnPayScheduleCodeDescription = F, returnPayScheduleID = F, returnPayTypeCodeDescription = F, returnPayTypeID = F, returnPlanPositionPayID = F, returnPositionTypeCodeDescription = F, returnStipendAmount = F, returnTempPlanPositionEmployeeID = F, returnType = F, returnTypeCode = 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("StaffPlanning",  "TempPlanPositionPay", TempPlanPositionPayID, searchFields, EntityID)

	}


#' Modify a specific TempPlanPositionPay
#'
#' This function modifies fields for a TempPlanPositionPay.
#'
#' @param TempPlanPositionPayID The id of the TempPlanPositionPay to be modified.\cr Run \code{\link{getAllTempPlanPositionPaies}} for a list of TempPlanPositionPays.
#' @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 StaffPlanning
#' @return Details of the modified TempPlanPositionPay.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyTempPlanPositionPay <- function(TempPlanPositionPayID, EntityID = 1, setAccountDistributionString = NULL, setAssignmentPayTypeIDOriginal = NULL, setAssignmentTypeCodes = NULL, setAssignmentTypeDescriptions = NULL, setBuildingCodes = NULL, setBuildingDescriptions = NULL, setEmployeeFullNameLFM = NULL, setEmployeeNumber = NULL, setErrorCount = NULL, setMatchingExpenditureEligibility = NULL, setMatchingExpenditureEligibilityCode = NULL, setNewDisplayAccount = NULL, setNewMatchingExpenditureEligibility = NULL, setNewMatchingExpenditureEligibilityCode = NULL, setOldDisplayAccount = NULL, setPayScheduleCodeDescription = NULL, setPayScheduleID = NULL, setPayTypeCodeDescription = NULL, setPayTypeID = NULL, setPlanPositionPayID = NULL, setPositionTypeCodeDescription = NULL, setStipendAmount = NULL, setTempPlanPositionEmployeeID = NULL, setType = NULL, setTypeCode = 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("StaffPlanning",  "TempPlanPositionPay", TempPlanPositionPayID, names(functionParams), functionParams, EntityID)

	}


#' Create new TempPlanPositionPay.
#'
#' This function creates a new TempPlanPositionPay.
#'
#' @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 StaffPlanning
#' @return The fields used to define the newly created TempPlanPositionPay.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createTempPlanPositionPay <- function(EntityID = 1, setAccountDistributionString = NULL, setAssignmentPayTypeIDOriginal = NULL, setAssignmentTypeCodes = NULL, setAssignmentTypeDescriptions = NULL, setBuildingCodes = NULL, setBuildingDescriptions = NULL, setEmployeeFullNameLFM = NULL, setEmployeeNumber = NULL, setErrorCount = NULL, setMatchingExpenditureEligibility = NULL, setMatchingExpenditureEligibilityCode = NULL, setNewDisplayAccount = NULL, setNewMatchingExpenditureEligibility = NULL, setNewMatchingExpenditureEligibilityCode = NULL, setOldDisplayAccount = NULL, setPayScheduleCodeDescription = NULL, setPayScheduleID = NULL, setPayTypeCodeDescription = NULL, setPayTypeID = NULL, setPlanPositionPayID = NULL, setPositionTypeCodeDescription = NULL, setStipendAmount = NULL, setTempPlanPositionEmployeeID = NULL, setType = NULL, setTypeCode = 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("StaffPlanning",  "TempPlanPositionPay", names(functionParams), functionParams, EntityID)

	}


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

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("StaffPlanning",  "TempPlanPositionPay", TempPlanPositionPayID, EntityID)

	}


#' Get all TempPlanPositionPayAccountCalculations.
#'
#' This function returns a dataframe of all TempPlanPositionPayAccountCalculations 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 StaffPlanning
#' @return All TempPlanPositionPayAccountCalculations in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllTempPlanPositionPayAccountCalculations <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnTempPlanPositionPayAccountCalculationID = F, returnAnnualAmount = F, returnCreatedTime = F, returnModifiedTime = F, returnPlanPositionPayAccountDistributionID = 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("StaffPlanning", "TempPlanPositionPayAccountCalculation", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific TempPlanPositionPayAccountCalculation
#'
#' This function returns fields for a TempPlanPositionPayAccountCalculation.
#'
#' @param TempPlanPositionPayAccountCalculationID The id of the TempPlanPositionPayAccountCalculation.\cr Run \code{\link{getAllTempPlanPositionPayAccountCalculations}} for a list of TempPlanPositionPayAccountCalculations.
#' @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 StaffPlanning
#' @return Details for the TempPlanPositionPayAccountCalculation.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getTempPlanPositionPayAccountCalculation <- function(TempPlanPositionPayAccountCalculationID, EntityID = 1, returnTempPlanPositionPayAccountCalculationID = F, returnAnnualAmount = F, returnCreatedTime = F, returnModifiedTime = F, returnPlanPositionPayAccountDistributionID = 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("StaffPlanning",  "TempPlanPositionPayAccountCalculation", TempPlanPositionPayAccountCalculationID, searchFields, EntityID)

	}


#' Modify a specific TempPlanPositionPayAccountCalculation
#'
#' This function modifies fields for a TempPlanPositionPayAccountCalculation.
#'
#' @param TempPlanPositionPayAccountCalculationID The id of the TempPlanPositionPayAccountCalculation to be modified.\cr Run \code{\link{getAllTempPlanPositionPayAccountCalculations}} for a list of TempPlanPositionPayAccountCalculations.
#' @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 StaffPlanning
#' @return Details of the modified TempPlanPositionPayAccountCalculation.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyTempPlanPositionPayAccountCalculation <- function(TempPlanPositionPayAccountCalculationID, EntityID = 1, setAnnualAmount = NULL, setPlanPositionPayAccountDistributionID = 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("StaffPlanning",  "TempPlanPositionPayAccountCalculation", TempPlanPositionPayAccountCalculationID, names(functionParams), functionParams, EntityID)

	}


#' Create new TempPlanPositionPayAccountCalculation.
#'
#' This function creates a new TempPlanPositionPayAccountCalculation.
#'
#' @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 StaffPlanning
#' @return The fields used to define the newly created TempPlanPositionPayAccountCalculation.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createTempPlanPositionPayAccountCalculation <- function(EntityID = 1, setAnnualAmount = NULL, setPlanPositionPayAccountDistributionID = 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("StaffPlanning",  "TempPlanPositionPayAccountCalculation", names(functionParams), functionParams, EntityID)

	}


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

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("StaffPlanning",  "TempPlanPositionPayAccountCalculation", TempPlanPositionPayAccountCalculationID, EntityID)

	}


#' Get all TempPlanPositionPayAccountDistributions.
#'
#' This function returns a dataframe of all TempPlanPositionPayAccountDistributions 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 StaffPlanning
#' @return All TempPlanPositionPayAccountDistributions in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllTempPlanPositionPayAccountDistributions <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnTempPlanPositionPayAccountDistributionID = F, returnAccountID = F, returnCreatedTime = F, returnDisplayAccount = F, returnDistributionPercent = F, returnModifiedTime = F, returnPlanPositionPayID = F, returnStateConcordDepartmentTNID = F, returnTempPlanPositionPayID = 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("StaffPlanning", "TempPlanPositionPayAccountDistribution", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific TempPlanPositionPayAccountDistribution
#'
#' This function returns fields for a TempPlanPositionPayAccountDistribution.
#'
#' @param TempPlanPositionPayAccountDistributionID The id of the TempPlanPositionPayAccountDistribution.\cr Run \code{\link{getAllTempPlanPositionPayAccountDistributions}} for a list of TempPlanPositionPayAccountDistributions.
#' @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 StaffPlanning
#' @return Details for the TempPlanPositionPayAccountDistribution.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getTempPlanPositionPayAccountDistribution <- function(TempPlanPositionPayAccountDistributionID, EntityID = 1, returnTempPlanPositionPayAccountDistributionID = F, returnAccountID = F, returnCreatedTime = F, returnDisplayAccount = F, returnDistributionPercent = F, returnModifiedTime = F, returnPlanPositionPayID = F, returnStateConcordDepartmentTNID = F, returnTempPlanPositionPayID = 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("StaffPlanning",  "TempPlanPositionPayAccountDistribution", TempPlanPositionPayAccountDistributionID, searchFields, EntityID)

	}


#' Modify a specific TempPlanPositionPayAccountDistribution
#'
#' This function modifies fields for a TempPlanPositionPayAccountDistribution.
#'
#' @param TempPlanPositionPayAccountDistributionID The id of the TempPlanPositionPayAccountDistribution to be modified.\cr Run \code{\link{getAllTempPlanPositionPayAccountDistributions}} for a list of TempPlanPositionPayAccountDistributions.
#' @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 StaffPlanning
#' @return Details of the modified TempPlanPositionPayAccountDistribution.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyTempPlanPositionPayAccountDistribution <- function(TempPlanPositionPayAccountDistributionID, EntityID = 1, setAccountID = NULL, setDisplayAccount = NULL, setDistributionPercent = NULL, setPlanPositionPayID = NULL, setStateConcordDepartmentTNID = NULL, setTempPlanPositionPayID = 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("StaffPlanning",  "TempPlanPositionPayAccountDistribution", TempPlanPositionPayAccountDistributionID, names(functionParams), functionParams, EntityID)

	}


#' Create new TempPlanPositionPayAccountDistribution.
#'
#' This function creates a new TempPlanPositionPayAccountDistribution.
#'
#' @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 StaffPlanning
#' @return The fields used to define the newly created TempPlanPositionPayAccountDistribution.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createTempPlanPositionPayAccountDistribution <- function(EntityID = 1, setAccountID = NULL, setDisplayAccount = NULL, setDistributionPercent = NULL, setPlanPositionPayID = NULL, setStateConcordDepartmentTNID = NULL, setTempPlanPositionPayID = 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("StaffPlanning",  "TempPlanPositionPayAccountDistribution", names(functionParams), functionParams, EntityID)

	}


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

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("StaffPlanning",  "TempPlanPositionPayAccountDistribution", TempPlanPositionPayAccountDistributionID, EntityID)

	}


#' Get all TempPlanPositionPayBenefits.
#'
#' This function returns a dataframe of all TempPlanPositionPayBenefits 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 StaffPlanning
#' @return All TempPlanPositionPayBenefits in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllTempPlanPositionPayBenefits <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnTempPlanPositionPayBenefitID = F, returnBenefitCodeDescription = F, returnCreatedTime = F, returnEmployeeNumber = F, returnErrorCount = F, returnModifiedTime = F, returnPayScheduleCodeDescription = F, returnPayTypeCodeDescription = F, returnPlanPositionEmployeeName = F, returnPlanPositionPayBenefitID = F, returnPlanPositionPayID = F, returnPositionTypeDescription = F, returnTempPlanPositionBenefitID = F, returnTempPlanPositionPayID = 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("StaffPlanning", "TempPlanPositionPayBenefit", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific TempPlanPositionPayBenefit
#'
#' This function returns fields for a TempPlanPositionPayBenefit.
#'
#' @param TempPlanPositionPayBenefitID The id of the TempPlanPositionPayBenefit.\cr Run \code{\link{getAllTempPlanPositionPayBenefits}} for a list of TempPlanPositionPayBenefits.
#' @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 StaffPlanning
#' @return Details for the TempPlanPositionPayBenefit.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getTempPlanPositionPayBenefit <- function(TempPlanPositionPayBenefitID, EntityID = 1, returnTempPlanPositionPayBenefitID = F, returnBenefitCodeDescription = F, returnCreatedTime = F, returnEmployeeNumber = F, returnErrorCount = F, returnModifiedTime = F, returnPayScheduleCodeDescription = F, returnPayTypeCodeDescription = F, returnPlanPositionEmployeeName = F, returnPlanPositionPayBenefitID = F, returnPlanPositionPayID = F, returnPositionTypeDescription = F, returnTempPlanPositionBenefitID = F, returnTempPlanPositionPayID = 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("StaffPlanning",  "TempPlanPositionPayBenefit", TempPlanPositionPayBenefitID, searchFields, EntityID)

	}


#' Modify a specific TempPlanPositionPayBenefit
#'
#' This function modifies fields for a TempPlanPositionPayBenefit.
#'
#' @param TempPlanPositionPayBenefitID The id of the TempPlanPositionPayBenefit to be modified.\cr Run \code{\link{getAllTempPlanPositionPayBenefits}} for a list of TempPlanPositionPayBenefits.
#' @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 StaffPlanning
#' @return Details of the modified TempPlanPositionPayBenefit.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyTempPlanPositionPayBenefit <- function(TempPlanPositionPayBenefitID, EntityID = 1, setBenefitCodeDescription = NULL, setEmployeeNumber = NULL, setErrorCount = NULL, setPayScheduleCodeDescription = NULL, setPayTypeCodeDescription = NULL, setPlanPositionEmployeeName = NULL, setPlanPositionPayBenefitID = NULL, setPlanPositionPayID = NULL, setPositionTypeDescription = NULL, setTempPlanPositionBenefitID = NULL, setTempPlanPositionPayID = 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("StaffPlanning",  "TempPlanPositionPayBenefit", TempPlanPositionPayBenefitID, names(functionParams), functionParams, EntityID)

	}


#' Create new TempPlanPositionPayBenefit.
#'
#' This function creates a new TempPlanPositionPayBenefit.
#'
#' @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 StaffPlanning
#' @return The fields used to define the newly created TempPlanPositionPayBenefit.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createTempPlanPositionPayBenefit <- function(EntityID = 1, setBenefitCodeDescription = NULL, setEmployeeNumber = NULL, setErrorCount = NULL, setPayScheduleCodeDescription = NULL, setPayTypeCodeDescription = NULL, setPlanPositionEmployeeName = NULL, setPlanPositionPayBenefitID = NULL, setPlanPositionPayID = NULL, setPositionTypeDescription = NULL, setTempPlanPositionBenefitID = NULL, setTempPlanPositionPayID = 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("StaffPlanning",  "TempPlanPositionPayBenefit", names(functionParams), functionParams, EntityID)

	}


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

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("StaffPlanning",  "TempPlanPositionPayBenefit", TempPlanPositionPayBenefitID, EntityID)

	}


#' Get all TempPlanPositionPayBenefitAccounts.
#'
#' This function returns a dataframe of all TempPlanPositionPayBenefitAccounts 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 StaffPlanning
#' @return All TempPlanPositionPayBenefitAccounts in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllTempPlanPositionPayBenefitAccounts <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnTempPlanPositionPayBenefitAccountID = F, returnAccountID = F, returnAnnualAmount = F, returnCreatedTime = F, returnDisplayAccount = F, returnIsAccountPreviouslyCreated = F, returnModifiedTime = F, returnPlanPositionPayAccountDistributionID = F, returnPlanPositionPayBenefitID = F, returnTempPlanPositionPayBenefitID = 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("StaffPlanning", "TempPlanPositionPayBenefitAccount", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific TempPlanPositionPayBenefitAccount
#'
#' This function returns fields for a TempPlanPositionPayBenefitAccount.
#'
#' @param TempPlanPositionPayBenefitAccountID The id of the TempPlanPositionPayBenefitAccount.\cr Run \code{\link{getAllTempPlanPositionPayBenefitAccounts}} for a list of TempPlanPositionPayBenefitAccounts.
#' @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 StaffPlanning
#' @return Details for the TempPlanPositionPayBenefitAccount.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getTempPlanPositionPayBenefitAccount <- function(TempPlanPositionPayBenefitAccountID, EntityID = 1, returnTempPlanPositionPayBenefitAccountID = F, returnAccountID = F, returnAnnualAmount = F, returnCreatedTime = F, returnDisplayAccount = F, returnIsAccountPreviouslyCreated = F, returnModifiedTime = F, returnPlanPositionPayAccountDistributionID = F, returnPlanPositionPayBenefitID = F, returnTempPlanPositionPayBenefitID = 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("StaffPlanning",  "TempPlanPositionPayBenefitAccount", TempPlanPositionPayBenefitAccountID, searchFields, EntityID)

	}


#' Modify a specific TempPlanPositionPayBenefitAccount
#'
#' This function modifies fields for a TempPlanPositionPayBenefitAccount.
#'
#' @param TempPlanPositionPayBenefitAccountID The id of the TempPlanPositionPayBenefitAccount to be modified.\cr Run \code{\link{getAllTempPlanPositionPayBenefitAccounts}} for a list of TempPlanPositionPayBenefitAccounts.
#' @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 StaffPlanning
#' @return Details of the modified TempPlanPositionPayBenefitAccount.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyTempPlanPositionPayBenefitAccount <- function(TempPlanPositionPayBenefitAccountID, EntityID = 1, setAccountID = NULL, setAnnualAmount = NULL, setDisplayAccount = NULL, setIsAccountPreviouslyCreated = NULL, setPlanPositionPayAccountDistributionID = NULL, setPlanPositionPayBenefitID = NULL, setTempPlanPositionPayBenefitID = 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("StaffPlanning",  "TempPlanPositionPayBenefitAccount", TempPlanPositionPayBenefitAccountID, names(functionParams), functionParams, EntityID)

	}


#' Create new TempPlanPositionPayBenefitAccount.
#'
#' This function creates a new TempPlanPositionPayBenefitAccount.
#'
#' @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 StaffPlanning
#' @return The fields used to define the newly created TempPlanPositionPayBenefitAccount.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createTempPlanPositionPayBenefitAccount <- function(EntityID = 1, setAccountID = NULL, setAnnualAmount = NULL, setDisplayAccount = NULL, setIsAccountPreviouslyCreated = NULL, setPlanPositionPayAccountDistributionID = NULL, setPlanPositionPayBenefitID = NULL, setTempPlanPositionPayBenefitID = 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("StaffPlanning",  "TempPlanPositionPayBenefitAccount", names(functionParams), functionParams, EntityID)

	}


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

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("StaffPlanning",  "TempPlanPositionPayBenefitAccount", TempPlanPositionPayBenefitAccountID, EntityID)

	}


#' Get all TempPlanPositionSupplements.
#'
#' This function returns a dataframe of all TempPlanPositionSupplements 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 StaffPlanning
#' @return All TempPlanPositionSupplements in the database.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getAllTempPlanPositionSupplements <- function(EntityID = 1, searchConditionsList = NULL, searchConditionsGroupType = "And", searchSortFieldNamesList = NULL, searchSortFieldNamesDescendingList = rep(F, length(searchSortFieldNamesList)), page = 1, pageSize = "100000", returnTempPlanPositionSupplementID = F, returnAnnualPay = F, returnCreatedTime = F, returnErrorCount = F, returnModifiedTime = F, returnOldAnnualPay = F, returnOldRate = F, returnOldSupplementTypeAmountType = F, returnOldSupplementTypeCodeDescription = F, returnPlanPositionDistributionsAssignmentTypeCodes = F, returnPlanPositionDistributionsBuildingCodes = F, returnPlanPositionEmployeeName = F, returnPlanPositionEmployeeNumber = F, returnPlanPositionID = F, returnPlanPositionNewAnnualPay = F, returnPlanPositionOldAnnualPay = F, returnPlanPositionPositionTypeCodeDescription = F, returnPlanPositionSupplementID = F, returnRate = F, returnSupplementTypeAmountType = F, returnSupplementTypeCodeDescription = F, returnSupplementTypeID = F, returnTempPlanPositionEmployeeID = 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("StaffPlanning", "TempPlanPositionSupplement", searchFields, EntityID, searchConditionsList, searchConditionsGroupType, searchSortFieldNamesList, searchSortFieldNamesDescendingList, page, pageSize)

	}


#' Get a specific TempPlanPositionSupplement
#'
#' This function returns fields for a TempPlanPositionSupplement.
#'
#' @param TempPlanPositionSupplementID The id of the TempPlanPositionSupplement.\cr Run \code{\link{getAllTempPlanPositionSupplements}} for a list of TempPlanPositionSupplements.
#' @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 StaffPlanning
#' @return Details for the TempPlanPositionSupplement.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	getTempPlanPositionSupplement <- function(TempPlanPositionSupplementID, EntityID = 1, returnTempPlanPositionSupplementID = F, returnAnnualPay = F, returnCreatedTime = F, returnErrorCount = F, returnModifiedTime = F, returnOldAnnualPay = F, returnOldRate = F, returnOldSupplementTypeAmountType = F, returnOldSupplementTypeCodeDescription = F, returnPlanPositionDistributionsAssignmentTypeCodes = F, returnPlanPositionDistributionsBuildingCodes = F, returnPlanPositionEmployeeName = F, returnPlanPositionEmployeeNumber = F, returnPlanPositionID = F, returnPlanPositionNewAnnualPay = F, returnPlanPositionOldAnnualPay = F, returnPlanPositionPositionTypeCodeDescription = F, returnPlanPositionSupplementID = F, returnRate = F, returnSupplementTypeAmountType = F, returnSupplementTypeCodeDescription = F, returnSupplementTypeID = F, returnTempPlanPositionEmployeeID = 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("StaffPlanning",  "TempPlanPositionSupplement", TempPlanPositionSupplementID, searchFields, EntityID)

	}


#' Modify a specific TempPlanPositionSupplement
#'
#' This function modifies fields for a TempPlanPositionSupplement.
#'
#' @param TempPlanPositionSupplementID The id of the TempPlanPositionSupplement to be modified.\cr Run \code{\link{getAllTempPlanPositionSupplements}} for a list of TempPlanPositionSupplements.
#' @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 StaffPlanning
#' @return Details of the modified TempPlanPositionSupplement.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	modifyTempPlanPositionSupplement <- function(TempPlanPositionSupplementID, EntityID = 1, setAnnualPay = NULL, setErrorCount = NULL, setOldAnnualPay = NULL, setOldRate = NULL, setOldSupplementTypeAmountType = NULL, setOldSupplementTypeCodeDescription = NULL, setPlanPositionDistributionsAssignmentTypeCodes = NULL, setPlanPositionDistributionsBuildingCodes = NULL, setPlanPositionEmployeeName = NULL, setPlanPositionEmployeeNumber = NULL, setPlanPositionID = NULL, setPlanPositionNewAnnualPay = NULL, setPlanPositionOldAnnualPay = NULL, setPlanPositionPositionTypeCodeDescription = NULL, setPlanPositionSupplementID = NULL, setRate = NULL, setSupplementTypeAmountType = NULL, setSupplementTypeCodeDescription = NULL, setSupplementTypeID = NULL, setTempPlanPositionEmployeeID = 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("StaffPlanning",  "TempPlanPositionSupplement", TempPlanPositionSupplementID, names(functionParams), functionParams, EntityID)

	}


#' Create new TempPlanPositionSupplement.
#'
#' This function creates a new TempPlanPositionSupplement.
#'
#' @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 StaffPlanning
#' @return The fields used to define the newly created TempPlanPositionSupplement.
#' @section References:
#' \{yourApiUrl\}/swagger\cr\cr
#' \href{https://help.skyward.com/}{Skyward's Knowledge Hub}
#' @export
	createTempPlanPositionSupplement <- function(EntityID = 1, setAnnualPay = NULL, setErrorCount = NULL, setOldAnnualPay = NULL, setOldRate = NULL, setOldSupplementTypeAmountType = NULL, setOldSupplementTypeCodeDescription = NULL, setPlanPositionDistributionsAssignmentTypeCodes = NULL, setPlanPositionDistributionsBuildingCodes = NULL, setPlanPositionEmployeeName = NULL, setPlanPositionEmployeeNumber = NULL, setPlanPositionID = NULL, setPlanPositionNewAnnualPay = NULL, setPlanPositionOldAnnualPay = NULL, setPlanPositionPositionTypeCodeDescription = NULL, setPlanPositionSupplementID = NULL, setRate = NULL, setSupplementTypeAmountType = NULL, setSupplementTypeCodeDescription = NULL, setSupplementTypeID = NULL, setTempPlanPositionEmployeeID = 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("StaffPlanning",  "TempPlanPositionSupplement", names(functionParams), functionParams, EntityID)

	}


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

		suppressMessages(suppressWarnings(require(dplyr)))

		deleteDataObject("StaffPlanning",  "TempPlanPositionSupplement", TempPlanPositionSupplementID, EntityID)

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