lotusscript语言.doc
我们的成长来自用户的满意 1 Using LotusScript in domino application 第一章 LotusScript入门 LotusScript 介绍 A. 简单介绍: 一种嵌入式的、扩展的BASIC编程语言,基于面向对象的编程。 它支持在Lotus产品内以及跨Lotus产品进行面向对象的应用开发。 LotusScript绝大多数用于对象的事件中,编写一些复杂的程序。 例如:它可用于: Lotus Notes R4.0及更高版本 Approach 96及更高版本 Word Pro 96及更高版本 Lotus 1-2-3 97及更高版本 B. LotusScript的功能 LotusScript这种语言可以开发与C或C++兼容的应用程序 a) LotusScript可以执行循环、允许创建用户定义的数据类型,可以控制超出公式语言能力的程序 流程。(例如: ) LotusScript 允许执行的任务 A. 创建和删除数据库 B. 阅读和修改存取控制列表 C. 进行不知数据库名时,查找和处理数据库 D. 当不知域名时处理文档里的域值。 E. 创建和更新索引 F. 在用户进入或退出应用时采取行动。 G. 可以处理RTF格式的文本。 C. 公式语言与LotusScript语言的选择: a) 在任何时候,若是执行的任务存在相应的函数和命令时,使用公式。 (能用公式的用公式) b) 要进行复杂的程序控制和循环时,使用LotusScript c) 存取或操作储存的文档数据使用LotusScript,特别对于那些跨文档, 跨数据库存取的时候 d) 公式语言不能解决的功能,使用LotusScript可解决。 D. LotusScript编程环境介绍(事件驱动)“编程”窗格(如图1-1所示)包含下列主要部分: Lotusscript 的优点 快速开发工具 Java:只在代理中可以使用 Javascript:不能对 Domino 数据库中的数据进 行存取 结构化语言 Notes 平台主要的开发工具 也可以使用公式语言 如:@command([compase];”…”) @today 我们的成长来自用户的满意 2 信息列表 对象 参考 “参考”附签为所有在“编程” 窗格中可识别的编程语言提供了 上下文相关的帮助信息。 Script区域 用于编写程序脚本。Script区域可 以根据需要缩进和调整关键字的大 小写,从而自动进行转化 LotusScript格式。 “标题”栏 显示附加 编程语言的设计元素标题。双击该标题以将“编程”窗格最大化或最小化。 “运行”菜单 使用户可以选择所需的编程语言。 “错误”框 显示 LotusScript 和 Java 编译时的错误。 用户可使用“错误”框来查看在Script输入和编译过程中所发生的错误的信息。 “错误”框每次 只显示一个错误。如果希望查看其他的错误,可单击该框并从列表中选择错误。当从列表中选 择一个错误时,Script 区域内的光标指针将移到出现错误的一行程序上。 E. Lotus Script 的调试工具(Debug) 使用Debug,检测Script的执行,诊断问题. Debug 界面的介绍: 组成: 调试菜单调试活动的快捷键调试栏(调试Script的窗口、对象框、查看断点变量输出窗口) 调试:菜单“文件”=》 “工具”=》 “调试LotusScript” 介绍断点的运用 F. 事件介绍 Notes 中的LotusScript 脚本是事件驱动的。在对象中定义好的事件中,开发人员可编写执行公式、 LotusScript、JavaScript 和 Java 代码以响应在对象中发生的事件。 我们的成长来自用户的满意 3Domino中的对象有:数据库、代理、操作、视图、文件夹、表单、子表单、页面、域、热点按钮和热点 操作等。 Postopen 执行时间:打开之后 Postdocumentdelete 执行时间:将文档标记为删除之后 Queryclose 执行时间:被关闭之前时 Querydocumentdelete 执行时间:将文档标记为删除之前 Querydocumentundelete 执行时间:取消文档删除标记之前 Querydragdrop 执行时间:在视图中执行拖放操作之前 Postdragdrop 执行时间:在视图中执行拖放操作之后 Initialize 执行时间:数据库正在被装入时 Terminate 执行时间:数据库正在被关闭时 Regiondoubleclick 执行时间:双击日历视图中的区域时 Queryrecalc 执行时间:刷新之前 Queryaddtofolder 执行时间:将文档添加至文件夹之前 Querypaste 执行时间:文档被粘贴之前 Postpaste 执行时间:进行粘贴操作之后 Querydragdrop 执行时间:在日历视图中进行一个拖放操作之前 Postdragdrop 执行时间:在日历视图中进行一个拖放操作之后 Querymodechange 执行时间:更改文档模式之前 Postmodechange 执行时间:更改文档模式之后 Postrecalc 执行时间:刷新之后(重新计算数值) 4)域 Entering 执行时间:选中可编辑域时 Exiting 执行时间:取消选定可编辑域时 操作、按钮、热点 Click G. 事件的执行顺序 我们的成长来自用户的满意 4 在开始为对象的事件编写程序之前,对事件的执行顺序有一个深入的了解是十分必要的。 根据对象不同,我们将用户的操作分为四类:数据库相关的操作、视图相关的操作、文档相关的操作、 域和代理的操作。 练习:事件执行的顺序。 利用输出函数来测试事件执行的顺序 介绍输入、输出的函数;Box,Messagebox,Print H. 正下方是四个参数↓ 1