SymptomsWhile running pre-check scripts to upgrade an installation to PBA 5.4.8 or higher, PBA installer can fail with the following error:
CauseThis happens due to customized layout template 'paytool', found on the installation. The template should be updated as described below.
Resolution1. Open PBA DB console.
2. Find, which Online Stores under which Vendors are affected. Execute the following SQL statement:
-- select "StorePackage"."AccountID", "StoreLayout"."StoreID" from "StorePackage" inner join "StoreLayout" on "StorePackage"."StoreID" = "StoreLayout"."StoreID" where "StoreLayout"."LayoutID" = 'paytool' order by "StorePackage"."AccountID";
3. Go through the list of affected Vendors (the first column of the output). Log-in under the Vendor to PBA CP.
4. For each affected StoreID (the second column of the output) do the following:
5. Go to Top > Product Director > Online Store Manager > Stores. Select the Store for editing.
6. Go to Top > Product Director > Online Store Manager > Layout Templates.
7. Find the 'paytool' template in the list. Open it.
8. Press "Edit".
9. Search for "PayToolSystems Parameters" section in the template (use Ctrl+F). Depending on, whether such section exists, or not perform either 10.A, or 10.B step below.
10.A. "PayToolSystems Parameters" section _exists_ in the customized template.
Make changes in the template as shown here. Add lines, starting with '+'.
10.B. "PayToolSystems Parameters" section does _not_ exist in the customized template.
In this case, you need to add whole this section to the template. It should be placed almost at the end of the template. Folow the example to understand exact place of this section.
NOTE: Do not replace the customized paytool.tpl by the linked file. Just put the section in the customized paytool.tpl.
11. Save changes.
12. Do the same for all Online Stores, selected on Step 2.
13. After all Onlines Stores are updated, execute the following statement:
-- update "AddOn" set "Version" = '5.4.8-016' where "Name" = 'Online Store paytool template customization' and "Type" = 'Manual Update';
14. After these steps the precheck script should pass without errors.