ArcMap / ArcSDE Oracleを使用したフィーチャデータセットのフィーチャ編集のトラブルシューティング


8

フィーチャデータセット内にあるフィーチャクラスを編集するのに問題があります。

ArcMapのレイヤーとして単一のフィーチャクラスのみを追加し、編集ツールバーの[編集の開始]機能を使用して編集しています。

ArcMapは、「マップ内のすべてのデータソースがバージョン対応登録されているか、バージョン対応登録されていないデータソースを変更する権限がありません。」と報告します。

データベースとフィーチャデータセットはバージョン管理されています。これをArcCatalogで確認しました。また、バージョン管理されていない編集を行うこともできません。

編集ツールバーのオプションからバージョンを編集することを選択しました。

sdelayer 接続しているユーザー(スキーマの所有者でもある)がレイヤーに対してSELECT、INSERT、UPDATE、DELETEの権限を持っていることを報告します。

Oracle dba_tab_privsは、ビジネステーブルに対するSELECT、INSERT、UPDATE、DELETE権限を持っていると報告しています。

SDEユーザーを使用してジオデータベースに接続すると、スキーマの所有者にフィーチャデータセットに新しい権限を付与できません。ArcCatalogが自動化エラーを報告します。

スキーマの所有者としてジオデータベースに接続すると、フィーチャデータセットに新しい権限(「自分」)を付与できます。ただし、効果があったかどうかはわかりません。

これはArcGIS 9.3.1です。

何が残っていますか?確実な解決策はありますか?

更新:フィーチャクラスを(featuredatasetの外にある)新しいものにコピーしました。これを編集できます。フィーチャクラスをフィーチャデータセット内に配置すると、できません。フィーチャデータセットの権限に関する最終的な結論は何ですか?

ArcMapに「データソースを変更する権限がない」と思わせる原因を解決する必要があります

問題のフィーチャクラスには、多数(数百)のリレーションシップクラスがあります。これらが私のトラブルの原因だと思います。それらについて別の質問をします...


バージョン化されていない編集を使用して編集できますか?
Derek Swingley、2010

いいえ、それも機能しません。
mwalker

GDBの何かを編集できますか?
Derek Swingley、2010

1
ESRIツールを使用して特権を割り当てましたか?そして、それらは機能データセットレベルで割り当てられましたか?sdelayerもdba_tab_privsもジオデータベースに対応していないため(フィーチャデータセットについては不明)、フィーチャデータセットに権限を再割り当てする必要がある場合があります。スキーマの所有者として編集できない理由はまだわかりません...サポートに連絡するときかもしれません。
Derek Swingley、2010

回答:


5

この問題は、XMLジオデータベースのエクスポートをSDEにロードすることによって引き起こされたと思います。元のエクスポートには、データが読み込まれたときにデータベースに存在しないユーザーが所有していたジオデータが含まれていました。その結果、データは、(ジオデータベースで参照されるユーザーではなく)接続で指定されたユーザーが所有するようになりました。

元のSDEデータベースにはユーザーがいました:

  • SDE
  • USER1
  • USER2

新しいSDEデータベースにはユーザーがいます:

  • SDE
  • USER1

新しいSDEジオデータベースへの接続は「USER1」で行われました。

したがって、XMLダンプをロードすると、USER2のフィーチャクラスはUSER1のプロパティになります。ジオデータベースは、それらがUSER2に属していると述べていません。これは、フィーチャがフィーチャデータセットにある場合にのみ問題になります。


1
問題を整理することができましたか?私も同様の問題に直面しており、上記の解決策はどれもうまくいきませんでした。pomi

この問題は、データセットを削除して再インポートすることで解決されました。ただし、可能性のあるすべてのユーザーを作成して、フィーチャデータセットの所有権を復元しました。
mwalker

2

編集を開始すると、ワークスペースに異なる座標系があり、問題が発生する可能性があるという警告/メッセージが表示されますか?私はこれに遭遇し、あなたが得るそのエラーメッセージは完全に偽です。SDEは私が編集できないようにするものではなく、ArcMapです。

州平面座標系にあるいくつかのシェープファイルがマップにありました。SDEレイヤーはシェープファイルの後に追加されましたが、シェープファイルはワークスペースの座標系を定義しました。その後に追加されたものはすべてシェープファイル座標系に変換されました。

私たちはそれもSDEだと思っていましたが、SDEもOracleも権利の欠如の問題を示唆していませんでした。座標系が問題であり、ArcMapがエラーを調整する方法を認識していないことがわかったため、データベースの権限を編集して非難しただけです。

最後にMXDを再構築し、最後にシェープファイルを追加して、座標系エラーを回避しました。


すべてのデータがSDEに読み込まれましたが、これはこの状況に直面している人にとって本当に良い答えです。
mwalker

1

sdemonを使用して、編集権限を持つユーザーとして接続していることを再確認します(または、ArcMap経由で接続しているときにsdeスキーマのprocess_informationテーブルを確認します)。


sdemonとprocess_informationは、スキーマ所有者に接続していると報告しています。
mwalker

1

またCreate Table Privileges、バージョン管理された編集によってA、D、およびIテーブルがスキーマに追加されるため、があることを確認する必要があります。また、データベースユーザーのデフォルトスキーマは何ですか?

これはばかげているように聞こえるかもしれませんが、ArcCatalogのSDE接続は新しいバージョンに変更されていますか、それともデフォルトに設定されていますか?


編集を自動的にDEFAULTにポストするようにバージョンを構成しました。データベースユーザーはスキーマの所有者であり、その独自のスキーマがデフォルトです。データベースユーザーは、独自のスキーマとSDEスキーマでテーブルを作成できます。干渉しているのは単なるフィーチャデータセットです(どういうわけか...)
mwalker

これを試してください-ArcCatalogで、SDEユーザーとしてログインしているときにFDSを右クリックします-特権を選択し、GPツールで使用するユーザーを入力します-表示および編集権限を付与します-ツールを実行します-新しいバージョンを作成します-新しい子バージョンを指す新しい接続を作成します-新しい接続ファイルを使用してデータをArcMapに追加します-テスト編集
CDBrown

1

フィーチャデータセット内のフィーチャクラスでバージョン管理されていない編集を試行すると、「誤った編集バージョンタイプ」メッセージポップアップが表示されました。次の解決策は、元の問題に遭遇した場合に役立ちます(注意して使用してください)。

問題の原因となっているバージョン管理されていないフィーチャデータセットをバージョン対応登録し、すぐにバージョン対応登録を解除します。バージョン付きのアークカタログとして登録を解除すると、圧縮されていない編集があることが通知される場合があります-バージョン管理を解除するときに[編集をベースに圧縮]オプションを選択しました。以前は面倒だったフィーチャデータセットの下でバージョン管理されていないフィーチャクラスを編集できるようになりました。


0

バージョン付きのEDITについてはわかりませんが(テストしていません)、バージョンなしのEDITの場合は、これを実行します-エディターのツールバーのエディターのドロップダウンボタンに移動し、ドロップダウンを開き、最後のメニューエントリをクリックします、オプション。-ダイアログが開きます。このダイアログで、[バージョン管理]タブをクリックし、最初のチェックボックス[元に戻す/やり直しが可能なデータベースのバージョンを編集する]のチェックを外します。-編集の開始に戻ると、機能するはずです。


mwalkerは、彼の最初の投稿で、「バージョン管理されていない編集もできません」と述べました。
Derek Swingley、2010

0

これはどのバージョンの弧ですか?これは、同じデータセット内の2つのフィーチャクラスで異なる(可能ではないことがわかっている)座標系のoracleでの問題を思い出させます。10.2と9.2で起こったと思います。正しいcoord sysでデータを再ロードする必要があったことを除いて、修正を覚えていません。


Arc 9.3.1 SP1です。DBをクエリして、空間参照が異なるものがあるかどうかを確認します。
mwalker 2010
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.