Adobe ColdFusion 8

cfexchangetask

描述

创建、删除、修改和取得 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

所有

必选

 

命令的动作.必须是以下值之一:

  • create
  • delete
  • deleteAttachments
  • get
  • getAttachments
  • modify

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,下面的值就被设置成:

  • Status 值被设置成 Completed
  • 如果 DateCompleted 值还没有设置,那它就会被设置成当前日期。

如果你把该值设置成一个小于100的数字,那么下面的值就被设置成:

  • 如果Status 域被设置为Completed,那么 Status 被设置为 In_Progress
  • DateCompleted 的值被清空。

Priority

以下值之一:

  • low
  • normal
  • high

ReminderDate

一个字符串,日期格式,在ColdFusion里是有效的。

StartDate

一个字符串,日期格式,在ColdFusion里是有效的。当你创建了一个人物的时候,默认值默认是当前日期。

Status

以下的值是有效的: Not_Started, In_Progress, Completed, Waiting, 或 Deferred.

如果你忽略了这个域 ,而且 PercentCompleted 值小于100, 那么 Status 值就被设置到 In_Progress

如果你忽略了 Completed域,下面的值也同样被设置:

  • PercentCompleted 值被设置为 100。
  • 如果 DateCompleted 值没有被设置,它就被设置为当前日期。

如果你没有把这个域的值设置为 Completed,下面的值同样被设置:

  • 如果 PercentCompleted field被设置为或者曾经被设置为100, PercentCompleted 值就重新被设置为零。
  • DateCompleted 值被设置为零 。

Subject

一个字符串

TotalWork

分钟数的数字,不得小于零。

用途

cfexchangetask 标签在Exchange服务器上控制任务 的记录。使用 cfexchangetask标签拉力运行以下动作:

  • 创建一个任务。
  • 删除一个或者多个任务。
  • 取得一个或者多个适合过滤器规格的任务记录,比如说 姓, 工作主题, 或是家庭电话号码,等等。
  • 取得一个指定任务记录的附件。
  • 修改现存的任务

为了使用这个标签,你必须有一个 Exchange 服务器的连接。如果你正在使用的多个标签和 exchange 服务器有互动,比如说如果你在创建一些任务记录, 你应该使用cfexchangeconnection 标签来创建一个永久连接。然后你在每一个cfexchangetask里制定连接标识符,或者是在其他的 ColdFusion Exchange 标签,如果你也登陆了 calendar entries, contacts, 或 mail的话。这样做就为每一个标签避免了创建和关闭连接的负荷。

相对来说,你可以创建一个临时的连接,它只持续用在ColdFusion 运行单个 cfexchangetask 标签的时间。这样做的话,你可以直接在cfexchangetask标签里指定连接属性。更多连接的细节,请看 cfexchangeconnection  标签。

delete

当你指定了删除动作的时候,你必须指定一个带有用逗号隔开的清单的uid属性,该清单里有一个或者多个指定删除的任务的Exchange UID。你可以使用get动作,用一个适当的过滤器表达式,来定义指定的 UID 值。

如果所有你指定的 UID都是有效的,cfexchangetask标签会生成一个错误。如果至少有一个 UID是有效的,该标签就会忽略三哟有无效的UID,并删除用有效的UID指定的items 。

get

当你指定了 get 动作的时候, 被命名属性指定的query对象包含了每一个检索任务的记录。 该 query 对象如果有同样名字的栏目,有被列为任务属性结构的清单的域的数据格式,就有以下的不同:

  • query 对象有一个 Boolean HasAttachment 栏目,没有附件栏目。如果 HasAttachment 域值是 yes,可以使用getAttachments 动作来检索附件。
  • query对象有一个附加的 UID 栏目,该栏目在Exchange服务器里有为任务的独特的标识符。你可以在指定了请求的任务的 getAttachments, delete, 和 modify 动作的uid属性里使用该值。
  • query对象有一个附加的HtmlMessage 栏目。 Message 栏目由一个纯文本版本的任务描述,而且 HtmlMessage 栏目包括了HTML 版本的描述。

你可以使用子标签 cfexchangefilter 来指定信息去取得。更多细节,请看 cfexchangefilter.

getAttachments

当你使用 getAttachments 动作的时候,你必须指定一个单个的UID 和一个命名属性。cfexchangetask 标签声明了一个被带有指定名字的命名属性指定的query对象,每一个记录都有指向被指定的任务的附件的信息记录。

栏目名

描述

attachmentFileName

附件的文件名。

attachmentFilePath

服务器上附件的绝对路径。如果你忽略了attachmentPath 属性,这个栏目就包含一个空的字符串。

CID

附件的 content-ID 。特别地在 HTML img 标签里使用,用来在信息里插入图片。

mimeType

附件的 MIME类型,比如说 text/html

isMessage

一个 Boolean 值,它指定了附件是否是一个信息。

size

附件的大小。

如果你忽略了 attachmentPath 属性, ColdFusion 不会取得任何的附件。它只取得关于附件的信息。这让你定义了事件的附件,而不用导致取得附件文件时造成负荷。

modify

如果你指定了修改动作,这 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#">