|Stable release||3.0.1 / July 11, 2008|
OpenMFG (usually abbreviated "OMFG") is an open source based, fully integrated accounting, ERP, and CRM enterprise software solution, from xTuple.
Built with the open source PostgreSQL database, and the open source Qt framework from Trolltech for C++, it provides functionality for a range of businesses and industries. It includes the following modules:
- Accounting (multi-company, general ledger, accounts receivable and payable, bank reconciliation, financial reporting)
- Sales (quotes, order entry, sales reporting, shipping)
- CRM (universal address book, incident management, opportunity management, to-do lists, project management)
- Purchasing (purchase orders, receiving, vendor reporting)
- Product Definition (items, infinite-level bills of material, bills of operations, breeder bills of material, costing)
- Inventory (multiple facility, multiple locations, other advanced warehouse features)
- Manufacturing (work orders, support for make-to-order, make-to-stock, repetitive)
- Planning (Manufacturing Requirements Planning-MRP, Master Production Scheduling-MPS, Buffer Management-TOC)
- OpenRPT open source report writer
OpenMFG runs on Windows, Linux, and Mac - and is internationalized (multi-currency, support for multiple tax structures, and multilingual translation packs maintained by a global community).
OpenMFG is licensed under the "xTuple Commercial End User License".
OpenMFG is a manufacturing-centric enterprise resource planning solution which includes functionality to cover business processes for multiple manufacturing segments, customer relationship management, and accounting. The company utilizes open source technologies, and an open source development philosophy to offer its customers a hybrid open source/proprietary solution. The OpenMFG Community (customers, VARs, development partners), all get the source code and have the ability to contribute back to the base application.
The two tier design of the OpenMFG intentionally places the burden of transaction processing on the server - specifically the database server. All the business logic resides in the procedural language of the open source database PostgreSQL, allowing for a variety of client interfaces and scalability unbound by client-side limitations. The primary interface today is a full, rich graphical user interface (GUI) client - this allows for a client that looks and feels exactly the same on Windows, Linux/Unix, and Mac.
OpenMFG GUI Client
The GUI client is written in Qt, from Trolltech, headquartered in Norway. Qt is a C++ toolkit for application development. It lets application developers target all major operating systems (Windows, Linux/Unix, Mac) with a single application source code. Qt provides a platform-independent API to all central platform functionality: GUI, database access, networking, file handling, etc. The Qt library encapsulates the different APIs of different operating systems, providing the application programmer with a single, common API for all operating systems. The native C APIs are encapsulated in a set of object-oriented C++ classes.
OpenMFG Server/Business Logic
The OpenMFG application make heavy use of Postgres' embedded procedural language, called PL/pgSQL. Whenever any kind of transaction is taking place in the system - a financial account being credited or debited, a piece of inventory being moved, or an order being taken - that is happening in a Postgres stored procedure, trigger, or function. This approach makes it relatively easy for other client software besides the OpenMFG graphical client to access business functionality. xTuple partners and customers have developed various alternative interfaces to access the Postgres backend database, including Web portals, wireless devices, and desktop office productivity software.