Affected Items
Affected Items is a predefined configuration of the Item List component. Affected Items shows items affected by a change request. For each affected item, Affected Items displays attributes which you can choose via configuration. The default attributes are item Name, Number, Object Type Indicator, Version, State, and Description.
Each item name is a link to the ThingWorx Navigate page for that item. If there is no ThingWorx Navigate page for that item type, it is a link to the Windchill Details page for that item. The link only works properly if you have permission to access the linked ThingWorx Navigate or Windchill page.
Affected Items has similar search, sort, filter, export, and restore defaults capabilities as Item List.
The following is a sample image showing the Affected Items predefined configuration:
Binding Properties
For information on binding Affected Items, see the
Item List component.
| For Affected Items, the input binding property supports the PTC.Workflow.WorkItem and PTC.ChangeMgmt.ChangeRequest object types. The output of the selectedItems binding property contains items with the PTC.ChangeMgmt.AffectsLinkItem object type. |
Configuration Properties
For information on configuring Affected Items, see the
Item List component. In addition, the following JSON properties are specific to Affected Items.
For more information on the structure of the configuration, see
Component Configuration Structure.
For more information on sub-properties, see
Sub-Properties and Container Keys.
Property Name | Description | Property Type | Default Value | Required or Optional |
isLink | Turns the specified attribute into a hyperlink. This is a sub-property to the attributes configuration property. When inserted into one of the attribute IDs, that attribute appears as a hyperlink in the user interface. The link points to a details mashup for that particular type of item. In case no details mashup is found for that item type, the link redirects to that item’s corresponding Windchill page. This property’s container key is implementationAttributesDefinition. Example: { "additionalData":{ "implementationAttributesDefinition":{ "isLink":{ "value":true } } }, "id":"AffectedObjects|Name", "ordinal":0 } | | N/A | Required |
attributes | Accepts attributes of the PTC.ChangeMgmt.AffectsLinkItem object type. | | N/A | Required |
defaultSortField | Accepts attributes of the PTC.ChangeMgmt.AffectsLinkItem object type. | | N/A | Optional |
filterFields | Accepts attributes of the PTC.ChangeMgmt.AffectsLinkItem object type. | | N/A | Optional |
Sample Configuration
{
"selectionType": {
"selectedKey": "none"
},
"waitForInput": {
"value": true
},
"actionBarConfiguration": {
"value": {
"actionBarConfigurationJSON": {
"value": ""
}
}
},
"defaultSortFields": {
"selectedValues": {
"data": [
{
"itemListsData": [
{
"items": [
{
"additionalData": {
"itemListDefaultSortFieldDefinition": {
"defaultSortDirection": {
"selectedKey": "asc"
}
}
},
"id": "AffectedObjects|Name"
}
],
"objectType": "PTC.ChangeMgmt.AffectsLinkItem"
}
],
"adapter": {
"instanceName": "windchill",
"thingName": "PTC.WCAdapter"
}
}
]
}
},
"attributes": {
"selectedValues": {
"data": [
{
"itemListsData": [
{
"items": [
{
"additionalData": {
"implementationAttributesDefinition": {
"isLink": {
"value": true
}
}
},
"id": "AffectedObjects|Name",
"ordinal": 0
},
{
"id": "AffectedObjects|Number",
"ordinal": 1
},
{
"id": "AffectedObjects|TypeIcon#Tooltip",
"ordinal": 2
},
{
"id": "AffectedObjects|Version",
"ordinal": 3
},
{
"id": "AffectedObjects|State#Display",
"ordinal": 4
},
{
"id": "Description",
"ordinal": 5
}
],
"objectType": "PTC.ChangeMgmt.AffectsLinkItem"
}
],
"adapter": {
"instanceName": "windchill",
"thingName": "PTC.WCAdapter"
}
}
]
},
"inTailoring": true
},
"label": {
"value": "[[PTC.Nav.AffectedItems.UILabel]]"
},
"showExportAction": {
"inTailoring": true,
"value": true
},
"enableSearch": {
"additionalData": {
"itemListSearchDefinition": {
"searchHintText": {
"value": "[[PTC.Nav.AffectedItems.FindHintText]]"
}
}
},
"value": true
},
"maxNumberOfRowsInGrid": {
"inTailoring": true,
"value": 50
}
}
Customization Services
In addition to configuration, each component supports extending its business logic to customize the component. The business logic of each component includes overridable services in a Thing Template that you can extend and override. The overridable services for this component are detailed in the following table.
For examples of returns and parameters for each service, see
Examples of Input/Output for Customization Services.
Name | Description |
GetConfigurations | Returns the available configurations for Affected Items. Parameters: None Returns: JSON |
GetImplementationLabel | Returns either the localized name of the component or the token that can be used to obtain the localized name. This localized name is displayed in the Mashup Builder user interface. Parameters: None Returns: String |
GetItems | Returns the affected items for the change request item specified in the input. Parameters: input (Optional)– JSON in CCO format that includes the input ID for the data to be fetched from the backend system and the adapter information for the backend system. configuration (Required)– JSON with the final merged configuration obtained from the Tailoring Manager resource. Returns: JSON in CCO format |
InitializeFilters | Returns the filter type definition for each of the filter fields in the configuration. Parameters: input (Optional)– JSON in CCO format that includes the input ID for the data to be fetched from the backend system and the adapter information for the backend system. configuration (Required)– JSON with the final merged configuration obtained from the Tailoring Manager resource. Returns: JSON in CCO format |
DefHookAttributesTypesInfo | Returns a JSON:Array containing adapter information and the attributes’ object types supported by the component. Parameters: None Returns: JSON:Array |
DefHookMaxRowsProperties | Returns the properties for the maximum number of rows to display in the grid area. Parameters: None Returns: JSON |
Implementation Definition
{
"array":[
{
"property":{
},
"value":{
"initializationData":{
"version":"1.0.0",
"constraints":{
},
"properties":{
"directDefinition":[
{
"property":{
},
"value":{
"initializationData":{
"version":"1.0.0",
"constraints":{
},
"properties":{
}
},
"elementVersion":"1.0.0",
"elementName":"PTC.Nav.DynamicForm.Textbox"
},
"mandatory":false,
"key":"actionBarConfigurationJSON"
}
],
"componentDefinition":{
"thingName":null,
"allowSelection":false
}
}
},
"elementVersion":"1.0.0",
"elementName":"PTC.Nav.DynamicForm.DefinitionGroup"
},
"mandatory":false,
"key":"actionBarConfiguration"
},
{
"property":{
},
"value":{
"initializationData":{
"version":"1.0.0",
"constraints":{
},
"properties":{
"additionalDefinition":[
{
"directDefinition":[
{
"property":{
},
"value":{
"initializationData":{
"version":"1.0.0",
"constraints":{
},
"properties":{
}
},
"elementVersion":"1.0.0",
"elementName":"PTC.Nav.DynamicForm.Textbox"
},
"mandatory":false,
"key":"fieldTitleOverride"
}
],
"key":"itemListAttributesDefinition"
},
{
"directDefinition":[
],
"key":"implementationAttributesDefinition"
}
],
"updateServiceName":"",
"minimumSelectedAttributes":null,
"supportedTypes":{
"data":[
{
"itemListsData":[
{
"selectionGroupIds":[
"AL"
],
"objectType":"PTC.ChangeMgmt.AffectsLinkItem"
}
],
"adapter":{
"instanceName":"windchill",
"thingName":"PTC.WCAdapter"
}
}
],
"allowSubsetForTailoring":false
},
"addServiceName":"",
"maximumSelectedAttributes":null
}
},
"elementVersion":"1.0.0",
"elementName":"PTC.Nav.DynamicForm.AttributesSelector"
},
"mandatory":true,
"key":"attributes"
},
{
"property":{
},
"value":{
"initializationData":{
"version":"1.0.0",
"constraints":{
},
"properties":{
"additionalDefinition":[
{
"directDefinition":[
{
"property":{
},
"value":{
"initializationData":{
"version":"1.0.0",
"constraints":{
},
"properties":{
"options":[
{
"description":"Sort column in ascending order",
"label":"[[PTC.Nav.ItemList.SortOrder.Asc]]",
"key":"asc"
},
{
"description":"Sort column in descending order",
"label":"[[PTC.Nav.ItemList.SortOrder.Dsc]]",
"key":"dsc"
}
],
"updateServiceName":null,
"addServiceName":null
}
},
"elementVersion":"1.0.0",
"elementName":"PTC.Nav.DynamicForm.RadioButton"
},
"mandatory":false,
"key":"defaultSortDirection"
}
],
"key":"itemListDefaultSortFieldDefinition"
}
],
"updateServiceName":"",
"minimumSelectedAttributes":null,
"supportedTypes":{
"data":[
{
"itemListsData":[
{
"selectionGroupIds":[
"AL"
],
"objectType":"PTC.ChangeMgmt.AffectsLinkItem"
}
],
"adapter":{
"instanceName":"windchill",
"thingName":"PTC.WCAdapter"
}
}
],
"allowSubsetForTailoring":false
},
"addServiceName":"",
"maximumSelectedAttributes":null
}
},
"elementVersion":"1.0.0",
"elementName":"PTC.Nav.DynamicForm.AttributesSelector"
},
"mandatory":false,
"key":"defaultSortFields"
},
{
"property":{
},
"value":{
"initializationData":{
"version":"1.0.0",
"constraints":{
},
"properties":{
"default":true,
"true":{
"additionalDefinition":[
{
"directDefinition":[
{
"property":{
},
"value":{
"initializationData":{
"version":"1.0.0",
"constraints":{
},
"properties":{
}
},
"elementVersion":"1.0.0",
"elementName":"PTC.Nav.DynamicForm.Textbox"
},
"mandatory":false,
"key":"searchHintText"
}
],
"key":"itemListSearchDefinition"
}
],
"label":"[[PTC.AccessApp.Yes]]"
},
"false":{
"additionalDefinition":[
],
"label":"[[PTC.AccessApp.No]]"
}
}
},
"elementVersion":"1.0.0",
"elementName":"PTC.Nav.DynamicForm.Toggle"
},
"mandatory":false,
"key":"enableSearch"
},
{
"property":{
},
"value":{
"initializationData":{
"version":"1.0.0",
"constraints":{
},
"properties":{
"additionalDefinition":[
{
"directDefinition":[
{
"property":{
},
"value":{
"initializationData":{
"version":"1.0.0",
"constraints":{
},
"properties":{
"dynamicallySetTypeServiceName":"GetFilterTypeDefinitionForFilterField",
"type":{
"enum":{
"options":[
],
"updateServiceName":null,
"dynamicallySetOptionsServiceName":null,
"addServiceName":null,
"multiSelect":null
}
}
}
},
"elementVersion":"1.0.0",
"elementName":"PTC.Nav.DynamicForm.FieldFilter"
},
"mandatory":false,
"key":"defaultSelectedFilterValues"
},
{
"property":{
},
"value":{
"initializationData":{
"version":"1.0.0",
"constraints":{
},
"properties":{
}
},
"elementVersion":"1.0.0",
"elementName":"PTC.Nav.DynamicForm.Textbox"
},
"mandatory":false,
"key":"filterLabelOverride"
}
],
"key":"itemListFilterFieldDefinition"
}
],
"updateServiceName":"",
"minimumSelectedAttributes":0,
"supportedTypes":{
"data":[
{
"itemListsData":[
{
"selectionGroupIds":[
"AL"
],
"objectType":"PTC.ChangeMgmt.AffectsLinkItem"
}
],
"adapter":{
"instanceName":"windchill",
"thingName":"PTC.WCAdapter"
}
}
],
"allowSubsetForTailoring":false
},
"addServiceName":"",
"maximumSelectedAttributes":1
}
},
"elementVersion":"1.0.0",
"elementName":"PTC.Nav.DynamicForm.AttributesSelector"
},
"mandatory":false,
"key":"filterFields"
},
{
"property":{
},
"value":{
"initializationData":{
"version":"1.0.0",
"constraints":{
},
"properties":{
"directDefinition":[
],
"componentDefinition":{
"thingName":null,
"allowSelection":false
}
}
},
"elementVersion":"1.0.0",
"elementName":"PTC.Nav.DynamicForm.DefinitionGroup"
},
"mandatory":false,
"key":"implementationConfiguration"
},
{
"property":{
},
"value":{
"initializationData":{
"version":"1.0.0",
"constraints":{
},
"properties":{
}
},
"elementVersion":"1.0.0",
"elementName":"PTC.Nav.DynamicForm.Textbox"
},
"mandatory":false,
"key":"label"
},
{
"property":{
},
"value":{
"initializationData":{
"version":"1.0.0",
"constraints":{
},
"properties":{
"minValue":50,
"default":50,
"maxValue":10000,
"step":50
}
},
"elementVersion":"1.0.0",
"elementName":"PTC.Nav.DynamicForm.Number"
},
"mandatory":true,
"key":"maxNumberOfRowsInGrid"
},
{
"property":{
},
"value":{
"initializationData":{
"version":"1.0.0",
"constraints":{
},
"properties":{
"options":[
{
"description":"Disallow items selection",
"label":"[[PTC.Nav.ItemList.SelectionType.None]]",
"key":"none"
},
{
"description":"Allow single item selection",
"label":"[[PTC.Nav.ItemList.SelectionType.Single]]",
"key":"single"
},
{
"description":"Allow multiple items selection",
"label":"[[PTC.Nav.ItemList.SelectionType.Multiple]]",
"key":"multi"
}
],
"updateServiceName":null,
"addServiceName":null
}
},
"elementVersion":"1.0.0",
"elementName":"PTC.Nav.DynamicForm.RadioButton"
},
"mandatory":false,
"key":"selectionType"
},
{
"property":{
},
"value":{
"initializationData":{
"version":"1.0.0",
"constraints":{
},
"properties":{
"default":true,
"true":{
"additionalDefinition":[
],
"label":"[[PTC.AccessApp.Yes]]"
},
"false":{
"additionalDefinition":[
],
"label":"[[PTC.AccessApp.No]]"
}
}
},
"elementVersion":"1.0.0",
"elementName":"PTC.Nav.DynamicForm.Toggle"
},
"mandatory":false,
"key":"showExportAction"
},
{
"property":{
},
"value":{
"initializationData":{
"version":"1.0.0",
"constraints":{
},
"properties":{
"default":false,
"true":{
"additionalDefinition":[
],
"label":"[[PTC.AccessApp.Yes]]"
},
"false":{
"additionalDefinition":[
],
"label":"[[PTC.AccessApp.No]]"
}
}
},
"elementVersion":"1.0.0",
"elementName":"PTC.Nav.DynamicForm.Toggle"
},
"mandatory":false,
"key":"waitForInput"
}
]
}