重要

翻訳は あなたが参加できる コミュニティの取り組みです。このページは現在 100.00% 翻訳されています。

25.2.4. オフライン編集プラグイン

データ収集においては、現場でノートパソコンや携帯電話をオフラインで使用することが一般的です。ネットワークに戻った後、変更内容をマスターデータソース(例えばPostgreSQLデータベース)と同期させる必要があります。複数の人が同時に同じデータセットを操作している場合、たとえ変更したフィーチャーが異なっていても、手動で編集内容を統合するのは困難です。

offlineEditingCopy オフライン編集 プラグインは、データソースの内容を SpatiaLite または GeoPackage データベースにコピーし、オフライン編集を専用のテーブルに保存することで、同期を自動化します。再びネットワークに接続した後、オフライン編集をマスターデータセットに適用することができます。

プラグインを使うには

  1. ベクターレイヤーを含むプロジェクトを開きます(例:Esri Shapefile、PostgreSQL、またはWFS-Tデータソースから)。

  2. プラグインを有効にしている場合 ( コアプラグインと外部プラグイン を参照) Database ► Offline Editing ► offlineEditingCopy Convert to offline project に進みます。その名前をつけたダイアログが開きます。

  3. ストレージ型を選択します。GeoPackage または SpatiaLite データベース型を選択します

  4. ブラウズ ボタンを使って、オフラインデータ を保存するデータベースの場所を指定します。既存のファイルでも作成するのでもかまいません。

  5. リモートレイヤを選択 セクションで、保存したいレイヤにチェックを入れます。そのレイヤの内容はデータベースのテーブルに保存されます。

    注釈

    ターゲットのデータベース形式はネイティブでリストをサポートしないので、オフライン編集プラグインは、{文字列、数値}リストフィールドをカンマ区切りの文字列フィールドに変換します。これにより、オフライン時にこれらのフィールドの内容を読み込んで編集することができます。

    元のレイヤとオフラインのレイヤの両方のフィールドを扱いたい場合は、try()array 式関数を利用します。例:

    try(array_contains("field",1),array_contains(string_to_array("field"),1))
    
  6. 選択範囲がある場合、選択がある場合に選択地物だけを同期する チェックボックスをオンにすることで、サブセットのみを保存して作業することができます。大きなレイヤの場合、これは非常に有効です。

    これで全部です!

  7. プロジェクトを保存して現場に持って行きます。

  8. オフラインでレイヤを編集します。

  9. 再接続後、データベース ► オフライン編集 ► offlineEditingSync 同期 を使って変更をアップロードします。

注釈

オフラインで使用するレイヤは、レイヤ パネルに indicatorOffline アイコンが表示されます。

../../../../_images/create_offline_project.png

図 25.15 オフラインプロジェクトを作る