2008-09-12 17 views
2

MS SQL Server 2000のテーブルにリンクされているフォーム上のレコードを追加しようとしたとき、私はMS AccessのADPで、次のエラーを取得しています:MS AccessのADPオートナンバー

実行時エラー「31004」に:

が保存される前に、(オートナンバー)フィールド の値を取得することはできません。

このアクションを実行する前に、 の前に、(オートナンバー)フィールド を含むレコードを保存してください。 注記:を取得したが、実際にエラーに間違って綴られています。

これは何を意味するのですか?

私はウェブ検索を行っており、エキスパートだけがアクセスできる特定のサイトで回答を見つけることができました。

答えて

2

まず、専門家の意見交換をする場合は、FireFoxで行います。ページの下部にブロックされていない回答が表示されます。

第2に、マスターフォームのオートナンバー/キーフィールドを使用しているフォームにサブフォームがありますか?メインフォームが保存される前に(すなわち、独自のキーを持つ)は、サブフォーム上のデータを保存する必要が行います。お互いが最初に救われることを要求するAとBのデッドロックになる可能性があります。それ以外

、あなたは何とかそれを保存しているwhenyouそのオートナンバー型フィールドにアクセスする必要があります。私が示唆できる最良の方法は、行ごとにコードをステップ実行することです。

0

あなたは、レコードを保存する前に、変数または何か他のものにアイデンティティフィールドの値を代入しようとしていますか?

何らかの理由で、アプリはそのIDフィールドを生成するレコードが保存される前にIDフィールドの値を読み取ろうとしています。つまり、行が保存されるまで、自動番号フィールドの値は存在しません。

詳細を確認するには、このエラーにつながる手順をもっと詳しく知る必要があります。

0

あなたは、あなたのデータと何を正確にやっているのを管理しているどのように私たちを表示するためのコードのいくつかの行を追加している必要があります。しかし、私はレコードセットの更新に関連する問題を疑っています。あなたはautonumber値が作成されるときを識別できますか?フォーム上のコントロールで利用できますか?この値を表示するコントロールを追加して、新しいレコードを追加するときにどのように生成されるかを確認できますか?基になるレコードセットは正しく更新されていますか?あなたには、いくつかのフォームイベントにme.recordset.updateのようなものを追加することができます:私はOnCurrentのいずれかをしようと...