PB程序编制规范(初稿)

合集下载

pb编码规范

pb编码规范

目录1.引言 (1)2. 定义和通用要求 (2)2.1 标准数据类型 (2)2.2P OWER B UILDER的控件命名规则 (2)3. 命名规则 (3)3.1 基本命名规则 (3)3.2定制对象命名规则 (3)3.3各类函数命名规则 (4)3.4变量命名规则 (4)3.5用户自定义事件命名规则 (5)4.程序书写规范 (6)4.1注释及格式要求 (6)4.1.1源代码文件的注释 (6)4.1.2 函数或过程的注释 (6)4.1.3 语句的注释 (6)4.1.4 常量和变量的注释 (6)4.1.5制定对象的注释 (6)4.2缩进规则 (7)4.2.1控制结构的缩进 (7)4.2.2缩进的限制 (8)4.3书写建议(非硬性规定) (8)5.POWERBUILDER LIBRARY的分类原则 (8)6. 程序设计的组件化和框架结构 (8)7. 程序设计底层基类的开发 (9)1.引言本规范定义一个源码级应用程序的开发规范,它是借助PowerScript语言,在PowerBuilder开发环境下提供的标准化服务。

它可供应用开发人员及系统设计人员使用。

本规范描述开发人员关心的外部特性及设施,而不是描述为达到这些功能采用的内部结构技术。

适用于使用PowerBuilder作为系统开发平台,声明服从本规范的系统开发。

2. 定义和通用要求2.1 标准数据类型PowerBuilder有以下十四种标准的数据类型(见表2-1)。

2.2 PowerBuilder的控件命名规则在PowerBuilder中,各种控件的命名采用如下前缀:3. 命名规则3.1 基本命名规则本规范中采用的命名规则,基本模式为:前缀_功能或作用描述其中前缀根据定制对象,变量类型或函数类型的不同而变化。

功能或作用描述则是对具体定制对象完成的功能的抽象;函数实现的功能抽象;变量的作用名称。

3.2 定制对象命名规则定制对象命名规则如下表3-1:其中功能或作用描述的格式是未规定的。

PB编码规范

PB编码规范

PB编码规范一、团队开发要求●服从团队开发纪律和进度安排●未经项目负责人或项目经理的许可,不允许擅自进行可能影响到其他人员工作的任何工作,如添加数据库表、修改数据库表结构等,如有必要,必须提出书面申请,说明原因及如何操作的详细说明●代码必须符合规范,项目负责人或项目经理有权责成开发人员修改其不符合规范的代码二、版本说明●软件版本号标准为A.B,其中A和B为0到99之间的数字●当A大于1且B为奇数时,表示当前版本为处于开发、测试阶段的版本,定义为”开发版”;当B为偶数时,表示当前版本为稳定、可实际运行的版本,定义为”稳定版”●当软件开始开发时,确定版本号为0.1;随着软件开发的进度,版本号随着每一次主要功能的完善而变化,最高达到0.99●软件初步完成后,确定该软件版本号为1.0 Beta X,X代表测试的次数,这意味着软件可投入实际应用测试;当1.0 Beta X版本推出并实际应用或试运行测试后,确定该软件版本号为1.0 RC,这意味着软件可投入实际应用运行;当1.0 RC版本运行达到某一时限后,则认为该版本已稳定,可完全正常使用,确定版本号为1.0,这意味着软件开发完成●软件升级时,如功能变化不大,则次版本号变化;如功能变化较大,主版本号变化,软件的最终版本号由项目负责人或项目经理确定三、对象命名规范●常用对象命名约定A.命名方式建议用匈牙利表示法,组成方式为A_B(A表示对象的类型,B表示该对象的描述),如:窗口的命名:w_功能代码_功能描述+编写人姓名简称数据窗口对象的命名:d__对应表名称+显示方式+编写人姓名简称菜单命名:m_功能代码_功能描述+编写人姓名简称用户对象:uo__功能代码_功能描述+编写人姓名简称B.对于对象的Comments项必须写出相应的作用,如:C.详细说明如下:PowerBuilder中,对象的命名一般采用如下前缀:Prefix Object---------------------------------------------------------------dw_ DataWindowsdddw_ DropDownDataWinowsf_ Functionsm_ Menusp_ Pipeliness_ Structuresu_ UserObjectsw_ Windows●函数命名规则:函数名=’函数适用范围代码’+f+’_’+’函数功能描述’,’函数适用范围代码’描述如下:g 全局函数w 窗口函数m 菜单函数u 用户对象函数例如:替换字符的全局函数命名:gf_replace()●PBL库组织原则Library的大小最好小于1MB,数量尽量最少,分类原则有两种:1.制定对象分类法如:将所有的窗口放在一个Library中2.功能模块分类法根据功能模块的划分,将属于该模块的对象放在一个Library中较大型项目建议采用第二种分类方法●控件命名规则控件的命名必须以控件名称缩写开头,加下划线(_),后接表意的英文字符控件命名前缀约定:Prefix Control---------------------------------------------------------------cbx_ CheckBoxcb_ CommandButtondw_ DataWindowddlb_ DropDownListBoxem_ EditMaskgr_ Graphgb_ GroupBoxhsb_ HScrollBarln_ Linelb_ ListBoxmle_ MultiLineEditole_ OLE 2 0ocx_ OCXoval_ Ovalp_ Picturepb_ PictureButtonrb_ RadioButtonr_ Rectanglerr_ RoundRectanglesle_ SingleLineEditst_ StaticTextuo_ User Objectvsb_ VScrollBar四、变量命名规范●变量命名总体原则:变量定义时加上注释标明其含义,如:String ls_name //验船师姓名变量命名规则为:变量类型+ 数据类型+ ‘_’+ 含义代码例如:字符型实例变量:is_id //登陆人员ID号日期型全局变量:gd_modify //修改日期一般变量,用小写字母●作用域命名约定:Prefix Scope---------------------------------------------------------------g_ Globals_ Sharedi_ Instancel_ Local●变量类型前缀约定:Prefix Datatype---------------------------------------------------------------b_ Booleanblob_ Blobd_ Doubledate_ Datedec_ Decimaldt_ DateTimei_ Integerl_ Longs_ Stringt_ Timeui_ Undisgned Intul_ Undisgned Longtr_ Transaction objectdo_ Dragobjectdwc_ DataWindowChildnvo NonVisulObject五、编程规范●书写格式用分层缩进的写法显示嵌套结构的层次,采用PB默认的Tab键(三空格)缩进;每行只写一条语句,当需要滚动显示时应该分行写●注释及格式要求1.对函数或过程必须加注释,函数头部说明函数功能和参数2.对语句不易理解的加注释3.对变量、常量应加注释,尤其是全局变量、常量4.用户自定义对象加标注对象的用途、制定人员、定义时间(修改时间)等注释●具体格式要求如下:1.在窗口Open事件前应说明//*======================================*///窗口名称://窗口作用://作者://日期://*=======================================*/2.在事件脚本前应说明://*=======================================*///脚本作用://作者://日期://修改人姓名://修改日期://修改原因://*=======================================*/若有多人修改,每人均加上姓名、日期、原因,对原有注释不可删除,在修改的地方加上修改人名,”Beginning Modification”,’Ending Modification”字样3.脚本中的注释单行注释://注释文本程序段注释://*=====================================*///// 注释文本////*=====================================*/变量注释:数据类型变量名//注释4.函数、存储过程的注释//*=====================================*///函数名称://参数解释://功能描述://调用举例://原作者://编写日期://返回值://变量情况://修改人://修改日期://修改原因://*=====================================*/5.脚本编程规范A.单行注释与当前Script程序的缩进位置对齐,如://Comments1If … Then//Comments2If …Then//Comments3…End IfEnd IfB.SQL语句书写格式:Select name,sex,dep_idInto :ls_name,:ls_sex,:ls_dep_idFrom employeeWhere emp_id=:ls_emp_id;C.PB保留字首字母大写其余小写,内部函数及属性每个字首字母大写其余小写,如:This,True,sle_user.Text,dw_1.SetTransObject(Sqlca)六、控件编程规范●公共约定:A.尽量为所有控件使用有意义的名称,重要控件不可使用cb_1之类无明确意义的名称B.字体:各窗口控件字体为宋体,字号为10号C.窗口用800x600分辨率大小●数据窗口规范显示风格:FREEFORM字体:宋体字号:10号背景色:自定义(RGB(242,241,238))标题:背景色同上,字体色:黑色,边框:NoBorder,居右放置,加冒号数据:背景色:白色,字体色:自定义(RGB(0,0,100)),边框:Box(2) ,居左放置不可编辑字段背景色为:SILVERTABLE ORDER顺序:先左右,后上下LABLE内字一般左对齐(货币、日期、时间等除外)编辑框高度:64 单位:采用PB默认的日期格式:YYYY-MM-DD日期和数字型的风格设定:EDIT选择EmptyStringsNullEDIT的类型如果使用DropDownDatawindow,宽度最好不用滚动条,要有纵向滚动条,不允许编辑ALLOWEDITINGFreeForm格式各字段间隔可根据具体情况自定,原则上不要出现滚动条即可显示风格:GRID字体:宋体字号:10号标题:自定义兰色RGB(99,143,195) 字体色:白色边框(Border):Raised(6) 高度:60数据显示风格: 采用”斑马线”式样在数据字段行->属性->背景(BackGround Color)->Expression下写入如下表达式:IF(MOD(GETROW(),2)=0,RGB(247,247,247), RGB(223,223,223)) //颜色显示记录) 各数据栏宽度:76 单位:采用PB默认的数据栏数据显示:一般长短不一的文字居左,数据项、货币居右,固定文字(如单位)居中计算字段的显示:要有统计记录条数;算字段背景色为自定义RGB(250,250,145),字体为黑色,计算字段行宽同数据栏宽度,计算行用矩形框(带边框),矩形框背景同计算字段背景色。

PB软件设计技术规范

PB软件设计技术规范

PB软件设计技术规范1 软件界面风格1.1 窗口1主界面采用巨龙定制的标准的“管理信息系统”程序主界面。

2 分辨率程序窗口设计的分辨率为800*600或640*480,窗口高宽比例应该与屏幕的比例一致。

3窗口模式分清有模式窗口(对话框)和无模式窗口(对话框)。

有模式窗口(对话框)在应用程序继续之前必须由用户关闭;无模式窗口(对话框)允许用户在不取消或不移去窗口(对话框)的情况下,显示并返回到另一任务。

4窗口标题应能反映该窗口的功能的简单概括性文字,不能太长。

5颜色窗口的背景颜色使用巨龙指定背景或微软缺省颜色。

6字体在Window 95中开发推荐使用宋体9号,在window NT中开发推荐使用宋体9号;7控件控件位置摆放适当,特别是按钮位置摆放(上、下等),数据窗是否允许横滚动条出现,数据窗对象颜色设置,字段颜色和状态。

录入、修改数据窗对象中非空字段和不允许获得焦点字段的体现。

适当形象图形的使用。

①常用按钮名称的统一规定:新增、保存、修改、条件、查询、打印、打证、照片、浏览、确定、取消、复位、关闭、退出、返回、预览、打印设置、前翻、后翻……②业务操作按钮按扭的命名简洁,形象。

8方便用户录入界面要考虑用户录入的方便,要求能使用回车键、TAB键在单元格间行进;考虑ESC,RETURN键的缺省实现。

9提示信息窗口状态条和TAG、Microhelp 提示信息。

1.2 菜单标准①如果菜单命令在被执行之前还需要其他信息,例如:弹出其他对话框,那么,应该在菜单标题后面加上省略号,例如:另存为(A)…。

②所有的菜单都应该有键盘访问入口,同一层菜单不应有重复的键盘访问入口;③最好只有两层菜单,多于一层子菜单的情况可以考虑用对话框代替;④菜单名称中文在前,英文字母在后,并带括弧和下划线。

1.3 工具栏工具栏应可移动;功能相关的应绑定成组。

1.4 图标系统图标、收集定作1.5 字符串统一的快捷键,一致的提示信息(包括错误处理)。

PB编程规范

PB编程规范

一、编程对象的分类以PowerBuilder作为前台开发工具,进行软件开发的过程中,所涉及的编程对象如表1-1所示。

表1-1 编程对象分类二、编程对象的组织使用PowerBuilder开发工具产生的对象,可以按照设计(正在编写和调试)和运行(调试、编译结束,可以接受测试和运行)中的状态进行编程对象的组织规划,重点是目录结构的划分,具体目录的相对关系如表1-2所示。

三、团队开发a.服从团队开发纪律和进度安排。

b.未经项目负责人或项目经理的许可,不允许擅自进行可能影响其他人员工作的任何工作,如添加Library,添加数据库表等;如有必要,必须提出书面申请,说明原因以及要改动的操作的详细说明,由项目管理人员统一进行操作和协调。

c.代码必须符合标准规范,项目负责人或者项目经理有权责成开发人员修改其不符合开发规范的代码。

d.代码集中存放到文件服务器的某一目录,客户机统一映射为固定盘符,确保程序在任何时候都是完整的可用版本而不是零散的代码集,不允许拷贝到本地硬盘进行开发。

e.当编写某些公用部件和代码时,必须使用Check out 功能确保代码独占使用而不能让其他人同时也修改,当修改完成的时候必须及时使用Check in 功能确保代码消除独占状态以使其他人能及时使用修改后的代码。

f.各人设置自己在团队中的User ID:Library->Source->Connect->选择[PB Native]->设置User ID,填写自己姓名的拼音缩写或者英文名。

4.版本说明a.软件版本号标准为A . B,其中A和B为0到99之间的数字。

b.当A大于1并且B为奇数时,表示当前版本为处于开发、测试阶段的版本,定义为“开发版”;当B为偶数时,表示当前版本为稳定的、可实际运行的版本,定义为“稳定版”。

c.当软件开始开发时,确定版本号为0.1;随着软件开发的进度,版本号随着每一次主要功能的完善而变化,最高达到0.99。

PB 编码规范

PB 编码规范

PB 编码规范。

原来在聚赫的时候写的这是2010年写的一个规范给公司内部使用的。

PB毕竟是一个老语言了,命名规范和java,c# 差别很大其实代码规范见仁见智吧,良好的书写规范对自己没坏处的,当然对公司也大大的有好处,毕竟谁看到写的乱糟糟的代码心里都不爽。

但是真正能按照规范写代码的人毕竟不是太多,特别特别是代码的注释,更特别特别的是修改注释。

在看到蛋疼代码有蛋碎感的同时,还有一种想爆粗口的念头,想想别人看到咱们的代码会不会也有同样的感觉,所以大家尽量书写规范的代码,共勉。

变量命名规范(这样命名的变量很容易看明白这是实例,全局还是局部,已经变量的类型,变量的意义为修改代码带来方便)变量作用域+ 变量类型+ _ + 变量意义说明串一、变量作用域全局变量g_共享变量s_ //不推荐使用,共享变量不依赖于对象的实例存在实例变量i_局部变量l_注意:四种作用域前缀字母都为小写二、变量类型(以局部变量为例)数据类型类型声明前缀整形Integer li_字符型String ls_日期Date ld_日期时间DateTime ldt布尔Boolean lb_浮点Decimal ldec_Double Double ldou_注意:以上是主要的数据类型,前缀都是小写三、变量意义说明串变量说明字符串可以有2中写法1.推荐使用英文字符串做说明串,每个单词的首字母都要大写,如:ls_CheckedDate2.在英文不好表达时,可以使用中文全拼代替,前两个中文汉字使用全拼,首字母大写,后面汉字使用全拼的首字母,都要大写如:lb_DianJiLBTPX 点击列标题排序可能有人会说用拼音不好,要用英文。

相对于用词霸翻译过来的英文我更只是用中文拼音。

其实pb也支持直接用中文,呵呵四、变量声明1.变量类型使用全称,如:整类使用Integer 而不是Int2.变量类型首字母大写,其余字母全小写如:String3.变量声明尽量不要在一行中声明太多变量,分行处理,在变量不多时可以每行声明一个变量4.变量名称要具有一定的实际意义,做到见其名知其意,在比较难理解时在变量后面添加必要的注释文字程序注释[可以使用pbhelper来辅助完成]程序注释可分3种注释1.函数、事件的说明注释。

pb 编码规范

pb 编码规范

pb 编程规范声明:为了明确命名意图,所有命名使用英文单词或缩略词。

一. 对象/控件/函数/方法命名规范1.对象命名规则命名必须全部用小写字母, 可以用”_”作为分割符, 例如:2.控件命名规则3.方法/函数命名规则必须以小写字母开头, 采用大小写混合形式, 并且应足够长以描述它的作用. 而且, 方法名应以一个动词起首,如getUserRight()exitProgram()对于比较长的单词推荐使用缩略语以使名称的长度合理化. 当使用缩略语时, 要确保它在整个使用程序中的一致性. 如果一会儿使用Cnt, 一会儿使用 Count,将导致不必要的混淆。

二. 常量和变量命名约定1.常量必须全部大写, 如:constant int MAXVALUE=102.变量三. pb编码规范1.程序头注释约定所有类,接口的开始都要有关于这个类(接口)的注释:/*** Title: Pushclass* Description: function* Copyright: Copyright (c) 2000* Company: GE.Corp* @author: raogaohua* @version: 1.0*/2.函数/方法注释规范所有的函数/方法的开始都应该有描述这段代码的功能的一段简明注释. 但是这种描述不应该包括具体执行过程,因为这常常是随时间而变的,可能会成为错误的注释./*** Name: compString* Description: 找出一个String在一个String[]中位置index* Author: zhaoshouiang* @param strArray String数组* @param strFind 需要找的String* @return >=0:找到, 返回strDind在strArray中的index* -1: 没找到*/public int compString(String[] strArray, String strFind)在方法中的注释要求做到下列几点:A.每一个重要变量的声明应该包括一个嵌入注释,来描述变量的使用.B.变量、控件及函数/方法的命名应该足够清楚, 使得只有复杂的执行细节才需要嵌入注释.C.列举主要数据对象、函数/方法、算法、数据库及系统需求. 一段描述算法的伪代码能会有所帮助。

PB开发规范

PB开发规范

pb程序编制规范---开发部制一.命名规范1.1.窗口:W_XX_XXXX(W_系统简写_功能名称)2.例:物品入库处理窗口为WZ_RK2,物品主窗口命名为WZ_MAIN注:1.wz_xx中主窗口继承于W_MAIN_FATHER,MDI窗口一般继承于W_qbase2.系统简写名称参照各产品的子系统设置规范。

3.2.菜单:M_XX_XXXX(W_系统简写_功能名称)例:物品系统主菜单M_MAIN。

4.3.变量3.3变量命名:变量范围+变量类型+‘_’+变量名称例:全局的日期为Gd_today,门诊号参数As_mzhm注:WZ-V1.0公共全局类名:Uo_support::U_supporclass WZ-V1.0全局参数结构名:Base_info::Base_infoWZ-V1.0窗口数据传输变量结构:S_Exchange::S_Exchange5.4.函数公用全局函数:GF_XXXX(GF+_+函数名称)子系统使用的公共函数:GF_XX_XXXX(GF+_+系统简称+_+函数名称)窗口函数:WF_XXXX(WF+_+函数名称)类成员函数:uf_XXXX(函数名称)全局扩展函数:GE_XXXX(GE+_+函数名称)局部扩展函数:LE_XXXX(LE+_+函数名称)6.5.数据窗口下拉式数据窗口:DD_XXXX一般数据窗口:D_XX_XXXX(D+_+系统简写+_+数据窗口名称)7.6.类U_XXXX(非可视类)VU_XXXX(可视类)8.9.8.库(PBL)XX_XXXX:系统简写+_+库名XX_MAIN:主库(主窗口,主菜单及本系统的私有维护) XX_PUBLIC:本系统的公用部份XX_XXXX: 业务功能1XX_XXXX: 业务功能2。

10.9.应用应用名一般与系统的简称同名11.10.表与视图表:XX_XXXX(系统简写+_+表名拼音缩写).例:住院系统的费用库(ZY_FYMX)视图:V_XX_XXXX(V+_+系统简写_+视图名). 例:门诊系统的收费汇总视图(V_MZ_SFHZ)12.11.字段名字段名一般是字段中文名称拼音的首字母缩写,一般为4个字母.如:药品序号(YPXH)13.12.主外键主键:PK_XXXX_XXXX(PK+_+表名+_+列名)外键:FK_XXXX_XXXX(FK+_+表名+_+列名)14.13.索引IDX_XXXX_XXXX(IDX+_+表名+_+索引名)15.14.触发器TR_XXXX_XXXX_XXXX(TR+_+所属表名+_+作用表名+_+触发器名).16.15.存储过程PR_XX_XXXX(PR+_+系统简写+_+存储过程名)二.界面规范1.1.用程序主窗口采用MDI方式,应具有Miscohelp提示。

系统软件编制规范(PB)

系统软件编制规范(PB)

目录一引言 (1)1 编写目的 (1)2 背景..................................................................................................... 错误!未定义书签。

二设计规范. (1)1 系统规划 (1)2 文件管理 (2)2.1 目录管理 (2)2.2 文件命名规范 (3)2.3 文件备份机制 (3)3 程序设计规范 (3)3.1 界面风格 (4)3.2 命名规范 (6)3.3 快捷键的定义 (10)3.4 编程规范 (10)3.5 编程风格 (11)系统软件编制规范一引言1编写目的统一整个软件的界面风格,确定软件编制过程中“库文件”、“控件”、“变量”、“对象”、等的命名规范,增强软件开发过程中的规范性、使用时的易维护性。

二设计规范1系统规划1.1计划制定1.2计划实施2文件管理2.1目录管理(1)目录开发过程中程序、文件、文档、备份等按功能要求分别存放在D:\code\app目录下的不同子目录下,具体如下:程序: D:\code\app\模块名流程图和文档: D:\code\app\doc\模块名可执行文件:D:\code\app\exe\模块名备份文件:D:\code\app\bak\模块名sql文件:D:\code\app\sql\模块名图片文件: D:\code\app\bmp\模块名(2)库文件(PBL)程序开发过程中的各种对象按功能分别存放不同的PBL中,并附加说明。

(如:有系统管理、计划管理、生产管理、物流分析及控制、采购管理、仓库管理、财务管理、通用查询、数据通信等模块,各模块主文件命名规则是模块名的汉语拼音缩写,分别对应如下:公共应用名称:tyfz父类组件:inherit.pbl(与业务无关)公共组件 pub.pbl(与业务有关)应用一:xtgl系统管理数据窗口:xtgl_dw.pbl系统管理窗口:xtgl_w.pbl系统管理函数及其它:xtgl_func.pbl应用二:jhgl计划管理数据窗口:jhgl_dw.pbl计划管理窗口:jhgl_w.pbl计划管理函数及其它:jhgl_func.pbl应用三:scgl生产管理数据窗口: scgl_dw.pbl生产管理窗口: scgl_w.pbl生产管理函数及其它: scgl_func.pbl应用四:wlkz物流分析及控制数据窗口: wlkz_dw.pbl物流分析及控制窗口: wlkz_w.pbl物流分析及控制函数及其它: wlkz_func.pbl应用五:cggl采购管理数据窗口:cggl_dw.pbl采购管理窗口:cggl_w.pbl采购管理函数及其它:cggl_func.pbl应用六:ckgl仓库管理数据窗口: ckgl_dw.pbl仓库管理窗口: ckgl_w.pbl仓库管理函数及其它: ckgl_func.pbl应用七:cwgl财务管理数据窗口: cwgl_dw.pbl财务管理窗口: cwgl_w.pbl财务管理函数及其它: cwgl_func.pbl应用八:tycx通用查询数据窗口: tycx_dw.pbl通用查询窗口: tycx_w.pbl通用查询函数及其它: tycx_func.pbl应用九:sjtx数据通信数据窗口: sjtx_dw.pbl数据通信窗口: sjtx_w.pbl数据通信函数及其它: sjtx_func.pbl各种对象应分类分别存放在相应的pbl中。

PB编程要求

PB编程要求
6、注意数据窗口控件双击事件的处理程序,需要取得GetClickedRow()判断是否大于零,如果不大于零不能往下继续执行程序!
20071219新增
1、当使用F_FkDataCheck()函数判断是否被应用时,切忌只要返回值不等于“1”时都是被应用了!
2、所有放在窗体上方的按钮之间的间距为默认单位值:18;即:当前按钮的X值和前面按钮的X+Width的差值为18;当按钮一行放不下的情况下分成多行显示!!!
b、所有放在窗口底部的按钮没有特殊需求的情况下都要使这组按钮对于窗口水平线左右居中,目测就可以了!
2、所有对数据窗口对象需要加条件进行刷新的操作,切忌直接通过GetSqlSelect()中查找From来进行Where条件相加,这样不利于程序的拓展,现有方法:通过窗口实例变量存取GetSqlSelect()结果,然后直接在这个变量的基础上进行条件拼接,这样有利于程序的维护和拓展!
2、查询条件数据的生成规则:
1)、如果基础数据中有拼音码的:条件生成规则为:拼音码左取8位并且都统一成大写+名称+150个空格+序号(主键ID序号)
2)、如果基础数据中没有拼音码有编码的:条件生成规则为:编码左取8位并且都统一成大写+名称+150个空格+序号(主键ID序号)
2)、如果基础数据中没有拼音码并且没有编码的:条件生成规则为:名称+150个空格+序号(主键ID序号)
20071221新增
1、数据窗口对象中挂子数据窗口对象的可编辑的字段一定要注意子数据窗口的显示宽度、勾选垂直滚动条属性、设置一次显示10条记录!!!
2、如果窗口上有“隐藏查询条件(Y)”按钮的一定要放在“返回”或“退出”按钮的前面!!即:按钮的倒数第二位!!!

pb开发规范

pb开发规范

实例变量(INSTANCE VAR) is_name
共享变量(SHARED VAR) ss_name
局部变量(LOCAL VAR) ls_name
定义整型变量
全局变量(GLOBAL VAR) gi_name
Prefix Control
---------------------------------------------------------------
cbx_ CheckBox
列表框(LISTBOX) lb_name
图形列表框(PICTURELISTBOX) plb_name
ListView控件(LISTVIEW) lv_name
TreeView控件(TREEVIEW) tv_name
Tab控件(TAB)Tab页 tab_name tabpage_name
实例变量(INSTANCE VAR) ii_name
共享变量(SHARED VAR) si_name
局部变量(LOCAL VAR) li_name
三、 其他命名
名称 命名规则
双精度浮点型变量(DOUBLE) Xdou_name
整型变量(INTEGER) Xi_name
长整型变量(LONG) Xl_name
实型变量(REAL) Xr_name
结构体变量(STRUCTURE) Xstr_name
1)、作用域命名
Prefix Scope
---------------------------------------------------------------
。新建对象时,首先想到的应当是“inherit”,而不是“new”!

程序编写规范

程序编写规范

程序编写规范程序编写规范是为了保证代码的一致性、可读性和可维护性,提高代码的质量和开发效率。

下面是一份常见的程序编写规范,共计1000字:1. 命名规范- 使用有意义的、描述性的变量、函数、类等命名,并遵循驼峰命名法。

- 避免使用缩写或任何不必要的简写。

- 使用下划线作为常量的分隔符,全大写表示。

- 使用语义明确的命名,不使用单个字母作为变量名。

- 避免使用特殊字符和保留关键字。

- 类名使用首字母大写的驼峰命名法。

2. 注释规范- 使用注释解释代码的逻辑和意图,特别是对于复杂的或者不易理解的代码。

- 注释应该简明扼要,不要重复代码本身的功能。

- 使用行注释来解释单行代码,使用块注释来解释一段代码或者一个函数。

- 避免使用无意义或者过于废话的注释。

3. 缩进和格式规范- 使用合适的缩进(通常是四个空格)来使代码结构清晰可读。

- 在运算符前后、逗号后等适当的位置加上空格,提高代码可读性。

- 使用适当的空行分隔代码块,提高代码可读性。

- 代码块应该使用一致的格式,包括大括号的位置、缩进等。

4. 文件和模块规范- 每个文件应该包含一个明确的目的和功能。

- 文件名应该使用有意义的、描述性的名称。

- 每个文件应该有一份版权声明和作者信息。

- 导入语句应该放在文件头部,并按照标准顺序进行排序。

5. 函数和方法规范- 函数和方法应该尽量简短和单一,每个函数只负责一个具体的功能。

- 函数和方法应该使用有意义的名称,能够准确描述其功能。

- 对函数和方法的参数和返回值进行适当的注释,说明数据类型和含义。

- 函数和方法的定义应该放在调用它们的地方之前。

6. 错误处理规范- 程序应该尽量避免使用异常,而是通过返回特定的错误码或者状态值来处理错误。

- 合理使用异常处理机制,捕获可能出现的异常并进行处理。

- 对于可能出现异常的地方进行适当的注释,解释可能的异常情况和处理方法。

7. 版本控制规范- 每个项目应该使用版本控制系统进行管理,保留项目的所有历史记录。

pb编程规范

pb编程规范

PB开发规范一、命名规范1、Pbl库命名:一般采用模块缩写+存放对象类型.pbl命名,原则上单个pbl库不要超过2M大小,超过可以用模块缩写+存放对象类型+序号.pbl命名。

比如:MZ_DDDW_1.PBL。

2、Pbl库中存放对象的命名规则:3、窗口中控件命名规则:前缀用pb默认的缩写,加‘_’,后跟有意义的名字,不要采用p_1,p_2等无意义的命名。

4、PB变量命名规则:PB变量作用域前缀+pb变量类型前缀+_+有意义的名称,如string ls_doctor_name。

其中变量类型前缀如下:变量作用域约定如下:二、程序规范1、 书写格式 ● 单个事件或函数中的代码行数不能超过150行 ● 用分层缩进的写法显示嵌套结构的层次.● 在注释段与程序段,以及不同逻辑的程序段之间插入空行. ● 每行只写一条语句,当需要滚动显示时应该分行书写. ● 把单行注释与当前script 程序的缩进位置对齐: ●变量书写注意事项: ①变量全部用小写;②变量声明全部在脚本之前声明完毕; ●当连接起来的字符串超过了两行的长度时,使用 + 符作为下行的第一个字符,每次均采用缩进格式.字符串的随后部分应该再次缩进. ●建议PowerBuilder 保留字(关键字)、内部函数及属性首字母大写其余小写,这样看起来层次清晰,可通过一些工具规整。

●SQL 语句按如下格式书写:SELECT name,sex,dept_idINTO :ls_name,:ls_sex,:ls_dept_idFROM employeeWHERE emp_id = :ls_emp_id ;●程序中应避免出现goto跳转语句.●所有操作符(包括等号)前后应留一空格,使程序看起来更清晰.例如:ls_msg = ls_title + ls_error2、合适的注释对象的注释,可以在对象的Painter中增加注释,这些注释可以在Library Painter中看到.变量声明时,除临时变量i、j、k等外,原则上每行一个,在后面必须注释.对于Script,要在所有的事件处理程序或函数中添加完整的注释.首先,在每个Script的开头加注释,解释本Script段的功能、编写人员、编写时间、参数要求(如入口和出口参数等)在各程序段中编写必要的备注,备注应控制在20%的脚本量。

PB编程规范(v4.0)

PB编程规范(v4.0)

密级公开()普通(√)秘密()机密()绝密()PB编程规范文档编号:<文档编号(按照文档编码规范)>文档归类:项目规范文档作者:李程扬创建时间:2002-07-02修改时间:2005-09-29版本号:v3.0(2002-07-31)、v4.0(2005-09-29)文档传阅:ZHIS4项目组成员为提高程序开发效率,降低软件开发过程中出现错误的几率,使系统模块保持一致的风格,在开发过程中应该遵循一定的编程标准。

规范提供的是定义一个源码级应用程序的开发规范,它是借助PowerScript语言,在PowerBuilder开发环境下提供的标准化服务。

它可供应开发人员及系统设计人员使用。

本规范描述开发人员关心的外部特性及设施,而不是描述为达到这些功能采用的内部结构技术。

1、命名规范:1.1 命名总则:1.1.1 除了特殊说明外,所有命名均须使用规定的前缀标识,即“标识_功能说明”;1.1.2 所有命名的功能说明部分均为用下划线(_)分隔单词;1.1.3 “功能说明”部分的单词先后顺序以尽量使同一类别的对象排列在一起为原则,以便于查找定位;1.1.4 绝对禁止用单纯的数字或汉语拼音简码来命名,如ls_1、ls_brxm(病人姓名),必须使用与具体功能相关的单词或单词缩写,且尽可能使用行业常用术语或约定词汇,即词能达意、沟通方便;1.1.5 命名的原则是尽量能从名称上看出更多的隐含基本信息,如变量的作用域、变量类型等;1.2 对象命名规范:注意事项✌.对象命名:对象类型标识_功能说明,当然应用对象命名无须前缀标识;✌.对于窗口与数据窗口的命名,推荐采用“标识_子类别_名词_动词_备注”命名方式,这样可以把同类对象排在一起,编程时便于查找,应用框架也较为明晰;例如:w_employee_edit_gridw_employee_edit_freed_dept_previewd_dept_configd_query_apply_sheetd_query_lay_physicd_rpt_staff_print_freed_rpt_staff_print_grid由上,对于数据窗口子类别命名可遵循:打印(print)、查询(query)、报表(rpt) ✌.对于有继承关系对象的命名(窗口、菜单、用户对象),推荐用“父类_子类说明”;例如:w_spellw_spell_applyw_spell_apply_sicku_dwbuttonu_dwbutton_add1.3 变量命名规范:1.3.1 变量作用域前缀:注意事项✌.编程时对于全局变量、共享变量与实例变量能不使用时尽量不用,如可以用参数传值时就不要定义实例变量;1.3.2 变量类型前缀:注意事项✌.字符串类型统一用String,而不准使用Char类型;✌.日期类型推荐以“_date”作为后缀,时间类型以“_time”作后缀,✌.整型定义推荐都使用Long,因为Integer短整型最大值为32767,某些情况下可能会溢出;另外无符号长整型(UnsignedLong)与短整型(UnsignedInteger)的前缀与有符号类型一样;✌.浮点类型统一使用Decimal,不用Double或Real类型;Decimal在定义变量时须指定精度,即使是无小数位的情况下;若是存数据库列值的变量一定要注意与列的小数精度一致,这一点切记;例如:Dec{3} ldc_pres_costDec{0} ldc_nullah_numberDec{2} ldc_lay_physic_quantityDec{2} ldc_physic_pack_spec✌.对于存数据库数值类型列的变量一定要注意其是否有小数及其位数,另外,一定要使用Decimal类型变量,绝对不准使用Long类型,即使当前值它位数足够,但你不能保证将来变动时Long类型变量位数也足够存其值!✌.对于其它没列出的对象类型,取其单词首字母为前缀;例如:TranceObject lto_connect1.3.3 变量访问范围:注意事项✌.所有共享变量或实例变量都必须设置访问范围(Public、Protected、Private),不推荐使用Public类型,而用of_get_xxx与/或of_set_xxx向外提供封装接口;✌.在对象内使用全局变量时,尽可能在使用前把它赋值给同类型的实例变量,以使模块移植性更好(方便),例如,对象Constructor事件或窗口Open事件中:IS_LOGIN_DEPT_CODE = GS_LOGIN_DEPT_CODE1.3.4 变量名称:注意事项✌.对于从数据库或数据窗口中取值的变量,其后部分尽量用数据库字段名;例如:String ls_item_nameDec{3} ldc_total_dosage1.4 控件命名规范:注意事项✌.控件命名:“控件类型前缀_功能说明”,界面设计时其[作用范围]不用标示,如树形控件tv_physic;但在脚本中定义时必须遵循《变量命名规范》,如数据窗口控件:idw_send;✌.界面设计时不能使用控件的缺省名称(如cb_1,dw_2),须用与控件功能相关的单词,单词间用下划线(_)相隔;当然一些图示控件(如GroupBox,Line)可以除外;一般界面有多个相同类型控件或控件名要在代码中引用时就要改变其缺省定义。

pb程序规范

pb程序规范

pb程序规范一、书写格式a. 用分层缩进的写法显示嵌套结构的层次。

b. 在注释段与程序段,以及不同逻辑的程序段之间插入空行。

c. 每行只写一条语句,当需要滚动显示时应该分行书写。

二、流控制流控制首先应遵守PowerBuilder语法规范,且用分层缩进的写法突出显示嵌套的层次结构,例如:For i = 1 To 100For j = 1 To 50For k = 1 To 200Matrix[i,j,k]=1NextNextNext三、注释及格式要求注释总是加在程序中需要概括性说明或不易令人理解或容易令人理解错的地方。

注释语言应简练、易懂而又准确,所采用的语种首选是中文,如有输入困难或特殊需求也可采用英文。

注释原则:a. 函数或过程的注释(1) 在函数头部必须说明函数的功能和参数(值参、变参);(2) 在函数的主体部分,如算法复杂时,应以注释的方式对其算法结构做出说明;(3) 函数申请过全局资源且有可能导致资源紧张应加以注明(如内存和文件柄等);(4) 函数有副作用一定以十分醒目的方式(如加!号等)注明。

b. 语句的注释(1) 应对不易理解的分支条件表达式加注释;(2) 不易理解的循环,应说明出口条件(有GOTO的程序还应说明入口条件);(3) 过长的函数实现,应将其语句按实现的功能分段加以概括性说明。

c. 常量和变量的注释在常量名声明后应对该名做适当的注释,注释说明的要点是:(1) 被保存值的含义(必须) ;(2) 合法取值的范围(可选);(3) 全局量需要对以上逐点做充分的说明。

d. 制定对象的注释每个开发人员针对自己所制定的窗口、菜单、数据窗口、数据管道和用户对象等添加注释,要点是:(1) 标注对象的用途;(2) 标注对象的制定人员;(3) 标注时间或者修改时间。

具体格式要求如下:1. 在窗口Open事件前应说明/* ======================================================= */// 窗口中英文名称:// 窗口作用:// 作者:// 日期:/* ======================================================= */2. 在事件脚本(Script)之前应说明/* ======================================================= */// 脚本作用:// 输入参数及数据类型:// 返回参数及数据类型:// 全局函数及其用途:// 全局变量及其用途:// 作者:// 日期:// 修改人的姓名:// 修改日期:// 修改原因:/* ===================================================== */若有多人修改,每个人均加上自己的注释,而不能改他人的姓名、日期、原因,对要修改的脚本,只能注释不能删除,并且在修改的地方加上修改人名、日期和"Beginning Modification... ","Ending Modification"字样。

系统软件编制规范(PB)

系统软件编制规范(PB)

目录一引言 (1)1编写目的 (1)2背景 .........................................................................................错误!未定义书签。

二设计规范 (1)1系统规划 (1)2文件管理 (2)2.1目录管理 (2)2.2文件命名规范 (3)2.3文件备份机制 (3)3程序设计规范 (3)3.1界面风格 (4)3.2命名规范 (6)3.3快捷键的定义 (10)3.4编程规范 (10)3.5编程风格 (11)系统软件编制规范一引言1编写目的统一整个软件的界面风格,确定软件编制过程中“库文件”、“控件”、“变量”、“对象”、等的命名规范,增强软件开发过程中的规范性、使用时的易维护性。

二设计规范1系统规划1.1计划制定1.2计划实施2文件管理2.1目录管理(1)目录开发过程中程序、文件、文档、备份等按功能要求分别存放在D:\code\app目录下的不同子目录下,具体如下:程序: D:\code\app\模块名流程图和文档: D:\code\app\doc\模块名可执行文件:D:\code\app\exe\模块名备份文件:D:\code\app\bak\模块名sql文件:D:\code\app\sql\模块名图片文件: D:\code\app\bmp\模块名(2)库文件(PBL)程序开发过程中的各种对象按功能分别存放不同的PBL中,并附加说明。

(如:有系统管理、计划管理、生产管理、物流分析及控制、采购管理、仓库管理、财务管理、通用查询、数据通信等模块,各模块主文件命名规则是模块名的汉语拼音缩写,分别对应如下:公共应用名称:tyfz父类组件:inherit.pbl(与业务无关)公共组件 pub.pbl(与业务有关)应用一:xtgl系统管理数据窗口:xtgl_dw.pbl系统管理窗口:xtgl_w.pbl系统管理函数及其它:xtgl_func.pbl应用二:jhgl计划管理数据窗口:jhgl_dw.pbl计划管理窗口:jhgl_w.pbl计划管理函数及其它:jhgl_func.pbl应用三:scgl生产管理数据窗口: scgl_dw.pbl生产管理窗口: scgl_w.pbl生产管理函数及其它: scgl_func.pbl应用四:wlkz物流分析及控制数据窗口: wlkz_dw.pbl物流分析及控制窗口: wlkz_w.pbl物流分析及控制函数及其它: wlkz_func.pbl应用五:cggl采购管理数据窗口:cggl_dw.pbl采购管理窗口:cggl_w.pbl采购管理函数及其它:cggl_func.pbl应用六:ckgl仓库管理数据窗口: ckgl_dw.pbl仓库管理窗口: ckgl_w.pbl仓库管理函数及其它: ckgl_func.pbl应用七:cwgl财务管理数据窗口: cwgl_dw.pbl财务管理窗口: cwgl_w.pbl财务管理函数及其它: cwgl_func.pbl应用八:tycx通用查询数据窗口: tycx_dw.pbl通用查询窗口: tycx_w.pbl通用查询函数及其它: tycx_func.pbl应用九:sjtx数据通信数据窗口: sjtx_dw.pbl数据通信窗口: sjtx_w.pbl数据通信函数及其它: sjtx_func.pbl各种对象应分类分别存放在相应的pbl中。

PB程序编制规范(初稿)

PB程序编制规范(初稿)

PB程序编制规范版本历史1概述为提高编码效力,减少程序差错,保持各产品间界面风格统一,特制定以下PB程序编制规范,如在门户框架下的程序开发都应遵守本规范。

2命名规范2.1文件2.1.1 PBL文件XX_XXXX:系统简写+_+库名XX_MAIN:主库(主窗口,主菜单及本系统的私有维护)XX_PUBLIC:本系统的公用部份XX_XXXX: 业务功能1全局PBL注:有些基于某个产品的公共PBL需要互相产品组间沟通后共享使用,例如:在HRP系统中的HIS_SHARE.PBL2.1.3资源文件2.2应用应用名一般与产品的简称同名2.3菜单M_XXX_XXXX(W__PBL名称_功能名称)例:在BQ_YZCL.PBL中菜单M_BQ_YZCL_YZSR2.4窗口W_XXX_XXXX(W_PBL名称_功能名称)例如:yk_bisiness.pbl中,药库入库处理窗口为W_YK_BISINESS_RKCL,药库主窗口命名为W_YK_BISINESS_MAIN新建窗口规定:2.5控件<控件前缀> + '_' + 控件名称控件命名按照PB默认的前缀,详细如下:2.6对象<对象前缀> + '_'+PBL名称+'_'+ 对象名称U_XXX_XXXX(非可视对象,U__PBL名称_对象名称) VU_XXX_XXXX(可视对象,VU__PBL名称_对象名称)注:非可视对象需继承自nvo_Module特别注意1.门户程序不能使用非门户中的对象2.非门户程序在BS_PUBLIC公共库有相同功能组件的情况下,不得使用其它组件2.7变量<变量作用范围前缀> + <变量数据类型前缀> + '_' + 变量名称例:门诊号参数As_mzhm注:门户下的产品不能使用自定义公共全局变量BSHRP4规定全局变量如下:2.7.1作用范围2.7.2数据类型2.8结构2.9函数2.10事件所有用户自定义事件均以ue_开头,后接事件名称。

pb报表编制步骤教程文件

pb报表编制步骤教程文件

p b报表编制步骤Pb 自定义报表编制步骤演示本操作说明已连接sql 数据库为例,对于熟悉使用pb 的可以略过第一步的操作说明第一步:数据库连接图1图2点这个按1、点中点图3完成必要连接后,点【APPLY】,然后点【ok】图4图5 这时系统后回到图1的界面中,这时数据已连接成功。

第二步:建立空间(workspace)图6 输入一个名称使输入数据库服务器名称或ip输入数据库用户和输入帐套数点击这里这时会出现刚才你录入数据名,点点击这个按钮直接点图7直接命名,然后保图8第三步建立一个应用程序保存new workspace后系统出现如下界面再点这图9点图10选中这个图标然后图11在这里录入应用程序这里系统会根据你刚才所创建的空间自定默认图12第四步:创建数据窗口又一次点这图13点图14图15这里有许多数据窗口的格式,但建议使用grid 格式,其他的A3、i6报表平台不支持或显示的界面不是很好,而grid 格式和我们系统中的报表风格比较一致,另外我对于其他格式也不熟,说出个所以然来^-^图16这时系统会出现:选择【grid 】选这个,用的是在这里选择你所需要的表或图16Pb中,所有表和视图都在select tables 中。

我个人认为当你需要创建一个报表时,而这个报表需要关联都个表,先在sql企业管理器创建一个视图,然后到这里直接选择这个视图即可。

因为在pb 中选择表间比较麻烦(反正我不会用),而在sql企业管理器中可以减少许多维护,如我们的报表需要增加条件,只要修改视图即可,不需要重新编制,重新上传。

点中你需要的表或视图,选中点图17选取报表需要显示的字段图18图19这时系统弹出后续的对话框,都选【next 】即可图20用鼠标选中点蓝即用鼠标拖动,确定报表中从左到右字段的排列,要一次性排设置完成【next图21Finish图22修改字段【finish 】预览区这里是报表字段头,可以修改成细节区,也这里是合计或然后在这1、点中个文本框图23调整列宽鼠标点中这根线左右拖动即可调整列图24增加合计选中这个字段,要求是数图25选中需要合计的字段后,点击菜单栏【insert】——【control】——【sum】,如图26图26图27在合计栏中增加一个文本框,说明这里是合计,点击菜单【insert 】——【control 】——【text 】 图28这时这里会增加一个1、然后鼠标单击,这里就出现了一个txet 的文输入“合计”这里输入‘合计’图29这样数据窗口设置已基本完成了,保存保存图30数据窗口命图31第五步:转换文档图32图33报表编制完成第六步:报表应用A3中允许上传自定义报表的地方如下:采购销售库存车间作业分析报表上传我这里以车间作业分析为例(A36.0之前版本只有生产模块中存在这个平台)。

PB命名规则及软件开发规范

PB命名规则及软件开发规范

PB命名规则及软件开发规范软件的编写、维护和测试都是由多人协同完成的,这样在工作中就需要一些约定和规范来协调工作人员的工作。

PB虽然吸收了很多RAD工具的优点,但工具只是设施、基础,还需要优秀的方法指导。

这就需要我们制定软件书写标准以规范我们的程序开发。

使程序具有很好的可读性、可维护性。

下面就pbl库划分、命名规范、注释规范、代码格式规范及界面规范进行约定。

一、应用程序pbl组成(假设应用名为app)我们将对象进行分门别类存放,以便于查找和管理1、share.pbl:存放应用、菜单、公用函数、公用结构。

或者命名为public.pbl 。

2、app_win.pbl:存放窗口。

3、app_dat.pbl:存放数据窗口对象。

4、control.pbl:存放公用的用户对象(这些对象可以直接移植到其他的项目中使用)。

注:鉴于目前我们PB开发系统状况——【窗口】、【数据窗口对象】都比较多,第2点,3点规范不采纳,我们将对【窗口】、【数据窗口对象】都按系统大菜单的功能来命名pbl并存放在一起。

二、应用程序中对象命名规范1、窗口命名规范窗口的名字以w_开头,后面加以描述其功能的英文单词。

如w_label表示此窗口为标引窗口。

如果A窗口为B窗口(w_label)的弹出窗口,则A窗口应命名为w_label_pop(pop 为弹出窗口功能的英文名称)。

(注:不做强制要求,直接w_模块功能名也可以)2、数据窗口对象命名规范数据窗口对象以d_开头,后面加上作为其数据源的表名。

如以表stv_class为数据源建立的数据窗口对象应命名为d_stv_class。

如果对d_stv_class进行了修改,如更改其显示风格、增加计算字段或检索参数等,则将其命名为d_winname_label(winname为窗口名,label功能名)。

注:对【数据窗口对象】再详细说明一下,按其功能作用再分命名方式。

报表:d_模块功能名子报表:dwc_模块功能名查找条件datawindow:dwf_模块功能名Windows窗口里:dw_模块功能名Datastore对象:ds_模块功能名下拉列表框datawindow:dddw_模块功能名3、变量命名规范全局变量命名:以gt_开头,其中t表示数据类型的第一个英文字母,后缀为变量功能名。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

PB程序编制规范
版本历史
1概述
为提高编码效力,减少程序差错,保持各产品间界面风格统一,特制定以下PB程序编制规范,如在门户框架下的程序开发都应遵守本规范。

2命名规范
2.1文件
2.1.1 PBL文件
XX_XXXX:系统简写+_+库名
XX_MAIN:主库(主窗口,主菜单及本系统的私有维护)
XX_PUBLIC:本系统的公用部份
XX_XXXX: 业务功能1
全局PBL
注:
有些基于某个产品的公共PBL需要互相产品组间沟通后共享使用,例如:在HRP系统中的HIS_SHARE.PBL
2.1.3资源文件
2.2应用
应用名一般与产品的简称同名
2.3菜单
M_XXX_XXXX(W__PBL名称_功能名称)
例:在BQ_YZCL.PBL中菜单M_BQ_YZCL_YZSR
2.4窗口
W_XXX_XXXX(W_PBL名称_功能名称)
例如:yk_bisiness.pbl中,药库入库处理窗口为W_YK_BISINESS_RKCL,药库主窗口命名为W_YK_BISINESS_MAIN
新建窗口规定:
2.5控件
<控件前缀> + '_' + 控件名称
控件命名按照PB默认的前缀,详细如下:
2.6对象
<对象前缀> + '_'+PBL名称+'_'+ 对象名称
U_XXX_XXXX(非可视对象,U__PBL名称_对象名称)
VU_XXX_XXXX(可视对象,VU__PBL名称_对象名称)
注:非可视对象需继承自nvo_Module
特别注意
1.门户程序不能使用非门户中的对象
2.非门户程序在BS_PUBLIC公共库有相同功能组件的情况下,不得使用其它组件
2.7变量
<变量作用范围前缀> + <变量数据类型前缀> + '_' + 变量名称
例:门诊号参数As_mzhm
注:门户下的产品不能使用自定义公共全局变量
BSHRP4规定全局变量如下:
2.7.1作用范围
2.7.2数据类型
2.8结构
2.9函数
2.10事件
所有用户自定义事件均以ue_开头,后接事件名称。

若定义的事件为PB内置的标准事件,则事件名称应与标准的名称相同,即将名称“pbm_xxxx”替换为“ue_xxxx”。

2.11数据窗口
一般数据窗口:
D_XXX_XXXX(D+_+PBL名称+_+数据窗口名称)
下拉式数据窗口:
DD_XXX_XXXX(DD+_+PBL名称+_+下拉式数据窗口名称)
2.12表与视图
表:XX_XXXX(系统简写+_+表名拼音缩写).例:住院系统的费用库(ZY_FYMX)
视图:V_XX_XXXX(V+_+系统简写_+视图名). 例:门诊系统的收费汇总视图(V_MZ_SFHZ)
2.13字段名
字段名一般是字段中文名称拼音的大写首字母缩写,一般为4个字母.如:药品序号(YPXH)
2.14主外键
主键:PK_XXXX_XXXX(PK+_+表名+_+列名)
外键:FK_XXXX_XXXX(FK+_+表名+_+列名)
2.15索引
IDX_XXXX_XXXX(IDX+_+表名+_+索引名)
2.16触发器
TR_XXXX_XXXX_XXXX(TR+_+所属表名+_+作用类型+_+触发器名).
2.17存储过程
PR_XX_XXXX(PR+_+系统简写+_+存储过程名)
3界面规范
3.1应用
1.系统运行平台为中文Windows XP、Windows 7。

界面在完成功能的下,窗体中各控件安排均匀,分布合理,能做到清晰、大方、整齐。

2.显示模式为1024*768或更高显示方式,支持宽屏显示器,有特殊要求的应用程序除外。

主要功能应支持分辨率变动自适应。

3.
3.2窗口
1.用程序主窗口采用MDI方式,应具有Miscohelp提示。

覆盖整个屏幕,应有菜单、工具条、显示状态栏;菜单各项对应打开的窗口为SHEET类型,覆盖整个工作区,不用菜单、工具条、显示状态栏;应提示信息、出错信息、确认信息、与用户的交
互提示而弹出的窗口用RESPONSE类型的窗口,其他的弹出窗口一律用POPUP
类型的窗口,并显示在屏幕中央;所有窗口的标题显示相应的功能说明2.功能窗体初始位置居中,横纵尺寸比例应采用16:9,不应覆盖菜单栏、工具栏和提示栏。

窗体最好覆盖整个工作区,表单类功能窗口要求支持分辨率自适应。

4.
3.窗体统一采用黑色字体,如有特殊要求,可选用红色或蓝色字体,但特殊色彩字体
不宜过多,同一窗体色彩不能超过四种。

4.色调的运用方面,一般采用黑,白,灰。

窗体底一般用灰色,字体用黑色,数据窗口底或列表及编辑框用白色。

禁止使用大片其他颜色区。

如有特别需要,可用其他
颜色和图标做细小的点缀。

5.代码输入采用弹出式响应窗体,弹出式响应窗体实现动态跟随,可在窗体内输入输入码。

6.窗体输入部分支持全屏幕编辑,含ENTER键跳转。

7.窗体控件布局顺序与TAB键跳转顺序一致。

5.
8.输入部分避免采用滚动条。

9.代码维护窗体和部分实现特殊业务的窗体采用响应窗体。

6.
3.3数据窗口
7.
1.在数据窗口的SUMMARY区内可以加入记录信息,如当前记录位置,记录数等。

字符前景色为BLUE。

2.数值型的数据显示或录入必须右对齐,日期型可居中或左对齐,字符串型必须左对齐(包括以下拉数据窗口形式显示的列)。

3.作为信息提示用的文本域一律靠右对齐,无边框。

字符前景色为TEXT(黑),背景色为BUTTONFACE,但当与之相关联的输入域为必输项时,字符前景色为
BLUE。

4.作为信息显示操作用的文本(输入)域一律靠左对齐。

边框类型为3D LOWER BORDER。

字符前景色为TEXT(黑色);若只显示,则字符背景色为ButtonFACE,
若可由用户输入,则字符背景色为WINDOWBACKGROUND。

3.4按钮
1.应用程序中所有按扭统一尺寸,统一颜色,统一采用中文系统字体。

位置应于窗体右侧或下侧,在右侧的按扭的右上角为起始点,在下侧的按扭以右下角为起始点。

2.菜单及按扭的快捷键位置放于汉字后,统一采用英文单词的首字母或第一个汉字的汉语拼单首字母,如遇到雷同现象,可自行修改。

快捷键包以()。

如窗体中只有
两个按扭,可不采用快捷键,但应有默认ENTER和ESC键,如超过两个按扭,
应采用快捷键,部分见附表。

3.一般按钮的属性
3.5 工具栏
1.
2.色彩风格要求
与系统风格统一。

3.工具栏按钮要求程序指定标准格式图片,按钮带快捷键并在同一窗口内不允许
重复。

4.表单类窗口一般采用32位大图标上下,文字在下格式
3.5控件
1.
2.
3.6功能键的约定
信息网络管理中心。

相关文档
最新文档