DOBON.NET DOBON.NETプログラミング掲示板過去ログ

データベース更新後のデータが表示されない

環境/言語:[WinXP Pro、VB.NET2003 、ACCESS2002、.NET Framework1.1]
分類:[.NET]

初めて投稿させていただきます。

現在、VB.NET2003 + ACCESS2002でWindowsアプリケーションを作成しています。
その中でテーブルをDataGridで表示し内容を変更後、ボタンを押すとUPDATE後すぐに別のFormにあるCrystalReportViewerで表示するようにしたいのですが、UPDATE前のデータしか表示されません。
いろいろ試しているとどうもUPDATE完了前にデータを取得しているため更新前のデータが表示されているようです。
ファイルサーバーにACCESSファイルを置いているためにタイムラグが生じるのでは?と考え、そこで更新完了を取得できるプロパティなどがないかいろいろ調べたのですが見つかりませんでした。なにか良い方法はありませんでしょうか?

以下ソースの抜粋です
Form1
Private Sub btnPreView_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnPreView.Click
DataAdapter1.Update(Dataset1.Table1)

Dim frm As New Form2
frm.ShowDialog()



Form2
Dim oRpt As New CrystalReport1

Private Sub Form2_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load

DataAdapter2.Fill(Dataset2.Table1)
dim oRpt = CrystalReport1
oRpt.SetDataSource(Dataset2)
CrystalReportViewer1.ReportSource = oRpt
こちらのやり取りなど参考になるかも知れません‥‥関係ないかもですが(^_^;)

VB上でクリスタルレポートのリフレッシュをするには
http://homepage1.nifty.com/MADIA/vb/vb_bbs2/200409_04090076.html


#もし非接続型でトランザクションを使用する方法が判らなければ以下のリスト 7 を参照してみてください。

DB 設計者のための明解 ADO.NET 第 1 回
http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/jpdnthisweek/htm/maikai/meikaiADONET1.asp
■No8483に返信(深山さんの記事)
深山さん、返信ありがとうございました。

この記事を見る前に、とりあえずは更新ボタンを追加して、データを変更した場合は
これを印刷前に押させることで自己解決しました。
バージョンアップも行う予定ですので、教えていただいたところを参考に改変したいと思います。
ありがとうございました。
解決済み!
■No8483に返信(深山さんの記事)

すでに解決済みにしましたが、深山さんの教えていただいたサイトを参考に
トランザクション処理をしたところ、うまくデータが表示されるようになりました。
ありがとうございました。
すみません、追加で記事を記載すると「解決済み」が消えるみたいですね。
改めてチェックします。
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板