以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]保存数据时登记修改内容  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=146559)

--  作者:wumingrong1
--  发布时间:2020/2/26 14:51:00
--  [求助]保存数据时登记修改内容

 

1、想要在保存数据前、在【工单流程】单元格中写入被修改过的【单元格】旧内容;命令该怎么写?

Dim r As Row = Tables("集客勘察工单清单表").current

r("工单流程") &= vbcrlf & vbcrlf & "【 "& User.Name & " 】【 "& dt & " 】【 对工单进行了修改:&  当前行被修改过的单元格就内容、多个单元格被修改时用“/”进行分割 &" 】"

DataTables("集客勘察工单清单表").Save()

 

2、想要在保存数据前、在【工单流程】单元格中写入上传到服务器的文件名称;命令该怎么写?

    Dim dlg As New OpenFileDialog \'定义一个新的OpenFileDialog
    If dlg.ShowDialog = DialogResult.Ok Then \'如果用户单击了确定按钮
        If ftp1.Upload(dlg.FileName,"/prospecting/" & t("图片资料路径") & "/" & filesys.GetName(dlg.FileName),True) = True Then \'上传选定的文件到服务器上指定的文件夹下
           
            Dim fls =  ftp1.GetFileList( "/prospecting/" & t("图片资料路径") )
            For Each fl As String In fls
                fls1 &= FileSys.GetName(fl) & vbcrlf
            Next
            t("图片资料") = fls1
            t("图片") = fls1
            t("工单流程") &= vbcrlf & vbcrlf & "【 "& User.Name & " 】【 "& dt & " 】【 上传了文件: "& 上传的文件名称 &" 】"
            DataTables("集客勘察工单清单表").Save()

 

3、是否有命令可以指定保存某一个单元格的内容、比如【区域名称】【装维人员姓名】这两个单元格都被修改了、但是我要先只保存【装维人员姓名】、但是【区域名称】暂时不进行保存。有的话命令该怎么写


--  作者:有点蓝
--  发布时间:2020/2/26 15:11:00
--  
1、遍历所有列判断

dim s as string 
for each dc as datacol in dataTables("集客勘察工单清单表").datacols
if r.datarow.OriginalValue(dc.name) <> r(dc.name)
     s = s & r(dc.name) & ","
end if
next

2、t("工单流程") &= vbcrlf & vbcrlf & "【 "& User.Name & " 】【 "& dt & " 】【 上传了文件: " & fls1 & " 】"

或者使用SQLcommand

--  作者:wumingrong1
--  发布时间:2020/2/26 16:25:00
--  

 

2、我最后上传的文件是12.exl、但是前面已经上传的文件会被一起写进去

t("工单流程") &= vbcrlf & vbcrlf & "【 "& User.Name & " 】【 "& dt & " 】【 上传了文件: " & fls1 & " 】"


图片点击可在新窗口打开查看此主题相关图片如下:360截图20200226162303032.jpg
图片点击可在新窗口打开查看


图片点击可在新窗口打开查看此主题相关图片如下:360截图20200226162326202.jpg
图片点击可在新窗口打开查看


 

[此贴子已经被作者于2020/2/26 16:25:04编辑过]

--  作者:有点蓝
--  发布时间:2020/2/26 17:01:00
--  
t("工单流程") &= vbcrlf & vbcrlf & "【 "& User.Name & " 】【 "& dt & " 】【 上传了文件: /prospecting/" & t("图片资料路径") & "/" & filesys.GetName(dlg.FileName) &" 】"
--  作者:wumingrong1
--  发布时间:2020/2/26 17:17:00
--  

以下命令读取的是文件夹下的所有文件、但是我想只读取文件夹中图片文件、非图片的就不读取;该怎么改?

ftp1.MakeDir("/prospecting/"& t.current("图片资料路径") &"")
Dim fls =  ftp1.GetFileList("prospecting/"&  t.current("图片资料路径")  )
For Each fl As String In fls
    fls1 &=  FileSys.GetName(fl) & vbcrlf   
Next
t.current("图片") = fls1

 


图片点击可在新窗口打开查看此主题相关图片如下:360截图20200226163339607.jpg
图片点击可在新窗口打开查看

[此贴子已经被作者于2020/2/26 17:17:19编辑过]

--  作者:有点蓝
--  发布时间:2020/2/26 17:35:00
--  

还可以使用通配符,例如列出photo目录下的所有jpg文件:

Dim ftp1 As New FtpClient
Dim 
fls As List(of String
ftp1
.Host="196.128.143.28"
ftp1
.Account = "foxuser"
ftp1
.Password = "138238110"
fls = ftp1.GetFileList(
"\\photo\\*.jpg")
For Each 
fl As String In fls
    
Output.Show(fl)
Next


--  作者:wumingrong1
--  发布时间:2020/2/26 18:26:00
--  

以下命令想导出服务器上【\\prospecting\\"& t.current("图片资料路径")】路径下的存放资料的文件夹下的所有文件;但是提示【下载失败】。命令该怎么修改

 

Dim t As Table = Tables("集客勘察工单清单表")

 

Dim dlg As New SaveFileDialog \'定义一个新的OpenFileDialog
dlg.Filter= "所有文件类型" \'设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then \'如果用户单击了确定按钮
    
    
Dim ftp As New FTPClient
ftp.Host="192.168.1.1"
ftp.Account = "dfjksaj"
ftp.password = "dsaffsdfsdf"
    If ftp.Download("\\prospecting\\"& t.current("图片资料路径"),dlg.FileName) = True Then  ; \'下载指定路径下文件夹里的所有文件、到指定本机位置
        Messagebox.show("下载完成!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
    Else
        Messagebox.show("下载失败!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
    End If
End If

[此贴子已经被作者于2020/2/26 18:39:25编辑过]

--  作者:有点蓝
--  发布时间:2020/2/27 9:19:00
--  
去掉dlg.Filter=这一句

只能一个个文件的下载,使用GetFileList获取目录里的所有文件名,然后遍历一个个文件名下载

--  作者:wumingrong1
--  发布时间:2020/2/27 11:48:00
--  
如果要把整改文件夹(包括文件夹和里面的文件)都下载呢?能一次性下载吗?
--  作者:有点蓝
--  发布时间:2020/2/27 11:54:00
--  
没有一次性下载的用法,只能一个个下载