以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]关于动态设置文件存储位置及文件改名存储  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=147589)

--  作者:chh2321
--  发布时间:2020/3/19 23:49:00
--  [求助]关于动态设置文件存储位置及文件改名存储
请教老师:

我在BeforeAttachFile中,写如下代码:

Dim dr As DataRow = e.DataRow
Dim n As Integer = e.DataRow.Lines("附件").Count
If dr.IsNull("HIS号") Or dr.IsNull("姓名") Or Dr.IsNull("检查时间") Then
    MessageBox.Show("HIS号,姓名和检查时间不能为空!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
    e.Cancel = True
Else
    e.SubFolder = dr("HIS号") & dr("姓名") & "\\" & dr("检查时间").Year
    e.FileName = dr("HIS号") & dr("姓名") & dr("检查时间") & "-" & n+1 & ".jpg"
End If

出现运行错误:不支持给定路径的格式。

是什么原因?
[此贴子已经被作者于2020/3/20 0:00:57编辑过]

--  作者:狐狸爸爸
--  发布时间:2020/3/20 9:43:00
--  
看看合成的文件名和路径是什么:

Dim dr As DataRow = e.DataRow
Dim n As Integer = e.DataRow.Lines("附件").Count
If dr.IsNull("HIS号") Or dr.IsNull("姓名") Or Dr.IsNull("检查时间") Then
    MessageBox.Show("HIS号,姓名和检查时间不能为空!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
    e.Cancel = True
Else
    e.SubFolder = dr("HIS号") & dr("姓名") & "\\" & dr("检查时间").Year
    e.FileName = dr("HIS号") & dr("姓名") & dr("检查时间") & "-" & n+1 & ".jpg"
    MessageBox.show(e.SubFolder)
    MessageBox.show(e.FileName)
End If

--  作者:chh2321
--  发布时间:2020/3/20 11:17:00
--  

谢谢老师,明白了,是因为“检查时间”是YYYY-MM-dd 时:分:秒 的格式引起的