When implementing XA we always suggest a customer start with a vanilla (unmodified) system and “customize” as necessary. Often our customers confuse our “customize as necessary” statement as a suggestion to “modify” XA. Nothing could be farther from the truth. The reality is semantics. It’s important to understand the distinction between “modified” and “customized”. Let’s take a detailed look at the differences.
A modification is where actual code is “modified” to perform a task differently than initially designed by the software manufacturer. It also can be used to describe the change of the layout of a screen, a report, etc. The downside of these modifications is that with every upgrade or PTF applied, these modifications need to be reviewed and potentially reapplied. A company can easily paint itself into a corner where it is virtually impossible to upgrade due to the number of modifications. This can limit the functionality of the software and hurt the company in the long term—inability to use new features and run the risk of using non-supported software.
A customization uses the tools provided with XA (PowerLink and Enterprise Integrator) to enhance XA functionality. It can be as simple as the addition of a View, Subset, Sort, Card and/or Card file, or as complex as linking non-XA files to an XA business object. Enhancing rules for data capture, and suppressing XA warning messages for users are other examples of customizations. The benefit of a customization is it does not need to be reviewed, updated and reapplied when upgrading XA or applying PTFs.
As mentioned, customizations are used to simplify tasks. Creating custom templates for data entry and a single compound card can simplify customer order, purchase order, or manufacturing order creation. Compound cards are also used to provide information about an item master/revision, customer, or vendor record allowing you to isolate the data vital to your organization on a single card!
Customizations can also be used to provide data organized for one department differently than for another. Customer service would want to see customer data in one format, where Accounts Receivable would use completely different data in another format. These customizations can be assigned to a user or group of users (using a workspace).
So, the next time someone mentions a change to your XA environment, ask if they are suggesting a customization or a modification. Does the change have to be reviewed every time an XA upgrade occurs? Does it modify XA code or screens? Will it end up preventing a future XA upgrade? If the answer is yes then a modification is being suggested and your answer should be no. Then you can explain customizations and suggest a friendlier upgrade to better adapt the system to your needs.
Senior XA Consultant with Information Systems Engineering, Inc.