电子表格基于单元格的通知的制作方法

文档序号:6569903阅读:496来源:国知局
专利名称:电子表格基于单元格的通知的制作方法
电子表格基于单元格的通知背景诸如微软的EXCEL软件等电子表格软件用于模拟有时称作工作表、或工 作簿的纸面电子表格,在其中对预算、规划、建模及其它任务,可通过例如加 法、乘法等数学方式来对数字列进行运算。典型的电子表格软件用户界面在屏 幕上表现为行和列的矩阵,且该行和列的交叉称作"单元格"。单元格中可以 填入标签、数值或公式。标签是诸如"出租"和"销售总额"等描述性文本。 值是实际的数字数据,而公式则命令电子表格基于这些值执行特定的计算;例 如,公式SUM CELLS A5 TO A10 (将单元格A5到A10相加)可以使电子表 格软件将在第A列、第5到10行处找到的单元格相加。公式使得各单元格相 互关连,并且公式较易于创建。例如,可以仅仅指向某单元格并点击,并且随 后按下旨在影响该单元格的任意算术运算的键(+、-等)。例如,公式的创建 可以是"将该单元格的内容加上该单元格的内容除以在左边的下一单元格的内 容的商。"当添加或者改变了数字后,公式一般会自动地或者在用户的启动下(例如, 通过按下一个键)重新计算数据。这可以在所有多个单元格中造成重新计算的 "连锁"效应。由于任何单元格的内容都可以用任何其它单元格来计算,或者 可以被复制到任意其它单元格,因此可以将一个列的总和用作另一列中的详细 项目。例如,可以将来自一开支项列的总和放入一汇总列来示出所有支出。如 果明细列内的单元格的内容改变了,则其列总和也会改变,该列总和随后被复 制到汇总列,同时汇总总和也改变。这种连锁效应会让用户创建规划或模型、插入关于模型的不同假设(即, 改变参数)、并立即看到对帐本底线的影响。该"如果……怎样?"功能使得 电子表格对于预算、规划和其它基于等式的任务不可缺少。因此,该"如果…… 怎样?"功能使得用户能够改变诸如银行帐户随时间的增长等数学模型的诸如 利率等基本参数。类似地,该"如果……怎样?"使得用户能够改变诸如起始银行帐户余额等基本事实、诸如使用或不使用复合利率的公式来计算利息等与 单元格相互关连的公式、以及甚至单元格的名称,以便解决不同的数学场景。 因此,电子表格包括模型和计算形式的业务逻辑以及数据。工作流自始自 终都是项目中各个活动之间的关系集。活动是通过不同类型的触发关系来发生 关系的。活动可以通过外部事件或者通过其它活动来触发。存在适合从诸如MICROSOFT EXCEL工作薄等数据库工作薄中计算和提取值的许多业务工作 流场景。工作流进程通常与用户干预是异步的,因此需要在服务器自动化系统 上工作。软件驱动的工作流通常具有异步工作的需求,而不需要用户干预。电 子表格计算在自动化工作流中还不能被调用。此外,当今大量关键数据都驻留在电子表格中。该数据可以是计算、对外 部源的查询、打字输入、或其组合的结果。通常可取的是,随时间跟踪电子表 格中的特定值并基于值的变化来行动。目前,这需要周期性地打开该电子表格 或者使其保持被打开,并刷新计算以更新任意外部数据查询或易变公式,并随后可视地检查所关心的值。如果值还没有变化或者尚不满足要求动作的阈值, 则用户在打开和刷新电子表格上所花的时间就被浪费掉了。而且,即使满足了 阈值,用户在等待刷新并计算电子表格时的时间也被浪费了。注意力也是被浪 费的有价值的资源,因为该过程需要周期性的轮询。概述一种工作流包括利用了电子表格计算的活动。对于电子表格活动,执行如下操作将值设置到电子表格内、计算、以及从电子表格中提取值。因此,电 子表格计算被集成在工作流中,而无需用户干预。例如,电子表格计算可作为 自动化工作流中的步骤来调用。电子表格文件会在工作流期间重新计算。当工 作流完成以后,或者当电子表格活动被计算后,或者在一触发器被激活或者满 足阈值或条件时,可以发送通知(例如,可以通过电子邮件、即时消息等通知 用户,或者通知可以基于该通知采取行动的软件系统)。通知可以包括各种内容,包括计算出的工作薄、工作薄的统一资源定位符(URL)、触发该通知的 单元格的值、和/或预定值。可以获得并向电子表格提供来自工作流中的先前的活动的值(例如,设置、 修改或调整单元格的值)。然后可以使用这些所获得的值来重新计算电子表格。 而且,来自电子表格的值可以在工作流的后续部分中使用。同时,可以将任意 数量的电子表格活动合并到工作流中,并且一个电子表格活动可以向工作流中 的第二电子表格活动提供值。提供本概述以用简单的形式来介绍在下面的详细描述中将进一步描述的 一些概念。本概述并不旨在标识出所要求保护的主题的关键特征或必要特征, 也并不旨在用来限定该所要求保护的主题的范围。附图简述

图1是表示一示例性非限定性计算系统环境的框图;图2是表示一示例性网络环境的框图;图3是一示例工作流的框图;图4是一示例工作流过程的流程图;图5是另一示例工作流过程的流程图;图6是另一示例工作流过程的流程图;详细描述现参考附图,其中相同的标号表示相同的元素,将描述本发明的各个方面。 具体地,图1和相应的讨论旨在提供对其中可以实现本发明的更实施例的合适 的计算环境的简单、概括描述。尽管将在于服务器和个人计算机系统上执行的 计算模块的一般上下文环境中描述本发明,但本领域的技术人员应该意识到, 本发明也可以结合其它类型的计算机系统和程序模块来实现。一般而言,程序模块包括执行特定任务或实现特定的抽象数据类型的例 程、程序、组件、数据结构、和其它类型的结构。而且,本领域的技术人员将 了解,本发明可以用其它计算机系统配置来实施,其中包括手持式设备、多处 理器系统、基于微处理器的或可编程消费电子产品、小型计算机、大型计算机 等。本发明也可以在分布式计算环境中来实施,在其中可以用通过通信网络链接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于本地 和远程存储器存储设备两者中。现参考图1,将描述在本发明的各实施例中使用的计算机2的说明性计算机体系结构。图1中示出的计算机体系结构示出了常规的台式或膝上型计算机,其包括中央处理单元5 ( "CPU")、包括随机存取存储器9 (RAM)和只读 存储器("ROM" ) 11的系统存储器7、以及将存储器耦合到CPU 5的系统 总线12。包括如在启动期间帮助在计算机内的各个元件之间传输信息的基本例 程的基本输入/输出系统存储在ROM 11中。计算机2还包括用于存储操作系 统16、应用程序和其它程序模块的大容量存储设备14,下面将对此进行更详 细的描述。大容量存储设备14通过连接到总线12的大容量存储控制器(未示出)连 接到CPU 5。大容量存储设备14及其相关联的计算机可读介质为计算机2提 供非易失性存储。虽然在此包括的对计算机可读介质的描述指诸如硬盘或 CD-ROM驱动器等大容量存储设备,但本领域的技术人员应意识到,计算机可 读介质可以是能够被计算机2访问的任何可用介质。作为示例,而非限制,计算机可读介质可以包括计算机存储介质和通信介 质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模 块或其它数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不 可移动介质。计算机存储介质包括,但不限于,RAM、ROM、EPROM、EEPROM、 闪存或其它固态存储器技术,CD-ROM、数字通用盘("DVD")或其它光学 存储、磁带盒、磁带、磁盘存储或其它磁性存储设备、或可以用来存储期望信 息并可被计算机2访问的任何其它介质。根据本发明的各种实施例,计算机2可以使用通过诸如因特网等网络18 到远程计算机的逻辑连接在网络环境中运行。计算机2可以通过连接到总线12 的网络接口单元20连接到网络18。应意识到,也可以使用网络接口单元20 来连接到其它类型的网络或远程计算机系统。计算机2还可以包括输入/输出控 制器22,以用于接收和处理来自包括键盘、鼠标、或电子触控笔(图l未示出) 等多个其它设备的输入。类似地,输入/输出控制器22可以提供输出到显示屏、 打印机或其它类型的输出设备。多个程序模块和数据文件可以存储在计算机2的大容量存储设备14和RAM中,这可以包括适用于控制联网个人计算机的操作的操作系统16。大容 量存储设备14和RAM9也可以存储一个或多个程序模块。特别地,大容量存 储设备14和RAM 9可以存储电子表格应用程序10。而且,电子表格应用程序 IO可以用于生成、访问和修改例如工作薄24。根据本发明的一个实施例,电子表格应用程序10包括来自微软公司的 EXCEL电子表格应用程序。然而,应意识到,也可以利用来自其它制造商的 其它电子表格应用程序来体现在此描述或预期的各种方面。工作薄是由电子表格程序创建的文件,其包括一个或多个工作表(也可以 在此将工作表称为"电子表格")。工作表是在电子表格程序内被组织成行和 列并在屏幕上显示的单个页面。通过对这些特征的使用,用户可以创建财政和 数字问题和解决方案的模型。或者,例如,如果文件格式是公共的,例如为可 扩展标记语言(XML)文件格式,则例如可以通过编程来创建工作薄。可以显示电子表格文档。计算机的用户可以与电子表格的显示交互。也可 以允许用户请求在电子表格应用程序10中打开电子表格文件。响应于这种请 求,将启动电子表格应用程序IO,并且将由电子表格应用程序10来加载电子 表格文件。现参考图2,将描述示出了用于本发明的各个实施例的操作环境的网络体 系结构图。如图2所示,计算机2连接到网络18。同时连接到网络18的有服 务器34。服务器34包括服务器计算机,它可以包括前面参考图l描述的一些 或所有常规的计算组件。服务器34可以接收并响应于对存储在例如数据源30、 数据库42或其它存储设备等服务器34处的或该服务器34可访问的文档的请 求。可以向计算机2的用户提供界面,以便与可通过网络34来访问的电子表 格或工作薄交互。可以提供服务器的应用程序编程接口 ( "API"),以使该 API可用于启用与电子表格计算服务器32的通信。电子表格计算服务器32可 用于执行电子表格计算服务器程序40。电子表格计算服务器程序40包括例如 用于检索和计算诸如存储在数据库42中的工作簿44等电子表格的可执行程 序。在工作流中,当存在人为交预步骤时,用户可以使用电子表格应用程序 10,但是并不一定要有工作薄24的单独副本。有时,可能存在单独副本(例 如,服务器发送了包括该副本的电子邮件),并且有时用户可以使用程序10来査看服务器工作薄44。此外,构想了工作薄44可以驻留在任何地方,诸如 驻留在文件系统上,而非在数据库中。应意识到,在此处描述的本发明的各实 施例中,电子表格计算服务器程序40包括计算服务器,诸如来自微软公司的 EXCEL CALCULATION SERVER (EXCEL计算服务器)程序。然而,可以利 用在服务器计算机上的用于计算电子表格的其它程序。同时应意识到,计算服 务器42可以包括以上参考图1描述的许多常规硬件和软件组件。工作流包括活动。常规上,每一活动被串在一起来创建工作流,它是一顺 序过程,动作可通过该过程发生。电子表格具有可以随时间变化的易变数据。 理想的是扩展工作流,以便将电子表格计算活动作为工作流过程的一部分来展 示。图3是包括活动300、 310、 320、 330、 340、 350的示例工作流3的框图。 工作流可以包括例如用户界面入口点、执行活动和保存活动。虽然只示出了六 种活动,但构想了在工作流中可以包括任意数量的活动。提供了利用诸如 EXCEL计算等电子表格计算的活动,例如活动320。该工作流通过活动300 和310进展,然后对于活动320,执行对来自电子表格的值的计算和提取。因 此,电子表格计算被集成到工作流中而无需用户干预。例如,电子表格计算可 作为自动化工作流中的一个步骤来调用。在工作流期间,例如在活动320处, 重新计算电子表格文件。可以获得来自工作流中的先前的活动的值,并可将其提供给电子表格(例 如,设置、修改或调整单元格值)。然后可使用这些所获得的值来重新计算电 子表格。如图3所示,例如,可以将来自活动300和/或310的值提供给活动 320,活动320可将这些值用于其电子表格计算。而且,来自电子表格的值还可以在工作流的后续部分中使用。如图3所示, 例如,可以将在电子表格活动320处确定的值提供给活动330和/或340,以在 这些活动中使用。构想了可以将任何数量的电子表格活动合并到工作流中,并 且第一电子表格活动320可以向工作流中的第二电子表格活动350或任何其它活动提供值。当计算了电子表格活动以后,或者在激活触发器,或满足条件或 阈值时,例如,可以(例如通过电子邮件)通知用户,或者可以通知软件系统。 通知可以包括各种内容,包括计算出的工作薄、工作薄的统一资源定位符 (URL)、触发该通知的单元格的值、和/或预定值。通知过程本身可以被认为 是一活动。在这一实施例中,通知活动可以基于电子表格活动的结果来触发或 者通过其它方式来激活或调用。通知可以基于满足某种阈值或条件的电子表格单元格中的值来设置。因 此,例如当电子表格单元格变化时,可以例如通过电子邮件来通知用户,或者 可以通知软件系统。可以例如在特定的时间、以预定的间隔、或者分离触发等 来刷新和计算电子表格。相对预先配置的阈值来评估特定单元格。如果满足阈值,则理想地或者用电子邮件、即时消息的形式、或者用对web服务或对象模型的调用、编程调用等的形式来触发通知。接收电子邮件的用户相似知道已经 满足阈值后,可以采取动作。类似地,接收通知的软件系统可以基于该通知来 采取动作。在未满足阈值的情况下,时间并没有被用户浪费,因为操作是由系 统在没有用户干预的情况下执行的。作为要使通知基于一个或多个单元格值的 替换,可以使通知基于工作簿已被计算的事实,或者可以使其基于工作流的状 态。一示例性触发器类型是电子表格文件的创建或编辑。例如,假设用户向开 支报告文档库提交了一新的开支报告电子表格文件。结果,工作流激活了,并 且例如如果该开支报告总和超过某一阈值,则会将通知发送给管理器。理想的是提供一用户界面,使用户可以标识电子表格中他想要跟踪的特定 单元格,并使用户可以定义阈值和要采取的动作(电子邮件等)。用户还可以 指定要在哪个时间表或事件上刷新和计算电子表格,并评估所跟踪的值。例如,假设提供了基于来自后端系统的数据计算仓库存货,并且在工作薄中预告计算的电子表格。用户能够设置诸如EXCEL CALCULATION SERVER 等系统、在每天上午刷新工作薄、并相对预定阈值(例如,值或公式)检查存 货的数量,而非每天上午都投入工作并加载工作簿、刷新数据并检查数字。在 存货还处于检查中的所有日子期间,用户不需要打开电子表格并花费时间来手 动加载、刷新、重新计算和检査值。当满足阈值时,用户将从EXCEL11CALCULATION SERVER接收电子邮件的通知。或者,例如, 一自动存货补 给系统将得到重新进货的通知。构想了可以在工作流完成时提供通知。图4是一示例性过程的流程图。该工作流使得能够调度计算,并且使得能 够自动计算电子表格。可以提供一用户界面来接收输入参数。也可以提供通知。 例如,通知可以基于电子表格中单元格的值来提供。通知可以在如文件变化时 和/或按照调度的启动。计算电子表格,并针对条件检査输出,然后基于该结果, 将通知发送到例如预定的用户或地址。在步骤400处,例如由用户、应用程序或进程来启动工作流。例如,电子 表格的创建或编辑可以启动工作流。在步骤410处,可以通过例如用户界面向 用户提供表单。该表单可以在本地、或者例如通过网络在服务器处、或者以部 分地在本地且部分地在远程的方式生成并提供。在步骤420处,用户可以输入 关于执行的信息(例如,参数、几个单元格的值、保存路径或选项、输出格式、 通知递送方法等)。这种信息可以被本地和/或远程地存储(例如在服务器处、 通过网络等)。随后,在步骤430处,该工作流开始。在步骤440处,例如以顺序的次序处理并执行该工作流中的活动。在步骤 450处,调用工作流中的电子表格活动。在步骤455处,将在步骤420处从用 户接收到的或者从工作流中的先前的活动接收到的值设置到电子表格中。在步 骤460处,工作流自动计算电子表格的值。工作流活动可以使用输入参数设置、 单个标量输出值、和可任选的保存为,连同例如快照能力一起计算。构想了例 如处理和计算可以本地和/或远程地(例如在服务器处,通过网络等)执行。在 一实施例中,电子表格活动是由加载、参数化、并执行EXCEL工作簿的EXCEL CALCULATION SERVER提供的工作流活动,从而将工作簿的结果返回给工 作流以供进一步处理。更具体地,可以使用诸如EXCEL CALCULZTION SERVER等电子表格程 序来加载、参数化和执行工作流活动。因此,工作流加载活动、允许设置输入 参数、以及计算电子表格,包括刷新外部数据。执行活动在其被调用时,诸如 在打开电子表格、设置参数和值、以及计算(刷新或重新计算)电子表格时, 执行电子表格中的动作。基于这些值,确定是否应形成任何通知。这可以在例 如编程性触发器或工作流中实现。在计算了电子表格的值后,可以开始通知活动。例如,在步骤462处确定 是否已满足阈值或条件。例如,可以将一单元格的值与阈值比较。应注意,阈值可以来自或基于单元格。如果已满足阈值或条件,则在步骤465处提供通知。 如果尚不满足阈值或条件,则不提供通知。或者,例如,如果工作流中的活动 己结束,则可以提供通知。在步骤470处,活动可以随后显示输出值,或者可以将该计算保存在预定 位置处。而且,在步骤480处,可以将电子表格计算的结果提供给工作流以供 进一步使用和处理。应注意,对是否满足阈值或条件的确定可以在该示例过程 的任何地方执行,诸如可以在步骤470以后或者在步骤480以后执行。在一示 例实施例中,可在工作流完成时提供通知。图5是另一个示例过程的流程图。图5包括类似于前面参考图4描述的元 素。这些元素被同样地标记,并且为简单起见省略其描述。在图5中,并非在 一接收到信息(步骤420)就开始工作流(步骤430),而是例如在步骤422 处调度工作流在某个时间或在一特定事件发生时开始。该调度的时间或事件可 以由例如用户、应用程序或进程来提供。可以选择以例如一特定日期/时间开始 的频率(例如, 一次、每小时、每天、每星期等)。在步骤426处,当调度的 时间或事件到来时,则在步骤430处开始工作流。通过这种方式,可以推迟或 延迟工作流,直到例如接收到供以后在工作流中使用的附加数据。通知活动以 类似于前面参考图4所阐明的方式继续。图6是示例通知过程的流程图。工作流例如按照调度的事件在步骤600 处开始。在步骤610处,计算电子表格中单元格的值,并随后在步骤620处检 索该值。例如,EXCEL CALCULATION SERVER可以计算并检索单元格的值。 通知活动随后可以开始。在步骤630处,基于检索到的单元格的值,确定是否 已满足条件或阈值。如果满足,则在步骤640处提供通知,如果还不满足条件 或阈值,则在步骤650处不提供通知。在一示例实施例中,执行计算并保存结果。假设用户希望计算带有特定值 的复杂模型,并且这种模型要花很长时间来计算,从而束缚了客户端机器。用 户可以手动地启动该计算工作流。提供一表单,在该表单中参数化一些单元格 并设置结果文件名,然后开始工作流。用户还可以在表单中指明他是否想要通知。当文件准备好时, 一电子邮件通知将被发送给用户(可以附加该文件,或 者可以发送URL),或者例如可以将可触发通知的各单元格的值附加到该通知。在另一个示例实施例中,可以调度计算,例如用于随后的离线查看。例如, 假设用户希望每天上午都计算电子表格工作簿,以反映前一天晚上的存货量。 可以将该电子表格工作簿在电子邮件中发送给用户。用户调度一计算工作流, 以使其每天上午4点在该文件上开始。每天上午,将该电子表格工作簿的更新 后的版本在电子邮件中发送给用户。取决于设置,这可以是电子表格工作簿的 快照,也可以是完整的电子表格工作簿。可以构建一工作流来例如打开电子表格、读取输出值、以及更新文件的文 档库中的特性。假设一文档库包括团队的开支报告,并且所有报告都使得总开支在单元格Sheetl:B2中。该库具有一 "总开支"列。只要一新的开支报告文 件被放入该库, 一工作流就激活,读取单元格Sheetl:B2,并更新该文件的"总 开支"特性,以使该值在文档库(doclib)视图中示出。提供了涉及单元格通知的一个示例。假设用户需要审计超过$1000的任何 已提交的开支报告。为了实现这个目的,他导航到开支应用程序会在其中放入 新的开支报告的doclib,并选择"修改设置和列",然后在接下来的页面中点 击"添加工作流"。用户将每次doclib中的档案变化时需要启动的"单元格通 知"工作流与doclib相关联。用户添加"开支总和"单元格名称、条件(>) 和值(1000)及其电子邮件别名来作为参数。现在,每次开支报告被放入doclib 时,该工作流就启动,检查条件,并且如果满足条件时,该用户会接收到电子 邮件。可以例如基于变化或按照所调度的来启动单元格通知。存在多种实现技术,例如合适的API、工具箱、驱动程序代码、操作系统、 控件、独立的或可下载的软件对象等,其使得应用程序和服务能够使用用于提 供和启动功能的系统和方法。在此描述的各种实现可以具有完全硬件、部分硬 件且部分软件、以及软件的方面。如在前面提到的,尽管结合了各种计算设备和网络体系结构描述了示例性 实施例,但该基本概念可以适用于使用工作流的任何计算设备或系统。例如, 本发明的算法和硬件实现可以被应用于计算设备的操作系统、作为设备上的独 立对象来提供、作为另一个对象的一部分、作为可重用的控件、作为可从服务器下载的对象、作为设备或对象与网络之间的"中间人"、作为分布式对象、 作为硬件、在存储器中、或前面的任意一个的组合等。尽管在此选择了示例性 编程语言、名称和示例来作为各种选择的表示,但这些语言、名称和示例并不 旨在是限制性的。本领域的普通技术人员将意识到,存在提供目标代码和命名 法的许多方法,这些方法可实现由各种实施例所实现的相同、相似或等效的功 能。如所提到的,在此描述的各种方法可以结合硬件、或软件、或者在合适的 地方使用两者的组合来实现。因此,此处的方法和装置、或其某些方面或部分可以采用包含在诸如软盘、CD-ROM、硬盘驱动器、或任何其它机器可读存储 介质等有形介质中的程序代码(即,指令)的形式,其中当将程序代码加载到 机器(诸如计算机)中并被该机器执行时,该机器就变成了用于实施本发明的 装置。对于在可编程计算机上执行程序代码的情况,计算设备一般包括处理器、 可被处理器读取的存储介质(包括易失性和非易失性存储器和/或存储元件)、 至少一个输入设备、和至少一个输出设备。可以实现或利用在此描述各个方面 的一个或多个程序优选地用高级过程语言或面向对象的编程语言来实现,以便 与计算机系统进行通信。然而,如果期望的话,程序可以用汇编语言或机器语 言来实现。在任何情况下,该语言可以是编译或解析的语言,并可与硬件实现 相结合。该方法和装置也可以借助以程序代码的形式体现的通信来实施,其中该程 序代码是通过某些传输介质(诸如,通过电线或电缆、通过光纤、或借助任何 其它传输形式)来传输的,其中,当接收到程序代码并将其加载到诸如EPROM、 门阵列、可编程逻辑器件(PLD)、客户端计算机等机器上并由这些机器来执 行该程序代码时,该机器就变成了用于实施本发明的装置。当在通用处理器上 实现时,该程序代码可与处理器结合来提供用于调用功能的唯一装置。另外, 任何存储器技术总是可以是硬件与软件的组合。尽管已经描述了优选实施例,但应了解,可以使用其它类似的实施例,或 者可以对所描述的实施例进行修改和添加,以便用于执行相同的功能,而不会 偏离这些实施例。应强调的是,尤其是在无线网络设备的数量持续增长时,包括手持式设备的操作系统和其它应用专用操作系统等多种计算机平台是可以 预期的。虽然已经用结构特征和/或方法动作所专用的语言描述了本主题,但应了 解,所附权利要求书中所限定的主题并不一定要限于上面描述的具体特征或动 作。相反,以上所描述的具体特征和动作是作为实现权利要求书的示例性形式 来公开的。
权利要求
1.一种在工作流(3)中执行电子表格计算的方法,包括在所述工作流中调用电子表格活动(320,450);计算所述电子表格中与所述电子表格活动(320)相关联的值(460);以及基于预定的条件,提供基于单元格的通知(462,465)。
2. 如权利要求l所述的方法,其特征在于,提供所述通知包括如果所述 值与所述预定的条件匹配(462),则提供通知(465)。
3. 如权利要求2所述的方法,其特征在于,还包括在提供所述通知之前, 将所述值与所述预定的条件进行比较(462)。
4. 如权利要求l所述的方法,其特征在于,所述预定条件是工作流活动 的终止(630)。
5. 如权利要求l所述的方法,其特征在于,所述通知包括发送电子邮件、 即时消息、或者对web服务或对象模型的调用(465)。
6. 如权利要求l所述的方法,其特征在于,所述通知包括各种内容,所 述内容包括计算出的工作簿、工作簿的统一资源定位符(URL)、触发所述通 知的单元格的值、和预定值中的至少一个(465)。
7. 如权利要求l所述的方法,其特征在于,还包括在计算所述值(460) 之前接收关于如何提供所述通知的指示(465)。
8. 如权利要求l所述的方法,其特征在于,还包括在所述工作流中调用 所述电子表格活动(400)之前,创建或编辑电子表格。
9. 如权利要求l所述的方法,其特征在于,所述工作流(3)包括后续活 动(350),并且所述方法还包括向所述后续活动(350)提供所述值。
10. 如权利要求l所述的方法,其特征在于,所述工作流(3)包括前导 活动(310),并且所述方法还包括在计算所述值之前所述前导活动(310)向 所述电子表格活动(320)提供信息。
11. 一种在工作流(3)中执行电子表格计算的方法,包括调度包括电子表格活动(320)的所述工作流(3)按照一调度的事件开始 (422);按照所述调度的事件的发生(426)开始所述工作流(3); 在所述工作流中调用所述电子表格活动(320, 450); 计算电子表格中与所述电子表格活动(320)相关联的值(460);以及 基于一预定条件,提供基于单元格的通知(462, 465)。
12. 如权利要求ll所述的方法,其特征在于,提供所述通知包括如果 所述值与所述预定条件匹配,则提供所述通知(462, 465)。
13. 如权利要求ll所述的方法,其特征在于,所述预定条件是工作流活 动的终止(630)。
14. 如权利要求ll所述的方法,其特征在于,所述通知包括发送电子邮 件、即时消息、或者对web服务或对象模型的调用(465)。
15. 如权利要求ll所述的方法,其特征在于,所述通知包括各种内容, 所述内容包括计算出的工作簿、工作簿的统一资源定位符(URL)、触发所述 通知的单元格的值、和预定值中的至少一个(465)。
16. 如权利要求ll所述的方法,其特征在于,调度所述工作流包括通 过由用户提供的数据接收关于所述调度的事件的信息(410, 420)。
17. 如权利要求ll所述的方法,其特征在于,所述调度的事件包括预定 时间(426)。
18. —种其上存储有数据结构的计算机可读介质,所述数据结构包括 第一数据字段,该第一数据字段包含表示工作流(3)中的第一活动(310)的数据;第二数据字段,该第二数据字段包含表示所述工作流(3)中的电子表格 活动(320)的数据;第三数据字段,该第三数据字段包含表示基于单元格的通知条件(462) 的数据;以及第四数据字段,该第四数据字段包含表示基于单元格的通知传送选项 (465)的数据。
19. 如权利要求18所述的计算机可读介质,其特征在于,所述通知条件 基于由所述电子表格活动计算出的单元格的值(462)或所述工作流的状态(630)。
20. 如权利要求18所述计算机可读介质方法,其特征在于,所述通知传 送选项是电子邮件、即时消息、或者对web服务或对象模型的调用(465)。
全文摘要
一工作流包括利用电子表格计算的活动。对于电子表格活动,可执行对来自电子表格的各个值的计算和提取。因此,电子表格计算被集成在工作流中,而无需用户干预。当工作流完成后,或者在计算了电子表格活动后,或者在满足阈值或条件时,可以(例如,通过电子邮件、即时信息等)通知用户或系统。可以获得并向电子表格提供来自工作流中的先前的活动的值(例如,设置、修改或调整单元格的值)。随后可以使用这些所获得的值来重新计算电子表格。而且,来自电子表格的值还可以用于工作流的后续部分。同时,可以将任意数量的电子表格活动合并到工作流中,并且一个电子表格活动可以向工作流中的第二电子表格活动提供值。
文档编号G06F17/24GK101326520SQ200680045933
公开日2008年12月17日 申请日期2006年12月5日 优先权日2005年12月8日
发明者D·Y·凯恩, D·巴塔金, E·梅格多, L·艾斯纳什, S·W·贝舍 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1