# Getting Started Guide - DataSets

**URL:** https://community.xibo.org.uk/t/getting-started-guide-datasets/14149
**Category:** Guides
**Created:** [April 20, 2018, 2:30pm UTC](https://community.xibo.org.uk/t/getting-started-guide-datasets/14149 "2018-04-20T14:30:58Z")
**Posts on this page:** 1
**Page:** 1

<div class="post-metadata">

### Author: ![natasha](https://community.xibo.org.uk/user_avatar/community.xibo.org.uk/natasha/32/18270_2.png) [@natasha](https://community.xibo.org.uk/u/natasha)
#### Post date: [April 20, 2018, 2:30pm UTC](https://community.xibo.org.uk/t/getting-started-guide-datasets/14149/1 "2018-04-20T14:30:58Z")

</div>

### Updated February 2020

### Using DataSets to display meeting room bookings with Xibo

**Please note:** If you are using the 1.8 series CMS, please use the following link: [Getting Started Guide - DataSets 1.8](https://community.xibo.org.uk/t/getting-started-guide-datasets-1-8/18041).

### Introduction

DataSets are a feature to design and store tabular data. Once designed data can be entered manually, imported from a CSV file, as JSON via the API or synced remotely on a schedule. The **DataSet** is defined in the **Library** and can be reused across multiple **DataSet Views** and **Layouts** and comes in two parts:

- The DataSet (Data Structure and data)
- The Display (DataSet View Widget/ DataSet Ticker Widget/ a source of data for a custom module)

This tutorial will walk you through the process of how to produce a Layout to show a current meeting on a screen in a meeting room, that will update automatically from the information held in a created DataSet.

 ![finished layout](https://community.xibo.org.uk/uploads/default/original/2X/0/0ae4bdab11d29598922eef5645a10bbbb93e44c9.jpg)

## Creating DataSets

Log in to your CMS and click on the **DataSets** page under the **Library** section of the main menu. Click on the **Add DataSet** button and name it “Meeting Room 1” to represent that the DataSet will hold the schedule for that meeting room, and **Save**.

 ![Add DataSet](https://community.xibo.org.uk/uploads/default/original/2X/b/b1939cc41565df86e6d3114e7570b3727d916c40.PNG)

We now need to define the fields that the DataSet will hold. For any given meeting we need to know the following information:

- When it starts
- When it finishes
- Meeting Name
- Meeting Description/Notes

So we need to create 4 **columns** in the DataSet as follows:

- dtMeetingStart
- dtMeetingFinish
- sMeetingName
- sDescription

Click on the drop-down Menu for your DataSet ‘Meeting Room 1” and **View Columns**. One column (Col1) has been added by default.

 ![Col1](https://community.xibo.org.uk/uploads/default/original/2X/1/1169df13a86ba278b4479b47a55aad47f7aeb8b7.PNG)

Click on the drop-down button next to Col1 to **Edit**.

 ![edit column](https://community.xibo.org.uk/uploads/default/original/2X/6/632415e9921a11a71dfcd1a0aa8c9938ececb48b.PNG)

1. Change Heading to ‘dtMeetingStart’.
2. Column Type set to ‘Value’.
3. Data Type set to ‘Date’.
4. Column Order set to ‘1’ (the other values can be left blank).
5. **Save**.

Using the **Add Column** button repeat the above steps for ‘dtMeetingFinish’ and set a Column Order of 2.

Repeat these actions for the remaining two columns needed but this time change the **Data Type** to ‘String’ and increase the column order by 1 for each column.  
You should now have a column structure that looks like this:

 ![columns for meeting room 1](https://community.xibo.org.uk/uploads/default/original/2X/d/db523dbbdaa918e8eac1db6fc1a1833a0393e17c.PNG)

Next, we need to add some data to our **DataSet**. For this example, we will manually key data in but you can choose to import data directly from a CSV file which could also come from another system, such as a meeting room booking system.

Click on the **View Data** button, then click on **Add Row**. Using the datepicker enter dates and times, (ensure that a meeting will be running at the time you Preview your Layout so that there is something to view later!). Give your meeting a name and a description (which will be shown on your displays), **Save**.

 ![Dates times data](https://community.xibo.org.uk/uploads/default/original/2X/9/9919e4e8d9e342ba489081bc2fdd59789cc87975.PNG)

Add additional **Rows** to create a schedule of meetings which will take place in Meeting Room 1.

 ![meeting schedule](https://community.xibo.org.uk/uploads/default/original/2X/9/9078c1d11b1ca03441f55ec7bfdba5b7721f65a5.PNG)

You can make edits to your data by simply double clicking on the row you wish to amend and saving.

Now you should have a structured DataSet containing some test data that we can use in **Layouts**!

## Creating Layouts to leverage your DataSets.

From the CMS menu, go to **Layouts** :

1. **Add Layout** and name it.

> **Please note** : If you are using a version 2 CMS earlier than 2.2.0, all newly added Layouts need to be ‘Checked Out’ to enable editing as they will open in a **Read Only Mode**.

1. Add an image or choose a coloured background. For the purpose of this tutorial I have downloaded a background image from the [Xibo Layout Exchange](https://app.xibo.org.uk/layouts) called “BlueGreen - Clock”.
2. Click on the edit icon to open the editor and resize and position your Region so that the Region sits inside the black area of the background image, **Save** and exit the editor.

 ![3](https://community.xibo.org.uk/uploads/default/original/2X/6/6444f5b8cccad10f363b6faaf9fb349539654f28.png)

1. Click on the **Widgets** button on the bottom toolbar and use the arrows to find the **DataSet Ticker** Widget, drag or click to add the empty Region.
2. Use the dropdown to select the ‘Meeting Room 1’ DataSet created in the first step.
3. **Save**

 ![3](https://community.xibo.org.uk/uploads/default/original/2X/5/57de843e97cdc38a062849b528ebf12d8236f4b7.png)

We can now use the **Edit Ticker** form to suit your specific needs:

 ![edit_ticker](https://community.xibo.org.uk/uploads/default/original/2X/4/448683a6775ebfa30ff20fdefacf4050cf863112.png)

1. Opt to give this Widget a name.
2. Tick **Set a duration** to change the default time to a value that is more appropriate for your Layout (I have chosen a duration of 90 seconds).
3. Go to the **Templates** tab and click on **Main**. Toggle **On** the Visual editor and click in the Preview window to open the inline editor.
4. Include text and **Snippets** to the editor and resize, position etc to make the text from the DataSet look attractive in the layout.
5. **Save**

 ![data_snippets](https://community.xibo.org.uk/uploads/default/original/2X/1/1e4cf98a5a673afb6c5914fa4faae061d691ee6a.png)

1. Use the **Template** tab again but this time click on **No Data**.
2. Enter a message, using the text editor, to display a message when there is no data returned from the source so that your audience is not left with a blank screen.
3. **Save**.
4. Go to the **Filter** tab as we want to only show current meeting information so will need to filter using a SQL command
5. Tick to **Use advanced filter clause**.
6. Copy and paste the following into the Filter field to only show items where the meeting has started but hasn’t finished.  
`NOW() > dtMeetingStart AND NOW() < dtMeetingFinish`
7. **Save**.

 ![filter](https://community.xibo.org.uk/uploads/default/original/2X/2/2bfd3d02082f17190b13b43e33c41c0235d9c9fe.png)

1. Go to the **Caching** tab and set the **Update Interval**. This is how long the client should wait between checks to make sure there’s no new data in the DataSet. For a live booking system, we would recommend setting a value of 5 minutes.
2. **Save.**

Your Layout will now show your updated information. **Preview** the Layout to see the correct data displayed for the current meetings in Meeting Room 1, as defined in the DataSet.

Once happy, Layouts can then be **scheduled** , once set to **Published** by using the Actions menu on the top toolbar, to be shown on your chosen Display/Display Groups!

> If you are using a version 2 CMS earlier than 2.3, use the green Publish button on the bottom toolbar.

If you edit the **DataSet** your changes will be available in the system straight away ready to be picked up by Players on their next collection, with no need to make any edits to the **Layout**.

Now you have hopefully grasped the concept of DataSets and how they can be utilised so that you can get the best out of Xibo!

Additional help available:  
[Troubleshooting](https://xibo.org.uk/manual/en/troubleshooting.html)
