Importing and Exporting spreadsheets

App Manager allows you to export and import configuration using an Excel spreadsheet.

Importing and Exporting spreadsheets

To access the Excel Export and Import functions, view the “Properties” of any app or object within the App Manager site:

Beneath the settings, you will see the following Tools section:

Hint: You can also Ctrl + Click on the item in the navigation tree to immediately open the Properties.

Export to Excel

This button will download a spreadsheet containing objects under the item that you are viewing. For instance, if you opened the properties for an App (Edge ACM, AUTOSOL MQTT, etc.) it will export all of the objects under the application. If you opened the properties for an Object (a folder, a tag group, etc.), it will export that object and it’s children. This will export a file of type .xlsx with each individual sheet representing an object type.

Import from Excel

To import configuration from an Excel spreadsheet, click the “Choose Files” button and browse to the .xlsx file you wish to import. Once loaded, click the “Import from Excel” button to complete the import process.

Editing configuration data in an Excel spreadsheet

The Excel configuration can vary in complexity based on object type. Most data types are easy to understand but some configuration items can be complex data structures that have to be represented in certain formats in excel. Most are straightforward and the Import process will convert the “value” from the sheet into the datatype required.

For instance, most properties for a “Tag” are simple. In the table immediately below, row 1 contains the name of the property to be set and each subsequent row represents the properties for a single “Tag”.

A

B

C

D

E

A

B

C

D

E

1

name

deadband

register

backfilltype

deadbandtype

2

ROCTags

5

4001

True

None

3

ModbusTags

4

3001

False

Every Scan

4

ControlLogixTags

2

5001

True

Absolute

There are, however, more complex data formats that are also supported in the Excel spreadsheet.

Arrays

Arrays are lists of values. The values can vary in type from integers, to strings, etc. In the example below, we are importing a Publish Schedule including it’s name and list of Publisher Groups an array of “Publish Groups IDs” into the Publish Schedule property “groupids”. This can be visualized as a table of data with one column containing the name of the schedule, one representing the position within the array, and the third column, “groupids”, contains the ID of the individual publish groups. In this sheet, the “Name” is repeated multiple on each row to signify the same schedule.

A

C

D

A

C

D

Name

GroupID Position

Publisher GroupID

ROCSchedule

0

123

ROCSchedule

1

275

ROCSchedule

2

783

ModbusSchedule

0

456

ModbusSchedule

1

789

ModbusSchedule

2

123

ControlLogixSchedule

0

123

ControlLogixSchedule

1

783

In the .xlsx file to be imported, the above data would transposed so that each Schedule is represented by a single row, with the position within array property placed within parenthesis adjacent to the property key (propertykey(position) ) e.g The column header for GroupID Position 0 is groupids(0), and all of the values for each Schedule that belong in GroupID Position 0 are in the same column.

A

B

C

D

AAAA

A

B

C

D

AAAA

1

Name

groupids(0)

groupids(1)

groupids(2)

 

groupids(n)

2

ROCSchedule

123

275

783

 

###

3

ModbusSchedule

456

789

123

 

 

4

ControlLogixSchedule

123

783

 

 

 

The “position” in the array must always start at 0 and be entered in the spreadsheet in numerical order. As many entries can be added to the array as necessary.

Objects and Arrays of Objects

Objects are key-value pair structures that can contain one or more keys and values of any type. Using the Tag object again as an example, we want to import a tag and its “triggerconditions” property which contains an array of trigger conditions which each have their own property values. In the table below, we have two Tags named ROCTag and ModbusTab which each have two separate trigger conditions.

A

B

C

D

E

A

B

C

D

E

name

TriggerCondition Position

TriggerCondition Condition

TriggerCondition Value

TriggerCondition Quality

ROCTag

0

Greater Than or Equal To

15

High

ROCTag

1

Equal

40

Triggered

ModbusTag

0

Greater Than

5

Low

ModbusTag

1

Less Than

2

Triggered

In the .xlsx file to be imported, the above data would transposed so that each the single Tag, ROCTags is represented by a single row, with the position within array property placed within parenthesis adjacent to the propertykey and propertykey of the triggercondition following an underscore. (tagpropertykey(position)_ triggerconditionpropertykey) e.g The column header for Trigger Condition Quality at Position 0 is “triggerconditions(0)_quality” and all of the qualities for all triggerconditions at position 0 for each Tag are in the same column.

A

B

C

D

E

F

G

A

B

C

D

E

F

G

1

Name

triggerconditions(0)_condition

triggerconditions(0)_value

triggerconditions(0)_quality

triggerconditions(1)_condition

triggerconditions(1)_value

triggerconditions(1)_quality

2

ROCTag

Greater Than or Equal To

15

High

Equal

40

Triggered

3

ModbusTag

Greater Than

5

Low

Less Than

2

Triggered

 

For assistance, please submit a ticket via our Support Portal, email autosol.support@autosoln.com or call 281.286.6017 to speak to a support team member.