To Resolve Issues While Upgrading a Customized Website
If you have a customization project that works properly for the current version of MYOB Acumatica and you need to upgrade an application instance to a newer version, the customization project might not work properly or might even prevent the website from starting after the upgrade. This happens because the code of MYOB Acumatica is continuously developed to implement new features or enhance existing functionality, so the code of an updated instance of MYOB Acumatica can become inconsistent with the code in a customization project. For example, if the signature of a method that is overridden in the customization code is changed in the original code, a run-time error may occur in the graph extension. As another example, modified or deleted database columns and tables might cause the functionality of a data access class extension to fail.
Validation Process
- In graph extensions:
- Checking the signature for each method that is overridden by using the PXOverride attribute.
- Checking the existence of each base graph.
- In data access class extensions, if a field attribute is overridden:
- Checking the field existence.
- Checking that the field type is not changed. (If the customization code uses the field value as decimal and the field type is changed, for example, from PXDBDecimal to PXDBString that is currently binding this field to a database column of the string type, an exception will occur on a request to the database.)
- In binary DLL files:
- Checking all the referenced methods, properties, fields, return types, and
signatures.Note: In some specific cases, a binary file can be updated automatically with a new signature. For example, in a referenced graph, the process updates the BQL statement that is changed for a data view. If a changed signature is detected and cannot be fixed automatically, an error is reported, and the validation fails.
- Checking all the referenced methods, properties, fields, return types, and
signatures.
This validation protects a customized website from an update that contains breaking changes and might make the website unworkable.
Upgrade of a Customized Website
- On the Application Maintenance page of the MYOB Acumatica ERP Configuration Wizard. (See Updating MYOB Acumatica by Using the Configuration Wizard for details.)
- On the Apply Updates (SM203510) form. (See Updating MYOB Acumatica by Using the Web Interface for details.)
When you start upgrading a customized instance of MYOB Acumatica to a newer version, the platform launches the validation process, to check the published customization compatibility with the new version code to detect breaking changes. If the validation fails, the platform cancels the upgrade process and shows an appropriate error message. (See Messages for Validation Errors for details.)