财务及企业管理软件开发规范.docx
财务及公司管理软件开发规范文档类别及使用对象文档类别该文档是为浪潮软件通用软件公司财务产品部财务产品开发提供一个规范性文献。使用对象该文档的使用对象为财务产品部分析人员、设计人员、程序员、测试员及项目管理人员和质量保证人员。未经财务产品部负责人许可,该文档不得提供上述规定对象以外的人员阅读或使用。第一章导言一、目的该文档是为财务产品部进行财务软件开发提供的规范,其目是:- 为各类开发、测试文档的编写提供标准- 保证软件实现时有统一的标准可参照- 使产品结构的组织方式统一- 保证软件测试时遵循一定的方法及规范可以合理的管理及使用公用资源二、范围本文档描述J'财务产品部进行财务软件开发时提供的需求规格说明书、软件设计说明书的标准内容,给出了软件实现过程中的所依据的标准,软件在测试过程中工作内容,以及公用资源库的管理和使用办法。三、术语定义子系统:模块:四、参考资料1计算机软件工程规范一国家标准汇编中国标准版出版社199221公司管理信息系统开发指南浪潮集团山东通用软件有限公司1997.8五、版本更新记录版本/修订版日期修改记录备注1.098.10初始版本第二章开发文档规范第一节业务流程图一.采用工具采用VISIO系列工具。二.书写规定在充足了解用户业务的基础上,采用VISIO工具书写流程图。1 .按某一具体的业务形成一个文献,例如:“采购计划”的流程图存放成一个文献,“采购核算”的流程图存放成另一文献。其中“采购计划”、“采购核算”是两种具体业务。2 .文献的开始内容,是所描述业务的名称。例如:“采购计划”流程图文献的第一页的题目是“采购计划”。3 .在文献的Properties属性中,写明文献的“Title"、“Subjeci"、“CreaIOr”及简朴的描述"Description”。4 .多页描述业务内容较多,不能在一页内完整描述时,分页描述。业务的起始内容书写在第一页,以后的内容放在后页中。5 .页大小一般采用A4纸的大小,可以根据不同情况调整。三.书写格式流程图中所涉及的不同对象、不同的表达方式采用以下规定。1 .业务名称。汉字书写,字号为14,黑体,居中或左对齐。2 .各种对象的表达符号A.人员,例如操作员、记帐员、客户、供应商等,采用圆圈内书写人员的方式。B.判断,例如审核等,采用菱形符号,其判断结果为“Yes”或“No”,并且使用箭头指出。一C.操作,例如记帐、材料出入库等,采用矩形符号,其中写明操作方式。一般来说,操作是由人员执行的,执行人在操作左边或上面表达,用箭头连接。制单记帐D.输入操作,例如单据输入等,采用梯形符号,其中写明操作方式。E.实物,例如材料、产成品等,采用平行四边形符号,其中写明实物名称。F.单据,例如入库单、记帐凭证等,采用下面符号,其中写明单据名称。前者表达一张单据,后者表达多张单据。G.存档结果,采用下面符号,其中写明操作方式。3 .表达符号的大小及字体规格各种表达符号不能忽大忽小,应在美观、流畅基础上设立,一般采用以下规格:圆圈大小直径为2cm,其他符号横向纵向比例为3:2,既横向为3cm,纵向为2cmo当然根据需要进行整体的适当放大。字体规格:字型为Arial,字号为IOPt.可随符号的放大,字体增大。4 .表达符号的顺序及连接根据业务的流程,表达符号从左到右排列,之间采用箭头连接,并且箭头的两端分别连接符号的中间;对于分支的连接方式采用树状符号。四.输出规定在打印输出时,设立打印格式,预留装订线的位置。装订时,按照业务流程从上到下排列纸张顺序。第二节类图一.使用工具RationalRose二.操作环节2. 1找准对象,将各对象的描述信息写好。3. 2画出对象间-般到特殊(继承)、整体到部分(聚簇)、依赖、联系等的关系,可以相应相应的描述信息。2. 3标记出一对多,多对一的关系。3. 4在对象上添上属性,属性的类型要表达出来(例如:主键、外键)。4. 5在对象上添加上方法,可相应相应的描述信息。5. 6检核对象的关系是否合理。6. 7检核对象上的方法是否实现了所有功能。2. 8重新抽象对象,重新调整关系。三.书写规定在划类图时应坚持以下原则:3. 1类图以清楚表达对象间的关系为目的,一个系统可画若干类图,一张图可只表达关系紧密的几个对象,不一定必须将所有对象放到一张图中表达。3. 2各对象之间的关系线,以不交叉为原则。7. 3对象一定得找全、找准四、输出规定8. 1类图9. 2rose的report(WOrd文挡)第三节软件需求规格说明书该说明书应按照以下格式编写,具体如下:文档类别及使用对象1.导言1.1目的说明编写这份软件需求规格说明书的目的。1.2范围描述本文档所涉及的范围及未涉及的内容。1. 3术语定义列出本文献中用到的专门术语的定义和外文首字母组词的原词组。1.4参考资料列出用得着的参考资料。1 .5版本更新记录记录本文档的版本更新过程。2 .任务概述2. 1目的叙述该项软件开发的意图、应用目的、作用范围以及其他应向读者说明的有关该软件开发的背景材料。解释被开发软件与其他有关软件之间的关系。假如本软件产品是一项独立的软件,并且所有内容自含,则说明这一点。假如所定义的产品是一个更大的系统的一个组成部分,则应说明本产品与系统中的其他各组成部分之间的关系,为此可使用一张方框图来说明该系统的组成和本产品同其他各部分的联系和接口。22用户的特点列出本软件的最终用户的特点,充足说明操作人员、维护人员的教育水平和技术专长,以及本软件的预期使用频度。这些是软件设计工作的重要约束。3. 3假定和约束列出进行本软件开发工作的假定和约束,例如经费限制、开发期限等。3.需求规定4. 1对功能的规定用列表的方式(例如IPO图),逐项定量和定性地叙述对软件所提出的功能规定,说明输入什么量、经如何的解决、得到什么输出,说明软件应支持的终端数和应支持的并行操作的用户数。32对性能的规定3.2.1精度说明对该软件的输入、输出数据精度的规定,也许涉及传输过程中的精度。3.2.2时间特性规定说明对于该软件的时间特性规定,如对:A.响应时间;B.更新解决时间;C.数据的转换和传送时间;D.解题时间;等的规定。3.2.3灵活性说明对该软件的灵活性的规定,即当需求发生某些变化时,该软件对这些变化的适应能力,如:A.操作方式的变化;B.运营环境的变化;C.同其他软件的接口的变化;D.精度和有效时限的变化;E.计划的变化或改善。对于为了提供这些灵活性而进行的专门设计的部分应当加以标明。3. 3输入输出规定解释各输入输出数据类型,并逐项说明其媒体、格式、数值范围、精度等。对软件的数据输出及必须标明的控制输出量进行解释并举例,涉及对硬拷贝报告(正常结果输出、状态输出以及异常输出)以及图形或显示报告的描述。3.4数据管理能力规定说明需要管理的文卷和记录的个数、表和文卷的大小规模,要按可预见的增长对数据及其分量的存储规定作出估算。3.5故障解决规定列出也许的软件、硬件故隙以及对各项性能而言所产生的后果和对故隙解决的规定。3.6其他专门规定如用户单位对安全保密的规定,对使用方便的规定,对可维护性、可补充性、易读性、可告性、运营环境可转换性的特殊规定等。4.运营环境规定4. 1设备列出运营该软件所需要的硬设备。说明其中的新型设备及其专门功能,涉及:A.解决器型号及内存容量;B.外存容量、联机或脱机、媒体及其存储格式,设备的型号及数量;C.输入及输出设备的型号和数量,联机或脱机;D.数据通信设备的型号和数量;E.功能键及其他专用硬件。4. 2支持软件列出支持软件,涉及要用到的操作系统、编译(或汇编)程序、测试支持软件等。4. 3接口说明该软件同其他软件之间的接口、数据通信协议等。4. 4控制说明控制该软件的运营的方法和控制信号,并说明这些控制信号的来源。第四节软件设计规格说明书该说明书应按照以下格式编写,具体如下:文档类别及使用对象描述本文档的类别、使用对象及使用对象外的对象在什么情况下可以使用本文档。1.导言1.1目的描述本文档的编写目的。1.2范围描述本文档所涉及的内容范围。1.3术语定义对本文档所涉及的一些语述进行解释。14参考资料描述本文档的参考资料1 .5版本更新记录记录本文档的版本更新记录。2 .产品框架结构图产品框架结构图描述整产品的体系结构,应包含如下内容:整个产品的体系结构图(模块图),各模块接口关系。3 .软件解决流程图该流程图应是基于模块的。每个模块的流程图分.主流程图和细化的流程图。细化的流程图的划分标准,以一个独立的业务对象或功能对象为依据。软件解决流程图的内容:功能解决流程的描述,重要解决方法的描述,重要系统参数的定义,与其他系统接口的描述。4 .功能层次图是软件完毕需求规格、解决流程的具体表现形式。功能层次应与业务流程相相应,以便于在精简或增长业务流程时,从功能层进行相应的减少或扩充。重要有以内容:功能层次图功能层次图以树状结构描述,功能层次图中,每一项功能都应规定字的功能号,这里的功能将是在软件实现时进行权限控制及作其它引用的功能号,因此在定义时必须遵循规定,这里规定功能号的格式如下:系统编号(两位)+功能层次号(4位)系统编号的规定参见附录;系统菜单定义出模块的下拉主菜单,各菜单中也要体现中功能号,以便于了解功能层次图同系统菜单各项的联系。5 .具体设计具体设计应基于功能层次图及以前各部分资料,其重要内容涉及界面设计、程序解决流程、方法、说明等等,是程序员进行程序设计的依据。具体内容如下:一一任务编号/名称:作为某一任务的标记。一一背景描述:对这一任务的背景进行简朴的描述。 涉及数据表(重要/相关):该任务涉及到的重要操作表及相关操作表。 界面:该任务所用到的所有界面的描述。界面中所涉及到的项目的解释。一功能、性能:该任务要提供的功能及其描述,以及应达成的性能规定。 解决:该任务的解决流程。对于简朴任务,可不进行描述。 重要算法设计:该任务所涉及到的重要算法及描述,对于简朴或常用的算法可不必进行描述。一一注意事项:对于一些特别需求注意的事项要在此注明。6.数据结构设计涉及以下内容: 表名/辨认名称:任为表的标记。 属性描述:描述该表的所有属性及各属性的属性,主外键描述等,具体格式如下:表名表的命名,命名规范辨认名称表达意议的汉字名称索引如有多个索引,分别列出序号名称辨认名类型空否缺省检查主/外键备注主键用PK表达,外键用FK表达,假如为外键,则要在备注中指明引用的表。该项内容也可以直接从类图生成的资料成获得,按原格式即可。 索引描述:描述该表的索引,将所有的索引都列示出来,具体格式:索引:名称,unique,clustered,列名 涉及方法:该表所涉及的操作。第三章软件实现规范第一节组织方式产品的结构应遵守的原则:执行方便、登录简朴、互相联系、风格流行。执行方便是指在用户在操作时可以很方便的操作国强财务软件能中的任何一个模块;登录简朴是指用户在登录国强财务软件时是不需录通过太复杂的过程,可以很直接的进行系统进行操作;互相联系是指用户登录进行某一个子系统后,不需要再重新登录就能直接转换到其它子系统下进行操作;风格流行是指产品的形式、结构要符合当前流行软件及同类产品中一些优秀软件的形式和结构。签于以上原则,建议国强财务软件的组织方式如下:国强财务软件按照子系统进行划分,每一个子系统作为一个应用软件,建立一个独立的图标,建立国强财务软件组,各子系统的图标均在该组内。各个子系统的应用菜单中,应均有一项联接其它子系统的菜单。各个子系统的登录方式如下:执行程序时一方面显示一欢迎窗口,该窗口应以简炼、精致、准确反映信息为原则;显示完迎窗口后显示登录窗口,在该窗口中应允许输入登录编号、登录口令、选择帐套,可以新建帐套、新建用户;登录信息输入对的后进行该套帐进行操作。具体如下图:各子系统的操作主画面还是以传统的下拉式菜单加TOo1.BAR的方式,第一行为主操作菜单,第二行为Too1.BAR,最后一行为运营状态。对于各个具体操作功能,也以下拉菜单加TOO1.BAR的方式进行操作。具体如下:第二节命名规范一、数据库对象命名规范【目的】使本产品的所有系统既互相联系,又互相独立。既能单独运营于特定的数据库,又能同时运营于特定的数据库。使所有系统设计人员及程序员在设计数据库对象时有据标准可依。使整个产品不仅在界面、风格上一致,在内部结构上也采用相同的风格,以利于整个的产品的共同发展。【定义内容】需定义的内容涉及所有数据库对象:表、视图、存储过程、触发器及表的列。【命名规则】前豁表意名表意名以汉字拼音简写或英文单词。【具体内容】1、表前寮系统编号表名最长为13位。所有字符均以大写字母表达。如帐务系统中的科目字典:ZWKMZD如销售中的产品字典:XSCPZD2、列前缀=表名.表意名最长为15位。所有字符均以大写字母表达。如科目字典中的科目编号:ZWKMZD_KMBH3、视图前缀=vw_表意串中所有字符均以小写字母表达,表意串即为相应的表名。如帐务中关于专项核算的视图:vw_gszwhszd4、存储过程前皴=pr+变量类型表意串中的各意义段的第一个字符为大写字母。如取得两字符串中不同部分的存储进程:prsTwoStr5、触发器命名规则不同于以上:前缀中相应表名+后锻前缀”后缀根据触发器的性质决定:插入触发器Jns删除触发器_del更新触发_upt如:科目字典增长触发器:tr_gszwkmzd_ins6、部分表义名的构成:代表意义标记符BhMcJeSlWbDjHlZdMxJs二、POWerBIlikier对象命名规范【目的】使程序员可以进行无私程序设计,即避免程序员与其所产生的代码之间的关系过于密切。提高程序代码的规范化限度,使程序代码易读易懂,并可以达成程序员之间互相进行程序维护。【定义】变量类型:在本规范中,用于定义变量的PowerBuilder数据类型和PowerBuilder对象类型统称为变量类型。【命名规则】所有对象的命名皆依据下列规则:前缀+表意字串该规则由两部分构成:前缀部分依据不同类型的对象进行不同的规则定义;表意字串部分一般是指该对象的含义或功能描述。含义或功能描述应做到言简意赅,可采用纯中文(指汉字拼音的首字母),纯西文及中西结合的方法进行描述。对于PowerBuilderControls的名字,不要使用PoWerBUikier提供的缺省的纯阿拉伯数字,而要使用含义明确的表意字串。变量和对象的命字由程序员自由定义,下面的命名规范重要是对PowerBuilder对象的前缀部分进行规则定义。【书写标准】前缀部分皆用小写字母书写;名字部分的每一个语义段的首字母的皆用大写书写,也可以在前缀和表意串之间或表意串各语义段之间以下划线连接。其他字母用小写书写。【重要内容】以下为本规范中涉及的重要的PB对象:Windows,DataWindows>UserObjects;PowerBuilderControls;ObjectsinDataWindow;Functions:Variables;临时表等。1、Window,DataWindow,UserObject命名规范(1) Window前缀:w_+系统名称+_表意字串例如:帐务系统中的科目字典维护窗口:w_zw_KmzdWh(2) DataWindow前缀:dw_+系统名称+_表意字串例如:帐务系统中的科目字典数据窗口(查询用):dw_zw_KmzdWh_cx(增长删除修改用):dw_zw_KmzdWh_Update(3) UserObject前缀:UO-+系统名称+_或者u_+系统名称+_例如:可经PowerBuilder直接调用的Windows函数集对象:1.PUb-WinFunc(4) 系统名称代码见后2、 PowerBuilderControlsPowerBuilderControls的前缀一般采用PowerBuilder提供的缺省前缀,不采用其提供的。(1) CheckBox前缀:CbX_(2) CommandButton前缀:cb_对重要的CommanciButton的名字定义:按钮命字认试消出加除询印序询盘首尾页页<<A助是否查存T(T(是否件新4r确重取退增删查打排条更页页前后节T-帮cb_okcb-Retrycb_Cancelcb_Exitcb_Yescb_Nocb_Addcb_Delcb_Cxcb_Printcb_Sortcb_Tjcxcb_Updatecb_PgFirslcb_Pg1.astcb_PgPriorcb_PgNextcb_1.Priorcb_1.Nextcb_Help(3) DropDown1.istBox前缀:ddlb_(4) EditMask前缀:em_(5) Graph前经:gr_(6) GroupBox前缀:gb_(7) HScrollBar前缀:hsb_(8) 1.ine前缀:1.说明:对于不同型号的直线可用不同的前缀,如:(1)粗的横向直线chi+n(n=l,2,3.)(2)粗的纵向直线czl÷n(3)细的横向直线xhl+n(4)细的纵向直线xzl+n(9) 1.istBox前缀:lb_(10) Multi1.ineEdit前缀:mle_(11) O1.E2.0前缀:ole_(12) Oval前缀:o_(13) Picture前缀:p_(14) PictureButton前缀:pb_(15) RadioButton前缀:rb_(16) Rectangle前缀:rt_(17) RoundRectangle前缀:rrt_(18) SingIe1.ineEdit前缀:sle_(19) StaticText前缀:st_(20) VScrollBai前缀:vsb_3、 ObjectsInDataWindow假如没有必要,可以不对DataWindow中的对象进行命名。假如有必要,则需按下面说明的规则命名。DataWindow中的ObjeelS前缀命名方法是:对象所在区域+对象代码+_对象所在区域有四个,它们是:Header,Detail,Summary,Footer下面分别给出前缀定义:(1) Text前缀:t_(1) TextinHeader:ht_TextinDetail:dt_(3) TextinSummary:st_(4) TextinFooter:ft_(2) ComputedFieldDefinition前缀:J特殊的ComputerField前缀定义:A) PageDefinition(1) PageinHeader:hpg_(2) PageinDetail:dpg_(3) PageinSummary:spg_(4) PageinFooter:fpg_B) DateDefinition(1) DateinHeader:hda_(2) DateinDetail:dda_(3) DateinSummary:sda_(4) DateinFooter:fda_C) SumDefinition(1) suminHeader:hsum_(2) suminDetail:dsum_(3) suminSummary:ssum_(4) suminFooter:fsum_(3) Graph前缀:gr_(1) GraphinHeader:hgr_(2) GraphinDetail:dgr_(3) GraphinSummary:sgr_(4) GraphinFooter:fgr_(4) Report前缀:rp_(!)ReportinHeader:hrp_(2) ReportinDetail:drp_(3) ReportinSummary:srp_(4) ReportinFooter:frp_(5) ExtendedBitmap前缀:bm_(1) BitmapinHeader:hbm_(2) Bilm叩inDetail:dbm_(3) BitmapinSummary:sbm(4) Bitm叩inFooter:fbm_(6) Rectangle前缀:rt_(!)RectangleinHeader:hrt_(2) RectangleinDetail:drt_(3) RectangleinSummary:srt_(4) RectangleinFooter:frt_(7) 1.ine前缀:1.说明:对于不同型号的直线可用不同的前缀,如:(1)粗的横向直线h(d,s,f)chl+n(n=l,2,3.)(2)粗的纵向直线h(d,s,f)czl+n(3)细的横向直线h(d,s,f)xhl+n(4)细的纵向直线h(d,s,f)xzl+n(8) Oval前缀:ov_(1) OvalinHeader:hov_(2) OvalinDetail:dov_(3) OvalinSummary:sov_(4) OvalinFooter:fov_(9) RoundRectangle前缀:rr_(1) RoundRectangleinHeader:hrr_(2) RoundRectangleinDetail:drr_(3) RoundRectangleinSummary:srr_RoundRectangleinFooter:frr.(10) ColumnColumn的名字与表的列名同样.Function(函数)前锻=可调用范围+返回值变量类型可调用范围如下:可调用范围代码注释全程(系统)Window内部UserObject内部gWU返回值变量类型为数据类型或对象代码。例如:gsGetWholeKmmc()是取得科目全称的函数,合用整个Appacation,返回值为字符串型(科目名称)。例如:wiRjzSl()是窗口w_zw_ijzycx中形成数量日记帐的函数。数据类型或对象类型代码见附录:5、Variable(变置)前寮变量作用域+变量类型例:变量名作用域变量类型名字含义或功能isKmmcInstanceString科目名称IiRealKinjsInstanceInteger某总帐科目的实际级数vsSqiScriptString动态SQ1.语句VdJfjeHjScriptDouble借方金额合计vwMainScriptWindow模块中用到的主窗口变量gtSqlcaGlobalTransaction定义的另一个全程SQ1.CA对常用变量的规定:(1)循环计数变量循环计数变量由于应较频繁,不按上面的规则命名,只定义五个(即一个循环体至多能嵌套四次),使用时由前至后:i,j,k,m,n(2)临时变量有关临时变量的概念定义见PowerBuilder程序设计风格一节。定义:v+变量类型+Temp或者是V+变量类型+Oper(ate)(ate可省略不写)例:viTemp,vsTemp,vdTemp/Integer,String1Doubleviper,vsper,VdOperate(3)其他变量i)一般SQ1.语句用变量VSSql表达。(4) PowerBuilder中浮点数应定义成Double,不能定义成real,decimal等类型。5、临时表临时表的命名规则不同于以上PB对象的命名规则,它特殊遵循以下原则:(1)名字构成#+系统名称+表的内容及操作描述(+用户标记号)1+2+6+4=13(位)(2)临时表的表名皆用小写字母表达(3)临时表的名字总长度不超过13位例:总帐余额查询:#zw_zzye1234日记帐页查询:#zw_rjzyl2346、代码定义表(i)数据类型代码数据类型代码注释BlobblBooleanbCharCcharacterCDatedaDateTimedaDecimaldeDecdeDoubledIntegeriInti1.ong1RealStringSTimetUnsignedIntegeruiUnsignedIntuiUIntuiUnsigned1.ongulU1.ongul(2)对象类型代码对象名称代码注释ApplicationStructureMenuWindowDataWindowFunctionUserObjectTransactiondynamicdescript-areaerrormessageenvironmentapstmWdwfUOtdyermsen(3)变量作用域代码:变量作用域类型代码注释GlobalVariablegShareVariableSInstanceVariableiVariableInPowerScriptV(简记为Script)ParameterP(4)常用表意串缩写意义中英文缩写编号bh名称me类型type性质XZ属性SX级数js明细mxSQ1.语句sql材料cl产品CP科目km借方jf贷方df数量si金额je单价外币wb汇率hl折旧率ZjI重要main实际real第三节程序风格1、目的使程序员可以进行无私程序设计,即避免程序员与其所产生的代码之间的关系过于密切。提高程序代码的规范化限度,使程序代码易读易懂,并可以达成程序员之间互相进行程序维护。3、定义Script程序:在PowerBuilder对象中,一个事件或一个函数的Script中所包含的所有程序代码称为一个Script程序,在下面的引用中也简称程序。程序块:程序块是整个Script程序中完毕某一细分功能的具有相对独立性的一段程序,其重要内容涉及注释、变量定义及程序正文三部分。程序正文:是指不涉及程序头部注释和变量定义的纯PowerScript的语句部分。子程序块:程序块中的某细分功能的程序块称为子程序块。临时变量:临时变量是每一次赋值的作用域范围较小,一般不应超过五行程序。临时变量的名字自身只是说明了该变量只是一个临时的操作数,不具任何意义,但在某一作用域内代表不同的具体含义。4、程序设计规定一、依照所拟定的标准进行程序设计。二、模块的内聚度高,模块之间的耦合度低。在修改一个模块时,不要对其它模块导致影响。三、每个程序模块的行数不做规定;但对于程序模块中相对独性较高的程序块最佳提炼成为一个函数。四、尽量为程序块加上明确的注释。对于较第杂的程序或算法需要有注释文献,并在程序中注明注释文献名及在注释文献中注明程序名。5、程序风格定义定义了Window及Window对象的编程风格。5.1、Window的风格由于PowerBuilder是以Window对象为基础,以事件(EVem)解决为核心的面向对象的开发工具。所有的程序执行皆是事件触发式的。因此对整个的Window的出入口参数、完毕的功能及重要对象的功能进行轮廓描术是必要的。对于Window对象,需在OPen事件中对该Window所完毕的功能进行描述,涉及重要Controls事件和函数所完毕的功能。Window的OPen事件中程序头部具体格式如下:(这里描述的是文该窗口的总体性质,与事件无关,因此在其它事件或函数中要参照程序的注释格式及规定)*WinName:/窗口名字Parm:/参数及注释Return:/返回值及其注释Process:/完毕的功能及重要解决过程/以上是对整个Window的描述Call:/调用的其他窗口或函数(涉及其祖先,可不写)Called:/被哪个窗口的事件或函数调用(涉及其祖先,可不写)Date:WriteBy/编写日期,编写Process:/本OPen事件所完毕的功能及重要解决过程及适应情况*/以上是对本Open事件的描述5.2PowerScript的风格(事件、函数)(1)程序结构Script程序结构应是一个并列(或嵌套)的程序块结构。这样的结构简洁明快,易于理解,就象文章分段同样。程序结构如下:程序头部注释;作用于本程序的变量定义(注释);程序块1;程序块2;程序块i(子程序块il,子程序块i.2,子程序块i.n;)程序块n程序块的结构如下:程序块注释;变量定义(注释);语句1(注释),语句2(注释),语句n(注释)。(2)程序注释PowerScript的程序注释分为头部注释、块注释、行注释三种,注释尽量使用中文,以上注释的使用原则是:头部注释必须有;块注释尽量有;行注释可尽量少用,由于假如用的太多,则影响程序部分的可读性。程序头部注释风格如下(对于较简短易懂的程序可不必拘泥于此风格):/*Func:/函数,过程,事件的功能简述(必写)Parm:/参数及其注释(函数必写)Return:/返回值及其注释(函数必写)Call:/调用的其他对象(涉及其祖先名字)Called:/被哪个对象调用(涉及其祖先名字)Inhert:/继承的对象(涉及其祖先名字)Date:WriteBy编写日期,程序员Globle/引用全局变量Process/重要解决内容(涉及重要对象)*/5.3临时变量程序书写时,假如变量结果不需保存,则尽量运用已定义的临时变量而不定义新的变量。临时变量作用域不能超过一屏程序。各种数据类型的临时变量的名字见命名规范。第四节界面规范一、菜单重要规定菜单的分类及各类采单的重要内容。菜单分类1将系统的所涉及的所有的采单分为三类:系统空菜单系统主菜单功能操作菜单系统空菜单该类菜单在将帐套关闭的情形下出现,具体形式如下:Yr志41由EKR4打开(帐套)关于国强财务关闭(帐套)系统主菜单该类菜单在某一个子系统登录进入后出现,具体内容如下:第一级菜单都简写为两个汉字。功能操作菜单当执行某一个具体功能时,出现此操作菜单,该菜单出现后将主菜单屏蔽,要想同时操作该系统的其它功能,则只有通过第一行ToO1.BAR完毕,假如在TOo1.BAR中没有要操根据情况加入到“视图”菜单中,对于输出方面的操作,根据情况加入到“文献”中。以上菜单情况,对于查询类操作和输入/维护类操作不尽相同,需要根据情况对待,其中“兰色”为必有内容。±TOO1.BAR为主菜单中的Too1.BAR,操作Too1.BAR为“编辑”中的内容及其它部分重要内容。菜单热键规定各菜单项都要定义一热键,对于业务功能菜单这里没有作出具体规定,可根据功能内容自行定,但不得在同一栏菜单中反复,对于已确知功能,这规定如下:按钮热键Alt+F系统管理Alt+S其它系统Alt+OAlt+QAlt+EAlt+TAlt+HAlt+WAlt+0Alt+CAlt+G打印机设立Alt+EAlt+BAlt+RAlt÷UAlt+1.Alt+SAlt+EAlt+UAlt+VAlt+PAlt+QAlt+1.条件查询Alt+CAlt+S图形分析Alt÷G全显/分级Alt+A/TAlt+HAlt+V计算甥Alt+CAlt+OAlt+AAlt+DAlt+M二、窗口窗口分类所有的窗口分为以下几类:MdiMainResponsePopupChildren操作形式将窗口归纳为以下几种操作形式:立即响应式|:必须采用ReSponSe窗口,使用按钮,如:向导式:各环节的内容分别集成在个用户对象内,这样便于隐含;所有环节都必须在一个窗口内,一般采用response窗口,也可以根据实际情况调整。如:操作区K-1、环节一2、环节二2、环节二树和卡片结合式:将树对象同卡片结合在一个窗口内,左边是树,右边是卡片(或分立的控件),根据实际情况决定采用的窗口类型,如:编号*7UJ书签式:指一个窗口中有多个书签页,一般采用Main型窗口,不使用按钮,也可根据情况决定,使用菜单操作,如:普通操作式:指维护、输入、查询用到的般界面,涉及一级表头查询格式,多级表头查询格式。一般采用Mail型窗口,不使用按钮。如:I窗口使用根据不同的功能进行分类,按照以下原则使用:操作复杂、内容较多、在一外界面下解决难以理的功能,或者是操作