Adding a Payroll calculator

Derek Atkins warlord at MIT.EDU
Sat Oct 29 21:44:55 EDT 2005


Quoting Jay Scherrer <jay at scherrer.com>:

> Do you think a good place to start would be to add an gnc_employeeType
> and a to your class _gncEmployee? Then we could create an editable
> member of the tax class to match the companies Labor and Industry's
> employee classification. Then would it be wise to add a business class
> to gncBusiness.c to include a member like ( gnc_BusinessIndustry and
> gnc_BusinessRating for unemployment rates ) or something? Is there a
> class for different Job descriptions already? We already know that FICA
> and Medicaid are pretty much uniform but still should be adjustable.

Honestly, I don't know..  I suspect the best approach would be to look
at it from the other side.  Figure out what information you need to
compute payroll and write the code that computes that.  Then we can
figure out where to store the necessary information.  Also keep in mind
that Gnucash's payroll system needs to handle more than just US payroll.
(This is where the payroll plugins come in).

Specifically, yes, I can see where you might need to extend GncEmployee
to store information about the employee's salary/rate and payroll types,
and potentially even per-person deduction information.  There is no
"GncBusiness" object; the business information is stored in the book itself.
So, no, nothing to extend there.

I don't know enough about payroll systems to know whether you need an
industry type -- I would think that you could just create appropriate
plugins for various tables and just use a reference to the table in
the data file to know which one to use.  But that's why I think it would
be best to start by figuring out how to compute the payroll and then
work backwards towards object extensions.

I think further discussions should be on gnucash-devel.  You should subscribe
there and follow-ups to this message should go to -devel and not -user.

> Jay Scherrer

-derek

-- 
       Derek Atkins, SB '93 MIT EE, SM '95 MIT Media Laboratory
       Member, MIT Student Information Processing Board  (SIPB)
       URL: http://web.mit.edu/warlord/    PP-ASEL-IA     N1NWH
       warlord at MIT.EDU                        PGP key available



More information about the gnucash-user mailing list