通过邮件上报数据
如果你既没有SQL Server服务器,也没有FTP,也可以考虑通过邮件上报数据,只是没有那么自动。
假定各分公司每天上报当天订单。
1、将要上报的数据生成为一个Access文件,并通过邮件发送给总部:
'导出当天订单
Dim ex
As
New 
Exporter
ex.SourceTableName 
= "订单"
ex.FilePath 
 
= 
"c:\temp\gd.mdb"
ex.Filter 
 
= "日期 = #"
& 
Date.Today
& 
"#"
If FileSys.FileExists(ex.FilePath)
Then 
'如果目标文件已经存在
   
FileSys.DeleteFile(ex.FilePath) 
'则删除之
End 
If
ex.Export()
'通过邮件发送
Dim m
As
New 
MailSender
m.Host 
 
= 
"smtp.21cn.net"
m.Account 
= "xiaoliu"
m.Password 
 
= "xiaoliu1234567"
m.From = "feng@32cn.net"
m.To = 
"zong@21cn.ent"
m.Title 
 
= 
"订单上报"
m.Content 
 
= 
"订单上报"
m.AddAttachments("c:\temp\gd.mdb") 
'将上报文件作为附件发送
m.SendAsync()
2、目前Foxtable并未提供接收邮件的功能,用户只能手工将各分公司通过邮件发来的附件保存在指定目录,然后通过下面的代码批量合并:
For Each 
File 
As String 
In Filesys.GetFiles("c:\temp")
    If File.EndsWith(".mdb")
'如果后缀名是mdb,说明此文件是access格式
        Dim mg 
As New 
Merger
        mg.SourcePath 
= file
        mg.SourceTableName 
= "订单"
        mg.DataTableName 
= "订单"
        mg.Merge()
        Filesys.DeleteFile(File)
'合并后删除文件
    End If
Next
有了上面的代码,即使有上百个分公司上报数据,也只需单击一个按钮即可完成合并。
    
本页地址:http://www.foxtable.com/webhelp/topics/2284.htm