Data Composer

Data composer is a powerful tool used to explore and manipulate the data created by your configuration. Use this data to create document templates, calculated fields or lists, and to further configure the system with data-based rules or manipulation such as data quality rules. This means that no matter how you have configured the system, you will always be able to access your data. For example, once data has been created in the system, it can be used to insert data into documents using the document template tag browser.

What is Data Composer?

Data composer is used across the application to allow you to explore, manipulate or use the data elements within the system. This includes out-of-the-box data and data associated with the configuration you have built within your instance. 

For example, if you set up a new service desk ticket work type, the data composer allows you to see all the available data elements on the ticket itself (e.g. title and reference). It also allows you to explore and find the related data (e.g. the name of the person who reported the ticket). You can move up through the work type hierarchy to find the SLAs associated with the contract under which the ticket was raised. The data composer essentially allows you to see the web of data you have created in the system based on your individual configuration and based on a particular context.

While exploring your data, you are able to see examples of data if required using the debug tool. For example, if you are looking at the data descriptions for the service request ticket described above, you can use the debug tool to enter a ticket number and actually see the data that is returned for any of the data elements you are interested in. This is particularly useful when familiarising yourself with the tool.

Whilst being able to see the data available to you in the system is useful, how is this practically used? Firstly the data composer is used to provide tags for use in document templates. When querying the composer, you are able to expose a tag. This can be placed into a document template using the ShareDo Autodoc tool, and when the document is generated, the associated data will be pulled through into the document. Data composer can be used to further manipulate data by creating calculated fields or pre-calculated lists. Calculated fields can be used to change the format of data, use if / then clauses to determine further data elements and a large variety of other functions. The data composer can also be used to explore data and provide the data tags required for use in matching rules or other areas of configuration in the system.

What type of data can I see in Data Composer?

Data composer shows many different types of data. For examples of these types and how they are used, view the Common Data Elements article.

Why do I need Data Composer?

ShareDo is a highly configurable system that facilitates the creation of simple or complex relationships between the objects you define within it and allows a high degree of flexibility on how you extend any work type. Work types act a little like stem cells in that at the point they are created, they can become anything. But work types do share a common set of characteristics. As you configure your work type, you specialise it for how it will be used, the information it will need, the participants it will require, and how it will need to be viewed. The data composer allows you to see how the way you have configured the system impacts the data elements available to you. You can then pull this information from the data composer to use in document templates and other configuration elements, e.g. matching rules. Data composer essentially enables you to access the data you have created that is specific to your configuration of the system.

Where can I access the Data Composer?

Area Usage

Work Type Data Composer

 

Accessing Data Composer:

Modeller > Work Types > {work type name}

Used to explore the data elements for particular work types, including participants, related work types, and custom fields.

Create calculated fields for the work type that can be used in document templates or elsewhere.

ODS Data Composer (Organisation, People etc.)

 

Accessing Data Composer:

Modeller > Participant Types > ODS Data Composer

Used to explore the data elements associated with different types of Operational Data Store (ODS) entities e.g. Organisation, Teams, Person. You are also able to create calculated fields here by clicking the + icon at the top right of the title bar.

Document Templates

 

Accessing Data Composer:

Documents Admin > Document Templates select a template in the portal, then click Tag Browser in the ribbon

Use the document tag browser, either in ShareDo or in Word, to tag your documents.

Document templates allow you to create documents from ShareDo that pull in data elements depending on the context in which they are created.

When creating a template, a context is defined, e.g. a particular work type. This defines the context for running a document. For example, it will be run in regards to a particular work type. The Tag Browser function then displays a version of the data composer that allows you to explore the data available to that template. This includes things like data about who the document is to or from. The tag for any required pieces of information can be placed into the document template using the Word add-in, as the data composer is fully integrated into Word.

Admin Operational Data Store (Organisation, People etc.)

 

Accessing Data Composer:

Admin> Operational Data Store 

Select the type of data (People, Locations, Organisations, Organisation Hierarchy Roles, or Time Periods).

Use the ShareDo Admin Operational Data Store menu to access and edit available data for people, locations, organisations, organisation hierarchy roles, and time periods.

Selecting one of the data types opens the list of entries for that type. Select one of those entries to open a blade where you can edit the stored data for that entry. You can also create new records for people, organisations, organisation hierarchy roles, and time periods.

Calculated Fields

Calculated fields allow you to extend your data model and use existing data to create new data elements. For example, you can change the value of your calculated field based on another field value, or you may perform a calculation on other fields to give a new answer: field a * field b.

This table provides some common examples of calculated fields. Find detailed information on how to create a calculated field in the Calculated Fields article.

Calculated field example Description and usage
if(count(workitem.roles.witness) > 0, 'Has witnesses', ‘Does not have witnesses’) Counts the number of participants holding the witness role for a work item. If there are one or more, it returns ‘Has Witnesses’. If there are none, it returns 'Does not have witnesses'.
Used in documents to change the text.
toUpper(workitem.roles.client.ods.person.lastname) + ' ' + toUpper(truncate(workitem.roles.client.ods.person.firstName, 1)) For ‘John Smith’, will return ‘SMITH J’.
This kind of function can be used to build up names in the format required by specific documents. You can add a calculated field to the ODS entity (e.g. person) so that every person would have this name format.
numberToWordsWithCase(4134, ‘title’) Returns the number in title case e.g. Four Thousand and Thirty Four.
Case options are 'title' or 'upper'. If omitted, the calculation returns the number in the default lowercase. You can use this in documents where numbers must be written as words.
format('12/01/2018', 'dddos MMMM yyyy')
 
Format a date using the ShareDo specific 'dos' component to produce the day ordinal suffix: 2nd May 2023.
 
format(dateAdd('d',3,'01/01/2000 12:00:00.100'), 'dd/MM/yyyy hh:mm:ss.fff')
 
Add / Subtract dates using the dateAdd function.
 
my_interger_field * my_other_intergerfield Perform mathematical calculations with fields that are integers.
 

Calculated List

Calculated lists can be used to further filter and sort lists that already exist in data composer. I may have a list of witnesses on the work type, but I only want to see those that have a particular attribute, for example, the female witnesses. I am able to create a calculated list which will allow me to store my filtered list and use it in the application and in documents.

For more information, see this article on Calculated Lists.