One moment please...
 
Exact Synergy Enterprise   
 

Exact.Jobs.SysMaint.dll

Introduction 

In Exact Synergy Enterprise, there are a number of HRM processes which can be automated using a background job. This background job performs the following functions:

  1. Edits details of people, financial components and item details based on the start date and end date of employment:
    • Sets all statuses for people from Hired to Active on the day they begin working.
    • Sets all statuses for people from Active to Exit on the day they stop working.
    • Sets the end date of financial components for people leaving the company. If the end date of the employment contract is defined, the end date of the financial component will be the end date of the contract. Otherwise, it will be the end date of the employment.
    • Reassigns the subordinates of people leaving the company to his or her manager. A task will be created for the manager informing him or her of the transfer of subordinates.
    • Reassigns the accounts, projects and items of people leaving the company to his or her manager. A task will be created for the manager informing him or her of the transfer of responsibilities.
    • Removes all people leaving the company from projects in the Active or Proposed status, in which they are involved in.
    • Removes all people leaving the company as assistants to other people with the Active status.
    • Sets the status for people leaving the company to Blocked, denying him or her access to Exact Synergy Enterprise.
    • Removes all roles for people leaving the company.
  2. Creates or deletes Windows user accounts:
    • Creates Windows domain user accounts for people with the Active status of types Employee, Contractor, Student and Temporary who do not have a Windows domain user account.
    • For new users, this background job fills in the Windows user profile with user details defined in Exact Synergy Enterprise. For existing users, this background job updates the Windows user profile with any updated information. Two important points must be taken into account concerning this functionality:
      • Windows user profiles are only available for environments using Active Directory Services and when the create Exchange Mailbox check box is selected (Modules ? HRM ? Setup ? General ? Settings).
      • The user profiles are only defined for people, not for the resellers.
    • Deletes Windows domain user accounts for all people leaving the company. Sets Microsoft Exchange mailboxes to inactive if it is set up to do so.
    • Creates Windows domain user accounts for reseller contacts without a Windows domain account.
    • Deletes Windows domain user accounts for all discontinued reseller contacts.
    • Creates Windows domain user accounts for customers that have been granted access to the customer portal.
    • Regenerates passwords for customers, in situations where they have forgotten the original password.
    • Deletes Windows domain user accounts for customers that have had their access to the customer portal revoked.
    • Creates a task informing the appropriate person of new and deleted accounts. For people, this person is the manager of the new person or the person leaving the company. For resellers, the person informed is the account manager if the new user is the main contact of the reseller. If the new user is not the main contact of the reseller, then the task is created for the main contact of the reseller.
  3. Creates vacancies:
    • Creates a vacancy request automatically when a vacancy is created.
    • Vacancy request is approved.
    • The  Exact.Jobs.SysMaint.dll background job takes place and the vacancy status is set to Approved.
  4. Allows new users remote access via VPN (Virtual private network), if the option is enabled in the HRM settings.
  5. Updates the absent flag in the humres table. This status indicates whether the user is out of office.
  6. Closes the HR periods and generates entitlements when this function is set in Exact Synergy Enterprise.
  7. Generates performance review requests when this function is defined under the Performance review section in the HRM settings.
  8. Creates FTP directories for customers and resellers, if the use Active Directory check box is selected at Domain: New – Customer (Pre-Win2000) and Domain: New – Partner (Pre-Win2000) under the Server section on the HRM: Settings page.
  9. Adds or removes the members of a certain Exact Synergy Enterprise role to or from a certain Windows domain group. This option is applicable only where a group is assigned with any Exact Synergy Enterprise access role.
    There are three main tasks that are executed by Exact.Jobs.SysMaint based on the following sequence:
    • /FTP – This command is used to create the FTP folder.
    • /GMForest - This command is used to identify the Exact Synergy Enterprise domain group forest.
    • /GMDomain - This command is used to identify the Exact Synergy Enterprise domain group.
    • /NT – This command is used to create a normal task.
    • Note: Each of the main tasks must be scheduled separately.

  10. The Exact.Jobs.SysMaint background job will not create a mailbox for the people if you have selected the Exchange server 2007 option at Exchange server version on the HRM: Settings page (Modules ? HRM ? Setup ? General ? Settings). When you run Exact.Jobs.SysMaint, the system will create a NT user account for the people. The user account properties will not have the Email Addresses, Exchange General, Exchange Features, and Exchange Advanced tabs.
  11. The following properties will be created for resellers or customers with NT accounts:
    • SetUserPassword – This property is used to generate a new password.
    • NewUserDE.Properties("displayName").Value = sAccountName - This property refers to the display name.
    • NewUserDE.Properties("sAMAccountName").Value = sLoginName - This property refers to the user login name.
    • NewUserDE.Properties("userPrincipalName").Value = FullLogonName(oNewUserDE.Path, sLoginName) - This property refers to the principal name of the user (an alternative name for the user to log in).
    • Note: The NT account creation is only applicable for first time creation. Subsequently, there will not be any updates to the fields (no synchronization). 

  12. Email addresses are assigned if create Exchange Mailbox is enabled. For product updates 254 and below, the email address will be generated based on the username (usr_id) in the personal card (for example, “username@domain.com”). For product updates 255 and above, the email address will be generated based on the following:
    • If the email address is provided, the mailbox will be generated based on the email address provided. For example, the person’s first name, middle name, and last name are provided, and the email address is customaddress@domain.com. The result will be “customaddress@domain.com”.
    • If the email address is not provided, the mailbox will be generated based on the user’s first name, middle name, and last name. For example, the person’s first name, middle name, and last name are provided but the email address is not provided. The result will be “firstname.middlename.lastname@domain.com”.
    • If the name contains spaces (for example, “van der”), “.” will replace the space. For example, the person’s first name, middle name, and last name are provided but the email address is not provided. The result will be “first.name.middle.name.last.name@domain.com”.
    • Special characters (for example, “áéèëLnóÖsšüÜ”) will be converted into standard characters (for example, “aeeelnoossuu”).
    • If a duplicate email address is provided, “username@domain.com” will be used.

Technical information

The following tables are involved when running Exact.Jobs.SysMaint:

  • humres
  • Absences
  • RequestTasks
  • AbsenceTypes
  • BacoProcessLog
  • cicmpy
  • cicntp

When running Exact.Jobs.SysMaint, the background job will first check the statuses, start dates, contract end dates and inactive dates of all employees. When values are defined in these fields, appropriate actions will be taken. For example, when an employee starts working today, the job will change the status of the employee from Hired to Active. A Windows account will also be created for this employee. Where this account is created depends on the settings which can be set up via Modules ? HRM ? Setup ? General ? Settings. The password will be generated in a task for the manager of the employee.

After checking the details of the employees, the background job will then check whether there are accounts that have been granted portal access and whether there are contact persons of resellers that have been granted portal access. If there are such accounts, the background job will generate a username and a password for these new accounts. The Windows accounts will also be created in the domain specified via Modules ? HRM ? Setup ? General ? Settings.

In the case of giving portal access for customers, a task is created for the account manager with login details. An e-mail will be sent to the e-mail address of that account containing the login details. For resellers, the same applies but the first portal access is given to the main contact person. In the initial stage, a task is created for the account manager and an e-mail is sent to the main contact. After this, the main contact person is responsible for giving portal access to his colleagues.

After giving portal access to the accounts, the background job checks whether there are employees absent. This is done based on the Out of office setting in the request definition. Based on this, the background job searches for employees who are absent with this setting turned on. Then it checks the date in the requests and compares them with the current date. When these two dates match, the status for the employees is set to Out of office.

The syntax is as follows:

Exact.Process.exe /DBCONFIG:<virtualdirectory> /ASSEMBLY:<bgJob Assembly> /CLASS:<bgJob Class>

This results in:

E:\Program Files\Exact Software\Exact e-Synergy\bin\Exact.Process.exe /DBCONFIG:SynergyNET /ASSEMBLY:Exact.Jobs.SysMaint /CLASS:SysMaint

Exact.Jobs.HRM.dll

This section will only focus on the BGEmployeeToActive function that involves the update statuses for the employees. The details of the other processes such as the email or NT account processes will not be included in this section.

Background job (for example)

“C:\DEV\SynergyNet258\bin\Exact.Process.exe” /DBCONFIG:SynergyEnterprise258 /ASSEMBLY:Exact.Jobs.SysMaint /CLASS:SysMaint /NT /NOPDC /NOEMPACCOUNT /IGNOREBLOCKED

Parameters

/NOPDC – If this parameter is used, the background job will attempt to create or delete the Windows user accounts even if the primary domain controller cannot be found. This option is used in the development and debugging activities when there is no access to the primary domain controller but only to a local workgroup.

/NOEMPACCOUNT – If this parameter is used, the Windows user accounts will not be created or deleted for the employees. All the other processes related to the new or exit employees will still run. This option is used in situations whereby the user want to control the creation or deletion of the Windows user accounts but want e-Synergy to handle the other administrative tasks, for example, reassignment of the subordinates of the exit employees, reassignment of the items, and others.

/IGNOREBLOCKED – If this parameter is used, the “Blocked” status of the hired resources will not be changed. Also, the “Blocked” status of the “Active” employees that have just had their Windows account created will also not be changed.

Main query to pick up the records for the process:

If /NOEMPACCOUNT is included in the background job command, it will only check against for those with humres.ldatindienst (start date) < TODAY, and status = HIRED.

Without this parameter, besides the check on the condition above, the background job will also check against the resources (employee, contractor, temporary, and student) that have been modified one day before, today, and one day after today whereby status = ACTIVE.

Together with the conditions above, the same background job will also pick up the records whereby humres.ProcessedByBackgroundJob=0.

Update process 1:

If /NOEMPACCOUNT is included, the NT Account will not be checked, and the resource status will be set to ACTIVE (humres.emp_stat = ‘A’).

Otherwise, the background job will check whether NT Account exists:

  • If NT Account does not exists, the resource will still be set to the “Active” status.
  • If NT Account exists, the /IGNOREBLOCKED parameter will be used.
    • If /IGNOREBLOCKED is included whereby the employee status is not “Active”, it will set the employee status to “Active”.
    • If /IGNOREBLOCKED is not included:
      • Set the employee status to “Active” (humres.emp_stat = ‘A’)
      • Set the employee block status to unblock (humres.blocked = 0)
      • Set the employee back office access to unblock (humres.BackOfficeBlocked = 0)
    • For both the cases (with or without the /IGNOREBLOCKED parameter), it will also set the indicator to this resource that was processed by the background job (humres.ProcessedByBackgroundJob = 1).

Update process 2 (run after the update process 1 above):

If /NOEMPACCOUNT is included, the background job will follow up by checking the parameter on /NOPDC:

With /NOPDC,

  • If /IGNOREBLOCKED is included, the background job will check if the employee status is “Active” (humres.emp_stat = ‘A’). If it is not active, it will set the employee status to “Active”.
  • Without /IGNOREBLOCKED, the background job will perform the following process:
    • Set the employee status to “Active” (humres.emp_stat = ‘A’)
    • Set the employee block status to unblock (humres.blocked = 0)
    • Set the employee back office access to unblock (humres.BackOfficeBlocked = 0)

Without /NOPDC,

  • The background job will set the employee to “Inactive”, and delete the NT account.

Without /NOEMPACCOUNT,

  • The background job will create the NT account, and email address. If successful, do the following:
    • If /IGNOREBLOCKED is included, the background job will check if the employee status is “Active” (humres.emp_stat = ‘A’). If the status is not active, the employee status will be set to “Active”.
    • Without /IGNOREBLOCKED, do the following:
      • Set the employee status to “Active” (humres.emp_stat = ‘A’)
      • Set the employee block status to unblock (humres.blocked = 0)
      • Set the employee back office access to unblock (humres.BackOfficeBlocked = 0)
    • With or without /IGNOREBLOCKED, do the following:
      • Set humres.ProcessedbyBackgroundJob = 1
      • Set humres.adv_code = ‘N’

Parameters

The Exact.Jobs.SysMaint background process supports the following parameters. The command line parameters are case sensitive.

/NT

  • This parameter is used to execute normal tasks (create or update NT accounts, reassign subordinates, generate requests for performance review).
  • It is an optional parameter.

Note: This parameter is mandatory when running the background jobs for user accounts. This parameter creates and stores the log information at System ? Reports ? Log ? Processes after an update (NT accounts) task is executed as explained in the following:

  • Account deleted for inactive user (resource) xxx – This message indicates that the inactive NT account has been successfully deleted.
  • Account disabled for inactive user (resource) xxx – This message indicates that the inactive NT account has been successfully disabled, but the account cannot be deleted.
  • Error in delete/disable account for inactive user (resource) xxx – This message indicates failure while attempting to disable and delete the inactive NT account.

*xxx is a symbolic representation for the user ID of an NT account.

/NOPDC

  • This parameter is used to create or delete Windows user accounts when there is no Primary Domain Controller in the HRM settings.
  • It is an optional parameter.

/NOEMPACCOUNT

  • This parameter is used to update the status for Hired or Exit employees but not Active employees. It does not create or delete Windows user accounts. It is to be used when the creation and deletion of Windows user accounts are manually done by system administrators and mail boxes are not required. 
  • It is an optional parameter.

/FTPR:[DIRECTORY]

  • This parameter refers to the reseller contact person root directory on the FTP server.
  • It is an optional parameter.

/FTPC:[DIRECTORY]

  • This parameter refers to the customer root directory on the FTP server.
  • It is an optional parameter.

/FTPDIV:[001;002;003]

  • This parameter displays the list of divisions to which the customers or resellers belong, separated by “;” (semi colon).
  • It is an optional parameter.

Note: This parameter is mandatory when running the background jobs to create or delete a customer or reseller contact person directory on the FTP server.

/FTPEXP:DAYS

  • This parameter is used to specify the number of days after which the content of the FTP directory expires.
  • It is an optional parameter.

/IGNOREBLOCKED

  • This parameter lists the active users (hired people and active employees) with the Blocked status. This parameter does not affect their Windows accounts.
  • It is an optional parameter.

/L

  • This parameter is used to update the LogonScript property of the NT account for a new recruit with the name specified after the /L parameter (for example, /L:ADCLogonScript.bat).
  • It is an optional parameter.

/RAS

  • This parameter is used to grant all new employees the remote access permission (Dial-in or VPN). Applicable only if Active Directory is used.
  • It is an optional parameter.

/IM

  • This parameter is used to grant all new employees the right to use the primary Instant Messaging Server on the Active Directory domain. This parameter is also only applicable when Active Directory is used.
  • It is an optional parameter.

/GMForest

  • This parameter refers to the name of the forest.
  • This is an optional parameter.
  • /GMRole
    • This is an optional parameter that can only be used when you are using /GMForest or /GMDomain.
    • This parameter can be used to add or remove the members of a certain Exact Synergy Enterprise role to or from a certain NT domain group in the specific forest. The value(s) of this parameter has to be equal to the ID(s) of the role(s). When this parameter is not used, it is possible to add or remove the members of all the roles to or from a certain NT domain group in the specific forest.

    Note: This parameter is mandatory when running the background jobs for the role(s) in a specific forest. Only the environment with the unique group name in the specific forest is supported.

/GMDomain

  • This parameter refers to the domain server name.
  • It is an optional parameter.
  • /GMRole
    • This is an optional parameter that can only be used when you are using /GMForest or /GMDomain.
    • This parameter can be used to add or remove the members of a certain Exact Synergy Enterprise role to or from a certain NT domain group. The value(s) of this parameter has to be equal to the ID(s) of the role(s). When this parameter is not used, it is possible to add or remove the members of all the roles to or from a certain NT domain group.

Note: This parameter is mandatory when running the background jobs for the role(s) in the domain server.

/GMRole

  • This parameter can be used to add or remove the members of a certain Exact Synergy Enterprise role to or from a certain NT domain group. The value(s) of this parameter have to be equal to the ID(s) of the role(s). When not used, it is possible to add or remove the members of all roles to or from a certain NT domain group.
  • It is an optional parameter.

/E

  • This parameter is the FQDN (Fully Qualified Domain Name) of the Microsoft Exchange Server 2010. It is used by the background job to connect to the Microsoft Exchange Server 2010 via remote PowerShell.
  • It is an optional parameter.

Note: This parameter is mandatory when running background jobs using Microsoft Exchange Server 2010.

/ESEURL

  • This parameter is the URL for Exact Synergy Enterprise. For example, http://webserver/synergy.
  • It is an optional parameter.

Note: This parameter is mandatory when running the background job to send portal messages using Word Merge.

/MAILBOXDATABASE

  • This parameter is used to define the mailbox database name.
  • It can be included in the command line to force the background job to create mailboxes automatically. For example, C:\Program Files (x86)\Synergy250\bin\Exact.Process.exe /DBCONFIG:Synergy250 /ASSEMBLY:Exact.Jobs.SysMaint /CLASS:SysMaint /NT /E:http://REM199.DELTABIKE.COM /MAILBOXDATABASE:"Mailbox Database 1313303313".
  • It is an optional parameter.

Note: This parameter should be used only if there is a failure in creating mailboxes (with errors) when running the background job.

/ADDisabledOnly

  • This parameter is used to disable the accounts of inactive users in the Active Directory. With this, the mailbox accounts of those inactive users are maintained instead of deleted. This lessens the maintenance work in cases where the contracts of contractors are not renewed on time before the contract end date, or when people who joined a company as students return to the same company as permanent employees. An example of a syntax is as follows: D:\Dev\dev\bin\Exact.Process.exe" /DBCONFIG:dev /ASSEMBLY:Exact.Jobs.SysMaint /CLASS:SysMaint /ADDisabledOnly.
  • This is an optional parameter.

Settings for Exact Synergy Enterprise

The relevant settings in Exact Synergy Enterprise can be accessed at Modules ? HRM ? Setup ? General ? Settings.

The settings in the sections Server and Absence determine how and where new employee entries are created and also where accounts for customers and resellers are created if given portal access. When portal access is given, you can also determine which type of request is created for the account manager and you can make the relevant adjustments in the e-mail that is sent to the account. Also, the setting under the Performance review section determines how and when performance review requests are generated. More information about the fields on the HRM: Settings page can be found in the Online Help documents for the HRM module.

Troubleshooting

The log can be checked at Modules ? System ? Reports ? Log ? Processes.

Related documents

 

     
 Main Category: Support Product Know How  Document Type: Online help main
 Category: On-line help files  Security  level: All - 0
 Sub category: Details  Document ID: 16.109.302
 Assortment:  Date: 02-07-2018
 Release: 251  Attachment:
 Disclaimer

Attachments
ESE-HT260-Exact.Jobs.SysMaint02.docx 56.1 KB View Download