# Esportazione e importazione di variabili

Nel software di modifica schermate si possono eseguire esportazione e importazione di variabili globali usando la barra strumenti dell’editor delle Variabili. Le proprietà di allarmi e di registrazioni fanno parte degli elementi esportati. L'esportazione e l'importazione di variabili locali non sono supportate.

Nota:

- Sebbene sia possibile importare dati esportati come file CSV o TXT dal software di modifica schermate versione 3.3 Service Pack 1 o precedente nel software di modifica schermate versione 3.4 o successiva, i file esportati dalla versione 3.4 o successiva non possono essere importati nella versione 3.3 Service Pack 1 o precedente, in quanto la versione del file è 2.0.
  Controllare la versione del file delle emissioni CSV o TXT nella linea [FileVersion] del file di emissione.
- I file Excel sono supportati per l'esportazione e l'importazione delle variabili dalla versione 4.4 in poi.

I seguenti formati di file sono supportati per l'importazione e l'esportazione delle variabili:

- File TXT (.txt, UTF-8 (senza BOM))
- File CSV (.csv, UTF-8 (senza BOM))
- File Microsoft Excel (.xlsx)

Nota:

File Microsoft Excel

- Per esportare e importare variabili nei file Excel, è necessario Microsoft Excel. Il software di modifica schermate supporta Microsoft Excel 2016, 2019 e 365.
- Quando si esportano le variabili nel file Excel, è possibile impostare una password per crittografarle. Si consiglia di impostare una password complicata. Se si dimentica la password, non è possibile recuperarla.
- Il software di modifica delle schermate non supporta la gestione dei diritti di informazione (IRM) di Excel.

File TXT o CSV

- Quando si esportano le variabili nei file TXT o CSV, selezionare il delimitatore.
- I file TXT o CSV salvati usando codifiche diverse da UTF-8 (senza BOM) non possono essere importati.
- Per informazioni sui formati di file, vedere quanto segue.
  Impostazioni del file di salvataggio dati (Esportazione)

È possibile vedere il file esportato con programmi software come Microsoft Excel.

Nota:

L'emissione dei dati è formattata come segue:

- Le stringhe sono incapsulate da doppi apici (").
  Per esempio, "Questa è una stringa"
- I caratteri speciali "=", "+", "-", "@", TAB e ENTER che appaiono all'inizio di una voce sono preceduti da un apostrofo (').
  Per esempio, "'=1+2"

## Note sull'importazione delle variabili

- Durante l'importazione, se c'è già una velocità di scansione con lo stesso nome, si crea la nuova velocità di scansione con l'intervallo dal file esportato. Se nel progetto la velocità di scansione è già presente, la velocità di scansione viene aggiornata.
- Quando si importa un file esportato dal software di modifica schermate versione 3.1 Service Pack 1B o precedente, alle variabili esterne viene assegnata la velocità di scansione predefinita. Per informazioni sulle velocità di scansione, fare riferimento a quanto segue.
  Impostazione intervalli di lettura dei valori delle variabili esterne (velocità di scansione)
- Le variabili importate tramite l'importazione dei file di simboli non possono essere aggiornate con il comando importazione variabile. Per aggiornare le variabili nel File Symbol, fare riferimento a quanto segue.
  Importazione di simboli da dispositivi esterni - Note dopo l'importazione del File Symbol
- Non è possibile importare variabili in un progetto che contiene File Symbol. Per importare le variabili, procedere come segue.
  1. Rimuovere il File Symbol dal progetto.
  2. Esportare le variabili dal progetto.
  3. Importare le variabili nel progetto.
  4. Importare il File Symbol nel progetto.

- Esiste una convenzione di denominazione per i nomi delle variabili nel software di modifica schermata.
  Se il nome di una variabile contiene caratteri che non seguono la convenzione di denominazione, la variabile non viene importata.
  Per i dettagli, vedere di seguito.
  Convenzione di assegnazione dei nomi

### Quando si importa un file Excel

- Quando si importa un file Excel protetto, è necessario inserire la password.
- Dal file Excel vengono importati solo i valori. Le macro e le formule non vengono ricalcolate durante l'importazione.
- La FileVersion sul foglio [Summary] viene verificata durante l'importazione. Gli altri valori di conteggio vengono ignorati.
- La dimensione massima dei file che si possono importare è di 100 MB.

## Formato delle variabili

### Struttura del file Excel esportato

Nel file Excel esportato, i dati sono organizzati nei seguenti fogli, ciascuno contenente informazioni specifiche:

- Summary: Panoramica di tutte le variabili esportate.
- VariableTypes: Tipi di variabili come array o strutture, se presenti.
- Variables: Dati variabili.
- ScanRates: Velocità di scansione, se presenti.
- AlarmGroups: Tutti i gruppi allarme, anche se non sono impostati allarmi.
- Alarms: Allarmi, se presenti.
- LoggingGroups: Tutti i gruppi di registrazione, anche se non contengono variabili.
- LoggingRecords: Variabili, se presenti.

Esempio: foglio Variables

Nota:

- E possibile modificare solo i dati contenuti nel testo blu. Se si modifica il formato, non è possibile importare il file. Tutte le colonne sono obbligatorie.
- I fogli e le colonne possono essere in qualsiasi ordine.

### Struttura del file CSV esportato

Quando è aperto in Excel, il file CSV esportato è organizzato come mostrato di seguito.

Nota: è possibile modificare solo i dati contenuti nel testo blu. Se si modifica il formato, non è possibile importare il file.

###

## Esportazione voci

La tabella indica le proprietà che corrispondono agli elementi esportati.

Le voci con le proprietà non impostate si visualizzano come vuote.

### Voci del file Excel esportate

[VariableTypes]

Voci | Proprietà | Posizione con le Proprietà | Valori disponibili
Name | [Nome] | [Tipi di dati utente globali] | Segue le convenzioni della denominazione.
Type | [Tipo di dati] | [Tipi di dati utente globali] | Segue il tipo dati supportato.
ElementTypeName | Indicata il tipo di dati di un elemento array o di un membro della struttura. | [Tipi di dati utente globali] | Segue il tipo dati supportato.
Dimensions | [Dimensioni] | [Tipi di dati utente globali] | Segue l’intervallo supportato della proprietà.

[Variables]

Voci | Proprietà | Posizione con le Proprietà | Valori disponibili
Name | [Nome] | [Tutte le variabili] | Segue le convenzioni della denominazione.
FolderName | [Cartella] | [Tutte le variabili] | Segue le convenzioni della denominazione.
DataType | [Tipo di dati] | [Tutte le variabili] | Segue il tipo dati supportato.
Dimension | [Dimensioni] | [Tutte le variabili] | Segue l’intervallo supportato della proprietà.
Source | [Sorgente] | [Tutte le variabili] | Nessuna modifica
DeviceAddress | [Indirizzo dispositivo] | [Tutte le variabili] | Segue l’intervallo supportato della proprietà.
BaseAddress | [Indirizzo di base] (solo quando si seleziona un array o una struttura.) | [Tutte le variabili] | TRUE/FALSE
ScanRate | [Velocità di scansione] | [Tutte le variabili] | Segue le convenzioni della denominazione.
InitialValue | [Valore iniziale] | [Tutte le variabili] | Segue l’intervallo supportato della proprietà.
InputRange | [Intervallo di immissione] | [Tutte le variabili] | TRUE/FALSE
Min | [Minimo] | [Tutte le variabili] | Segue l’intervallo supportato della proprietà.
Max | [Massimo] | [Tutte le variabili] | Segue l’intervallo supportato della proprietà.
EnableVariableLength | [Lunghezza variabile] | [Tutte le variabili] | TRUE/FALSE
NumberOfBytes/NumberOfWords | [Numero di byte] (solo quando è selezionata STRING.) / [Numero di word] (solo quando è selezionata WSTRING.) | [Tutte le variabili] | Segue l’intervallo supportato della proprietà.
StringEncode | [Codifica stringa] (solo quando da [Sorgente] si seleziona un dispositivo esterno.) | [Tutte le variabili] | Segue l’Encode supportato.
Retentive | [Ritentivo] | [Tutte le variabili] | TRUE/FALSE
Value | [Valore] | [Tutte le variabili] | Segue le convenzioni della denominazione.
BindingType | Indica il tipo dei dati assegnati. | Finestra del selettore di proprietà della proprietà Variabili. | Solo l’oggetto che si può impostare nella proprietà.
BindingMode | [Direzione] | Finestra del selettore di proprietà della proprietà Variabili. | OneWay/TwoWay
BindingConverter | [Convertitore] | Finestra del selettore di proprietà della proprietà Variabili. | Segue le convenzioni della denominazione.
DataSharing | [Condivisione dati] | [Tutte le variabili] | None/ReadOnly/ReadWrite
Comments | [Commenti] | [Tutte le variabili] | Segue le convenzioni della denominazione.

[ScanRates]

Voci | Proprietà | Posizione con le Proprietà | Valori disponibili
Name | [Nome] | [Velocità di scansione globali] | Segue le convenzioni della denominazione.
Interval | [Intervallo (100 ms)] | [Velocità di scansione globali] | 1 - 600

[AlarmGroups]

Voci | Proprietà | Posizione con le Proprietà | Valori disponibili
Name | [Nome] | [AlarmGroup] | Segue le convenzioni della denominazione.
***LabelType [1] | Indica l'impostazione dell'etichetta. | [AlarmGroup] | Direct/LanguageTable
***Label [1] | Indica i nomi delle etichette. | [AlarmGroup] | Segue l’intervallo supportato della proprietà.
Parameter | [Parametro] | [AlarmGroup] | Segue l’intervallo supportato della proprietà.
AlarmBehavior | [Comportamento dell'allarme] | [AlarmGroup] | Optional ACK/Mandatory ACK

1. *** si riferisce a LoLo, Lo, Hi, HiHi, Active, ACK, RTN oppure UNACK.

[Alarms]

Voci | Proprietà | Posizione con le Proprietà | Valori disponibili
Variable | [Variabile] | [Allarme booleano]/[Allarme di livello] | Segue le convenzioni della denominazione.
AlarmGroupName | [Nome] | [AlarmGroup] | Segue le convenzioni della denominazione.
Type | [Tipo di allarme] | [Allarme booleano]/[Allarme di livello] | HiHi/Hi/Lo/LoLo
Condition | [Condizione di trigger] (Allarme booleano) / [Valore] (Allarme di livello) | [Allarme booleano]/[Allarme di livello] | Se la proprietà è selezionata, per ogni Allarme bool compare TRUE. L'allarme di livello segue l'intervallo supportato della proprietà.
Deadband | [Banda morta] | [Allarme di livello] | Segue l’intervallo supportato della proprietà.
Severity | [Gravità] | [Allarme booleano]/[Allarme di livello] | Segue l’intervallo supportato della proprietà.
Parameter | [Parametro] | [Allarme booleano]/[Allarme di livello] | Segue l’intervallo supportato della proprietà.
MessageType | Indicata l’impostazione del messaggio. | [Allarme booleano]/[Allarme di livello] | Direct/Language Table
Message | [Messaggio] | [Allarme booleano]/[Allarme di livello] | Segue l’intervallo supportato della proprietà.

[LoggingGroups]

Voci | Proprietà | Posizione con le Proprietà | Valori disponibili
Name | [Nome] | [Gruppo di registrazione] | Segue le convenzioni della denominazione.
MaxRecord | [Registrazione massima] | [Gruppo di registrazione] | Segue l’intervallo supportato della proprietà.
ConditionType | [Tipo di condizione] | [Gruppo di registrazione] | ValueChange/Periodic/Script
Frequency | [Frequenza] (solo quando da [Tipo di condizione] si seleziona [Periodico].) | [Gruppo di registrazione] | Segue l’intervallo supportato della proprietà.
Units | [Unità] (solo quando da [Tipo di condizione] si seleziona [Periodico].) | [Gruppo di registrazione] | Secs/Mins/Hours/100ms
Condition | [Condizione di esecuzione] (solo quando da [Tipo di condizione] si seleziona [Cambio valore].) | [Gruppo di registrazione] | ON/OFF/On Change
TriggerVariable | [Variabile trigger] (solo quando da [Tipo di condizione] si seleziona [Cambio valore].) | [Gruppo di registrazione] | Segue le convenzioni della denominazione.
TriggerVariableBindingConverter | [Convertitore] | Finestra del selettore di proprietà della proprietà Variabili. | Segue le convenzioni della denominazione.
InterlockType | Indica l'impostazione [Interblocco]. | [Gruppo di registrazione] | Direct/Variable
Interlock | [Interblocco] | [Gruppo di registrazione] | TRUE/FALSE
InterlockBindingMode | [Direzione] | Finestra del selettore di proprietà della proprietà Variabili. | OneWay/TwoWay
InterlockBindingConverter | [Convertitore] | Finestra del selettore di proprietà della proprietà Variabili. | Segue le convenzioni della denominazione.
ExportData | [Attiva] | [Gruppo di registrazione] | TRUE/FALSE
WriteDataTo | [Salvataggio dati] | [Gruppo di registrazione] | USB Storage/SD Card/Internal
AppendDateTime | [Aggiungi data/ora] | [Gruppo di registrazione] | TRUE/FALSE
DetectModification | [Rileva modifica] | [Gruppo di registrazione] | TRUE/FALSE
FolderNameType | Indica l'impostazione [Nome cartella]. | [Gruppo di registrazione] | Direct/Variable
FolderName | [Nome cartella] | [Gruppo di registrazione] | Segue l’intervallo supportato della proprietà.
FolderNameBindingMode | [Direzione] | Finestra del selettore di proprietà della proprietà Variabili. | OneWay/TwoWay
FolderNameBindingConverter | [Convertitore] | Finestra del selettore di proprietà della proprietà Variabili. | Segue le convenzioni della denominazione.
FileNameType | Indica l'impostazione [Nome file]. | [Gruppo di registrazione] | Direct/Variable
FileName | [Nome file] | [Gruppo di registrazione] | Segue l’intervallo supportato della proprietà.
FileNameBindingMode | [Direzione] | Finestra del selettore di proprietà della proprietà Variabili. | OneWay/TwoWay
FileNameBindingConverter | [Convertitore] | Finestra del selettore di proprietà della proprietà Variabili. | Segue le convenzioni della denominazione.
ExportStatus | [Attiva] | [Gruppo di registrazione] | TRUE/FALSE
SaveStatus | [Salva stato] | [Gruppo di registrazione] | Segue l’intervallo supportato della proprietà.
SaveStatusBindingMode | [Direzione] | Finestra del selettore di proprietà della proprietà Variabili. | OneWay/TwoWay
SaveStatusBindingConverter | [Convertitore] | Finestra del selettore di proprietà della proprietà Variabili. | Segue le convenzioni della denominazione.
ErrorStatus | [Stato errore] | [Gruppo di registrazione] | Segue l’intervallo supportato della proprietà.
ErrorStatusBindingMode | [Direzione] | Finestra del selettore di proprietà della proprietà Variabili. | OneWay/TwoWay
ErrorStatusBindingConverter | [Convertitore] | Finestra del selettore di proprietà della proprietà Variabili. | Segue le convenzioni della denominazione.

[LoggingRecords]

Voci | Proprietà | Posizione con le Proprietà | Valori disponibili
VariableName | [Nome variabile] | [Record di registrazione] | Segue le convenzioni della denominazione.
LoggingGroupName | [Nome] | [Gruppo di registrazione] | Segue le convenzioni della denominazione.

### Voci del file CSV esportato

Voci | Proprietà | Posizione con le Proprietà | Valori disponibili
Name | [Nome] | [Tutte le variabili] | Segue le convenzioni della denominazione.
Type | [Tipo di dati] | [Tutte le variabili] | Segue il tipo dati supportato.
ElementType | Indicata il tipo di dati di un elemento array o di un membro della struttura. | [Tutte le variabili] | Segue il tipo dati supportato.
Dimensions | [Dimensioni] | [Tutte le variabili] | Segue l’intervallo supportato della proprietà.
InitialValue | [Valore iniziale] | [Tutte le variabili] | Segue l’intervallo supportato della proprietà.
RetentiveEnabled | [Ritentivo] | [Tutte le variabili] | TRUE/FALSE
FolderName | [Cartella] | [Tutte le variabili] | Segue le convenzioni della denominazione.
BindType | Indica il tipo dei dati assegnati. | Finestra del selettore di proprietà della proprietà Variabili. | Solo l’oggetto che si può impostare nella proprietà.
BindObject | Indica il nome dei dati assegnati. | Finestra del selettore di proprietà della proprietà Variabili. | Segue le convenzioni della denominazione.
BindField | Indica la proprietà dei dati assegnati. | Finestra del selettore di proprietà della proprietà Variabili. | Solo la proprietà dell’oggetto assegnato.
BindIsArray | Indica se la variabile definita dall’utente è stata impostata come valore. | Finestra del selettore di proprietà della proprietà Variabili. | TRUE/FALSE
BindValue | - | - |
BindDirection | [Direzione] | Finestra del selettore di proprietà della proprietà Variabili. | OneWay/Both
BindConverter | [Convertitore] | Finestra del selettore di proprietà della proprietà Variabili. | Segue le convenzioni della denominazione.
HasInputRange | [Intervallo di immissione] | [Tutte le variabili] | TRUE/FALSE
MinValue | [Minimo] | [Tutte le variabili] | Segue l’intervallo supportato della proprietà.
MaxValue | [Massimo] | [Tutte le variabili] | Segue l’intervallo supportato della proprietà.
Target | [Modello] | Architettura del sistema | Nessuna modifica
Source | [Sorgente] | [Tutte le variabili] | Nessuna modifica
ScanRate | [Velocità di scansione] | [Tutte le variabili] | Segue le convenzioni della denominazione.
ScanRateInterval | [Intervallo] | [Velocità di scansione globali] | 1 - 600
AddressEnabled | [Indirizzo di base] (solo quando si seleziona un array o una struttura.) | [Tutte le variabili] | Se la proprietà è selezionata, si visualizza TRUE.
Address | [Indirizzo dispositivo] | [Tutte le variabili] | Segue l’intervallo supportato della proprietà.
HasBinding | Indica VERO quando nella variabile Proprietà si usa un oggetto o un’altra variabile. | [Tutte le variabili] | TRUE/FALSE
VariableLength | [Lunghezza variabile] | [Tutte le variabili] | TRUE/FALSE
NumberOfBytes | [Numero di Byte/Word] | [Tutte le variabili] | Segue l’intervallo supportato della proprietà.
StringEncode | [Codifica stringa] (solo quando da [Sorgente] si seleziona un dispositivo esterno). | [Tutte le variabili] | Segue l’Encode supportato.
HasAlarm | Indica VERO quando nell’allarme si usa una variabile. | [Tutti gli allarmi] | TRUE o vuoto
AlarmType | Indicata il Limite quando nell’Allarme di livello si usa una variabile. | [Allarme di livello] | Limit o vuoto
***ThresholdState [1] | Indica Attivo quando nell’Allarme di livello si usa una variabile. | [Allarme di livello] | Enable o vuoto
***Threshold [1] | [Tipo di allarme] | [Allarme di livello] | HiHi/Hi/Lo/LoLo
***ThresholdValue [1] | [Valore] | [Allarme di livello] | Segue l’intervallo supportato della proprietà.
***ThresholdDeadBand [1] | [Banda morta] | [Allarme di livello] | Segue l’intervallo supportato della proprietà.
***ThresholdAlarmGroup [1] | Indica il nome del gruppo allarme che contiene la variabile. | [Allarme di livello] | Segue le convenzioni della denominazione.
***ThresholdMessageMode [1] | Indicata l’impostazione del messaggio. | [Allarme di livello] | Direct/Language Table
***ThresholdMessage [1] | [Messaggio] | [Allarme di livello] | Segue l’intervallo supportato della proprietà.
***ThresholdSeverity [1] | [Gravità] | [Allarme di livello] | Segue l’intervallo supportato della proprietà.
***ThresholdParameter [1] | [Parametro] | [Allarme di livello] | Segue l’intervallo supportato della proprietà.
ThresholdState | [Condizione di trigger] | [Allarme Booleano] | Enabled/Disable
ThresholdType | [Tipo di allarme] | [Allarme Booleano] | Hi/Lo
ThresholdCondition | - | - | WhenHigh/WhenLow Nessuna modifica
ThresholdAlarmGroup | Indica il nome del gruppo allarme che contiene la variabile. | [Allarme Booleano] | Segue le convenzioni della denominazione.
ThresholdMessageMode | Indicata l’impostazione del messaggio. | [Allarme Booleano] | Direct/Language Table
ThresholdMessage | [Messaggio] | [Allarme Booleano] | Segue l’intervallo supportato della proprietà.
ThresholdSeverity | [Gravità] | [Allarme Booleano] | Segue l’intervallo supportato della proprietà.
ThresholdParameter | [Parametro] | [Allarme Booleano] | Segue l’intervallo supportato della proprietà.
DataSharing | [Condivisione dati] | [Tutte le variabili] | None/ReadOnly/ReadWrite
LoggingGroup | Indica il nome del gruppo, quando nella Registrazione si usa la variabile. | [Tutte le registrazioni] | Segue le convenzioni della denominazione.
Comments | [Commenti] | [Tutte le variabili] | Segue le convenzioni della denominazione.
AlarmGroupId | Indica il nome del gruppo di allarme. | [Tutte le variabili] | Segue le convenzioni della denominazione.

1. *** si riferisce a HiHi, Hi, Lo oppure LoLo.