Thank you Samuel
I would fully intend to do this.
But that information will truely be retained by the program
which generates the EFT (payroll file transfer) to the bank.
So the calculated values are retainable durable in a number of ways.
But I don't see where your suggestion maintains the type of pay
What that EFT program dosen't do however is help with the
>>appropriate calculations
If I was to enter 5 consecutive 10 hour days in this Payroll program.
it would not mark the fifth day as overtime, but it would require it coded
as such when generating the pay for that week. The ERP system on the other hand
would code that fifth day entry appropriately but the ERP system does not have a workable interface
to record thousands of time entries a day. However I built a program that makes that kind of entry
possible and then posts to the ERP system. I can then batch the coded aggregates back to the payroll
program.
It's the "appropriate calculations" for the aggregates I don't know, even what they are called.
With the advice given here, I have a clearer picture of what is involved.
I realize now I'm struggling with two different interpretations of overtime.
Daily overtime OR weekly averaged overtime and I fear this company has somehow got
a defacto hybrid of that in play. 10 hours working one day a week does not grant you
2 hours overtime but 10,8,8,8,8 days would. Obviously this is straight forward.
But for example
Monday 10 standard
Tuesday 8 standard
Wednesday 8 standard
Thursday 8 standard
Friday 8 doubletime
can be interpreted three ways
(overfill)
34 standard
6 doubletime
2 doubletimeOT
OR
(daily)
32 standard
2 standardOT
8 doubletime
OR
(proportional)
32 standard
8 doubletime
1.6 hours standardOT
..4 hours doubletimeOT
So you need either a proportional distribution or an overfill condition. With the overfill condition.
each separate time unit needs individual investigation to determine if it came before or after the overfill
condition was reached.
"Samuel R. Neff" <sa********@nomail.comwrote in message news:gt********************************@4ax.com...
>
Store the hours worked as one field:
UserWorkWeeks
----------------------------
UserWorkWeekId
UserId
WeekStartDate
HoursWorked
And then use a weekly process to do payroll which can do the
appropriate calculations and then store the calculated values back in
the database in a separate table:
CalculatedPayroll
---------------------------
UserWorkWeekId
PayTimeId
Hours
Rate
Accouting/Financial/Payroll applications are a rare breed where it's
often appropriate or necessary to break some fundamental DB rules in
favor of auditing, history, and performance (i.e., normally you never
store calculated values in a database).
HTH,
Sam
------------------------------------------------------------
We're hiring! B-Line Medical is seeking Mid/Sr. .NET
Developers for exciting positions in medical product
development in MD/DC. Work with a variety of technologies
in a relaxed team environment. See ads on Dice.com.
On Thu, 14 Dec 2006 15:32:40 -0500, "John Sitka"
<jo*******@REMOVEhotmail.comwrote:
>>Hi,
There are four pay types
standard
shiftpremium
doubletime
doubletimepremium
each hour a person books can be one of these types
Now when the payroll is calculated once a week the system
needs additional to be spoon fed to know which hours are overtime
so it has an additional set of overtime pay types
standardOT
shiftpremiumOT
doubletimeOT
doubletimepremiumOT
Obviously you can't record these types during the week because they are only meaningful after
the results are in for the whole week.
So as an example
an individuals hours for the week look like this
12 standard
12 shiftpremium
12 doubletime
12 doubletimepremium
They have worked 48 hours this week. If overtime kicks in after 40 hours.
they need to have 8 hours distributed to these codes
standardOT
shiftpremiumOT
doubletimeOT
doubletimepremiumOT
What approach could be used to make sense? it seems that there just is not enough information.
Maybe a bucket analogy. LIFO the last (in terms of time line) type(s) booked would be used as the
type for the overtime. Does that makes sense, could it be argued that the company is overpaying
or underpaying, would you be satifisfied, with that kind of system?