高度なカスタマイズ > ビジネスロジックのカスタマイズ > ビジネス規則 > ビジネス規則のタイプ > 属性規則
  
属性規則
この属性規則は、あるオブジェクトタイプの指定されている属性規則コンフィギュレーションが有効であることを検証します。属性規則のコンフィギュレーションでは、入力としてオブジェクトタイプのみが必要です。オブジェクトタイプは、wt.fc.Persistable タイプのオブジェクトである必要があります。たとえば、com.ptc.Waiverwt.change2.WTVariance のソフトタイプです。
<configs>
config name="objectType" value="com.ptc.Waiver"></config>
</configs>
タイプの文字列値は、タイプの名前またはタイプの外部名のみ (com.ptc.Waiver または WCTYPE|wt.change2.WTVariance|com.ptc.Waiver) を使用して指定できます。
指定したオブジェクトタイプのサブタイプを属性規則から除外できます。たとえば、次のようなオブジェクトタイプ WTVariance の属性規則のコンフィギュレーションでは、com.ptc.Waiver タイプと com.ptc.Deviation タイプの一時許可が評価から除外されます。
<configs>
<config name="objectType" value="wt.change2.WTVariance "></config>
<config name="excludedType" value="com.ptc.Waiver"></config>
<config name="excludedType" value=" com.ptc.Deviation "></config>
</configs>
指定したオブジェクトタイプの属性で検証を行うように条件を設定するには、コンフィギュレーション名を「属性名」にして、値を「条件」にします。次の属性のコンフィギュレーションは、com.ptc.Waiver の承認済み数量が 10 から 100 の間であるかどうかを確認します。
<configs>
<config name="objectType" value="com.ptc.Waiver"></config>
<config name="approvedQuantity" value="[10..100]"></config>
</configs>
次に、部品の特定のソフトタイプで、ソフト属性の内部名が "weight" である例を示します。
<configs>
<config name="objectType" value="com.ptc.SoftTypePart"></config>
<config name="weight" value="<=100"></config>
</configs>
次の表に、サポートされる演算と、属性規則のコンフィギュレーションでサポートされるオブジェクトタイプを示します。
演算子
値タイプ
説明
条件の例
>、>=、<、<=
Long、文字列、日付、タイムスタンプ、FloatingPoint、FloatingPointWithUnits
オブジェクトの属性値が、指定した値より大きい、小さい、または等しいことを検証します。「未満」と「より大きい」の文字はインポートロードの予約文字なので、「未満」の演算子は「&lt;」、「より大きい」の演算子は「&gt;」と指定する必要があります。
>&gt;2012-01-12 00:00:00
<=&lt;=20.002
>&gt;=10
[0..10]
Long、文字列、日付、タイムスタンプ、FloatingPoint、FloatingPointWithUnits
オブジェクトの属性値が指定した範囲内にあるかどうかを検証します。範囲の最小値を指定しなかった場合は、「以下」の条件と同じになります。同様に、範囲の最大値を指定しなかった場合は、「以上」の条件として処理されます。
[-10.09..10.09]
[2012-01-12 00:00:00..2012-02-12 00:00:00]
[..100]
[0..]
=、!=
ブール、Long、文字列、日付、タイムスタンプ、FloatingPoint、FloatingPointWithUnits
オブジェクトの属性値が、指定した値と等しい、または等しくないことを検証します。
=true
&#33;=2012-02-12 00:00:00
=10.09
[A,B]
ブール、Long、文字列、日付、タイムスタンプ、FloatingPoint、FloatingPointWithUnits
オブジェクトの属性値が離散セット内にあるかどうかを検証します。
[true]
[2012-02-01 00:00:00,2012-02-15 00:00:00,2012-02-30 00:00:00]
[MAJOR,CRITICAL]
[10.01,10.02]
[10,100,1000]
SET
ブール、Long、文字列、日付、タイムスタンプ、FloatingPoint、FloatingPointWithUnits
オブジェクトの属性値が null でないことを検証します。演算の指定には SET キーワードのみが必要です。
SET
NOT_SET
ブール、Long、文字列、日付、タイムスタンプ、FloatingPoint、FloatingPointWithUnits
オブジェクトの属性値が null であることを検証します。演算の指定には NOT_SET キーワードのみが必要です。
NOT_SET
EQUALS
文字列
オブジェクトの属性値が指定した文字列であるかどうかを検証します。
EQUALS(MAJOR)
NOT_EQUALS
文字列
オブジェクトの属性値が指定した文字列でないことを検証します。
NOT_EQUALS(MAJOR)
BEGINSWITH
文字列
オブジェクトの属性値が、指定した文字列から始まっているかどうかを検証します。
BEGINSWITH(PN)
NOT_BEGINSWITH
文字列
オブジェクトの属性値が、指定した文字列で始まっていないことを検証します。
NOT_BEGINSWITH(PN)
ENDSWITH
文字列
オブジェクトの属性値が、指定した文字列で終了しているかどうかを検証します。
ENDSWITH(0)
NOT_ENDSWITH
文字列
オブジェクトの属性値が、指定した文字列で終了していないことを検証します。
NOT_ENDSWITH(0)
CONTAINS
文字列
オブジェクトの属性値に指定した文字列が含まれているかどうかを検証します。
CONTAINS(PN0)
NOT_CONTAINS
文字列
オブジェクトの属性値に指定した文字列が含まれていないことを検証します。
NOT_CONTAINS(PN0)
LENGTH
文字列
オブジェクトの属性文字列の長さが、指定した長さの範囲内であることを検証します。
LENGTH(0..40)
LENGTH(0..)
LENGTH(..40)
属性条件の日付とタイムスタンプのフォーマットには、システムのロケールが使用されます。