0

提案のフォローアップを示すフォームで問題が発生しました。

次のフォローアップと前のフォローアップに移動できるフォームを作成しました。問題は、ナビゲーション ボタンを使用すると、現在の提案にフォローアップが追加されることです。

作成されたフォローアップは常に同じもの (id は 83) であり、実際には別の提案のために作成されたものであることに気付きました。したがって、ナビゲートするたびに、この特定のフォローアップが更新さproposalIdれ、現在の が変更されます。

ナビゲーション ボタンの 1 つのコードは次のとおりです。

Private Sub btnShowPrevious_Click()
    Save
    FindRecord "ID", txtParentID
End Sub

誤った ID は常に同じ (83) であるため、現在のフォーム イベントにアラートを追加したところ、適切なフォローアップを表示する前に、常に 83 ミリ秒になることがわかりました。

この奇妙な動作を取得する手順は次のとおりです

  1. 新しいフォローアップを作成して保存
  2. 彼の子を作成して保存する
  3. フォームを閉じる
  4. 親または子のフォローアップを開く
  5. ナビゲーションボタンを使用する

次に、良いものを表示する前に 83 に移動します。

ナビゲーションボタンをもう一度押しても、起こりません。

保存後にフォームを閉じずにボタンを使用すると、機能します。

彼が私がリクエストしたフォローアップを探しているときに、デフォルトのフォローアップ ID があるかのようです。

それが明らかかどうかはわかりません。

fetch defaultsfilter on loadallow filtersプロパティを「いいえ」に設定しました。

また、デザイン モードからビュー モードでフォームを開くと、既定のレコードは 83findrecordです。

編集

findrecord最後に、常に最初のレコードです良いレコードを見つけるために before を実行すると、最初のレコードが表示されるのはなぜですか。

なぜこれが起こっているのか誰にも分かりますか

ありがとうございました。

4

1 に答える 1

0

わかった...

別のプロジェクトでテストしましたが、書いているFindrecordときにいくつかのパラメーターが欠落していることに気付きました。

確認したところ、それは私が作成したメソッドでした (なぜこのために独自のメソッドを作成したのか覚えていません)。

Me.Filter = ""フォームを最初のレコードにリロードする .. がありました。

ありがとうございました

于 2012-10-18T13:56:55.290 に答える