脚本,英文为Script。它是一种解释性的编程语言,是从主流开发编程语言(比如C、C++和PASCAL等)中提炼而来的。脚本程序在执行时,由系统提供的解释器,将其翻译成机器可识别的指令,顺序执行。
跨平台实时数据库提供了功能强大、使用简单的脚本系统,该系统是一种基于对象和事件的编程语言,可对各种数据对象,图形对象编程,实现处理计算和操作,达到一定控制和监视目的。
跨平台实时数据库的脚本根据作用域不同,主要分为以下几类:
数据库脚本是在跨平台实时数据库运行时执行,其动作往往与数据库相关,它的运行不依赖于客户端,而是数据库。数据库脚本包含数据库脚本及数据库自定义函数。数据库脚本在数据库运行时执行。即使运行环境退出,只要数据库在运行,数据库脚本就可执行。
数据库脚本
数据库自定义函数
客户端脚本在客户端运行界面中执行,动作往往是与画面运行相关的一些控制,比如画面的显示、隐藏等控制。客户端的脚本直接运行在客户端上,能直接控制图形对象属性,并对一些客户端的按键等事件给出响应。客户端脚本又细分为以下几种:
全局脚本运行在客户端中,它的有效周期伴随着客户端运行的整个过程,作用范围也覆盖了客户端所有窗口。
全局脚本
仅在脚本所在窗口为打开状态时才能执行。
如下所示,win1中设置的窗口脚本,仅在win1窗口打开时能够执行。
窗口脚本
仅在模板中有效,详细设置请参阅《跨平台实时数据库图形模板功能介绍》。
模板脚本
跨平台实时数据库提供了各种功能强大的控件,为了能充分发挥这些控件的功能,常常为它们提供对象脚本编辑器,以便通过脚本来灵活使用这些控件。每种对象的脚本详细操作请参阅跨平台实时数据库使用手册中各对象的使用说明。
根据作用时机不同,脚本分为以下几种(不同的作用域可使用的脚本时机类型不完全相同):
1、初始化脚本:在作用域初始化时执行。
2、周期脚本:在作用域内按照设置的周期重复执行。
3、关闭脚本:作用域退出时执行。
4、鼠标脚本:可为图元或部分常用控件设置动画连接-鼠标脚本。
鼠标脚本
按下:单击鼠标左键时执行。
周期:长按鼠标左键时周期执行。
释放:释放鼠标左键时执行。
双击:双击鼠标左键时执行。
进入:光标进入脚本所在图元或控件的区域时执行。
离开:光标离开脚本所在图元或控件的区域时执行。
各种类型的脚本编辑界面基本相同,以窗口周期脚本为例:
脚本编辑界面
空白矩形框内就是编写脚本的区域。在非周期脚本编辑器中,周期编辑框置灰。在空白区域内点击鼠标右键,弹出如下所示右键菜单。
脚本编辑器右键菜单
脚本助手:点击可调用脚本助手,详见后续章节。
变量选择:点击打开变量选择对话框,详见后续章节。
SQL查询向导:点击打开查询向导。详细请参阅《跨平台实时数据库查询向导功能介绍》。
复制:点击复制当前选中脚本内容,快捷键Ctrl+C。
剪切:点击剪切当前选中脚本内容,快捷键Ctrl+X。
全选:点击全选脚本内容,快捷键Ctrl+A。
粘贴:点击粘贴当前复制或粘贴的脚本内容,只有复制或剪切内容为文本时才能起作用,否则此操作无效,快捷键Ctrl+V。
重复:点击重复撤销内容,快捷键Ctrl+Y。
撤销:点击撤销上一步,快捷键Ctrl+Z。
跨平台实时数据库脚本的编写要遵循一定的语法要求。下面先介绍脚本语法中涉及到的一些概念:
变量和常量:数据运算的最基本单位。变量可以被初始化,可以被赋值。常量不能被赋值。
操作符:对数据实施运算的符号。
表达式:关键字、运算符、变量、字符串常数、数字或对象的组合。可用来执行运算和操作字符等操作。
赋值语句:为变量或属性赋值的语句。
条件语句:使用条件语句可以根据指定的条件控制脚本的执行流程。
多分支语句:使用多分支语句可以根据不同条件处理不同分支流程,它比条件语句更清晰。
循环语句:用于重复执行一组语句。
注释:用来解释代码如何工作的附加文本。
函数:为了方便您的使用,紫金桥®跨平台实时数据库不仅提供了丰富的函数,而且也提供了自定义函数功能。
注意:
1、在跨平台实时数据库中,脚本中使用的变量都需要先定义再使用。
2、在Linux系统中,用户需严格遵循软件中变量、语句、函数、类名大小写原则,否则无法编译通过。
3、在Windows系统中,可不区分大小写即可编译通过,但仅当用户遵循软件中变量、语句、函数、类名大小写原则时,软件会对输入内容进行自动标识(变色、加粗或斜体)。
4、跨平台实时数据库中类名无论哪种操作系统,都必须严格遵守大小写。
跨平台实时数据库脚本虽然简单易用,但记住所有的脚本语法、函数也是很困难的。为此,软件提供了脚本助手,帮助用户解决以上问题。
在脚本编辑框中右键单击后选择脚本助手命令后会弹出“脚本助手”窗口。
脚本助手
左侧列表树中提供了可在脚本中声明的类和各种系统函数;右侧分类列出了系统可用的操作符、数据类型和控制语句,鼠标移动到按钮上时会给出相关提示信息。在列表树上鼠标双击某项或在右边单击某项会将该项插入到脚本编辑环境中鼠标所在位置。
为提升脚本的便利性及稳定性,跨平台实时数据库脚本提供了多种智能提示,帮助用户能够更好更快地编写脚本,在提高效率的同时保证脚本准确无误。
系统智能提示有以下三种形式:
当用户输入任意字符(串)时,系统会将以该字符(串)开始的对象、函数、变量在列表框中显示。如当输入字符“a”时,软件将以“a”开头的对象、函数、变量等都显示在列表框中。可用键盘中的上下箭头移动选择,回车后选中的名称插入到鼠标位置,如下图:
智能提示-名称过滤
当用户在对象名后输入“.”时,会自动显示列表框,其中列出了该对象所有包含的对象、函数和属性。如下图所示:
智能提示-对象、函数和属性名称提示
当调用其它窗口的对象时可以用“窗口名.对象名”的方式,此时在对象名后输入“.”系统会将对象的所有包含的函数、属性在列表框中显示。
智能提示-对象、函数和属性名称提示
在脚本中输入函数时,系统会以提示信息的形式显示该函数的原型,包括函数的参数类型和数量。在依次输入函数各参数时,提示信息会将下一个将要输入的参数背景变成灰色,提示用户该参数的数据类型。如下图:
智能提示-函数原型提示
将鼠标移动到某个函数上并停留片刻后,系统自动显示列表框,框中显示出该函数的详细说明、用法及示例,列表框中的文字可复制。如下图所示:
函数原型提示-函数说明及使用方法
附录:
1、每条脚本语句都以英文分号“;”为结束标志。
条件语句、多分支语句及循环语句为固定格式,要严格按照脚本助手中的格式书写,结束的位置无需加分号。
条件语句、多分支语句及循环语句标准格式
2、编写脚本后保存时,系统会对脚本内容进行校验,若有错误,会将光标返回至第一处编写错误的位置。
编写错误:将字符串赋值给整型变量
光标返回至编写错误的位置
3、为防止脚本中存在错误的引用或者其他问题,可以使用窗口编译功能,找到错误位置。在要编译的窗口上右键,点击“窗口编译”,会自动弹出错误的脚本。
窗口编译