伝票入力のプログラムをつくているのですが、明細を一行入力して、次の行に行くと、前の行が2つに分かれたり、同じものがつくられたりする現象がまれに起こるのですが、明細のQuery・UpdateSQLのSQLの項目のずれを確認をしましたが、おかしなところは見当たりません。
1行のレコードを入力して2行に分けれてQueryに書き込まれてしまう現象が起きたときは、どこが悪いのでしょうか、どこを確認すればよいか教えてください。
よろしくお願いします。
実際に同じレコードが2つできるのでしょうか?D3の頃に、TQuery+TDBGridで同様な事が有ったように思います。それ以降では直っているようです。Updateをしてみましょう。
> どこが悪いのでしょうか
DBと接続方法(BDE or DBExpress or etc)ぐらい書きましょう。
DBがオラクルであれば、こういう不具合もありましたが
http://www2.big.or.jp/~osamu/Delphi/delphi-browse.cgi?index=049120
もしくは、見た目が2行なだけで開き直すと正しかったり・・・?
すいません。追記します
・DelphiはVer6.Pro使用しています。
・DBはSQLServer2000です。
・接続方法はADOです。
・明細部分はDBCtrlGridを使用しています。
・実際にDBにはエラーが発生して登録でき無い状況で、画面上で1行目に(A、 B、C、D)入力して、2行目に移動した時に1行目に(A、Null、B、Null)で2行目 に(Null、B、Null、C)と表示されている状態です。(分かれ方に決まりはあ りません色々な形で分かれてしまいます)
よろしくお願いします。
DBCtrlGridは、気ままなじゃじゃ馬的性格を持っているので
他のコンポーネントにした方が良いです。
..例えば、DBGrid etc ...
ツイート | ![]() |