I'd probably go to Human Resources to see if an employee was given any type of job / position code or text job description when they were hired ... based on those, you can give them a default home department to start with ... and can be changed as needed as they get promoted or transferred to other areas.
Each department should have a number in the database ... like Payroll can be 001. so when someone gets hired for payroll, they are assigned the department code of 001.
It might require some drop down menu of organizational positions when hired and when that position is selected, a department code can be inserted into the new hire's database record ... a field might have to be added to the table.
I don't think there is any complex algorithms for this but a lot of IF statements.
If Employee_Position = 'Finance'
Department_code = 001
Else
If Employee_Position = 'Janitor'
Department_Code = 999
Endif
And So On ...
You can create masters for "Department" and "Cost code " (responsibility) they working for .
Department will be assigned while creating employee and multiple cost code can be assigned to employee for responsibility they are working for.
Example :
Department for Employee is "Engineering"
His cost codes are "Chemical" "Oil & Gas"
Here you can check home department is "Engineering" but employee responsibility are "Chemical" which is from fertilizer department & Oil & Gas from petroleum department.
Thank you for sharing business management information.
brought to you by enabling practitioners & organizations to achieve their goals using: