フィーチャの編集

Spectrum Spatial™ Analyst では、管理者がユーザに、ブラウザ内で基となるデータ ソースに対し新規フィーチャの挿入および既存フィーチャの編集を行うことを許可できます。

フィーチャの挿入または編集はブラウザ内で一度に 1 件のレコードのみに行えます。ユーザが編集を確定すると、Spectrum Spatial™ Analyst によってソース テーブルが更新されます。その後でデータを要求した他のユーザに、この更新が見えます。

以下の表に、Spectrum Spatial™ Analyst で編集できるサポート対象データ ソースを示します。

データソース 空間テーブル XY テーブル
Oracle 11gR2 読み込み/挿入/更新/削除 読み込み/挿入/更新
SQLServer 2008 R2/2012 読み込み/挿入/更新/削除 読み込み/挿入/更新
PostgreSQL 8+ / PostGIS 1.5 および 2.x 読み込み/挿入/更新/削除 読み込み/挿入/更新
GeoPackage / Windows および Linux 読み込み/挿入/更新/削除 NA
MapInfo TAB 読み込み/挿入/更新/削除 NA
注: MapInfo TAB ファイルは Windows 上での編集がサポートされています。これらのネイティブ ファイルの挿入、更新、削除に適用される制限事項については、MapInfo ネイティブ TAB を参照してください。

ユーザは、次の条件が満たされる場合にレコードを編集または削除できます。

  1. マップ プロジェクトによって参照される機能設定が、機能として編集が有効になっている (完全な編集または属性編集のみ)。
  2. テーブルがそのマップ プロジェクト内に存在しており、編集がサポートされるタイプ (前の表を参照) に該当する。
  3. Spectrum Spatial™ Manager では、namedTables の編集権限が Spectrum Spatial™ Analyst にログインするユーザまたはそのユーザが属する 1 つ以上の役割に対して割り当てられます。

Spectrum Spatial™ Analyst で新規のレコードを追加したり、既存のレコードを編集するには、ユーザがこれらの条件をすべて満たす必要があります。

プライマリ キーの要件

Oracle データ ソースの場合、データベースにシーケンスを適用してレコードの追加操作を正常に実行するには、プライマリ キー列が自動インクリメントされるよう設定する必要があります。

次の例では、シーケンスを使用して cycleparks テーブルを呼び出し、プライマリ キー列 MI_PRINX の自動インクリメントのトリガーを作成しています。

CREATE SEQUENCE STRATUS.cycleparks_seq 
START WITH     44 
INCREMENT BY   1 
NOCACHE 
NOCYCLE;

CREATE OR REPLACE TRIGGER STRATUS.cycleparks_auto_inc
BEFORE INSERT ON STRATUS.CYCLEPARKS 
FOR EACH ROW
BEGIN  
SELECT STRATUS.cycleparks_seq.NEXTVAL  
INTO  :new.MI_PRINX  
FROM   dual;
END;

SQL Server および Postgres ではプライマリ キーの自動インクリメントが既に設定されているため、追加の手順は必要ありません。

フィーチャの編集/挿入の検証フォームの設定

Spectrum Spatial™ Analyst では、テーブルの編集時に適用されるデフォルト値である検証ルールのレイヤが提供されます。このルールは、列を含めるかどうか、デフォルト値や値範囲を使うかどうか、選択リストを表示するかどうかなどを定義します。ルールは XML ファイルに定義され、各ファイルが 1 つの編集可能テーブルに対応します。

管理者は、現在のフィーチャのジオメトリ、許可するジオメトリの種類などを含め、ユーザに編集を許可するテーブルの属性を柔軟に選択できます。また、管理者は、ユーザが新規フィーチャの挿入時に送信できる情報を細かく指定することができます。これは XML ファイルを介してルールを手動で設定します。管理者が XML ファイルを指定しない場合、デフォルトで、テーブルのすべての列が挿入/編集用に提示されます。

検証用の XML ファイルは、Spectrum Spatial™ Analyst がインストールされた場所の customerconfigurations\analyst\theme\featureEditTemplates フォルダに保存する必要があります。検証用の XML ファイルを名前付きレイヤに割り当てるには、Spectrum Spatial™ Analyst[プロジェクト設定] ページで、ビジネス マップの [テンプレート] タブを使用します。

次のサンプル XML は、WorldTable のフィーチャを編集するときに検証ルールに適用されます。

<FeatureEditing>
  <table>
      <table>/Samples/NamedTables/WorldTable</table>
      <showAllAttributes>false</showAllAttributes>                       
        <primaryKey>
           <includeInInsert>true</includeInInsert>                                   
           <hidden>false</hidden>                                   
           <showDisabled>true</showDisabled>
   </primaryKey>                       
          <geometrySupported>                                                                   
               <line>false</line>                                   
               <point>false</point>                                   
               <polygon>true</polygon>                       
          </geometrySupported>                        
          <columns>
	      <column>                                               
               <dbColumnName>Column_1</dbColumnName>                                               
               <name>Column 1</name>                                               
               <required>true</required>                                                                                
               <defaultValue>Enter Unique Value</defaultValue>                                               
               <minLength>4</minLength>                                      
               <maxLength>25</maxLength>                                
             </column>
	   <column>                                               
              <dbColumnName>Column_2</dbColumnName>                                               
              <name>Column 2</name>                                               
              <required>true</required>                                               
              <pickList> 
                   <Option></Option>                                                          
                   <Option>Option 1 </Option>                                               
                   <Option>Option 2</Option>                                                           
                   <Option>Option 3</Option>                                               
              </pickList>
          </column>
	        <column>                                               
               <dbColumnName>Column_3</dbColumnName>                                               
               <name>Column 3</name>                                               
               <required>false</required>                                               
               <showDisabled>true</showDisabled>                                               
               <minValue>1</minValue>                                                
               <maxValue>365</maxValue>                                   
           </column>
	 </columns>           
   </table>
</FeatureEditing>  

XML 要素とその使用方法に関する詳細については、次の表を参照してください。

要素 必須/オプション 使用方法
テーブル オプション テーブルのリポジトリ パス。
全ての属性を表示 必須 true に設定すると、すべてのテーブル列が属性フォームに表示され、列名が無視されます。

false に設定すると、表示する列を 1 つまたは複数指定する必要があります。

プライマリキー > 挿入 必須 Oracle/Geopackage の場合は true、その他の場合は false に設定します。
プライマリキー > 隠す オプション プライマリ キー列を表示する必要がある場合は false に設定します。
プライマリキー > 無効を表示 オプション [プライマリキー > 隠す]false になっていることを確認します。

読み取り専用で表示するには true に設定します。

ユーザ入力が必須の場合は false に設定します。ユーザが提供する値は、データベースで設定されたシーケンスまたは自動インクリメントによって上書きされます。

サポートされたジオメトリ オプション 挿入/編集機能で描画できるジオメトリを制限できます。指定しない場合、ジオメトリ ツールセットですべてのシェイプが使用可能になります。ジオメトリの組み合わせの挿入または編集はサポートされていません (ユーザは 1 つまたは複数のポリゴンを描画できますが、ポリゴン、ライン、ポイントの組み合わせは描画できません)。
オプション 指定した列が属性フォームに含められます。
dbフィールド名 必須 テーブル内の列の名前。
名前 必須 属性フォームに表示されるフレンドリ名。
必須 オプション ユーザの入力が必須の場合は true に設定します。
デフォルト値 オプション デフォルト値を指定します。
最小幅 オプション テキスト列について、最小長の条件を指定します。
最大幅 オプション テキスト列について、最大長の条件を指定します。
最小値 オプション 数値列について、最小値を指定します。
最大値 オプション 数値列について、最大値を指定します。
ピックリスト オプション 定義済みの値からの選択をユーザに許可する場合、このオプションを指定します。
注: このオプションを空に設定した場合、データベースまたは TAB ファイルに null 値が挿入されます。

単一の XML ファイルを使って、マップ設定をテーブルに結合できます。ただし、1 つのテーブルに複数のマップ設定が存在する場合は、同じテーブルに複数の XML 設定を適用することができます。マップ設定、テーブル、および XML 設定のマッピングは、Spectrum Spatial™ Manager[プロパティ] メニュー オプションで行います。

テーブル内の列は読み取り専用に設定できます。読み取り専用の列をテンプレートで提供することはできません。

挿入/編集したフィーチャへのスタイルの適用

フィーチャのスタイルは、フィーチャをテーブルに挿入するときに定義されません (テーブルの編集時に定義します)。データ ソースに (行ごとのスタイル列ではなく) テーブルレベルのスタイルが設定されていると、フィーチャにはテーブルのスタイルが適用されます。データ ソースで行ごとのスタイル設定が有効になっている場合は、フィーチャにデフォルトのスタイル (白の塗りつぶしと黒の輪郭) が適用されます。

テーブルをアップロードする際は、管理者が MapInfo Pro を使用してスタイル オーバーライドを適用することをお勧めします。そうすると、行ごとのスタイルに関係なく、すべてのフィーチャが意図したスタイルで Spectrum™ Technology Platform および Spectrum Spatial™ Analyst に表示されます。