上一主题: 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 支持来附加要手动上载的文件。

您可以参阅有关如何通过 $NX_ROOT\samples\sdk\websvc\java\test3_attachments 目录支持 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);