附件
“附件”是项列表组件的预定义配置,用于显示附件。与项列表组件类似,“附件”具有搜索、排序、筛选、导出和恢复默认值等功能。默认情况下,其中不包括“导出”操作,但可以通过配置来启用。“附件”会显示特定变更请求的附件。对于每个附件,“附件”都会显示可通过配置进行选取的属性。
默认属性有“名称”、“文件大小”、“说明”、“上次修改时间”、“修改者”和“外部位置”。“名称”属性会显示 Windchill Navigate 9.3.0 及更早版本中“文件名”属性所显示的值。该名称也会显示文件类型。可以单击名称来下载附件或导航至链接的网页。如果通过配置或定制方式移除“名称”属性,不会提供下载链接。如下图所示,“文件名”属性仅显示文件的名称。
下面的示例图示为“附件”预定义配置:
与项列表组件类似,“附件”具有搜索、排序、筛选、导出和恢复默认值等功能。默认情况下不包括“导出”操作,但可以通过配置来启用该操作。
绑定特性 
有关绑定“附件”的信息,请参阅项列表组件。
* 
对于“附件”,输入绑定特性支持 PTC.Workflow.WorkItemPTC.ChangeMgmt.ChangeRequest 对象类型。
selectedItems 绑定特性的输出中包含对象类型为 PTC.ContentItem 的项。
配置特性 
有关“附件”的所有可用配置特性的列表,请参阅项列表组件的配置特性表。下表提供“附件”的相关配置特性的附加信息。
有关详情,请参阅组件配置结构
有关子特性的详情,请参阅子特性和容器键
特性名称
说明
特性类型
默认值
必需或可选
attributes
有关详情,请参阅项列表
接受 PTC.ContentItem 对象类型的属性。
不适用
必需
defaultSortField
有关详情,请参阅项列表
接受 PTC.ContentItem 对象类型的属性。
不适用
可选
downloadFileName
用于指定已下载文件的自定义名称,其中包括:
直接从“名称”列下载的文件。“名称”PTC.Nav.Attachments.Custom.Implementation 对象类型的自定义属性。
使用“全部下载”按钮下载为 ZIP 文件的文件
默认情况下,此特性设置为 <filename>.<ext>。下载时,<filename> 标记会被替换为特定文件名,而 <ext> 标记会被替换为文件扩展名。
代码示例:
{
"downloadFileName":{
"selectedValues":{
"data":[
{
"itemListsData":[

],
"adapter":{

}
}
]
},
"pattern":"<filename>.<ext>"
}
}
不适用
可选
filterFields
有关详情,请参阅项列表
接受 PTC.ContentItem 对象类型的属性。
不适用
可选
showImplementationActions
当此特性包含 attachmentsDownloadAllAsZip 键时,“附件”会在嵌入式操作栏组件中包括“全部下载”按钮,以供用户下载所有附件。
attachmentsDownloadAllAsZip 是“附件”针对此特性支持的唯一值。
不适用
可选
示例配置 
{
"attachments":{
"configuration":{
"attributes":{
"inTailoring":true,
"selectedValues":{
"data":[
{
"adapter":{
"instanceName":"windchill",
"thingName":"PTC.WCAdapter"
},
"itemListsData":[
{
"items":[
{
"id":"PTC.ApplicationData/FileSize",
"ordinal":1
},
{
"id":"Description",
"ordinal":2
},
{
"id":"LastModified",
"ordinal":3
},
{
"id":"ModifiedBy",
"ordinal":4
},
{
"id":"PTC.ExternalStoredData/ExternalLocation",
"ordinal":5
}
],
"objectType":"PTC.ContentItem"
},
{
"items":[
{
"id":"Name",
"ordinal":0
}
],
"objectType":"PTC.Nav.Attachments.Custom.Implementation"
}
]
}
]
}
},
"implementationConfiguration":{
"value":{
"downloadFileName":{
"selectedValues":{
"data":[
{
"itemListsData":[

],
"adapter":{

}
}
]
},
"pattern"<fileName>.<ext>"
}
}
},
"defaultSortFields":{
"selectedValues":{
"data":[
{
"adapter":{
"instanceName":"windchill",
"thingName":"PTC.WCAdapter"
},
"itemListsData":[
{
"items":[
{
"additionalData":{
"itemListDefaultSortFieldDefinition":{
"defaultSortDirection":{
"selectedKey":"asc"
}
}
},
"id":"Name"
}
],
"objectType":"PTC.Nav.Attachments.Custom.Implementation"
}
]
}
]
}
},
"enableSearch":{
"additionalData":{
"itemListSearchDefinition":{
"searchHintText":{
"value":"[[PTC.Nav.Attachments.FindHintText]]"
}
}
},
"value":true
},
"actionBarConfiguration":{
"value":{
"actionBarConfigurationJSON":{
"value":""
}
}
},
"label":{
"value":"[[PTC.Nav.Attachments.UILabel]]"
},
"maxNumberOfRowsInGrid":{
"inTailoring":true,
"value":50
},
"selectionType":{
"selectedKey":"none"
},
"showExportAction":{
"value":false
},
"waitForInput":{
"value":true
},
"baseConfigurationVersion":{
"value":"nav.3"
},
"implementationConfigurationVersion":{
"value":"nav.2"
}
},
"label":"[[PTC.Nav.Attachments.ConfigurationLabel]]"
}
}
自定义服务 
除了配置外,每个组件还支持通过扩展其业务逻辑来自定义组件。每个组件的业务逻辑在事物模板中都包含可改写的服务,您可以对这些服务进行扩展和改写。下表对此组件的可改写服务进行了详细说明。
有关每个服务的返回值和参数的示例,请参阅自定义服务的输入/输出示例
名称
说明
GetConfigurations
返回“附件”的可用配置。
参数:
返回:JSON
GetImplementationLabel
返回此组件的本地化名称,或返回可用于获取此本地化名称的标记。此本地化名称显示在 Mashup Builder 用户界面中。
参数:
返回:字符串
GetImplementationSettings
返回设置数据,其中包括“全部下载”按钮的数据。
参数:
返回:JSON
GetItems
返回在输入中指定的变更请求项的附件。
参数:
input (可选) - CCO 格式的 JSON,其中包含要从后端系统获取的数据的输入 ID,以及后端系统的适配器信息。
configuration (必需) - JSON,其中包含从“定制管理器”资源获得的最终合并配置。
返回:CCO 格式的 JSON
DefHookGetImplementationActionsList
返回 GetImplementationSettings 服务中的 implementationActions 键下方列出的操作。
参数:
返回:JSON:Array
DefHookMaxRowsProperties
返回要在网格区域中显示的最大行数的特性。
参数:
返回:JSON
实现定义 
{
"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"
}
]
}
},
"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":[
"ATT"
],
"objectType":"PTC.ContentItem"
}
],
"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":{
"options":[
{
"label":"1",
"key":"1"
},
{
"label":"2",
"key":"2"
},
{
"label":"3",
"key":"3"
},
{
"label":"4",
"key":"4"
},
{
"label":"5",
"key":"5"
},
{
"label":"6",
"key":"6"
},
{
"label":"7",
"key":"7"
},
{
"label":"8",
"key":"8"
},
{
"label":"9",
"key":"9"
},
{
"label":"-1",
"key":"-1"
}
],
"updateServiceName":null,
"addServiceName":null
}
},
"elementVersion":"1.0.0",
"elementName":"PTC.Nav.DynamicForm.Dropdown"
},
"mandatory":false,
"key":"defaultExpansionLevel"
},
{
"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":[
"ATT"
],
"objectType":"PTC.ContentItem"
}
],
"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.Nav.Yes]]"
},
"false":{
"additionalDefinition":[

],
"label":"[[PTC.Nav.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":[
"ATT"
],
"objectType":"PTC.ContentItem"
}
],
"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":{

}
},
"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":1,
"default":50,
"maxValue":500,
"step":10
}
},
"elementVersion":"1.0.0",
"elementName":"PTC.Nav.DynamicForm.Number"
},
"mandatory":false,
"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":[
{
"directDefinition":[
{
"property":{
"options":[
[
{
"label":"[[PTC.Nav.ItemList.ExportCSVActionLabel]]",
"key":"exportToCsv"
},
{
"label":"[[PTC.Nav.ItemList.ExportCSVAsExcelActionLabel]]",
"key":"exportToExcel"
}
]
]
},
"value":{
"initializationData":{
"version":"1.0.0",
"constraints":{

},
"properties":{
"default":"",
"overflow":null,
"minimumSelectedItems":null,
"options":[

],
"updateServiceName":null,
"addServiceName":null,
"constraints":{

}
}
},
"elementVersion":"1.0.0",
"elementName":"PTC.Nav.DynamicForm.CheckboxArray"
},
"mandatory":false,
"key":"exportTypes"
},
{
"property":{

},
"value":{
"initializationData":{
"version":"1.0.0",
"constraints":{

},
"properties":{
"default":false,
"true":{
"additionalDefinition":[

],
"label":null
},
"false":{
"additionalDefinition":[

],
"label":null
}
}
},
"elementVersion":"1.0.0",
"elementName":"PTC.Nav.DynamicForm.Toggle"
},
"mandatory":false,
"key":"exportUnFilteredData"
}
],
"key":"itemListExportDefinition"
}
],
"label":"[[PTC.Nav.Yes]]"
},
"false":{
"additionalDefinition":[

],
"label":"[[PTC.Nav.No]]"
}
}
},
"elementVersion":"1.0.0",
"elementName":"PTC.Nav.DynamicForm.Toggle"
},
"mandatory":false,
"key":"showExportAction"
},
{
"property":{

},
"value":{
"initializationData":{
"version":"1.0.0",
"constraints":{

},
"properties":{
"listLabel":null,
"showFilter":false,
"minimumSelectedItems":0,
"showDropDown":false,
"options":[
{
"label":"[[PTC.Nav.Drawings.DownloadAll]]",
"key":"attachmentsDownloadAllAsZip"
}
],
"updateServiceName":null,
"addServiceName":null,
"showClearSelectedItems":false,
"dropDownLabel":null
}
},
"elementVersion":"1.0.0",
"elementName":"PTC.Nav.DynamicForm.List"
},
"mandatory":false,
"key":"showImplementationActions"
},
{
"property":{

},
"value":{
"initializationData":{
"version":"1.0.0",
"constraints":{

},
"properties":{
"default":false,
"true":{
"additionalDefinition":[

],
"label":"[[PTC.Nav.Yes]]"
},
"false":{
"additionalDefinition":[

],
"label":"[[PTC.Nav.No]]"
}
}
},
"elementVersion":"1.0.0",
"elementName":"PTC.Nav.DynamicForm.Toggle"
},
"mandatory":false,
"key":"waitForInput"
}
]
}
这对您有帮助吗?