
This is my professional web page, to share my ideas and interests as a
consultant programmer for QAD Mfg/Pro enterprise software and the Progress 4/GL programming language.
I like to share tips, tricks, and techniques that I have learned while driving improvements as a consultant programmer at Mfg/Pro client sites over the last 16 years.
You are welcome to send me a brief email at joe [at] avenue-systems [dotcom] and I will attempt to answer it as soon as possible.
Mfg/Pro is a well-designed and written software package with logical data structures and fairly complete ERP1 functionality. A typical installation meets 95% of a company's business requirements. Problem: The missing 5% is different from company to company, and while small, may be essential. So, instead of bloating Mfg/Pro by anticipating and adding all these missing pieces, QAD makes it easy to add functionality to Mfg/Pro. Supplemental reports, and screens to maintain supplemental data unique to your company or industry, are a few examples of the custom programming typically done to supply the missing functionality. Another major category is interface technology, to send and receive data from and to outside systems, E.G.: payroll and banking software, factory automation systems and machinery, web portals and EDI. Another category is manual effort reduction, such as a function to copy a purchase order, instead of manually re-entering a nearly identical P/O with hundreds of lines; or a module to capture factory floor activity with scanning terminals, instead of filling out forms for subsequent manual data entry.
How is the missing 5% satisfied? First of all, Mfg/Pro is written in an easily learned 4/GL (fourth generation) programming language called Progress. The Progress 4/GL is very efficient and is tightly coupled to the database, making it very easy to extract and link data. With a few hundred lines of logic/code it is possible to write most reports, interfaces, and maintenance screens. Compared to most other languages, it wins hands down in ease of use and simplicity. Secondly, a complete software infrastructure is included by QAD with subroutines for screen layouts, printer selection, etc. to streamline programming of custom menu functions with the same "look and feel" as Mfg/Pro. Finally, best practices are followed to minimize impact when installing new Mfg/Pro upgrades around these custom functions, keeping it simple to install new software releases as they are received from QAD.
Unencrypted source code for most reports and a few maintenance functions is included with Mfg/Pro, providing many good programming examples for your IT staff. I usually recommend to my clients that they not buy additional unencrypted source code for maintenance functions as it is very expensive. Also it is wise to avoid the temptation of modifying these programs, making it extremely difficult to apply future upgrades.
1 ERP stands for "Enterprise Resource Planning" software. Think of it as the swiss-army knife of software for a manufacturing or distribution company, with many different modules covering all aspects of a business, E.G.: Accounting, Inventory Control, Customer Orders, Purchase Orders. All modules are interconnected with a common database to allow easy sharing of data among the different departments in a corporation.
Many third party software solutions are written in another programming language, then altered to update the Mfg/Pro database. Most come at a high price, with high annual maintenance and licensing costs which must be paid for each database instance. And for the high price, you often get very poor interfaces to Mfg/Pro and very poor support. Most come without source code, so you cannot make any changes ore even look under the hood. Many are bloated, with features your company will not need. Most will STILL have their own missing 5%. You are forced to "do without" or pay the high third party consultant rates to get a good fit. And then you are left with a non-standard custom version which is difficult to upgrade.
Most third party solutions duplicate data and functionality already found in QAD. This leads to dual maintenance of data and multiple systems with the same functionality, leading to confusion among users. Multiple "silos" of data, functionality, understanding/knowledge, come with a security nightmare. Repeated licensing and maintenance fees kick-in when Mfg/Pro is implemented at a new subsidiary or location. When the SALE of a subsidiary or plant is ever attempted, the cost to the purchaser of establishing and maintaining this complex infrastructure probably leads to a lowering of the selling price, if not loss of the sale.
When a Progress solution is crafted with the same "look and feel" of Mfg/Pro, a company gets exactly what they need, typically maximizing the use of Mfg/Pro functionality and data stored in QAD. New data tables are placed in the same database structure as QAD, eliminating the multiple data silos problem. No new maintenance or license fees are required. When crafted using QAD best practices, supplemental modules will never compromise the implementation of an MFG/PRO upgrade, and will fully utilize Mfg/Pro security.
Some examples based on my experiences:
My suggestion is that you get an estimate from a consultant or employee who has already developed (perhaps several times) the equivalent to the third party solution you are considering. Double or triple the estimate, then have Finance do a cost analysis. Make sure that 100% of source code is included if developed by a consultant, and that it corresponds with QAD's best practices for the development of custom code that should never hinder the upgrade to a new release of Mfg/Pro. And, make sure it uses QAD security, or you will have a nightmare at your next SOX audit.
Printing
A Graphic Image to a Laserjet Printer from
Summary: Here are the steps for printing a graphic image, such as a logo on a report, or signature on a check, when sent to a laserjet printer. First, get a good black and white graphic image. Then, use an inexpensive utility to convert the graphic file to a PCL macro that can be sent to a printer then called from a Progress program. Then, modify the Progress report program to print the graphic as desired. Read More>>
Streamlining MRO Procurement with Mfg/Pro: There are many third-party software programs which improve the MRO (maintenance, repair, operations) procurement process in Mfg/Pro. But I have found it much more effective to maximize and supplement the functionality already in Mfg/Pro to greatly reduce manual effort in the request, approval, purchase, putaway and issuance of MRO items. This post includes a rather detailed project plan which will give you ideas for the many ways of improving the MRO process in QAD. Many of these project items can be implemented separately (and in any order) in a continuous improvement process. Read More>>
Sending emails and faxes out of Mfg/Pro. In QAD Mfg/Pro it is easy for any user to send a report to an email destination using the predefined "email" printer device. Unfortunately, the report is sent in the text portion of the email, and not as an attachment which can be opened in another PC program. For example, a CSV file can easily be opened in Excel if the file is emailed as an attachment, but not if it is within the body of an email message. Another disadvantage of QAD's approach is it does not allow you to send multiple documents to individual recipients in a single process, for example email/faxing P/Os to many different suppliers simultaneously in a single execution.
The advantages of the approach I am recommending is: 1) Allowing you to send a complex report or text document as a spreadsheet or Acrobat file attachment, instead of a read-only email body, 2) Allowing you to send multiple emails and faxes with individualized content simultaneously to many recipients in a single execution of a program. 3) Easily extends itself to a solution for Fax-enabling Mfg/Pro.