以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 文件名动态命名并自动重文件名 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=56713) |
||||
-- 作者:yifan3429 -- 发布时间:2014/9/11 11:23:00 -- 文件名动态命名并自动重文件名 Dim dr As DataRow = e.DataRow If dr.IsNull("产品名称") OrElse dr.IsNull("家具分类") OrElse dr.IsNull("产品编号")Then MessageBox.Show("产品名称,家具类别 家具分类 编号 都不能为空!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information) e.Cancel = True Else Select Case e.DataCol.Name Case "产品效果图" e.SubFolder = format(dr("日期").Today,"yyyy") & "产品库" & "\\" & dr("家具风格") & "\\" & dr("产品名称") & "\\" & "A 效果图片" Case "产品三视图" e.SubFolder = format(dr("日期").Today,"yyyy") & "产品库" & "\\" & dr("家具风格") & "\\" & dr("产品名称") & "\\" & "B 三视图片" Case "动态图" e.SubFolder = format(dr("日期").Today,"yyyy") & "产品库" & "\\" & dr("家具风格") & "\\" & dr("产品名称") & "\\" & "C 动态图片" Case "产品空间" e.SubFolder = format(dr("日期").Today,"yyyy") & "产品库" &"\\" & dr("家具风格") & "\\" & dr("产品名称") & "\\" & "D 空间图片" Case "产品案例" e.SubFolder = format(dr("日期").Today,"yyyy") & "产品库" &"\\" & dr("家具风格") & "\\" & dr("产品名称") & "\\" & "E 案例图片" Case "设计稿" e.SubFolder = format(dr("日期").Today,"yyyy") & "产品库" & "\\" & dr("家具风格") & "\\" & dr("产品名称") & "\\"& "F 设计文件" Case "工艺文件" e.SubFolder = format(dr("日期").Today,"yyyy") & "产品库" & "\\" & dr("家具风格") & "\\" & dr("产品名称") & "\\" & "G 工艺文件" Case "成本测算" e.SubFolder = format(dr("日期").Today,"yyyy") & "产品库" & "\\" & dr("家具风格") & "\\" & dr("产品名称") & "\\" & "E 成本文件" End Select End If Dim s As String = e.filename Dim Index As Integer = s.LastIndexOf(".") Dim hz As String = s.SubString(Index,s.length-Index) e.filename=e.DataRow("产品编号") & hz 上面的代码会将所有的内容强制的重名名为指定文件名 我想增加些选择功能 如果是"产品效果图" 就是按照上面的代码执行 如果是"产品空间""成本测算"等的话 在原来的名称上重命名为 结果实例是 效果图.jpg 如果有第二个文件插入进来就会是效果图(1).jpg 效果图(2).jpg依次类推, 该如何实现呢 [此贴子已经被作者于2014-9-25 17:27:23编辑过]
|
||||
-- 作者:有点甜 -- 发布时间:2014/9/11 11:54:00 -- 你判断文件是否存在,如果存在,就加上当前的时间
If FileSys.FileExists(e.SourceFolder & format(dr("日期").Today,"yyyy") & "产品库" & "\\" & dr("家具风格") & "\\" & dr("产品名称") & "\\" & "A 效果图片") Then Else e.SubFolder = format(dr("日期").Today,"yyyy") & "产品库" & "\\" & dr("家具风格") & "\\" & dr("产品名称") & "\\" & "A 效果图片"
http://www.foxtable.com/help/topics/0341.htm [此贴子已经被作者于2014-9-11 11:54:51编辑过]
|
||||
-- 作者:Bin -- 发布时间:2014/9/11 11:55:00 -- \'Dim fn As String = e.DataRow.Lines(e.DataCol.name)(e.DataRow.Lines(e.DataCol.name).Count-1) Dim fni As Integer=fn.LastIndexOf("(") Dim fn2 As String =fn.SubString(fni,fn.Length-fni) Dim fni2 As Integer= fn2.LastIndexOf(".") e.FIlterName= "效果图(" & Val(fn2.SubString(0,fni2).trim("(").trim(")"))+1 & ".jpg"
|
||||
-- 作者:yifan3429 -- 发布时间:2014/9/25 16:42:00 -- Dim dr As DataRow = e.DataRow If dr.IsNull("品牌") Then msgbox("品牌名不能为空") e.cancel = True Else Select Case e.DataCol.Name Case "宣传_产品" e.SubFolder = dr("品牌") & "\\" & format(dr("日期").Today,"yyyy") & "\\" & "产品宣传" Case "宣传_企业" SystemReady = False e.SubFolder =dr("品牌") & "\\" & format(dr("日期").Today,"yyyy") & "\\" & "企业宣传" End Select End If \'------------------------------------------------------ Dim s As String = e.filename Dim Index As Integer = s.LastIndexOf(".") Dim hz As String = s.SubString(Index,s.length-Index) e.filename=e.DataRow("品牌") & "企业宣传" & hz Dim fn As String = e.DataRow.Lines(e.DataCol.name)(e.DataRow.Lines(e.DataCol.name).Count-1) Dim fni As Integer=fn.LastIndexOf("(") Dim fn2 As String =fn.SubString(fni,fn.Length-fni) Dim fni2 As Integer= fn2.LastIndexOf(".") .NET Framework 版本:2.0.50727.5485 Foxtable 版本:2014.9.23.1 错误所在事件:品牌主表,BeforeAttachFile 详细错误信息: StartIndex 不能小于 0。 参数名: startIndex [此贴子已经被作者于2014-9-25 16:45:40编辑过]
|
||||
-- 作者:有点甜 -- 发布时间:2014/9/25 16:46:00 -- Dim s As String = e.filename Dim Index As Integer = s.LastIndexOf(".") Dim hz As String = s.SubString(Index,s.length-Index) e.filename=e.DataRow("品牌") & "企业宣传" & hz Dim fn As String = e.DataRow.Lines(e.DataCol.name)(e.DataRow.Lines(e.DataCol.name).Count-1) Dim fni As Integer=fn.LastIndexOf("(") If fni > -1 Then Dim fn2 As String =fn.SubString(fni,fn.Length-fni) Dim fni2 As Integer= fn2.LastIndexOf(".") End If |
||||
-- 作者:yifan3429 -- 发布时间:2014/9/25 17:27:00 -- 还是有错误 老师您看下
|
||||
-- 作者:有点甜 -- 发布时间:2014/9/25 17:32:00 -- 关键是你想做什么? |
||||
-- 作者:有点甜 -- 发布时间:2014/9/25 17:33:00 -- 没有提示错误 |
||||
-- 作者:yifan3429 -- 发布时间:2014/9/25 17:43:00 -- 索引超出范围。必须为非负值并小于集合大小。 参数名: index 第一导入文件 错误提示 同样的文件再次导入应该是自动重命名(序号递进) 还是会弹出重名文件提示 我想得到的结果是下面这样的功能 自动完成复制但保留两个文件 [此贴子已经被作者于2014-9-25 17:48:20编辑过]
|
||||
-- 作者:有点甜 -- 发布时间:2014/9/25 17:56:00 -- Dim dr As DataRow = e.DataRow
Dim s As String = e.filename |