Skip to content

9.6.2 for Common Blocks 9.6.0

Latest
Compare
Choose a tag to compare
@mvulcano-ptc mvulcano-ptc released this 15 Oct 19:20
4f9c8ec
  • Added Sorting/Filtering to various tables in the permissions section of the building block details page
  • Updated the README to better reflect what contents of the solution framework package is and isn't supported by PTC Tech Support
  • Note: Outlier Permissions User Groups are still provided in the artifacts below. If you have trouble importing the Base Permissions block due to a circular dependency issue, these User Groups need to be added to the permissions block. Please see the 1.2.004 release for an example.

Disclaimer

By downloading this software, the user acknowledges that it is unsupported, not reviewed for security purposes, and that the user assumes all risk for running it.

Users accept all risk whatsoever regarding the security of the code they download.

This Software is not officially supported by PTC

PTC will not accept technical support cases logged related to to this Software

ThingWorx R&D will not be responsible for any code on the PTC GitHub repository.

PTC has not performed its full breadth of testing and quality assurance on this software.

This Software has not been released for general distribution or sale.

This Software may not be compatible with any existing or future commercial release versions of PTC software.

PTC is under no obligation to and may never commercially release this software or other software containing functionality contained in this Software.

PTC is not responsible for any maintenance for this software.

Overview

The Solution Framework is a solution developed by PTC Digital Transformation Solutions Engineering team that allows for the creation, modification, configuration, and securing of Solution Building Blocks. Use this solution to:

  • Create new building blocks
  • Extend/Customize Out-of-the-Box building blocks
  • View installed building block information, including initialization status and containing entities
  • Configure various building block configurations
  • Implement and customize security permissions for the various assets contained in installed building blocks

Package Contents

The 'Solution Framework' extension package contains the following building blocks/extensions:

Building Block Name Developing Organization Supported Status Version
PTC.Base PTC R&D Supported 9.6.0-b1
PTC.UserManagement PTC R&D Supported 9.6.0-b1
PTC.DBConnection PTC R&D Supported 9.6.0-b1
PTC.ModelManagement PTC R&D Supported 9.6.0-b1
PTC.ModelManagementImpl PTC R&D Supported 9.6.0-b1
PTC.DefaultConnection PTC R&D Supported 9.6.0-b1
ptc-thingview-extension PTC R&D Supported 1.95.3
PTCDTS.Base PTC DTS Not Supported 9.6.2
PTC.ComponentManagement PTC DTS Not Supported 9.6.2
PTC.UpgradeManagement PTC DTS Not Supported 9.6.2
PTC.DatabaseManagement PTC DTS Not Supported 9.6.2
PTC.DatabaseManagementUI PTC DTS Not Supported 9.6.2
PTCDTS.CustomizationAnalysis PTC DTS Not Supported 9.6.2
PTCDTS.UserManagementUI PTC DTS Not Supported 9.6.2
hierarchy-graph PTC DTS Not Supported 9.6.0
PTC.SolutionFramework PTC DTS Not Supported 9.6.2
PTCDTS.Base.Permissions PTC DTS Not Supported 9.6.201

All 'Not Supported' building blocks/extensions are subject to the above Disclaimer.

  • dpm-permissions-extension-9.6.201.zip - Single extension containing all permissions and roles for DPM 9.6.0. Requires Solution Framework to be installed to use.
  • Note: This zip will override the ptcdts.base.permissions-9.6.2 extension with a new security block that contains security not only for the Common Blocks/Solution Framework, but also the security for DPM as well.

Installation Prerequisites

The following requirements must be satisfied before the Solution Framework can be installed:

  • A ThingWorx 9.6.0 Server or newer must exist and the installer must have composer access
  • ThingWorx must be configured to allow importing extensions
  • PTC Solutions Common Building Blocks must be installed prior to installing the Solution Framework
  • Solution Framework is licensed with the 'PTC_Solution_Common' entitlement. ThingWorx must be registered with a valid license that contains this entitlement to import this extension.

The following requirements must be satisfied before DPM Permissions can be installed:

  • DPM 9.6.0 is installed and initialized
  • Solution Framework 9.6.2 is installed and initialized.

Installation Steps

The following steps walk through how to install the Solution Framework:

  • Download the extension archive
  • Log into ThingWorx Composer as an Administrator that has access to import extensions
  • In the left-side navigation menu, click on the Import/Export button (Diverging Arrows Icon)
  • Click the Import Sub-Menu
  • In the popup that displays, change Import Option to Extension
  • Click the Browse button and navigate to the location the downloaded solutionframework-9.6.2-extension-package.zip file
  • Select the zip archive and click the open button
  • Click the Import button. A confirmation should appear that the import was successful. Close the popup.
  • Navigate to PTC.Base.Manager
  • Click on the Services tab.
  • Click the 'Execute' button next to the 'InitializeSolution' service
  • Run with the following JSON Structure:
  • {
    "databaseUser": "<TWX_DB_USER_NAME>",
    "overrideComponentDeploymentState": false,
    "databasePassword": "<TWX_DB_USER_PASSWORD>",
    "databaseJDBCString": "<TWX_DB_JDBC_STRING>",
    "databaseThing": "Either PTC.DBConnection.SQLThingDatabase or PTC.DBConnection.PostgresDatabase"
    }

The following steps walk through how to install the DPM Permissions extension package:

  • Download the dpm-permissions-extension-9.6.201.zip extension package
  • Log into ThingWorx Composer as an Administrator that has access to import extensions
    • Note: if you receive an error that the dpm-permissions-extension-9.6.201.zip extension could not be imported into the system, you may need to remove the old extension first
      • Navigate to Manage -> Installed Extensions using the right side navigation menu
      • Find the PTCDTS.Base.Permissions extension and remove it
  • In the left-side navigation menu, click on the Import/Export button (Diverging Arrows Icon)
  • Click the Import Sub-Menu
  • In the popup that displays, change Import Option to Extension
  • Click the Browse button and navigate to the location the downloaded permissions extension package file
  • Select the zip archive and click the open button
  • Click the Import button. A confirmation should appear that the import was successful. Close the popup.
  • Navigate to PTC.Base.Manager
  • Click on the Services tab.
  • Click the 'Execute' button next to the 'InitializeSolution' service
  • Run with the following JSON Structure:
  • { } - Note this is an empty JSON object. This is intentional.
  • An admin needs to provide visibility permissions to PTCDTS.Base.Permissions.Default_OR for the network containing the asset hierarchy. This generally has the same name as the Enterprise. This should be done in Composer.

Usage

Open and view the PTC.SolutionFramework.Main_MU mashup to launch the Solution Framework user experience. It is also possible to get to the Solution Framework when viewing other solutions, by clicking on the 'Solution Framework' menu item on the Main Solution Master Navigation Menu.

In order to use the User Management UI mashup:

    1. The user must be in the Application Admin Role
    1. The user must navigate to the Administration Menu and select the User List menu option

The DPM Permissions block contains read-only and full access roles for each application inside of DPM. Leverage the Solution Framework -> Global View -> Role Management page to add users to these roles. This will provide access to DPM for non-admin users.

Users can also be added to roles via the DPM Administration -> User Management -> User List page.

Using the Upgrade Impact Report

The Upgrade Impact Report can be used by developers to determine if any of their customization/configurations is in conflict with a change in an OOTB solution between versions.

  • Stand up a Development environment with current version of DPM + Customizations
    • Note: This is recommended but not necessary
  • Deploy Solution Framework (which includes PTC.UpgradeManagement)
  • Navigate to the Upgrade Impact Report mashup (Solution Framework → Global View → Upgrade Management → Upgrade Impact Report)
  • Click the Store In Cache Button to cache the current codebase
    • Note: This can only be done if the cache is empty. If it is not empty you will need to click the Purge Cache Button
    • Note: This may take a few minutes
  • Upgrade DPM following official DPM documentation
  • Navigate back to the Upgrade Impact Report mashup
  • Click the Compare to Cache Button to compare the current version of the solution to the cached version
    • Note: This may take a few minutes
  • Once the compare has been completed a list of impacted services and configurations will appear in the Impacted Items table.
    • Services
      • This list shows all services that were updated during the upgrade AND have been overridden via an implementation building block
      • Selecting an impacted service will display all locations where the service was overridden in the Inherited Locations table
    • Configurations
      • This list also shows all configurations that were updated during the upgrade regardless of if they have been changed or not.
      • Selecting an impacted configuration will display all locations (including itself) where this configuration table is inherited in the Inherited Locations table
    • Deprecations
      • This list also shows all the entities and services that were deprecated in the upgrade AND have been inherited from/overridden
      • Selecting an impacted deprecation will display all locations where the entity is inherited or the service is overridden
  • Selecting a row in the Inherited Locations table will enable the Compare Items button (This is hidden for deprecations)
  • Clicking this button will display a popup that will show the cached, current, and custom (if available) versions of the service code or configuration.
  • It is recommended to copy and paste these versions into a 3rd party comparison tool to determine where exactly changes have occurred in the code.

Using the Customization Analysis Report

The Customization Analysis building block will allow the developer to see a list of any Mashup Duplications, Overridden Services, and Service API calls from any custom developed building block. This report is useful to gain insight into any customizations that have been done to OOTB building blocks for Upgrade purposes

Follow these steps to use the Customization Analysis Report

  • Navigate to the PTC.SolutionFramework.Main_MU mashup
  • Click on the 'Global View' button at the top right corner of the screen
  • In the Left side menu shown, select Customization Analysis - > Customizations
  • Select the different tabs to see either Mashup Duplications, Service Overrides, or External Service Calls.
  • Click the matching button to export the data as a CSV spreadsheet

Using the Package Management feature

The Package Management feature allows for exporting building blocks as extension package with a few button clicks. This is to simplify the export process.

To use the Package Management feature, follow these steps:

  • Navigate to the PTC.SolutionFramework.Main_MU mashup
  • Click on the 'Global View' button at the top right corner of the screen
  • Select Import/Export -> Packages
  • A list of already created packages is available in the table shown. Select the 'Download Link' to download the package.
  • To create a new package, select the 'Create Package' button
  • In the popup shown, select one or more custom building blocks to add to the package.
    • Note, only custom blocks will show up here. No OOTB blocks will be allowed for export
  • Give the package a name at the bottom of the popup, and press the create button
  • The new package should show in the main page, and be available for download

To use Package Management to export Security Components, follow these steps:

  • Navigate to the PTC.SolutionFramework.Main_MU mashup
  • Click on the 'Global View' button at the top right corner of the screen
  • Select Import/Export -> Packages
  • Click the 'Create Permissions Package' button
  • The security block will be generated for you and will be available for download
    • By design, this block will export security for the entire solution into a single extension that can be moved from server to server.

License

PTC Proprietary Freeware License

I accept the PTC End User License Agreement (https://www.ptc.com/en/documents/legal-agreements/on-premise-license-agreements) and agree that any software downloaded/utilized will be in compliance with that Agreement. However, despite anything to the contrary in the License Agreement, I agree as follows:

I acknowledge that I am not entitled to support assistance with respect to the software, and PTC will have no obligation to maintain the software or provide bug fixes or security patches or new releases.

The software is provided “As Is” and with no warranty, indemnitees or guarantees whatsoever, and PTC will have no liability whatsoever with respect to the software, including with respect to any intellectual property infringement claims or security incidents or data loss.