Adding a Payroll calculator
Andrew Sackville-West
andrew at farwestbilliards.com
Tue Nov 1 18:14:41 EST 2005
Jay Scherrer wrote:
> << snippetty doo dah >>
>
> Right on target. I my self don't know yet how GnuCash stores the
> information into each account. But it would be nice if there was a form
> to fill out while performing payroll that resembled a time clock or
> pay-stub format (Once hours were entered all the calculations are
> preformed).
> Of course the other options would include strait salaries and
> commissions. But these would be definable at the time of employee
> Creation/Hire.
>
> There are two major occurrences of payroll calculation.
> 1: performing the actual paycheck calculation.
> 2: Then reporting the totals for the quarterly tax return.
FOr my own purposes, I accumulate tax liabilities throughout the period
and with a couple of reports can determine both my outstanding tax
liabilities and labor expenses (used to calculate FICA, and MCare, among
others. WHat I can't get is units of work (hours in this case) and there
would have to be some method of recording that as some taxes are $x.xx
per hour as opposed to a percentage.
>
> Payroll taxes could be members of the Tax class and still be different
> from regular sales and income taxes. However Payroll taxes for the us
> will be accounted on a quarterly basis with the IRS form 941.
> I myself am very rusty on c but here's a shot. And I haven't the
> experience with any GUI's except Perl::Tk and html.
>
> I have used Derek Atkins's _gncEmployee class as a template for this
> Example:
>
> struct _gncTax
> {
> char * id;
> char * taxName; /* Medicare, SSI, Sales,..etc */
> char * taxType; /* Payroll, Payroll, Sales */
> char * taxCatagory;/* Employee, Salary, Sale */
> gnc_numeric taxRate; /* .0145, .062, .893 */
> gnc_numeric taxFrequency; /* hourly, monthly, unit */
is this -----------^ used to store what unit the tax is calculated on or
how often the tax is accumulated? IOW where do you store information as
what the tax is applied to?
> gnc_commodity * currency;
> gboolean active;
> char * language;
> Account * tax_acc;
> };
>
>
> Jay Scherrer
>
>
More information about the gnucash-devel
mailing list