以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  感觉这段接收数据的代码有点问题,请各位版主看看!!谢谢  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=3654)

--  作者:杨浩
--  发布时间:2009/7/22 17:17:00
--  感觉这段接收数据的代码有点问题,请各位版主看看!!谢谢
 

Dim dlg As New OpenFileDialog \'定一个新的OpenFileDialog

dlg.Filter= "上报文件|*.mdb" \'设置筛选器

If dlg.ShowDialog = DialogResult.Ok Then \'如果用户单击了确定按钮

MessageBox.Show("你选择的是:" & dlg.FileName,"提示") \'提示用户选择的文件

Dim ip as New Importer

ip.SourcePath = dlg.filename  \'指定数据文件

ip.SourceTableName = "调资基础数据" \'指定要导入的表

ip.NewTableName ="数据接收临时判断" \'导入后的表名

ip.Format = "Access" \'指定导入文件格式

ip. PassWord = “TZX_GWY_JT_8888”  \'用此属性指定导入文件的密码

ip.Fields =单位名称   \' 指定要导入的字段()

ip.Import()

Dim dws As List(Of String)
dws = DataTables("调资基础数据").GetUniqueValues("", "单位名称") \'列出所有单位
For each
dw As String In dws \'逐个单位判断
    Dim
dr As DataRow = DataTables("数据接收临时判断").find("[单位名称] = \'" & dw & "\'")
    If
dr IsNot Nothing Then
      If
MessageBox.Show("已存在同单位记录,是否删除?","提示",MessageBoxButtons.YesNo,MessageBoxIcon.Question) = DialogResult.Yes then

Forms("删除指定单位数据").Open()

  

Else

im mg As New Merger

mg.SourcePath = dlg.filename

mg.SourceTableName = "调资基础数据"

mg.DataTableName = "调资基础数据"

mg.Merge()

Syscmd.Table.Delete("数据接收临时判断")

MessageBox.Show("接收数据完成!!!","提示",MessageBoxButtons.OK,MessageBoxIcon.Question)

End If

End If

End If

Next


--  作者:杨浩
--  发布时间:2009/7/22 17:27:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:人事工资管理系统.table


--  作者:杨浩
--  发布时间:2009/7/22 17:36:00
--  
版主,帮帮忙看看
--  作者:杨浩
--  发布时间:2009/7/22 17:54:00
--  

 

Dim dlg As New OpenFileDialog \'定一个新的OpenFileDialog

dlg.Filter= "上报文件|*.mdb" \'设置筛选器

If dlg.ShowDialog = DialogResult.Ok Then \'如果用户单击了确定按钮

MessageBox.Show("你选择的是:" & dlg.FileName,"提示") \'提示用户选择的文件

Dim ip as New Importer

ip.SourcePath = dlg.filename  \'指定数据文件

ip.SourceTableName = "调资基础数据" \'指定要导入的表

ip.NewTableName ="数据接收临时判断" \'导入后的表名

ip.Format = "Access" \'指定导入文件格式

ip. PassWord = “TZX_GWY_JT_8888”  \'用此属性指定导入文件的密码

ip.Fields = “单位名称”   \' 指定要导入的字段(列)

ip.Import()

Dim dws As List(Of String)
dws = DataTables("调资基础数据").GetUniqueValues("", "单位名称") \'列出所有单位
For each dw As String In dws \'逐个单位判断
    Dim dr As DataRow = DataTables("数据接收临时判断").find("[单位名称] = \'" & dw & "\'")
    If dr IsNot Nothing Then
      If MessageBox.Show("已存在同单位记录,是否删除?","提示",MessageBoxButtons.YesNo,MessageBoxIcon.Question) = DialogResult.Yes then

Forms("删除指定单位数据").Open()

Else

Dim mg As New Merger

mg.SourcePath = dlg.filename

mg.SourceTableName = "调资基础数据"

mg.Format = "Access"

mg. PassWord = “TZX_GWY_JT_8888”

mg.DataTableName = "调资基础数据"

mg.Merge()

MessageBox.Show("接收数据完成!!!","提示",MessageBoxButtons.OK,MessageBoxIcon.Question)

End If

End If

Next

End If

End If


--  作者:杨浩
--  发布时间:2009/7/22 17:54:00
--  
还是有问题,版主帮帮忙!!!谢谢

--  作者:杨浩
--  发布时间:2009/7/23 8:00:00
--  
思路是先把上报数据的单位名称导入到“数据接收临时判断”表,然后判断“调资基础数据”内是否有相同的单位名称,有提示弹到“删除指定单位数据”去删除,如果无就直接讲数据合并到“调资基础数据”表内,提示完成!!!
--  作者:杨浩
--  发布时间:2009/7/23 8:00:00
--  
还是有问题,版主帮帮忙!!!谢谢

--  作者:杨浩
--  发布时间:2009/7/23 8:16:00
--  
 

Dim dlg As New OpenFileDialog \'定一个新的OpenFileDialog

dlg.Filter= "上报文件|*.mdb" \'设置筛选器

If dlg.ShowDialog = DialogResult.Ok Then \'如果用户单击了确定按钮

Dim ip as New Merger

ip.SourcePath = dlg.filename  \'指定数据文件

ip.SourceTableName = "调资基础数据" \'指定要导入的表

ip.Format = "Access" \'指定导入文件格式

ip. PassWord = “TZX_GWY_JT_8888”  \'用此属性指定导入文件的密码

ip.Fields = “单位名称”   \' 指定要导入的字段(列)

ip. DataTableName ="数据接收临时判断" \'导入后的表名

ip. Merge()

Dim dws As List(Of String)
dws = DataTables("调资基础数据").GetUniqueValues("", "单位名称")  \'列出所有单位
For each dw As String In dws \'逐个单位判断
    Dim dr As DataRow = DataTables("数据接收临时判断").find("[单位名称] = \'" & dw & "\'")
    If dr IsNot Nothing Then
      If MessageBox.Show("已存在同单位记录,是否删除?","提示",MessageBoxButtons.YesNo,MessageBoxIcon.Question) = DialogResult.Yes then

Forms("删除指定单位数据").Open()

Else

Dim mg As New Merger

mg.SourcePath = dlg.filename

mg.SourceTableName = "调资基础数据"

mg.Format = "Access"

mg. PassWord = “TZX_GWY_JT_8888”

mg.DataTableName = "调资基础数据"

mg.Merge()

MessageBox.Show("接收数据完成!!!","提示",MessageBoxButtons.OK,MessageBoxIcon.Question)

End If

End If

Next

End If

End If


--  作者:杨浩
--  发布时间:2009/7/23 8:16:00
--  
还是有问题,版主帮帮忙!!!谢谢

--  作者:杨浩
--  发布时间:2009/7/23 8:31:00
--  
 

Dim dlg As New OpenFileDialog \'定一个新的OpenFileDialog

dlg.Filter= "上报文件|*.mdb" \'设置筛选器

If dlg.ShowDialog = DialogResult.Ok Then \'如果用户单击了确定按钮

Dim ip as New Merger

ip.SourcePath = dlg.filename  \'指定数据文件

ip.SourceTableName = "调资基础数据" \'指定要导入的表

ip.Format = "Access" \'指定导入文件格式

ip. PassWord = “TZX_GWY_JT_8888”  \'用此属性指定导入文件的密码

ip.Fields = “单位名称”   \' 指定要导入的字段(列)

ip. DataTableName ="数据接收临时判断" \'导入后的表名

ip. Merge()

Dim dws As New List(Of String)  \'定义一个字符型数组集合
dws = DataTables("调资基础数据").GetUniqueValues("", "单位名称")  \'列出所有单位
For each dw As String In dws \'逐个单位判断
    Dim dr As DataRow = DataTables("数据接收临时判断").find("[单位名称] = \'" & dw & "\'")
    If dr IsNot Nothing Then
      If MessageBox.Show("已存在同单位记录,是否删除?","提示",MessageBoxButtons.YesNo,MessageBoxIcon.Question) = DialogResult.Yes then

Forms("删除指定单位数据").Open()

Else

Dim mg As New Merger

mg.SourcePath = dlg.filename

mg.SourceTableName = "调资基础数据"

mg.Format = "Access"

mg. PassWord = “TZX_GWY_JT_8888”

mg.DataTableName = "调资基础数据"

mg.Merge()

MessageBox.Show("接收数据完成!!!","提示",MessageBoxButtons.OK,MessageBoxIcon.Question)

End If

End If

Next

End If

End If