Software development never stands still. I remember a time where I felt like I had finally come to understand DataSets, DataTables, DataRows and DataViews, only to have a much more experienced developer inform me that the System.Data namespace was old, antiquated, and no longer used in the development of cutting-edge applications. I had walked the prescribed trail, only to realize that it dead-ended in a software swamp.
The implications of such rapid movements in application development are significant, as software vendors often find themselves down similar dead ends and are forced to backtrack their way out of them. I liken software applications to my great-grandaddy’s venerable old axe: two new heads and seven new handles later, yet still seen by everyone in the family as the same axe.
Like the axe, Epicor’s Prophet 21 ERP application has been refitted over time. P21 helps distribution companies with a variety of features and capabilities. But like many such applications, the vendor found that over time, there was a need to reshape the application as to better position it for future use. Limitations to the existing architecture could not support the long-term needs of the industry. For that reason, Epicor has been reworking and fine-tuning its P21 architecture, moving towards a more scalable, interoperable and accessible application. Understanding where P21 has been and where it’s going can be of great use for customers, as to help them chart a course for the future.
The Old Prophet 21
Epicor’s E10 application followed an infrastructure that separated the user client, the application server, and the database itself. For someone coming from Epicor 10, P21’s original architecture might look a little strange. Traditionally, P21 employed a fat client architecture, in which a large amount of business logic was housed in the 32-bit client itself, and this client communicated with the database. A liability of this approach was the difficulty in deploying a full API that could be accessed externally. Also, this model created natural limits to the number of clients that could share a single terminal server, due to the size and scope of the fat client.
The New Epicor Model
As Epicor sought to develop a more robust and accessible platform, changes were made both to the client and the overall architecture. Epicor’s updated architecture inserted a new layer, referred to as the “Middleware Server,” that serves as an intermediary between the client and the database, and provides the foundation for API-level interactions.
Logic that had previously resided in the “fat client” desktop version was moved into the middleware layer. This architecture more closely resembles Epicor’s E10 application server-based architecture. Communication with the middleware server occurs using Secure Socket Layer (SSL) protocol. This allows you to connect without the need for direct access to the network or a VPN connection. A web connection and an SSL certificate are all you need.
Beyond the API benefits, another benefit of this approach comes from performance, as the middleware server supports as much as twice as many clients as can be supported by a terminal server with the traditional fat client. For customers with high user counts, Prophet 21’s new architecture supports multiple load-balanced middleware servers.
Client Types: Understanding Your New P21 Options
From a client interaction perspective, two new options were developed to support the new architecture:
- Web Client: The web client is a browser-based capability, allowing customers to access their system from a PC, a tablet or a mobile device.
- Hybrid Client: The hybrid client meets the needs of customers who like the look and feel of a traditional desktop application, but wish to leverage the capabilities and features of the updated web client. The hybrid client installs like a normal Windows application, and connects directly to the middleware server, without the use of a browser.
Desktop Client – A Line in the Sand
Initially, Epicor’s web client lacked some of the functionality available with the traditional client, making things like DynaChange screen modifications difficult to accomplish without a traditional client. But as Epicor ramped up the capabilities of the web client, these differences have fallen off, such that as of spring of 2021, new P21 features will be available only in the web and hybrid clients.
Epicor will slowly migrate away from traditional desktop application. By the fall 0f 2021, Epicor will no longer develop and release new versions of the desktop client. By the end of the year, Epicor will no longer release fixes for the desktop client. For P21 customers, this will require all users to migrate to the new architecture, both to retain support and to capitalize on the benefits of the newer releases.
The bottom line for P21 customers is clear: they can migrate to the new architecture or else work on the legacy platform, in an unimproved and unsupported state. In making this move, there are a few additional considerations to be made relative to the Prophet 21 deployment options available.
SaaS or Private Cloud Hosting for Epicor P21 Applications
Customers may opt to choose Epicor’s SaaS solution and place their application under Epicor’s control. This amounts to making two significant shifts, and many customers may not be sufficiently confident in Epicor’s SaaS solution to make the move. For customers suspect of SaaS, but looking for cloud options to host their new P21 architecture, private cloud hosting for ERP combines the new architecture with P21’s full functionality, without the hardware investments that come with an on-premise install.