Distribuzione dei building block mediante la pagina PTC Software Download
In questo scenario, il database e ThingWorx vengono installati nel sistema e l'utente distribuisce i building block nell'istanza di ThingWorx scaricandoli dalla pagina PTC Software Download e importando il package di estensioni in ThingWorx.
Completare la procedura descritta nelle sezioni seguenti:
Prerequisiti
Prima di distribuire i building block, completare i prerequisiti riportati di seguito.
Esaminare i requisiti di sistema dei building block, incluse le versioni di ThingWorx compatibili. Per ulteriori informazioni, vedere Requisiti di sistema.
Esaminare i requisiti di sistema di ThingWorx per una versione compatibile di ThingWorx. Per ulteriori informazioni, vedere Requisiti di sistema in ThingWorx Help Center.
Installare una versione compatibile di ThingWorx. Per ulteriori informazioni, vedere Installazione di ThingWorx.
Configurare ThingWorx per attivare l'importazione delle estensioni. Per ulteriori informazioni, vedere Importazione di estensioni in ThingWorx Help Center.
Accertarsi che il fuso orario del server ThingWorx sia impostato su UTC. Per ulteriori informazioni, vedere Installare Java, Apache Tomcat e ThingWorx in ThingWorx Help Center.
Applicare la licenza. Per ulteriori informazioni, vedere Licenze per ThingWorx Platform in ThingWorx Help Center.
Se si installa il database in Linux, installare lo strumento sqlcmd.
Installare Microsoft SQL Server Management Studio. Per ulteriori informazioni, vedere https://docs.microsoft.com/en-us/sql/ssms/download-sql-server-management-studio-ssms?view=sql-server-ver15.
Aggiornamento dell'impostazione di timeout dello script
Per aggiornare l'impostazione di timeout dello script, un amministratore di ThingWorx deve attenersi alla procedura descritta di seguito.
1. Sul server ThingWorx, passare alla cartella ThingWorxPlatform.
2. Aprire il file platform-settings.json in un editor di testo.
3. Individuare e aggiornare l'impostazione ScriptTimeout a 1200.
4. Salvare e chiudere il file platform-settings.json.
5. Riavviare il server ThingWorx.
* 
Se il log script contiene un messaggio simile al seguente, ripetere i passi precedenti per aumentare ulteriormente l'impostazione di ScriptTimeout:
[message: Execution of Script terminated after : 1200 seconds. Timeout configured for 1200 seconds.]
Per ulteriori informazioni, vedere Dettagli di configurazione di platform-settings.json in ThingWorx Help Center.
Aggiornare le impostazioni del timeout di sessione
Per default, il timeout delle sessioni utente inattive è 30 minuti.
Per modificare l'impostazione di timeout della sessione, un amministratore di ThingWorx deve attenersi alla procedura descritta di seguito.
1. In ThingWorx, passare a Sistemi > Sottosistemi.
2. Aprire UserManagementSubsystem in modalità di modifica.
3. In Configurazione, modificare l'impostazione Timeout sessioni inattive (min).
4. Fare clic su Salva.
5. Riavviare il server ThingWorx.
Installare il driver JDBC per MS SQL
Se l'istanza di ThingWorx è configurata con PostgreSQL come provider di persistenza, attenersi alla procedura riportata di seguito per installare il driver JDBC per MS SQL. Se l'istanza di ThingWorx è configurata con MS SQL come provider di persistenza, passare alla sezione successiva.
1. Scaricare la versione compatibile con JRE11 di Microsoft JDBC Driver 7.4.1 for SQL Server dal seguente link: https://docs.microsoft.com/en-us/sql/connect/jdbc/microsoft-jdbc-driver-for-sql-server-support-matrix?view=sql-server-ver15#sql-version-compatibility.
2. Copiare il file JAR JDBC nella directory lib di installazione di Tomcat (<HOME_TOMCAT>/lib).
3. Riavviare il server Tomcat per caricare il driver JDBC in modo da renderlo disponibile per ThingWorx.
Creare il database dei building block e l'utente del database
Attenersi alla procedura descritta di seguito.
1. Creare l'accesso e la password dell'utente del database dei building block nel database master. Attenersi alle indicazioni sulla complessità della password per il database.
Per Windows, utilizzando il comando Transact-SQL nell'editor di query di Microsoft SQL Server Management Studio:
CREATE LOGIN <bbadmin> WITH PASSWORD = '<password>';
Nel comando precedente, sostituire <bbadmin> e <password> con l'accesso e la password dell'utente del database dei building block.
In ambiente Linux:
1. Aprire il prompt dei comandi nel client Linux.
2. Utilizzare i seguenti comandi per creare l'accesso su SQL Server:
sqlcmd –S <database-server-name> -U <sql-administrator-username> -P <sql-administrator-password> \
-Q "create login <bbadmin> with password = '<bbadmin-password>'" \
GO; \
exit
Nei comandi precedenti, sostituire <database-server-name> con il nome del server di database, <sql-administrator-username> e <sql-administrator-password> con il nome utente e la password di amministratore SQL, <bbadmin> e <bbadmin-password> con l'accesso e la password dell'utente del database dei building block.
2. Creare il database di Microsoft SQL Server (MSSQL) che sarà utilizzato dai building block.
Per Windows, utilizzando i comandi Transact-SQL nell'editor di query di Microsoft SQL Server Management Studio:
CREATE DATABASE <bbdb> COLLATE SQL_Latin1_General_CP1_CI_AS;
ALTER DATABASE <bbdb> SET READ_COMMITTED_SNAPSHOT ON;
ALTER DATABASE <bbdb> SET ALLOW_SNAPSHOT_ISOLATION ON;
ALTER DATABASE <bbdb> SET ARITHABORT ON;
Nei comandi precedenti, sostituire <bbdb> con il nome del database.
In ambiente Linux:
1. Aprire il prompt dei comandi nel client Linux.
2. Utilizzare i seguenti comandi per creare il database SQL Server, sostituendo le variabili con il nome del server di database e il nome utente e la password di amministratore SQL:
sqlcmd –S <database-server-name> \
-U <sql-administrator-username> -P <sql-administrator-password> \
-Q "create database <bbdb> COLLATE SQL_Latin1_General_CP1_CI_AS; ALTER DATABASE <bbdb> SET READ_COMMITTED_SNAPSHOT ON; ALTER DATABASE <bbdb> SET ALLOW_SNAPSHOT_ISOLATION ON;ALTER DATABASE <bbdb> SET ARITHABORT ON"
Nel comando precedente, sostituire <database-server-name> con il nome del server di database, <sql-administrator-username> e <sql-administrator-password> con il nome utente e la password di amministratore SQL e <bbdb> con il nome del database.
3. Creare un utente del database per l'accesso creato al passo 1. Utilizzare lo stesso nome per l'utente del database utilizzato per l'accesso.
Per Windows, utilizzando il comando Transact-SQL nell'editor di query di SQL Server Management Studio aperto per il database creato al passo 2:
CREATE USER <bbadmin> FOR LOGIN <bbadmin>;
ALTER ROLE [db_owner] ADD MEMBER <bbadmin>;
Nel comando precedente, sostituire <bbadmin> con il nome per l'accesso creato al passo 1.
In ambiente Linux:
1. Aprire il prompt dei comandi nel client Linux.
2. Utilizzare i seguenti comandi per creare un utente del database per il database dei building block, sostituendo le variabili con il nome del server di database e il nome utente e la password di amministratore SQL:
sqlcmd –S <database-server-name> \
-U <sql-administrator-username> -P <sql-administrator-password> \
-Q "use <bbdb>; create user <bbadmin> for login <bbadmin>;ALTER ROLE [db_owner] ADD MEMBER <bbadmin>"
Nei comandi precedenti, sostituire <database-server-name> con il nome del server di database, <sql-administrator-username> e <sql-administrator-password> con il nome utente e la password di amministratore SQL, <bbdb> con il nome del database e <bbadmin> con il nome per l'accesso creato al passo 1.
Scaricare i building block mediante la pagina PTC Software Download
Attenersi alla procedura descritta di seguito.
1. Passare alla pagina PTC Software Download al seguente URL: https://support.ptc.com/appserver/auth/it/esd/index.jsp.
2. Selezionare ThingWorx Foundation.
3. Espandere le seguenti cartelle: ThingWorx Foundation > Release 9.3 > ThingWorx Manufacturing Common 1.1 > Most Recent Datecode.
4. Scaricare il file ZIP MFG-Common-1-1 del package di estensioni.
Importare i building block
Per importare i building block, un amministratore di ThingWorx deve attenersi alla procedura descritta di seguito.
1. Accertarsi che la licenza sia installata in ThingWorx Composer. Per ulteriori informazioni, vedere questo articolo del supporto tecnico nella knowledge base di PTC.
2. In ThingWorx Composer, fare clic su Importazione/Esportazione > Importazione.
3. Nella finestra Importazione selezionare Estensione nell'elenco Opzione di importazione.
4. In Nome file fare clic su Sfoglia. Cercare e selezionare il file ZIP del package di estensioni scaricato nella sezione precedente.
5. Fare clic su Importa. Al termine dell'importazione, fare clic su Chiudi.
6. Per visualizzare le estensioni dei building block dopo l'importazione, passare a Gestione > Estensioni installate.
Eseguire il servizio InitializeSolution
Eseguire il servizio InitializeSolution per configurare l'oggetto database per la connessione al database dei building block, creare le tabelle di database e registrare gli oggetti manager per i building block.
Per eseguire il servizio, un amministratore di ThingWorx deve attenersi alla procedura descritta di seguito.
1. In ThingWorx Composer, passare all'oggetto PTC.Base.Manager.
2. Ottenere i parametri di configurazione.
a. In Servizi, individuare ed eseguire il servizio GetSolutionDeploymentConfigurationParameters. L'output del servizio è un JSON contenente i parametri di configurazione necessari per il servizio InitializeSolution, basato dinamicamente sull'insieme di building block presenti. Il JSON di output del servizio è simile al seguente:
{
"databaseUser": {
"types": [
"STRING"
],
"description": "Name of the database user used for DPM database Thing",
"optional": false
},
"twxAdminUserName": {
"types": [
"STRING"
],
"description": "Thingworx Admin Username",
"optional": false
},
"overrideComponentDeploymentState": {
"types": [
"BOOLEAN"
],
"description": "If true, the current component deployment state is ignored and the DeployComponent service will be rerun.",
"optional": true
},
"twxAdminPassword": {
"types": [
"STRING"
],
"description": "Thingworx Admin Password",
"optional": false
},
"databasePassword": {
"types": [
"STRING"
],
"description": "Password of the database user used for DPM database Thing",
"optional": false
},
"twxURL": {
"types": [
"STRING"
],
"description": "Thingworx URL",
"optional": false
},
"databaseJDBCString": {
"types": [
"STRING"
],
"description": "JDBC Connection String for the DPM database Thing",
"optional": false
},
"databaseThing": {
"types": [
"STRING"
],
"description": "The default database thing (PTC.DBConnection.MSSQLDatabase)",
"optional": true
}
}
b. Copiare il JSON restituito nell'output del servizio e incollarlo in un editor di testo.
c. Modificare il JSON, sostituendo il contenuto tra le parentesi graffe per ciascun parametro di configurazione con il valore specifico del sito.
databaseUser - Nome di accesso dell'utente del database con diritti di amministrazione del sistema.
twxAdminUserName - Nome dell'utente amministratore di ThingWorx.
twxAdminPassword - Password per l'utente amministratore di ThingWorx.
databasePassword - Password di accesso dell'utente del database con diritti di amministrazione del sistema.
databaseJDBCString - Stringa di connessione JDBC per il database dei building block.
twxURL - URL dell'istanza di ThingWorx.
databaseThing - Oggetto database di default (PTC.DBConnection.MSSQLDatabase).
Il seguente è un esempio di JSON modificato:
{
"databaseUser": "<bbadmin>",
"twxAdminUserName": "Administrator",
"twxAdminPassword": "<twxadminpassword>",
"databasePassword": "<password>",
"databaseJDBCString": "jdbc:sqlserver://<databaseHost>:<databasePort>;databaseName=<bbdatabaseName>",
"twxURL": "http://<host>:<port>/Thingworx",
"databaseThing": "PTC.DBConnection.MSSQLDatabase"
}
Il seguente è un esempio di JSON modificato con valori effettivi:
{
"databaseUser": "BBadmin",
"twxAdminUserName": "Administrator",
"twxAdminPassword": "ThingWorx!BB9876",
"databasePassword": "945DaTaBase!39525",
"databaseJDBCString": "jdbc:sqlserver://localhost:1433;databaseName=dpmdb",
"twxURL": "http://MyCompany.com:8080/Thingworx",
"databaseThing": "PTC.DBConnection.MSSQLDatabase"
}
3. In Servizi, individuare ed eseguire il servizio InitializeSolution utilizzando il JSON modificato al passo 2.c come parametro di input deploymentConfig per il servizio.
Al termine del servizio, l'output visualizza una infotable che elenca i building block distribuiti e il relativo stato di configurazione: Configured, Not Configured o Error. Se sono presenti building block in stato Error o Not Configured, completare i passi di risoluzione dei problemi riportati di seguito.
a. Accertarsi che le credenziali del database specificate nel JSON siano valide, quindi eseguire il servizio InitializeSolution.
b. Se sono ancora presenti building block in stato Error o Not Configured nell'output del servizio, esaminare i log degli errori di script e applicazione ThingWorx e risolvere gli eventuali errori trovati. Eseguire quindi il servizio InitializeSolution.
c. Se sono ancora presenti building block in stato Error o Not Configured nell'output del servizio, aggiornare il JSON in modo da includere quanto segue ed eseguire il servizio InitializeSolution:
"overrideComponentDeploymentState": true
Eseguire il servizio UpdateDBSchema
Eseguire il servizio UpdateDBSchema per applicare i vincoli necessari alle tabelle di database.
Per eseguire il servizio, un amministratore di ThingWorx deve attenersi alla procedura descritta di seguito.
1. In ThingWorx Composer, passare all'oggetto PTC.DBConnection.Manager.
2. In Servizi, individuare ed eseguire il servizio UpdateDBSchema.
Al termine del servizio, nel riquadro di output del servizio viene visualizzata una infotable contenente gli aggiornamenti del database.
È stato utile?