サブネットワークの更新 (Update Subnetwork) (ユーティリティ ネットワーク)

概要

指定されたサブネットワークのサブネットワーク テーブルのサブネットワーク情報、SubnetLine フィーチャクラス、およびサブネットワーク システム ダイアグラムを更新します。また、サブネットワーク フィーチャの特定の属性が作成または更新されます。新しく追加されたサブネットワークのレコードが生成され、削除されたサブネットワークのレコードが削除され、変更されたサブネットワークの形状と情報が更新されます。

サブネットワークの更新方法の詳細

使用法

  • エンタープライズ ジオデータベースを操作する場合、次の要件が満たされている必要があります。

    • ユーティリティ ネットワークが、ブランチ バージョン対応登録されている。
    • 入力ユーティリティ ネットワークは、ユーティリティ ネットワーク サービスから取得する必要があります。
    • このツールをデフォルト バージョンに対して実行する場合、ジオメトリ、サブネットワーク名属性、および SubnetLine フィーチャクラスの伝達されるフィールドが更新されます。名前付きバージョンに対して実行する場合、更新対象はバージョン内で編集された行に制限されます。

  • このツールは、サブネットワーク定義の設定時にダイアグラム テンプレートが指定された場合、ネットワーク ダイアグラムを新しく作成するか、更新されたサブネットワークのネットワーク ダイアグラムを更新します。

  • このツールを実行する前に、編集内容をすべて保存しておく必要があります。

  • ネットワーク トポロジが有効化されている必要があります。

  • サブネットワーク フィーチャと交差するダーティ エリアが存在しない。

構文

UpdateSubnetwork(in_utility_network, domain_network, tier, {all_subnetworks_in_tier}, {subnetwork_name}, {continue_on_failure}, {condition_barriers}, {function_barriers}, {include_barriers}, {traversability_scope}, {propagators})
パラメーター説明データ タイプ
in_utility_network

サブネットワークが属しているユーティリティ ネットワーク。

Utility Network; Utility Network Layer
domain_network

サブネットワークが属しているドメイン ネットワーク。

String
tier

サブネットワークを含む層。

String
all_subnetworks_in_tier
(オプション)

層内のすべてのサブネットワークを更新するかどうかを指定します。層に含まれているサブネットワークのサブセットを更新するには、[subnetwork_name] パラメーターを使用します。

  • ALL_SUBNETWORKS_IN_TIER層に含まれているサブネットワークをすべて更新します。このオプションは、非同期処理でシステムの UtilityNetworkTools ジオプロセシング サービスを使用してサブネットワークを更新します。このサービスは、ユーティリティ ネットワークのジオプロセシング タスクで維持され、デフォルトのタイムアウト設定が長くなります。これがデフォルトです。
  • SPECIFIC_SUBNETWORK[subnetwork_name] パラメーターで指定されたサブネットワークのみ更新します。
Boolean
subnetwork_name
(オプション)

更新するサブネットワークの名前。all_subnetworks_in_tier パラメーターですべてのサブネットワークが更新される場合、このパラメーターは無視されます。

String
continue_on_failure
(オプション)

複数のサブネットワークを更新する際、1 つのサブネットワークの更新に失敗した場合に更新処理を停止するかどうかを指定します。

  • CONTINUE_ON_FAILURE失敗した場合にサブネットワークの更新を続行します。
  • STOP_ON_FAILURE失敗した場合にサブネットワークの更新を停止します。これがデフォルトです。
Boolean
condition_barriers
[[Name, Operator, Type, Value, Combine Using],...]
(オプション)

ネットワーク属性との比較またはカテゴリ文字列のチェックに基づいて、フィーチャに対して通過可能性バリア条件を設定します。条件バリアは、ネットワーク属性、演算子とタイプ、および属性値を使用します。たとえば、フィーチャが特定の値 [Device Status] に等しい [Open] 属性を持っている場合に、トレースを停止します。フィーチャがこの条件を満たしている場合、トレースが停止します。複数の属性を使用している場合、[結合方法] パラメーターを使用して [And] 条件および [Or] 条件を定義することができます。

条件バリアの構成は次のとおりです。

  • Name - システム内で定義されたネットワーク属性からフィルターを選択します。
  • Operator - 複数の異なる演算子から選択します。
  • Type - name パラメーターで指定された値から特定の値またはネットワーク属性を選択します。
  • Value - 演算子の値に基づいて処理を停止させる入力属性タイプの特定の値を設定します。
  • Combine Using - 複数の属性を追加する場合にこの値を設定します。[And] 条件または [Or] 条件を使用して、これらを結合することができます。

条件バリアOperator の値は次のとおりです。

  • IS_EQUAL_TO属性と値が等しい。
  • DOES_NOT_EQUAL属性と値が等しくない。
  • IS_GREATER_THAN属性が値より大きい。
  • IS_GREATER_THAN_OR_EQUAL_TO属性が値以上である。
  • IS_LESS_THAN属性が値より小さい。
  • IS_LESS_THAN_OR_EQUAL_TO属性が値以下である。
  • INCLUDES_THE_VALUES値のすべてのビットが属性内に存在するビット単位の論理積演算 (bitwise AND == value)。
  • DOES_NOT_INCLUDE_THE_VALUES値の一部のビットが属性内に存在しないビット単位の論理積演算 (bitwise AND != value)。
  • INCLUDES_ANY値の少なくとも 1 つのビットが属性内に存在するビット単位の論理積演算 (bitwise AND == True)。
  • DOES_NOT_INCLUDE_ANY値のビットが属性内に存在しないビット単位の論理積演算 (bitwise AND == False)。

条件バリアの [type] のオプションは次のとおりです。

  • SPECIFIC_VALUE特定の値によるフィルター。
  • NETWORK_ATTRIBUTEネットワーク属性によるフィルター。

[Combine Using] の値は次のとおりです。

  • AND条件バリアを結合します。
  • ORいずれかの条件バリアが満たされている場合に使用します。
メモ:

このパラメーターは Python でのみ使用できます。

複数の式の使用方法の詳細

Value Table
function_barriers
[[Function, Attribute, Operator, Value, Use Local Values],...]
(オプション)

関数に基づいて、フィーチャに対する通過可能性バリアを設定します。関数バリアを使用して、始点からトレースが移動できる距離の制限としてそのような設定を行うか、トレースを停止するための最大値を設定することができます。たとえば、通過した各ラインの長さが、それまでに移動した合計距離に追加されます。移動した全長が指定された値に達した場合、トレースが停止します。

関数バリアの構成は次のとおりです。

  • Function - 複数の異なる計算関数から選択します。
  • Attribute - システム内で定義されたネットワーク属性からフィルターを選択します。
  • Operator - 複数の異なる演算子から選択します。
  • Value - 見つかった場合に処理を停止させる入力属性タイプの特定の値を設定します。
  • Use Local Values - グローバル値ではなく各方向の値を算出します (たとえば、[Shape length] の合計値を算出する関数バリアで、値が 4 以上になると、トレースが停止する場合)。グローバル値の場合は、値が 2 の 2 つのエッジを通過すると、形状の長さの合計値 4 にすでに到達するため、トレースが停止します。ローカル値が使用されている場合、各経路に沿ってローカル値が変化するため、トレースはさらに遠くに進みます。

  • TRUEローカル値を使用します。
  • FALSEグローバル値を使用します。これがデフォルトです。

関数バリアの [function] のオプションに指定できる値は次のとおりです。

  • AVERAGE入力値の平均値。
  • COUNTフィーチャの数。
  • MAX最大の入力値。
  • MIN最小の入力値。
  • ADD値を加算します。
  • SUBTRACT値を減算します。サブネットワーク コントローラーおよびループ トレース タイプは、[減算] 関数をサポートしてません。

たとえば、20 の値を持つ始点フィーチャが存在するとします。次のフィーチャは 30 の値を持っています。[最小値] 関数を使用すると、結果が 20、最大値が 30、追加が 50、平均値が 25、個数が 2、減算が -10 になります。

関数バリアの [operator] 値のオプションは次のとおりです。

  • IS_EQUAL_TO属性と値が等しい。
  • DOES_NOT_EQUAL属性と値が等しくない。
  • IS_GREATER_THAN属性が値より大きい。
  • IS_GREATER_THAN_OR_EQUAL_TO属性が値以上である。
  • IS_LESS_THAN属性が値より小さい。
  • IS_LESS_THAN_OR_EQUAL_TO属性が値以下である。
  • INCLUDES_THE_VALUES値のすべてのビットが属性内に存在するビット単位の論理積演算 (bitwise AND == value)。
  • DOES_NOT_INCLUDE_THE_VALUES値の一部のビットが属性内に存在しないビット単位の論理積演算 (bitwise AND != value)。
  • INCLUDES_ANY値の少なくとも 1 つのビットが属性内に存在するビット単位の論理積演算 (bitwise AND == True)。
  • DOES_NOT_INCLUDE_ANY値のビットが属性内に存在しないビット単位の論理積演算 (bitwise AND == False)。
メモ:

このパラメーターは Python でのみ使用できます。

Value Table
include_barriers
(オプション)

通過可能性バリア フィーチャがトレース結果に含まれるかどうかを指定します。通過可能性バリアは、サブネットワーク定義で事前に設定されている場合でも任意指定です。

  • INCLUDE_BARRIERS通過可能性バリアをトレース結果に含めます。これがデフォルトです。
  • EXCLUDE_BARRIERS通過可能性バリアをトレース結果に含めません。
メモ:

このパラメーターは Python および ModelBuilder を介してのみ利用できます。

Boolean
traversability_scope
(オプション)

実施する通過可能性のタイプを指定します。通過可能性範囲は、通過可能性がジャンクション、エッジ、またはその両方のいずれに適用されるかを決定します。たとえば、DEVICESTATUSOpenならばトレースを停止する、という条件バリアを定義したとしましょう。しかし、通過可能性の範囲が「エッジのみ」であるとすれば、オープンなデバイスを検出してもトレースは停止しません。DEVICESTATUS はジャンクションにしか適用されないからです。つまり、このパラメーターは、トレースで、ジャンクション、エッジ、またはその両方を無視するかどうかを示します。

  • BOTH_JUNCTIONS_AND_EDGES通過可能性をジャンクションとエッジの両方に適用します。これがデフォルトです。
  • JUNCTIONS_ONLY通過可能性をジャンクションのみに適用します。
  • EDGES_ONLY通過可能性をエッジのみに適用します。
メモ:

このパラメーターは Python および ModelBuilder を介してのみ利用できます。

String
propagators
[[Attribute, Substitution Attribute, Function, Operator, Value],...]
(オプション)

伝播させるネットワーク属性、およびトレース中に伝播がどのように発生するかを指定します。伝播されるクラス属性は、サブネットワーク内の他のフィーチャに広められる、サブネットワーク コントローラーの重要な値を示します。たとえば、配電モデルでは、位相値を伝播することができます。

プロパゲーターの構成は次のとおりです。

  • Attribute - システム内で定義された任意のネットワーク属性によってフィルタリングします。
  • Substitution Attribute - bitset ネットワーク属性値の代わりに、代替値を使用します。代替値は、伝播されるネットワーク属性のビット数に基づいてエンコードされます。代替は、フェーズ内の各ビットから別のマップへのマッピングです。たとえば、フェーズ AC では、1 つの代替は、ビット A から B、ビット C から NULL へのマッピングです。この例では、1010 (フェーズ AC) の代替は 0000-0010-0000-0000 (512) です。代替がマッピングをキャプチャし、マッピングは、フェーズ A から B、フェーズ C から NULL へ行われたのであり、その逆 (すなわち、フェーズ A から NULL、フェーズ C から B) ではないことがわかります。
  • Function - 複数の計算関数から選択します。
  • Operator - 複数の演算子から選択します。
  • Value- 演算子の値に基づいて処理を停止させる入力属性タイプの特定の値を指定します。

プロパゲーターの function の可能な値は次のとおりです。

  • PROPAGATED_BITWISE_ANDあるフィーチャの値と次のフィーチャの値を比較します。
  • PROPAGATED_MIN最小値を取得します。
  • PROPAGATED_MAX最大値を取得します。

プロパゲーターの operator 値は次のとおりです。

  • IS_EQUAL_TO属性と値が等しい。
  • DOES_NOT_EQUAL属性と値が等しくない。
  • IS_GREATER_THAN属性が値より大きい。
  • IS_GREATER_THAN_OR_EQUAL_TO属性が値以上である。
  • IS_LESS_THAN属性が値より小さい。
  • IS_LESS_THAN_OR_EQUAL_TO属性が値以下である。
  • INCLUDES_THE_VALUES値のすべてのビットが属性内に存在するビット単位の論理積演算 (bitwise AND == value)。
  • DOES_NOT_INCLUDE_THE_VALUES値の一部のビットが属性内に存在しないビット単位の論理積演算 (bitwise AND != value)。
  • INCLUDES_ANY値の少なくとも 1 つのビットが属性内に存在するビット単位の論理積演算 (bitwise AND == True)。
  • DOES_NOT_INCLUDE_ANY値のビットが属性内に存在しないビット単位の論理積演算 (bitwise AND == False)。
メモ:

このパラメーターは Python および ModelBuilder を介してのみ利用できます。

Value Table

派生した出力

名前説明データ タイプ
out_utility_network

更新されるユーティリティ ネットワーク。

ユーティリティ ネットワーク

コードのサンプル

UpdateSubnetwork (サブネットワークの更新) の例 1 (Python ウィンドウ)

RMT004 という名前のサブネットワークを更新します。

import arcpy
arcpy.UpdateSubnetwork_un("Utility Network", "ElectricDistribution", 
                          "Medium Voltage", "SPECIFIC_SUBNETWORK", "RMT004", 
                          "CONTINUE_ON_FAILURE")
UpdateSubnetwork (サブネットワークの更新) の例 2 (Python ウィンドウ)

Medium Voltage 層に含まれているサブネットワークをすべて更新します。

import arcpy
arcpy.UpdateSubnetwork_un("Utility Network", "ElectricDistribution", 
                          "Medium Voltage", "ALL")

環境

このツールは、ジオプロセシング環境を使用しません。

ライセンス情報

  • Basic: いいえ
  • Standard: はい
  • Advanced: はい

関連トピック