创建、删除、修改和取得 Microsoft Exchange 任务,并取得任务的附件。
注: 对于所有的动作,请看 cfexchangeconnection的附加属性,如果你不指定连接的属性的话。
create
<cfexchangetask
required
action = "create"
task = "#task information structure#"
optional
connection = "connection ID"
result = "variable for event UID">
delete
<cfexchangetask
required
action = "delete"
uid = "task UID,task UID, ..."
optional
connection = "connection ID">
deleteAttachments
<cfexchangetask
required
action = "deleteAttachments"
uid = "task UID"
optional
connection = "connection ID">
get
<cfexchangetask
required
action = "get"
name = "query identifier"
optional
connection = "connection ID">
getAttachments
<cfexchangetask
required
action = "getAttachments"
name = "query identifier"
uid = "task UID"
optional
attachmentPath = "directory path"
connection = "connection ID">
modify
<cfexchangetask
required
action = "modify""
task = "#task information structure#"
uid = "task UID">
optional
connection = "connection ID">
注: 对于所有的运行来说,如果没有指定连接属性,你需要查看使用的cfexchangeconnection的附加属性。如果你忽略了连接属性,你就必须在cfexchangecalendar标签里指定的cfexchangeconnection标签属性来创建一个临时连接。更多细节,请看 cfexchangeconnection 的“Open”命令。
注: 你可以在attributeCollection 中指定这个标签的属性,作为一个结构的value,在attributeCollection 中指定结构的名称,并使用这个标签的属性名称作为这个结构的Keys.
下面的表格提供了关于每个属性的细节信息。它列出了属性的名字,动作 (动作属性值) 给它所要提供、请求或选择、默认的动作,还提供了必要的属性细节描述和有效值。
|
属性 |
动作 |
必选/可选 |
默认 |
描述 |
|---|---|---|---|---|
|
action |
所有 |
必选 |
|
命令的动作.必须是以下值之一:
|
|
attachmentPath |
getAttachments |
可选 |
|
放置附件的卢姆的文件路径。如果目录不存在, ColdFusion 会创建一个。 注意: 如果你忽略了这个属性,ColdFusion 不会保存任何附件,如果你指定了一个相对路径,路径的根会是ColdFusion 的临时目录,该临时目录是用 GetTempDirectory 函数返回的。 |
|
connection |
所有 |
可选 |
|
Exchange 服务器上连接的名字, 在cfexchangeconnection 标签里指定。 如果你忽略了这个属性,你必须通过在cfexchangetask标签里指定cfexchangeconnection连接属性来创建一个临时的连接。 |
|
name |
get getAttachments |
必选 |
|
包含了返回的任务记录或者关于被检索的附件信息的ColdFusion query 变量的的名字。更多返回数据的信息,请看用途。 |
|
result |
create |
可选 |
|
包含了被创建的任务的UID的变量的名字。你可以在其他的动作的uid属性里使用这个值,这样就可以确定要运行的任务。 |
|
task |
create modify |
必选 |
|
一个结构的参考,包含了要被设置或者创建的 task 功能的值。你必须在井字号里(#)制定这个属性。更多事件结构的信息,请看使用方法。 |
|
uid |
delete getAttachments modify |
必选 |
|
Exchange UID 值,区分大小写,独特的指定了运行该动作的任务。对于删除动作来说,这个属性可以是一个用逗号隔开的 UID 值的清单。 deleteAttachments, getAttachments, 和修改动作只允许一个单独的 UID 值。 |
当你指定了创建或修改动作,任务属性必须指定一个包含了定义的事件的信息的结构。该结构可以有以下域。在设置和改动的时候必须只包含以下域。
|
栏目 |
描述 |
|---|---|
|
ActualWork |
分钟数。不能小于零。 |
|
Attachments |
包含在任务里的任何附件的路径名。为了指定多个文件,Windows里面的独特的文件路径要用分号隔开 (;), UNIX 和 Linux系统用冒号隔开 (:) 。 你必须用绝对路径。 如果你指定了一个或者多个修改动作的附件,这里就要添加给现存的附件,之前存在的附件不需要删除。 |
|
BillingInfo |
一个字符串 |
|
Companies |
一个字符串 |
|
DateCompleted |
ColdFusion里面一个有效的日期格式的字符串。 如果你忽略了这个域,把Status 域设置成完成,或者把 PercentCompleted field设置成100, 该值就设置成当前日期。 如果你设置了这个日期, Status 值就被设置到Completed而且PercentCompleted field 设置为100。 |
|
DueDate |
一个字符串,日期格式,在ColdFusion里是有效的。 |
|
Message |
一个包含了任务描述的字符串。 |
|
Mileage |
一个字符串 |
|
PercentCompleted |
一个数字,范围是 0-100. 如果你把这个域设置为 100,下面的值就被设置成:
如果你把该值设置成一个小于100的数字,那么下面的值就被设置成:
|
|
Priority |
以下值之一:
|
|
ReminderDate |
一个字符串,日期格式,在ColdFusion里是有效的。 |
|
StartDate |
一个字符串,日期格式,在ColdFusion里是有效的。当你创建了一个人物的时候,默认值默认是当前日期。 |
|
Status |
以下的值是有效的: Not_Started, In_Progress, Completed, Waiting, 或 Deferred. 如果你忽略了这个域 ,而且 PercentCompleted 值小于100, 那么 Status 值就被设置到 In_Progress。 如果你忽略了 Completed域,下面的值也同样被设置:
如果你没有把这个域的值设置为 Completed,下面的值同样被设置:
|
|
Subject |
一个字符串 |
|
TotalWork |
分钟数的数字,不得小于零。 |
cfexchangetask 标签在Exchange服务器上控制任务 的记录。使用 cfexchangetask标签拉力运行以下动作:
为了使用这个标签,你必须有一个 Exchange 服务器的连接。如果你正在使用的多个标签和 exchange 服务器有互动,比如说如果你在创建一些任务记录, 你应该使用cfexchangeconnection 标签来创建一个永久连接。然后你在每一个cfexchangetask里制定连接标识符,或者是在其他的 ColdFusion Exchange 标签,如果你也登陆了 calendar entries, contacts, 或 mail的话。这样做就为每一个标签避免了创建和关闭连接的负荷。
相对来说,你可以创建一个临时的连接,它只持续用在ColdFusion 运行单个 cfexchangetask 标签的时间。这样做的话,你可以直接在cfexchangetask标签里指定连接属性。更多连接的细节,请看 cfexchangeconnection 标签。
当你指定了删除动作的时候,你必须指定一个带有用逗号隔开的清单的uid属性,该清单里有一个或者多个指定删除的任务的Exchange UID。你可以使用get动作,用一个适当的过滤器表达式,来定义指定的 UID 值。
如果所有你指定的 UID都是有效的,cfexchangetask标签会生成一个错误。如果至少有一个 UID是有效的,该标签就会忽略三哟有无效的UID,并删除用有效的UID指定的items 。
当你指定了 get 动作的时候, 被命名属性指定的query对象包含了每一个检索任务的记录。 该 query 对象如果有同样名字的栏目,有被列为任务属性结构的清单的域的数据格式,就有以下的不同:
你可以使用子标签 cfexchangefilter 来指定信息去取得。更多细节,请看 cfexchangefilter.
当你使用 getAttachments 动作的时候,你必须指定一个单个的UID 和一个命名属性。cfexchangetask 标签声明了一个被带有指定名字的命名属性指定的query对象,每一个记录都有指向被指定的任务的附件的信息记录。
|
栏目名 |
描述 |
|---|---|
|
attachmentFileName |
附件的文件名。 |
|
attachmentFilePath |
服务器上附件的绝对路径。如果你忽略了attachmentPath 属性,这个栏目就包含一个空的字符串。 |
|
CID |
附件的 content-ID 。特别地在 HTML img 标签里使用,用来在信息里插入图片。 |
|
mimeType |
附件的 MIME类型,比如说 text/html |
|
isMessage |
一个 Boolean 值,它指定了附件是否是一个信息。 |
|
size |
附件的大小。 |
如果你忽略了 attachmentPath 属性, ColdFusion 不会取得任何的附件。它只取得关于附件的信息。这让你定义了事件的附件,而不用导致取得附件文件时造成负荷。
如果你指定了修改动作,这 uid 属性必须指定一个单个Exchange UID。任务结构只需要指定你改动的域。所有你没有指定的域都不会改动。更多任务结构的内容描述,请看属性章节。
如果一个任务有附件,当你修改任务的时候你指定了附件,新的附件就添加给预先的附件,不会覆盖他们。你必须使用 deleteAttachments 动作来移动任何的附件。
这个范例是一个动态连接来创建一个单个的任务:
<!--- Create a structure with the task fields ---> <cfscript> stask=StructNew(); stask.Priority="high"; stask.Status="Not_Started"; stask.DueDate="3:00 PM 09/14/2007"; stask.Subject="My New Task"; stask.PercentCompleted=0; Message="Do this NOW!"; </cfscript> <!--- Create the task using a transient connection. ---> <cfexchangetask action="create" username ="#user1#" password="#password1#" server="#exchangeServerIP#" task="#stask#" result="theUID"> <!--- display the UID to confirm that the action completed. ---> <cfdump var="#theUID#">