オフラインでエンタープライズ ジオデータベースからデータを取得して編集するには、同期に対応した編集可能な ArcGIS Server フィーチャ レイヤー (フィーチャ サービス) を公開します。 これで、オフラインで使用できるように構成された Web マップにフィーチャ サービスを追加することが可能になり、クライアントは Web マップとそのコンテンツをダウンロードし、ネットワークに接続していなくてもその Web マップを操作することができます。
注意:
date only、time only、timestamp offset、big integer、64-bit object ID のいずれかのフィールドを含むフィーチャ サービスはオフラインにできません。 そのため、データをオフラインにする場合は、これらのデータ タイプを持つフィーチャクラスを公開しないでください。
同期に対応したフィーチャ サービスで使用するデータは、管理履歴を有効にしてバージョン非対応にすることができますが、組織のデータまたはワークフローで必要な場合は、バージョン対応登録することもできます。
公開元のマップのデータは、すべて同じ設定である必要があります。マップ内にバージョン対応登録されているデータと対応登録されていないデータまたは従来のバージョン対応のデータとブランチ バージョン対応のデータを混在させることはできません。
データ準備の要件は、データがバージョン対応登録されているかどうかと、使用するオフライン編集ワークフローのタイプによって異なります。 これらのデータとオフライン ワークフローの要件は、フィーチャ サービスを公開する際にそのフィーチャ サービスに対して構成する設定にも影響します。 次のセクションでは、これらの要件を説明します。
注意:
フィーチャ サービスをオフラインで編集できるようにする必要はありません。フィーチャ サービスに対してクエリと同期を有効にすると、そのフィーチャ サービスが参照の目的にのみオフラインになります。 ただし、フィーチャ サービスをオンラインで使用する最も一般的なシナリオは、モバイル作業者が現場で編集できるようにすることです。 このため、後続のセクションでは、オフライン編集ワークフローを説明しています。
これらすべてのシナリオでは、フィーチャ レイヤーをオフラインにしたときにフィーチャ サービス レプリカが作成されることにも注意してください。
シナリオ 1: バージョニングが不要である
バージョン対応登録されたデータがワークフローに必要でない場合は、そのデータに対して履歴管理を有効化し、同期に対応した編集可能な ArcGIS Server フィーチャ サービスを公開して、そのフィーチャ サービスをオフラインで編集できるようにします。
このシナリオでは、データがバージョン対応登録されていません。 クライアントがフィーチャ サービスに接続し、接続が確立された時点での最新の変更を取得しようとすると、ジオデータベースからデータの最新の表現が取得されます。
ヒント:
このシナリオを使用する場合は、同期に対応したフィーチャ サービスを編集する際に小刻みに編集内容を保存する必要があります。
オフライン同期ワークフローをサポートすることがデータの管理履歴を有効にした主な理由である場合、データに対して [アーカイブ履歴の切り取り (Trim Archive History)] ジオプロセシング ツールを定期的に実行することをお勧めします。 これにより、コンパクトで効率的なアーカイブになります。
同期に対応したフィーチャ サービスでバージョン非対応データを使用するには、次のデータと公開設定が必要です。
このシナリオのデータ要件
公開する前に、次のように構成します。
- マップのすべてのデータは同じエンタープライズ ジオデータベースから取得され、データはジオデータベースに登録されている必要があります。
- 公開されるすべてのフィーチャクラスでは、履歴管理が有効化されている必要があります。
- 公開される各フィーチャクラスには、Global ID フィールドが含まれている必要があります。
オフラインで取得するデータセットに追加する Global ID は、カスタム フィールドを基準にすることができません。ArcGIS で作成された Global ID フィールドを明示的に使用する必要があります。 データに Global ID を追加するには、[Global ID の追加 (Add Global IDs)] ジオプロセシング ツールを使用するか、フィーチャクラス、フィーチャ データセット、およびカタログ ツリーのテーブル ショートカット メニューにある [Global ID の追加] コマンドを使用します。
- 公開されるデータセットがリレーションシップ クラスに参加しているか、アタッチメントを含んでいる場合、それらのリレーションシップは Global ID の主キーを使用する必要があります。
ObjectID 列を主キーにすると、オフラインで使用するデータをダウンロードした時点でエラーが返されます。 [リレーションシップ クラスの移行 (Migrate Relationship Class)] ジオプロセシング ツールを使用すると、Global ID フィールドが主キーになるように ObjectID ベースのリレーションシップ クラスと添付ファイルを変換できます。
- 次のフィールドをフィーチャ サービスに含める必要があります。公開されるフィーチャクラスでは、サブタイプを持つフィールド、リレーションシップ クラスまたはアタッチメントの主キーと外部キー フィールド、編集情報の記録フィールド (編集情報の記録がデータセットで有効になっている場合) の列は非表示にできません。
- データへのアクセスに使用するデータベース接続で指定されたログイン アカウントでは、ジオデータベース内のデータに対する権限を付与し、フィーチャ サービスに構成された編集操作を実行できるようにする必要があります。
フィーチャ サービスの構成
フィーチャ レイヤーを公開する場合、[Web レイヤーとして共有] ウィンドウの [構成] タブからアクセスされる [Web レイヤーのプロパティの構成] ダイアログ ボックスで、次のように設定する必要があります。
- 編集を有効にし、許可されている編集のレベルを選択します。
注意:
これらの設定は、フィーチャ サービスを所有しない管理者以外のユーザーにのみ適用されます。 ArcGIS Server 管理者とサービス所有者は、サービスにフルにアクセスでき、すべての操作が許可されています。
これにより、管理者やサービス所有者がオフラインで使用しているデータが常に編集可能になります。 オフラインの読み取り専用フィーチャ レイヤーが必要な場合、フィーチャ サービス所有者ではなく、管理者以外のユーザーによりオフラインで取得される必要があります。
- 同期を有効化します。
- 同期オプションを [なし] に設定します。
シナリオ 2: ブランチ バージョニングを使用してマルチユーザー編集を管理する
ブランチ バージョニングを使用してマルチユーザー編集シナリオを管理する場合またはブランチ バージョニングが必要なジオデータベース機能 (ユーティリティ ネットワークやパーセル ファブリックなど) を使用する場合は、次の 2 つのセクションに示されたワークフローのいずれかを使用できます。
ワークフローごとに、データに関する特定の設定とデータを公開する際の特定の設定が必要となります。
これらのワークフローの使用例については、「オフライン マップおよびブランチ バージョン対応データの操作」をご参照ください。
デフォルト バージョンとの同期
このワークフローは、他のユーザーが使用できるようにする前に、編集内容を確認する必要も、データに対して属性ルールを実行する必要もない場合に、最も役立ちます。 別々の編集者が加えた変更を確認して、これらの変更の競合を解決することはできないため、デフォルト バージョンに最後に適用された編集内容がデフォルト バージョンに保存される編集内容になります。
このワークフローでは、編集内容が利用可能になるまでのタイム ラグが短くなりますが、他のユーザーよりも先に編集内容を確認することはできません。
ヒント:
データにアクセスするユーザーが使用できるようにする前に、オフラインの編集内容を確認する必要がある場合は、レプリカ バージョンを使用する必要があります (「レプリカ バージョンとの同期」を参照)。
ArcGIS Pro 2.1 以降のデフォルトのブランチ バージョンから ArcGIS Enterprise 10.7 以降にデータを公開できます。
このシナリオのデータ要件
公開する前に、次のように構成します。
- マップのすべてのデータは同じエンタープライズ ジオデータベースから取得され、データはジオデータベースに登録されている必要があります。
- 公開されるすべてのフィーチャクラスは、ブランチ バージョンに登録されている必要があります。これには、各フィーチャクラスに Global ID フィールドが必要です。
- 次のフィールドをフィーチャ サービスに含める必要があります。公開されるフィーチャクラスでは、サブタイプを持つフィールド、リレーションシップ クラスまたはアタッチメントの主キーと外部キー フィールド、編集情報の記録フィールド (編集情報の記録がデータセットで有効になっている場合) の列は非表示にできません。
- データへのアクセスに使用するデータベース接続で指定されたログイン アカウントでは、ジオデータベース内のデータに対する権限を付与し、フィーチャ サービスに構成された編集操作を実行できるようにする必要があります。
フィーチャ サービスの構成
フィーチャ レイヤーを公開する場合、[Web レイヤーとして共有] ウィンドウの [構成] タブからアクセスされる [Web レイヤーのプロパティの構成] ダイアログ ボックスで、次のように設定する必要があります。
- 編集を有効にし、許可されている編集のレベルを選択します。
注意:
これらの設定は、フィーチャ サービスを所有しない管理者以外のユーザーにのみ適用されます。 ArcGIS Server 管理者とサービス所有者は、サービスにフルにアクセスでき、すべての操作が許可されています。
これにより、管理者やサービス所有者がオフラインで使用しているデータが常に編集可能になります。 オフラインの読み取り専用フィーチャ レイヤーが必要な場合、フィーチャ サービス所有者ではなく、管理者以外のユーザーによりオフラインで取得される必要があります。
- 同期を有効化します。
- 同期オプションを [なし] に設定します。
レプリカ バージョンとの同期
このワークフローは、他のユーザーが使用できるようにする前に、手動で編集内容を確認するか、データに対して属性ルールを実行するスクリプトを使用して編集内容を確認する必要がある場合に役立ちます。 移動中の編集者およびオフィス内の編集者が同じデータを編集する場合に生じる競合を確認することもできます。
モバイルの編集者がデータをオフラインで取得するごとに、名前付きバージョンがエンタープライズ ジオデータベースのデフォルト バージョンの現在の状態から作成されます。 オフラインおよびジオデータベース レプリケーションのワークフローでは、この名前付きバージョンは、レプリカ バージョンと呼ばれます。 モバイルの編集者がフィールドの編集内容を同期すると、編集内容はレプリカ バージョンに適用されます。 モバイルの作業者は編集内容をレプリカ バージョンと繰り返し同期できます。
注意:
レプリカ バージョン名の最大の長さは 30 文字です。 この制限に合わせるために、名前のフィーチャ サービス部分が切詰められます。
すべての名前付きバージョンと同様、デフォルト バージョンで、このシナリオで生成されたすべてのレプリカ バージョンから編集内容をリコンサイルし、ポストする必要があります。 詳細については、「オフライン ワークフローでのレプリカ バージョン」をご参照ください。
このワークフローは ArcGIS Pro 2.6 以降と ArcGIS Enterprise 10.8.1 以降で使用できます。
このシナリオのデータ要件
公開する前に、次のように構成します。
- マップのすべてのデータは同じエンタープライズ ジオデータベースから取得され、データはジオデータベースに登録されている必要があります。
- 公開されるすべてのフィーチャクラスは、ブランチ バージョンに登録されている必要があります。これには、各フィーチャクラスに Global ID フィールドが必要です。
- 公開されるすべてのフィーチャクラスでは、レプリカ トラッキングが有効化されている必要があります。
ArcGIS Pro 2.7 以降から公開し、ArcGIS Enterprise 10.9 以降に公開するときに同期を有効にすると、データはレプリカ トラッキングが自動的に有効になります。 その他の場合は、公開する前にデータに対してレプリカ トラッキングを有効にします。 [レプリカ トラッキングの有効化 (Enable Replica Tracking)] ジオプロセシング ツールを使用するか、ArcGIS Pro の [カタログ] ウィンドウでデータセットを右クリックし、[管理] をクリックし、[レプリカ トラッキング] をクリックします。
- 次のフィールドをフィーチャ サービスに含める必要があります。公開されるフィーチャクラスでは、サブタイプを持つフィールド、リレーションシップ クラスまたはアタッチメントの主キーと外部キー フィールド、編集情報の記録フィールド (編集情報の記録がデータセットで有効になっている場合) の列は非表示にできません。
- データへのアクセスに使用するデータベース接続で指定されたログイン アカウントでは、ジオデータベース内のデータに対する権限を付与し、フィーチャ サービスに構成された編集操作を実行できるようにする必要があります。
フィーチャ サービスの構成
フィーチャ レイヤーを公開する場合、[Web レイヤーとして共有] ウィンドウの [構成] タブからアクセスされる [Web レイヤーのプロパティの構成] ダイアログ ボックスで、次のように設定する必要があります。
- 編集を有効にし、許可されている編集のレベルを選択します。
注意:
これらの設定は、フィーチャ サービスを所有しない管理者以外のユーザーにのみ適用されます。 ArcGIS Server 管理者とサービス所有者は、サービスにフルにアクセスでき、すべての操作が許可されています。
これにより、管理者やサービス所有者がオフラインで使用しているデータが常に編集可能になります。 オフラインの読み取り専用フィーチャ レイヤーが必要な場合、フィーチャ サービス所有者ではなく、管理者以外のユーザーによりオフラインで取得される必要があります。
- 同期を有効化します。
- 同期オプションを [ダウンロードされたマップごとにバージョンを作成] に設定します。
シナリオ 3: トラディショナル バージョンを使用してマルチユーザー編集を管理する
データの品質保証バージョンを使用しているために、組織でトラディショナル バージョンを使用する必要がある場合は、次のオフライン ワークフローを使用できます。 ワークフローごとに、特定のデータ セクションと公開セクションがあります。 ワークフローごとにレプリカ バージョンが作成されます。
すべての名前付きバージョンと同様、それぞれの親バージョンで、このシナリオで生成されたすべてのレプリカ バージョンから編集内容をリコンサイルし、ポストする必要があります。 詳細については、「オフライン ワークフローでのレプリカ バージョン」をご参照ください。
これらのワークフローの使用例については、「オフライン マップとバージョン対応登録されたデータ」をご参照ください。
注意:
レプリカ バージョン名の最大の長さは 30 文字です。 この制限に合わせるために、名前のフィーチャ サービス部分が切詰められます。
データを保守するためのマップのダウンロード
このワークフローは、モバイル作業者がジオデータベースのデフォルト バージョンから最新データを取得するためにマップをダウンロードする必要がある場合に使用します。 モバイル作業者は、事務所に戻った後、現場で行った編集内容を同期し、マップを削除し、マップのレプリカ バージョンをジオデータベースのデフォルト バージョンでリコンサイルしてポストします。 このプロセスを 1 日に複数回繰り返すことができます。 各プロセスが完了すると、モバイル作業者はオフライン マップのレプリカ バージョンを削除します。
このシナリオのデータ要件
公開する前に、次のように構成します。
- マップのすべてのデータは同じエンタープライズ ジオデータベースから取得され、データはジオデータベースに登録されている必要があります。
- 公開されるすべてのフィーチャクラスは、完全なトラディショナル バージョニングに登録されている必要があります。編集をベース テーブルに移行する登録オプションはサポートされていません。
- 公開される各フィーチャクラスには、Global ID フィールドが含まれている必要があります。
オフラインで取得するデータセットに追加する Global ID は、カスタム フィールドを基準にすることができません。ArcGIS で作成された Global ID フィールドを明示的に使用する必要があります。 データに Global ID を追加するには、[Global ID の追加 (Add Global IDs)] ジオプロセシング ツールを使用するか、フィーチャクラス、フィーチャ データセット、およびカタログ ツリーのテーブル ショートカット メニューにある [Global ID の追加] コマンドを使用します。
- 公開されるデータセットがリレーションシップ クラスに参加しているか、アタッチメントを含んでいる場合、それらのリレーションシップは Global ID の主キーを使用する必要があります。
ObjectID 列を主キーにすると、オフラインで使用するデータをダウンロードした時点でエラーが返されます。 [リレーションシップ クラスの移行 (Migrate Relationship Class)] ジオプロセシング ツールを使用すると、Global ID フィールドが主キーになるように ObjectID ベースのリレーションシップ クラスと添付ファイルを変換できます。
- 次のフィールドをフィーチャ サービスに含める必要があります。公開されるフィーチャクラスでは、サブタイプを持つフィールド、リレーションシップ クラスまたはアタッチメントの主キーと外部キー フィールド、編集情報の記録フィールド (編集情報の記録がデータセットで有効になっている場合) の列は非表示にできません。
- データへのアクセスに使用するデータベース接続で指定されたログイン アカウントでは、ジオデータベース内のデータに対する権限を付与し、フィーチャ サービスに構成された編集操作を実行できるようにする必要があります。
フィーチャ サービスの構成
フィーチャ レイヤーを公開する場合、[Web レイヤーとして共有] ウィンドウの [構成] タブからアクセスされる [Web レイヤーのプロパティの構成] ダイアログ ボックスで、次のように設定する必要があります。
- 編集を有効にし、許可されている編集のレベルを選択します。
注意:
これらの設定は、フィーチャ サービスを所有しない管理者以外のユーザーにのみ適用されます。 ArcGIS Server 管理者とサービス所有者は、サービスにフルにアクセスでき、すべての操作が許可されています。
これにより、管理者やサービス所有者がオフラインで使用しているデータが常に編集可能になります。 オフラインの読み取り専用フィーチャ レイヤーが必要な場合、フィーチャ サービス所有者ではなく、管理者以外のユーザーによりオフラインで取得される必要があります。
- 同期を有効化します。
- 同期オプションを [ダウンロードされたマップごとにバージョンを作成] に設定します。
短期間のプロジェクトのためのマップのダウンロード
このワークフローは、モバイル作業者が小刻みに編集と同期を行う短期間のオフライン プロジェクトに使用します。
このワークフローでは、モバイル作業者はその日の朝とその日の終わりにレプリカ バージョンの編集内容をプロジェクト バージョンと同期します。 プロジェクト バージョンは、デフォルトのジオデータベース バージョンの子です。
モバイル作業者のレプリカ バージョンを、他のモバイル作業者が加えた編集内容を含めて最新の状態に保つために、リコンサイルおよびポスト プロセスを毎晩実行できます。 各モバイル作業者が次の日の朝に同期を行うと、他のモバイル作業者が行った編集内容が表示されます。
プロジェクトが完了した時点で、現場で行ったすべての編集内容は同期されており、プロジェクト バージョンに適用されています。 その後、プロジェクト バージョンは確認され、デフォルト ジオデータベース バージョンに対してリコンサイルおよびポストされます。 プロジェクトの完了時に、プロジェクト管理の担当者は、フィーチャ サービス、プロジェクト バージョン、およびモバイル作業者のバージョンを削除します。
このワークフローでは、モバイル作業者のデータの待ち時間は 1 週間以内です。
このシナリオのデータ要件
公開する前に、次のように構成します。
- マップのすべてのデータは同じエンタープライズ ジオデータベースから取得され、データはジオデータベースに登録されている必要があります。
- 公開されるすべてのフィーチャクラスは、完全なトラディショナル バージョニングに登録されている必要があります。編集をベース テーブルに移行する登録オプションはサポートされていません。
- 公開される各フィーチャクラスには、Global ID フィールドが含まれている必要があります。
オフラインで取得するデータセットに追加する Global ID は、カスタム フィールドを基準にすることができません。ArcGIS で作成された Global ID フィールドを明示的に使用する必要があります。 データに Global ID を追加するには、[Global ID の追加 (Add Global IDs)] ジオプロセシング ツールを使用するか、フィーチャクラス、フィーチャ データセット、およびカタログ ツリーのテーブル ショートカット メニューにある [Global ID の追加] コマンドを使用します。
- 公開されるデータセットがリレーションシップ クラスに参加しているか、アタッチメントを含んでいる場合、それらのリレーションシップは Global ID の主キーを使用する必要があります。
ObjectID 列を主キーにすると、オフラインで使用するデータをダウンロードした時点でエラーが返されます。 [リレーションシップ クラスの移行 (Migrate Relationship Class)] ジオプロセシング ツールを使用すると、Global ID フィールドが主キーになるように ObjectID ベースのリレーションシップ クラスと添付ファイルを変換できます。
- 次のフィールドをフィーチャ サービスに含める必要があります。公開されるフィーチャクラスでは、サブタイプを持つフィールド、リレーションシップ クラスまたはアタッチメントの主キーと外部キー フィールド、編集情報の記録フィールド (編集情報の記録がデータセットで有効になっている場合) の列は非表示にできません。
- データへのアクセスに使用するデータベース接続で指定されたログイン アカウントでは、ジオデータベース内のデータに対する権限を付与し、フィーチャ サービスに構成された編集操作を実行できるようにする必要があります。
フィーチャ サービスの構成
フィーチャ レイヤーを公開する場合、[Web レイヤーとして共有] ウィンドウの [構成] タブからアクセスされる [Web レイヤーのプロパティの構成] ダイアログ ボックスで、次のように設定する必要があります。
- 編集を有効にし、許可されている編集のレベルを選択します。
注意:
これらの設定は、フィーチャ サービスを所有しない管理者以外のユーザーにのみ適用されます。 ArcGIS Server 管理者とサービス所有者は、サービスにフルにアクセスでき、すべての操作が許可されています。
これにより、管理者やサービス所有者がオフラインで使用しているデータが常に編集可能になります。 オフラインの読み取り専用フィーチャ レイヤーが必要な場合、フィーチャ サービス所有者ではなく、管理者以外のユーザーによりオフラインで取得される必要があります。
- 同期を有効化します。
- 同期オプションを [ユーザーごとのバージョンの作成] に設定します。
進行中のプロジェクトのためのマップのダウンロード
このワークフローは、複数の週またはそれより長い期間にわたって実行されるオフライン プロジェクトに使用します。
このワークフローで、モバイル作業者はオフライン中に加えた編集内容を同期します。 モバイル作業者は、その日の朝および最後にネットワークに接続して、品質保証バージョンとの同期を行います。 このプロジェクトが進行中であるため、フィーチャ サービスは、デフォルト バージョンから直接公開されるのではなく、削除されることのない品質保証バージョンから公開されます。 つまり、追加の確認、リコンサイル プロセス、およびポスト プロセスが必要になります。
このシナリオのデータ要件
公開する前に、次のように構成します。
- マップのすべてのデータは同じエンタープライズ ジオデータベースから取得され、データはジオデータベースに登録されている必要があります。
- 公開されるすべてのフィーチャクラスは、完全なトラディショナル バージョニングに登録されている必要があります。編集をベース テーブルに移行する登録オプションはサポートされていません。
- 公開される各フィーチャクラスには、Global ID フィールドが含まれている必要があります。
オフラインで取得するデータセットに追加する Global ID は、カスタム フィールドを基準にすることができません。ArcGIS で作成された Global ID フィールドを明示的に使用する必要があります。 データに Global ID を追加するには、[Global ID の追加 (Add Global IDs)] ジオプロセシング ツールを使用するか、フィーチャクラス、フィーチャ データセット、およびカタログ ツリーのテーブル ショートカット メニューにある [Global ID の追加] コマンドを使用します。
- 公開されるデータセットがリレーションシップ クラスに参加しているか、アタッチメントを含んでいる場合、それらのリレーションシップは Global ID の主キーを使用する必要があります。
ObjectID 列を主キーにすると、オフラインで使用するデータをダウンロードした時点でエラーが返されます。 [リレーションシップ クラスの移行 (Migrate Relationship Class)] ジオプロセシング ツールを使用すると、Global ID フィールドが主キーになるように ObjectID ベースのリレーションシップ クラスと添付ファイルを変換できます。
- 次のフィールドをフィーチャ サービスに含める必要があります。公開されるフィーチャクラスでは、サブタイプを持つフィールド、リレーションシップ クラスまたはアタッチメントの主キーと外部キー フィールド、編集情報の記録フィールド (編集情報の記録がデータセットで有効になっている場合) の列は非表示にできません。
- データへのアクセスに使用するデータベース接続で指定されたログイン アカウントでは、ジオデータベース内のデータに対する権限を付与し、フィーチャ サービスに構成された編集操作を実行できるようにする必要があります。
フィーチャ サービスの構成
フィーチャ レイヤーを公開する場合、[Web レイヤーとして共有] ウィンドウの [構成] タブからアクセスされる [Web レイヤーのプロパティの構成] ダイアログ ボックスで、次のように設定する必要があります。
- 編集を有効にし、許可されている編集のレベルを選択します。
注意:
これらの設定は、フィーチャ サービスを所有しない管理者以外のユーザーにのみ適用されます。 ArcGIS Server 管理者とサービス所有者は、サービスにフルにアクセスでき、すべての操作が許可されています。
これにより、管理者やサービス所有者がオフラインで使用しているデータが常に編集可能になります。 オフラインの読み取り専用フィーチャ レイヤーが必要な場合、フィーチャ サービス所有者ではなく、管理者以外のユーザーによりオフラインで取得される必要があります。
- 同期を有効化します。
- 同期オプションを [ユーザーごとのバージョンの作成] に設定します。
他の設定とその設定がオフライン データに与える影響
オフラインにする必要のあるデータは、属性ルールや編集情報の記録など、他のジオデータベース機能を使用するように設定されていることもあります。 編集者がオフラインの編集内容をジオデータベースと同期する場合は、この機能がデータに与える影響を認識しておく必要があります。
属性ルール
ArcGIS Pro から公開するフィーチャ レイヤーが登録済みデータを参照している場合、そのレイヤーには属性ルールを含めることができます。 フィーチャ レイヤーを編集する際、ArcGIS はジオデータベースで定義した属性計算および制限ルールを適用します。 編集内容がこれらの規則のいずれかに違反すると、エディターはエラーを受信します。 ただし、オフライン時にデータを編集した場合、属性ルール情報はオフライン データには含まれません。 フィーチャ レイヤーとデータを同期すると、その時点でルールが適用されます。 違反の扱われ方は、データの登録方法によって異なります。
- バージョン対応登録されているデータを使用すると、属性ルール違反によって同期プロセスが実行されなくなります。 編集内容が属性ルールに違反すると、同期時にエラーが返されます。 データのオフライン バージョンで違反を修正してから、再同期する必要があります。
- アーカイブに対応した非バージョン対応のデータを使用する場合、同期は完了するものの、属性ルールに違反する編集内容は適用されません。 同期されなかった編集内容に関する情報は、ArcGIS Server ログに書き込まれます。 バージョン非対応のデータと属性ルールを使用する場合は、同期後に ArcGIS Server ログをチェックして、同期されていない編集がないかを確認します。 データのオフライン バージョンで違反を修正し、再度同期します。
同期に対応したフィーチャ サービスに属性ルール エラー レイヤーを含める場合は、オフライン マップでエラー レイヤーを編集しないでください。 編集しても、同期するときに編集内容がエラー レイヤーに適用されません。
編集情報の記録
編集情報の記録は、オフラインで編集したデータに使用できます。 オフラインで使用するデータをクライアントにダウンロードすると、編集情報の記録フィールド内の既存の値が残りのデータと一緒にクライアントにコピーされます。 オフラインでデータを操作する場合は、フィーチャが作成または編集された日時が、該当する日付フィールドに記録されます。 これらの値は、データがサービスと同期された時点で保存されます。
注意:
日付フィールドに UTC (協定世界時) 以外のタイム ゾーンで値が保存されている場合、サービスを公開するときにはそのタイム ゾーンを指定します。 指定しない場合、UTC が使用されます。 ArcGIS は、ユーザーが指定するタイム ゾーンをすべての編集情報の記録の日付フィールドに適用します。
オフライン データには、マップをオフライン用に作成したユーザーの名前が含まれています。 この名前は、以下のように編集情報の記録で使用されます。
- オフライン中に作成されたフィーチャの場合、作成者名の値はマップをオフライン用に取得したユーザー名に設定されます。
- 既存のフィーチャがオフライン中に編集された場合、編集者名の値はマップをオフライン用に取得したユーザー名に設定されます。 これらのフィーチャの作成者名の値は変更できません。
所有権ベースのアクセス制御
データに対して編集情報の記録を有効にした場合は、フィーチャ サービスで所有権ベースのアクセス制御を構成すると、フィーチャの作成者に基づいてフィーチャへのアクセスを制限できます。 オフラインのクライアントが加えた編集内容のうち、所有権ベースのアクセス制御ルールに違反しているものはサービスと同期されません。 この場合に編集の同期に使用されるログインは編集者と見なされます。
ただし、オフライン編集者が加えた編集内容を ArcGIS Server 管理者が同期する場合、所有権ベースのアクセス制御は、管理者ではなく、マップをオフラインにした名前付きユーザーを基準にします。
同期する権限
ArcGIS Server フィーチャ サービスで同期機能を使用するとき、同期プロセスはエンタープライズ ジオデータベース内に一時テーブルを作成して、アプリとデータベース間でデータを移動します。 つまり、同期を実行するために接続するデータベース ユーザーは、データベース内に一時テーブルを作成できる必要があります。 一部のデータベース管理システムでは、一時テーブルを作成するために、特定の権限やその他の構成が必要です。 データベース管理システムのドキュメントを参照して、データベース内で一時テーブルを使用するために必要な権限と領域の要件を確認し、必要な表領域に対する権限またはアクセス権があることをデータベース管理者に確認してください。
オフラインで加えた編集内容をフィーチャ サービスと同期する場合、同期するために接続するデータベース ユーザーには、エンタープライズ ジオデータベース内のソース データに対する挿入、更新、および削除権限が必要です。
同じフィーチャクラスを参照するマップ レイヤー
マップの作成者は、同じフィーチャクラスをマップに複数回追加することがよくあります。 これらのフィーチャクラスはマップ内で別々のレイヤーとして表示されますが、ジオデータベース内では同じフィーチャクラスになります。 同じフィーチャクラス ソースに基づく 2 つ以上のレイヤーを含むマップから ArcGIS Server フィーチャ サービスを公開する場合は、そのフィーチャ サービスをオフライン ワークフローで使用することができません。
たとえば、道路のフィーチャクラスをジオデータベースからマップに追加して、すべての道路を表示したり、同じ道路のフィーチャクラスを追加し、そのフィーチャクラスに対してフィルターを設定して、建設中の道路を表示したり、マップからフィーチャ サービスを公開したりする場合は、フィーチャ サービスをオフラインで編集し、オンライン時に変更を同期することはできません。