重要

Translation is a community effort you can join. This page is currently translated at 67.73%.

16.2. 属性テーブルの操作

属性テーブルは選択されたレイヤの地物の情報を表示します。各行は(ジオメトリを持つ持たないに関わらず)1つの地物を表し、各列はその地物のある特定の情報を持っています。属性テーブルの地物は検索、選択、移動および編集が可能です。

16.2.1. 序文: 空間情報のあるテーブル、空間情報のないテーブル

QGISでは、空間レイヤと非空間レイヤを読み込むことができます。これには現在、GDALや区切りテキストでサポートされているテーブル、PostgreSQL、MS SQL Server、SpatiaLite、Oracleプロバイダが含まれます。読み込まれたすべてのレイヤは レイヤ パネルに一覧表示されます。レイヤが空間的に有効かどうかによって、マップ上でそのレイヤを操作できるかどうかが決まります。

空間情報を持たないテーブルは、属性テーブルビューを使用して閲覧や編集ができます。さらに、これをフィールドの参照値に使用することも可能です。例えば、空間情報を持たないテーブルの列を使用して、編集モード中の特定のベクタレイヤに追加される属性値や許容される値の範囲を定義することができます。詳しくは、 属性フォームプロパティ セクションの編集ウィジェットを参考にしてください。

16.2.2. 属性テーブルのインタフェースの紹介

ベクタレイヤの属性テーブルを開くには、 レイヤパネル 内でレイヤをクリックしてアクティブにします。次に、メインメニューの レイヤ メニューから、 openTable 属性テーブルを開く を選択します。レイヤを右クリックして、メニューから openTable 属性テーブルを開く を選択するか、属性ツールバーの openTable 属性テーブルを開く ボタンをクリックしても開くことができます。ショートカットキーがお好みなら、 F6 を押すと属性テーブルが開きます。 Shift+F6 は、選択した地物でフィルタリングされた属性テーブルを開き、 Ctrl+F6 は表示されている地物のみでフィルタリングされた属性テーブルを開きます。

これにより、レイヤの地物属性を表示するウィンドウが開きます( figure_attributes_table )。 設定 ► オプション ► データソース メニューの設定により、属性テーブルはドックウィンドウとして開くか、または通常のウィンドウで開きます。レイヤ内の地物数の合計や、選択中の地物数、フィルタリングされた地物数が属性テーブルのタイトルに表示されます。また、レイヤが空間的に制限されているかどうかも表示します。

../../../_images/vectorAttributeTable.png

図 16.68 地域レイヤの属性テーブル

属性テーブルウィンドウの上部にあるボタンには以下の機能があります。

表 16.1 利用可能なツール

アイコン

ラベル

目的

デフォルトのショートカット

toggleEditing

編集モード切替

編集機能を有効にする

Ctrl+E

multiEdit

マルチエディットモード切替

多くの地物の複数のフィールドを更新する

saveEdits

編集内容の保存

現在の修正を保存する

refresh

テーブルを再読み込み

newTableRow

地物追加

ジオメトリを持っていない地物を新規追加します

deleteSelectedFeatures

選択地物の削除

選択された地物をレイヤから削除します

editCut

選択行を切り取ってクリップボードへ

Ctrl+X

copySelected

選択している行をクリップボードへコピーする

Ctrl+C

editPaste

クリップボードから地物を貼り付ける

コピーされた地物を新規地物として挿入します

Ctrl+V

expressionSelect

式による地物選択

selectAll

すべて選択

レイヤ内のすべての地物を選択します

Ctrl+A

invertSelection

選択部分を反転する

レイヤ内の現在の選択状態を反転します

Ctrl+R

deselectActiveLayer

レイヤ内の全地物を選択解除

現在のレイヤ内のすべての地物の選択を解除します

Ctrl+Shift+A

filterMap

フォームによる地物選択/フィルタ

Ctrl+F

selectedToTop

選択を一番上に

選択した行をテーブルの先頭行に移動します

panToSelected

選択した行の地物にパン

Ctrl+P

zoomToSelected

選択した行の地物にズームする

Ctrl+J

newAttribute

新規フィールド

データソースに新しいフィールドを追加します

Ctrl+W

deleteAttribute

フィールド削除

データソースからフィールドを削除します

editTable

列の整理

属性テーブルにフィールドを表示させたり、隠したりします

calculateField

フィールド計算機を開く

多数の地物のフィールドを連続的に更新します

Ctrl+I

conditionalFormatting

条件付き書式

表の書式設定を有効にします

dock

属性テーブルをドッキング

属性テーブルをウィンドウにドッキング/ドッキング解除します

actionRun

アクション

レイヤに関連したアクションをリストします

注釈

データの形式やお使いのQGISのバージョンでビルドされたGDALライブラリによっては、利用できないツールがあります。

これらのボタンの下には、クイックフィールド計算バー( 編集モード でのみ有効)があり、レイヤ内の地物のすべてまたは一部に計算結果を素早く適用できます。このバーは calculateField フィールド計算機 と同様の を使用します( 属性値の編集 参照)。

16.2.2.1. テーブル表示 vs フォーム表示

QGISは属性テーブル内のデータを簡単に操作するための2つの表示モードが用意されています。

  • openTable テーブル表示 は、複数の地物の値を表形式で表示します。各行は1つの地物を、各列はフィールドを表しています。列のヘッダを右クリックすると テーブルの列表示の設定 ができ、セルを右クリックすると、 地物とのやり取り ができます。

    The attribute table supports Shift+Mouse Wheel scrolling in table view mode to switch between vertical and horizontal scrolling movements. This can also be achieved replacing the mouse with the trackpad on macOS.

  • formView フォーム表示 は、最初のパネルに 地物の表示名 が表示され、クリックした表示名の属性のみを2つ目のパネルに表示します。最初のパネルの上部には、属性( カラムプレビュー )や を使用して「表示名」を指定することができるプルダウンメニューがあります。このプルダウンメニューには、再利用のために最後に使用した10個の式も含まれています。フォーム表示はレイヤのフィールドの設定( 属性フォームプロパティ 参照)を使用します。

    最初のパネルの下部にある矢印ボタンを使用して、地物IDでブラウジングができます。2番目のパネルに表示される地物の属性は、矢印ボタンを押すたびに順に更新されます。また、下部にあるボタンを押すことで、マップキャンバスでアクティブな地物を識別したり、アクティブな地物へ画面を移動することもできます。

    • マップキャンバスに地物が表示されている場合に、 highlightFeature 現在の地物をハイライト表示

    • panTo 現在の地物に合わせて縮小表示

    • zoomTo 現在の地物に合わせて拡大

あるモードから他方のモードへの切り替えは、ダイアログの右下にある対応するアイコンをクリックすることによって行えます。

設定 ► オプション ► データソース メニューで、属性テーブルのオープン時の デフォルトビュー モードを指定することもできます。 「直前の表示形式」、「テーブル表示」または「フォーム表示」にすることができます。

../../../_images/attribute_table_views.png

図 16.69 属性テーブルのテーブル表示(上)とフォーム表示(下)

16.2.2.2. 列の設定

テーブル表示の場合に列のヘッダを右クリックすると、以下の項目をコントロールするツールにアクセスできます:

列の幅の修正

列の幅は、列見出しを右クリックして、次のいずれかを選択することで設定できます:

  • 幅の設定... 希望する幅の値を入力します。デフォルトでは、現在の値がウィジェットに表示されます

  • 全カラム幅を設定... は、すべてのカラムの幅を同じ値で設定します

  • 自動サイズ は、列に合わせて最適なサイズに変更します。

  • 全カラム幅を自動設定

カラムの幅は、カラムのヘッダの右側の境界をドラッグすることでも変更できます。新しいカラム幅はレイヤに保持され、次に属性テーブルを開いたときにこの幅が復元されます。

列の非表示・整理とアクションの有効化

列のヘッダを右クリックすると、属性テーブルから 列を非表示 とするかどうかを選択できます(「テーブル表示」の場合)。より詳細なコントロールについては、ダイアログのツールバーの editTable 列の整理... ボタンを押すか、列のヘッダの右クリックメニューで 列の整理... を選択します。このダイアログでは、以下のことができます:

  • 表示したい列にチェック、または非表示したい列のチェックを外す:非表示にした列は、自ら復元するまで、属性テーブルダイアログのすべてのインスタンスから消えます。

  • アイテムをドラッグ&ドロップして、属性テーブル内の列の順序が変更できます。この変更はテーブルの表示のためのものであり、レイヤのデータソースのフィールドの順序は変更されないことに注意してください。

  • 新しい仮想の アクション 列を追加して、各行にドロップダウンボックスを表示したり、利用可能なアクションのボタンリストを表示します。アクションに関する更なる情報については、 アクションプロパティ を参照してください。

Sorting rows

The rows can be sorted by any column, by clicking on the column header. A small arrow indicates the sort order (downward pointing means descending values from the top row down, upward pointing means ascending values from the top row down). You can also choose to sort the rows with the Sort... option of the column header context menu and write an expression. E.g. to sort the rows using multiple columns you can write concat(col0, col1).

フォーム表示では、地物識別子は sort プレビュー式で並べ替え オプションを使用してソートできます。

Note that sorting the rows only affects the table rendering and does not alter the features order in the layer datasource.

Tip

異なる型の列に基づいた並べ替え

Trying to sort an attribute table based on columns of string and numeric types may lead to unexpected result because of the concat("USE", "ID") expression returning string values (ie, 'Borough105' < 'Borough6'). You can workaround this by using eg concat("USE", lpad("ID", 3, 0)) which returns 'Borough105' > 'Borough006'.

16.2.2.3. 条件式を使ったテーブルセルの書式設定

条件付き書式設定を使用して、属性テーブル内で特に注目したい地物を強調表示させることができます。カスタム条件式は、地物に関する以下の要素に基づきます:

  • ジオメトリ(例:マルチパート地物、面積が小さい地物、定義された地図範囲内にある地物などを識別する)

  • or field value (e.g., comparing values to a threshold, identifying empty cells, duplicates, ...).

You can enable the conditional formatting panel clicking on conditionalFormatting Conditional formatting button at the top right of the attributes window in table view (not triggered in form view).

この新しいパネルでは、 radioButtonOnフィールド または radioButtonOff行全体 の書式レンダリングに新ルールを追加することができます。新ルールを追加すると、以下のものを定義するためのフォームが開きます:

  • ルールの名前

  • 何らかの 式ビルダー 関数を使用した条件式

  • 書式設定:プリセット書式のリストから選択するか、以下のプロパティに基づいて作成できます。

    • 背景色とテキスト色

    • アイコンを使用するかどうか

    • 太字、イタリック、下線、取り消し線

    • フォント

../../../_images/attribute_table_conditional_formating.png

図 16.70 属性テーブルの条件付き書式

16.2.3. 属性テーブルの地物とのやりとり

16.2.3.1. 地物の選択

テーブル表示では、属性テーブルの各行はレイヤ内の個別地物の属性を表します。ある行を選択するとその地物が選択され、同様に、(ジオメトリのあるレイヤの場合は)マップキャンバスで地物を選択すると属性テーブル内の行が選択されます。マップキャンバス(または属性テーブル)で選択された地物の組み合わせが変更された場合、それに応じて属性テーブル(またはマップキャンバス)の選択が更新されます。

行の左端にある行番号をクリックすることで、行を選択することができます。 Ctrl キーを押しながらクリックすると、 複数の行 をマークすることができます。 Shift キーを押しながら行の左側にある複数の行ヘッダをクリックすると、 連続選択 ができます。現在のカーソル位置とクリックした行の間のすべての行が選択されます。属性テーブルのセルをクリックしてカーソル位置を移動しても、行の選択は変わりません。また、メインキャンバス内で選択を変更しても、属性テーブルのカーソル位置は移動しません。

属性テーブルのフォーム表示では、地物はデフォルトで左側パネル内において表示フィールド( 表示名プロパティ 参照)の値によって識別されています。この識別子はパネルの上部にあるドロップダウンリストを使用して、既存のフィールドを選択するか、カスタム式を使用して置き換えることができます。また、ドロップダウンメニューから地物フォームのリストをソートすることもできます。

左側のパネルで値をクリックすると、右側のパネルにその地物の属性が表示されます。地物を選択するには、識別子の左にある四角いシンボルの中をクリックします。デフォルトでは、シンボルが黄色に変わります。テーブル表示と同様、これまでに紹介したキーボードの組み合わせで複数の地物を選択することができます。

マウスで地物を選択するだけでなく、属性テーブルのツールバーにある以下のようなツールを使用して、地物の属性に基づいた自動選択を行うことができます(詳細や使用例については、 自動選択 および次のセクションを参照):

  • expressionSelect 式による地物選択...

  • formSelect 値による地物選択...

  • deselectActiveLayer レイヤ内の全地物を選択解除

  • selectAll すべて選択

  • invertSelection 選択部分を反転する

フォームによるフィルタと地物選択 を使って地物を選択することもできます。

16.2.3.2. 地物のフィルタリング

属性テーブルで地物を選択したら、テーブルにこれらのレコードのみを表示したい場合があります。これは、属性テーブルダイアログの左下にあるドロップダウンリストから 選択した地物を表示 アイテムを使用すると簡単にできます。このリストには、次のようなフィルタがあります:

  • openTable 全地物を表示

  • openTableSelected 選択した地物を表示 - これは、 レイヤ メニューや 属性ツールバー から 属性テーブルを開く(選択地物) を使用する場合や、キーボードで Shift+F6 を押した場合と同じです

  • openTableVisible 地図上に表示されている地物を表示 - これは、 レイヤ メニューや the 属性ツールバー から 属性テーブルを開く(可視地物) を使用する場合や、キーボードで Ctrl+F6 を押した場合と同じです

  • openTableInvalid Show Features with Failing Constraints - features will be filtered to only show the ones which have failing constraints. Depending on whether the unmet constraint is hard or soft, failing field values are displayed in respectively dark or light orange cells.

  • openTableEdited 編集された地物と新規地物を表示 - これは、 レイヤ メニューや 属性ツールバー から 属性テーブルを開く(編集済み地物) を使用する場合と同じです

  • 属性フィルタ - フィールドの値に基づいたフィルタリングができます:リストからカラムを選択し、値を入力するか選択して、 Enter キーを押すとフィルタリングが実行されます。すると、 num_field = value の式や string_field ilike '%value%' の式にマッチする地物のみが属性テーブルに表示されます。文字列に関しては checkbox Case sensitive にチェックを入れることで、大文字小文字を区別するより厳しいマッチングにできます。

  • filterMap Advanced filter (Expression) - Opens the expression builder dialog. Within it, you can create complex expressions to match table rows. For example, you can filter the table using more than one field. When applied, the filter expression will show up at the bottom of the form.

  • handleStoreFilterExpressionChecked Stored filter expressions ►: a shortcut to saved expressions frequently used for filtering your attribute table.

これらは フォームによる地物フィルタ でも利用可能です。

注釈

属性テーブルからレコードをフィルタリングしても、レイヤから地物がフィルタリングされるわけではありません。地物はテーブルから一時的に非表示になるだけで、マップキャンバスからはアクセスでき、フィルタを取り除いてもアクセスすることができます。フィルタでレイヤから地物を実際に隠すには、 クエリビルダ を使用してください。

Tip

地図上に表示されている地物を表示 によるデータソースフィルタリングの更新

パフォーマンス上の理由で、属性テーブルに表示される地物がテーブルを開いたときのキャンバス範囲に空間的に制限されている場合(設定方法は データソースオプション を参照)、新しいキャンバス範囲で 地図に表示されている地物を表示 を選択すると、空間的な制限が更新されます。

16.2.3.3. フィルタ式の保存

属性テーブルのフィルタリングに使用した式は、以降の呼び出しのために保存することができます。 属性フィルタ詳細フィルタ(式) のエントリを使用すると、使用されている式が属性テーブルダイアログの下部にあるテキストウィジェットに表示されます。テキストボックスの横にある handleStoreFilterExpressionUnchecked 名前付きで式を保存 を押すと、プロジェクトに式が保存されます。ボタンの横にあるドロップダウンメニューを使用して、自分で式の名前を付けて保存できます( 式を新たに保存... )。保存された式が表示されたら、 handleStoreFilterExpressionChecked ボタンがトリガーされ、そのドロップダウンメニューから 式を編集 (式の名前も編集可)や、 保存済み式の削除 が行えます。

保存済みフィルタ式はプロジェクト内に保存され、属性テーブルの 保存済みフィルタ式 メニューをから利用できます。これは、アクティブなユーザープロファイルの全プロジェクトで共有される ユーザー保存式 とは異なります。

16.2.3.4. フォームによるフィルタと地物選択

filterMap フォームによる地物選択/フィルタ をクリックするか、または Ctrl+F を押すと、属性テーブルダイアログをフォーム表示に切り替え、各ウィジェットが検索変数に置き換わります。

ここで説明するこのツールの機能は、 値による地物選択 で説明されているものと同様です。そちらには、すべての演算子と選択モードについての説明があります。

../../../_images/tableFilteredForm.png

図 16.71 フィルタフォームでフィルタされた属性テーブル

属性テーブルから地物を選択/フィルタする際には、フィルタを定義したり、絞り込んだりできる 地物をフィルタする ボタンがあります。このボタンを押すと 詳細フィルタ(式) オプションがトリガーされ、対応したフィルタ式がフォームの下部にある編集可能なテキストウィジェットに表示されます。

すでにフィルタされた地物がある場合は、 地物をフィルタする ボタンの隣にあるドロップダウンリストを使用してフィルタを絞り込むことができます。オプションは次のとおりです。

  • フィルタの絞り込み ("AND")

  • フィルタを拡げる ("OR")

フィルタを削除するには、左下のプルダウンメニューから 全地物を表示 オプションを選択するか、または式をクリアして 適用 ボタンをクリックするか Enter キーを押します。

16.2.4. 地物に関するアクション

ユーザーはコンテキストメニューを使用していくつかの地物操作が可能です:

  • 地物を すべて選択Ctrl+A

  • セルの内容をコピーする で、セルの内容をクリップボードにコピーする

  • 地物を選択することなく 地物にズーム

  • 地物を選択することなく 地物にパン

  • 地物をフラッシュ で、マップキャンバス内で強調表示

  • フォームを開く :そのクリックされた地物にフォーカスした状態で、属性テーブルをフォーム表示に切り替えます

../../../_images/copyCellContent.png

図 16.72 「セルの内容をコピーする」ボタン

属性データを外部プログラム(Excel、LibreOffice、QGIS、カスタムWebアプリケーションなど)で使用したい場合には、1つまたは複数の行を選択して copySelected 選択している行をクリップボードへコピーする ボタンを押すか、 Ctrl+C を押します。

設定 ► オプション ► データソース メニューでは、 地物のコピー ドロップダウンリストで貼り付け形式を指定できます:

  • プレーンテキスト(ジオメトリなし)

  • プレーンテキスト(WKTジオメトリ)

  • GeoJSON

このコンテキストメニューでアクションのリストを表示することもできます。これは レイヤプロパティ ► アクション タブから有効にできます。アクションの詳細については アクションプロパティ を参照してください。

16.2.4.1. 選択地物を新規レイヤとして保存する

選択された地物は、OGR がサポートする任意のベクトル形式として保存でき、別の座標参照系 (CRS) に変換することもできます。レイヤ パネルでレイヤのコンテキストメニューから エクスポート ► 新規ファイルに選択地物を保存... をクリックし、出力データセットの名前、形式、CRSを定義します(セクション 既存のレイヤから新しいレイヤを作成する を参照)。checkbox 選択地物のみ保存 がチェックされていることが分かります。ダイアログ内でGDALの作成オプションを指定することも可能です。

16.2.5. 属性値の編集

属性値の編集は以下の方法で行うことができます。

  • 新しい値をセルに直接入力します。属性テーブルがテーブル表示でもフォーム表示でも可能です。従って、変更はセルごと、地物ごとに行われます。

  • フィールド計算機 を使用して、あるフィールド列全体に対して連続して更新を行います。フィールドは既存のものでも、新しく作られたものでもよいですが、更新は複数の地物に対して行われます。これは仮想フィールドを作るためにも使用することができます。

  • クイックフィールド 計算バー を使用します。上と同じですが既存のフィールドに対してのみ使用できます。

  • マルチエディット モードを使用します。複数の地物の複数のフィールドを連続して更新します。

16.2.5.1. フィールド計算機を使用する

属性テーブルの calculateField フィールド計算機 ボタンを使うと、既存の属性値もしくは定義された関数に基づいて計算を行うことができます。例えば、ジオメトリ地物の長さや面積の計算ができます。計算結果は既存のフィールドの更新や、新しいフィールド(これは 仮想 フィールドも可)への書き込みに使うことができます。

フィールド計算機 は編集をサポートするすべてのレイヤで利用可能です。フィールド計算機のアイコンをクリックすると、ダイアログを開きます( 図 16.73 参照)。レイヤが編集モードでない場合には警告が表示され、フィールド計算機を使用すると、計算が行われる前にレイヤが編集モードに変わります。

Based on the Expression Builder dialog, the field calculator dialog offers a complete interface to define an expression and apply it to an existing or a newly created field. To use the field calculator dialog, you must select whether you want to:

  1. レイヤの全体に計算を適用したいのか、それとも選択した地物のみに適用したいのか

  2. 計算によって新しいフィールドを作りたいのか、それとも既存のフィールドを更新したいのか

../../../_images/fieldcalculator.png

図 16.73 フィールド計算機

新しいフィールドを作ることを選んだ場合には、フィールドの名前やフィールド型(整数値、小数点付き数値、日付、テキストなど)を入力する必要があり、必要ならばフィールド長や精度も入力します。例えば、フィールド長が10で精度を3とすると、これは小数点より前に7桁あり、小数部が3桁の数値ということになります。

タブを使用している場合のフィールド計算機の動作を簡単な例で説明します。QGISサンプルデータセットから、 railroads レイヤの長さを km 単位で計算したいとします:

  1. QGISでシェープファイル railroads.shp をロードし、 openTable 属性テーブルを開く を押します。

  2. toggleEditing 編集モード切替 をクリックし、 calculateField フィールド計算機 ダイアログを開きます。

  3. checkbox 新しいフィールドを作成 チェックボックスを選択し、新しいフィールドに計算を保存するようにします。

  4. 出力する属性(フィールド)の名前length_km に設定します。

  5. フィールド型 として 小数点付き数値(real) を選択します。

  6. フィールド長10 に、 精度3 に設定します。

  7. ジオメトリ グループにある $length をダブルクリックして、ジオメトリの長さをフィールド計算機の式ボックスに追加します(式ボックスの下に最大60文字までの出力のプレビューが表示され、式が組み立てられるとリアルタイムに更新されます)。

  8. フィールド計算機の式ボックスで / 1000 を入力して式を完成させ、 OK をクリックします。

  9. これで、属性テーブルに新しい length_km フィールドが出来ました。

16.2.5.2. 仮想フィールドの作成

仮想フィールドとは、オンザフライで計算される式に基づいたフィールドのことです。式の基礎となるパラメータが変更されると値が自動的に更新されます。式の設定は一度だけでよく、基礎となる値が変更されるたびにフィールドの再計算を行う必要はありません。例えば、地物をデジタイジングするたびに面積を評価する場合や、変更の可能性がある(例: now() 関数を使用する)日付間の期間を自動的に計算する場合などで、仮想フィールドを使用するのが良いでしょう。

注釈

仮想フィールドの使用

  • 仮想フィールドはレイヤの属性として永続的ではありません。つまり、仮想フィールドを作成したプロジェクトファイル内にのみ保存され、そこでのみ利用可能です。

  • フィールドは作成時にのみ、仮想フィールドに設定することができます。仮想フィールドは、レイヤプロパティダイアログのフィールドタブに紫色の背景で表示され、通常の物理フィールドや結合されたフィールドとは区別できるようになっています。仮想フィールドの式は、「コメント」列の式ボタンを押すことで、後から編集することができます。ボタンを押すと式エディタウィンドウが開き、仮想フィールドの式の修正ができます。

16.2.5.3. クイックフィールド計算バーを使用する

フィールド計算機がいつでも利用可能なのに対して、属性テーブルの上部にあるクイックフィールド計算バーは、レイヤが編集モードにある場合にのみ表示されます。式エンジンのおかげで、クイックフィールド計算バーを使えば既存のフィールドの編集がより素早くできるようになります。

  1. ドロップダウンリストから更新したいフィールドを選択します。

  2. テキストボックスに直接書くか、 expression 式ボタンを使用して値や式を入力します。

  3. 必要に応じて、 すべて更新選択を更新 、または フィルタされたものを更新 ボタンをクリックします。

../../../_images/fieldcalculatorbar.png

図 16.74 クイックフィールド計算バー

16.2.5.4. 複数のフィールドの編集

これまでのツールとは異なり、マルチエディットモードでは、さまざまな地物の複数の属性を同時に編集できます。レイヤを編集モード切り替えて、以下の操作によりマルチエディット機能にアクセスできます。

  • 属性テーブルダイアログ内のツールバーの multiEdit マルチエディットモード切替 ボタンを押す

  • または、 編集 ► multiEdit 選択地物の属性変更 メニューを選択する

注釈

属性テーブルのツールとは異なり、 編集 ► 選択地物の属性変更 オプションを選択すると現れる、変更する属性値を入力するためのダイアログはモーダルなダイアログです。したがって、実行前に地物の選択が必要です。

複数のフィールドを一度に編集するには:

  1. 編集したい地物を選択します。

  2. 属性テーブルツールバーから multiEdit をクリックします。これによりダイアログがフォーム表示に切り替わります。地物の選択はこの段階でも行うことができます。

  3. 属性テーブルの右側には、選択した地物のフィールド(と値)が表示されています。新しいウィジェットが各フィールドの横に表示され、現在のマルチエディット状態を表示します。

    • multiEditMixedValues 選択した地物はフィールドに異なる値を有しています。値は空で表示され、各地物は元の値を持っています。ウィジェットのドロップダウンリストから、フィールドの値をリセットすることができます。

    • multiEditSameValues 選択した地物は全てフィールドに同じ値を持っており、フォームに表示される値を保持します。

    • multiEditChangedValues フィールドの値が編集され、入力した値を選択した地物すべてに適用しようとする状態です。ダイアログの上部には、変更を適用するか、リセットするかを案内するメッセージが表示されます

    これらのウィジェットのいずれかをクリックすると、フィールドの現在の値を設定するか、元の値にリセットできます。つまり、フィールド単位で変更をロールバックできます。

    ../../../_images/attribute_multiedit.png

    図 16.75 複数地物のフィールドの編集

  4. 変更したいフィールドを編集します。

  5. 上部のメッセージ内の 変更の適用 をクリックするか、または左側パネルの別の地物をクリックします。

選択した地物すべて に変更が適用されます。地物が選択されていない場合、テーブル全体が変更内容で更新されます。変更は単一の編集コマンドとして行われます。したがって、undo 元に戻す を押すと、選択したすべての地物の属性変更を一度にロールバックします。

注釈

複数編集モードは「自動生成」または「ドラッグ&ドロップ」のフォームでのみ利用可能です( データに合わせてフォームをカスタマイズする 参照)。カスタムUIフォームではサポートされていません。

16.2.6. Exploring features attributes through the Identify Tool

The identify Identify features tool can be used to display all attributes of a feature in the map canvas. It is a quick way to view and verify all data without having to search for it in the attribute table.

To use the Identify features tool for vector layers, follow these steps:

  1. Select the vector layer in the Layers panel.

  2. Click on the Identify features tool in the toolbar or press Ctrl+Shift+I.

  3. Click on a feature in the map view.

The Identify results panel will display different features information depending on the layer type. There are two columns in the panel, on the left side you can see Feature and on the right side Value. Under the Feature column, panel will display following information:

  • Derived section - those are the information calculated or derived from other information in the layer. For example, the area of a polygon or the length of a line. General information that can be found in this section:

    • Depending on the geometry type, cartesian measurements of length, perimeter, or area in the layer's CRS units. For 3D line vectors, the cartesian line length is available.

    • Depending on the geometry type and if an ellipsoid is set in the Project Properties dialog (General --> Measurements), ellipsoidal values of length, perimeter, or area using the specified units.

    • The count of geometry parts in the feature and the number of the part clicked.

    • The count of vertices in the feature.

    Coordinate information that can be found in this section:

    • X and Y coordinate values of the clicked point.

    • The number of the closest vertex to the clicked point.

    • X and Y coordinate values of the closest vertex.

    • If you click on a curved segment, the radius of that section is also displayed.

  • Data attributes: This is the list of attribute fields and values for the feature that has been clicked.

  • information about the related child feature if you defined a relation:

    • the name of the relation

    • the entry in reference field, e.g. the name of the related child feature

    • Actions: lists actions defined in the layer's properties dialog (see アクションプロパティ) and the default action is View feature form.

    • Data attributes: This is the list of attributes fields and values of the related child feature.

16.2.7. 外部リソースの保存と取得

フィールドは外部ストレージシステムに保存されたリソースを対象とすることもできます。属性フォームは外部ストレージシステムに対するクライアントとして動作するように設定でき、フォームから直接、ユーザーの要求に応じて外部ストレージシステムからリソースを保存・取得することができます。

16.2.7.1. 外部ストレージの設定

外部ストレージを設定するにはまず、最初にベクタレイヤの 属性フォームプロパティ を設定し、 アタッチメント ウィジェットを選択する必要があります。

../../../_images/external_storage_configuration.png

図 16.76 指定したフィールドのWebDAV外部ストレージの設定編集

アタッチメント ウィジェットを選択したら、まずは ストレージタイプ を以下の中から選択します:

  • ファイルを選択 :ターゲットのURLがある場合に使用します。リソースを選択すると、ストア操作は行われず、属性値は単にURLで更新されます。

  • 単純コピー :リソースのコピーをファイルディスクの指定位置(ローカル、ネットワーク共有ファイルシステムどちらも可)に保存し、属性値はコピーへのパスで更新されます。

  • WebDAV Storage: リソースは WebDAV プロトコルをサポートするHTTPサーバーにプッシュされ、属性はそのURLで更新されます。NextcloudPydio などのファイルホスティングソフトウェアがこのプロトコルに対応しています。

  • AWS S3: The resource is pushed to a server supporting AWS Simple Storage Service protocol and the attribute is updated with its URL. Amazon Web Service and MinIO hosting software support this protocol.

続いて、 保存URL パラメータを設定する必要があります。これは、新しいリソースを保存する必要がある場合に使用するURLです。これは地物の属性に応じた特定の値を持てるように、 データによって定義された上書きウィジェット を使用して式を設定することもできます。

変数 @selected_file_path を式中で使用すれることができ、ユーザーが(ファイルセレクタを使用して、あるいはドラッグ&ドロップで)選択したファイルの絶対ファイルパスを表すことができます。

注釈

Using the WebDAV or AWS S3 external storage, if the URL ends with a "/", it is considered as a folder and the selected file name will be appended to get the final URL.

外部ストレージシステムが必要とするならば、 認証 に関する設定も行えます。

注釈

To use the AWS S3 external storage, you must use an AWS S3 authentication type.

16.2.7.2. 外部ストレージの利用

設定が完了したら、地物の編集中状態で ... ボタンを押すことで、ローカルファイルを選択できます。 ストレージタイプ に応じてこのファイルは外部ストレージシステムに保存され( ファイルを選択 を選択した場合を除く)、フィールドの値は新しいリソースのURLで更新されます。

../../../_images/external_storage_store.png

図 16.77 ファイルのWebDAV外部ストレージへの保存

注釈

ファイルアタッチメントウィジェット上にファイルをドラッグ&ドロップすることでも、同様の結果が得られます。

taskCancel キャンセル ボタンを使用すると、保存プロセスが中断します。 統合ドキュメントビューア を使用してビューアの設定を行うことで、外部ストレージシステムからリソースを自動的に取得し、URLの下に表示させることができます。上記の warning アイコンは、外部ストレージシステムからリソースを取得できないことを示しています。この場合、より詳細な情報が ログメッセージパネル に表示されていることがあります。