You can use this provider to connect to Excel files. It can connect to multiple files at once and merge them based on specific options such as files, sheets or both. There also is options making it possible to connect to setups that is not straight forward, using table definitions, culture settings and more.
Configuration manual
The following settings can be used with the TimeXtender Excel data source connector.
![](https://uploads-eu-west-1.insided.com/timextender-en/attachment/d61b627b-d1fc-4f5e-9be5-bfd7b9e01ecb.png)
Connection settings
![](https://uploads-eu-west-1.insided.com/timextender-en/attachment/6738d87f-0dfe-4d06-afd3-f2971f6ce64c.png)
These settings relate to the connection to where the Excel file is located.
Location
![](https://uploads-eu-west-1.insided.com/timextender-en/attachment/196eb83b-c5e5-4101-83f9-6ae8465c4fd8.png)
Drop down box where you can choose what type of location your Excel file is located at. Currently, only local files are available. In the future, this will have options like DataLake, Excel Online, etc.
Path
![](https://uploads-eu-west-1.insided.com/timextender-en/attachment/1d65a177-f692-4694-845c-30bcb6839ebe.png)
When “Location” is set to “Local file or folder” you can here provide the path to where the Excel file(s) are located. If a path to a folder is provided all files in the folder and if the option “Include sub-folders” is set then all files in the subfolders as well are ingested.
Include sub-folders
![](https://uploads-eu-west-1.insided.com/timextender-en/attachment/2450fb18-f797-4ad9-8d5e-b04afd6b249d.png)
As mentioned above this option defines if sub-folders are also traversed to find Excel files to ingest.
Metadata URI
![](https://uploads-eu-west-1.insided.com/timextender-en/attachment/b6ea0d77-e9e6-4058-a025-a651d50b9581.png)
Here you can provide a separate path to where to read metadata from. It has the same behavior as Path and will read single or multiple files and also include/exclude subfolders, but is only used for metadata calls.
Excel settings
![](https://uploads-eu-west-1.insided.com/timextender-en/attachment/25ad2d85-e765-43d7-ab95-120b5557626c.png)
These settings relate to the behavior of the Excel reader and how to treat the content of the Excel documents.
Set first non-empty row as column names
![](https://uploads-eu-west-1.insided.com/timextender-en/attachment/d927dcf2-ae01-4065-a67e-69f1adc2dc0c.png)
Check if your Excel documents have header records. This will then use the first non-empty record to set the names of your resulting columns. If unchecked generic column names will be generated. E.g. “Column_1, Column_2, …”
Table definitions
![](https://uploads-eu-west-1.insided.com/timextender-en/attachment/6466a6c8-0da2-49b4-acb9-8f0695fc7c96.png)
Here you can provide a comma-separated list of table definitions to ingest from your Excel document(s). A table definition has the following structure:
<Table name>=<Sheet name>!<Starting cell>:<Ending cell>
E.g. “Table1=Sheet1!E6:H9”
The table will then be ingested with data from within the range provided in the definition. The definition is also dependent on the option “Has header record”, if checked the first record is used for column names. Aggregation options will also affect defined tables.
It is also possible to provide wildcards for some of the parts in the definition. A wildcard is defined by using a “*” star symbol. You can provide wildcards for “Sheet name”, this will then ingest data from all sheets within the range defined. This data is not aggregated unless aggregation options are selected. A wildcard can also be provided for the row part of the “Ending cell” part. E.g. “H*”. The reader will then read all rows within the defined columns.
Example of a table definition using wildcards: “Table1=*!E6:H*”
Only use defined tables
![](https://uploads-eu-west-1.insided.com/timextender-en/attachment/f3ef9a85-c667-404d-bb39-3f22c8a0924e.png)
When checked only tables defined using table definitions will be ingested. If not checked all tables defined using table definitions will be ingested along with the whole sheet(s) tables from the file(s).
Aggregation
![](https://uploads-eu-west-1.insided.com/timextender-en/attachment/f527b27a-1612-4b42-a303-a87954da6695.png)
Here you can choose the type of aggregation you want to apply when ingesting Excel document(s). The options are:
- None (All files & sheets in the path will be loaded as separate tables)
- Files (Matching sheetnames and/or table definitions will be merged across files)
- Sheets (All sheets and/or table definitions within files are merged)
- Files & sheets (A combination of Files and Sheet aggregation)
![](https://uploads-eu-west-1.insided.com/timextender-en/attachment/b652c1e3-4e65-4090-8560-0b5958744782.png)
None – No aggregation is applied and all tables are returned with unique names using the following naming structure:
<filename>_<sheet name> or <filename>_<sheet name>_<table definition name>
Files – Tables within files are named using the following naming structure:
<sheet name> and/or <sheet name>_<table definition name>
The data is then aggregated over files by table name.
Sheets – Data is aggregated over sheets and returned as a single table per file plus any table definition tables. Table definitions are also aggregated.
Files & sheets – Same as above, but in the order that Sheets are aggregated first for each file and then files are aggregated, will return a single table plus a single table for any table definitions.
Included sheets
![](https://uploads-eu-west-1.insided.com/timextender-en/attachment/66a6ac83-6212-4919-bdae-0a85c08e8ca5.png)
Here you can specify a list of sheet names to select, by applying the names in a comma-separated bracketed list.
Infer datatypes
![](https://uploads-eu-west-1.insided.com/timextender-en/attachment/796a4de3-e66b-452a-a69f-df9d28ea3944.png)
Check this to infer data types from your Excel documents. If unchecked, all data types will be strings.
Number of rows to infer data types
![](https://uploads-eu-west-1.insided.com/timextender-en/attachment/304474c5-0324-4a9d-8e21-1f1fccb77f2b.png)
If you have checked “Infer datatypes”, you can here provide the number of rows to use for inferring the datatypes. This is because there is a small overhead of doing the inference. Setting the number to 0 or a negative number will result in all rows being used for inference.
Culture
![](https://uploads-eu-west-1.insided.com/timextender-en/attachment/4386b340-bd5f-4a80-b30f-cccdc158e70a.png)
Here you can specify the culture of the read Excel files. For example, if the source is different than yours or does not match InvariantCulture.
Number decimal separator
![](https://uploads-eu-west-1.insided.com/timextender-en/attachment/94b85948-8516-4f41-af66-1dfde80fc9f9.png)
Here you can provide the number decimal separator used when inferring numeric data types.
Date formats
![](https://uploads-eu-west-1.insided.com/timextender-en/attachment/898d5a20-b117-4ddd-83a8-ab59bcba98ac.png)
Here you can specify a custom date format. You can apply more than one by applying them in a comma-separated format within brackets.
Misc behavior
Test connection
![](https://uploads-eu-west-1.insided.com/timextender-en/attachment/75180335-9979-4224-b42c-cd71eb98125d.png)
Clicking the test connection button has the following behavior:
- If the path is empty or not set will return a failed connection
- If a path is provided and the file can not be opened will return a failed connection
- If a path is provided and the file or folder does not exist will return a failed connection
If none of the above a connection is returned as a success.
This means that we do not check whether the file or folder contains files that are Excel documents or if they are corrupted or contain any data.