Web サービスの添付ファイルに関連するメソッド

この記事には、以下のトピックが含まれています。
casm173
この記事には、以下のトピックが含まれています。
このセクションでは、Web サービスの添付ファイルに関連するメソッドについて説明します。 これらのメソッドでは、添付ファイルのみを扱います。リンク タイプの添付は、CreateObject() などの汎用メソッドで扱います。 また、Web サービスを通じたファイルのアップロードには、Direct Internet Message Encapsulation(DIME)プロトコルが使用されます。 これらのメソッドを使用するには、使用する SOAP の実装で DIME がサポートされている必要があります。
createAttachment
createAttachment メソッドでは、以下のパラメータを使用します。
パラメータ
データ タイプ
説明
SID
INTEGER
ログインにより取得したセッションを指定します。
repositoryHandle
STRING
ドキュメント リポジトリのオブジェクト ハンドルを指定します。
objectHandle
STRING
この添付ファイルを添付するコール リクエスト、変更要求、または案件のオブジェクト ハンドルを指定します。
このパラメータは NULL になる場合があります。NULL が渡された場合、添付ファイルはチケットに関連付けられていないため、返される添付ファイル ID を管理する必要があります。
description
STRING
添付オブジェクトの説明を指定します。
fileName
STRING
アップロードするファイルの完全パスを指定します。
説明
バックエンド サーバにファイルをアップロードします。 アップロードされたファイルは、repositoryHandleで指定したドキュメント リポジトリに保存されます。 添付オブジェクトが作成され、objectHandle で指定したチケット オブジェクトに添付されます。 添付オブジェクトには、リポジトリに新規アップロードされたファイルへのアクセス情報がすべて格納されています。
戻り値
createAttachment は以下の値を返します。
パラメータ
タイプ
説明
<Handle>
STRING
新しく作成された添付オブジェクトのオブジェクト ハンドルを示します。
操作を実行できませんでした。ポリシーの制限を超えています
  • 問題の状況
createAttachment() Web サービス メソッドを使用して、既存のリクエストまたはインシデントにドキュメントを添付すると、添付ファイルの Web サービス ポリシー設定が標準装備のデフォルト値である -1(無制限)に設定されている場合でも、このエラーが返されます。 受信した SOAP メッセージに添付ファイルがない場合には、createAttachment () を呼び出したときにこのエラーが返されることがあります。 createAttachment() Web サービス メソッドを呼び出す前に、SOAP メッセージに少なくとも 1 つのファイルを添付する必要があります。
  • 解決方法
createAttachment() メソッドを呼び出す前に、Direct Internet Message Encapsulation(DIME)をサポートするように SOAP 実装を設定し、DIME サポートを使用して手動でアップロード対象のファイルを添付します。
DIME をサポートする方法の例については、$NX_ROOT\samples\sdk\websvc\java\test3_attachments ディレクトリを参照してください。
例: Visual Basic .NET
以下のコード例は、createAttachment() Web サービス メソッドを呼び出す前に DIME サポートを使用してファイルを添付するサンプルの Visual Basic .NET コードを示しています。
Dim reqContext As SoapContext = objCA SDM_WS.RequestSoapContext Dim dimeAttach As New DimeAttachment("image/gif", TypeFormat.MediaType, "c:\test.txt") reqContext.Attachments.Add(dimeAttach) strResult = objCA SDM_WS.createAttachment(sid, "doc_rep:1002", "cr:400001", "my desc", "c:\test.txt")
前のサンプル コードで使用されている DIME 添付ファイル メソッドについては、Microsoft の Web サイトを参照してください。 ほかの言語によるプログラムについては、DIME をサポートする SOAP 実装のドキュメントを参照してください。
例: Java
以下のコード例は、createAttachment() Web サービス メソッドを呼び出す前に DIME サポートを使用してファイルを添付するサンプルの Java コードを示しています。
FileDataSource fds = new FileDataSource(filename); DataHandler dhandler = new DataHandler(fds); CA SDM._setProperty(Call.ATTACHMENT_ENCAPSULATION_FORMAT, Call.ATTACHMENT_ENCAPSULATION_FORMAT_DIME); CA SDM.addAttachment(dhandler); String handle = CA SDM.createAttachment(sid, repHandle, objHandle, description, filename);
removeAttachment
removeAttachment メソッドでは、以下のパラメータを使用します。
パラメータ
タイプ
説明
SID
整数
現在のログイン セッションのSIDを指定します。
attHandle
文字列
削除する添付ファイルのオブジェクト ハンドルを指定します。
説明
チケット オブジェクトから添付ファイルを削除します。 その後、リポジトリから添付ファイルが削除されます。
戻り値
なし。
attachURLLinkToTicket
attachURLLinkToTicket メソッドでは、以下のパラメータを使用します。
パラメータ
タイプ
説明
SID
整数
ログインにより取得したセッションを指定します。
docId
整数
チケットの一意の ID を示します。
URL
文字列
チケットに添付する URL を示します。
attmntName
文字列
添付ファイルの名前を示します。
説明
文字列
添付ファイルの説明を指定します。
説明
チケットに URL リンクを添付します。
例:
CA SDM.attachURLLinkToTicket(sid, "cr:400001", "http://<URL NAME>", "<URL NAME>", "Broadcom Technologies Website");