Hello... Access newb here and first actual cry for help in a forum ever so thanks in advance for taking it easy on me.
Anyhoo, I am giving slow painful birth to a database that tracks job related costs for a general contracting company. Sub contractors, materials, etc. are entered into tbl_JobCosts and Employee timecards are entered into tbl_EmployeeHours. traditionally all of this was handled in an Excel spread sheet that was wrought with typographical errors as well as mathematical errors, hence the migration to a more normalized and automated number cruncher. however, one hurtle I can't seem to overcome (at least without creating another field to enter) is the occasional change in an employee's wage, or billing rate. Currently, I have a query that draws from tbl_EmployeeHours and calculates gross wages and billable cost according to tbl_Employees (where I have names and pay rates) and tbl_CostCode (labor type and billing rate) using a nested IIf formula.
But what happens if someone gets a raise? or there is a change in billing rate, going forward? I know the answer lies in the design of my query and I have accounted for the billing rate anamoly (as for one of our projects, our site super is being billed with no mark up, so I created a new cost code - a field we already have to enter to distinguish labor from subs, materials, rentals, etc)... but as I am entering historical data from the spreadsheet into the new Access DB, one of our employees received a raise halfway through the project... since my "Labor Cost" is determined by multiplying hours by a rate specified in tbl_Employees, is there a function by which I can automate the usage of a new rate, when entered, while keeping old records what they are? right now the only idea I have is to employ an "Employee Number" or more aptly put, "pay scale number" which would change only when there is a change in pay rate. But I feel like this is Excel logic.
I know this all may sound horribly unclear, but I'm hoping my hang-up lies within my limited knowledge of SQL and not in my general database design....