Task Identity
Task Identity is a predefined configuration of the Item Identity component that displays a panel containing basic information about a Windchill task. The Task Identity panel provides basic information about a task and its associated change request. The panel includes primary and secondary titles for the change request and identity attributes. The default attributes included in the panel are Role, Due Date, Status, Category, and Request Priority. There is also an Action Bar component embedded into the Task Identity panel. The default actions included in the panel are Approve, Reject, Analyze, and Reassign.
The following is a sample image showing the Task Identity predefined configuration:
Binding Properties
For information on binding Task Identity, see the
Item Identity component.
| For Task Identity, the input binding property supports the PTC.Workflow.WorkItem and PTC.ChangeMgmt.ChangeRequest object types. |
Configuration Properties
For information on configuring Task Identity, see the
Item Identity component.
Property Name | Description | Property Type | Default Value | Required or Optional |
---|
primaryTitle | Accepts attributes of the PTC.Workflow.WorkItem and PTC.ChangeMgmt.ChangeRequest object types. | | N/A | Required |
secondaryTitle | Accepts attributes of the PTC.Workflow.WorkItem and PTC.ChangeMgmt.ChangeRequest object types. | | N/A | Required |
attributes | Accepts attributes of the PTC.Workflow.WorkItem and PTC.ChangeMgmt.ChangeRequest object types. | | N/A | Required |
Sample Configuration
{
"primaryTitle": {
"selectedValues": {
"data": [
{
"itemListsData": [
{
"items": [
{
"numericIdentifier": 1,
"id": "Subject|SubjectName"
}
],
"objectType": "PTC.Workflow.WorkItem"
}
],
"adapter": {
"instanceName": "windchill",
"thingName": "PTC.WCAdapter"
}
}
]
},
"pattern": "%1",
"filteredValues": {
"data": [
{
"itemListsData": [
{
"objectType": ""
}
],
"adapter": {
"instanceName": "",
"thingName": ""
}
}
]
}
},
"actionBarConfiguration": {
"value": {
"actionBarConfigurationJSON": {
"value": "{ \"maxItemsToShow\": { \"value\": 2 }, \"modelThingName\": { \"entityName\": \"PTC.ActionBarModel.Thing\" }, \"actions\": { \"selectedValues\": { \"data\": [ { \"itemListsData\": [ { \"items\": [ { \"id\": \"Approve\", \"additionalData\": { \"actionConfiguration\": { \"overrideLabel\": { \"value\": \"\" }, \"popupHeight\": { \"value\": 479 }, \"actionButtonVisibility\": { \"selectedKey\": \"HideUnavailable\" }, \"buttonStyle\": { \"selectedKey\": \"primary\" }, \"mashupName\": { \"mashupName\": \"PTC.AccessApp.WindchillServices.RoutingOptionMashup\" }, \"fireEventOnFinish\": { \"value\": false }, \"activityType\": { \"selectedKey\": \"popup\" }, \"redirectAfterPopupSuccess\": { \"mashupName\": \"PTC.MyTasksAppMashup\" }, \"popupWidth\": { \"value\": 600 } } }, \"ordinal\": 10 }, { \"id\": \"Reject\", \"additionalData\": { \"actionConfiguration\": { \"overrideLabel\": { \"value\": \"\" }, \"popupHeight\": { \"value\": 479 }, \"actionButtonVisibility\": { \"selectedKey\": \"HideUnavailable\" }, \"buttonStyle\": { \"selectedKey\": \"primary\" }, \"mashupName\": { \"mashupName\": \"PTC.AccessApp.WindchillServices.RoutingOptionMashup\" }, \"fireEventOnFinish\": { \"value\": false }, \"activityType\": { \"selectedKey\": \"popup\" }, \"redirectAfterPopupSuccess\": { \"mashupName\": \"PTC.MyTasksAppMashup\" }, \"popupWidth\": { \"value\": 600 } } }, \"ordinal\": 20 }, { \"id\": \"Analyze\", \"additionalData\": { \"actionConfiguration\": { \"overrideLabel\": { \"value\": \"\" }, \"popupHeight\": { \"value\": 479 }, \"actionButtonVisibility\": { \"selectedKey\": \"HideUnavailable\" }, \"buttonStyle\": { \"selectedKey\": \"primary\" }, \"mashupName\": { \"mashupName\": \"PTC.AccessApp.WindchillServices.RoutingOptionMashup\" }, \"fireEventOnFinish\": { \"value\": false }, \"activityType\": { \"selectedKey\": \"popup\" }, \"redirectAfterPopupSuccess\": { \"mashupName\": \"PTC.MyTasksAppMashup\" }, \"popupWidth\": { \"value\": 600 } } }, \"ordinal\": 30 }, { \"id\": \"Reassign\", \"additionalData\": { \"actionConfiguration\": { \"overrideLabel\": { \"value\": \"[[PTC.AccessApp.Reassign]]\" }, \"popupHeight\": { \"value\": 579 }, \"actionButtonVisibility\": { \"selectedKey\": \"AlwaysShown\" }, \"buttonStyle\": { \"selectedKey\": \"primary\" }, \"mashupName\": { \"mashupName\": \"PTC.AccessApp.WindchillServices.ReassignActionMashup\" }, \"fireEventOnFinish\": { \"value\": false }, \"activityType\": { \"selectedKey\": \"popup\" }, \"redirectAfterPopupSuccess\": { \"mashupName\": \"PTC.MyTasksAppMashup\" }, \"popupWidth\": { \"value\": 600 } } }, \"ordinal\": 40 } ], \"objectType\": \"WT.WorkItem.Actions\" } ], \"adapter\": { \"instanceName\": \"windchill\", \"thingName\": \"PTC.WCAdapter\" } } ] } } }"
}
}
},
"showSecondaryIcon": {
"version": "1.0.0",
"value": false
},
"secondaryTitle": {
"selectedValues": {
"data": [
{
"itemListsData": [
{
"items": [
{
"numericIdentifier": 1,
"id": "Activity|Name"
}
],
"objectType": "PTC.Workflow.WorkItem"
}
],
"adapter": {
"instanceName": "windchill",
"thingName": "PTC.WCAdapter"
}
}
]
},
"pattern": "%1",
"filteredValues": {
"data": [
{
"itemListsData": [
{
"objectType": ""
}
],
"adapter": {
"instanceName": "",
"thingName": ""
}
}
]
}
},
"attributes": {
"selectedValues": {
"data": [
{
"itemListsData": [
{
"items": [
{
"id": "Role#Display",
"ordinal": 0
},
{
"id": "Activity|Deadline",
"ordinal": 1
},
{
"id": "Status#Display",
"ordinal": 2
}
],
"objectType": "PTC.Workflow.WorkItem"
},
{
"items": [
{
"id": "Category#Display",
"ordinal": 3
},
{
"id": "RequestPriority#Display",
"ordinal": 4
}
],
"objectType": "PTC.ChangeMgmt.ChangeRequest"
}
],
"adapter": {
"instanceName": "windchill",
"thingName": "PTC.WCAdapter"
}
}
]
},
"inTailoring": true,
"filteredValues": {
"data": [
{
"itemListsData": [
{
"objectType": ""
}
],
"adapter": {
"instanceName": "",
"thingName": ""
}
}
]
}
},
"showImage": {
"version": "1.0.0",
"value": false
}
}
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 the Task Identity implementation. 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 |
GetItemIdentityAttributes | Checks configuration and adds any additional attributes that are required, and then calls GetAttributeValues to fetch all attribute values from the backend system. Adds work item status to the list of attributes. Work item status determines whether to enable or disable the Action Bar. Parameters: input (Required)– 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 (Optional)– JSON with the final merged configuration obtained from the Tailoring Manager resource. attributes (Required)– JSON with the list of out-of-the-box attributes, as defined in the configuration or set via tailoring. Returns: JSON |
GetAttributesValues | Returns a JSON with attributes and their values. Parameters: input (Required)– 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 (Optional)– JSON with the final merged configuration obtained from the Tailoring Manager resource. attributes (Required)– JSON with the list of out-of-the-box attributes and additional attributes. Returns: JSON in CCO format |
Implementation Definition
{
"array": [
{
"value": {
"initializationData": {
"constraints": {},
"properties": {
"supportedTypes": {
"data": [
{
"adapter": {
"thingName": "PTC.WCAdapter",
"instanceName": "windchill"
},
"itemListsData": [
{
"objectType": "PTC.Workflow.WorkItem",
"selectionGroupIds": [
"WI-CR"
]
},
{
"objectType": "PTC.ChangeMgmt.ChangeRequest",
"selectionGroupIds": [
"WI-CR"
]
}
]
}
],
"allowSubsetForTailoring": true
},
"updateServiceName": "",
"addServiceName": ""
}
},
"elementVersion": "1.0.0",
"elementName": "PTC.Nav.DynamicForm.PatternSelector"
},
"mandatory": true,
"key": "primaryTitle"
},
{
"value": {
"initializationData": {
"constraints": {},
"properties": {
"supportedTypes": {
"data": [
{
"adapter": {
"thingName": "PTC.WCAdapter",
"instanceName": "windchill"
},
"itemListsData": [
{
"objectType": "PTC.Workflow.WorkItem",
"selectionGroupIds": [
"WI-CR"
]
},
{
"objectType": "PTC.ChangeMgmt.ChangeRequest",
"selectionGroupIds": [
"WI-CR"
]
}
]
}
],
"allowSubsetForTailoring": true
},
"updateServiceName": "",
"addServiceName": ""
}
},
"elementVersion": "1.0.0",
"elementName": "PTC.Nav.DynamicForm.PatternSelector"
},
"mandatory": true,
"key": "secondaryTitle"
},
{
"value": {
"initializationData": {
"constraints": {},
"properties": {
"supportedTypes": {
"data": [
{
"adapter": {
"thingName": "PTC.WCAdapter",
"instanceName": "windchill"
},
"itemListsData": [
{
"objectType": "PTC.Workflow.WorkItem",
"selectionGroupIds": [
"WI-CR"
]
},
{
"objectType": "PTC.ChangeMgmt.ChangeRequest",
"selectionGroupIds": [
"WI-CR"
]
}
]
}
],
"allowSubsetForTailoring": true
},
"updateServiceName": "",
"addServiceName": "",
"maximumSelectedAttributes": 5,
"minimumSelectedAttributes": null
}
},
"elementVersion": "1.0.0",
"elementName": "PTC.Nav.DynamicForm.AttributesSelector"
},
"mandatory": true,
"key": "attributes"
},
{
"property": {},
"value": {
"initializationData": {
"constraints": {},
"properties": {
"directDefinition": [
{
"property": {},
"value": {
"initializationData": {
"constraints": {},
"properties": {
"hintText": null
}
},
"elementVersion": "1.0.0",
"elementName": "PTC.Nav.DynamicForm.Textbox"
},
"mandatory": false,
"key": "actionBarConfigurationJSON"
}
]
}
},
"elementVersion": "1.0.0",
"elementName": "PTC.Nav.DynamicForm.DefinitionGroup"
},
"mandatory": false,
"key": "actionBarConfiguration"
},
{
"value": {
"initializationData": {
"properties": {},
"constraints": {},
"additionalDefinition": [
{
"true": {
"label": "[[PTC.Nav.Yes]]",
"additionalDefinition": [
{
"key": "itemIdentityShowImageDefinitions",
"directDefinition": [
{
"property": {},
"value": {
"initializationData": {
"constraints": {},
"properties": {}
},
"elementVersion": "1.0.0",
"elementName": "PTC.Nav.DynamicForm.Textbox"
},
"mandatory": false,
"key": "defaultImagePath"
}
]
}
]
},
"false": {
"label": "[[PTC.Nav.No]]",
"additionalDefinition": []
},
"default": false
}
]
},
"elementVersion": "1.0.0",
"elementName": "PTC.Nav.DynamicForm.Toggle"
},
"key": "showImage"
},
{
"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": "showSecondaryIcon"
}
]
}