Alpha Video Training
Results 1 to 7 of 7

Thread: "Accounting system" table design

  1. #1
    Member
    Real Name
    Rob Polley
    Join Date
    Nov 2005
    Posts
    439

    Default "Accounting system" table design

    I need to create an "accounting system" for customers who register their children for instruction. I create a record for each registration. In that record is the amount the customer is charged. When they pay, I believe I should create a new record to record the payment. My question is, should I use the same field for payment (and make it a negative number) or use a different field, maybe called "payments." I'm sure the accountants out there will have strong opinions about this.

    One note - I had originally wanted to create a separate table for payments, but when I linked it to the registration field, the payments were duplicated - if a child had been registered for 3 sessions, and their parents had made one $50 payment, the payment was shown 3 times.

    Thank you.

  2. #2
    "Certified" Alphaholic Keith Hubert's Avatar
    Real Name
    Keith Hubert
    Join Date
    Jul 2000
    Location
    London, UK
    Posts
    6,930

    Default Re: "Accounting system" table design

    Hi Rob,

    As the registration is a one off I would keep that in he parent table. All other payments due and received should be in a child table with separate fields for each amount and a date for each transaction. What also would be good, to have a field to record the user for each transaction.

    I hope that has given you food for thought.
    Regards
    Keith Hubert
    Alpha Guild Member
    London.
    KHDB Management Systems
    Skype = keith.hubert


    For your day-to-day Needs, you Need an Alpha Database!

  3. #3
    Member
    Real Name
    Robert W. McGaffic
    Join Date
    Mar 2007
    Posts
    577

    Default Re: "Accounting system" table design

    Rob,

    The issue is whether you are simply interested in determining how much a customer owes you or what makes up that balance.

    In accounting, this is the difference between "balance forward" or "open item" accounting on your customer statement. For example, a electric utility, retailer, or credit card company uses balance forward, but most service, manufacturing, and wholesale distributors use the open item approach.

    If you elect balance forward, you only need one table for transactions.
    Your charge for the service is one record in this table, and
    the the subsequent payment is another record.

    If you elect open-item, you need two tables: one for transactions and one for open items.
    Your charge for service is recorded in both tables.
    The payment is recorded in the transaction tables and then is also posted against associated open item, reducing its balance.

    At the end of the month you do the following:

    If balance forward,
    Update the customer's record with the following:
    Previous month's balance + This month's charges - This month's payments.
    Mark this month's charges and this payment's for deletion or move to another table.

    If open item,
    Update the customer's record with the following:
    Previous month's balance + This month's charges - This month's payments.
    Mark this month's charges and this payment's for deletion
    Mark any open item records with a zero balance for deletion or move to another table.

    Bob McGaffic
    Pittsburgh
    (CPA masquerading as an Alpha user)
    Last edited by rmcgaffic; 05-17-2009 at 04:03 PM.

  4. #4
    Member
    Real Name
    Rob Polley
    Join Date
    Nov 2005
    Posts
    439

    Default Re: "Accounting system" table design

    Thank you, both; that's a big help. If I'm using the "balance forward" method, is it proper to record the payment in the same field as the charge, or should there be different fields for each? It's easier if they are in different fields, because of the way I determine the price.

    Thank you.

    --Rob

  5. #5
    "Certified" Alphaholic Keith Hubert's Avatar
    Real Name
    Keith Hubert
    Join Date
    Jul 2000
    Location
    London, UK
    Posts
    6,930

    Default Re: "Accounting system" table design

    Hi Rob,

    My take on this is if you are using Balance Forward you need to have three fields in the one record. Sale, Receipt and Balance. The Balance field gets its value by way of posting from the other two fields.
    Regards
    Keith Hubert
    Alpha Guild Member
    London.
    KHDB Management Systems
    Skype = keith.hubert


    For your day-to-day Needs, you Need an Alpha Database!

  6. #6
    Member
    Real Name
    Rob Polley
    Join Date
    Nov 2005
    Posts
    439

    Default Re: "Accounting system" table design

    Keith,

    I appreciate your thoughts. I used to do it the way you suggested, but if a parent had registered a child for lessons and I recorded a payment in that same record, I'd delete the payment and the registration. I really want to record the registration and payment separately. I think I'll use most of your solution and have fields for charges and payments, but NOT record them both in the same record.

    My next challenge is how to calculate a balance. I know I can figure out how to do it in a report, but I'd like to be able to do it without a report, too. I'm thinking a form is the way to go for this.

    Thank you!

    --Rob

  7. #7
    "Certified" Alphaholic Keith Hubert's Avatar
    Real Name
    Keith Hubert
    Join Date
    Jul 2000
    Location
    London, UK
    Posts
    6,930

    Default Re: "Accounting system" table design

    Hi Rob,

    The Balance Forward field would be in the customer info table.

    The transactions would be in a child table.
    My next challenge is how to calculate a balance
    This would be with the Posting rule in field rules.

    You have mentioned Sessions and Lessons. Is there one lesson and many sessions or many lessons with many sessions?
    Regards
    Keith Hubert
    Alpha Guild Member
    London.
    KHDB Management Systems
    Skype = keith.hubert


    For your day-to-day Needs, you Need an Alpha Database!

Similar Threads

  1. Alpha Table Export to MySQL - "Error querying local table - no such field"
    By jaylaforte in forum Alpha Five Version 9 - Desktop Applications
    Replies: 5
    Last Post: 09-17-2008, 09:40 AM
  2. form.view("fName","","","center","center")
    By reynolditpi in forum Alpha Five Version 9 - Desktop Applications
    Replies: 5
    Last Post: 07-15-2008, 12:37 AM
  3. "Add" and "Save" buttons don't stay on "Self" page
    By Scholin in forum Application Server Version 8
    Replies: 2
    Last Post: 02-05-2008, 08:50 AM
  4. Length of system variable "Data Source"
    By John Gilbert in forum Alpha Five Version 6
    Replies: 2
    Last Post: 11-24-2004, 01:34 AM
  5. "Design Mode" crashes from runtime
    By CALocklin in forum Alpha Five Version 5
    Replies: 4
    Last Post: 03-02-2003, 06:19 PM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •