Adding a Payroll calculator

Derek Atkins warlord at MIT.EDU
Tue Nov 1 23:30:32 EST 2005


Quoting Jay Scherrer <jay at scherrer.com>:

[snip]
> Derek Atkins's employee plus a couple more members:
> struct _gncEmployee
> {
>  QofInstance     inst;
>  char *          id;
>  char *          username;
>  GncAddress *    addr;
>  gnc_commodity * currency;
>  gboolean        active;
>
>  char *          language;
>  char *          acl;
>  gnc_numeric     workday;
>  gnc_numeric     rate;
>    gnc_numeric     type;         /* employeeType */
>    gnc_numeric     overTimeRate; /* employeeOverTimeRate */

technically, gnc_numeric is the wrong type for all but the 'rate'.
the workday and type should be an enum, or a string.

> struct +gncBusiness
> {
> char *          id;
> char *          businessName;   /* Name */
> char *          businessType;   /* sole-proprieter, partnership, LLC  */
> char *          businessCatagory;/* LandI or IRS listing*/
> }

There is no 'gncBusiness' object.  This should all go into the QofBook
where it belongs.

> 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 */
> gnc_commodity * currency;
> gboolean        active;
> char *          language;
> Account *       tax_acc;
> };

How does this deal with a graduated tax?

> My .02,
> 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-devel mailing list