首先结构一般是分为B/S(Browser/Server)和C/S(Client/Server)的,我们所用的是基于B/S结构的。
其中这里的B主要是一些控件的组成的页面,主要是由JScript控制的,
其中的S主要是由SSL代码控制的,又分为Server Script和Data Sources,首先来说说两者的一些区别(Server Script用SS代替,Data Sources用DS代替):
- 对于我们这个LIMS系统来说,最常用的操作就是对数据库的增、删、改、查,其中的“查”,也就是从数据库中读取数据的操作一般是由DS完成的,也就是把数据库中的数据“拿出来”,另外的三个增、删、改和一部分特定的需要返回结果的查询要用SS来实现,也就是对数据进行具体的操作。
- 对DS来说,比较注重结果,一般是需要返回数据的,通常是返回数据集,通常需要用GetDataSet()来实现,对与SS来说,比较注重过程,即对执行某一Sql语句的过程,通过用SqlExecute()函数来执行Sql语句,可以返回不同类型的数据,可以实现一些复杂的功能,
- DS设置接收值的方式是直接在该值后边写:=,而对于SS则是需要写:DEFAULT ,来实现设置默认值
- DS在执行SQL语句的时候,如果有需要用到接收到的参数,需要在SQL语句中把需要参数的地方用?标示,然后GetDataSet函数中通过数组传入相应的参数,而SS是直接在需要SQL的地方写?参数名?,已完成需要的操作。
- 对于本系统而言,使用DS和使用SS返回数据的方式是不一样的,用DS返回的数据一般是一个数据集,后台一般是先把返回的数据用XML规范对数据进行结构化处理,得到具有一定规范的XML文档,然后前端接收到之后再根据相应的规则对XML文档进行解析,而SS返回的数据没有用SML规范进行结构化处理,直接返回数据。(XML主要的用途就是分离数据和使用数据的应用程序,这样有利于数据数据的格式化传输)
- Server Script常用函数整理:
- :PARAMETERS 功能:按顺序获取传递过来的参数值,如:PARAMETERS SUPPCODE;
- :DEFAULT 功能:定义参数的默认值,如:DEFAULT SUPPCODE, "";
- :DECLARE 功能:自定义参数,如:DECLARE Exists;
- Sqlexecute() 功能:执行SQL语句
1 1 功能:执行SQL语句 2 2 参数:SQLExecute(SQL Statement, Datasource),SQL Statement为所执行的SQl语句;Datasource为数据源,一般不用写,默认为当前系统所连数据源。 3 3 返回值:如果执行select语句返回二维数组,其他语句返回逻辑值。
- RunSql() 功能:执行非SELECT的SQL语句,
1 1 功能:执行SQL语句,如runSQL("Insert into MATERIALS (MATCODE) values (?)",,{MATCODE});注:不能执行select语句 2 2 参数:RunSql( sSQLStatement, sConnection, aParameters ),SQL Statement为所执行的SQl语句;Datasource为数据源,一般不用写,默认为当前系统所连数据源;aParameters为要传递的参数列表。 3 3 返回值:返回逻辑值。
- ExecFunction() 功能:执行外部函数
1 1 功能:执行外部函数 2 2 参数:ExecFunction(ActionID, {Array of Parameters}),ActionID为调用函数路径名,可调用Server Script和Data Sources中的文件;Parameters为传递的函数值,在调用文件中接收。 3 3 返回值:调用函数返回的值
-
:PROCEDURE strName; 功能:内部调用的可执行程序的函数
:PARAMETERS n;
:ENDPROC;
DoProc(“strName”,{n});
1 1 功能:内部调用的可执行程序的函数 2 2 参数:DoProc(“<ProcName>”, [{<parameters array>}]); ProcName为调用程序名;parameters array为传递给调用程序的参数。 3 3 返回值:所调用程序返回的任何值
- :IF(); 功能:逻辑判断
:ELSE;
:ENDIF;
-
:BEGINCASE; 功能:分支选择
:CASE ;
:EXITCASE;
:OTHERWISE;
:ENDCASE;
- :RETURN 功能:返回值
- USRMES(); 功能:在Server Script和Data Sources中记录日志,
1 功能:在Server Script和Data Sources中记录日志,在IED环境Server Log中显示,不影响代码执行,例如: 2 :DECLARE TESTSTR; 3 TESTSTR := "AAA"; 4 USRMES("ParametersName",TESTSTR); 5 参数:USRMES("ParametersName ",TESTSTR); ParametersName为自定义显示名称,TESTSTR为要显示的变量名 6 返回值:字符串,在Server Log中显示
2. Data Sources常用函数整理:
- :PARAMETERS 功能:按顺序获取传递过来的参数值,设置默认值与Server Script有所不同,需在参数后直接指定。如FOLDERNO:='A00004412';
- :DECLARE 功能:自定义参数,如:DECLARE Exists;
- GetDataSet(); 功能:执行SQL语句的参数在数据库中返回一个数据集
1 功能:执行SQL语句的参数在数据库中返回一个数据集 2 参数:GetDataSet( strSQL, arrParamsValues, bWithSchema)。strSQL所执行的SQL语句;arrParamsValues为传递到SQL语句中的参数,非必须;bWithSchema一般不用,默认为True。例如: 3 :PARAMETERS MATCODE:='', STARTDDATE:='', 4 EXPDATE:=''; 5 :DECLARE strSQL, strToday; 6 strSQL := "SELECT * FROM MFGINSTRUCTIONS 7 WHERE (EXPDATE is NULL and MATCODE=?) or (MATCODE=? and STARTDDATE <= ? and EXPDATE >= ? )"; 8 :RETURN GetDataSet( strSQL, { MATCODE, MATCODE, 9 Today(), Today() }); 10 返回值:DataSet数据集
- GetDataSetFromArray() 功能:从数组返回数据集
1 参数:GetDataSetFromArray( arrValues, arrFields )。arrValues,二维数组;arrFields,可选的,为返回数据集中与二维数组对应的字段名,默认为Field1, Field2…依次往后。也可自定义字段名,但字段名需与二维数组的列数相同,如少于列数则只返回定义字段的数据。 2 返回值:DataSet数据集
- LSearch(); 功能:用于搜索字段值。
1 功能:用于搜索字段值。该函数使用一个SQL SELECT表达式来查找特定字段的值并返回该值,如果字段值不存在,默认返回值,如果搜索多个字段则返回第一行的第一列。例如: 2 Lsearch("Select MATNO from MATERIAL where ORIGREC = 5","No Material", "DATABASE") 3 返回ORIGREC =5的MATNO字段值, 否则返回 "No Material"。 4 参数:Lsearch(SELECT Expression, Default, Database)。Expression为执行的Select语句;Default为返回的默认值;Database为数据源,一般不用设,默认为当前数据库。 5 返回值:字段值或默认值
3. 客户端常用函数整理:
- function Form1_OnInit(sender, eventArgs ) 功能:当窗体初始化时执行此函数中代码
View Code
- function Form1_OnLoad(sender,eventArgs ) 功能:当窗体加载时执行此函数中代码
View Code
- function Form1_OnShow( sender, eventArgs ) 功能:当窗体显示时执行此函数中代码
View Code
- function Form1_OnClose( sender, eventArgs ) 功能:当窗体关闭时执行此函数中代码
View Code
- form.ShowModalDialog() 功能:调用窗体
View Code
- form.ShowModalDialog() 未用过,待定。
- lims.CallServer() 功能:调用Server Scripts端代码
View Code
- lims.GetData() (注意与下面Lims.GetDataSource的区别)
View Code
- lims.GetDataSource() 功能:调用Data Sources端代码
View Code
- lims.GetDataSet() 功能:调用Data Sources端代码
View Code
- dgDataGrid.Refresh() 和 dgDataGrid.RefreshEx() 区别为:
View Code
- form.formArguments 功能:调用Data Sources端代码
View Code
-
form.returnValue 功能:返回值给调用窗体
View Code
- form.Variables 功能:当前窗体的全局变量
View Code
- navigator.Variables["STARLIMSDEPT"] 功能:Application的全局变量,在当前Application任意处定义,可在任意处取值。
View Code
- Dialogs.MessageBox() 功能:弹出消息对话框
View Code
- alert() 功能:显示变量或对象值,常用于调试
View Code
-
Try{} catch( ex :Exception){} 功能:异常处理,类似于java中的异常处理