@apmuthu,

I am informed that you can set the increment and offset etc/mysql/mysql.conf.d/mysqld.cnf, which will make it permanent and set it across all databases per machine. I am using MySQL 5.7.13 on Ubuntu 16.04. On older versions I seem to remember the config file was etc/mysql/my.cnf.

It says you can also use the functions through the command like in the terminal, but it doesn't say whether the increments would then remain permanent or just for that session. If you need to set this per database instead of per server then it might be worthwhile looking at the command line option, but for me I'm going to go with the config file setup.

I would like to thank you both for your help with this issue, and I'll let you know how it goes when I've tested it.

@cambell, thanks for your comments. I'm pretty new to this, and that's why input from gurus like yourself and @apmuthu is very much valued (Your O is not H but V).

I am now wondering if I can quite easily avoid replication issues by  "appropriately configuring auto_increment_increment & auto_increment_offset on each master" ? Am I a bit closer to taking the right road now? What are your thoughts on this, mate?

Thanks for your input. I think what you are saying is that we are currently using the inbuilt AUTO_INCREMENT functionality of MySQL, and you are quite correct that this won't work as you have explained.

What I'm suggesting is that we hold (perhaps in the config file) a server number. So the config files on each server would be different, with one having  server=1 and the other server=2. Then we physically write the transaction id, instead of auto incrementing and append the server number to the end (I initially proposed prefixing but I think now that a postfix would be better). This could possibly also solve the problems we have with "Reference number already in use" if we adopted the same procedure for reference numbers. It's probably relatively easy to add this code, but I would like hear from you gurus before I even look at it, in case there's a clever way to do it that I haven't thought of.

What I do know is that the ability to have a replicated database is going to enhance FA, and I can give you 10 reasons why someone would want to do it. You probably already know the reasons...

Regards,

4

(5 replies, posted in Setup)

I have done exactly this. I'm using master/master replication on the MySQL db. I did this because our internet connection in both of our branches is very flakey, and also so that we have an automatic offsite backup that we can use live if a machine goes out for some reason. There is, however, an issue you should know about....

When the internet goes down, if both branches make, say, a general ledger entry then you get a replication error because the primary key is the next one, so both branches use the same number for their GL entries. It's probably the same with sales/purchases, but so far I've only seen the GL issue, and it's a nightmare to correct.

So, the replication works nicely as long as the connection is there, but that's catch 22 because if the connection is there then you don't need the replicated database - you could just work from one instance of FA. If the connection goes down then the 2 locations will be writing different GL data with the same transaction number and you'll get replication errors and lose data.

What we need (in the next version?) is the primary keys written with a machine specific number, i.e 102323, 4, 5 etc from server 1, and 2022323,4,5 etc from server 2.

FA team, this won't take much programming... are you OK to include this in the core? It would be a major feature to have a system that can be replicated and on top of the IT benefit it's like automatic consolidation from a Finance point of view. I am happy to help with the coding if you like.

I have done exactly this. I'm using master/master replication on the MySQL db. I did this because our internet connection in both of our branches is very flakey, and also so that we have an automatic offsite backup that we can use live if a machine goes out for some reason. There is, however, an issue you should know about....

When the internet goes down, if both branches make, say, a general ledger entry then you get a replication error because the primary key is the next one, so both branches use the same number for their GL entries. It's probably the same with sales/purchases, but so far I've only seen the GL issue, and it's a nightmare to correct.

So, the replication works nicely as long as the connection is there, but that's catch 22 because if the connection is there then you don't need the replicated database - you could just work from one instance of FA. If the connection goes down then the 2 locations will be writing different GL data with the same transaction number and you'll get replication errors and lose data.

What we need (in the next version?) is the primary keys written with a machine specific number, i.e 102323, 4, 5 etc from server 1, and 2022323,4,5 etc from server 2.

FA team, this won't take much programming... are you OK to include this in the core? It would be a major feature to have a system that can be replicated and on top of the IT benefit it's like automatic consolidation from a Finance point of view. I am happy to help with the coding if you like.

6

(1 replies, posted in Announcements)

Ubuntu 16.04 comes with php7.0, and Front Accounting requires 5.x. You can, in fact, install the 2 versions of php alongside each other, and you can set it to default to php5.6 for Front Accounting (but you can still switch to php7.0 if you need to for something):

In a terminal:

digger@computer# sudo su
root@computer# add-apt-repository ppa:ondrej/php
root@computer# apt-get update
root@computer# apt-get install php7.0 php5.6 php5.6-mysql php-gettext php5.6-mbstring php-xdebug libapache2-mod-php5.6 libapache2-mod-php7.0 php5.6-curl php5.6-gd php5.6-mcrypt php5.6-xml php5.6-xmlrpc

Installing both php5.6 & php7.0 was clean in my case: no complain of issues, etc.

----------------------
To switch from php7.0 to php5.6:

# For php in web apps (Front Accounting)
sudo a2dismod php7.0 && sudo a2enmod php5.6
sudo service apache2 restart

# For php-cli in the command line
sudo ln -sfn /usr/bin/php5.6 /etc/alternatives/php
----------------------

----------------------
To switch back from php 5.6 to php 7.0 you need to do two things:

# For php in web apps
sudo a2dismod php5.6 && sudo a2enmod php7.0
sudo service apache2 restart

# For php-cli in the command line
sudo ln -sfn /usr/bin/php7.0 /etc/alternatives/php
----------------------

You can also quickly check which version you are currently set to by typing in a terminal php -v. Also please note that the new version of Front Accounting will be compatible with php7.0.

Hi,

I have recently upgraded from 2.3.21 to 2.3.25 and I've noticed that when you select "Sales Invoices" or "Payments" in the Customer Transaction Enquiry that the rolling balance for the time period selected is now wrong.

Amongst other things, we use this very handy report to do our daily cash up... We ensure that our actual cash balances with the RB on the report, and for trouble shooting if we have a problem balancing.

Does anyone know where I should go to tweak this so that it works as before?

Thanks for your help, and regards.

8

(2 replies, posted in FA Modifications)

There is something that has recently been written by elax - see post https://frontaccounting.com/punbb/viewtopic.php?id=4370

Unfortunately, I'm not quite sure how to install it... any ideas anyone?

Hi, thank you for all your help. It may be a big job to get things how I would like them, and I was hoping it was a simple change but I'm getting lost in the code.

Just to explain a bit further... when I run an annual expense breakdown I get all the classes and account groups showing with the accounts underneath, but I only get accounts where they have been used. For example, I will see:

Revenue
      Service Revenue
              Automotive Services    $1000
              Mechanical Services     $500
              General Engineering     $750
       Total Service Revenue         $2250     

If I run an Annual Expense Breakdown for the General Engineering dimension only then the Automotive and Mechanical accounts disapper because there's none of this revenue in this dimension. All the totals in each spreadsheet for each dimension shift up and down, and nothing lines up between dimensions. In addition, the reports during the year for any one dimension will change format if we use an account that had not been used previously. I would like to see the all accounts in the report whether used or not, but the value at zero because there's no transactions.

So, in effect, when I run an annual expense breakdown, I would like it to produce a "standard" format, with the totals all on the same lines between dimensions, and all the accounts showing (with a value of 0 if not used in this dimension). This will also mean that an AEB/down run in January will have everything in the same place as one run in July, where we have used extra accounts in June and July (for example).

I hope that I have explained it a little better, and I really appreciate your help with this. The AEB/down is a report that we used all the time, and the excel format is excellent. We would like to use this to standardize reorting.

10

(9 replies, posted in Reporting)

Hi, I've cleared all the cache but it's still the same. It is showing all the account classes and account groups whether used or not for a dimension, but not the acutal accounts unless there has been at least one transaction for this account during the year.

11

(9 replies, posted in Reporting)

Hi,

Sorry... I have just commented out the if block as you have above. Unfortunately, I'm still getting the same result.

I can send you sample reports if this will help.

12

(9 replies, posted in Reporting)

I have commented out all these lines, but it seems to have removed the sub-totals for each account group, but it still doesn't show the unused accounts.

I am struggling with the code so I really appreciate your help, and am happy to provide any further information if it will help.

Thanks and regards.

Hi,

Can anyone suggest an easy way of changing the Annual Expense Breakdown to show all accounts, whether there is any transactions for them or not?

At the moment, the report only shows accounts that have been used for each dimension, whereas we would really like to see all accounts in the chart, even if they are zero.

Any help would be appreciated.

Thanks and regards.

Hi Joe,

Thanks for your speedy reply. I have already done this for now - I have made the branch name the debtors name, and put the branch name in the address. The problem is that the branch name field is not long enough to hold the customer's full legal entity name (a tax requirement for Invoices). I have changed the br_name field in the database to varchar(100) (same as the 0_debtors_master, but it still only lets me input 40 chars, so I guess I'm going to have to change the form code (but not quite sure where right now).

The other small point is that all our branches for this company (13) have the same name now. Kinda makes the branch name field redundant, and I was thinking that the better long term solution would be to get it to show the Debtor </br> Branch </br> Address(es).

It's a minor issue as not many companies have a name over 60 chars long, and possibly something that may be considered later. I'll keep plowing through the code, and if I get it sorted out then I'll send you the files for your approval.

For those customers who have one legal entity but really do have branches underneath, we would like to include the Customer Name (legal entity) in the Sales Quotation.

To paraphrase, we need to print the Company Name, Branch Name and Address in the Bill To section of a Sales Quotation, where several branches exist for the Customer.

At the moment, our Sales Quotations are addressed to:
Harare Branch
PO Box 1
Harare.

What we would like is:
John Doe (Pvt) Ltd
Harare Branch
PO Box 1
Harare

I'm sure there is a simple change to the code somewhere, but I've looked in rep111 and doctext and can't get my head around what I have to change. Can any of you pro's suggest what I can change, please?

Thanks for your help.

16

(5 replies, posted in Reporting)

Hi,

I am assuming that the receipt template (rep112.php) will have to be changed to modify the receipt format so that it will print  nicely on a receipt printer.

Is there anyone out there using a receipt printer, and if so what did you have to do to get this to work?

Any help would be appreciated.

Regards,

17

(1 replies, posted in Setup)

Hi Sandeep,

I also wish to consolidate multiple companies. Did you find a solution in the end?

18

(22 replies, posted in Accounts Receivable)

tclim,

I have had a look at your demo site, and it looks like your FA <-> Open Source Point Of Sale is a very nice connector. Well done!

It seems that in Open Source Point Of Sale there is no option to charge a customer sale to their account, but in FA this is exactly what happens. Does your integration between OSPOS and FA solve this problem, so that we can either make a cash or account sale?

If so, can you see the customer's account balance in OSPOS when creating a sale, and can it block a sale to a customer over their credit limit or credit terms?

If not, is it feasible to change OSPOS to take into account the need to charge some sales to an account?

We are not worried about payment allocation because we can do this directly in FA, but we definately need to take cash from some customers and charge the account of others.

Thanks and regards

19

(7 replies, posted in Report Bugs here)

Hi Folks,

I am also getting the VAT posted to Foreign Exchange Gain/Loss. It seems to have started happening for us with release 2.3.1, but we are still getting it in 2.3.3. It only to happens to suppliers that we have set up as tax included, and it only happens to "Purchased" items, not "Service" items. If we book the PO, GRN and Invoice for a mixed order of Purchased and Service items, the tax is correct on the

Maybe I have some other setup wrong, but I can't find anything. Please let me know if I can provide any further information or do any testing to try and hunt down the problem. Here are the entries made to the GL when we buy one Purchased Product for $100 and one Service Product for $100 on the same PO:

23130     Accounts Payable                                      200.00    
13710     Stocks of Automotive Products     100.00        
55190     Default COGS Account           86.96        
23530     VAT Control                                     26.08        
75350     Foreign Exchange Gain/Loss                           13.04    
Total         213.04     213.04

Thanks for all your help!

Hi Peggy,

We are a very diverse company using Front Accounting.  Our divisions (dimensions in FA) include Manufacturing, Service Work , Wholesale and Retail. As you can imagine, we are pushing Front Accounting quite hard, and I have only good stories for you.

Interesting for you may be the fact that we are running Front Accounting on Ubuntu Server, and all of our desktops and laptops are running Ubuntu Desktop. The system is very fast, and very reliable. We have not had one incident of down-time.

The only snag I encountered was permissions on some of the directories, and this was through my own ignorance and not a fault of Front Accounting. FA has a very good System Diagnostics Report, and I used the report to fix the permissions in minutes. It was that easy!

If you need a hand with the setup of Ubuntu Server or Front Accounting on it, then I am quite happy to try and help. I'm really not an expert, but even I managed to get everything running very quickly.

Regards,

Dave.

Hi,

We are an Manufacturing and Engineering company, and we are currently using 2.2.11 (haven't yet upgraded, but I'm looking forward to it).

We have created a Service item called "Parts as listed below", and basically we are using this for purchasing and invoicing Non-Stock items that we buy to do a certain job for a customer and then re-invoice out to them. We record the actual parts in the comments and then it appears on the purchase order to the supplier and the invoice to the customer.

On this basis, we have set up our item as a "Service", and have set the accounts to:
Sales Account: Non-Stock Item Sales
C.O.G.S. Account: Non-Stock Item Purchases.

So far so good, but here's the snag - when we do a delivery note on the Sales Order for any "Parts as listed below", it does a GL transaction:
DR Non-Stock Item Purchases
    CR Default Inventory Account

Upon investigation, when we purchase the goods the transaction is
DR Non-Stock Item Purchases
   CR Accounts Payable
So, the items are already sitting in Non-Stock Item Purchases when they are bought. Being a service item, there should be no GL transactions upon raising the delivery note to the customer, I don't think.

To make matters worse, the GL transaction generated by the DN is for the last thing that we purchased as "Parts as listed below". So if we buy a $10 bearing for one customer and then a $10,000 generator for another then if we invoice the bearing it will put through the transaction for $10,000 between Non-Stock Item Purchases and Default Inventory Account, whereas it was really only for $10 (although again, there should have been no transaction at all).

It seems that every time we buy a Service, it records the last value of the goods in the Stock Master Table in the Material Cost field. Of course, we can't see this in Standard Costs because it's a service item, but I can see it using phpMyAdmin.

Can you tell me if I have completely messed up our procedure here, or whether this is actually a bug? I guess the work-around is to create to Items - one solely for purchases and one solely for sales, but I didn't know this before. I do know that we now have several hundred entries to go through and try and reconcile/fix before year end. Shame, poor me. :-(

Thanks for all your help.

Hi,

A small bug that I've noticed... when we are manufacturing an item using Advanced Manufacture there is a bug in the Inventory Item Status (I&I tab).

The item being made correctly shows up as On Order in the Inventory Item Status, but... so are the raw materials used to make it. These should show up as Demand in Inventory Item Status.

Nothing else seems to be affected, and everything comes right when the final item is produced.

Regards, 

Digger.

Hi Joe,

Thanks for your speedy response! Perhaps I had something wrong with my setup, but I have upgraded to 2.2.8 and I can now make payments against supplier invoices entered without a PO. Before I was getting an error, but it's working now, thank you!!

I'm still wondering where it is that I am supposed to mark an item as "non-stock". For some items we want to issue PO's but we don't want the items included in our stock count when we do a GRN... we just want them to go straight to the P&L as expense without showing in stock. As you say, I'm sure this is possible, but I'm just not sure where to do it... Apologies for my ignorance!

Thanks once again for your help, and regards,

Digger.

Hi,

I was wondering how to go about booking an invoice where there is no purchase order... for non-stock items where we haven't issued a PO. Is this possible, please? How do we reflect the amount owed in our creditors accounts for these suppliers?

Also, is there a way that we can raise PO's for non-stock items and have them go straight to expenditure (I can do that through the account set-up in the item), but without recording any items on hand when they are received?

Thanks for your help, and regards,

Dave.

Hi Janusz,

I'm getting the same error using version 2.2.6, and a friend of mine is getting the same thing on 2.2.7. We are both running FA through XAMPP for Windows (sorry, I will change to Ubuntu when I get some time).

After making a Quick Payment through Purchases/Supplier Invoices, everything goes well until I click the "Entry Supplier Payment for this Invoice" link - the error comes up at the top of the Supplier Payments screen.

Interestingly enough (or not), if I input an invoice from an "Inventory Supplier" then when I go to "Payments to Suppliers" then it defaults to them and all works well. If I try to change the supplier by using <space *> to find my Quick Entry supplier, I get the error again.

Please let me know if there's any other information I can provide to help  with this. In the meantime, I will fiddle around with various things and see if I can find out what's causing it from this end. I'm no expert, so don't hold your breath...