老师,您好:
我用的是阿里云服务器,现在想上传一些文件凭证,比如合同,fa piao,付款回单等。目前使用的是软件自带的文件管理器,功能很齐全,但是操作有点复杂,想自己设计一款,实现如下图所示的功能。想请教一下老师,foxtable软件支持这样的设计吗?是否有相关的教程供参考?谢谢!
此主题相关图片如下:文件管理器.png
软件自带的文件管理器什么地方操作复杂!难道会比自己重新设计一个复杂!!!
如果说想跳过某个步骤,加一些自己的控制。只能使用ftpclient自己做了
目的:上传完附件,想在附件列中显示已经上传的所有文件的名字,代码如下:
问题:有时候能显示,有时候不显示,请老师帮助看看是否有解决的办法?谢谢
在窗口的doubleclick设置代码为:
If e.Col.Name = "附件" Then
Dim ftp1 As New FtpClient
ftp1.Host = "*****"
ftp1.Account = "*****"
ftp1.Password = "*****"
ftp1.RenameEnabled = False '禁用重命名文件按钮
ftp1.MakerDirEnabled = False '禁用新建文件夹
If ftp1.DirExists("/data/caigou/" & e.Row("供应商") & "" & e.Row("采购单号") & "") Then
ftp1.ChangeDir("/data/caigou/" & e.Row("供应商") & "" & e.Row("采购单号") & "")
Else
ftp1.MakeDir("/data/caigou/" & e.Row("供应商") & "" & e.Row("采购单号") & "")
ftp1.ChangeDir("/data/caigou/" & e.Row("供应商") & "" & e.Row("采购单号") & "")
End If
ftp1.RootDir = "/data/caigou/" & e.Row("供应商") & "" & e.Row("采购单号") & "" '设置根目录
ftp1.OpenManager()
Dim drs As List(Of String) = ftp1.GetFileList("/data/caigou/" & e.Row("供应商") & "" & e.Row("采购单号") & "")
Dim st As String = String.Join(",", drs.ToArray)
e.Row("附件") = st.Replace("/data/caigou/" & e.Row("供应商") & "" & e.Row("采购单号") & "/", " ")
End If
此主题相关图片如下:文件管理器3.png
[此贴子已经被作者于2024/8/23 10:11:24编辑过]
不显示是指单元格里面没有内容?
1、加上cancel
If e.Col.Name = "附件" Then
e.cancel=true
Dim ftp1 As New FtpClient
……
2、调试看看
Dim drs As List(Of String) = ftp1.GetFileList("/data/caigou/" & e.Row("供应商") & "" & e.Row("采购单号") & "")
msgbox(drs.count)
1、加上cancel
If e.Col.Name = "附件" Then
e.cancel=true
Dim ftp1 As New FtpClient
……
这种方式也是同样的情况,单元格里面有时候有内容,有时候没有
2、
Dim drs As List(Of String) = ftp1.GetFileList("/data/caigou/" & e.Row("供应商") & "" & e.Row("采购单号") & "")
MessageBox.Show(drs.Count)
隐藏此行 ' Dim st As String = String.Join(",", drs.ToArray)
隐藏此行 ' e.Row("附件") = st.Replace("/data/caigou/" & e.Row("供应商") & "" & e.Row("采购单号") & "/", " ")
单元格里面有内容,但是msgbox(drs.count) 有时候显示0,有时候显示5
此主题相关图片如下:文件管理器4.png
显示0肯定就是没有文件。看看是不是路径有问题。空内容就没有必要加双引号了
MessageBox.Show("/data/caigou/" & e.Row("供应商") & e.Row("采购单号"))
Dim drs As List(Of String) = ftp1.GetFileList("/data/caigou/" & e.Row("供应商") & e.Row("采购单号"))
MessageBox.Show(drs.Count)
另外,看您的网络(或者ftp服务)似乎不稳定呀,都是列表几次才成功
此主题相关图片如下:1.png
MessageBox.Show("/data/caigou/" & e.Row("供应商") & e.Row("采购单号")) ——每次会弹出固定的路径
Dim drs As List(Of String) = ftp1.GetFileList("/data/caigou/" & e.Row("供应商") & e.Row("采购单号"))
MessageBox.Show(drs.Count) ——还是会交替出现,0 和 5