SM培训培训人:王鑫目录安装要求系统结构系统模块介绍系统界面介绍数据管理(Table)窗体(Form)链接(Link)用户管理(UserAdministration)事件管理(IncidentManagement)RAD调试器文档引擎全局列表菜单(Menu)系统安装要求Sm在windows下安装环境要求•Jdk1.5及以上•Oracle9i及以上•如果数据库服务器和sm服务器不是同一台机器,则要求sm服务器有oracle的客户端。系统结构SM的结构•基于java的开源平台。•允许增加和删除插件程序。目录安装要求SM的系统结构系统模块介绍系统界面介绍数据管理(Table)窗体(Form)链接(Link)用户管理(UserAdministration)事件管理(IncidentManagement)RAD调试器文档引擎全局列表菜单(Menu)系统界面介绍目录安装要求SM的系统结构系统模块介绍系统界面介绍数据管理(Table)窗体(Form)链接(Link)用户管理(UserAdministration)事件管理(IncidentManagement)RAD调试器文档引擎全局列表菜单(Menu)数据管理(table)数据表的定义•系统定义的数据表•创建表•所有表的名称使用字母,和数字,字母一般小写。•空格和特殊字符不允许出现的在表名称里面。•Sm预定义字符不能被使用•给表添加字段•字段名称不能重复。•字段名称为字母和数字,且已字母开头。•空格和特殊字符不能被使用。•Sm预定义字符不能被使用。•数据类型•添加键值系统语言•变量类型•全局变量(global):一般以$G.或者$lo.开头,可以由用户定义。•局部变量(local):一般以$L.开头,可以由用户定义。•线程变量(thread):一般是系统定义的变量,如:$file、$array$post等,在线程中使用。•Parent变量:一般以$P.开头,在线程中使用。用户一般不涉及使用。•当前文件变量当前文件变量是特指一类用于存储在显示和修改过程数据记录过程中的临时变量。常用的当前临时变量如下:•$L.filed–局部变量,用于DisplayApplication.•$file–局部变量,用于FormatControl和DataPolicy.•$File–局部变量,用于Links.•运算符算术运算符:+-*/逻辑运算符:not(~),and(&),or(|)字符串连接运算符:+关系运算符:,=,=,,=,~=(、),#(开始于),~#(非开始于)分隔符:;(多个变量和表达式写在一行,用分号隔开)•表达式和函数•表达式包括自定义的变量、操作符、系统函数等,表达式在sm平台里面使用非常的多,经常用于formatcontral和link等地方。•函数一般是系统预先定义的,用户只要使用就可以,但是用户也可以使用javascript来定义函数来完成某个功能,然后在具体应用的地方调用。练习1:创建一个新的数据表目录安装要求SM的系统结构系统模块介绍系统界面介绍数据管理(Table)窗体(Form)链接(Link)用户管理(UserAdministration)事件管理(IncidentManagement)RAD调试器文档引擎全局列表菜单(Menu)Form(窗体)内容:•1:FormsDesigner(窗体设计)•2:DynamicViewDependencies(动态窗体)•3:FormatControl(窗体控制)窗体设计(FormsDesigner)•从一个空白的画布新建窗体•从一个窗体创建一个数据表•使用窗体设计向导创建一个窗体•窗体和窗体设计•窗体的定义存储在format数据表里面。•每个窗体都关联一个数据表。•窗体显示的记录来自于数据表。•窗体是可以通过FormsDesigner(窗体设计器)来编辑和创建的。•创建窗体•两种方式创建窗体:–使用窗体向导–使用空白画布创建•使用窗体向导创建窗体•使用窗体向导创建窗体,必须是基于已有的数据表,才能创建。•创建的窗体可以用于一下两种不同的类型–用于显示单调记录详细信息–显示列表信息•使用空白画布创建窗体练习2:1、使用窗体向导创建窗体2、使用空白画布创建窗体动态窗体(DynamicViewDependencies)•理解动态窗体•动态窗体是窗体对象根据其他条件的设定而呈现的变化,称为动态窗体。动态窗体的例子如下(dep.g):•字段值的匹配与设置练习3:CreatingDynamicViewDependencies(创建动态窗体视图)窗体控制(FormatControl)窗体控制:一般是用来控制表单或者窗体的数据变化和流程的流转,还包括数据的验证和初始化等等。在sm里面是一个比较复杂的应用。每个form窗体可以对应一个窗体控制,对于一个数据表,可以指定一个主的窗体控制。contactsFormatControlcontacts•窗体控制的界面如下:•窗体控制的选项主要操作描述初始化表达式一般是在窗体被调用的时候就执行,主要是用来初始化一些变量和信息。查询主要是用来查询数据,查询结果一般用于本窗体控制。计算在满足某个条件后,需要执行的操作。JavaScript支持调用用户自定义的javascript验证对某个数据信息项进行校验,如是否为空等。子例程主要用于自动调用rad程序。•初始化表达式•计算•验证•子例程练习4WorkingwithFormatControl目录安装要求SM的系统结构系统模块介绍系统界面介绍数据管理(Table)窗体(Form)链接(Link)用户管理(UserAdministration)事件管理(IncidentManagement)RAD调试器文档引擎全局列表菜单(Menu)链接(Link)•Link:在form窗体里面使用了Fill和Find控件的话,则需要添加对应的link。1、使用Fill控件从目的数据复制到源数据。2、使用Find控件显示和编辑目的数据。3、在不同的数据表(table)的字段间定义链接(link)。4、链接(link)可分为:–简单链接:直接在link的首页定义,不涉及其他的控制。–复杂链接:需要在“选择行”页进行其他的定义,比如设置查询条件、多字段取数据等。5、可以为每个form(窗体)定义一个链接(link),也可以为一个table定义一个link,但是这个link必须和table同名,具有最高权限作用这个table关联的所有的form(窗体)。•链接(Link)记录•简单链接在首页直接定义,将源字段名称、目标文件名称、目标字段名称直接写入到某条记录里面即可。•复杂链接在“选择行”页里面定义查询条件,多字段的读取等操作。SecondPageFirstPage•控制变量$query变量是定义的查询,$fill.replace为系统定义的功能变量,以及一些表达式。•控制变量说明练习5:EstablishingLinks目录安装要求SM的系统结构系统模块介绍系统界面介绍数据管理(Table)窗体(Form)链接(Link)用户管理(UserAdministration)事件管理(IncidentManagement)RAD调试器文档引擎全局列表菜单(Menu)用户管理(UserAdministration)用户管理的内容包括创建和管理以下信息:–操作员–配置文件–用户角色–联系人–分配的工作组–功能字操作员和功能字操作员登陆系统的帐号常规安全启动设置登陆帐号的名称,配置信息以及其他的通用信息设置登陆帐号的密码、会话、ldap信息、用户锁定信息、模板信息等。定义用户登陆的rad应用的初始化信息、功能字信息,功能字信息用于用户登陆权限。•常规信息•选择菜单项包括对当前可以执行的操作•安全信息•启动信息功能字•通过“操作员”中的“执行功能”配置和操作员关联,或者在用户角色中配置功能字。功能字作用户登陆的全局权限。•该操作员登陆后,所执行的功能字功能返回值存储在$lo.ucapex全局变量中。练习6:创建一个操作员配置文件和用户角色配置文件•对操作员和组定义权限,把定义好的权限配置文件赋给相应的角色或者操作员。•控制登陆的应用。用户角色•配置各个模块的权限配置文件、启动参数及功能字。练习7:WorkingwithProfilesandRoles目录安装要求SM的系统结构系统模块介绍系统界面介绍数据管理(Table)窗体(Form)链接(Link)用户管理(UserAdministration)事件管理(IncidentManagement)RAD调试器文档引擎全局列表菜单(Menu)事件管理事件管理的流程•事件的创建和诊断•事件的派发•事件的解决•确认分析结果并关闭事件的创建和诊断事件创建后派发给相应的人或者工作组,由相应的人或者组去处理。事件管理的表和窗体表:•probsummary•activity窗体•IM.open.incident•IM.update.incident•IM.close.incident事件类别的和表单的配置RAD调试器RAD调试器介绍:•在调试的时候可以临时显示变量的值,设置变量的值,这样有助于理解并查找错误。•RAD调试器不能调试javascript。打开RAD调试器:点击窗口显示视图其他,选择“RAD调试器”。目录安装要求SM的系统结构系统模块介绍系统界面介绍数据管理(Table)窗体(Form)链接(Link)用户管理(UserAdministration)事件管理(IncidentManagement)RAD调试器文档引擎全局列表菜单(Menu)输入RAD调试器命令在命令输入窗口输入命令,按回车键返回的结果显示在上方。常用的RAD命令d(display):显示变量的内容。如:d$lo.ucapexx:定义变量,给变量赋值。如:x$L.var=“aaaaaaaaaaaa”gl(globals):显示所有的全局变量。v(variables):显示当前定义的所有线程变量。l(locals):显示当前定义的所有的局部变量。h(help):显示所有的RAD调试器命令。练习9:使用RAD调试器目录安装要求SM的系统结构系统模块介绍系统界面介绍数据管理(Table)窗体(Form)链接(Link)用户管理(UserAdministration)事件管理(IncidentManagement)RAD调试器文档引擎全局列表菜单(Menu)文档引擎概述:•文档引擎是系统管理员用来定义sm中表的处理规则的。文档引擎提供标准的模块操作,如:显示列表、查看、‘搜索。•文档引擎由对象、状态和处理组成,对象通过文档引擎来进行配置,在对象里面可以对某个表指定主窗体控制,一旦指定了主窗体控制,则对此表的所有操作都会受控于这个主窗体控制。同时对象配置里面还可以指定某个表的具体打开、关闭、搜索的状态。对象•对象与表是一对一的关系,表如果没有指定对象,则是默认使用DEFAULT对象。状态•定义一组处理动作,同时指定这个状态的显示屏幕。处理•定义一个处理动作,在状态中调用,动作包括使用rad表达式和应用、javascript等练习10:文档引擎目录安装要求SM的系统结构系统模块介绍系统界面介绍数据管理(Table)窗体(Form)链接(Link)用户管理(UserAdministration)事件管理(IncidentManagement)RAD调试器文档引擎全局列表菜单(Menu)全局列表•全局列表是预先定义的列表变量,可以在sm平台被调用。•一般用户不能对全局列表进行编辑和修改,只有管理员用户才有权限修改和编辑。全局列表界面主要项说明:•列表名:全局列表记录的唯一名称。•启动时重新构建列表:选择此项,在登陆的时候