Dim dlg As New OpenFileDialog '定义一个新的OpenFileDialog
dlg.Filter= "Excel文件|*.xlsx|Word文件|*.doc|Access文件|*.mdb" '设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then '如果用户单击了确定按钮
Dim nms() As String = {"状态","记录时间","店铺名称","产品类别","单号","产品SKU","责任方","状况描述 原因","客户姓名","联系方式","寄送地址","处理方式","寄送SKU","配件SKU","数量","备注","发货仓库","系统单号","追踪号","物流公司","发货日期","收货日期","下单日期","回访","记录日期","结束日期","赠送SKU","处理时间"}
Dim nms2() As String = {"状态","记录时间","店铺名称","产品类别","单号z","产品SKU","责任方","状况描述 原因","客户姓名","联系方式","寄送地址","处理方式","寄送SKU","配件SKU","数量","备注","发货仓库","系统单号","追踪号","物流公司","发货日期","收货日期","下单日期","回访","记录日期","结束日期","赠送SKU","处理时间"}
Dim dict As new Dictionary(of String,String)
For m As Integer = 0 To nms.Length - 1
dict.add(nms2(m),nms(m))
Next
Dim Book As New XLS.Book(dlg.FileName)
Dim Sheet As XLS.Sheet = Book.Sheets(0)
Tables("table_3").StopRedraw()
'注意下面的循环变量从1开始,而不是从0开始,因为Excel表的第一行是标题
For n As Integer = 1 To Sheet.Rows.Count -1
Dim bh As String = sheet(n,3).Text
If DataTables("table_3").Find("单号 = '"& bh &"'")Is Nothing Then
If Sheet(n,0).text > "" Then
Dim r As Row = Tables("table_3").AddNew()
For m1 As Integer = 0 To Sheet.Cols.Count - 1
If dict.ContainsKey(Sheet(0,m1).Value)
r(dict(Sheet(0,m1).Value)) = Sheet(n,m1).Value
Dim fl As String = ProjectPath & "Attachments\" & r("单号") & ".jpg"
If Sheet(n,1).SaveImage(fl) Then '如果照片保存成功
'r("图片") = fileSys.GetName(fl)
Dim ftp1 As New FtpClient
Dim i As Integer = 0
Dim dr As Row = Tables("Table_3").Current
ftp1.host="172.16.120.41"
ftp1.Account ="admin"
ftp1.password ="qw123"
If ftp1.MakeDir(dr("单号") & "\") Then
Else
End If
If ftp1.Upload(fl) = True Then
'msgbox("成功")
Else
'msgbox("不成功")
End If
If ftp1.FileExists("\" &dr("单号")& "\" & dr("单号") & ".jpg") Then
For i = 1 To 999
If ftp1.FileExists("\" &dr("单号")& "\" & dr("单号")& "("& i &").jpg")=False Then
Exit For
End If
Next
End If
If i > 0 Then
ftp1.Rename(FileSys.GetName(r("单号") & ".jpg"),"\" &dr("单号") & "\" & dr("单号") &"("& i &").jpg")
r("图片") = "\" &dr("单号") & "\" & dr("单号") &"("& i &").jpg"
ftp1.Delete("/" & FileSys.GetName( r("单号") & ".jpg"))
Else
ftp1.Rename(FileSys.GetName(r("单号") & ".jpg"),"\" &dr("单号") & "\" & dr("单号") &".jpg")
r("图片") = "\" &dr("单号")& "\" & dr("单号") & ".jpg"
ftp1.Delete("/" & FileSys.GetName( r("单号") & ".jpg"))
End If
End If
End If
Next
r("处理人") = user.name
r("记录")=Datetime.Today & "批量导入"
r("状态")="已结案"
End If
End If
Next
Tables("table_3").ResumeRedraw()
msgbox("导入成功")
End If 老师 如果是单张图片的话是可以上传成功的,但是如果是多张图片,例如图这种就上传不成功
此主题相关图片如下:1640592397(1).jpg
