Tema anterior: attachURLLinkToTicketTema siguiente: removeAttachment


createAttachment

Los siguientes parámetros se aplican al método createAttachment:

Parámetro

Tipo de dato

Description

SID

INTEGER

Identifica la sesión recuperada del inicio de sesión.

repositoryHandle

CADENA

Determina el identificador de objeto de un repositorio de documentos.

objectHandle

CADENA

Determina el identificador de objeto de una solicitud de llamada, orden de cambio o incidencia a la que se adjunta este adjunto.

Este parámetro puede ser NULL; sin embargo, es necesario gestionar el ID de archivo adjunto que se devuelve porque, cuando NULL se transfiere, el archivo adjunto no está asociado a un ticket.

description

CADENA

Identifica la descripción del objeto del adjunto.

fileName

CADENA

Identifica la ruta completa del archivo que desea cargar.

Description

Carga un archivo en el servidor. Se almacena un archivo cargado en un repositorio de documentos especificado por el parámetro repositoryHandle. A continuación, se crea un objeto de adjunto y se adjunta a un objeto de parte especificado por el parámetro objectHandle. El objeto del adjunto tiene toda la información de acceso al archivo recién cargado en el repositorio.

Resultado

createAttachment tiene las devoluciones siguientes:

Parámetro

Tipo

Description

<Handle>

CADENA

Determina el identificador de objeto del objeto del adjunto recién creado.

No se pudo realizar la operación; límite de política superado

Síntoma:

Al utilizar el método de servicio Web createAttachment() para adjuntar un documento a una solicitud o incidente existente, recibe este error, aun cuando la configuración de la política de servicios Web para adjuntos se establezca en -1 (ilimitado), que es la configuración predeterminada lista para usar. Es posible que reciba este error al llamar al método de servicio Web si no hay archivos adjuntos en el mensaje SOAP recibido. Debe adjuntar por lo menos un archivo al mensaje SOAP antes de llamar al método de servicio Web createAttachment().

Solución:

Establezca la implementación SOAP para admitir encapsulación de mensajes de Internet directos (DIME, por sus siglas en inglés) y adjunte el archivo que se va a cargar manualmente con soporte DIME antes de llamar al método createAttachment().

Se pueden consultar los ejemplos sobre cómo admitir DIME desde el directorio $NX_ROOT\samples\sdk\websvc\java\test3_attachments.

Ejemplo: Visual Basic .NET

En este ejemplo de código se ilustra el código de Visual Basic .NET de muestra para adjuntar un archivo con soporte DIME antes de llamar al método de servicio Web createAttachment().

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")

Nota: Para obtener información sobre los métodos de adjuntos DIME utilizados en el código de muestra anterior, consulte el sitio Web de Microsoft. Para obtener información de programas escritos en otros idiomas, consulte la documentación para la implementación SOAP compatible con DIME.

Ejemplo: Java

En este ejemplo de código se ilustra el código de Java de muestra para adjuntar un archivo con soporte DIME antes de llamar al método de servicio Web createAttachment().

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);