> ## Documentation Index
> Fetch the complete documentation index at: https://docs.omni.co/llms.txt
> Use this file to discover all available pages before exploring further.

<AgentInstructions>

## Submitting Feedback

If you encounter incorrect, outdated, or confusing documentation on this page, submit feedback:

POST https://docs.omni.co/feedback

```json
{
  "path": "/demos/2023/20231103",
  "feedback": "Description of the issue"
}
```

Only submit feedback when you have something specific and actionable to report.

</AgentInstructions>

# November 3, 2023

> Google Sheets embedding, Transpose & measures on rows, Calculations refinement, & more 

<Note>
  **Stay in the loop!** Subscribe to the [demo RSS feed](/demos/rss.xml) to be notified when we post new demos.

  Demos highlight what we are working on or experimenting with, but are not a guarantee of release. Let us know your thoughts at [support@omni.co](mailto:support@omni.co).
</Note>

## Google Sheets embedding

*Jack Sweeney · `workbook` `dashboard` `analysis-pattern` `embed`*

A quick demo of what the dynamic embedding in Omni opens up. Here we show an embedded Google Sheet for end-user input on dashboards. The results are auto-pushed to BQ and joined into other queries dynamically.

<Frame>
  <iframe src="https://www.youtube.com/embed/QGkx08-Qbek" width="100%" height="400" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowFullScreen />
</Frame>

## Transpose and measures on rows

*Steven Talbot · `table` `visualization` `workbook`*

Fresh controls for transposing tables, or even just transposing metrics independently. All of the goodness around calculations and charting comes along with the new measure controls.

<Frame>
  <iframe src="https://www.youtube.com/embed/9CxeCEuTEAQ" width="100%" height="400" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowFullScreen />
</Frame>

## Calculations refinement

*Richard Czechowski · `calcs` `workbook`*

More refinement of the Excel/Sheets syntax. Dynamic column naming and formatting, easier empty calculation columns, and more elegant loading of results on only changed functions.

<Frame>
  <iframe src="https://www.youtube.com/embed/K5aBk4wLkko" width="100%" height="400" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowFullScreen />
</Frame>

## Autovis

*Jamie Davidson · `visualization`*

Lots of improvements to retain changes to the visualization configuration while adapting to dynamic querying and exploration.

<Frame>
  <iframe src="https://www.youtube.com/embed/4zZ8fjwP1bQ" width="100%" height="400" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowFullScreen />
</Frame>

## Timezone configuration

*Cathy Lennon · `modeling` `administration`*

The launch of timezone configuration in Omni at the query and database level.

<Frame>
  <iframe src="https://www.youtube.com/embed/XsOwhvduCu0" width="100%" height="400" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowFullScreen />
</Frame>

## Dynamic schema

*Conrad Slimmer · `modeling` `administration` `analysis-pattern`*

New model configuration for dynamic schema handling (ie a single model that can be configured to different schemas for each user)

<Frame>
  <iframe src="https://www.youtube.com/embed/jke0AImaRGc" width="100%" height="400" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowFullScreen />
</Frame>

## KPIs

*Elliot Park · `visualization`*

Some clean-up of the KPIs with value formatting

<Frame>
  <iframe src="https://www.youtube.com/embed/C-ZALhu4-hM" width="100%" height="400" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowFullScreen />
</Frame>

## Exploring calculation usage

*Colin Zima · `calcs`*

Live exploration of early calculation function usage, plus a demo of the calculation UX live doing some string parsing.

<Frame>
  <iframe src="https://www.youtube.com/embed/u7ofK9KNr3U" width="100%" height="400" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowFullScreen />
</Frame>

## Dynamic IP allowlists

*Brian Frantz · `administration`*

New IP allowlist functionality

<Frame>
  <iframe src="https://www.youtube.com/embed/H33Y2Gh8d7Y" width="100%" height="400" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowFullScreen />
</Frame>
