




已阅读5页,还剩39页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
前台程序说明1.1. 前台程序编程规范1.1.1. 基本要求1. 程序结构清析,简单易懂,单个函数的程序行数最好不要过多。2. 打算干什么,要简单,直接了当,代码精简,避免垃圾程序。3. 尽量使用标准库函数和公共函数。4. 不要随意定义全局变量,尽量使用局部变量。5. 表达式使用括号以避免二义性1.1.2. 可读性要求1. 可读性优先。2. 保持注释与代码完全一致。3. 每个源程序文件,都有文件头说明,说明规格见规范。4. 每个函数,都有函数头说明,说明规格见规范。5. 主要变量定义或引用时,注释能反映其含义。6. 常量定义有相应说明。7. 处理过程的每个阶段都有相关注释说明。8. 在典型算法前都有注释。9. 利用缩进来显示程序的逻辑结构,缩进量一致并以2个空格为单位。10. 循环、分支层次不要超过五层。11. 注释可以与语句在同一行,也可以在上行。12. 空行和空白字符也是一种特殊注释。13. 一目了然的语句不加注释。14. 注释的作用范围可以为:定义、引用、条件分支以及一段代码。15. 不要轻易用条件分支去替换逻辑表达式。16. 不要用晦涩的语句1.1.3. 结构化要求1. 禁止出现两条等价的支路。2. 少用GOTO语句。3. 用 IF 语句来强调只执行两组语句中的一组。禁止 ELSE GOTO。4. 用 CASE 实现多路分支。5. 避免从循环引出多个出口。6. 函数只有一个出口。7. 不使用条件赋值语句。8. 避免不必要的分支。1.1.4. 正确性与容错性要求1. 程序首先是正确,其次是优美2. 无法证明你的程序没有错误,因此在编写完一段程序后,应先回头检查。3. 改一个错误时可能产生新的错误,因此在修改前首先考虑对其它程序的影响。4. 所有变量在调用前必须被初始化。5. 对所有的用户输入,必须进行合法性检查。6. 不要比较浮点数的相等。7. 程序与环境或状态发生关系时,必须主动去处理发生的意外事件。8. 单元测试也是编程的一部份,提交联调测试的程序必须通过单元测试。1.1.5. 可重用性要求1. 重复使用的完成相对独立功能的算法或代码应抽象为公共控件或类或公共函数。2. 公共控件或类或函数应考虑面向对象的思想,减少外界联系,考虑独立性或封装性。1.1.6. 命名规则. 宏定义命名宏定义的命名由大写英文字母、数字和下划线组成,各单词之间用下划线“_”分开。宏定义的名字原则上应与后台server保持一致,以下为符合规范的宏定义名字:. 变量命名基本规则程序中所有变量的命名遵循以下的组成规则:+其中作用域名区分局部变量和全局变量;类型前缀名是单个或几个不同基本数据类型的组合,基本数据类型前缀名在以下各节作说明;变量的自定义名字由英文字母和数字组成,使用大小写字母区分各单词,首字符为大写英文字母。整个变量名的总长度不设限制(只要符合编译器的规定就行)。. 基本数据类型的前缀名 整型变量前缀名(包括Shortint, Smallint, Longint, Int64, Byte, Word, and Longword.)整型(integer,int64)变量的类型名为i,例如: iIntegerVar : integer; 单个字符型变量前缀名单个字符型(char,pchar)变量的类型名为c,例如:cCharVar : char; 字符串变量前缀名字符串变量的类型名为s,例如:sStringVar : string; 布尔型变量前缀名布尔型变量的类型名为b,例如:bBooleanVar : boolean;. 常用控件的命名:控件命名采用控件前缀+自定义命名控件类名控件前缀TActionList, TAction表示动作的列表项actTButton, TSpeedButton, TBitBtn等所有的按钮类btnTCheckBox, TDBCheckBox等所有的检查框chkTRadioButton单选按钮类rdoTToolBar工具条tbTMainMenu所有的主菜单类mmTMainMenuItem所有的菜单项类miTPopupMenu所有的弹出式菜单类ppmTPopupMenuItem所有的弹出式菜单项类pmiTLabel, TStaticText等所有用来显示的标签类lblTPanel等所有的面板类pnlTPageControl等所有的页式控件类pgcTEdit, TMaskEdit等所有的单行编辑框类edtTMemo, TRichEdit等所有的多行编辑框类mmoTDrawGrid, TStringGrid等所有的网格类grdTsmartGrid数据网格类dbgTAnimate等所有的动画类aniTImageList等所有的图片列表类imglTImage等图片类imgTChart图表类chtTComboBox, TDBComboBox等所有的下拉式列表框类cmbTListBox, TDBList等所有的列表框类lstTTreeViewtvTListViewlvTHotKeyhkTSplitter等所有的分隔符类sptTOpenDialog等所有的对话框元件类dlgTTable等所有的数据表类tblTQuery等所有的SQL查询类元件qryTClientDataSet所有的客户数据集元件cdsTDataSourcedsTDatabasedbTSockConnection,TDCOMConnection等连接元件类connTQuickRep, TFastReport等所有的报表元件类rptTDDEClientConv,TDDEClientItem等所有的DDE元件类ddeTMonthCalendar等所有的日历类calTGroupBox等控件类grp1.1.7. 用户界面 1) 系统主页要求美观大方,登录后的页面能体现系统的总体功能框架。控件的字体及色彩基调应该保持一致风格。2) 主页面采用MDI多文档管理窗口,菜单提供相应的快捷方式。子窗口初始化时,一律居中,禁用窗口最大化及可伸缩功能,提供窗口的最小化及关闭功能。3) 密码输入要用“*”屏蔽。4) 控件的名称或标题最好使用用户熟悉的字眼。5) 完成相同或相近功能的按妞用边框分隔起来,按钮要支持快捷方式。6) 完成同一功能或任务的元素在集中位置,减少鼠标移动的距离。7) 按TAB键自动切换的顺序应该与界面上控件的排列顺序保持一致。8) 按RETURN键和DOWN能自动进入TAB顺序的下一控件的焦点状态,按UP键能进入TAB顺序的上一控件的焦点状态。9) 界面上首先要输入的和重要的信息控件应该是TAB键顺序靠前,而且在比较醒目的位置,使对应控件在一开始就获得焦点。10) 分页界面的页面间可以用快捷键切换,顺序按重要程度和访问几率排列。11) 复选框和选项框按选择几率的高低先后排列,并且有默认的选项。12) 在新增和修改状态下关闭窗口或按退出按钮,提示是否保存修改。13) 对于编号、代号等的输入可以提供小按钮查询来得到,对可能有多种选择的提供向导。14) 安全性原则所有输入控件的值在提交前应该进行合法性验证,不合格的应提示原因。输入长度应该按数据库长度进行约束。首要排除可能会使应用非正常终止的错误,如:除零运算等,死循环、长度超过数据库定义的长度、含有特殊字符等。应当注意排除无意的无效数据录入,如数值形态的控件要防止录入字符等。应该避免未授权功能的使用及无意义的操作。对可能引起致命错误或系统出错的输入字符和动作要加以限制和屏蔽。日期采用统一的YYYY/MM/DD格式表示。而且日期的合理性必须得到验证。小数点的位数必须根据数据库字段的要求加以限制。费率等数值不能录入负数值。15) 合理性原则非法输入和操作应该有足够明确的提示说明,提示说明不能混淆和重复,如“不能输入大于600的数字”“数字应该小于或等于600”应该只保留其中一种说法。不能出现A处有A的说法,B处有B的说法,其实是一个意思。一些键盘或鼠标的屏蔽性的操作无须用消息框来显示提示信息,如控件只能输入数字、小数点、“-”,当输入字符时不需要有任何提示。提示或警告信息必须具有向导性,能告知用户错误原因,禁用惩罚性语言,自动使需改变的控件在第一时间内获得焦点。按钮的排列应该遵循新增、修改、删除、查询、退出等主题的排列顺序,在对应位置显示确认、取消按钮等。整个系统应该采用统一的界面按钮逻辑风格。删除的动作必须先有提示信息确认是否真正删除。如果执行的处理时间比较长要有相应进度条或者等待界面提示用户等待系统响应。按钮必须提供快捷方式,快捷键的取值符合客户共同习惯。16) 美观与协调性原则图形按钮的图标必须具有代表性,能产生感官上的功能认同。长宽的比较接近黄金分割定律。布局要合理切忌过于密集或过于空旷,合理利用空间。字体统一采用宋体小五号字大小,黑色。所有控件排列要力求整齐,左右都能对齐,Label内容一律右对齐,不要用冒号。前景色与背景色搭配要合理,,可以保持与Windows设置相一致,以便于根据客户喜好调整。from的背景色选clBtnFace.所有按钮大小相同,使用缺省的立体风格,功能相近的按钮放在一起,退出按钮一般放在右下角,与最右边的控件右边对齐。1.1.8. 数据说明及定义规范各常量、宏定义、自定义结构申明,函数原型说明应定义在相应的模块中,有关其命名方法请参见命名规则。能够使用局部变量解决逻辑问题的应尽可能使用局部变量,尽可能地少使用全局变量。源程序中一般不建议直接使用除零以外的常数(包括字符串常数),所有常数应该要么定义为常量、要么定义为宏,这将有利于源程序的维护。变量长度可以使用类似sizeof()得到,不允许直接使用常数标识长度。对于所有自定义结构或联合变量都应事先说明其自定义类型,给出类型名,然后再定义其变量实例。有关自定义类型名和变量名的命名方法请参见命名规则。1.1.9. 其他书写规范在源程序中,书写采用紧缩递进格式,且符合pascal语言规范。每行最多只能有一条语句。缺省的书写分隔符只有空格和换行符,如果需要使用TAB键作为分隔符,则应使用2位空格作为一个TAB键的缩进宽度,且应保证当所有TAB键替换为2位空格后,程序仍能保持良好的紧缩递进风格。除了字符及字串常数外,源程序和头文件中不应含有其他不可见字符(不包括TAB键)。所有可以包含复合语句的语句,如if-then-else、case、for、while、repeat-until等在只含有单语句体的时候,仍应使用begin,end将单语句包含在其中。例如以下的单语句应包含在花括号内:if (iIntVar 0) thenbegin return;end;任何一个可以独立运行的程序,它应该尽可能地只有一个退出口,本规范不禁止有多出口的程序编写,但也不建议这样做。1.1.10. 提示信息规范对提示信息,同一种类型的错误使用同一种风格的提示。有以下几中提示类型:错误警告: 显示带警告标志的信息窗口,按确认关闭窗口.一般信息: 显示带信息标志的信息窗口,按确认关闭窗口.用户确认: 显示带是/否选择的信息窗口1.2. 前台界面风格标准1.2.1. FormBorderIcons := biSystemMenu,biMinimize ,BorderStyle := bsSingle ,Font.Charset := GB2312_CHARSET,Font.Name := 宋体 Font.Size := 9,FormSytle := (待定) fsMDIForm、fsStayOnTop ,Postion := poScreenCenter1.2.2. Lable右对齐1.2.3. Edit左对齐,Width:=17、37、57、77、97、117、. Combobox左对齐,Width:=17、37、57、77、97、117、. ButtonWidth := 75,Heigth := 25,Caption := 增加(&A)1.2.6. PageControlStyle := TsFlatButtons,Align := alClient,TabSheet.BorderWidth:=4,TabSheet.Caption := 浏览(&B)1.2.7. StringGridAlign := alTop ,Ctrl3D:=False,DefautlRowHeigth := 18,FixedCols := 01.2.8. ShapeBrush.Color := clBtnFace , Shape := stRectangle1.2.9. PanelAlign := alBottom,alTop,alClient,alLeft,alRigth,BevelOuter := bvNone,BorderStyle := bsSingle,Ctrl3D := False1.2.10. SmartGridAlign := alClient,DataSource := ,LookAndFeel := lfFlat,OptionView.edgoAutoWidth := True,Filter.Active := True,ShowBands := True,ShowGroupPanel := True,OptionDB.edgoLoadAllRecords := True,OptionBehavior.edgoDragScroll := FalseName := (请先设置这个属性,因为在生成的Column. Name与这个属性有关)Bands (按需要设置)Columns (使用Add All Fields增加,对不需要的Field设置Visible := False)DataSource := Filter.Active := True (按需要设置)KeyField := LookAndFeel := lfFlatOptionsBehavior.edgoEditing := FalseOptionsBehavior.edgoMultSort := True (按需要设置)OptionsDB.edgoLoadAllRecords := True (插入记录后设置)ShowGroupPanel := True (按需要设置)ShowRowFooter := True (按需要设置)ShowSummaryFooter := True (按需要设置)SummaryGroups (按需要设置)1.3. 前台程序框架1.3.1. Admin:参数维护 席位信息维护 券商信息维护 证券组信息维护 比重设置维护 阶段设置维护 交易席位变动 席位线路设置 费率信息维护 费用信息维护 系统参数维护 股东代码维护 交易场所维护 基金股东代码维护 证券基本信息维护 个股分类控制表维护 交易代码对照表维护 交易规则对应表维护 交易代码描述表维护 证券代码映射表维护 基金对敲控制表维护 数据定义表维护 分类方法表维护1.3.2. Analyse:查询分析 净值与指数据走趋 多个个股表现 个股表现1.3.3. Assess:业绩考评 对基金经理考评 对交易员考评1.3.4. Asset:资产管理 基金信息设置 资金调配组管理 资金调配组资金调整 资金组管理 资金组管理 资金组资金划转 资金组资金拆借 资金组资金反拆借 资金组拆借调整 资金组拆借还款 证券组管理 证券组证券划转 证券组证券冻结解冻 个股红股调整 个股红利调整1.3.5. Inst:指令管理 指令下达 网下新股申购 网下新债申购 银行间债券买入 银行间债券卖出 银行间融资 银行间融券 场外指令执行1.3.6. Public:公用程序1.3.7. Query:信息查询 证券持仓查询 基金资产查询 资金变动流水查询 综合信息查询 回购信息查询 席位佣金查询 持仓查询控制查询 标准券余额查询 库存股本查询 一级清算查询 证券过程查询 清建仓查询 资金组信息查询, 证券变动信息查询 证券冻结信息查询 资金冻结信息查询 拆借流水信息查询 操作日志查询 出错日志查询 自动委托指示查询 简单证券持仓查询 交易汇总查询 行业比重报表 地区比重报表 证券类别比重报表 每股收益阶段报表 总股本比重报表 流通股本比重报表1.3.8. Security:安全管理 操作员管理 操作员组管理 操作员分组 岗位权限设置 交易控制管理 登录终端管理 登录权限设置 查询权限设置 操作员移交管理 拆借权限设置 证券资金查询控制1.3.9. Trade:委托管理 普通委托 自动委托 日间补委托1.4. BALPRO说明BALPro将BEATUXEDO的ATMI接口作了封装,为前后台应用提供了更为简单的接口调用。同时,为应用的进一步扩展提供了一个灵活的接口1.4.1. 主机端. 概述BALPro对应用进程的主控流程进行了封装。对应用开发人员来说,只需要实现以下五个函数就可以了。BALPro通过对应的函数指针在适当的时候调用这五个函数指针。. 应用初始化函数(BAPSrvInit)1) 功能描述此函数会在应用启动的时候执行一次。在BALPro调用此函数之前,与数据库联接已建立。通常应用在此处可以作一些全局变量的初始化。如果应用在编译或者命令行参数中没有指定所提供的服务名,那么应用可以在此处调用BAPPostService()提供服务或调用BAPRemoveService()取消原有服务。BALPro通过函数指针BAPSrvInit引用此函数。2) 函数接口函数名:BAPSrvInit参数:argc:tpsvrinit函数参数个数argv:tpsvrinit函数参数数组返回值:0:成功-1:失败. 应用结束函数(BAPSrvDone)1) 功能描述此函数在应用结束时调用一次。调用时,与数据库联接仍保持。应用可以在此时释放动态分配的内存,关闭打开的文件等清理工作。BALPro通过函数指针BAPSrvDone引用此函数。2) 函数接口函数名:BAPSrvDone参数:无返回值:无. 应用服务初始函数(BAPSvcBegin)1) 功能描述此函数在每次应用接到服务请求时调用。应用可以作一些数据检查和权限检查等预处理工作。BALPro通过函数指针BAPSvcBegin引用此函数。2) 函数接口函数名:BAPSvcBegin参数:rqst:上传消息包体指针len:上传消息包体长度返回值:0:成功-1:失败. 应用服务完成函数(BAPSvcEnd)1) 功能描述此函数在每次应用服务完成以后调用。应用可以作文件的关闭,cursor的释放等工作。BALPro通过函数指针BAPSvcEnd引用函数。2) 函数接口函数名:BAPSvcEnd参数:无返回值:无. 应用服务函数(BAPService)1) 功能描述此函数为应用服务入口,应用在此函数中处理服务请求。BALPro将服务请求通过函数参数传给应用。应用通过调用函数BAPSetReply()将应答和结果传给BALPro。BALPro通过函数指针BAPService应用函数。2) 函数接口函数名:BAPService参数:rqst:上传消息包体指针len:上传消息包体长度返回值:0:成功-1:失败1.4.2. 客户机端. 概述BALPro/WS是前台程序与后台主机应用程序通讯的接口,由一组函数调用组成。这些函数的实现在动态库balprows.dll中。. 设置主机名、端口号(BPWSetAddr)1) 功能描述调用此函数设置主机的机器名(或IP地址)和端口号。早版本的BAL通过设置环境变量WSNADDR设置主机应用网络地址,这种方法仍然有效。BALPro/WS提供此函数使得应用可以动态的联到任何主机应用环境而不重起应用。但是新设置的主机地址只有在下一次作BPWInit()才起作用。2) 函数接口函数名:BPWSetAddr参数:host:主机名或主机IP地址port:端口号返回值:0:成功-1:失败. 建立通讯连接(BPWInit)1) 功能描述此函数建立前台应用与主机应用的联接。该调用将根据主机端的安全认证级别将有关应用和用户认证信息传给主机。因此,前台应用在调用此函数时应提供有关应用和用户认证的信息。2) 函数接口函数名:BPWInit参数:cltname:主机名或主机IP地址usrname:端口号grpname:组名authkey:认证信息passwd:密码返回值:0:成功-1:失败. 开始事务(BPWBegin)1) 功能描述开始一个新事务。此函数调用是可选的。2) 函数接口函数名:BPWBegin参数:无返回值:0:成功-1:失败. 同步发送请求(BPWCall)1) 功能描述此函数向主机应用发送请求,并等待应答返回2) 函数接口函数名:BPWCall参数:svcname:服务名req:请求消息包指针reqlen:请求消息包长度rpl:应答消息包指针prpllen:应答消息包长度指针flag:保留标志返回值:0:成功-1:失败. 异步发送请求(BPWACall)1) 功能描述应用调用BPWACall()发送请求,请求送出后,函数立即返回。此时应用可完成其它逻辑。应用可以在适当的时候调用BPWGetRply()来获取应答。2) 函数接口函数名:BPWACall参数:svcname:服务名req:请求消息包指针reqlen:请求消息包长度flag:保留标志返回值:调用索引(供调用BPWGetRply()时选择获取对应哪次BPWACall()的应答). 异步接收应答(BPWGetRply)1) 功能描述此函数向主机应用获取应答2) 函数接口函数名:BPWGetRply参数:cd:调用索引(BPWACall()的返回值)rpl:应答消息包指针prpllen:应答消息包长度指针flag:保留标志返回值:0:成功-1:失败. 提交事务(BPWCommit)1) 功能描述提交一个事务。2) 函数接口函数名:BPWCommit参数:无返回值:0:成功-1:失败. 回滚事务(BPWAbort)1) 功能描述回滚一个事务。2) 函数接口函数名:BPWAbort参数:无返回值:0:成功-1:失败0. 断开通讯连接(BPWTerm)1) 功能描述调用此函数断开与主机应用联接。应用可以多次建立与主机应用的联接。但是同一时刻只能有一个联接存在。而且在建立新联接之前必须调用该函数断开原来的联接。2) 函数接口函数名:BPWTerm参数:无返回值:0:成功-1:失败1.5. 过程、函数说明1.5.1. function MsgBox. 函数说明显示对话框. 函数原形function MsgBox(sText: String; sCaption: String; mbType: Word): Word;. 输入值 sText:对话框中显示的信息 sCaption:对话框中的标题 mbType:对话框的按钮类型. 返回值1:ID_OK2:ID_CANCEL3:ID_ABORT4:ID_RETRY5:ID_IGNORE6:ID_YES7:ID_NO8:ID_CLOSE9:ID_HELP. 程序流程 取激活窗口的Handle API调用MessageBox1.5.2. procedure InputInteger. 过程说明控制键盘输入只能为整型的数字. 过程原形procedure InputInteger(var Key: Char);. 输入值 Key:输入的键值. 程序流程 过滤输入的KEY值1.5.3. procedure InputFloat. 过程说明控制键盘输入只能为浮点型的数字. 过程原形procedure InputFloat(var Key: Char); . 输入值 Key:输入的键值. 程序流程 过滤输入的KEY值1.5.4. procedure CmbAddDAD. 过程说明根据输入的段编号从数据字典中出数据添加到指定下拉框中. 过程原形procedure CmbAddDAD(cmb: TComboBox; sCode: String; sCon: String = ; bAll: Boolean = False); overload;procedure CmbAddDAD(cmb: TCheckComboBox; sCode: String; sCon: String = ); overload; . 输入值 cmb:指定的下拉框 sCode:段编号 sCon:指定的条件 bAll:是否添加一条空行数据以表示全部. 程序流程 过滤数据字典的ClientDataSet 在指字下拉框中添加过滤出的数据1.5.5. procedure CmbAdd. 过程说明根据指定的字段名从指定数据结构中取出数据添加到指定下拉框中. 过程原形procedure CmbAdd(cmb: TComboBox; var tbl: TQryTable; sID, sName: String; bAll: Boolean = False); overload;procedure CmbAdd(cmb: TCheckComboBox; var tbl: TQryTable; sID, sName: String; bAll: Boolean = False); overload;procedure CmbAdd(cmb: TComboBox; var tbl: TQryTable; sID: String; bAll: Boolean = False); overload;procedure CmbAdd(cmb: TComboBox; var cds: TClientDataSet; sID, sName: String); overload;procedure CmbAdd(cmb: TComboBox; var cds: TClientDataSet; sID: String); overload; . 输入值 cmb:指定的下拉框,指定的下拉选择框 tbl:TQryTableg型的数据 cds:TClientDataSet型的数据 sID:第一个字段,数据的ID sName:第二个字段,数据的名称 bAll:是否添加一条空行以表示全部. 程序流程 循环在指定下拉框中添加数据1.5.6. procedure CmbFind. 过程说明在指定的下拉框中查找指定的数据,并定位. 过程原形procedure CmbFind(cmb: TComboBox; scmb: String);. 输入值 cmb:指定的下拉框 scmb:需要查找的数据. 程序流程 在指定的下拉框中循环查找指定的数据 找到则定位并退出,否则定位于第一项1.5.7. function CmbRTrim. 函数说明取出下拉框中的文本中左数第一个空格左边的数据. 函数原形function CmbRTrim(sText: String): String;. 输入值 sText:下位框的文本. 返回值 返回定符串. 程序流程 定位左数第一个空格 取出空格左边的字符串返回1.5.8. function CmbLTrim. 函数说明取出下拉框中的文本中右数第一个空格右边的数据. 函数原形function CmbLTrim(sText: String): String;. 输入值 sText:下位框的文本. 返回值 返回定符串. 程序流程 定位右数第一个空格 取出空格右边的字符串返回1.5.9. procedure OpenXLS. 过程说明根据指定的文件名在Excel中打开,可选择是否直接打印. 过程原形procedure OpenXLS(const FileName: String; var SmartGrid: TSmartGrid; bPrint: Boolean = False);. 输入值 sFileName:文件名字 dbg:指定的数据网格. 程序流程 打开指定的Excel文件 在这个文件插入报表标题、操作员、打印时间 保存 打开或直接打印1.5.10. function GetDADDesc. 函数说明根据指定的段编号、编号取出相应的编号值. 函数原形function GetDADDesc(sCode: String; sVal: String): String;. 输入值 sCode:段编号 sVal:编号. 返回值 编号值. 程序流程 根据指定的段编号、编号在数据字典中定位相应的记录 取出编号值并返回1.5.11. function GetFieldValue. 函数说明根据指定的字段名、记录号在指定的数据结构中取出相应的字段值. 函数原形function GetFieldValue( tbl: TQryTable;const sFieldName: String; iRecNo: Integer): String;. 输入值 tbl:指字的数据结构 sFieldName:字段名 iRecNo:记录号. 返回值 字段值. 程序流程 根据指定的字段名、记录号在指定的数据结构中取出相应的字段值并返回1.5.12. function GetMAC. 函数说明取出网卡的MAC地址. 函数原形function GetMAC(sIP: String): String;. 输入值 sIP:网卡上的IP地址. 返回值 网卡的MAC地址. 程序流程1.5.13. procedure MakeSQL. 过程说明组成SQL语句. 过程原形procedure MakeSQL(var sSQL: String; const sField, sRelative: String; iValue: Integer); overload;procedure MakeSQL(var sSQL: String; const sField, sSymbol, sValue: String); overload;. 输入值 sSQL:原SQL字符串 sField:字段名 sSymbol:逻辑符号 iValue:条件值 sVAlue:条件值. 程序流程 判断where关键字是否存在,如否则增加 根据条件值的类型添加条件表达示到SQL字符串中,并返回1.5.14. procedure SetRefresh. 过程说明显示设置刷新间隔的对话框. 过程原形procedure SetRefresh(var tm: TTimer);. 输入值 tm:定时器. 程序流程 显示对话框 设置定时器的刷新间隔1.5.15. procedure SetReportTitle. 过程说明显示设置报表标题的对话框. 过程原形procedure SetReportTitle(var dbg: TSmartGrid );. 输入值 dbg:指定的数据网格. 程序流程 显示对话框 设置报表标题1.5.16. procedure PrintGrid. 过程说明从指定数据网格中生成Excel文件,并打开或直接打印. 过程原形procedure PrintGrid(dbg: TSmartGrid; bPrint: Boolean = False);. 输入值 dbg:指定的数据网格 bPrint:是否直接打印. 程序流程 生成文件名 生成Excel文件 打开或直接打印这个文件1.5.17. procedure SaveDbgReg. 过程说明将指定数据网格的布局配置保存到注册表中. 过程原形procedure SaveDbgReg(Sender: TObject; dbg: TSmartGrid);. 输入值 Sender:指定数据网格所在的窗口名 dbg:指定的数据网格. 程序流程 保存布局配置到注册表指定位置上1.5.18. procedure LoadDbgReg. 过程说明从注册表中出取指定数据网格的布局配置. 过程原形procedure LoadDbgReg(Sender: TObject; dbg: TSmartGrid);. 输入值 Sender:指定数据网格所在的窗口名 dbg:指定的数据网格. 程序流程 从注册表指定位置上取出数据网格的布局配置1.5.19. procedure SetSysTime. 过程说明设置本地系统时间. 过程原形procedure SetSysTime(const sDateTime: String);. 输入值 sDateTime:时间. 程序流程 组织指定的时间格式 API调用SetLocalTime设置本地系统时间1.5.20. function GetCurTime. 函数说明取出当前本地的系统时间. 函数原形function GetCurTime: String;. 输入值. 返回值 本地的系统时间. 程序流程 取出当前本地的系统时间1.5.21. function CheckDate. 函数说明检查日期是否合法. 函数原形function CheckDate(const sDate: String): Boolean;. 输入值 sDate:日期. 返回值 True:合法 False:不合法. 程序流程 判断长度 组织指定的日期格式 判断是否合法并返回1.5.22. function CheckTime. 函数说明检查时间是否合法. 函数原形function CheckTime(const sTime: String): Boolean;. 输入值 sTime:时间. 返回值 True:合法 False:不合法. 程序流程 判断长度 组织指定的时间格式 判断是否合法并返回1.5.23. function CheckDateEdit. 函数说明检查指定的输入框内容是否是日期. 函数原形function CheckDateEdit(var edt: TEdit; bCanNull: Boolean = False): Boolean;. 输入值 edt:指定的输入框 bCanNull:是否允许为空. 返回值 True:是 False:不是. 程序流程 如果允许为空并且输入框的内容为空,则直接返回True 调用CheckDate检查输入框的内容是不否是日期1.5.24. function CheckTimeEdit. 函数说明检查指定的输入框内容是否是时间. 函数原形function CheckTimeEdit(var edt: TEdit; bCanNull: Boolean = False): Boolean;. 输入值 edt:指定的输入框 bCanNull:是否允许为空. 返回值 True:是 False:不是. 程序流程 如果允许为空并且输入框的内容为空,则直接返回True 调用CheckTime检查输入框的内容是不否是时间1.5.25. function CheckString. 函数说明检查输入内容是否为空. 函数原形function CheckString(var edt: TEdit; const sCaption: String): Boolean; overload;function CheckString(var cmb: TComboBox; const sCaption: String): Boolean; overload;. 输入值 edt:指定的输入框 cmb:指定的下拉框 sCaption:输入的内容的名称. 返回值 True:是 False:不是. 程序流程 判断内容是否为空,并返回1.5.26. function CheckInteger. 函数说明检查输入内空为否为整型的数字. 函数原形function CheckInteger(var edt: TEdit; const sCaption: String = ): Boolean; overload;function CheckInteger(var cmb: TComboBox; const sCaption: String = ): Boolean; overload;function CheckInteger(var edt: TMoneyEdit; const sCaption: String = ): Boolea
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小学二年级下册道德与法治教学细则计划
- (2025年标准)股权共享协议书
- (2025年标准)股票运作协议书
- 2025年经济师中级考试知识点梳理产业政策与市场运行规则解读
- 新生儿体表检查流程自动化流程
- 2025年计算机编程入门教程及实战模拟题集
- 慢性病患者合理用药培训计划
- (2025年标准)购销 纠纷和解协议书
- 图书馆工作人员服务态度心得体会
- 2025年最高检公务员招聘面试预测题及备考策略
- 会计研究方法论 第4版 课件全套 吴溪 第1-20章 导论- 中国会计学术研究成果的国际发表
- 《水库大坝安全管理条例》知识培训
- 父女关系断绝书
- 2025年华侨港澳台学生联招考试英语试卷试题(含答案详解)
- 《晚期肾癌新视点》课件
- 三年级 人教版 数学 第六单元《两位数乘一位数(不进位)口算》课件
- 民爆信息系统网络服务平台
- 2025年度智慧企业ERP系统集成与运维服务合同模板2篇
- 2024年优居房产全国加盟手册3篇
- 污水处理工程施工工程组织设计
- 氨基酸作为药物靶点
评论
0/150
提交评论