如何在 Access 中克隆 SharePoint 列表附件字段
Posted
技术标签:
【中文标题】如何在 Access 中克隆 SharePoint 列表附件字段【英文标题】:How to clone the SharePoint list attachment field in Access 【发布时间】:2015-12-01 06:20:39 【问题描述】:如何在 Access 2013 中克隆附件字段?它给了我一个“无效参数”错误,带有 FileData 字段。
FileData 在调试器中显示为 Variant/Byte 类型。而且看起来像一个字节数组。
我正在使用标准的 SharePoint 列表样式附件字段。
我看到的示例 Copy An Attachment Field 建议以下代码可以工作,但我收到“无效参数”的错误
Public Sub copyAttachment(recordsetMoveAttachmentFrom As DAO.Recordset2, recordsetMoveAttachmentTo As DAO.Recordset2)
Do While recordsetMoveAttachmentFrom.EOF = False
recordsetMoveAttachmentTo.AddNew
recordsetMoveAttachmentTo!FileFlags = recordsetMoveAttachmentFrom!FileFlags
recordsetMoveAttachmentTo!FileName = recordsetMoveAttachmentFrom!FileName
recordsetMoveAttachmentTo!FileTimeStamp = recordsetMoveAttachmentFrom!FileTimeStamp
recordsetMoveAttachmentTo!FileType = recordsetMoveAttachmentFrom!FileType
recordsetMoveAttachmentTo!FileURL = recordsetMoveAttachmentFrom!FileURL
recordsetMoveAttachmentTo!FileData = recordsetMoveAttachmentFrom!FileData recordsetMoveAttachmentTo.Update
recordsetMoveAttachmentFrom.MoveNext
Loop
Set recordsetMoveAttachmentFrom = Nothing 'Clear the Record set
Set recordsetMoveAttachmentTo = Nothing 'Clear the Record set
End Sub
【问题讨论】:
【参考方案1】:这行得通:
.Update父记录。使用以下方法复制 FileData 字段:
lngOffset = 0
conChunkSize = fldSource.FieldSize
chunk = fldSource.GetChunk(lngOffset, conChunkSize)
fldDestination.AppendChunk chunk
在保存父记录之前,无法保存附件记录。还要复制 fileData 字段,使用 GetChunk 和 AppendChunk
警告 - AppendChunk 仅适用于第一个追加。之后所有的追加都失败了。
虽然 MS 提供了以下示例(请参阅 https://msdn.microsoft.com/en-us/library/bb220958(v=office.12).aspx),但 AppendChunk 看起来无法与 Access 2013 一起正常工作
' Set size of chunk in bytes.
Const conChunkSize = 5& * 1024 * 1024
Dim lngOffset As Long
Dim lngTotalSize As Long
Dim chunk As Variant
' Copy the photo from one Recordset to the other in 32K
' chunks until the entire field is copied.
lngTotalSize = fldSource.FieldSize
Do While lngOffset < lngTotalSize
chunk = fldSource.GetChunk(lngOffset, conChunkSize)
fldDestination.AppendChunk chunk
lngOffset = lngOffset + conChunkSize
Loop
【讨论】:
以上是关于如何在 Access 中克隆 SharePoint 列表附件字段的主要内容,如果未能解决你的问题,请参考以下文章
如何将Excel Web Access Web部件添加到我的sharepoint库中?
ACCESS 创建菜单下的sharepoint列表是啥作用?如何使用?
如何在 Sharepoint Online 上托管的 Access 自定义 Web 应用程序上编辑 CSS?