掲示板一覧   -   トピック一覧
   Enterprise Architect 全般
     EAPファイルへの転送後、チェックアウトの取消しでエラー発生


フラット表示 前のトピック | 次のトピック
投稿者 トピック
sugimoto
投稿日時: 2011-8-12 14:20
EA Administrator
投稿: 1895

EAPファイルへの転送後、チェックアウトの取消しでエラー発生

サポートに寄せられたご指摘の要約です。

○ご指摘

現在、Oracleでモデルを管理していますが、EAPファイルにモデルを転送しました。

Oracleでは各パッケージはバージョン管理されており、
EAPファイルでもバージョン管理の設定はそのまま転送されています。

そこで、転送後にEAPファイルでバージョン管理からチェックアウトし、
チェックアウトの取り消しを行ったところ、以下のエラーが発生してしまいました。

---
DAO.Recordset [3022]

インデックス、主キー、またはリレーションシップで値が重複しているので、
テーブルを変更できませんでした。重複する値のあるフィールドの値を変更するか、
インデックスを削除してください。または重複する値を使用できるように再定義してください。
---

なお、この現象は、転送前のOracle上では発生していません。

○回答

EAPファイルに転送後、チェックアウトの取り消しなどでXMIファイルを読み込んだ際に、
すでに存在する内部のIDと同じIDが作成されてしまい、
DAO.Recordset [3022]エラーが発生してることが分かりました。

IDはオートナンバー型になっており、このオートナンバーの現在の値が
不適切になっていることが原因、と考えております。

また、本問題はEAPがJet4.0形式の場合にのみ発生していることも分かりました。
(Jet3.5では発生していません。)

このため、Jetデータベースエンジン自体の問題である可能性も考えております。

現時点では、Jetデータベースエンジン自体の問題なのか、EAの何か設定等の
問題なのかを明確にできておりませんが、引き続き調査してまいります。


この問題を回避には、EAPファイルへの転送を行った後にEAのメインメニューから
「ツール」→「内部IDの振り直し」を実施していただくようお願いいたします。
フラット表示 前のトピック | 次のトピック

題名 投稿者 日時
 » EAPファイルへの転送後、チェックアウトの取消しでエラー発生 sugimoto 2011-8-12 14:20