コンフィギュレーションプロパティに対する変更の例
既成の実装を拡張することによってカスタムコンポーネントを作成する場合、コンポーネントのコンフィギュレーションをカスタマイズできます。これを行うには、カスタムコンポーネントの作成のトピックで説明されているように、カスタム Thing Template 上の GetConfigurations サービスを独自のコンフィギュレーションでオーバーライドします。コンフィギュレーションをカスタマイズする場合、コンフィギュレーションプロパティの値の変更はサポートされますが、フィールドの追加や除去など、コンフィギュレーションの構造の変更はサポートされません。これに対し、既成のベースコンポーネントを拡張してカスタムコンポーネントを作成する場合、コンフィギュレーション JSON オブジェクトの構造全体の変更もサポートされています。
このトピックでは、コンフィギュレーション構造全体を変更しない、コンフィギュレーションプロパティの値に対する変更の例を示します。
コンフィギュレーションプロパティの値に対する変更
属性コンポーネントを例として使用し、属性ジェネリック実装を拡張してカスタムコンポーネントを作成する際にコンフィギュレーションに加えることのできる変更のタイプを示します。これらのコンフィギュレーションプロパティの詳細については、属性のトピックのコンフィギュレーションプロパティテーブルを参照してください。属性ジェネリックのトピックからの垂直レイアウトを使用してサンプルコンフィギュレーションを開始するとします。その場合、プロパティ baseConfigurationVersionimplementationConfigurationVersion を追加します。これらのプロパティは、GetConfigurations サービスをオーバーライドする際に必ず追加する必要があります。コンフィギュレーションは次のようになります。
属性の初期コンフィギュレーション 
{
"baseConfigurationVersion":{
"value":"nav.1"
},
"implementationConfigurationVersion":{
"value":"nav.1",
"layout":{
"selectedKey":"vertical",
"additionalData":{
"isMultilineDefinition":{
"isMultiLine":{
"additionalData":{
"dimensionDefinition":{
"maxHeight":{
"version":"1.0.0",
"value":300
}
}
},
"version":"1.0.0",
"value":true
}
}
},
"version":"1.0.0"
},
"attributes":{
"sets":[
{
"data":{
"selectedValues":{
"data":[
{
"itemListsData":[
{
"items":[
{
"id":"Description",
"ordinal":0
},
{
"id":"ProposedSolution",
"ordinal":1
}
],
"objectType":"PTC.ChangeMgmt.ChangeRequest"
}
],
"adapter":{
"instanceName":"windchill",
"thingName":"PTC.WCAdapter"
}
}
]
},
"inTailoring":true,
"version":"1.0.0"
},
"name":""
}
],
"inTailoring":true,
"filteredValues":{
"data":[
{
"itemListsData":[
{
"objectType":""
}
],
"adapter":{
"instanceName":"",
"thingName":""
}
}
]
},
"version":"1.0.0"
}
}
}
サポートされている変更の例
次に、コンフィギュレーションに対して行うことができるさまざまなタイプの変更を示します。
個々のプロパティ値の変更: maxHeightmaxWidthisMultiLineidordinal などの個々のコンフィギュレーションプロパティの値を変更できます。
属性の追加または除去: items の属性の数を変更することにより、ユーザーインタフェースに表示される属性の数を変更できます。
コンポーネントのレイアウトの変更: 属性コンポーネントのトピックで説明されているように、layout の値を vertical から horizontal に変更し、layout の下のサブプロパティを変更することにより、このレイアウトを変更できます。
これらの変更を説明するために、サポートされている変更の一部を示す属性のコンフィギュレーションの修正バージョンを次に示します。
属性の修正されたコンフィギュレーション 
{
"baseConfigurationVersion":{
"value":"nav.1"
},
"implementationConfigurationVersion":{
"value":"nav.1",
"layout":{
"selectedKey":"horizontal",
"additionalData":{
"dimensionDefinition":{
"maxHeight":{
"version":"1.0.0",
"value":150
},
"maxWidth":{
"version":"1.0.0",
"value":400
}
}
},
"version":"1.0.0"
},
"attributes":{
"sets":[
{
"data":{
"selectedValues":{
"data":[
{
"itemListsData":[
{
"items":[
{
"id":"Name",
"ordinal":0
},
{
"id":"Number",
"ordinal":1
},
{
"id":"Description",
"ordinal":2
},
{
"id":"LastModified",
"ordinal":3
}
],
"objectType":"PTC.ChangeMgmt.ChangeRequest"
}
],
"adapter":{
"instanceName":"windchill",
"thingName":"PTC.WCAdapter"
}
}
]
},
"inTailoring":true,
"version":"1.0.0"
},
"name":""
}
],
"inTailoring":true,
"filteredValues":{
"data":[
{
"itemListsData":[
{
"objectType":""
}
],
"adapter":{
"instanceName":"",
"thingName":""
}
}
]
},
"version":"1.0.0"
}
}
}
これは役に立ちましたか?