上一主题: attachURLLinkToTicket

下一主题: removeAttachment

createAttachment

以下参数适用于 createAttachment 方法:

参数

数据类型

说明

SID

INTEGER

标识从登录检索的会话。

repositoryHandle

STRING

标识文档存储库的对象句柄。

objectHandle

STRING

标识附加此附件的调用请求、变更单或问题的对象句柄。

但此参数可能为空,您必须管理所返回的附件 ID,因为如果传入了空值,则附件不与任何故障单相关联。

description

STRING

标识附件对象的描述。

fileName

STRING

标识要上载文件的完整路径。

说明

向后端服务器上载文件。 上载文件存储在 repositoryHandle 指定的文档存储库中。 然后创建附件对象并将其附加至 objectHandle 指定的票据对象。 附件对象拥有访问存储库中新上载文件的全部信息。

返回

createAttachment 的返回值如下:

参数

类型

说明

<Handle>

STRING

标识新建附件对象的对象句柄。

无法执行操作,超出策略限制

症状:

使用 createAttachment() Web 服务方法将文档附加到现有的请求或突发事件上时,收到此错误,即使附件的 Web 服务策略设置设为 -1(无限制,该设置是现成的默认设置)时也是如此。 在调用 Web 服务方法时,如果在收到的 SOAP 消息中没有附加的文件,则可能会收到此错误。 必须在 SOAP 消息中至少附加一个文件后,才能调用 createAttachment() Web 服务方法。

解决方法:

设置您的 SOAP 实施,使其支持直接 Internet 消息封装 (DIME),并且在调用 createAttachment() 方法之前使用 DIME 支持来附加要手动上载的文件。

示例:Visual Basic .NET

此代码示例用于说明 Visual Basic .NET 代码样例,在调用 createAttachment() Web 服务方法之前使用 DIME 支持来附加文件。

Dim reqContext As SoapContext = objUSD_WS.RequestSoapContext
Dim dimeAttach As New DimeAttachment("image/gif",
TypeFormat.MediaType, "c:\test.txt")
reqContext.Attachments.Add(dimeAttach)

strResult = objUSD_WS.createAttachment(sid, "doc_rep:1002",
"cr:400001", "my desc", "c:\test.txt")

注意:有关以上代码样例中使用的 DIME 附件方法的信息,请参阅 Microsoft 网站。 有关用其他语言编写的程序,请参阅有关支持 DIME 的 SOAP 实施的文档。

示例:Java

此代码示例用于说明 Java 代码样例,在调用 createAttachment() Web 服务方法之前使用 DIME 支持来附加文件。

FileDataSource fds = new FileDataSource(filename);
DataHandler dhandler = new DataHandler(fds);
usd._setProperty(Call.ATTACHMENT_ENCAPSULATION_FORMAT,
Call.ATTACHMENT_ENCAPSULATION_FORMAT_DIME);
usd.addAttachment(dhandler);

String handle = usd.createAttachment(sid, repHandle, objHandle,
description, filename);