cfexchangecontact

説明

Microsoft Exchange 連絡先レコードと連絡先レコードの添付ファイルを作成、削除、変更および取得します。

履歴

  • ColdFusion(2023 リリース)アップデート 5:usernamepassword および server 属性が追加されました。
  • ColdFusion 10:serverVersion 属性が追加されました。
  • ColdFusion 8:このタグが追加されました。

カテゴリ

通信タグ

シンタックス

create
<cfexchangecontact
required
action = “create”
contact = “#contact information structure#”
optional
connection = “connection ID”
result = “variable for contact UID”>

delete
<cfexchangecontact
required
action = “delete”
uid = “contact UID,contact UID, ...”
optional
connection = “connection ID”>

deleteAttachments
<cfexchangecontact
required
action = “deleteAttachments”
uid = “contact UID”
optional
connection = “connection ID”>

get
<cfexchangecontact
required
action = “get”
name = “query identifier”
optional
connection = “connection ID”>

getAttachments
<cfexchangecontact
required
action = “getAttachments”
name = “query identifier”
uid = “contact UID”
optional
attachmentPath = “directory path”
connection = “connection ID”
generateUniqueFilenames = “no|yes”>

modify
<cfexchangecontact
required
action = “modify”
contact = “#contact information structure#”
uid = “contact UID”
optional
connection = “connection ID>”

 

メモ:connection 属性を省略する場合は、cfexchangecontact タグで cfexchangeconnection タグの属性を指定して一時的な接続を作成します。この場合、ColdFusion はタグが完了すると接続を閉じます。詳しくは、cfexchangeconnection タグの open アクションを参照してください。

 

メモ:このタグの属性は attributeCollection 属性で指定でき、その値は構造体になります。attributeCollection 属性で構造体の名前を指定し、タグの属性名を構造体のキーとして使用します。

関連項目

cfexchangecalendarcfexchangeconnectioncfexchangefiltercfexchangemailcfexchangetask、『ColdFusion アプリケーションの開発』の Microsoft Exchange Server との連携

属性

属性

アクション

必須/オプション

デフォルト

説明

action

N/A

必須

 

実行するアクションです。有効な値は次のとおりです。

  • create
  • delete
  • deleteAttachments
  • get
  • getAttachments
  • modify
username すべて オプション   Exchange のユーザー ID です。
password すべて オプション   Exchange サーバーへのアクセスに使用するパスワードです。
server すべて オプション   Exchange へのアクセスに使用するサーバーの IP アドレスまたは URL です。

attachmentPath

getAttachments

オプション

 

添付ファイルを保存するディレクトリの絶対ファイルパスです。指定したディレクトリが存在しない場合は、自動的に作成されます。
メモ:この属性を省略すると、添付ファイルは保存されません。

connection

すべて

オプション

 

cfexchangeconnection タグで指定された Exchange サーバーへの接続の名前です。この属性を省略する場合は、cfexchangecontact タグで cfexchangeconnection タグの接続アクション属性 open を指定して一時的な接続を作成します。

contact

createmodify

必須

 

設定または変更する contact プロパティとその値を含む構造体への参照です。この属性はシャープ記号(#)で囲んで指定する必要があります。
イベント構造体について詳しくは、「使用方法」を参照してください。

generateUniqueFilenames

getAttachments

オプション

no

同じ名前の添付ファイルが複数ある場合に、一意のファイル名を生成するかどうかを指定するブール値です。同じ名前を持つ添付ファイルが複数存在し、このオプションが yes の場合、ColdFusion は、競合するファイル名の後ろ(拡張子の前)に番号を付加します。例えば、myfile.txt という名前の添付ファイルが 3 つある場合は、myfile.txt、myfile1.txt、myfile2.txt という名前で保存されます。

name

getgetAttachments

必須

 

返された連絡先レコード、または取得した添付ファイルに関する情報を格納する ColdFusion クエリ変数の名前です。返されるデータについて詳しくは、「使用方法」を参照してください。

result

create

オプション

 

作成する連絡先の UID を格納する変数の名前です。他のアクションでは、uid 属性でこの値を指定してアクションの対象となる連絡先を識別します。

serverVersion

 

オプション

2007

Microsoft Exchange Server のバージョンを指定します。有効な値は次のとおりです。

  • 2003
  • 2007
  • 2010
    詳細を指定しない場合は、デフォルトで 2007 が使用されます。
    指定した値は、アプリケーションレベルで指定した値よりも優先されます。

uid

getAttachmentsdeletemodify

必須

 

アクションの対象となる連絡先を一意に識別する Exchange UID 値です。大文字と小文字は区別されます。delete アクションの場合は、この属性で UID 値のコンマ区切りリストを指定できます。deleteAttachments、getAttachments および modify アクションの場合は、1 つの UID 値のみを指定できます。

create または modify アクションを指定する場合は、連絡先に関する情報を含んだ構造体を contact 属性で指定する必要があります。この構造体には次の要素を格納できます。設定または変更する要素のみを含めます。

Assistant

Attachments

BusinessAddress

BusinessFax

BusinessPhoneNumber

Categories

Company

Department

Description

DisplayAs

Email1

Email2

Email3

FirstName

HomeAddress

HomePhoneNumber

JobTitle

LastName

MailingAddressType

Manager

MiddleName

MobilePhoneNumber

NickName

Office

OtherAddress

OtherPhoneNumber

Pager

Profession

SpouseName

WebPage

 

 

BusinessAddress、HomeAddress および OtherAddress 以外のフィールドにはテキストが入ります。これら 3 つの住所フィールドには、次のフィールドを持つ構造体が入ります。

  • Street
  • City
  • State
  • Zip
  • Country
    Attachments フィールドでは、連絡先に含める添付ファイルのパス名を指定する必要があります。複数のファイルを指定する場合、Windows ではセミコロン(;)、UNIX および Linux ではコロン(:)を使用して各項目を区切ります。絶対パスを使用する必要があります。
    modify アクションで添付ファイルを指定した場合は、指定した添付ファイルが既存の添付ファイルに追加されます。既存の添付ファイルが削除されることはありません。
    Categories フィールドでは、連絡先のカテゴリのコンマ区切りリストを指定できます。
    DisplayAs フィールドを指定しない場合、表示名は FirstName, LastName に設定されます。

使用方法

cfexchangecontact タグは、Exchange サーバー上の連絡先レコードを管理します。次のアクションを実行するには、cfexchangecontact タグを使用します。

  • 連絡先を作成する。
  • 連絡先を削除する。
  • 姓、役職、自宅電話番号などのフィルタ条件に一致する連絡先レコードを取得する。
  • 特定の連絡先レコードの添付ファイルを取得する。
  • 既存の連絡先を修正する。
    このタグを使用するには、Exchange サーバーに接続する必要があります。複数の連絡先レコードを作成する場合のように、Exchange サーバーとやり取りするタグを複数使用する場合は、cfexchangeconnection タグを使用して永続的な接続を作成します。その場合は、個々の cfexchangecontact タグで接続識別子を指定します(タスク、連絡先、メールなどにもアクセスする場合は、その他の ColdFusion Exchange タグでも接続識別子を指定します)。これにより、タグごとに接続を作成して閉じる必要がなくなるので、システムの負荷が軽減されます。または、ColdFusion が 1 つの cfexchangecontact タグを処理する間だけ持続する一時的な接続を作成することもできます。その場合は、cfexchangecontact タグで接続属性を直接指定します。接続属性について詳しくは、cfexchangeconnection タグの open アクションを参照してください。

attachmentPath 属性

次のシンタックスを使用して、メモリ内の attachmentPath ディレクトリを指定します。メモリ内のファイルはディスクに書き込まれないため、一時的データの処理が早くなります。

attachmentpath = “ram:///filepath”

パスには、ram:///petStore/orders/messageAttachments のように複数のディレクトリを含めることができます。ファイルを指定する前に、パスに含まれるすべてのディレクトリを作成しておく必要があります。メモリ内ファイルの使用方法について詳しくは、『ColdFusion アプリケーションの開発』の ColdFusion アプリケーションの最適化メモリ内ファイルの使用を参照してください。

delete アクション

delete アクションを指定する場合は、削除する連絡先を識別する Exchange UID のコンマ区切りリストを uid 属性で指定する必要があります。指定する UID 値を確認するには、適切なフィルタ式を指定した get アクションを使用します。
cfexchangecontact タグで指定した UID がすべて無効な場合は、エラーが発生します。1 つでも有効な UID が含まれる場合は、無効な UID が無視され、有効な UID に対応する項目が削除されます。

get アクション

get アクションを指定すると、name 属性で指定したクエリオブジェクトに、取得した連絡先ごとのレコードが格納されます。クエリオブジェクトには、contact 属性構造体のフィールドと同じ名前およびデータ形式を持つ列が含まれています。ただし、次の点が異なります。

  • クエリオブジェクトにはブール型の HasAttachment 列が含まれ、Attachments 列は含まれません。HasAttachment フィールドが yes の場合は、getAttachments アクションを使用して添付ファイルを取得します。
  • クエリオブジェクトには、Exchange サーバーに存在する連絡先レコードの一意の ID を含んだ UID 列が追加されます。getAttachments、delete および modify アクションでは、この uid 属性の値を使用して必須レコードを識別します。
  • クエリオブジェクトには HtmlDescription 列が追加されます。Description 列にはプレーンテキスト形式の説明が格納され、HtmlDescription 列には HTML 形式の説明が格納されます。
    取得するメッセージを指定するには、子の cfexchangefilter タグを使用します。詳しくは、cfexchangefilter を参照してください。

getAttachments アクション

getAttachments アクションを使用する場合は、1 つの UID と name 属性を指定します。cfexchangecontact タグにより、指定した名前のクエリオブジェクトにデータが入力されます。各レコードには、UID で指定した連絡先の添付ファイルに関する次の情報が含まれます。

列名

説明

attachmentFileName

添付ファイルのファイル名です。

attachmentFilePath

サーバー上の添付ファイルの絶対パスです。attachmentPath 属性を省略すると、この列には空の文字列が入ります。

CID

添付ファイルの content-ID です。通常は、メッセージにイメージを埋め込むために HTML の img タグ内で使用します。

mimeType

添付ファイルの MIME タイプです(text/html など)。

isMessage

添付ファイルがメッセージかどうかを指定するブール値です。

size

添付ファイルのサイズです(単位:バイト)。

添付ファイルは attachmentPath 属性で指定したディレクトリに保存されます。attachmentPath 属性を省略すると、添付ファイル自体は取得されず、添付ファイルに関する情報が取得されます。この方法を使用すると、添付ファイルの取得に伴うオーバーヘッドを発生させることなく、添付ファイルを調べることができます。メモリ内の attachmentPath ディレクトリを指定するには、次のシンタックスを使用します。メモリ内のファイルはディスクに書き込まれないため、一時的データの処理が速くなります。

attachmentpath = “ram:///path”

パスには、ram:///petStore/orders/messageAttachments のように複数のディレクトリを含めることができます。ファイルを指定する前に、パスに含まれるすべてのディレクトリを作成しておく必要があります。メモリ内ファイルの使用方法について詳しくは、『ColdFusion アプリケーションの開発』の ColdFusion アプリケーションの最適化の「メモリ内ファイルの使用」を参照してください。
getAttachments アクションは、Exchange のサーバー設定で EWS(Exchange Web サービス)の認証が basic に設定されている場合にのみ有効です。IWA(Integrated Windows Authentication)はサポートされていません。

modify アクション

modify アクションを指定する場合は、uid 属性で 1 つの Exchange UID を指定する必要があります。contact 構造体では、変更するフィールドのみを指定する必要があります。指定しないフィールドは変更されません。
連絡先に添付ファイルがある場合、連絡先を修正するときに添付ファイルを指定すると、新しい添付ファイルが既存の添付ファイルに追加されます。添付ファイルが置き換えられることはありません。添付ファイルを削除するには、deleteAttachments アクションを使用します。

この例では、ユーザーがフォームに情報を入力し、その情報を使用して Exchange サーバーに連絡先を作成します。

<! --- 連絡先情報を保持する構造体を作成する。--->
<cfset sContact=“#StructNew()#”>

<! --- 連絡先情報の自己送信フォーム --->
<cfform format="flash" width="550" height="460">
<cfformitem type="html"><b>Name</b></cfformitem>
<cfformgroup type=“horizontal” label=“”>
<cfinput type=“text” label=“First” name=“firstName” width=“200”>
<cfinput type=“text” label=“Last” name=“lastName” width=“200”>
</cfformgroup>
<cfformgroup type=“VBox”>
<cfformitem type=“html”><b>Address</b></cfformitem>
<cfinput type=“text” label=“Company” name=“Company” width=“435”>
<cfinput type=“text” label=“Street” name=“street” width=“435”>
<cfinput type=“text” label=“City” name=“city” width=“200”>
<cfselect name=“state” label=“State” width=“100”>
<option value=“CA”>CA</option>
<option value=“MA”>MA</option>
<option value=“WA”>WA</option>
</cfselect>
<cfinput type=“text” label=“Country” name=“Country” width=“200” Value=“U.S.A.”>
<cfformitem type=“html”><b>Phone</b></cfformitem>
<cfinput type=“text” validate=“telephone” label=“Business” name=“businessPhone”
width=“200”>
<cfinput type=“text” validate=“telephone” label=“Mobile” name=“cellPhone”
width=“200”>
<cfinput type=“text” validate=“telephone” label=“Fax” name=“fax” width=“200”>
<cfformitem type=“html”><b>Email</b></cfformitem>
<cfinput type=“text” validate=“email” name=“email” width="200">
</cfformgroup>

<cfinput type=“Submit” name=“submit” value=“Submit” >
</cfform>


<! --- フォームが送信されたら、連絡先構造体にフォームのデータを入力する。--->
<cfif isDefined("Form.Submit")>
<cfscript>
sContact.FirstName=Form.firstName;
sContact.Company=Form.company;
sContact.LastName=Form.lastName;
sContact.BusinessAddress.Street=Form.street;
sContact.BusinessAddress.City=Form.city;
sContact.BusinessAddress.State=Form.state;
sContact.BusinessAddress.Country=Form.country;
sContact.BusinessPhoneNumber=Form.businessPhone;
sContact.MobilePhoneNumber=Form.cellPhone;
sContact.BusinessFax=Form.fax;
sContact.Email1=Form.email;
</cfscript>

<! --- Exchange に連絡先を作成する --->
<cfexchangecontact action="create"
username ="#user1#"
password="#password1#"
server="#exchangeServerIP#"
contact="#sContact#"
result="theUID">

<! --- 連絡先が追加されたことの確認を表示する。--->
<cfif isDefined("theUID")>
<cfoutput>Contact Added.UID is#theUID#</cfoutput>
</cfif>
</cfif>

username と password を使用した例

<cfscript>

	domain = &quot;exchange.com&quot;
	contact.email1 = &quot;john@example.comm&quot;
	contact.FirstName=&quot;John&quot;
	contact.Company=&quot;Adobe&quot;
</cfscript>
<cfexchangecontact action=&quot;create&quot; 
	  	username = &quot;user1&quot;  <! --- サンプル --->
		password = &quot;password1&quot;
		mailboxname =&quot;user1&quot;
		server = &quot;exchangeServerIP&quot;
		serverversion=&quot;version&quot;
		protocol=&quot;protocol&quot;
		contact = &quot;contact&quot;
		result = &quot;contactUID&quot;
		> 

	<! --- フィルターが複数の場合 --->		
<cfexchangecontact action=&quot;get&quot; 
		name=&quot;qContacts&quot; 
		username=&quot;user1&quot; 
		password=&quot;Password1&quot; 
		server=&quot;exchangeServerIP&quot; 
		serverversion=&quot;version&quot; 
		protocol=&quot;protocol&quot; 
		mailboxname=&quot;user1&quot;>
				
    <cfexchangefilter name=&quot;email1&quot; value=contact.email1>
    <cfexchangefilter name=&quot;company&quot; value=contact.Company>	
    <cfexchangefilter name=&quot;FirstName&quot; value=contact.FirstName>
</cfexchangecontact>
	<cfoutput>Number of records returned: qContacts.RecordCount<br></cfoutput>
	<cfoutput>email1: qContacts.email1</cfoutput><br>

	<! --- フィルターが 1 つの場合 --->		
	<cfexchangecontact action=&quot;get&quot; 
		name=&quot;qContacts&quot; 
		username=&quot;user1&quot; 
		password=&quot;Password1&quot; 
		server=&quot;exchangeServerIP&quot; 
		serverversion=&quot;version&quot; 
		protocol=&quot;protocol&quot; 
		mailboxname=&quot;user1&quot;>
				
		<cfexchangefilter name=&quot;FirstName&quot; value=contact.FirstName>
	</cfexchangecontact>
	<! --- 	<cfdump var=qContacts> --->
	
	<cfoutput>Number of records returned: qContacts.RecordCount<br></cfoutput>
	<cfoutput>FirstName: qContacts.FirstName</cfoutput><br>

<cfexchangecontact action=&quot;get&quot; 
		name=&quot;qContacts&quot; 
		username=&quot;user1&quot; 
		password=&quot;Password1&quot; 
		server=&quot;exchangeServerIP&quot; 
		serverversion=&quot;version&quot; 
		protocol=&quot;protocol&quot; 
		mailboxname=&quot;user1&quot;>
				
		<cfexchangefilter name=&quot;email1&quot; value=&quot;nosuchentiy@adobe.com&quot;>
</cfexchangecontact>
	
<cfoutput>Number of records returned: qContacts.RecordCount<br></cfoutput>

ヘルプをすばやく簡単に入手

新規ユーザーの場合

Adobe MAX 2025

Adobe MAX Japan
クリエイターの祭典

2025 年 2 月 13 日
東京ビッグサイト