查看: 2578|回复: 2

[FAQ] 一個關於附件刪除的問題,

[复制链接]
论坛徽章:
0
发表于 2007-1-25 11:55 | 显示全部楼层 |阅读模式
各位大俠:
小弟有一個b/s 的資料庫,
文件中需要上傳一個 附件 。附件刪除的時候遇到兩個問題。
刪除附件的代碼如下:
*******************************************************
Set docCurrent = s.DocumentContext
        strDelFile = docCurrent.DelFile(0)  '----文件名稱
        Set embobj = docCurrent.GetAttachment(strdelFile)       
       
        If Not embobj Is Nothing Then
                Call embobj.Remove
                    endif
*******************************************************
現在有兩种情況,不能刪除文件:
1。儅文件的名稱中,含有漢字,則不能刪除。
如:TD035STED1 UV膠封口 RA test report.doc
     這種情況,我把資料庫,移到另外的一台服務器上則可以刪除。 所以,我估計是服務器設定的問題。但是一直沒有找出來。
2。儅文件中,含有連續的兩個空格的時候,也不能刪除。
如:TD030MHEB1%20%20NJ%20Line%20release%20verification%20report.pdf
     因爲,我用@AttachmentNames 得到的 strDelFile 的名稱為
TD030MHEB1%20NJ%20Line%20release%20verification%20report.pdf
再用GetAttachment()函數就找不到附件了,
不知道有沒有人遇到過這種情況。
指點指點。3Q
论坛徽章:
1
IBM软件技术精英协会成员
日期:2007-01-24 14:56:37
发表于 2007-1-26 14:05 | 显示全部楼层
你用如下的代码可以试验一下:

                If doc.HasEmbedded Then     
                        If doc.HasItem( "RichField" ) Then
                                Set rt=doc.GetFirstItem( "richfield" )
                                If Isempty (rt.EmbeddedObjects) Then
'                                        Messagebox "没有附件 " & doc.noteid
'                                        do noting
                                Else        
                                        Set rtitem = doc.GetFirstItem( "RichField" )
                                                                                Forall att In rtitem.EmbeddedObjects
                                                If att.Type = EMBED_ATTACHMENT Then
                                                        Call att.Remove
                                                       
                                                End If
                                        End Forall
Call doc.Save( False, True )       
                                End If
                        End If
                End If

其中doc为当前文档
假设RichField为RTF字段

使用道具 举报

回复
论坛徽章:
16
2011新春纪念徽章
日期:2011-01-25 15:41:01马上有对象
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有车
日期:2014-02-19 11:55:142012新春纪念徽章
日期:2012-02-13 15:10:582012新春纪念徽章
日期:2012-02-13 15:10:582012新春纪念徽章
日期:2012-02-13 15:10:582012新春纪念徽章
日期:2012-02-13 15:10:582012新春纪念徽章
日期:2012-02-13 15:10:58
发表于 2007-3-20 14:41 | 显示全部楼层
楼主,等着你的反馈呢!

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 
京ICP备09055130号-4  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表