属性ルールの辞書キーワード

辞書キーワードは、条件ステートメント内のカスタム エラー メッセージを返したり、別のフィーチャクラス内のフィーチャに対する編集を実行したりするような、属性ルール機能の高度な動作を公開します。属性ルールの ArcGIS Arcade 条件式を作成する場合は、return dictionary タイプが、以下に示す予約済みキーワードのいずれかを使用する必要があります。複数の操作を実行するには、さまざまなキーワードで辞書を拡張します。これらの辞書キーワードを使用する方法の詳細については、「属性ルール スクリプト条件式の例」をご参照ください。

メモ:

GlobalID または GlobalID のキーワードのパラメーターを定義する際は、必ず値を一重引用符で囲みます。

result

有効な戻り値を提供します。result キーワードを使用して、値および別の辞書キーワードを返すことができます。

return {
    'result': 200
}

errorMessage

評価に何らかの失敗が発生した場合の、ユーザー定義されたエラー メッセージを指定します。Arcade 条件式で論理ステートメントを作成して、カスタム エラー メッセージを返す場合は、errorMessage キーワードを使用します。別のキーワードを含む辞書で、このキーワードを返すことはできません。「カスタム エラー メッセージを返す」方法の例をご参照ください。

return {
    "errorMessage": "Error message text"
}

calculationRequired

他のフィーチャを、バッチ計算ルールの評価が必要であるとしてマークします。このキーワードが使用されると、整合チェックの状態属性を修正することで、対応するフィーチャが要計算としてマーク付けされます。このキーワードは計算ルールでのみ使用可能であり、[アプリケーション評価から除外] オプションを true に設定する必要があります。「他のフィーチャを要評価としてマーク付けする」方法の例をご参照ください。

キーワード パラメーター説明

className

(必須) 修正するフィーチャクラスまたはテーブルの名前。値はフィーチャクラス名です。

objectIDs | globalIDs

(必須) 修正する ObjectID または GlobalID の配列。値は ObjectID または GlobalID の配列です。

return {
    'calculationRequired': [{
        'classname': 'featureclass_name',        'globalIDs': ['{8B421724-32D0-408A-A8EE-CCC2B064D52B}']    }]
}

validationRequired

他のフィーチャを、整合チェック ルールの評価が必要であるとしてマークします。このキーワードが使用されると、整合チェックの状態属性を修正することで、対応するフィーチャが要整合チェックとしてマークされます。このキーワードは計算ルールでのみ使用可能であり、[アプリケーション評価から除外] オプションを true に設定する必要があります。「他のフィーチャを要評価としてマーク付けする」方法の例をご参照ください。

キーワード パラメーター説明

className

(必須) 修正するフィーチャクラスまたはテーブルの名前。値はフィーチャクラス名です。

objectIDs | globalIDs

(必須) 修正する ObjectID または GlobalID の配列。値は ObjectID または GlobalID の配列です。

return {
    'validationRequired': [{
        'classname': 'featureclass_name',        'globalIDs': ['{60905A3D-9783-435D-B4C9-AA4ADA59AD32}']    }]
}

edit

指定したフィーチャクラス内のフィーチャの挿入、更新、および削除を実行します。このキーワードは計算ルールでのみ使用可能であり、[アプリケーション評価から除外] オプションを true に設定する必要があります。「別のフィーチャクラスの編集」方法の例をご参照ください。

ユーティリティ ネットワークでは、edit 辞書内で associationType キーワードを使用することで、edit キーワードを使用して関連付けを編集できます。

キーワード パラメーター説明

className

(必須) 修正するフィーチャクラスまたはテーブルの名前。値はフィーチャクラス名です。

adds | updates | deletes

編集のタイプ。値は、編集タイプごとに編集内容を詳述する辞書の配列です。

メモ:

再帰編集を実行するスクリプトを作成しないでください。スクリプトが属性ルールを評価またはトリガーする編集を実行するように構成されている場合は、無限ループが生成されます。これにより、意図しない結果が生じます。

adds

指定されたフィーチャクラスまたはテーブルへの挿入を実行するために edit 辞書内で使用するキーワード。

キーワード パラメーター説明

attributes

指定のフィールドを編集します。値は、フィールド名および属性ペアの辞書です。

geometry

ジオメトリの編集を編集します。値は、ジオメトリ オブジェクトです。

associationType

ユーティリティ ネットワーク内の関連付けを編集します。出力される可能性のある値は次のとおりです。

  • connected
  • container
  • content
  • structure
  • attached

次に、ユーティリティ ネットワーク バージョン 4 以降で使用できるその他の値を示します。

  • junctionEdgeFrom
  • junctionEdgeTo
  • midspan

fromTerminal

associationType の値を接続したときに編集する From ターミナル、junctionEdgeFrom、または junctionEdgeTo 値はターミナル名です。

toTerminal

associationType の値を接続したときに編集する To ターミナル、junctionEdgeFrom、または junctionEdgeTo 値はターミナル名です。

isContentVisible

格納の関連付けでコンテンツが表示されるかどうかを指定します。値は、true または false です。

percentAlong

中間部の associationType を編集するときの、ラインまたはエッジに沿った割合。値は、0 ~ 1 の範囲の割合です。

return {
    'edit': [{
        'className': 'b_edit_dict',        'adds': [{
            'attributes': {
                'field_name': 11            },            'geometry': Geometry({
                'x': -76.8375008,                'y': 39.4949383,                'spatialReference': {
                    'wkid': 4326                }
            })        }]    }]
}
"edit": [{
    "className": "ElectricDistributionJunctionObject",    "adds": [{
        "percentAlong": 0.5,        "associationType": 'midspan'    }]
}]
}
return {
    "edit": [{
        "className": "ElectricDistributionJunctionObject",        "adds": [{
            "attributes": {
                "assetgroup": 3,                "assettype": 1            },            "toTerminal": "Load",            "associationType": "junctionEdgeFrom"
        }]    }]
}

updates

指定されたフィーチャクラスまたはテーブルへの更新を実行するために edit 辞書内で使用するキーワード。

キーワード パラメーター説明

objectID | globalID

(必須) 編集するフィーチャの ObjectID または GlobalID の値。値は ObjectID または GlobalID です。

attributes

指定のフィールドを編集します。値は、フィールド名および属性ペアの辞書です。

geometry

ジオメトリの編集を編集します。値は、ジオメトリ オブジェクトです。

associationType

ユーティリティ ネットワーク内の関連付けを編集します。出力される可能性のある値は次のとおりです。

  • connected
  • container
  • content
  • structure
  • attached

次に、ユーティリティ ネットワーク バージョン 4 以降で使用できるその他の値を示します。

  • junctionEdgeFrom
  • junctionEdgeTo
  • midspan

fromTerminal

associationType の値を接続したときに編集する From ターミナル、junctionEdgeFrom、または junctionEdgeTo 値はターミナル名です。

toTerminal

associationType の値を接続したときに編集する To ターミナル、junctionEdgeFrom、または junctionEdgeTo 値はターミナル名です。

isContentVisible

格納の関連付けでコンテンツが表示されるかどうかを指定します。値は、true または false です。

percentAlong

中間部の associationType を編集するときの、ラインまたはエッジに沿った割合。値は、0 ~ 1 の範囲の割合です。

return {
    'edit': [{
        'className': 'b_edit_dict',        'updates': [{
            'globalID': '{7EBAB596-E9DB-40D8-9756-B2EBED2500B7}',            'attributes': {
                'field_name': 22            }
        }]    }]
}
return {
    "result": $feature.assetid,    "edit": [{
        "className": "electricdistributionassembly",        "updates": [{
            "objectID": feature_objectid,            "associationType": 'container'        }]    }]
}

deletes

フィーチャクラスまたはテーブル内の指定されたフィーチャを削除するために edit 辞書内で使用するキーワード。

キーワード パラメーター説明

objectID | globalID

(必須) 編集するフィーチャの ObjectID または GlobalID の値。値は ObjectID または GlobalID です。

return {
    'edit': [{
        'className': 'b_edit_dict',          'deletes': [{
            'objectID': 22        }]    }]
}