以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]一个表中有两列照片列,一个是登记表列,一个是备案表列,如何修改下列代码? (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=52539) |
-- 作者:hrw68529 -- 发布时间:2014/6/17 17:36:00 -- [求助]一个表中有两列照片列,一个是登记表列,一个是备案表列,如何修改下列代码? 假定表中有六列,分别是县区、单位名称、生成日期、姓名、登记表(照片列)、备案表(照片列),希望向登记表列添加文件的时候,自动根据县区和单位名称创建子目录来存放文件,如果点击登记表列,就将取名为"单位名称_姓名_生成日期.jpg"的文件存放到Attachments的子目录下的:登记表\\县区\\单位名称中;如果点击备案表列,就将取名为"单位名称_生成日期.jpg"的文件存放到Attachments的子目录下的:备案表\\县区\\单位名称中。如何修改,谢谢,下边的代码只能存放备案表列的。 Dim dr As DataRow = e.DataRow If dr.IsNull("县区") Or Dr.IsNull("单位名称") Or dr.IsNull("生成日期") Or dr.IsNull("姓名") Then MessageBox.Show("不能为空!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information) e.Cancel = True Else e.SubFolder = "备案表" & "\\" & dr("县区") & "\\" & dr("单位名称") e.FileName = dr("单位名称") & "_" & dr("生成日期") & ".jpg" End If |
-- 作者:有点甜 -- 发布时间:2014/6/17 17:41:00 -- 如下
Dim dr As DataRow = e.DataRow If dr.IsNull("县区") Or Dr.IsNull("单位名称") Or dr.IsNull("生成日期") Or dr.IsNull("姓名") Then |
-- 作者:hrw68529 -- 发布时间:2014/6/17 17:46:00 -- 如果是登记表,生成文件名字时为e.FileName = dr("单位名称") & "_" & dr("姓名") & "_" & dr("生成日期") & ".jpg"要加上姓名,如何做 |
-- 作者:有点甜 -- 发布时间:2014/6/17 17:54:00 -- Dim dr As DataRow = e.DataRow If dr.IsNull("县区") Or Dr.IsNull("单位名称") Or dr.IsNull("生成日期") Or dr.IsNull("姓名") Then |
-- 作者:hrw68529 -- 发布时间:2014/6/18 8:32:00 -- 按照你给的代码,可以执行,但当在同一单元格中,增加多个图片时,不能按顺序加入,图片—1.jpg,图片—2.jpg.如 e.FileName = e.FileName = dr("单位名称") & "_" & dr("姓名") & "_" & dr("生成日期") & "_" & Indexs & ".jpg",下列代码如何修改,谢谢甜老师。 Dim dr As DataRow = e.DataRow If dr.IsNull("县区") Or Dr.IsNull("单位名称") Or dr.IsNull("生成日期") Or dr.IsNull("姓名") Then MessageBox.Show("不能为空!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information) e.Cancel = True Else If e.DataCol.Name = "备案表" Then Dim Index As Integer = dr("备案表").split(vbcrlf).length e.SubFolder = e.DataCol.name & "\\" & dr("县区") & "\\" & dr("单位名称") e.FileName = dr("单位名称") & "_" & dr("生成日期") & "_" & Index & ".jpg" ElseIf e.DataCol.Name = "登记表" Then Dim Indexs As Integer = dr("登记表").split(vbcrlf).length e.SubFolder = e.DataCol.name & "\\" & dr("县区") & "\\" & dr("单位名称") e.FileName = e.FileName = dr("单位名称") & "_" & dr("姓名") & "_" & dr("生成日期") & "_" & Indexs & ".jpg" End If End If |
-- 作者:Bin -- 发布时间:2014/6/18 8:35:00 -- 试试把 Indexs 改为 (e.DataRow("存放文件的列名").Lines.Count+1)
|
-- 作者:hrw68529 -- 发布时间:2014/6/18 8:40:00 -- 加上后,出现如下错误,请指教 .NET Framework 版本:2.0.50727.3655 Foxtable 版本:2014.5.12.1 错误所在事件:人员增减,BeforeAttachFile 详细错误信息: Public member \'Lines\' on type \'String\' not found. |
-- 作者:Bin -- 发布时间:2014/6/18 8:41:00 -- e.DataRow.Lines("列名").Count |
-- 作者:hrw68529 -- 发布时间:2014/6/18 8:45:00 -- 老大,不行 |
-- 作者:Bin -- 发布时间:2014/6/18 8:46:00 -- 怎么不行? |