# Exporting and Importing Variables

In the screen editing software, you can execute exporting and importing of global variables by using the Variable editor toolbar. A property of an alarm and logging are included in the export item. Exporting and importing local variables is not supported.

Note:

Although you can import data exported as CSV or TXT files from screen editing software version 3.3 Service Pack 1 or earlier into screen editing software version 3.4 or later, files exported from version 3.4 or later cannot be imported into version 3.3 Service Pack 1 or earlier, as the file version is 2.0.
Check the file version of CSV or TXT outputs in the [FileVersion] line of the output file.

The following file formats are supported for importing and exporting variables:

- TXT file (.txt, UTF-8 (without BOM))
- CSV file (.csv, UTF-8 (without BOM))

Note:

- Files saved using encoding other than UTF-8 (without BOM) cannot be imported.
- For information on file formats, see the following.
  Save Data (Export) File Settings

You can see the exported file using software program such as Microsoft Excel.

Note:

The data output is formatted as follows:

- Strings are encapsulated by double-quotation marks (").
  E.g. "This is a string"
- Special characters "=", "+", "-", "@", TAB, and ENTER that appear at the beginning of an entry are prefixed with a single-quotation mark (').
  E.g. "'=1+2"

## Notes on Importing Variables

- When importing, if a scan rate with same name does not exist, then a new scan rate is created with the interval from the exported file. If the scan rate already exists in the project, the scan rate is not updated.
- If you import a file exported from screen editing software version 3.1 Service Pack 1B or earlier, external variables are assigned the default scan rate. For information about scan rates, refer to the following.
  Setting the Interval for Reading External Variable Values (Scan Rate)
- Variables that were imported using symbol file import cannot be updated with the import variable command. To update the variables in the symbol file, refer to the following.
  Importing Symbols from External Devices - Notes after Importing the Symbol File
- You cannot import variables to a project that contains a symbol file. To import variables, follow these steps.

1. Remove the symbol file from the project.
2. Export the variables from the project.
3. Import the variables to the project.
4. Import the symbol file to the project.

- There is a naming convention for variable names in the screen editing software.
  If a variable name contains characters that do not follow the naming convention, the variable is not imported.
  For details, refer to the following.
  Naming Conventions

## Variable Format

Exported file contains the below sample data when opened in Excel.

Note: You can only edit the data in blue text. If the format is modified, you cannot import the file.

###

## Export Items

This table indicates a property which corresponding to the exported item.

The item whose property is not set, will be blank.

Items | Property | The Location with the Property | Available Value
Name | [Name] | [All Variables] | Following the naming conventions.
Type | [Data Type] | [All Variables] | Following the supporting data type.
ElementType | Indicates data type of array element or structure member. | [All Variables] | Following the supporting data type.
Dimensions | [Dimension] | [All Variables] | Following the supporting range of property.
InitialValue | [Initial Value] | [All Variables] | Following the supporting range of property.
RetentiveEnabled | [Retentive] | [All Variables] | TRUE/FALSE
FolderName | [Folder] | [All Variables] | Following the naming conventions.
BindType | Indicates type of assigned data. | Property selector window for variable property. | Only the object which can be set in a property.
BindObject | Indicates name of assigned data. | Property selector window for variable property. | Following the naming conventions.
BindField | Indicates property of assigned data. | Property selector window for variable property. | Only a property of an assigned object.
BindIsArray | Indicates whether a user defined variable is set as the value. | Property selector window for variable property. | TRUE/FALSE
BindValue | - | - |
BindDirection | [Direction] | Property selector window for variable property. | OneWay/Both
BindConverter | [Converter] | Property selector window for variable property. | Following the naming conventions.
HasInputRange | [Input Range] | [All Variables] | TRUE/FALSE
MinValue | [Minimum] | [All Variables] | Following the supporting range of property.
MaxValue | [Maximum] | [All Variables] | Following the supporting range of property.
Target | [Model] | System Architecture | Not edit
Source | [Source] | [All Variables] | Not edit
ScanRate | [Scan Rate] | [All Variables] | Following the naming conventions.
ScanRateInterval | [Interval] | [All Scan Rates] | 1 - 600
AddressEnabled | [Base Address] (when selected an Array or Structure only). | [All Variables] | If selected property, displays TRUE.
Address | [Device Address] | [All Variables] | Following the supporting range of property.
HasBinding | Indicates TRUE, when using an object or another variable for variable property. | [All Variables] | TRUE/FALSE
VariableLength | [Variable Length] | [All Variables] | TRUE/FALSE
NumberOfBytes | [Number of Bytes/Words] | [All Variables] | Following the supporting range of property.
StringEncode | [String Encode] (when selected external device from [Source] only). | [All Variables] | Following the supporting encode.
HasAlarm | Indicates TRUE, when variable is used in an Alarm. | [All Alarms] | TRUE or blank
AlarmType | Indicates Limit, when using variable in Level Alarm. | [Level Alarm] | Limit or blank
***ThresholdState [1] | Indicates Enable, when using variable in Level Alarm. | [Level Alarm] | Enable or blank
***Threshold [1] | [Alarm Type] | [Level Alarm] | HiHi/Hi/Lo/LoLo
***ThresholdValue [1] | [Value] | [Level Alarm] | Following the supporting range of property.
***ThresholdDeadBand [1] | [Deadband] | [Level Alarm] | Following the supporting range of property.
***ThresholdAlarmGroup [1] | Indicates the alarm group name including a variable. | [Level Alarm] | Following the naming conventions.
***ThresholdMessageMode [1] | Indicates a message setting. | [Level Alarm] | Direct/Language Table
***ThresholdMessage [1] | [Message] | [Level Alarm] | Following the supporting range of property.
***ThresholdSeverity [1] | [Severity] | [Level Alarm] | Following the supporting range of property.
***ThresholdParameter [1] | [Parameter] | [Level Alarm] | Following the supporting range of property.
ThresholdState | [Trigger Condition] | [Bool Alarm] | Enabled/Disable
ThresholdType | [Alarm Type] | [Bool Alarm] | Hi/Lo
ThresholdCondition | - | - | WhenHigh/WhenLow Not edit
ThresholdAlarmGroup | Indicates the alarm group name including a variable. | [Bool Alarm] | Following the naming conventions.
ThresholdMessageMode | Indicates a message setting. | [Bool Alarm] | Direct/Language Table
ThresholdMessage | [Message] | [Bool Alarm] | Following the supporting range of property.
ThresholdSeverity | [Severity] | [Bool Alarm] | Following the supporting range of property.
ThresholdParameter | [Parameter] | [Bool Alarm] | Following the supporting range of property.
DataSharing | [Data Sharing] | [All Variables] | None/ReadOnly/ReadWrite
LoggingGroup | Indicates the group name, when variable is used in the Logging. | [All Loggings] | Following the naming conventions.
Comments | [Comments] | [All Variables] | Following the naming conventions.
AlarmGroupId | Indicates the alarm group name. | [All Variables] | Following the naming conventions.

1. *** refers to HiHi, Hi, Lo, or LoLo.