2017-07-19 39 views
0

Access 2010データベースを継承し、バックエンドをSQLサーバーに移行した後に動作を停止したフォームに問題があります。どのようにAccess 2010を修正できますか?指定されたレコードに移動できません。エラー

フォームはかなりシンプルです。フォームが開いて入力されたコメントのグリッドが表示されます。ユーザーが新しいコメントを挿入できるように、フォームに[新規追加]ボタンがあります。私は、「新規追加」ボタンをクリックすると、私は「あなたは指定されたレコードを行くことができません」エラーメッセージが表示されます

Private Sub cmd_new_comment_Click() 
On Error GoTo Err_cmd_new_comment_Click 

DoCmd.GoToRecord , , acNewRec 
DoCmd.GoToControl ("com_date") 
Me.ActiveControl = Now() 
DoCmd.GoToControl ("com_comments") 

Exit_cmd_new_comment_Click: 
Exit Sub 

Err_cmd_new_comment_Click: 
MsgBox Err.Description 
Resume Exit_cmd_new_comment_Click 

End Sub 

:そのボタンのコードは次のようになります。

私はコメントフォームを開いたときに以前のコメントをすべて見ることができるので、新しいコメントを追加したいときだけ問題になるので、データは問題ではないと思います。

+0

"開く"というサブフォームは、実際にはサブフォームではなくポップアップフォームであることを意味しますか?それは私がそれが呼び出されたフォームからの親IDフィールドによってメインレコードにフィルタリングされて開かれていると思われる場合。実際にサブフォームの場合、親子関係が奇妙な方法で壊れているか、サブフォームが追加を許可するように設定されていないかのように聞こえますか? – Minty

+0

申し訳ありませんが、ミンティーは謝罪する必要があります。私はフォームを忘れてしまいました。サブフォームではなく、ポップアップとして開くスタンドアロンのフォームです。フォームは追加を許可するように設定されています。 – Perry

+0

正直言って、最も単純なルートは、それをサブフォームにすることです。親IDはデフォルトのものが正しいものになり、追加は簡単になります。ボタンを押すと、サブフォームを非表示にすることができます。 – Minty

答えて

0

は、アクセステーブルタイプautoNumberのPKフィールドでしたか?そのような場合は、SQL Serverのテーブルの設計でID仕様を設定する必要があります。

+0

実際、Accessテーブルにはプライマリキーがまったくありませんでした。私はSQLテーブルにプライマリキーを追加しようとしましたが、それは助けになりませんでしたか? – Perry

+0

それで、あなたが始めたとき、SQL側にはPKはありませんでしたか?サブフォームのレコードソースから新しいコメントを追加できますか?サーバーに他のデータを追加できますか? – Beth

+0

私は働くためのフォームを持っており、これは私がしたものです。私はテーブルに主キーを追加しました。その後、フォームを再作成し、それをサブフォームとして使用しました。それは今働いている。すべての提案をありがとう。 – Perry

関連する問題