Welcome to Luca!globe
 The CPA Journal Online Current Issue!    Navigation Tips!
Main Menu
CPA Journal
Professional Libary
Professional Forums
Member Services
August 1990

Harmony software: a review. (The Practitioner & the Computer.) (evaluation)

by Tannenbaum, Michael D.

    Abstract- The Harmony accounting software package contains general ledger, payroll, accounts payable, accounts receivable, order entry, inventory control, purchase order, and spreadsheet modules, as well as word processing and database management applications. Harmony has a well-designed user interface, but it also has some limitations, including a lack of a complete set of word processing functions and glitches in the real-time posting function. The high level of integration offered by the system makes Harmony a package that users should consider installing.

I have been reviewing accounting software for some years. Even so, when the shipping box arrived with all the Harmony modules, I have to admit it was overwhelming. Harmony is more than just an accounting software package; it is a total data processing environment. It tries, in one system, to combine all common business data processing applications. Because it is so comprehensive, it is not useful to compare it to other accounting systems, which generally do not offer the same level of integration. Despite some limitations, detailed later, Harmony has proved to be a system worth examining.

It is important to note that most reviews, no matter how intensive, cannot evaluate how a system will perform in a multi-user environment. To be most effective, a system this complex should be installed on a network or other type of multi-user system.

What Is Harmony?

As an accounting system, Harmony contains the usual modules: General Ledger, Payroll, Accounts Receivable and Payable, Inventory Control, Order Entry, Purchase Order, and Spreadsheet. However, it also has a word processor and a database manager. All of these applications are accessed through the same user interface.

The database manager works in a similar manner to most other general purpose database managers. A database structure is defined or copied from a master file list. Data is then entered and reports can be generated.

As you might expect, the Harmony cannot manage all these operations without some compromise. For example, the word processor lacks some of the functions available with full-featured word processors such as WordPerfect or Microsoft Word. It is limited to creating documents of up to 30,000 words in length. Longer documents can be handled but must be linked.

Printer and font controls are suitable for light duty, general purpose word processing tasks. Harmony printer drivers are oriented to low-end, nine-pin, dot-matrix printers.

Another limitation noted is the number of line entries (99) in a single journal entry. Obviously, organizations with long compound general journal entries will find this restriction bothersome.

If you can live with the limitations of Harmony you will get a very competent package with a well engineered user interface.

System Manager

Harmony is accessed through the System Manager, which allows access to information for different companies by changing the path to the database files.

Once past the data path selection, the Harmony Main Menu is displayed. The text in the main menu can be altered so that non-Harmony applications, such as a spreadsheet, can be selected.

General Ledger

Starting a new ledger is accomplished by using the General Ledger maintenance menu. Creating a chart of accounts and developing financial reports are not simple operations. The chart of accounts coding scheme is sufficiently complex to allow profit center reporting. In addition to the account code, the account must be assigned a balance sheet classification, e.g., current assets.

The report generator has many options. The user should spend some time developing proficiency in its use. A model balance sheet and an income statement are provided. They can be used as guides. My impression is that the report writer can create rather complex reports.

Extra-fancy reports can be produced by having the financial reporting system output directed to a file that can be manipulated by the integrated word processor. Subsequent editing can be done to insert disclaimers, footnotes and other required financial information. Unfortunately, the utility of this feature is limited by the capability of the word processor.

Harmony provides a consolidation feature that allows companies with dissimilar account structures to be consolidated. However, the operator is required to know the data paths of the companies to be consolidated and the data path of the resulting consolidated company.

This is a real-time posting system because transactions entered by journal entry are immediately posted to the accounts. There is an option to allow transactions from the linked Accounts Payable and Receivable systems to be similarly posted immediately. This is in contrast to some systems in which entry of activity is made to a data buffer and batch posted once editing has been completed.

There are separate journals for general journal entries, disbursements and deposits. There is also a provision for recurring entries.

The system retains all details in a history file. Account activity can be examined in summary or in detail. Data can also be extracted by posting a reference number. The data desired can be printed, displayed on the screen or directed to a disk file.

Accounts Payable

The Accounts Payable system contains the usual functions. Data can be entered either through a purchase or a returns journal. As in most advanced systems, two dates are required for data entry, an aging date and a period posting date. The system automatically calculates a posting period based on the invoice date, but this is subject to override by the operator.

Once the invoice amount is entered, the system checks the accounts payable vendor master file for any discount percentage and calculates the discount to be earned, if any. Account distributions are pre- entered from the master file in a separate posting table. If none of the pre-entered accounts are suitable, other account or accounts can be selected.

The system provides for entry of recurring accounts payable items such as loan repayments and rent payments. On the due dates they are copied to the purchase journal to activate them for payment.

Because this is a direct posting system, invoices entered in the purchase journal are available for payment immediately. The payment process is accomplished by using the payment journal routine, which provides for bulk selection of invoices based on due date, individual selection of a specific invoice or group of invoices, or payment on account. Provision is also made for entry of manually prepared checks.

The check printing routine provides for reprinting checks in case of forms jams or other printing problems.

There is an option on the main accounts payable menu that will transfer the activity on a real-time basis to the General Ledger.

Accounts Receivable

Accounts Receivable operates either through an order entry billing front end or through a sales journal entry. Receipts are entered through a Receipts journal. Posting to general ledger accounts, on a real-time basis, is accomplished using a posting menu.

The Accounts Receivable system allows both balance forward and open item methods, selected on a customer-by-customer basis. The system also provides for calculation of finance charges.

Unlike some systems, there is no provision for commission and sales tax record keeping in the Accounts Receivable system. These records are kept in the Order Entry/Billing module.

The system generates reports on customer status, open invoices, aged trial balance, cash flow, a customer history file, and a special dunning report that creates a file to be used with the word processor. Personalized dunning letters can be prepared, using the word processor capability, from fields extracted from the accounts receivable system.

As in most high end systems, a statement form can be prepared with a general message and a dunning message that can be printed where applicable.

Order Entry/Billing and


Order Entry/Inventory Control systems are typically the applications that require the most customizing because of the almost infinite variety of practices found in businesses. For most "off the shelf systems" the required customization is provided by vendors who modify the system until it fits. In the Harmony environment, it appears that this customization process is to be provided by the Information Manager module.

Unfortunately in a tightly integrated data processing environment such as Harmony, tinkering with any module or group of modules can have unexpected effects in other areas. A person must be extremely knowledgeable of the system as a whole before any attempt is made to modify the system, and even then strange results can occur at any time. For those who do not have the knowledge or the desire to take risks, the Order Entry and Inventory Control systems should be applied as provided.

The stock Order Entry system provided is quite flexible. The system can be installed with or without the Inventory Control module. The system accepts regular orders, quotes, recurring orders, drop shipment orders and blanket orders.

The system requires that a valid customer account exist in the accounts receivable system. A customer master file can be created by selecting the F9 key without exiting the Order Entry system.

Information about billing address, salesperson, commission rates, credit terms, and taxable status are extracted from the accounts receivable customer file. The system provides for multiple "ship to" addresses and related "ship via" information.

The system allows the assignment of print status codes to each order, which directs the printing of the order as part of a batch, immediately or not at all. The system can either assign sequential order numbers or accept manually entered ones.

After the header information has been completed, the body of the invoice can be entered. If the system is linked to the inventory system, much of the details, as well as inventory status, can be extracted from the inventory master file.

If the system is not linked to the inventory system, all of the required data must be entered manually.

In the critical area of pricing, the system has a great deal of flexibility. It is table driven, and separate tables can be established for regular and special prices. The tables can be intricate. If taken to the limit, a separate price table could even be established for each customer. As with any highly flexible system, it is quite complex and experimentation will be required. Once the price for an item has been entered, an extended price for the line item will be calculated.

If the inventory has been linked to the Order Entry module, it is updated when the order detail line is completed. Discount percentages can be applied or a total dollar discount can be entered. Other charges, such as freight and sales tax, are entered at this time. The system then performs a credit limit check against the Accounts Receivable system.

When the system is integrated into the general ledger, sales can be separated by cost center, based on a selection made when entering the order entry routine. The account number to be credited for non-sales items is displayed in and selected from the order entry default table and can be changed if necessary.

The Harmony system contains the necessary functions to print open orders, delete open orders, print picking tickets and ultimately generate invoices.

Invoice generation is similar to order entry. New invoices are created by the same procedures as orders. Open orders are turned into invoices by an editing procedure in which the quantity shipped is entered. When the order entry system is integrated with the inventory control module, the most unusual features of the Harmony system become operative.

For those items that are not shipped completely, the system calculates a back order quantity. If, in the Accounts Receivable master file, a no back order limitation has been placed, a message that back orders are not allowed is displayed and the back order quantity is set to zero. If desired, this function can be bypassed and the item back ordered.

This system expects to see the cost of each item sold entered at invoicing time. If a calculated cost of goods sold is not used, a zero can be entered. If the system is linked to the inventory control module, this field is skipped and the cost is taken from the inventory master file.

Completed invoices are not automatically posted into the accounts receivable and general ledger files. The system provides for a batch posting process. Sales, returns and receipts journals are created during this process.

Inventory Control

The Inventory Control module is a highly flexible, well thought out system, organized around a complex item master file that can accommodate a large number of different inventory types.

The system manages this feat by structuring inventory-item information into three groups of data sets that can be varied to meet specific inventory record keeping requirements. At the top-most level is a single general information data set that includes the company's internal identification number, description, item type code, stocking units, shipping units and ship weight or volume.

The next level of data is location specific, followed by five data sets that pertain to the items at that location.

As you might imagine, item maintenance in a system with this flexibility is complex and time consuming. Harmony has addressed this problem by providing a default table file to make data entry decisions simple.

It is beyond the scope of this article to explore all the screens in the item data entry process; however, because of its importance, the quantity and costs sub-screen deserves some discussion.

This screen displays the system maintained quantity fields: quantity on hand, quantity in shipping, quantity in receiving, quantity in stock, and quantity committed. The quantity on hand field is the number of units in the warehouse. The quantity in receiving is units received but not yet posted to the inventory. The quantity in shipping is units shipped but not yet received from inventory. The quantity in stock is the sum of the preceding fields. The quantity committed field is not deducted from the quantity on hand until it is shipped.

In a linked system, these quantity fields are available for display and are updated at order entry time. It is important to note that use of these fields will limit access to the inventory files at order entry time. Record locking is used to avoid corruption of the file, and, therefore, other data entry operations are locked out once an inventory record has been selected.

The opening quantity on hand can be set up by posting a physical inventory. During this process, differences between the physical and perpetual book inventories are adjusted. The value of the differences is calculated and journal entries are created to record custodial losses or gains.

When inventory transactions are posted, the inventory system does not automatically generate general ledger transactions. It does however print a list of recommended general ledger inventory adjustments. These are maintained in a general ledger update log.


Payroll is probably the least justified small computer application. As a system, it is complicated. As an application, it puts an enormous burden on users. Most microcomputers and their related peripherals are just not designed for high speed processing.

Processing speed, or the lack thereof, becomes apparent when one must generate the pay checks or government reports under the gun. Another consideration is the durability, or lack thereof, of microcomputers. A component failure when preparing payroll can be disastrous to the morale of the company. Such an effect is usually not present when preparing vendors' checks or a trial balance.

Clearly, payroll is not the best application for "in house" preparation. However, in certain businesses it is almost a necessity. If a company has people working on many different jobs and wishes to include the cost of labor in the jobs (a typical "job costing" environment), or has a piece rate application, an integrated payroll system is most desirable.

For firms that have these payroll needs the Harmony system includes a complete multi-state payroll system that integrates into the General Ledger system. The system uses a combination of the Payroll system and the Information Manager to generate the required analyses.


I prefer a batch posting system because errors can be caught before posting to the general ledger occurs. The real-time posting generally used by this system is more troublesome because any errors can only be corrected by journal entry. On the other hand, the real-time posting can provide tighter control. While this reviewer could not test every aspect of the Harmony system, those modules reviewed showed a well designed system that deserves serious consideration.

Paul D. Warner, PhD, CPA Pace University

The CPA Journal is broadly recognized as an outstanding, technical-refereed publication aimed at public practitioners, management, educators, and other accounting professionals. It is edited by CPAs for CPAs. Our goal is to provide CPAs and other accounting professionals with the information and news to enable them to be successful accountants, managers, and executives in today's practice environments.

©2009 The New York State Society of CPAs. Legal Notices

Visit the new cpajournal.com.