Webサービス・アクセスに対するカスタム・フィールドの条件付き更新可能性の強制
フィールドに対して指定する条件付き更新可能性式は、webアプリケーションのユーザー・インタフェース内でのみ適用されます。
指定した条件に応じて - 「条件付き更新可能性または条件付き必須のフィールドに依存する構成」の説明に従って「依存先」情報を正しく構成したと仮定 - ユーザー・インタフェースのフィールドは、必要に応じて有効または無効になります。 ただし、webサービス・インタフェースを介して実行されるフィールドの更新についても同じことは言えません。 「カスケード固定選択リストの自動依存関係情報について」の例を使用すると、明細アイテムの数量フィールドが5以下の場合、履行倉庫フィールドはユーザー・インタフェースで使用不可になります。 一方、システムがwebサービス・インタフェースを使用して同じ明細アイテムを更新しようとすると、「数量」フィールドの値に関係なく、FulfillmentWarehouse
の更新が成功します。
この条件付き更新可能性をwebサービスで強制するには、同じ条件を適用するオブジェクトレベルの検証ルールを追加する必要があります。 たとえば、数量が5を超えない場合、履行倉庫値に対するwebサービス更新を防ぐために、次のルールを構成します:
-
ルール名:
Warehouse_Updateable_Only_With_Quantity_Over_Five
-
エラー・メッセージ:
A warehouse can be specified only for quantities over five
ルール本文
// If the fulfillment warehouse is changed, ensure the
// quantity is greater than five (5)
if (isAttributeChanged('FulfillmentWarehouse_c')) {
if (Quantity_c <= 5) {
return false
}
return true