HomeGuidesRecipesAPI
HomeGuidesAPILog In

Upgrading

This article guides you through the process of upgrading an existing SmartIQ environment to a later version.

🚧

Production Upgrade

It is recommended to test the upgrade in a lower level environment (dev or test) prior to attempting a production upgrade.

❗️

After upgrade always check the upgrade log

After an upgrade is complete you must check the upgrade log table in the database. This table is called DBUpgradeLog. If any errors are detected in this table the uprgrade needs to be rolled back and tried again. Attempting to proceed with a version that did not upgrade successfully will cause issues with the product and may prevent future upgrades.

Upgrade Checklist

Below is a checklist to help prepare for upgrading SmartIQ.

📘

Develop an upgrade plan for your environment that is more specific to your needs. It is recommended that you review these items carefully to ensure you have everything in place and that the target environment is prepared according to the system requirements and recommendations.

Determine the target environment type

  • Development
  • Testing
  • Staging
  • Production
  • Other (e.g. Demo or PoC)

Server Access

  • Ensure you have full administrator access to all IIS web servers and SQL Server database servers (access the server either physically or remotely, e.g. permission to allow Remote Desktop access.)
  • Ensure you can access all SmartIQ installation media from the target servers. This may require access to an external drive, optical disc, website or FTP server, depending on where the installation media is available.
  • If applicable, confirm that any security procedures are followed to ensure there is no possible breach in gaining access to the target environment.

Upgrade Considerations

Version 14 to Version 16

  • Bootstrap Upgrade from v4 to v5. Some class names and html structure have changed which may impact custom themes and solutions.
  • PDF Format for Document Generation has changed to PDF/A-2u. Other sections like the Design document on action will refer to PDF/A as spreadsheet while PowerPoint will still use PDF/A-1b.
  • The character limit for single line Text Field Questions will default to 500 if Character Limit is left blank.
  • If Restricted Hosting Mode has been configured in cloud environments, Manage, Produce API as well as the REST and Webservice data extensions will no longer be able to use Windows authentication.

Older Versions to Version 16

  • <<productname>>Setup v{version}.msi is no longer supplied as an installer. <<productname>>.{version}.install.exe now performs both installations and upgrades.
  • Windows Offline App is now only available as appx. Previous applications of the Windows Offline App installed using msi should be uninstalled and re-installed using appx.
  • The Legacy provider model has been removed which means Action providers, Datasource providers and Custom Question providers are no longer supported as extensibility options. However, the extension equivalent such as Action, Data Connection and Custom Question Extensions are still supported.
  • Default setting “Number of Submissions to Retain Documents” has been removed. "Temporary File Storage Period (Hours)" retention setting is used to determine if a generated document is to be retained.
  • Incomplete template logs will be removed after 5 years or "Generation Log (Days)", whichever is higher.
  • Assets (files uploaded in a form) will be retained for 30 days on completed forms. They will now be deleted after 30 days if:
    • There is no active Template_Log using it
    • There is no active Workflow using it
    • There is no answer file using it
  • For security reasons, the default protocol for Redirect action will now be "https://" if the project is in v14 compatibility mode. Older compatibility modes will still use "http://".
  • Upgrading from Intelledox v5.1 through to v8 requires an intermediate step. Those sites must upgrade to IQ12 prior to an upgrade to IQ15.

Before Upgrading

  • In some cases, a downtime should be planned and communicated with your users.
  • Ensure that you have <<productname>>.{version}.install.exe. e.g <<productname>>.{version}.install.exe will upgrade SmartIQ to the latest version.
  • Take note of SmartIQApp Files exact path, web server and database server names. You will need these during the installation.
  • If Custom Development like connectors or custom solutions are already installed:
    • Ensure you have the installation media, project documentation and/or check web.config for the presence of custom components.
    • Each custom component will need to be recompiled and tested against the intended target SmartIQ version.
    • Validate and check class names and structures to align with the Bootstrap v5 upgrade.
  • If your solution has a Custom CSS:
    • Ensure this is tested against target version of SmartIQ. The Custom Themes IIS virtual directory path is installed in (Produce/App_Themes) and the physical directory now includes an additional ‘wwwroot’ subdirectory (d:\inetpub\wwwroot\Produce\wwwroot\App_Themes).
    • Validate and check class names and structures to align with the Bootstrap v5 upgrade.
  • Make sure you have a valid SmartIQ license to be applied. If you are upgrading from a version previous to v16, a temporary license file should be provided as part of the upgrade package. Then a complete license file will be provided using your Tenancy Key.
  • Microsoft ASP.NET Core 6 Hosting Bundle is required and should be present on any IIS host machine running SmartIQ the latest version.
    This bundle includes both the Core IIS Module and the Core Runtime used by Manage and Produce. See https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/iis for more information and to download the bundle.

Upgrade Process

Upgrade and Configuration

  • Perform a full backup of your App Files
  • Perform a full backup of the SmartIQ Database
  • Run Upgrade package on the IIS Web Server. Make sure you select the correct "Destination Folder" before clicking the Upgrade button.
  • For upgrading from versions previous to 12, ensure that the Produce and Manage applications have separate application pools, the .NET CLR version is set to No Managed Code and the Managed pipeline mode is set to Integrated. Refer to the installation guide for more information.
  • Access SmartIQ Manage. All data such as projects and users from the existing version of SmartIQ will be available in the upgraded version.
  • For situations where SmartIQ Produce is presented via another website as an iframe, modify the X-Frame-Options in the Produce appsettings.json file. This behavior is blocked by default.
  • Place ecosystem connector files to be deployed to SmartIQv15 in the root folders of Manage or Produce, similar to installation of custom extension files in Scheduler.
  • Check the appsettings.json configuration files for Manage, Produce and Scheduler apps and make sure that the normal connection string for all apps is now named ‘DefaultConnection’ instead of ‘ConnectionString’, except for DBO connection for Manage. This one is still named ‘DboConnection’.
  • Test solutions, themes, custom connectors, components, and integrations.

Silent Upgrade

Run the following command to install or upgrade the program:

<<productname>>.{version}.install.exe /S /D=C:\installation\path

🚧

IMPORTANT!

Switches are case sensitive.

/S – Enables silent mode without any user interface
/D – Installation/upgrade directory location for SmartIQ