Small companies generally have to use a software product that is adaptive to a wide range of accounting, billing practices, product and inventory control. That means an off the shelf product. Even so, then costs are high. But more custom products require even more money as the uniqueness makes them have less sales potential in the market.
So I'd say you'll have to look at things like Quickbooks and such. To use them effectively you have to really understand what your processes are and how they work together. The way off the shelf software requires you to set it up has a lot of adminstrative overhead.
A friend I worked for was always having to deal with inventory issues and job costing issues with his software. Both quickbooks and system for job labor and materials handling. So much time, that I wondered if it was worth using a computer for such a small company. I spent as much time verifying the errors manually as I would have just doing the tracking on paper.