02.1 - Dataset Configuration

Write-Back is highly flexible and this is the configuration screen that allows you to cope with your business requirements. Each configuration will lead to:

  • a user interface for data submission, that is displayed to users when they access the dashboard
  • a table on the database

The configuration is done when you are creating a dashboard that requires input from users or when you want to make changes to an existing dashboard. You can configure Write-Back from your Tableau Desktop or Tableau Server. 

The configuration corresponds to the following main steps, which are described below in subsequent sections:

You have your configuration created and you are ready to add data! 

New Base Configuration


If you are in the middle of Write-Back configuration and need to go to the data source screen on Tableau Desktop you may face some issues with login. Find more information here.


01 - Select Source Worksheet

Write-Back needs an existing visualization to be used as an input basis for data. The worksheets available are the ones that have been previously placed on the dashboard. They can be seen on the left side of the Dashboard menu.

 Select Source Worksheet


02 - Worksheet Source Fields

These are the measures and dimensions that will be saved on the Write-Back data set along with new fields filled by the users. The data source might have more fields, but Write-Back only acknowledges the ones used on the selected worksheet. If you need more, you should add them there first. Typically, you want to keep in configuration the business keys that will allow you to join your existing data with data submitted through Write-Back.

  • Set business Keys
    • To be able to have the business keys set, you have to set the Source Field as a Key Field. As Key Field, its value will be used as a parameter to obtain data previously submitted through Write-Back.
  • Save fields values snapshot
    • You may also want to use want to keep a snapshot at the time of submission for any other fields, for instance, if you want to keep track of a measure at submission time. To do so, you should set it as Stored Field.
  • Set view only fields
    • You can also specify that you want a field just to be displayed as a reference, for instance, a measure related to your forecast. These fields will be viewed only in the data submission panel and not persisted in the database. To do that, you have to set the Source Field as View Only Field. 

The source field's dropdown lists every source field from the selected worksheet.

To set the attribute that the source field will have, just select the dropdown of the specific field and choose between Key Field, Stored Field or View Only Field. As the default attribute, the source field will be a Key Field. 

Worksheet Source Fields

If you need to remove any of the source fields, you need to click the dropdown on the pill and click Delete Field or click the checkbox of the corresponding field in the dropdown list, but you always need to have at least one Key Field to be able to submit the configuration.


Remove source fields        Remove source fields


Now it is possible to reorder source fields by dragging them to the desired order. This will be reflected in the order they will be displayed on the data submission screen.


Please take into account that Measure Names and Measure Values cannot be used as source fields. These are special fields that refer to multiple entries on Tableau and aren't applicable on Write-Back. 

Be aware that you have to be careful if your source fields change their type, as you will see that having an impact on Write-Back. One common example is when you change the format of a date on the Tableau viz as this might lead to a field type change from numeric (month: 01) to text (month: Jan).  If you had already configured Write-Back with this field, you will have to go to the configuration panel and adjust accordingly. More details on this in the 388890673 section. 

When using the Tableau model for forecasting, due to the way that the Tableau API sends the data from the worksheet, some values can show up as inconsistent or null. For the same field, there are different values (normal and forecast) and it is not possible to distinguish them on Write-Back and ensure data is correctly added.
If you want to use a table calculation from Tableau together with the calculation field in the same Write-Back configuration, rename the table calculation on tableau so that the extension works correctly. You can rename the table calculation by dragging that field to the left panel where the fields are located.

03 - Dataset Name

Here you specify your dataset name that will be used to reference this configuration and is also the table name on the database. The panel will tell on submit if the name you picked is already in use with an error message. If that's the case you should just choose a different name.

If you have already configured a dataset and you want to re-use it or create a new one that is similar please check  388890673

04 - Add New Input fields

This is the step where you can use the full potential of the Write-Back by creating fields that will be displayed to users so they can submit values. 


Reorder New Fields

When you have more than one new field configured, two buttons appear that allow you to reorder them as you wish. This will impact the visual order in which they appeared on the data submission screen, for the end-users.

These buttons are only used on the standard configuration for the form UI, if you are doing a tabular configuration you can drag the pills inside the containers and place them in the correct order. For more details check this section below.  

Reorder New Fields

Mandatory

For each field, you can choose whether it is mandatory to fill by end-users, for fields checked the user won't be able to submit with an empty value.

Field Validator

For each numeric and text field, you can add a validator expression that will be used to validate the value that the user inserts for the specified field. You can access the validator expression editor by clicking on the icon below the field name.

This expression can be a regex expression, conditional expression, or combine both.

Regex expressions must match the following format: REGEXP_MATCH(expression)

Field Mask

For each numeric field, you can add a mask expression that will be used to format the value that the user inserts for the specified field. You can access the mask expression editor by clicking on the icon below the field name.

You can configure one of two types of expressions: numeric mask or pattern mask. With the numeric mask you can set up a group of parameters that will define how the numeric pattern will be used. In the pattern mask, using #, you can define a pattern that the input must obey.


Example of a numeric mask

Example of a pattern mask


Numeric mask properties:

  • Decimal Scale: Digits after point, 0 for integers. Default is 2.
  • Decimal Separator: Fractional delimiter. Default is , (comma).
  • Thousand Separator: Any single char. Default is empty.
  • Prefix: Default char at the start of input. Default is empty.
  • Pad Zeros: If true, then pads zeros at end to the length of scale. Default is false.
  • Allow Negatives: Default is false.
  • You can switch between mask types with the dropdown at the top of the modal.
  • You can enable or disable a mask. Only one mask per field is allowed.
  • # char represents all numeric digits. Other than that will be considered literal chars to the format.


Field Description

For each field, you can define a description with the information that is relevant to that field. This information will be converted into a tooltip that is displayed to end users on the data screens. Meaning it can be used to better contextualize data submission.



Field Types

Write-Back has a few different types of fields that you can leverage:

  • Text
  • Numeric
  • Date
  • Date and Time
  • Predefined
  • Dynamic Predefined
  • Rich Text

Text

The text fields are most suitable to add information that corresponds to short messages/information, for instance, a comment.

This type of field is now a multiline area. It is possible to manually resize the field area.

Be aware that the text field size is limited to 200 characters.

Numeric

The numeric fields accept both whole numbers and decimal numbers. They are great for instance to create forecasts for values present in the current data source.

Date

The date field type option allows inserting only dates. They are great when you want to save dates without an hour associated.

Date and Time

The date and time field type option allows inserting date-time or "timestamp" values. They are great to save timestamps for events that occurred or plan a day where some event will happen. You can submit only a Date but the value will be stored in the database as a timestamp with 00:00:00 as hours. Submitting just a time value is not a valid option. But if you intend to submit an hour please be sure to submit both the hour and minutes correctly.

When using a Date and Time field make sure that you agree on a timezone to insert data. The value inserted is being treated as an absolute value and is not converted to UTC.

Predefined

The predefined fields are useful when you want to display a drop-down selector with options for end-users, they will only be able to select one of the options making it a good option for any type of categorization. When selecting a predefined field you'll be prompted with more input lines so you can write the options for it. For predefined fields, you are obligated to at least insert two options otherwise you'll be prompted with an error message. Currently, a predefined field can be used on tabular to generate an axis.

Dynamic Predefined

The dynamic predefined fields, like the predefined fields, are useful when we want to present the user with a drop-down of options. The difference is that the options on dynamic predefined come from the possible values existing on a Tableau workbook parameter. Be aware that it's only possible to choose list parameters, depending on the Tableau version these values might be static or automatically updated.

Rich Text

The rich text fields are useful when you want to add information that is longer and/or you want to format the new information with elements like font style, bullets, colors, etc.

Be aware that the rich text field size is limited to 4000 characters.

05 - Field Conditions

Sometimes you want your form to be a bit more dynamic and in certain situations hide fields and simplify it, for instance when you include the option Other on a drop-down and want to request further information only on that case. Field conditions enable you exactly to do that by specifying a condition you can hide and show the fields dynamically.

Conditions correspond to boolean expressions, meaning they must return true or false, and these can be built inside the condition form using multiple combined elements, autocomplete is always active and will guide you on the process. To access this feature click on the condition button on the field.

Field Conditions

The elements that can be used on expressions are:

Fields

Fields can be used meaning that the input provided by the user is placed on the expression in real time. It's not possible to use fields with the format "Date and Time" and fields with the characters '[' and ']' in the name.

Symbol to Use on Expression

Operator
[My Field] This will obtain the input value for the field "My Field"

Operators

The list of operators available is:

Symbol to Use on Expression

Operator
=equals
!=not equals
>greater than
>=greater than or equals
<less than
<=less than or equals

Functions

Symbol to Use on Expression

Function
ANDAND both sides must be true
OROR one of the sides must be true

Other

Symbol to Use on Expression

Function
( ) Parenthesis can be used to group conditions
OROR one of the sides must be true

These are the symbols that can be used to create a condition. There are also various inputs you can use to compare fields.

Using the form

You can compare fields with other fields, with numeric values, or with text. Then you can diversify your condition by applying to different fields and making some fields dependent on other fields.

In the example below the field "My Comment" will only appear if the condition is fulfilled in this case if the numeric value input on the field "My Kpi" is bigger than five, while this condition is not met the field "My Comment" remains hidden.

Using the form

There is a box with the errors of the condition this way you can correct your expression. 


Field condition

You can see which field has a condition by looking at the color of the symbol, if it is blue then the field has a condition. If the condition has errors an error message appears and the symbol becomes red.

06 - Form description

If you want to provide additional context to the users when filling the form you can use this feature. By filling the description input field, the text here provided will be presented to the users at the top right corner of the form. The description is limited to 200 characters.

Form description                    Form description

07 - Choose the Right UI For Your Use Case

You can now choose what type of user interface you want to display to the users:


Form


This is the default way to request the user input and corresponds to displaying a form

  • Useful for use cases where you want users to submit: comments, categorize, or any other example where you mostly have non-numeric fields.
  • The form can be displayed as a pop-up or embedded, you can now go the 388890673section and make this choice among other settings.       

Form

Form

Data Grid

This mode will display fields as an inline data grid view.

Data Grid

Table

By selecting this option you are going to request the user input in a tabular format

  • This is ideal for forecasting use cases or any other example where you have mostly numeric fields across a dimension, for instance, month.
  • This mode requires an additional configuration that is described in the next section.

Table

The Tabular View toggle activates this mode and the corresponding options.

Tabular View

08 -Tabular Configuration 

The tabular configuration allows tailoring the table according to your needs. The configuration is done by dragging the pills from the top to the right section, either one by one or with multiple selections. 

Tabular Configuration

The format is defined on the dataset creation and it cannot be changed on edits. Once you make a tabular configuration you cannot revert to form and the other way around. 

Sections

  • Configure Fields
    • This section is the starting point for all the fields, any field configured on the left panel of Write-Back is displayed here automatically.

The Source Fields that at the end are left here, will be used as business keys for any data submitted and those coordinates show up on top of the screen as Source Fields.

  • Main Form
    • Fields placed in this section are displayed as a regular form to the end users and any data submitted here will be appended to the table cells. Most of the time with a forecast across months or any other set of KPIs you also want to submit information about the overall picture, maybe a description, the forecast date or version, etc. This is the section to use for that purpose. 
    • Be aware
      • being a form only New Input Fields are allowed
      • you must at least have one field
  • Table Columns & Table Rows
    • As the name says fields placed here will drive either the table columns or rows.
    • Insert multiple numeric Input Fields on each section or in alternative one or two Source Fields. Each Source Field is going to generate multiple columns based on the data available at the Source Worksheet meaning you can easily configure the table to have for instance months on columns just by dragging that field.
    • Be aware:
      • table Input Fields cannot be dynamic predefined fields
      • you can only mix Input Fields with Source Fields when using a predefined to generate an axis or if Source Fields are set as View Only Field.
      • you must, at least, have one field on each section

Source fields might be:

  • sorted in reverse order, if that is the case you need to ensure that you reverse the order on Tableau so it shows up on Write-Back.
  • have a random order, in this case, you need to force the sort on the Tableau sheet so the attribute is explicitly sorted in a pre-determined order. 

This is an issue we are trying to improve together with Tableau.  

  • Read Only
    • Allows placing a Source Field that controls whether a particular cell on the table can be edited or not. When doing a forecast you might, for instance, want to prevent users from changing data that occurred in the past, you can do that by creating a calculated field on Tableau that returns true or false and dragging to Read Only. This calculated field is going to be evaluated in the context of each cell:
      • True means the cell cannot be changed
      • False means the cell can be freely changed
    • Be aware:
      • This is a special section that can only have one Source Field that must be boolean, on Tableau corresponds to T|F. 
      • The calculated field must be used in the worksheet as an aggregation. Only in this case we can guarantee that the functionality will work correctly with the source sheet on Tableau.

Source Fields

Advanced Options

These are optional settings that enable tweak further Write-Back behavior.  

Groups

In situations where you want to work with a lot of numeric Input Fields you probably want to place them on rows, for an easy scroll, and you might also want to group them so the users can easily find them. Groups are met to organize Input Field on Table Rows allowing end users to collapse or expand each group individually and thus making it easy to find the right fields. 

Groups

Storage Options

Most of the time you want to have a well-formed table to store the data:

CountryProfit ForecastCost Forecast
Portugal10090
USA1000900
UK500400

The only disadvantage of this approach is the audit since the audit is done by row if a user makes an edit for Portugal you need to compare both Profit and Cost columns with the previous entry to see what was changed. In order to overcome this, we allow fields to be stored pivoted for individual audit. The table above becomes:

CountryFIELD_NAMEFIELD_VALUE
PortugalProfit Forecast100
PortugalCost Forecast90
USAProfit Forecast1000
USACost Forecast900
UKProfit Forecast500
UKCost Forecast400

This data organization allows detailed audit per Input Field at the expense of making the table harder to read. Nevertheless, it is possible to create a calculated field on Tableau for each of the Field Names and recreate the original table: 

Create a calculated field on Tableau for each of the Field Names

To switch to Pivot mode:

Switch to Pivot mode


Switching on and off pivot mode will delete all data on that field from the tables. A modal will appear for you to confirm your changes.

09 - Interaction Options 

Auto-Refresh Dashboard

By default Write-Back keeps the window open so users can do multiple interactions, insert, edit or delete in a quick way. In this case, feedback is provided on the timeline. 

However, for use cases where you want the dashboard to be activated in real-time, you can activate auto-refresh.


With auto-refresh on, once the user clicks on the submit button the window is immediately closed and dashboard data sources are refreshed, meaning they will get the latest data submitted.

Refresh the dashboard data sources

Auto-Refresh Dashboard can have performance implications depending on the data sources used on the dashboard as they are all refreshed.

Mark Required

In most use cases you want to associate user input with a particular mark on a visualization. However it is possible that you might want to provide input across the whole dashboard, for example on a monthly report, and in this case, no mark needs to be selected. 

This option enables to set this behavior on Write-Back:

  • Enabled (set by default) - The user will be requested to select at least one mark before submitting data. Any data submitted is associated with the marks selected based on the source fields defined previously on the configuration. 
  • Disabled - Users can immediately click to submit data. Since no marks are selected, user inputs will be associated with all the members found for the source fields. This means that these source fields should most likely be filtered on the Tableau visualization making them unique, for instance on the monthly dashboard it would be the month and year. 



Mark Required

Reverse Source Values

When enabled, the tabular axis with Source Fields will reverse the order of the values from the worksheet.

Unique Entries

Write-Back can be used in many different use cases and sometimes you want to ensure that for each selection users can only provide one entry. Imagine that you want to categorize customers each one should only have one value. This is different from a commenting use case where you want to allow many comments for the same entry.  

When enabled, this option forces a one-to-one relationship with source fields combination and is reflected in the add data screens. In the form UI users are only allowed to have one record per mark, and, on the tabular UI, one snapshot per mark. After the first insert when someone tries to fill that mark again the UI is automatically set to edit mode, thus enforcing there can't have more than one active entry.

Inline Form

When active, the form for submitting and editing data will be presented embedded in the dashboard instead of the standard pop-up. This allows Write-Back to be inline with the rest of the dashboard elements. This means you can better implement use cases that require simple forms providing a better experience for end-users. Bear in mind that this will require more space on the dashboard but after closing the configuration you can freely adjust the Extension widget size to get the best results. 

As a side note, this feature is not yet available for Tabular View.

Show User and Time

When active, the username and timestamp of the submission/edition of a record will appear on the timeline, next to the corresponding record. To be able to use this option, it requires enabling this option on Write-Back Manager.


Customize Write-Back Button

You can customize different aspects of the Write-Back dashboard button such as text, color, and font size. This is useful to indicate to end users what they will be submitting and also to better match your dashboard look & feel.

To make this configuration you can:

  • choose a color from the color picker, to change the defaults check the installation manual, or assign a new one with a hexadecimal code.
  • define the text displayed on Name
  • assign a text size by selecting on the drop-down or writing a number
    • please bear in mind the minimum size is 10


When combined with an embedded form this will change the main color for the form elements as well as the form title size.

10 - Submit

To submit the configuration simply press the SUBMIT button. Please pay attention to the errors that might show up in red. Keep in mind that the fields should have different names and that the dataset name might already be used! After a successful submission Write-Back is ready to be used. 

Editing a Configuration

The structure of the configuration panel when we're editing is exactly the same as when we're first creating a configuration. However this time we'll see the previous configuration loaded and ready to be edited. 

To first start editing a configuration you need to select that option in the Tableau Extension panel (circle in the image), so:

  • Select the panel where the extension is running.
  • Click on the downward arrow, with the helper text "More Options".
  • After that select the configure option.
  • Screen 1 must open with the fields filled

Editing a Configuration

Adding new Source Fields

When editing you can add new source fields by clicking on Add Source Fields.

On this drop-down, you are only able to add new fields if you want to remove the check

If you already have data on the Write-Back dataset table when editing a configuration to add new source fields, they will have their columns with the values as null, therefore data will not appear in the timeline but it was not deleted from the table. 

Deleting Source Fields

If you wish to delete a source field you can do so by clicking o the x or choosing Delete Field on the drop-down, see the "Fields with Errors" topic below. On the back end the column associated with a deleted field is dropped and any data previously submitted is lost.

Fields with Errors 

A red pill indicates an error and shows up when the field name is configured on Write-Back it isn't found on the existing datasheet obtained from Tableau. Bear in mind that if the source datasheet name is not found Write-Back defaults to the first one found.

To fix a red pill you can:

  • Replace by another field:
    • This feature is useful if you have changed the underlying dashboard and want to fix the fields without losing data previously submitted. 

    • The pill drop-down only shows up when compatible fields to rename exist, there must be a field of the same type (Numeric, Text, etc) that is still not listed there (not checked in add source fields dropdown).

    • When you click the field and rename it, the drop-down retains the column and the data on the back end but changes the name of the field.

      Fields with Errors
  • Delete the field
    • If you really wish to delete the field and replace it with a new one, you need to remove the former field by clicking on Delete Field inside the drop-down and add the new source field afterward.

Changing Field Types

Changing a field type or switching between storage types will delete all data on that field from the tables. The action only completes once the edit data set button is clicked. A modal will appear for you to confirm your changes, like in the image below.


Changing Field Types


On the left, we have an example of a modal when changing a field type and on the right an example of when we're attempting to delete a field or the dataset.

Loading Saved Datasets 

Existing datasets can be loaded so they are easily re-used on a different use case. Complex datasets can be reloaded to be used as a template for a different use case or you can re-use the same exact dataset on two dashboards. 

To reload a saved dataset configuration click on the corresponding icon and a window pops up. 

Loading Saved Datasets

In this window, all the previously configured datasets (that were not deleted) will show up, you can search them by name and when you find the desired one you can simply click on it to select. By clicking Go you should fill all the fields in the configuration screen exactly how it was when that selected dataset was configured. Here's an example:


Dataset 

After loading the saved dataset you can choose to provide a new name becoming a new dataset, the button at the bottom changes to SUBMIT AS.... As an alternative, you can keep the existing name and thus use the same dataset twice. By using the same dataset twice both dashboards will write to the same table and any configuration change will have an impact on both. Hence when you click on SUBMIT a warning is displayed:

Submit Dataset

After loading a dataset any subsequent changes will override the configuration on any dashboard where it is used unless you choose to provide a new name. 

When performing an edit on a configuration that is already saved on the dataset, the button to load Saved Datasets does not show up. This is intended as this action is not meant to happen if a configuration is already saved on the dataset.

Multiple Configurations


It is possible to configure multiple datasets in the same tableau extension. Each existing Source Worksheet can have only one configuration. Each dataset has a corresponding tab where you can view its name.
If you have more than one configuration, the Mark Requirement is mandatory.

All configurations must have the same configuration type.
The inline option must be the same across all configurations.