HR-Expert system parameters and client settings

This page describes all settings that control the behavior of HR-Expert: the system parameters of the bean HrOptions (module hr) and the client settings on the "Human resources" tab of the "Client" action (German: "Mandant", tab "Personalwesen"). Many settings exist on both levels: the system parameter is then only the system-wide default, and a value set on the client takes precedence. The page is intended for administrators and consultants. System parameters take effect system-wide and should only be changed if the impact is fully understood (see System parameters Portal & Organization for the general procedure). For setting up the roles that grant access to HR-Expert, see also Administrator.

Overview of the groups

  • Where settings are maintained and which value applies: system parameters, client settings, precedence rule, overview by level
  • Organization structure and position plan: usePositionPlan, useOfLocationsMandatory, useOfCostCentersMandatory, useOfJobLevelsMandatory, allowLockingOfPositionHours, showJobsAndPositions, multipleJobsAssignedToPosition, activeReasonCodesToDisplayInPositionPlan, positionShortNameGeneratorBeanName, jobShortNameGeneratorBeanName
  • Terminated and future employees: terminatedOrgUnitShortName, terminatedPositionShortName, terminatedCostCenterShortName, terminatedLocationShortName, hiringEmployeesOrgUnitShortName
  • Roles and permissions: userRoles, userRolesReadOnly, hideDashboardAndReportsAndSystemMaintenanceForNonClientWideHRXUsers
  • User interface and person editor: personHeaderVelocityScript, reEntryActionVisible, immediateResignationActionVisible, socialSecurityRegistrationActionVisible, acknowledgeableMessagesSupportEnabled, hideHrxPersonCreationWizard
  • Checks and messages: ignoreHistoricInfoMessages, ignoreHistoricWarnings, ignoreHistoricExceptions, automaticEntryDateCorrection
  • Person chooser (queries): hrPersonCustomQuery, hrPersonCustomSelectClause, hrPersonAdditionalSelectClause
  • Time & Attendance: enableTaIntegration
  • Documents and signing: maximumUploadSizeInMB, documentSigningSupported, documentSigningProcessDefinitionName
  • Tasks and time shares: tasksSharedAcrossJobs, shouldCorrectPersonTaskTimeShares, shouldStartTimeDistributionProcess
  • Miscellaneous: allowRelativeSelectionFromAllClients, defaultSalaryCode, phoneNumberExtensionDynamicFieldName, ignorePayGradeChangesForSalaryReportDateCalculation
  • Maternity protection and parental leave: pointer to HrMaternityRestrictionOptions and the client settings of the same name
  • Outdated names: properties that no longer exist under the old name

Where settings are maintained and which value applies

System parameters (bean HrOptions)

The system parameters are edited in the "System parameters" mask under module hr in the bean HrOptions. The values are defined in the Spring configuration of the module (hr.applicationContext.xml); the defaults named on this page are the values delivered there. The bean HrOptions also contains properties that exist on the system level only.

Client settings ("Human resources" tab)

The client settings are maintained in the "Client" action (po_editClient) on the "Human resources" tab (German "Personalwesen"; tab label key hr_editClientHrData_tabLabel; the field captions come from the i18n keys with the prefix hr_editClientHrData_). They are stored per client in the table HrClientData. The mask automatically shows every field of HrClientData. Yes/No fields offer the choices "empty", "No" and "Yes"; "empty" means: the system parameter applies. Texts, numbers and lists are entered as text (several values separated by commas); an empty field also means that the system parameter applies. The field for the Velocity script of the person header is a multi-line editor with the button "Add default script into editor".

Precedence rule

For settings that exist on both levels, the following applies (HrOptionsService):

  • If a value is set on the client, it applies. For text values, an empty text counts as "not set".
  • If the value on the client is empty, if there is no HrClientData record for the client, or if the setting is evaluated without a client (for example in a menu without client context), the system parameter from HrOptions applies.
  • For lists (activeReasonCodesToDisplayInPositionPlan), the client's list applies if it is not empty, otherwise the list of the system parameter.
  • A client without a value follows the system parameter even if the system parameter is changed later.

Overview by level

Level

Settings

System and client (client takes precedence)

usePositionPlan, useOfLocationsMandatory, useOfCostCentersMandatory, useOfJobLevelsMandatory, terminatedOrgUnitShortName, terminatedPositionShortName, terminatedCostCenterShortName, terminatedLocationShortName, allowLockingOfPositionHours, ignoreHistoricInfoMessages, ignoreHistoricWarnings, ignoreHistoricExceptions, showJobsAndPositions, acknowledgeableMessagesSupportEnabled, maximumUploadSizeInMB, personHeaderVelocityScript, activeReasonCodesToDisplayInPositionPlan, reEntryActionVisible, immediateResignationActionVisible, socialSecurityRegistrationActionVisible, allowRelativeSelectionFromAllClients, automaticEntryDateCorrection, defaultSalaryCode, hrPersonCustomQuery, hrPersonCustomSelectClause, hrPersonAdditionalSelectClause, enableTaIntegration, documentSigningSupported, documentSigningProcessDefinitionName, hiringEmployeesOrgUnitShortName, and the properties for maternity protection and parental leave

System only (HrOptions)

userRoles, userRolesReadOnly, positionShortNameGeneratorBeanName, jobShortNameGeneratorBeanName, tasksSharedAcrossJobs, multipleJobsAssignedToPosition, phoneNumberExtensionDynamicFieldName, shouldCorrectPersonTaskTimeShares, shouldStartTimeDistributionProcess, hideHrxPersonCreationWizard

Client only (HrClientData)

hideDashboardAndReportsAndSystemMaintenanceForNonClientWideHRXUsers, ignorePayGradeChangesForSalaryReportDateCalculation

Warning: According to the code, the switches usePositionPlan, useOfLocationsMandatory, useOfCostCentersMandatory and useOfJobLevelsMandatory are installation switches and are not meant to be changed on a running system. When switching them on, existing persons and positions are checked against the new rule on save and may have to be adjusted first.

Organization structure and position plan

These settings define how persons, positions, locations, cost centers and career levels must be connected and which job and position functions are visible in HR-Expert. All values in the table, except the last four rows, exist on the system and the client level.

Property

Description

Possible value(s)

usePositionPlan

Client field: "Primary position assignment is mandatory". false: a person can be connected to 0 to 1 primary position at any point in time. true: in the past 0 to 1 primary position; in the present and future every person must be connected to exactly 1 primary position. This is an installation switch, not meant for a running system: a change only affects newly created timelines, existing ones remain unchanged. If true, the job assignment of the person (field personJobs) cannot be edited in the person editor.

true/false (default: false)

useOfLocationsMandatory

Client field: "Location assignment is mandatory". false: positions and persons can be connected to 0 to 1 location at any point in time. true: in the present and future every position and every person must be connected to exactly 1 location. When switching on, existing positions and persons without a location must first be assigned a location for their entire validity when they are saved.

true/false (default: false)

useOfCostCentersMandatory

Client field: "Cost center assignment is mandatory". false: a position can be connected to any number of cost centers covering up to 100 percent of the costs; a person to 0 to 1 cost center. true: in the present and future every position must be connected to at least 1 cost center and the cost centers must cover the costs by exactly 100 percent; every person must be connected to exactly 1 cost center. When switching on, existing positions and persons without or with non-covering cost center assignments must first be fully assigned when they are saved.

true/false (default: false)

useOfJobLevelsMandatory

Client field: "Career level assignment is mandatory". If true, every position must be linked to a career level (HrJobLevel).

true/false (default: false)

allowLockingOfPositionHours

Client field: "Allow locking of position hours". If true, a value 0 < lockedHoursPerWeek < hoursPerWeek can be defined for the labor classifications of a position (HrPositionLaborClassification). Only hoursPerWeek minus lockedHoursPerWeek can be assigned to persons; overbooking (the hours per week assigned concurrently to all persons exceed hoursPerWeek minus lockedHoursPerWeek) is not allowed and raises an error. If false, the fields lockedHoursPerWeek and lockingComment of the labor classification are hidden. When switching on, existing positions and persons may have to be adjusted.

true/false (default: false)

showJobsAndPositions

Client field: "Show UIs related to jobs and positions". If false, the menu entries for jobs and positions (actions jobchooser, job, positionchooser, position, positionplan, jobfamilychooser, joblevelchooser, and the position plan report) and the position assignment in the person mask are hidden. Without a client context (for example a view across all clients) the menu entries remain visible.

true/false (default: false)

activeReasonCodesToDisplayInPositionPlan

Client field: "Reason codes of active employment state to be shown in position plan, separated with comma." Comma-separated names of employment reasons (reasonCode, untranslated) of "actively" employed persons for which the position plan also shows start day, end day and employment reason. On the client the list is entered as text with comma-separated values; if it is empty, the system parameter applies.

List or comma-separated text (default: empty)

multipleJobsAssignedToPosition

System only. If true, a position may refer to several jobs at a certain time (the position - job relation becomes m:n); if false, to only one.

true/false (default: false)

positionShortNameGeneratorBeanName

System only. Name of a bean that automatically generates the short name of new positions. If the value is empty or no bean of this name exists, no short name is suggested. The bean HrPositionShortNameGenerator is delivered; it assigns consecutive 7-digit numbers starting at 1000000 (next number after the highest existing short name).

Bean name, e.g. HrPositionShortNameGenerator (default: empty)

jobShortNameGeneratorBeanName

System only. Like positionShortNameGeneratorBeanName, but for the short name of new jobs. The bean HrJobShortNameGenerator is delivered (consecutive 4-digit numbers starting at 2000).

Bean name, e.g. HrJobShortNameGenerator (default: empty)

Terminated and future employees

Terminated persons are assigned to a defined organization unit, position, cost center and location. Persons in the hiring process (employment state "hiring") can be assigned to a separate organization unit. All properties of this group exist on the system and the client level; a non-empty client value takes precedence.

Property

Description

Possible value(s)

terminatedOrgUnitShortName

Client field: "Short name of organisation unit for persons with terminated employment". The short name of the organization unit to which every terminated person is assigned. It must always be specified. If the client has short names of groups for terminated employees in its master data (terminatedEmploymentGroupsShortNames) and this field is empty on the client, the first of these short names is taken over on save.

Short name (default: empty)

terminatedPositionShortName

Client field: "Short name of position for persons with terminated employment". The short name of the position to which every terminated person is assigned (with 0 hours). It must be specified if usePositionPlan is true, otherwise it is ignored.

Short name (default: empty)

terminatedCostCenterShortName

Client field: "Short name of cost center for persons with terminated employment". The short name of the cost center to which every terminated person is assigned. It must be specified if useOfCostCentersMandatory is true, otherwise it is ignored.

Short name (default: empty)

terminatedLocationShortName

Client field: "Short name of location for persons with terminated employment". The short name of the location to which every terminated person is assigned. It must be specified if useOfLocationsMandatory is true, otherwise it is ignored.

Short name (default: empty)

hiringEmployeesOrgUnitShortName

Client field: "Orgunit shortname for group with currently hiring employees". Short name of the organization unit to which persons are assigned for the duration of the employment state "hiring" (persons in the hiring process, not yet employed). If the value is empty or no organization unit with this short name exists, no assignment is made.

Short name (default: empty)

Roles and permissions

Access to HR-Expert is controlled by Webdesk roles. The role names are defined exclusively as system parameters. The competence of the role assignment (clients, groups, persons) determines which data the user sees. The system administrator always has access.

Property

Description

Possible value(s)

userRoles

System only. List of the names of the roles with read and write access to HR-Expert. The names must match roles that actually exist in Webdesk (including the leading $ of the role name).

List of role names (default: $HRX_User)

userRolesReadOnly

System only. List of the names of the roles with read-only access to HR-Expert. A user is treated as "read only" if he has one of these roles and no role from userRoles.

List of role names (default: $HRX_User_ReadOnly)

hideDashboardAndReportsAndSystemMaintenanceForNonClientWideHRXUsers

Client only. Client field: "Show Dashboard, reports, and system maintenance". Despite the property name, true means "show": if true or empty, dashboard, reports and system maintenance are shown in the HR-Expert menu (provided the user is responsible for at least one client); if false, they are hidden for persons of this client. There is no system parameter; without a value "show" applies.

true/false or empty (default: empty, acts like true)

A client counts as an HR client in the sense of HR-Expert (isClientUsingHr) if a role from userRoles or userRolesReadOnly is assigned for the client, for its groups or for its persons; if no roles are configured, no client counts as an HR client.

User interface and person editor

Property

Description

Possible value(s)

personHeaderVelocityScript

System and client. Client field: "Velocity script for header in person editor". Velocity script for the header part of the person editor. Possible variables: properties of $primaryPosition (HrPosition), $hierarchicalGroup (PoGroup) and $employmentState (HrPersonEmploymentState); the translated/converted person values $birthday and $gender; every property of HrPerson and its related objects, such as $person.lastName. If neither the client nor the system parameter contains a text, the delivered default script (file HrOptions.personHeaderVelocityScript.vm) is used. The button "Add default script into editor" appends the default script after the existing content; the original content is retained, and nothing happens if the default script was already added and not changed.

Velocity text (default: empty, the default script applies)

reEntryActionVisible

System and client. Client field: "Person re-entry action visible". If true, the action "Re-Entry" is visible in the person editor.

true/false (default: true)

immediateResignationActionVisible

System and client. Client field: "Person immediate resignation action visible". If true, the action for immediate resignation ("Resignation") is visible in the person editor.

true/false (default: true)

socialSecurityRegistrationActionVisible

System and client. Client field: "Person social security registration action visible". Defines whether the social security registration actions are visible for persons in HR-Expert.

true/false (default: true)

acknowledgeableMessagesSupportEnabled

System and client. Client field: "Allow using acknowledgeable messages". Defines whether acknowledgeable messages are accessible through the HR-Expert menu or directly through the URL. If false, the menu entry is hidden.

true/false (default: false)

hideHrxPersonCreationWizard

System only. If true, the wizard for creating persons is hidden; "New" in the person chooser then opens the full person editor directly. Intended for special cases in which the wizard cannot be used because of customized masks.

true/false (default: false)

Checks and messages

Property

Description

Possible value(s)

ignoreHistoricInfoMessages

System and client. Client field: "Ignore historic info messages". If true, info messages generated by the business logic audits (BusinessLogicAudits) are suppressed for states that ended in the past.

true/false (default: true)

ignoreHistoricWarnings

System and client. Client field: "Ignore historic warnings". Like ignoreHistoricInfoMessages, but for warnings.

true/false (default: true)

ignoreHistoricExceptions

System and client. Client field: "Ignore historic exceptions". If true, errors (BusinessLogicExceptions) raised by the business logic audits are suppressed for states that ended in the past.

true/false (default: false)

automaticEntryDateCorrection

System and client. Client field: "Entry date for every employment state will be automatically corrected." If enabled, the entry date of every employment state is corrected automatically when a person is saved in HR-Expert.

true/false (default: true)

Person chooser (queries)

These three settings allow the query of the person chooser (HrPersonReader) to be customized. They exist on the system and the client level; if nothing is set on the client, the system parameter applies. Custom queries must use the aliases of the default query: PoPerson = p, HrPerson = hrp, HrPersonEmployment = emp, HrPersonEmploymentState = st, PoGroup = g, PoPersonGroup = pg, PoClient = c.

Property

Description

Possible value(s)

hrPersonCustomQuery

Client field: "Custom query for person chooser". The complete (HQL) query of the person chooser. It overrides any query coming from the system; if it is set, hrPersonCustomSelectClause and hrPersonAdditionalSelectClause are ignored.

HQL query (default: empty)

hrPersonCustomSelectClause

Client field: "Custom select for person chooser query". A custom "select" clause (comma-separated properties) that replaces the clause of the default query. It determines the columns shown in the person chooser. It is ignored if hrPersonCustomQuery is set, and it overrides hrPersonAdditionalSelectClause.

List of properties (default: empty)

hrPersonAdditionalSelectClause

Client field: "Additional "select" for person chooser query". Additional properties that are appended to the "select" clause of the default query and appear as additional columns in the person chooser. It is ignored if hrPersonCustomQuery or hrPersonCustomSelectClause is set.

List of properties (default: empty)

Time & Attendance

Property

Description

Possible value(s)

enableTaIntegration

System and client. Client field: "Enable synchronisation with Time&Attendance". Switches on the synchronization between HR and Time & Attendance: the Time & Attendance configuration of persons and the automatic creation of absence entries based on the employment states in HR-Expert. If the system parameter is false (default), the synchronization is performed only for clients where true is set. If the system parameter is true, it is performed for all clients where the value is empty or true (a client with false is excluded).

true/false (default: false)

Documents and signing

Property

Description

Possible value(s)

maximumUploadSizeInMB

System and client. Maximum size of uploaded files within HR-Expert in MB (person documents). The client of the logged-in user is decisive. The "Human resources" tab has a field of the same name.

Number in MB (default: 5)

documentSigningSupported

System and client. Client field: "Support document sigining process" (spelling as in the mask). Defines whether signing of person documents is supported. A workflow process is started (see documentSigningProcessDefinitionName) to which the document is attached as a PDF. Documents must be in Docx or PDF format; Docx is converted to PDF, other formats lead to an error.

true/false (default: false)

documentSigningProcessDefinitionName

System and client. Client field: "Processdefinition for digital signatures". Name of the process definition that is started for the signing process. If neither the client nor the system parameter contains a name when the signing process is started, the start is aborted with an error message.

Process definition name (default: empty)

Tasks and time shares

These settings concern the assignment of tasks (HrTask) to jobs (HrJob) and persons. They apply system-wide only, not per client.

Property

Description

Possible value(s)

tasksSharedAcrossJobs

System only; according to the code explicitly not client-specific. If false, the m:n relation between task and job becomes a 1:n relation: a task can then be part of at most one job.

true/false (default: true)

shouldCorrectPersonTaskTimeShares

System only. When a job or a task is deleted, or a task is removed from a job, the assignments of persons to the affected tasks (HrPersonTask) are historized. If true, the task assignments of the affected persons are then corrected so that the sum of the time shares in every interval is 100 %.

true/false (default: false)

shouldStartTimeDistributionProcess

System only. If true, after person-task assignments have been historized, a notification process pointing to the action hr_editJobLevelTaskAssignments is started for each affected person. This requires the workflow module (notification service) to be present.

true/false (default: false)

Miscellaneous

Property

Description

Possible value(s)

allowRelativeSelectionFromAllClients

System and client. Client field: "Allow all clients on internal relatives assignment". If true, relatives of a person can be selected from the persons of all clients, not only from the person's own client (person mask, tab "Familie" (family), sub-tab "Angehörige im Unternehmen" (relatives in the company)).

true/false (default: false)

defaultSalaryCode

System and client. Client field: "Default salary code for new salaries". The salary code that is pre-filled when a new salary is created for a person. In the client field the code is selected from a selection list.

Salary code (default: BASE)

phoneNumberExtensionDynamicFieldName

System only. Name of a dynamic field that stores the extension of a person's office phone number. If a name is entered, the value of this field overrides the extension from the person data (PoPerson.officePhoneNumberExtension) when the office phone number is output in the person list reports.

Field name (default: empty)

ignorePayGradeChangesForSalaryReportDateCalculation

Client only. Client field: "Ignore pay grade changes for salary report date calculation". Special case for customers who grant raises as pay grade increases but do not want this to shift the date of the next regular step: if true, the date calculation in the salary report compares only the labor contract and the pay group, a changed pay grade does not count as a change. Without a value, false applies.

true/false (default: empty, acts like false)

Maternity protection and parental leave

The rules for maternity protection and parental leave come from the bean HrMaternityRestrictionOptions (system parameter, module hr) and can be overridden on the client on the "Human resources" tab with the same property names; here, too, an empty client value means the system parameter applies. The following table is only an overview of the names; the meaning follows from the captions.

Property

Description

Possible value(s)

protectionFromDayBeforeExpectedBirthDayWeeks

Number of weeks before the expected birth date at which the maternity protection starts.

Number (default: 8)

expectedProtectionToDayAfterExpectedBirthDayWeeks

Number of weeks after the expected birth date after which the maternity protection ends.

Number (default: 8)

protectionToDayAfterActualPrematureBirthDayWeeks

Number of weeks after a premature birth after which the maternity protection ends.

Number (default: 12)

protectionToDayAfterActualMultiplesBirthDayWeeks

Number of weeks after a multiple birth after which the maternity protection ends.

Number (default: 12)

protectionToDayAfterActualCesareanBirthDayWeeks

Number of weeks after a cesarean birth after which the maternity protection ends.

Number (default: 12)

maximumPeriodOfMaternityProtectionAfterBirthInWeeks

Duration of maternity protection after birth in weeks (relevant if the birth happens before the expected date).

Number (default: 16)

parentalLeaveMaximumEndDayAfterActualBirthDayMonths

Number of months after the birth after which the parental leave ends at the latest.

Number (default: 24)

employmentStateToBeSetForProtection

Employment state during maternity protection (ACTIVE, INACTIVE or TERMINATED).

State (default: INACTIVE)

reasonCodeToBeSetForProtection

Reason (key-value type HrEmploymentStateReasonCode) during maternity protection.

Key (default: MATERNITYPROTECTION)

reasonCodeToBeSetAfterProtection

Reason for the return after maternity protection has ended.

Key (default: MATERNITYPROTECTION_END)

zeroHoursPerWeekDuringProtection

Whether the hours per week in the employment state and in the position assignments are set to 0 during maternity protection.

true/false (default: false)

employmentStateToBeSetForParentalLeave

Employment state during parental leave (ACTIVE, INACTIVE or TERMINATED).

State (default: INACTIVE)

reasonCodeToBeSetForParentalLeave

Reason during parental leave.

Key (default: PATERNALLEAVE)

reasonCodeToBeSetAfterParentalLeave

Reason for the return after parental leave.

Key (default: PATERNALLEAVE_END)

zeroHoursPerWeekDuringParentalLeave

Whether the hours per week in the employment state and in the position assignments are set to 0 during parental leave.

true/false (default: false)

Outdated names and removed settings

  • The roles for HR-Expert are called userRoles and userRolesReadOnly (lists). The previously mentioned properties userRole and userRoleReadOnly no longer exist in the bean HrOptions.
  • The settings shouldCorrectPersonTaskTimeShares and shouldStartTimeDistributionProcess used to be configurable per client as well. The client-related columns were removed in an update; only the system parameters remain.
  • The bean HrPersonDomainObjectReaderOptions no longer exists; its settings were moved to HrOptions and to the client settings as hrPersonCustomQuery, hrPersonCustomSelectClause and hrPersonAdditionalSelectClause.

Checks after a change

  1. Decide whether the setting should be changed on the system or the client level (see overview by level); a client value that is set hides the system parameter.
  2. Before changing the mandatory switches (usePositionPlan, useOfLocationsMandatory, useOfCostCentersMandatory, useOfJobLevelsMandatory), check existing persons and positions that do not meet the new rule.
  3. After changing roles (userRoles, userRolesReadOnly), log in with a user with a write role and a user with a read-only role and check that the menus appear as expected.
  4. After changing the person chooser (hrPerson...), open the person chooser in the person editor and check that the query runs without errors and the columns are correct.
Kommentare (0)