Skip to main content
Sometimes you may want to utilize data in an analysis that isn’t in one of your database connections, whether it’s for data enrichment or an initial exploration. Creating a data input table allows you to add data to Omni, whether by manually entering data or uploading a CSV or XLSX, without needing to touch your data pipelines.

Requirements

To add data input tables, you’ll need:
We also recommend that you create a schema in your database where Omni can write the CSV files. See the setup guide for your database for more instructions on write backs.

Limitations

Currently, data input tables:
  • Must be added in a workbook
  • Are limited to 500,000 rows
  • Can’t be used in joins unless the table is pushed to a database. Setting the connection’s Schema for table upload property enables this functionality. Refer to the setup guide for your database for more information.

Adding a data input table to a workbook

Data input tables can be added in the workbook of any document. In a workbook, navigate to Edit > New blank table. A new tab with a blank data input table will display. To get data into the table, you can manually enter it or upload a CSV or XLSX: Once there’s data in the table, click Query CSV to create a query using the data. The table will also become available in the field picker in other queries.

Querying & joining data input tables

Data input tables can be queried like any other table, including using the field picker, [SQL editor]/analyze-explore/sql, or working with calculations and formulas. Note: To make the data available outside of the workbook, you’ll need to promote it to the shared model. How you join data from a data input table to other data depends on whether table uploads are enabled for the database connection used by the workbook:

Modeling & promoting data input tables

When a data input table is added to a workbook, a few things will happen in the workbook model#edit-a-model-in-the-workbook-layereasy-mode). To make the changes available outside of the workbook, they must be promoted to the shared model.
  • A view representing the data input table will be created. These views can be identified by the presence of an uploaded_table_name parameter:
    products.view
    # Reference this view as products
    uploaded_table_name: products.csv::1a3497f5-cba8-47c0-bab9-b2df84d1b141
    
  • A topic based on the view representing the data input table will be created if:
    • Create topic was selected while uploading a CSV or XLSX, or
    • A Restricted Querier performed the upload
Views and topics created from data input tables can be modeled like any other view or topic. However, if the data input table hasn’t been pushed to the connection’s database, attempting to use the data input table in a join in the IDE will result in the following content validation error:
View "<view_name>" references an uploaded table. Uploaded tables cannot be used in joins.
If data from a data input table hasn’t been pushed to a database, only XLOOKUP can be used to perform joins to other tabs in a workbook. Refer to the Querying & joining data section for more information and examples.

Updating data input table data

When making updates to a data input table, keep the following in mind:
  • Changes must be promoted to the shared model to be accessible outside the workbook. This is necessary even if the table was previously promoted to the shared model.
  • If table uploads (writebacks) are enabled for the connection, Omni will create a new table in the database each time the table is saved. You can manage previous versions of the table in the Upload management page.
To update a data input table’s data:
  1. In a workbook, locate the table in a query tab.
  2. Click the options menu next to the table’s name, then Edit Table:
  3. The data input table will open in a new tab where you can edit the data as needed.
  4. Click Save changes when finished.
Upon a successful save, the updated table will immediately become available in the workbook. Omni will also log a new version of the table in the Upload management page.

Managing previous table versions

Every time you create or update a data input table, Omni adds an entry in the Upload management page. Each item in the list represents a version of the table. Entries are sorted by the time they were created, beginning with the most recent. Navigate to Settings > Uploads to access this page:

Querying previous table versions

To create a query using a specific version of a table, click the Explore button next to the table version. This will open a new workbook that uses the specified version of the table. Note: If you promote the changes from an older version of the table, it will overwrite the data currently in the shared model.

Deleting table versions

Deleting a table version can’t be undone. Before continuing, note that:
  • The version of the table will be permanently deleted from your Omni instance. If table uploads (writebacks) are enabled, the version of the table will also be deleted from the database.
  • Queries, views, and topics built on the version will result in an error after the deletion
The Upload management page can be used to delete previous versions of a data input table. Note: Table versions are listed in the order they were created, meaning that the most recent version of a table will be higher in the list.
  1. Navigate to Settings > Uploads.
  2. Locate the version you want to remove and click Delete.
After the deletion is complete, you’ll also need to:
  • Remove views and topics built on the version from the model
  • Update or remove queries using the version