請教各位
我從VB裡,新增一個Crystal Report的報表
然後指向Access資料庫
Dim rptTake As New rptTake
Option Explicit
Private Sub Form_Load()
On Error Resume Next
rptTake.DiscardSavedData
rptTake.Database.Tables.Item(1).SetLogOnInfo App.Path & "\Main.mdb"
Screen.MousePointer = vbHourglass
crTake.ReportSource = rptTake
crTake.ViewReport
Screen.MousePointer = vbDefault
End Sub
我的問題是
我有加上了rptTake.DiscardSavedData,我還是無法看到新的資料,仍然是舊的資料
我指向的資料庫,資料已有更新了
我也試過rptTake.DiscardSavedData = True,
但是它出現錯誤說~~不可指向常數
請問,我哪裡需要做修改呢,謝謝各位
我從VB裡,新增一個Crystal Report的報表
然後指向Access資料庫
Dim rptTake As New rptTake
Option Explicit
Private Sub Form_Load()
On Error Resume Next
rptTake.DiscardSavedData
rptTake.Database.Tables.Item(1).SetLogOnInfo App.Path & "\Main.mdb"
Screen.MousePointer = vbHourglass
crTake.ReportSource = rptTake
crTake.ViewReport
Screen.MousePointer = vbDefault
End Sub
我的問題是
我有加上了rptTake.DiscardSavedData,我還是無法看到新的資料,仍然是舊的資料
我指向的資料庫,資料已有更新了
我也試過rptTake.DiscardSavedData = True,
但是它出現錯誤說~~不可指向常數
請問,我哪裡需要做修改呢,謝謝各位
文章標籤
全站熱搜

試出來了 和我之前網頁連WinSock情況一樣 我在報表那裡放了Refresh鈕,按了幾下,它才會更新,所以感覺應該是資料庫那時還沒更新,就去開報表,所以才沒開到更新後的資料,要按幾次Refresh,才會有變化 所以我在 Private Sub Form_Load() 加上延遲 這樣就可以看到新的資料了 但是問題來了 我那裡的資料才1筆和2筆的做變化而已,如果數量多的話,那不就很慘 我是將我要顯示的資料Select .....之後,再把它Insert Into....到新的Table 然後再開報表,我的報表是連到新的Table Private Sub cmdTake_Click() '在表單中,按下cmdTake,選擇符合時間條件後,再塞到新的Table sql = "DELETE FROM 領出報表" conn.Execute sql sql = "INSERT INTO 領出報表 SELECT * FROM 領出 WHERE 領出日期 BETWEEN #" & DateStr1 & "# AND #" & DateStr2 & "#" conn.Execute sql frmrptTake.Show '開報表的表單 End Sub 因為我還不會直接在報表那裡做選擇符合條件直接顯示在報表,請問如果改用這個方法,那麼是否就不會有上面這個問題了呢 那麼如果這麼處理的話,我該怎麼弄呢, 謝謝各位的幫忙