Hello,
Before you worry about the tax calculation, I believe there are a number of issues with your data structure that you first need to review. Specifically,
1. You have a 'client' table but when you create an invoice, you do not select a client from that table. Rather, you enter the client details every time (as if it were a new 'client'). This, in effect, means that you are creating duplicate client records repeatedly every time you create an invoice. If you get a lot of repeat business from people, then you probably want to hold those details in a 'client' table but if most of your business is 'one-off' then is there any need to hold all those details in a separate 'client' table?
2. You have a similar issue with the 'bills' table; every time you add a new 'service' it is creating a new bill (so effectively you can only ever raise single line bills - is this really what you want)? If not, you need to think about creating a 'bill header' table and a related 'bill lines' (or 'bill details') table.
3. On the 'bills' table, you don't have a bill number so how can it be accurately referenced?
There may be other issues - I only had a quick look at your project. But as a general rule, if your data is not structured correctly, then your program is unlikely to work correctly either.
Give a shout if you need any help.
Derek.