eyecatch

チームでのQField作業を効率化!複数人でのデータ編集と同期方法を解説

投稿日: 最終更新日:
この記事はQGIS 3.40を使用しています。

この記事でわかること


  • QFieldプロジェクトをQGISに同期する具体的な手順
  • 複数ユーザーの編集を安全に統合するための設定方法
  • データ同期時の注意点と競合を避けるための対策

こんな人におすすめ


  • チームでQFieldを使い、現地調査を行っている方
  • 複数人から集めた編集データを、QGISで効率的に一元管理したい方
  • データの競合や損失を防ぎ、QField Syncプラグインを安心して使いたい方

はじめに

業務やフィールドワークでは、複数の担当者で作業を分担して進める場面があります。QFieldで複数のユーザーが集めたデータを、QGISで効率よく同期・統合する方法に迷うことはありませんか。

この記事では、現地調査データをQGISに同期する方法をわかりやすく紹介します。

基本的な流れは、各ユーザーが更新したQFieldプロジェクトをQGISプロジェクトを保存しているPCへ転送し、QField Syncプラグインを使ってそれらのデータを自動的に同期するというものです。

QFieldでの収集データをQGISへ同期するの流れ
QFieldでの収集データをQGISへ同期するの流れ

QField Syncプラグインによる同期の概要

QFieldプロジェクトをPCに転送して、QGISで開くことでデータを同期できますが、複数人が異なるQFieldデバイスから更新を行う場合、データの競合や欠損が発生するリスクがあります。このため、QField Syncプラグインの同期機能を活用することで、複数ユーザーが追加したすべてのデータを損失なく元のQGISプロジェクトに一元化できます。

例えば、下図のように同じQFieldプロジェクトを編集したデバイスAとBがあり、それぞれ同じレイヤに地物を追加したとします。QField Syncプラグインを使用することで、元のレイヤにそれぞれの変更を統合して同期させることができます。

複数ユーザーによる編集を同期するイメージ(地理院タイルを加工して作成)
複数ユーザーによる編集を同期するイメージ(地理院タイルを加工して作成)

QFieldプロジェクトをQGISプロジェクトに同期する方法

複数ユーザーのQFieldプロジェクトを同期する手順は、まずQGISプロジェクトをオフライン編集モードで設定し、それをQFieldユーザーに配布した後、各ユーザーが収集したデータを元のQGISプロジェクトに同期します。

以下、手順に沿って設定方法と同期方法を解説します。

QGISプロジェクトのレイヤをオフライン編集として設定

QGISプロジェクトをモバイルデバイスに転送するには、QField Syncプラグインを使用します。

複数ユーザーによる同期を可能にするには、まずモバイルデバイスに転送する前に、QGISプロジェクト内の対象レイヤを「オフライン編集用」として設定しておく必要があります

この操作を行うには、メニューバーより、[プロジェクト]→[プロパティ]を選択します。

プロジェクトメニューから[プロパティ]をクリック(地理院タイルを加工して作成)
プロジェクトメニューから[プロパティ]をクリック(地理院タイルを加工して作成)

プロジェクトプロパティの画面で「QField」タブを選択します。

[ケーブルのパッケージ]タブをクリックすると、同期したいレイヤの「パッケージアクション」を設定できます。この設定は、QFieldパッケージの作成時に各レイヤに対して実行されるアクションを定義します。デフォルトの[Copy]アクションでは、単にレイヤに対応するファイルをパッケージにコピーするだけの処理が行われます。

ケーブルのパッケージの設定画面
ケーブルのパッケージの設定画面

ただし、データを単純にコピーするだけでは、同期時に他の更新との競合を適切に管理できません。そこで、QFieldで編集するレイヤに対して[Offline editing]オプションを指定します。

「パッケージアクション」から[Offline editing]オプションを指定
「パッケージアクション」から[Offline editing]オプションを指定

このオプションでは、レイヤが作業用としてパッケージフォルダにコピーされ、現地調査中のすべての変更がログに記録されます。元のプロジェクトへの同期時には、このログを活用して複数ユーザーによる変更の競合を防ぎながら、元のソースレイヤに変更を適切に適用できます。

QFieldで使用しないレイヤは、アクションを「Remove from project」に設定することで、QFieldパッケージから除外できます。

設定が完了したら、QField Syncプラグインを利用して、QFieldパッケージを作成してモバイルデバイスへ転送し、現地でデータを収集します。

QFieldからデータを同期する

現地での作業が終わったら、QFieldのデータを再度PCに転送します。QFieldプロジェクトをPCに転送したら、Zipファイルを解凍しておきましょう。

元のQGISプロジェクトにQFieldプロジェクトの変更内容を同期させます。

転送されたQFieldプロジェクトが、元のQGISプロジェクトフォルダとは別の場所に保存されている
転送されたQFieldプロジェクトが、元のQGISプロジェクトフォルダとは別の場所に保存されている

まずは、QGISで元のプロジェクトを開きます。QFieldの変更を同期していないため、QField上で追加した地物がプロジェクトに含まれていません。

QField上で追加した地物がQGISの元のプロジェクトに含まれていない(地理院タイルを加工して作成)
QField上で追加した地物がQGISの元のプロジェクトに含まれていない(地理院タイルを加工して作成)

次に、QField Syncツールバーから、[QFieldから同期]ボタンをクリックします。

QField Syncツールバーから[QFieldから同期]ボタンをクリック
QField Syncツールバーから[QFieldから同期]ボタンをクリック

「プロジェクトを同期する」画面が表示されます。以下のように設定してください。

  1. 「QFieldプロジェクトフォルダを選択」の[…]ボタンをクリックして、モバイルデバイスから転送したQFieldプロジェクトフォルダを選択します。
  2. 「コピーされるディレクトリ」欄の[更新]ボタンをクリックすると、指定したプロジェクト内のフォルダが表示されます。画像などが格納されているディレクトリにチェックを入れることで、それらも一緒に同期されます。
  3. 設定が完了したら[同期]ボタンをクリックし、処理を開始します。
「プロジェクトを同期する」画面の設定
「プロジェクトを同期する」画面の設定

処理が完了すると、QFieldプロジェクトの変更内容がQGISプロジェクトに統合され、QFieldで追加した地物が正しく反映されます。

QFieldで追加した地物がQGISプロジェクトに反映されている(地理院タイルを加工して作成)
QFieldで追加した地物がQGISプロジェクトに反映されている(地理院タイルを加工して作成)

複数ユーザーによる変更の反映

複数の他ユーザーが同一のQFieldプロジェクトで収集したデータも同様の手順で元のQGISプロジェクトに同期します。これにより、最初のユーザーが登録したデータは保持されたまま、新たに追加された地物が元のQGISプロジェクトに反映されます。

複数ユーザーから追加した地物がQGISプロジェクトに反映されている(地理院タイルを加工して作成)
複数ユーザーから追加した地物がQGISプロジェクトに反映されている(地理院タイルを加工して作成)

QField Syncの同期における注意点

QField Syncによる同期は複数ユーザーが同じQFieldプロジェクトでデータ編集をする際に便利ですが、既存の地物の編集の際に競合が発生することがあります。例えば、同一の地物に対する属性の編集、写真の追加、位置の修正などが競合の原因となります。

このような状況では、後に同期したQFieldプロジェクトの変更が優先されるため、先に同期したQFieldプロジェクトの変更内容が失われてしまう可能性があります。こうした競合を防ぐには、各ユーザーに異なる担当エリアを割り当て同じデータを複数人が同時に編集することを避けるようにしましょう。

各ユーザーに異なる担当エリアを割り当てる(地理院タイルを加工して作成)
各ユーザーに異なる担当エリアを割り当てる(地理院タイルを加工して作成)

一方、新規データの追加のみの場合は、通常、競合は発生しません。そのため、複数のユーザーが同じエリアで同時にデータを入力する場合でも、この同期方法を安心して利用できます。

おわりに

この記事では、QFieldで収集したデータを出力し、QGISプロジェクトに効率的に同期する方法を紹介しました。QField Syncプラグインの同期機能は複数のユーザーからの更新を管理できます。ただし、特にデータを修正する場合は、編集エリアが被らないように注意する必要があります。

この方法では毎回QFieldパッケージを手動で転送する必要がありますが、QFieldCloudを利用することでより効率的かつスムーズにデータを更新できます。詳細については、この記事をご参照ください。

この記事を書いた人
QGIS LAB編集部
QGIS LAB編集部

QGIS LABは、オープンソースのGISソフトウェア「QGIS」に関する総合情報メディアです。「位置から、価値へ。」をコンセプトに、位置情報で世界を拓くための知識と技術をお届けします。

関連する記事