/
REST Objects FlexView

REST Objects FlexView

5.0.0

The FlexView object can be part of:

or:

  • The Work Item object, in the following locations:
  • In this situation, a FlexView object represents flexible "extra" items of information associated with a booked Work Item. 

ServiceBroker supports FlexView objects as part of a Work Item object when the primary sub-system is ServiceMobility or ServiceScheduling. (Work Item objects associated with other primary-subsystems do not support the use of a FlexView object).

The behaviour of the FlexView object is different for the two supported primary sub-systems. Please see below for details.

ServiceMobility

When ServiceMobility is the primary sub-system for a Work Item object, then the structure of any associated FlexView objects in ServiceBroker is not defined at the ServiceBroker level. 

Instead, the FlexView object will be a pass-through object in ServiceBroker - that is, the FlexView object will have the object structure as defined by the version of ServiceMobility which is the primary sub-system.

Accordingly, please see the appropriate documentation for the FlexView object in the relevant version of ServiceMobility:

ServiceScheduling

When ServiceScheduling is the primary sub-system for a Work Item object, then the structure of any associated FlexView objects in ServiceBroker is as defined below.

  1. The ServiceBroker Work Item Object FlexView field is only mapped to the ServiceScheduling moreNotes field when:
    1. the moreNotes content is XML (see the REST Objects Work Item's Notes field for when the moreNotes field contains plain text); and
    2. the UseMoreNotesForJobInfo configuration setting is false.

When ServiceScheduling is the primary sub-system for a Work Item object, and the above requirements are met (i.e. the moreNotes field of the Work Item in ServiceScheduling in XML, and the UseMoreNotesForJobInfo configuration setting is false), then there are two different ways that ServiceBroker will parse the moreNotes XML into FlexView objects, depending on the XML content provided by ServiceScheduling:

Basic More Notes Format

When the ServiceScheduling moreNotes XML is a simple list of one or more name/value pairs, representing simple additional notes in XML format, then ServiceBroker will parse this into a single FlexView object, with a Title value of "More Notes", and the name/value pairs being translated into corresponding Label/Value entries in the Items array.

For example, a moreNotes XML value in ServiceScheduling of:

XML Format
<?xml version='1.0' encoding='UTF-8' ?>
	<notes>
		<p id='Email' x='3'>example@example.com</p>
		<p id='Mobile' x='3'>123456789</p>
		<p id='Home' x='3'>987654321</p>
	</notes>
</xml>

will be translated into a FlexView object of format:

JSON Format
{
	"Title": "More Notes",
    "Items": [
    	{
        	"Label": "Email",
            "Value": "example@example.com"
        },
        {
            "Label": "Mobile",
            "Value": "123456789"
        },
        {
            "Label": "Home",
            "Value": "987654321"
        }
    ]
}

Extended More Notes Format

In addition to supporting a simple list of name/value pairs in XML format, ServiceScheduling also supports a specific "extended" XML format, which allows specific Work Item asset, job description and customer details to be stored.

When the ServiceScheduling moreNotes XML is in this extended format, then ServiceBroker will parse this into a number of FlexView objects, with Title values based on the specific ServiceScheduling sections, with appropriate corresponding Label/Value entries in the Items array for each.

For example, a moreNotes XML value in ServiceScheduling of:

XML Format
<?xml version='1.0' encoding='UTF-8' ?>
	<notes>
		<p id='ASSET' x='3'>----------------</p>
		<p id='Make' x='3'>ABC</p>
		<p id='Model' x='3'>AAA1234</p>
		<p id='Serial' x='3'>AABBCC1234567890</p>
		<p id='JOB_DESCRIPTION' x='3'>----------------</p>
		<p id='Description' x='3'>Problem with device.</p>
		<p id='CUSTOMER' x='3'>----------------</p>
		<p id='Email' x='3'>example@example.com</p>
		<p id='Mobile' x='3'>123456789</p>
		<p id='Home' x='3'>987654321</p>
	</notes>
</xml>

will be translated into three FlexView objects of format:

JSON Format
{
    "Title": "ASSET",
    "Items": [
        {
            "Label": "Make",
            "Value": "ABC"
        },
        {
            "Label": "Model",
            "Value": "AAA1234"
        },
        {
            "Label": "Serial",
            "Value": "AABBCC1234567890"
        }
    ]
},

{
    "Title": "JOB_DESCRIPTION",
    "Items": [
        {
            "Label": "Description",
            "Value": "Problem with device."
        }
    ]
},

{
    "Title": "CUSTOMER",
    "Items": [
        {
            "Label": "Email",
            "Value": "example@example.com"
        },
        {
            "Label": "Mobile",
            "Value": "123456789"
        },
        {
            "Label": "Home",
            "Value": "987654321"
        }
    ]
}

FlexView Object Format

JSON Format
{
	"Title": "",
	"Items": [
		{
			"Label": "",
			"Value": "",
		},
		{
			"Label": "",
			"Value": "",
		},
		...
	]
}

FlexView Object Properties

PropertyTypeRequired?DescriptionField Mappings
ServiceScheduling
TitlestringYes

 A title, describing a "group" of FlexView item(s).

moreNotes
Items




LabelstringYesA label, describing the specific FlexView item in the "group".

moreNotes


ValuestringYesThe value for the associated "label" in the "group"moreNotes