Overview
This article describes the WebApp configuration conversion process from the legacy Construct to Construct Preview. The conversion process is automated and involves analyzing and validating the WebApp components, resolving configuration and compatibility issues, and ensuring that all configurations are preserved while moving assets to Construct Preview. This process will be triggered on a tenant-by-tenant basis, and the results will be available afterward on the System Administration > NextGen Construct Conversion page.
Post Conversion Checklist
You can begin validating and updating page layout (container) settings, Menu Links, WebApp Groups, Events, Datasets and Fields.
Note
Not every page in your WebApp will become a page in the Construct Preview design. Construct Preview uses a Container concept for presentation and layout.
Header-Detail pages will be converted into a vertically split pair of containers, with the original header page then the original detail page arranged in a top-to-bottom layout.
Horizontal Views will be converted into Grid containers.
Vertical Views will be converted into Property Card containers.
A page that contains both a horizontal and a vertical view will be converted into a horizontally split container, with the Grid on the left and the Property Card on the right.
Confirm that the Is Key property is toggled on for the correct key fields present in the Dataset.
If a SQL View is used for the Dataset creation, confirm the Affected Table value is correct in the Syniti Knowledge Platform’s (SKP) Catalog module. Click the button next to the Dataset list to open it in the SKP Catalog.
Review any List or Combobox fields that may have had dependent Where Clause criteria. Construct Preview does not allow free-text entries for the List Where Clause as the legacy Construct did. Instead, Construct Preview uses defined parameters to specify list filter criteria.
Review the validations and business rules registered for your page events.
Note
OnValidate events will be renamed to OnSave.
Construct Preview does not separate validations and business rules as different configuration elements. Each rule is now implemented as a Task assigned to the event of a Validation or Business Rule type.
Construct Preview uses Task dependencies, instead of Priority values, to determine the order of execution for validations and business rules.
For converted events, all Validations will be registered with no dependencies and the business rules will be dependent on the successful completion of all validations.
Review Stored Procedure validations that previously used a non-zero Return value to indicate a validation failure. They will need to be updated or replaced per the instructions given below.
Evaluate your events to determine if you had controls, business rules, or validations dependent on the boaStatus field. Event status is no longer saved directly to the record.
Assign Security to Non-Admin Users:
Each WebApp Group converted from legacy Construct will have an new Security Profile created for it in the SKP as part of the automated process. Initially, this security profile will have no User Groups or Roles assigned to it.
On the NextGen Construct Conversion page, click the Security Help
button to see the newly created security profiles in the NextGen Construct Security Help section.Click the User Groups
button next to a security profile to see the recommended User Groups that would be needed to match your legacy Construct Security Role assignments.Typically, this involves creating a User Group in the SKP Admin module for each Construct Security Role that exists in the legacy Construct.
You can then assign Roles in the SKP to these User Groups and Security Profiles. Refer to the Assign Roles and Groups to Security Profiles section for more information.
You can also use Build Assist, Syniti’s AI-powered WebApp development assistant, to converse in natural language and configure the WebApp.
Refer to Methodology Updates in Construct Preview for more information on how WebApp configuration and underlying data are referenced and managed in Construct Preview.
Re-Running the Conversion
If you need to re-run or reset the conversion process to post the latest WebApp configurations, ensure that you first delete or rename the previously converted WebApp in the WebApp Builder and then review the information given below.
Prerequisites
Ensure that the WebApp’s Datasource is associated with the correct datastore in the Syniti Knowledge Platform’s (SKP) Catalog module.
It is recommended to select the Profiling usage on the connection used for the datastore and then run a metadata scan on the datastore to retrieve the latest SQL schema and object definitions.
Reset or Create the WebApp
Access System Administration > WebApps and select the required WebApp.
Select the WebApp’s vertical menu
> Import/Export > Convert to Next Gen
. The Conversion Results page is displayed. This page is similar to the NextGen Construct Conversion page, but includes additional functionality to reset and recreate the WebApp. To enable the ability to rerun the conversion process, click the Reset
button only after renaming or deleting the existing WebApp in Construct Preview.To start the WebApp conversion analysis and process, click the Create New WebApp
button. The Conversion Results report will then be available for your review, and a link to the WebApp Builder for the newly converted WebApp in Construct Preview will be active.On the Analysis Results page, review the component types and their sub-properties that need configuration updates, identify components that are not compatible, and verify those that were converted (in Ready to Move status).
Note
The Reason column provides a detailed explanation of why a particular component may have encountered a problem and the disposition of the element.
The Converted status indicates that the components were converted to Construct Preview while preserving existing configurations, such as column input types, events, validations, link to page criteria, menu links, and other configurations.
The WebApp conversion is now successful.
Note
This conversion process is highly dependent on a successful, recent datastore scan of the database hosting the WebApp’s SQL objects. Incorrect or incomplete database schema or SQL objects, such as views and stored procedures, in the datastore scan will require additional configuration work for the new WebApp in Construct Preview.
Click the WebApp Link to access the converted WebApp configuration in Construct Preview.
Note
Only compatible column input types are converted and created as Datasets in Construct Preview.
Stored Procedure Validations
Instead of a RETURN statement, a stored procedure validation needs to have a THROW statement. Unfortunately, a Stored Procedure Validation can only display (THROW) an error or return (RETURN) an integer value, you may need to create a copy and replace the RETURN statement with a THROW statement as shown in the example below.
CREATE PROCEDURE [dbo].[webCustomerMaster_TAXJURCODE_ConstructPreviewVersionVal]
@ID INT,
@KTOKD NVARCHAR(4)
AS
BEGIN
DECLARE @TaxCode NVARCHAR(255)
SELECT @TaxCode = COALESCE(TAXJURCODE, STCD1, STCD2)
FROM ttCustomerMaster
WHERE
ID = @ID
AND
KTOKD = @KTOKD
IF @TaxCode = '' OR @TaxCode IS NULL
--RETURN 1 --This is now replaced by a THROW statement.
THROW 99999,'Missing Tax Code',1
END