I've always been curious as to how AX 2012 differentiates a worker versus an employee? Is this more geared towards multi-company (subsidiaries) implementations? I've Google'd and haven't found much. Thanks in advance.
The way i understand it is that you can have someone who works for that isn't an employee (for example a consultant or temp worker). In that case, you don't want them to be an employee, but you still need to have them setup in the system as a worker.
A worker spans over all companies, but can only be employee at one company at any point in time, as far as I know. So you will potentially have a start date and an end date for when a worker is employee in a given legal entity (company).
As per my understanding, A worker can be of type Employee or a Contractor. You can notice this while creating a new worker. The default worker type is Employee.
AX stored this information in HcmEmployment table and there are functions isContractor() and isWorker() on HcmWorker table to identify if a worker is a Employee or a Contractor.
Both employee and worker can be valid for a time range. This information is also stored in HcmEmployment table.
I would say you cannot differentiate between Worker and Employees because Employee is a type of Worker. So the comparison is not justified.
A resource which the company employs either permanently or on a contract basis is called a worker.
Workers are basically classified into two types, Employees and Contractors. Contractors are the ones who are not on the payroll of the company but can work on projects/tasks in the organization.
A worker can be setup as an employee/contractor in multiple legal entities. (But ideally they will be setup as Employee only in one legal entity).
See the screen below which shows the Worker details screen for an employee vs. a contractor.
I stand corrected: