2015-09-30 35 views
-1

我想做一個日常收入支出賬戶的報告。我爲此報告使用了data environment,並將日期字段設置爲組字段。問題在於,每次運行程序時,數據有時會出現,並且有時只顯示空白。我不明白爲什麼會發生這種情況,原因是什麼? 我已經直接通過數據環境的工具綁定表 代碼是在這裏我每次運行數據報告都無法獲得結果。我怎樣才能解決這個問題 ?

私人小組CmdOk_Click()

昏暗RsRojmelIncome作爲新ADODB.Recordset
昏暗RsRojmelExp作爲新ADODB.Recordset
暗淡RsTempRojmel As New ADODB.Recordset
cn.Execute「Delete from TempRojmel」

RsRojmelIn come.Open 「SELECT * FROM Rojmel其中日期1#之間的」 &格式(DTPicker1.Value, 「MM/DD/YYYY」)& 「#和#」 & 格式(DTPicker2.Value, 「MM/DD/YYYY」) & 「#和IncExp = 'ytJtf'」,CN, adOpenKeyset,ADLOCKOPTIMISTIC

RsRojmelExp.Open 「SELECT * FROM Rojmel其中日期1 BETWEEN#」 &格式(DTPicker1.Value, 「MM/DD/YYYY」)& 「#AND#」 & 格式(DTPicker2.Value, 「MM/DD/YYYY」)& 「#和IncExp = 'SJtf'」,CN, adOpenKeyset,ADLOCKOPTIMISTIC

設置RsTempRojmel =新ADODB.Recordset

RsTempRojmel.Open 「SELECT * FROM TempRojmel」,CN,adOpenKeyset,ADLOCKOPTIMISTIC

如果RsRojmelIncome.RecordCount> = 1,則

對於i = 1到RsRojmelIncome (「日期1」)= RsRojmelIncome.Fields(「 )RsTempRojmel.Fields(「IncAmount」)= RsRojmelIncome.Fields(「Amount」)RsTempRojmel.Update
RsRojmelIncome.MoveNext
下一I
結束如果

如果RsRojmelExp.RecordCount> = 1然後

對於j = 1至RsRojmelExp.RecordCount RsTempRojmel.AddNew RsTempRojmel.Fields( 「ID」)= j的RsTempRojmel.Fields( 「ExpVigat」)= RsRojmelExp.Fields( 「Vigat」)RsTempRojmel.Fields( 「日期1」)= RsRojmelExp.Fields( 「日期1」)RsTempRojmel.Fields( 「ExpAmount」)= RsRojmelExp.Fields( 「金額」)RsTempRojmel.Update
RsRojmelExp.MoveNext
接着Ĵ
結束如果

如果DataEnvironment1.rsCommand1_Grouping.State = 0然後

DataEnvironment1.rsCommand1_Grouping。作爲NetProf1 AS'Date1'作爲Aggregate1,SUM(Command1.'ExpAmount')AS Aggregate2,CALC (Aggregate1-Aggregate2)打開「SHAPE {SELECT * FROM TempRojmel} AS Command1 COMPUTE Command1,SUM(Command1.'IncAmount') 」, DataEnvironment1.Connection1,adOpenKeyset,ADLOCKOPTIMISTIC

結束如果

RptRojmel.Sections( 「章第7」)。Controls.Item( 「文本1」)。數據字段= DataEnvironment1.rsCommand1_Grouping.Fields( 「NetProf1」) .Name

RptRojmel.Sections(「Section7」).Controls.Item(「Text2」).DataField = DataEnvironment1.rsCommand1_Grouping.Fields( 「Aggregate1」),命名

RptRojmel.Sections( 「Section4」)。Controls.Item( 「LblDate1」)。標題= DTPicker1.Value

RptRojmel.Sections( 「Section4」)。Controls.Item( 「LblDate2」)。標題= DTPicker2.Value

RptRojmel.Refresh
DataEnvironment1.rsCommand1_Grouping.Requery
RptRojmel.Refresh
結束子

+0

嗨,大家好!有人知道嗎? – jems

回答

0

代替

If DataEnvironment1.rsCommand1_Grouping.State = 0 Then 

    DataEnvironment1.rsCommand1_Grouping.Open " SHAPE {SELECT * FROM  TempRojmel} AS Command1 COMPUTE Command1, SUM(Command1.'IncAmount') AS Aggregate1, SUM(Command1.'ExpAmount') AS Aggregate2,CALC (Aggregate1-Aggregate2) as NetProf1 BY 'Date1' ", DataEnvironment1.Connection1, adOpenKeyset, adLockOptimistic 

End If 

嘗試使用

If DataEnvironment1.rsCommand1_Grouping.State = adStateOpen Then 

    DataEnvironment1.rsCommand1_Grouping.Close 

End If 

DataEnvironment1.rsCommand1_Grouping.Open " SHAPE {SELECT * FROM  TempRojmel} AS Command1 COMPUTE Command1, SUM(Command1.'IncAmount') AS Aggregate1, SUM(Command1.'ExpAmount') AS Aggregate2,CALC (Aggregate1-Aggregate2) as NetProf1 BY 'Date1' ", DataEnvironment1.Connection1, adOpenKeyset, adLockOptimistic 
+0

感謝您的回覆,但它的調試工作只與F5無關:(我的問題仍然存在! – jems

相關問題