另外,我如果想从AAA.txt这样一个文件中读入数据放在表中,VB或T-sql提供这样的方法么?AAA.txt文件内容是这样的:
010128459000 0130430411029190561011029559 30150 135254 30150
010128459000 2250250231079150031031079559 3000 7200 3000
010129146900 0211611651029100231051029209 10000 48650 10000
010129146900 0230430911019190141011019209 5000 25672 5000
010129146900 0911611621109100021021109209 10000 95700 10000
010129146900 2211111132019190171032019209 15 2209 15
010129146900 2211111132019191701032019209 4000 16880 4000
010128459000 0130430411029190561011029559 30150 135254 30150
010128459000 2250250231079150031031079559 3000 7200 3000
010129146900 0211611651029100231051029209 10000 48650 10000
010129146900 0230430911019190141011019209 5000 25672 5000
010129146900 0911611621109100021021109209 10000 95700 10000
010129146900 2211111132019190171032019209 15 2209 15
010129146900 2211111132019191701032019209 4000 16880 4000
所属类别: Visual Basic-打印与报表编号:QA001874
建立日期: 1999年10月19日 最后修改日期:2001年3月5日 孙伟:
vb6.0
Pwin98
在使用DataReport时,我通过DataEnvironment连接了一个临时数据库,该数据库中的数据根据查询条件的不同而变化,但是每次执行程序,当我改变查询条件时,临时数据库内容变化了,而报表的内容不变,要退出程序才行。经反复测试,发现每次报表的内容是程序启动前的临时数据库内容,请问专家这个问题应该如何解决?谢谢。 回答: Requery方法!
也可以直接使用ADODB.Recordset!不使用DataEnvironment!例:
...
public adoRecordsetX as ADODB.Recordset
...
Private Sub DataReport_Initialize()
adoRecordsetX.Requery
Set DataReport1.DataSource = adoRecordsetX '设置 DataReport 的数据源
...
'绑定某字段
Me.Sections.Item("Section1").Controls.Item("text1").DataField=adoRecordsetX.Fields.Item(0).Name
...
End Sub
wuxiaoqiang的意见:
在你们有关上述问题的回答,我想再增加一种更简单的解决办法。
1.在datareport 报表中设置datamember和datasource为空。
2.将以前绑定的RptTextBox的datamember设为空,保留原来的datafield.
3.在打印操作中增加以下代码:
Dim db As Connection
Set db = New Connection
db.CursorLocation = adUseClient
db.Open "PROVIDER=Microsoft.Jet.OLEDB.3.51;Data Source=" + App.path + "\finance.mdb" + ";"
Set tb = New Recordset
tb.Open "select * from dailyfeeprint", db, adOpenStatic, adLockOptimistic
With tb
.AddNew
![工号] = Combo1(0).Text
![姓名] = txtFields(0).Text
![交费日期] = txtFields(1).Text
.........
.Update
End With
Set data1.Recordset = tb
Set datareport1.DataSource = data1
datareport1.Show
datareport1.PrintReport
其实这个问题也搞得我很头疼,希望能让其他人不再头疼。
herycom的意见:
直接Requery 一下就可以了。
Private Sub DataReport_Initialize()
DataEnvironment1.rsCommand1.Requery
End Sub
风魔的意见:
这几天我也是为这个问题而烦恼!直到今天早上,我无意中想到把数据环境也跟报表一样Unload 一下,没想到真的可行!
DataReport3.Caption = Ipt & "用户费用"
DataReport3.Title = Ipt & "用户费用"
DataReport3.Show vbModal, Me
Unload DataReport3
Unload DataEnvironment1
spencer yang的意见:
具体范例,请到纪文和网站 VB入门网
http://www.vbguide.com.tw/webback.asp
看看「个个击破」 单元中的
---------------------------------------
277 如何更新 DataReport 里的资料?
---------------------------------------
数字女孩的意见:
以上方法还需补充一下
1 对DataEnvironment的datamember的属性设置为空。
2 对datareport报表中的rpttext控件的datasouce和recordset重新进行绑定(需要在报表初始化事件中用代码实现)
相关问题:
QA002102 “当数据集变化时,更新VB 6.0的DataGrid控件”
QA004178 “当使用DataEnvironment时,显示更新的列表框” 此问题由于溪玥回答。