Hi All,
I’m hoping you can help me with a problem.
I created a database for work a few years ago, that amongst other things, is used for storing details of jobs and also the time spent against these jobs. For these functions I used three table:
tblJob
Job_Ref PK
EmployeeID FK
Job_Year
Time Allocated
tblTime_Card
Time_Card_ID PK
WC_Date
EmployeeID FK
tblTimeSheet
Timesheet_ID PK
Time_Card_ID FK
Job_Ref FK
Monday_Time
Tuesday_Time
Wed…
All works well. Each employee gets assigned a job in tblJob and an amount of time to complete the job. They complete their timesheets for this and other jobs so we can monitor how much time they have spent against their allocated jobs and other employees jobs. We also have admin ‘jobs’ stored in tblJobs. These aren’t allocated to a specific employee and do not have an allocated time but employees can still record time to these admin jobs so we can monitor how much is being spent doing photocopying for example. One thing we do like about this is that the admin job codes never change. For example photocopying might be reference 1001 for example, it just makes it slightly easier to use, whereas every time an employee get a new job to complete they get a new job reference.
The problem is that we now want to allocate time for each employee to these admin jobs so that we can monitor time spent against allocated time just like normal non-admin jobs. However I can’t think of a way to implement this whilst appeasing management who want to make sure the admin jobs keep the same reference.
Using the current table structures, to allocate an employee and time to an admin job, Photocopying might be 1001 for employee 1 in 2015, 1002 for employee 2 in 2015, 1067 for employee 1 in 2016, 1068 for employee 2 in 2016 and so on and so. This might work for normal jobs because once they have finished that job they won’t code time to it anymore so job references don’t matter. However admin jobs will always be here hence why management don’t want their reference codes to change. Plus it would be a nightmare trying to report on all time spent to photocopying if there are dozens of different codes for it.
I did try and have a play about with creating different tables for admin codes, and keeping allocated times and employees in it that way but then this would mess up the timesheet as there is just one field to select a job reference from, unless we then have a job reference field and an admin reference field linking to the two relevant tables.
Any ideas on how to implement this would be greatly appreciated.
I’m hoping you can help me with a problem.
I created a database for work a few years ago, that amongst other things, is used for storing details of jobs and also the time spent against these jobs. For these functions I used three table:
tblJob
Job_Ref PK
EmployeeID FK
Job_Year
Time Allocated
tblTime_Card
Time_Card_ID PK
WC_Date
EmployeeID FK
tblTimeSheet
Timesheet_ID PK
Time_Card_ID FK
Job_Ref FK
Monday_Time
Tuesday_Time
Wed…
All works well. Each employee gets assigned a job in tblJob and an amount of time to complete the job. They complete their timesheets for this and other jobs so we can monitor how much time they have spent against their allocated jobs and other employees jobs. We also have admin ‘jobs’ stored in tblJobs. These aren’t allocated to a specific employee and do not have an allocated time but employees can still record time to these admin jobs so we can monitor how much is being spent doing photocopying for example. One thing we do like about this is that the admin job codes never change. For example photocopying might be reference 1001 for example, it just makes it slightly easier to use, whereas every time an employee get a new job to complete they get a new job reference.
The problem is that we now want to allocate time for each employee to these admin jobs so that we can monitor time spent against allocated time just like normal non-admin jobs. However I can’t think of a way to implement this whilst appeasing management who want to make sure the admin jobs keep the same reference.
Using the current table structures, to allocate an employee and time to an admin job, Photocopying might be 1001 for employee 1 in 2015, 1002 for employee 2 in 2015, 1067 for employee 1 in 2016, 1068 for employee 2 in 2016 and so on and so. This might work for normal jobs because once they have finished that job they won’t code time to it anymore so job references don’t matter. However admin jobs will always be here hence why management don’t want their reference codes to change. Plus it would be a nightmare trying to report on all time spent to photocopying if there are dozens of different codes for it.
I did try and have a play about with creating different tables for admin codes, and keeping allocated times and employees in it that way but then this would mess up the timesheet as there is just one field to select a job reference from, unless we then have a job reference field and an admin reference field linking to the two relevant tables.
Any ideas on how to implement this would be greatly appreciated.