• 3.06 MB
  • 91页

土地开发整理预算定额软件的设计与开发

  • 91页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
'电子科技大学UNIVERSITYOFELECTRONICSCIENCEANDTECHNOLOGYOFCHINA工程硕士学位论文ENGINEERINGMASTERDISSERTATION论文题目土地开发整理预算定额软件的设计与开发工程领域软件工程指导教师祝峰教授作者姓名姜建明学号200792342024 分类号密级注1UDC学位论文土地开发整理预算定额软件的设计与开发(题名和副题名)姜建明(作者姓名)指导教师姓名祝峰教授电子科技大学成都魏先民高工潍坊市托普科技发展中心潍坊(职务、职称、学位、单位名称及地址)申请专业学位级别硕士专业学位类别工程硕士工程领域名称软件工程提交论文日期2010.4论文答辩日期2010.5学位授予单位和日期电子科技大学答辩委员会主席评阅人年月日注1:注明《国际十进分类法UDC》的类号2 独创性声明本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研究成果。据我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得电子科技大学或其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示谢意。签名:日期:2010年5月5日关于论文使用授权的说明本学位论文作者完全了解电子科技大学有关保留、使用学位论文的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁盘,允许论文被查阅和借阅。本人授权电子科技大学可以将学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。(保密的学位论文在解密后应遵守此规定)签名:导师签名:日期:2010年5月5日 摘要摘要土地开发整理是人类在土地利用实践活动中不断建设土地和重新配置土地的过程。土 地开发整理以获取土地利用的社会效益、经济效益、生态效益三者协调统一的综合效益为 原则,以保护和改善生态环境为前提,以改善农业生产条件和提高土地的集约化利用程度 为手段,以土地资源的可持续利用为最终目标。土地开发整理预算定额计价方式是近几年 国家新投资土地开发整理资金的一种有效管理形式。随着国家对土地整理项目资金的逐年 增加,项目资金的预算工作越发重要,同时现在工程项目都要通过招投标方式实施。因此, 将土地开发整理预算定额软件化也就成了具有重要意义的工作。相对于工业和民用建筑工 程造价系统,我国在土地开发整理工程造价系统方面的研究才是刚刚起步。设计与开发出 操作简单、规范实用的土地开发整理预算定额软件成了当前非常紧迫的任务。作者在掌握土地开发整理预算定额编制方法的基础上,重点分析了土地开发整理预算 定额的结构,并且利用面向对象软件工程方法,对土地开发整理预算定额软件进行了面向对象分析、面向对象设计和面向对象程序设计,在windows平台上成功地开发出操作简 单、规范实用的土地开发整理预算定额软件,通过对该软件进行系统测试,表明该软件操 作简单、运行可靠,所得结果规范、正确。该软件具有如下优点:定额数据的可见性及可编辑性:可以直接在定额库中查看、查 寻、修改,可自由扩充工程定额库、材料数据库、施工机械台班费定额库和设备数据库; 操作过程简单快捷:在整个土地开发整理工程预算编制过程中,可以用鼠标来完成软件的 所有功能和整个工程造价的编制工作(除了输入工程量和必要的标志性符号);计算速度 快、结果准:土地开发整理预算定额软件所有内部自动计算均是根据有关文件规定设计, 确保了计算结果的准确性;并且所有计算取费费率都可自由设定,确保软件的实用性和通 用性;输出表格规范灵活:软件的报表格式完全按照土地开发整理预算定额编制文件的规 定,保证输出的工程造价表格规范、美观,并且可自动调整页面和自由定制输出报表格式。 使用该软件可以使原来花费一个月时间编制的工程造价能够在几个小时内就可以准确完 成,大大的提高了工效和准确性。该软件的使用将土地开发整理预算编制水平的提升到了 一个展新的高度。关键词:预算定额,土地开发整理工程,面向对象,工程预算编制I ABSTRACTABSTRACTThelanddevelopmentandconsolidationistheprocessofconstructionlandandreconfigurelandInhumanlandusepractice.Thelanddevelopmentandconsolidationprincipleislandusesocialbenefit,economic,ecologicalthreecomprehensivebenefits,premiseistoprotectandimprovetheecologicalenvironment,meanstoimproveconditionsforagriculturalproductionandraisetheleveloflandintensiveuse,theultimategoalisthesustainableutilizationoflandresources.Thelanddevelopmentandconsolidationbudgetquotavaluationmethodisaneffectiveformofmanagementforthelanddevelopmentandconsolidationofnationalnewinvestmentfundsinrecentyears.Alongwiththestateoflandarrangementprojectfundsincreasedyearbyyear,theprojectbudgetworkmoreimportant,andnowthebiddingprojectimplementationways.Therefore,thelanddevelopmentandconsolidationbudgetnormsoftwarehasbecometheimportantsignificanceofthework.Inchina,relativetotheindustrialandcivilengineeringcostsystem,thelandconsolidationprojectcostsystemresearchisjustgettingstarted.Designanddevelopsimpleoperation,standardizepracticallanddevelopmentandconsolidationbudgetnormsoftwarehasveryurgenttask.Basedonthemasteryofthemethodforworkingoutthecostofthelanddevelopmentandconsolidationbudgetnorm,theauthoranalyzethestructureofthecostofthelanddevelopmentandconsolidationbudgetnormemphatically,then,object-orientedanalysis,andobject-orienteddesign,andobject-orientedprogrammingforthecostsystemofthelanddevelopmentandconsolidationbudgetnormareprocessedwiththemethodoftheobject-orientedsoftwareengineering,andthecostsystemofthelanddevelopmentandconsolidationbudgetnorminoperationsimplyandinwideusehasbeendevelopedsuccessfullyontheflatofwindows.Atlast,systemtestingforthecostsystemofthelanddevelopmentandconsolidationbudgetnormiscarriedout,asindicatesthesystemrunsstablyanditsresultsareinaccordingtotherelatedrequirements.Thissoftwarehasthefollowingadvantages:Fixeddatavisibilityandeditable:Can directlyinthenorminview,search,modify,freeexpansionprojectquota,materials, constructionmachinerydatabaseplatformBanFeinormandequipmentdatabase;Simpleand easytooperate:Throughoutthelanddevelopmentandconsolidationofengineeringcost,can usethemousetofinishallthefunctionsandthesoftwareengineeringcost(excepttheinput quantitiesandnecessaryiconicsymbol);ComputingspeedandResultsallowed:Theland developmentandconsolidationbudgetnormallinternalautomaticcalculationsoftwareisII Abstractdesignedaccordingtotherelevantdocuments,toensuretheaccuracyofthecalculationresults,Andallthecalculationforfreedomcanbeset,rateofpracticalanduniversalthatsoftware;Outputformstandardflexible:Thereportformcompletelyaccordingtothesoftwareforlanddevelopmentandconsolidationofbudgetnormpreparesdocuments,ensuretheengineeringcostformoutput,beautiful,andcanautomaticallyadjustthepageandfreecustomoutputstatementsformat.Useofthissoftwarecanmakeoriginallyspendamonthofprojectcostinacoupleofhourstocomplete,accuratecangreatlyimprovetheefficiencyandaccuracy.Theuseofthesoftwarewilllanddevelopmentandconsolidationbudgetinglevelofascensiontoanewheightsolo.Keywords:budgetnorm,thelandconsolidationproject,object-oriented,engineeringbudgetingIII 目录目录第一章绪论..............................................................1 1.1研究的意义和背景.....................................................1 1.2研究的现状...........................................................1 1.3研究的内容...........................................................2 1.4论文组织结构.........................................................2 第二章土地开发整理定额预算软件的需求与分析................................4 2.1土地开发整理项目的划分...............................................4 2.2土地开发整理项目费用的构成...........................................4 2.3定额预算编制方法及计算标准..........................................12 2.4系统使用的关键技术..................................................21 2.5系统开发环境及工具..................................................25 2.6本章小结............................................................25 第三章土地开发整理定额预算软件的设计与实现...............................26 3.1总体设计原则........................................................26 3.2建立对象模型........................................................26 3.3工作流设计..........................................................31 3.4模块的设计..........................................................35 3.5用户界面的设计......................................................39 3.6数据库的设计........................................................40 3.7主要模块的实现......................................................46 3.8本章小结............................................................54 第四章土地开发整理定额预算软件测试.......................................55 4.1软件使用流程测试....................................................55 4.2费用模块的功能与应用测试............................................57 4.3人工单价及电风水价的应用测试........................................60 4.4定额套用的测试......................................................60 4.5工料机分析窗口的应用测试............................................63 4.6报表管理及数据输出的测试............................................69 4.7本章小结............................................................77 参考文献..................................................................78 致谢......................................................................81IV 第一章绪论第一章绪论1.1研究的意义和背景随着国家整体经济实力的增强,国家以工助农的力度也不断加强。近年来国土资源部明确要求确保耕地红线,加大土地开发整理力度。国家每年土地开发整理项目资金也由过去几千万上升至近百亿,而且还在逐年加大。土地开发整理项目的基本建设需经历项目决策、可行性研究、规划设计、项目招投标、施工和竣工验收。项目规划阶段包括项目分析、初步设计、规划设计、单体设计和施工图设计。工程预算直接决定了工程投资效益和项目的顺利实施,因此,在整个项目规划阶段,工程预算都是其中的一个关键环节。准确的工程预算是项目设计方案选定的重要依据也是管理者决策的依据。随着我国的经济体制的转变和市场经济体制的逐步建立,为使项目在投资和收益之间找到最佳结合点,即在保障工程安全适用的条件下,用最少的投资取得最大的收益,对工程预算进行系统管理己成为管理决策者们共同关心的话题。随着土地开发整理项目管理和设计水平的提高以及现代化施工作业设备的进一步完备和施工水平的提高,土地开发整理项目建设周期已经大大缩短,这就迫使我们在设计施工中的每一个环节都应采用先进的设备和高效的方法来提高工作效率,满足土地开发整理项目发展的需要。准确地计算工程预算作为土地开发整理项目资金管理的核心内容,就显得更加重要。近年来,随着我国体制改革的深入,土地开发整理项目建设已经普遍采用招标形式择优选取施工队伍,这就要求管理单位和施工企业分别及时准确的编制标底和报价,从而给从事土地开发整理预算编制人员提出更高的要求。显然,继续采用人工编制工程预算文件,无论在质量上还是在时间上均不能满足实际工程需要。因此,开发和使用土地开发整理预算定额软件,是提高造价编制水平和工效的重要手段,也是实现土地开发整理项目现代化管理的必然途径。同时,编制土地开发整理预算工作是一项繁琐和重复的劳动,由于缺乏创造性劳动使人觉得枯燥无味,并且在编制过程中会因项目设计变更而反复修改,因此传统的手工编制工程预算劳动强度大,效率不高,计算不准确。因此,开发出用于编制土地开发整理预算的可靠、实用的应用软件是一种必然。计算机和各种应用软件的飞速发展,大大的减轻了人们的工作量。各种设计和工程预算管理系统软件在工业民用建筑中已经得到了广泛应用。比较而言,由于土地开发整理项目的复杂性和单体构件性,开发出适合土地开发整理项目特点的软件的难度很大。可喜的是,部分参数化设计已经在土地开发整理项目设计中得到应用,但工程预算软件的设计和开发却进展缓慢,效果不佳。这就有必要总结学习相关项目建设的的工作经验,进行深入的研究和开发。1.2研究的现状1 电子科技大学硕士学位论文作者了解到国家国土资源部依据《国家土地开发整理预算定额标准》以MicrosoftExcel为平台组织开发了一套半手工半自动的土地开发整理预算定额软件.同时,在山东省国土资源厅土地整理中心了解到他们在使用该软件过程中发现其修改不方便,在使用补充定额时容易出错,虽然MicrosoftExcel以其优秀的电子表格计算功能,使预算编制工作得到一定的简化,但其繁琐、容易出错的公式输入。其大量的定额数据重复录入,使得预算编制工作仍有很大的简化空间。市面上已经出现了许多土地开发整理预算定额软件,作者通过试用后发现主要存在以下几个问题:(1)系统性不足。不通过系统地将土地开发整理所涉及的相关部门和相关模块有效地结合并联系起来,形成一个有机整体。(2)灵活性不够。大多是定制版本,针对某省出的标准来做的,如果其它省需要使用的话,还需要修改代码针对这个省的标准来编写,这样不仅开发的工作量大,而且对于大的企业客户来说也会带来许多问题,甚至耽误了工程进度等。(3)使用上不方便。对于一些常量,需要在每个工程中都用到的,没有提供“一次录入,多个工程共用”的功能。用户经常录入的数据和计算公式没有一个有效并且快捷的操作方式来使用。1.1研究的内容课题研究的主要内容是在土地开发整理过程中关于预算定额的编制如何通过程序来系统、通用、灵活且快捷的完成工作。初期需要研究土地开发整理预算定额编制的标准,各省市在国家制定的标准上做了哪些变动的地方,编制人员在实际工程中做预算定额的流程与方法等。要使软件达到高可用性的目标通过几个方面的模块来实现。(1)建立常量库模块,将标准中固定不变的内容及公式、数据等保存到设计的常量库中,把每个工程中都需要用到的数据保存到常量库中,方便在任何工程中使用。(2)建立二次开发的支持,了解做预算定额编制的过程中在不同省之间容易出现变动的点,然后抽象出接口,这里采用了COM组件编程的思想实现。方便用户针对变动的点制定规则,并且可以进行内置脚本的编写。提供固定的对象及常量,以及大量的函数(如:统计函数、财务函数等)。1.2论文组织结构土地开发整理预算定额软件设计和开发是目前土地开发整理项目工程设计中急待解决的问题,因此本文的主要任务开发出具有很强适应性和操作简单方便的土地开发整理预算定额软件。由于国家国土资源部2009年7月份刚对原《国家土地开发整理预算定额》修编完成,各省也在参考国土资部《土地开发整理预算定额》的修编对自己省的定额进行2 第一章绪论大规模修编。我们在时间上刚好抓住这个机遇,并且本着以提高土地开发整理项目预算编制水平为目的,综合考虑决定开发出以《山东省土地开发整理预算定额》以及相应的编制办法和标准为依据的土地开发整理定额预算软件。因此,论文中提到的各种编制原则及计算方法均是以《山东省土地开发整理预算定额》为依据,以后就不作特别说明。本论文主要按以下结构进行组织的:(1)第一章绪论。本章主要研究了土地开发整理定额预算软件的背景和意义,了解了目前工作中使用土地开发整理定额预算软件的现状,确定了课题研究的方向和内容。(2)第二章土地开发整理定额预算软件的需求与分析。本章由国家制定的标准及作者进行的实际调查为依据,整理和分析出编制软件的需求文档。(3)第三章土地开发整理定额预算软件的设计与实现。本章介绍了编制软件使用的相关技术,根据需求文档进行设计和主要模块的编写与实现。(4)第四章土地开发整理定额预算软件的测试。本章通过使用实际工程来进行操作,以验证主要模块的正确性。3 电子科技大学硕士学位论文第二章土地开发整理定额预算软件的需求与分析1.1土地开发整理项目的划分根据土地开发整理项目的工程性质,其工程项目分别按土地平整工程、农田水利工程、田间道路工程及其他工程划分,工程各部分设一、二、三、四共4个等级项目。其中二、三、四级项目可结合项目具体情况作必要的增删。如图2-1所示:土地平整工程农田水利工程土地开发整理项目田间道路工程其他工程图2-1土地开发整理项目的分类1.2土地开发整理项目费用的构成2.2.1概述土地开发整理项目费用组成内容如下:如图2-2所示:直接费工程施工费间接费利润税金土地开发整理项目费用设备费其他费用不可预见费图2-2土地开发整理项目费用分类2.2.1.1工程施工费由直接费、间接费、利润和税金组成。2.2.1.1.1直接费(1)直接工程费4 第二章土地开发整理定额预算软件的需求与分析(2)措施费2.2.1.1.2间接费(1)规费(2)企业管理费2.2.1.1.3利润2.2.1.1.4税金(1)营业税(2)城乡维护建设税(3)教育费附加2.2.1设备费由设备原价、运杂费、运输保险费、采购及保管费组成。2.2.2其他费用由前期工作费、工程监理费、竣工验收费、业主管理费、拆迁补偿费、工程定额测定费组成。2.2.3不可预见费2.2.1.1工程施工费工程施工费由直接费、间接费、利润、税金组成。2.2.1.1.1直接费指工程施工过程中直接消耗在工程项目上的活劳动和物化劳动。由直接工程费、措施费组成。直接工程费包括人工费、材料费、施工机械使用费。措施费包括临时设施费、冬雨季施工增加费、夜间施工增加费、施工辅助费。2.2.2.1.1直接工程费2.2.2.1.1.1人工费指直接从事工程施工的生产工人开支的各项费用,内容包括:(1)基本工资。由岗位工资和年功工资以及年应工作天数内非作业天数的工资组成。①岗位工资。指按照职工所在岗位各项劳动要素测评结果确定的工资。②年功工资。指按照职工工作年限确定的工资,随工作年限增加而逐年累加。③生产工人年应工作天数以内非作业天数的工资,包括职工开会学习、培训期间的5 电子科技大学硕士学位论文工资,调动工作、探亲、休假期间的工资,因气候影响的停工工资,女工哺乳期间的工资,病假在六个月以内的工资及产、婚、丧假期的工资。(2)辅助工资。指在基本工资之外,以其他形式支付给职工的工资性收入,包括:根据国家有关规定属于工资性质的各种津贴,主要包括地区津贴、施工津贴、夜餐津贴、节日加班津贴等。(3)工资附加费。指按照国家规定提取的职工福利基金、工会经费、养老保险费、医疗保险费、工伤保险费、职工失业保险基金和住房公积金。2.2.2.1.1.2材料费指用于工程项目上的消耗性材料费、装置性材料费和周转性材料摊销费。材料预算价格一般包括材料原价、包装费、运杂费、运输保险费和采购及保管费五项。(1)材料原价。指材料指定交货地点的价格。(2)包装费。指材料在运输和保管过程中的包装费和包装材料的折旧摊销费。(3)运杂费。指材料从指定交货地点至工地分仓库或材料堆放场所发生的全部费用。包括运输费、装卸费、调车费及其他杂费。(4)运输保险费。指材料在运输途中的保险费。(5)材料采购及保管费。指材料在采购、供应和保管过程中所发生的各项费用。主要包括材料的采购、供应和保管部门工作人员的基本工资、辅助工资、工资附加费、教育经费、办公费、差旅交通费及工具用具使用费;仓库、转运站等设施的检修费、固定资产折旧费、技术安全措施费和材料检验费;材料在运输、保管过程中发生的损耗等。材料预算价格计算中,注意材料毛重系数的采用,材料单位毛重,指材料的单位运输重量。各种材料的毛重系数按有关规定及实际资料计算。其它材料预算价格可执行工程所在地区就近城市地方政府颁发的工业与民用建筑安装工程材料预算价格。部分材料限价计入工程单价,其中砂石料超过70元/立方米,汽油、柴油超过5.5元/千克的部分计取税金后列入相应费用之后。2.2.2.1.1.3施工机械使用费指消耗在工程项目上的机械磨损、维修和动力燃料费用等。包括折旧费、大修理费、经常修理费、安装拆卸费、机上人工费和动力燃料费等。(1)折旧费。指施工机械在规定使用年限内回收原值的台班折旧摊销费用。(2)大修理费。指施工机械按规定的大修间隔台班进行必要的大修理,以恢复其正常6 第二章土地开发整理定额预算软件的需求与分析功能所需要的费用。(3)经常修理费。指施工机械除大修理费以外的各级保养和临时故障排除所需的费用。包括保障机械正常运转所需替换设备与随机配备工具附具的摊销和维护费用,机械运转及日常保养所需的润滑油料、擦拭用品的费用,以及机械停滞期间的维护和保养费用等。(4)安装拆卸费。指施工机械进出工地的安装、拆卸、试运转和场内转移及辅助设施的摊销费用。部分大型施工机械的安装拆卸费不在其施工机械使用费中计列,包含在措施费中。(5)机上人工费。指施工机械使用时机上操作人员人工费用。(6)燃料动力费。指施工机械正常运转时所耗用的风、水、电、油和煤等费用。2.2.2.1.2措施费指为完成工程项目施工,发生于该工程施工前和施工过程中非工程实体项目的费用。主要包括:临时设施费、冬雨季施工增加费、夜间施工增加费、施工辅助费。2.2.1临时设施费指施工单位为进行工程施工所必需的生活和生产用的临时建筑物、构筑物和其他临时设施费用等。临时设施包括:临时宿舍、文化福利及公用事业房屋及构筑物,仓库、办公室、加工厂,及规定范围内道路、水、电、管线等临时设施和小型临时设施。2.2.2冬雨季施工增加费指冬雨季施工期间为保证工程质量所需增加的费用。2.2.3夜间施工增加费指在夜间施工而增加的费用。注:混凝土工程、农用井工程等连续工作部分计取此项费用。2.2.4施工辅助费包括二次搬运费、已完工程及设备保护费、施工排水及降水费、检验试验费、工程定位复测费、工程点交费等。(1)二次搬运费。指因施工场地分散等特殊情况而发生的二次搬运费用。(2)已完工程及设备保护费。指竣工验收前,对已完工程及设备进行保护所需费用。(3)施工排水及降水费。指为确保工程在正常条件下施工,采取各种排水、降水措施所发生的各种费用。7 电子科技大学硕士学位论文(4)检验试验费。指对建筑材料、构件和建筑安装物进行一般鉴定、检查所发生的费用。2.2.2.2间接费指施工单位为工程施工而进行组织与经营管理所发生的各项费用。由规费、企业管理费组成。2.2.1规费指政府和有关权利部门规定必须缴纳的费用。工程排污费指施工现场按规定缴纳的工程排污费。2.2.2企业管理费指施工单位为组织施工生产经营活动所发生的费用。内容包括:(1)管理人员基本工资、辅助工资、工资附加费和劳动保护费。(2)差旅交通费。指施工企业管理人员因公出差、工作调动的差旅费、误餐补助费,职工探亲路费,劳动力招募费,离退休职工一次性路费及交通工具油料、燃料、牌照、养路费等。(3)办公费。指企业办公用具、印刷、邮电、书报、会议、水电、燃煤(气)等费用。(4)固定资产折旧、修理费。指企业属于固定资产的房屋、设备、仪器等折旧及维修等费用。(5)工具用具使用费。指企业管理使用不属于固定资产的工具、用具、家具、交通工具、检验、试验、消防等的摊销及维修费用。(6)劳动保险费。指由企业支付离退休职工的易地安家补助费、职工退职金、六个月以上的病假人员工资、职工死亡丧葬补助费、抚恤费,以及按规定支付给离休干部的各项经费。(7)职工教育经费、工会费。指企业按职工工资总额计提的为职工学习先进技术、提高文化水平及加入工会所需费用。(8)保险费。指企业财产保险、管理用车辆等保险费用。(9)财务费。指施工企业为筹集资金而发生的各项费用,包括企业经营期间发生的短期融资利息净支出、汇兑净损失、金融机构手续费,企业筹集资金发生的其他财务费用,以及投标和承包工程发生的保函手续费等。(10)税金。指企业按规定交纳的房产税、管理用车辆使用税、印花税等。8 第二章土地开发整理定额预算软件的需求与分析(11)其他。包括技术转让费、技术开发费、业务招待费、绿化费、公证费、法律顾问费、审计费、咨询费等。2.2.2.3利润指施工企业完成所承包工程获得的赢利。2.2.2.4税金指国家税法规定的应计入工程造价内的营业税、城乡维护建设税和教育费附加等。2.2.1营业税。营业税是按营业额乘以营业税税率确定,计算公式为:营业税=营业额×3%2.2.2城乡维护建设税。城乡维护建设税按应纳营业税额乘以适用税率确定,计算公式为:城乡维护建设税=应纳营业税额×适用税率城乡维护建设税的纳税人所在地为市区的,其适用税率为营业税的7%;所在地为县镇的,其适用税率为营业税的5%;所在地为农村的,其适用税率为营业税的1%。2.2.3教育费附加。教育费附加是按应纳营业税额乘以3%确定,计算公式为:教育费附加=应纳营业税额×3%。2.2.1.1设备费设备费包括设备原价、运杂费、运输保险费和采购及保管费。2.2.1.1.1设备原价(1)设备原价(进口设备暂不投资)指出厂价。(2)拆装设备分搬运至工地后的组装费用,应包括在设备原价内。2.2.1.1.2运杂费指设备由厂家运至工地安装现场所发生的一切运杂费用。包括运输费、调车费、装卸费、包装绑扎费及可能发生的其他杂费。2.2.1.1.3运输保险费指设备在运输过程中的保险费用。2.2.1.1.4采购及保管费指在负责设备的采购、保管过程中发生的各项费用。主要包括:(1)采购保管部门工作人员的基本工资、辅助工资、工资附加费、劳动保护费、教育经费、办公费、差旅交通费、工具用具使用费等。9 电子科技大学硕士学位论文(2)临时仓库、转运站等设施的运行费、维修费、固定资产折旧费、技术安全措施费和设备的检验、试验费等。1.1其他费用其他费用包括前期工作费、工程监理费、竣工验收费、业主管理费、拆迁补偿费、工程定额测定费等。2.2.1前期工作费,指土地开发整理项目在工程施工前所发生的各项支出,包括:土地清查及项目勘测费、项目可行性研究费、项目设计及预算编制费、项目招标费等。(1)土地清查费,指项目承担单位组织对土地开发整理项目进行权属调查、土地评价等工作时,按规定应支付的费用。土地清查费按不超过工程施工费的0.4%计算。计算公式为:土地清查费=工程施工费×费率。(2)项目可行性研究费,指项目承担单位组织土地开发整理项目可行性研究编制时,按规定应支付的费用。项目可行性研究费按工程施工费的0.3%~0.5%计算。计算公式为:项目可行性研究费=工程施工费×费率。(3)项目勘测费,指项目承担单位组织对土地开发整理项目进行地形测绘、地质勘察等工作时,按规定应支付的费用。项目勘测费按不超过工程施工费的1.5%计算(项目地貌类型为丘陵、山区的可乘以2.2.1.1的系数)。计算公式为:项目勘测费=工程施工费×费率。(4)项目设计及预算编制费,指项目承担单位组织对土地开发整理项目进行设计及预算编制时,按规定应支付的费用。项目设计及预算编制费按工程施工费的1.6%~2.4%计算(项目地貌类型为丘陵、山区的可乘以1.1的系数)。计算公式为:项目设计及预算编制费=工程施工费×费率。(5)项目招标费,指项目承担单位组织对土地开发整理项目进行招标时,按规定应支付的费用。项目招标费按工程施工费的0.3%~0.5%计算。计算公式为:项目招标费=工程施工费×费率。2.2.2工程监理费,指项目承担单位委托具有工程监理资质的单位,按国家有关10 第二章土地开发整理定额预算软件的需求与分析规定进行全过程的监督与管理所发生的费用。工程监理费按工程施工费的1.0%~1.5%计算。计算公式为:工程监理费=工程施工费×费率。2.2.4.3竣工验收费,是指土地开发整理项目完工后,因项目竣工验收、决算、成果的管理等发生的各项支出。主要包括:项目工程验收费、项目决算编制及审计费,整理后土地的重估与登记费,基本农田补划及标记设定费等。(1)项目工程验收费,指土地开发整理项目实施完成后,对项目工程实体部分验收时,按规定应支付的费用。项目工程验收费按不超过工程施工费的1.3%计算。计算公式为:项目工程验收费=工程施工费×费率。(2)项目决算编制及决算审计费,指项目承担单位组织对土地开发整理项目进行决算编制及审计时,按规定应支付的费用。项目决算编制及审计费按不超过工程施工费的0.9%计算。计算公式为:项目决算编制及审计费=工程施工费×费率。(3)整理后土地的重估与登记费,指项目承担单位组织对土地开发整理项目进行整理后土地的重估与登记时,按规定应支付的费用。整理后土地的重估与登记费按不超过工程施工费的0.6%计算。计算公式为:整理后土地的重估与登记费=工程施工费×费率。(4)基本农田补划及标记设定费,指项目承担单位组织对土地开发整理项目进行基本农田补划及标记设定时,按规定应支付的费用。基本农田补划及标记设定费按不超过工程施工费的0.2%计算。计算公式为:基本农田补划及标记设定费=工程施工费×费率。2.2.4.4业主管理费,指项目承担单位为项目的组织、管理所发生的各项管理性支出。主要包括:项目管理人员的工资、补助工资、其他工资、职工福利费、公务费、业务招待费等。业主管理费按不超过工程施工费、前期工作费、工程监理费、竣工验收费合计的2%计算。计算公式为:业主管理费=(工程施工费+前期工作费+工程监理费+竣工验收费)×费率。2.2.4.5拆迁补偿费,指土地开发整理项目实施过程需拆迁的零星房屋、坟墓及需清除的零星林木、青苗(指渠、沟系、道路、水工建筑物建设时需清除的青苗)等所发生的适当补偿费用。11 电子科技大学硕士学位论文拆迁工程量应按实事求是的原则,如实计算;补偿标准的确定应结合项目区实际情况,按国家和省有关规定采取适量、象征性一次补偿方式计入预算。2.2.4.6工程定额测定费指按规定支付给工程造价(定额)管理部门的定额测定费,费率为工程施工费的2.2.1%~0.15%。本项费用由有关部门另行收取。注:其他费用中相关费用涉及区间费率的,具体费率原则按项目工程施工费总额3000万元(含3000万元)以上的取小值,工程施工费总额1000万元(含1000万元)以下的取大值,工程施工费总额1000万元~3000万元的按内插法取值。2.2.1.1不可预见费不可预见费,指在施工过程中因自然灾害、设计变更及不可预计因素的变化而增加的费用。不可预见费按不超过工程施工费、设备费和其他费用之和的2%计算。计算公式为:不可预见费=(工程施工费+设备费+其他费用)×费率。2.2.1.1.1定额预算编制方法及计算标准2.2.2.1.1基础单价编制2.2.2.1.1.1人工预算单价2.3.1.1.1人工预算单价计算方法2.3.1.1.1.1基本工资基本工资(元/工日)=基本工资标准(元/月)×地区工资系数×12月÷(年应工作天数-年应工作天数中非工作天数)2.3.1.1.1.2辅助工资(1)地区津贴(元/工日)=津贴标准(元/月)×12月÷(年应工作天数-年应工作天数中非工作天数)(2)施工津贴(元/工日)=津贴标准(元/天)×365天×K1÷(年应工作天数-年应工作天数中非工作天数)(3)夜餐津贴(元/工日)=(中班津贴标准+夜班津贴标准)÷2×K2(4)节日加班津贴(元/工日)=基本工资(元/工日)×3×10÷(年应工作天数-年应工作天数中非工作天数)×K312 第二章土地开发整理定额预算软件的需求与分析1.1工资附加费(1)职工福利基金(元/工日)=[基本工资(元/工日)+辅助工资(元/工日)]×费率标准(%)(2)工会经费(元/工日)=[基本工资(元/工日)+辅助工资(元/工日)]×费率标准(%)(3)养老保险费(元/工日)=[基本工资(元/工日)+辅助工资(元/工日)]×费率标准(%)(4)医疗保险费(元/工日)=[基本工资(元/工日)+辅助工资(元/工日)]×费率标准(%)(5)工伤保险费(元/工日)=[基本工资(元/工日)+辅助工资(元/工日)]×费率标准(%)(6)职工失业保险基金(元/工日)=[基本工资(元/工日)+辅助工资(元/工日)]×费率标准(%)(7)住房公积金(元/工日)=[基本工资(元/工日)+辅助工资(元/工日)]×费率标准(%)1.2人工工日预算单价人工工日预算单价(元/工日)=基本工资+辅助工资+工资附加费。2.2.1人工预算单价计算标准2.2.1.1有效工作时间年应工作天数:250工日(年日历日365天减法定假日11天,减52周双休日104天)2.2.1.2年非工作天数包括探亲假、气候影响停工、学习培训、六个月以内病假。甲类10天,乙类10天。2.2.1.3基本工资基本工资标准:甲类:240元/月,乙类:200元/月2.2.1.4辅助工资(1)辅助工资标准表2-1辅助工资标准表序号项目甲类乙类1地区津贴013 电子科技大学硕士学位论文2施工津贴3.5元/天2.0元/天3夜餐津贴4.5元/夜班,3.5元/中班(2)辅助工资系数表2-2辅助工资系数表项目甲类乙类K10.950.95K20.200.05K30.350.152.3.1.1.2.5工资附加费标准表2-3工资附加费标准表费率标准(%)序号项目甲类乙类1职工福利基金1472工会经费213养老保险费20104医疗保险费425工伤保险费1.51.56职工失业保险基金217住房公积金52.5表2-4人工预算单价计算表序号项目工程类别公式元/工日1基本工资甲类240×12÷(250-10)12.000乙类200×12÷(250-10)10.0002辅助工资甲类6.3826.382乙类3.2783.278(1)地区津贴00.000(2)施工津贴甲类3.5×365×0.95÷2405.057乙类2.0×365×0.95÷2402.890(3)夜餐津贴甲类4.0×0.20.800乙类4.0×0.050.20014 第二章土地开发整理定额预算软件的需求与分析(4)节日加班津贴甲类12.000×3×10÷240×0.350.525乙类10.000×3×10÷240×0.150.1883工资附加费甲类8.9158.915乙类3.3203.320(1)职工福利基金甲类(12.000+6.382)×14%2.573乙类(10.000+3.278)×7%0.929(2)工会经费甲类(12.000+6.382)×2%0.368乙类(10.000+3.278)×1%0.133(3)养老保险甲类(12.000+6.382)×20%3.676乙类(10.000+3.278)×10%1.328(4)医疗保险甲类(12.000+6.382)×4%0.735乙类(10.000+3.278)×2%0.266(5)工伤保险甲类(12.000+6.382)×1.5%0.276乙类(10.000+3.278)×1.5%0.199(6)失业保险甲类(12.000+6.382)×2%0.368乙类(10.000+3.278)×1%0.133(7)住房公积金甲类(12.000+6.382)×5%0.919乙类(10.000+3.278)×2.5%0.332人工预算单价甲类基本工资+辅助工资+工资附加费27.30乙类基本工资+辅助工资+工资附加费16.602.3.1.2材料预算价格2.2.1主要材料预算价格。对于用量多、影响工程投资大的主要材料,如水泥、砂、石、汽油、柴油等,需编制材料预算价格。计算公式为:材料预算价格=(材料原价+包装费+运杂费)×(1+采购及保管费率)+运输保险费(1)材料原价。按工程所在地区就近大的物资供应公司、材料交易中心的市场成交价或设计选定的生产厂家的出厂价计算。(2)包装费。应按工程所在地区的实际资料及有关规定计算。(3)运杂费。铁路运输按铁道部现行《铁路货物运价规则》及有关规定计算其运杂费。公路及水路运输,按省交通部门现行规定计算。(4)运输保险费。按省或中国人民保险公司的有关规定计算。15 电子科技大学硕士学位论文(5)采购及保管费。按材料运到工地仓库价格(不包括运输保险费)的2%计算。按上述公式计算出的材料价格不得超过当地建设工程造价或物价部门公布的预算价格,若超过,原则上不作调整。2.3.1.2.2其他材料预算价格参照当地建设工程造价或物价部门公布的预算价格执行。2.2.1电、风、水预算价格2.2.1.1施工用电价格施工用电价格由基本电价、电能损耗摊销费和供电设施维修摊销费组成,根据施工组织设计确定的供电方式以及不同电源的电量所占比例,按省规定的电网电价和规定的加价进行计算。电价计算公式:电网供电价格=基本电价÷(1-高压输电线路损耗率)÷(1-变配电设备及配电线路损耗率)+供电设施维修摊销费柴油发电机供电,电价计算公式为:柴油发电机供电价格=[柴油发电机组(台)班总费用÷柴油发电机额定容量之和×8小时×K1×K2]÷(1-厂用电率)÷(1-变配电设备及配电线路损耗率)+单位循环冷却水费+供电设施维修摊销费式中K1——时间利用系数,一般取0.7~0.8;K2——发电机出力系数,一般取0.8~0.85;厂用电率取4%~6%;高压输电线路损耗率取4%~6%;变配电设备及配电线路损耗率取5%~8%;供电设施维修摊销费取0.02—0.03元/(kW·h);单位循环冷却水费取0.03~0.05元/(kW·h)。2.2.1.2施工用水价格施工用水价格由基本水价、供水损耗和供水设施维修摊销费组成,根据施工组织设计所配置的供水系统设备组(台)班总费用和组(台)班总有效供水量计算。水价计算公式:施工用水价格=[水泵组(台)班总费用÷(水泵额定额定容量之和×8小时×K1×K2)]÷(1-供水损耗率)+供水设施维修摊销费16 第二章土地开发整理定额预算软件的需求与分析式中K1——时间利用系数,一般取0.7~0.8;K2——能量利用系数,取0.75~0.85;供水损耗率取5%~8%;供水设施维修摊销费取0.02~0.03元/m3。1.1施工用风价格施工用风价格由基本风价、供风损耗和供风设施维修摊销费组成,根据施工组织设计所配置的空气压缩机系统设备组(台)班总费用和组(台)班总有效供风量计算。风价计算公式:施工用风价格=[(空气压缩机组(台)班总费用)/(空气压缩机额定容量之和×60分钟×8小时×K1×K2)]÷(1-供风损耗率)+单位循环冷却水费+供风设施维修摊销费式中K1——时间利用系数,一般取0.7~0.8;K2——能量利用系数,取0.70~0.85;供风损耗率取8%~12%;单位循环冷却水费0.005元/m3;供风设施维修摊销费0.002~0.003元/m3。2.2.1施工机械使用费施工机械使用费应根据《山东省土地开发整理项目施工机械台班费定额》及有关规定计算。对于定额缺项的施工机械,可补充编制台班费定额。2.2.1.1工程施工费单价编制2.2.1.1.1工程施工费单价2.2.2.1.1直接费(1)直接工程费人工费=定额劳动量(工日)×人工预算单价(元/工日)材料费=定额材料用量×材料预算单价机械使用费=定额机械使用量(台班)×施工机械台班费(元/台班)直接工程费=人工费+材料费+机械使用费(2)措施费措施费=直接工程费(或安装工程人工费)×措施费率17 电子科技大学硕士学位论文1.1间接费间接费=直接费(或安装工程人工费)×间接费率1.2利润利润=(直接费十间接费)×利润率1.3税金税金=(直接费+间接费+利润)×税率1.4工程施工费工程施工费单价=直接费+间接费+利润+税金施工费单价计算程序见建筑(安装)工程施工费单价计算程序表。表2-5建筑工程施工费单价计算程序表序号项目计算方法1直接费(1)+(2)(1)直接工程费①+②+③①人工费定额人工工日数×人工预算单价②材料费定额材料用量×材料预算单价③施工机械使用费定额机械台班用量×机械台班费(2)措施费(1)×措施费费率2间接费1×间接费费率3利润[1+2]×利润费率4税金[1+2+3]×税金费率5单价合计1+2+3+4表2-6安装工程施工费单价计算程序表序号项目计算方法1直接费(1)+(2)(1)直接工程费①+②+③①人工费定额人工工日数×人工预算单价②材料费定额材料用量×材料预算单价③施工机械使用费定额机械台班用量×机械台班费(2)措施费(1)或①×措施费费率2间接费①×间接费费率18 第二章土地开发整理定额预算软件的需求与分析3利润[1+2]×利润费率4税金[1+2+3]×税金费率5单价合计1+2+3+42.3.2.2措施费(1)临时设施费根据不同工程性质,临时设施费率见下表。表2-7临时设施费费率表序号工程类别计算基础临时设施费率(%)1土方工程直接工程费12石方工程直接工程费13砌体工程直接工程费14混凝土工程直接工程费25农用井工程直接工程费26其他工程直接工程费17安装工程人工费20注:①其他工程:指除上述工程以外的工程,如防渗、架线工程及PVC管、混凝土管安装等;②安装工程:包括设备及金属构件(钢管、铸铁管等)安装工程等。(2)冬雨季施工增加费计算方法:按直接工程费的百分率计算,费率确定为0.7%-1.5%,不在冬季施工的项目取小值,在冬季施工的项目取中值或大值。(3)夜间施工增加费指混凝土工程、农用井工程中需连续作业工程部分,按直接工程费的百分率计算,其中安装工程为0.5%,建筑工程为0.2%。(4)施工辅助费按直接工程费的百分率计算,其中安装工程为1.0%,建筑工程为0.7%。2.3.2.3间接费根据工程性质不同间接费标准见下表。表2-7间接费费率表19 电子科技大学硕士学位论文序号工程类别计算基础间接费费率(%)1土方工程直接费52石方工程直接费93砌体工程直接费74混凝土工程直接费65农用井工程直接费106其他工程直接费57安装工程人工费652.3.2.4利润按直接费和间接费之和的3%计算。2.3.2.5税金按下列公式和税率计算:税金=(直接费+间接费+利润)×税率税率标准:建设项目在市区或县城镇以外的:3.25%。2.2.1土地开发整理项目预算编制2.2.1.1工程施工费预算项目工程预算按土地平整工程、农田水利工程、田间道路工程和其他工程分别采用不同的方法编制预算。工程施工费按设计工程量乘以预算单价(其中,安装工程投资按设备数量乘以安装单价),并按规定计取相关费率汇总编制。设计工程量应根据《山东省土地开发整理项目预算定额》规定,按项目划分要求,计算到四级项目。2.2.1.2设备费预算设备费包括设备原价、运杂费、运输保险费和采购及保管费。(1)设备原价以出厂价为设备原价。定型产品,采用正式颁发的现行出厂价格;非定型或非标准产品,采用设计单位分析论证后的询价。(2)运杂费20 第二章土地开发整理定额预算软件的需求与分析按设备原价的5%计算。(3)运输保险费按有关规定计算。(4)采购及保管费按设备原价、运杂费之和的0.7%计算。(5)运杂综合费率运杂综合费率=运杂费率+(1+运杂费率)×采购及保管费率+运输保险费率设备费=设备原价×(1+运杂综合费率)1.1其他费用本部分费用按第四章及主管部门有关规定计算。1.2不可预见费不可预见费以不超过工程施工费、设备费和其他费用之和的2%计算。2.2.1系统使用的关键技术2.2.1.1面向对象方法的发展2.2.1.1.1面向对象方法由来面向对象方法起源于面向对象的编程语言(简称为OOPL)。50年代后期,在用FORTRAN语言编写大型程序时,常出现变量名在程序不同部分发生冲突的问题。鉴于此,ALGOL语言的设计者在ALGOL60中采用了以"Begin„„End"为标识的程序块,使变量名在块内是实现局部性,以避免它们与程序中与块外的同名变量相冲突。这是编程语言中首次提供封装(保护)的尝试。此后程序块结构广泛用于高级语言如Pascal、Ada、C之中。60年代中后期,Simula语言在ALGOL基础上研制开发,它将ALGOL的块结构概念向前发展一步,提出了对象的概念,并使用了类,也支持类继承。70年代,Smalltalk语言诞生,它取Simula的类为核心概念,它的很多内容借鉴于Lisp语言。由Xerox公司经过对Smautalk72、76持续不断的研究和改进之后,于1980年推出商品化的,它在系统设计中强调对象概念的统一,引入对象、对象类、方法、实例等概念和术语,采用动态联编和单继承机制。从80年代起,人们基于以往巳提出的有关信息隐蔽和抽象数据类型等概念,以及由Modula2、Ada和Smalltalk和等语言所奠定的基础,再加上客观需求的推动,进行了大量的理论研究和实践探索,不同类型的面向对象语言(如:Object-c、Eiffel、c++、Java、21 电子科技大学硕士学位论文Object-Pascal等)逐步地发展和建立起较完整的和雨后春笋般研制开发出来,面向对象方法的概念理论体系和实用的软件系统。面向对象源出于Simula,真正的OOP由Smalltalk奠基。Smalltalk现在被认为是最纯的OOPL。正是通过Smalltalk80的研制与推广应用,使人们注意到面向对象方法所具有的模块化、信息封装与隐蔽、抽象性、继承性、多样性等独特之处,这些优异特性为研制大型软件、提高软件可靠性、可重用性、可扩充性和可维护性提供了有效的手段和途径。80年代以来,人们将面向对象的基本概念和运行机制运用到其它领域,获得了一系列相应领域的面向对象的技术。面向对象方法已被广泛应用于程序设计语言、形式定义、设计方法学、操作系统、分布式系统、人工智能、实时系统、数据库、人机接口、计算机体系结构以及并发工程、综合集成工程等,在许多领域的应用都得到了很大的发展。1986年在美国举行了首届"面向对象编程、系统、语言和应用(OOPSLA"86)"国际会议,使面向对象受到世人瞩目,其后每年都举行一次,这进一步标志面向对象方法的研究已普及到全世界。1.1面向对象的基本概念与特征用计算机解决问题需要用程序设计语言对问题求解加以描述(即编程),实质上,软件是问题求解的一种表述形式。显然,假如软件能直接表现人求解问题的思维路径(即求解问题的方法),那么软件不仅容易被人理解,而且易于维护和修改,从而会保证软件的可靠性和可维护性,并能提高公共问题域中的软件模块和模块重用的可靠性。面向对象的机能念和机制恰好可以使得按照人们通常的思维方式来建立问题域的模型,设计出尽可能自然地表现求解方法的软件。2.2.1面向对象的基本概念对象:对象是要研究的任何事物。从一本书到一家图书馆,单的整数到整数列庞大的数据库、极其复杂的自动化工厂、航天飞机都可看作对象,它不仅能表示有形的实体,也能表示无形的(抽象的)规则、计划或事件。对象由数据(描述事物的属性)和作用于数据的操作(体现事物的行为)构成一独立整体。从程序设计者来看,对象是一个程序模块,从用户来看,对象为他们提供所希望的行为。在对内的操作通常称为方法。类:类是对象的模板。即类是对一组有相同数据和相同操作的对象的定义,一个类所包含的方法和数据描述一组对象的共同属性和行为。类是在对象之上的抽象,对象则是类的具体化,是类的实例。类可有其子类,也可有其它类,形成类层次结构。消息:消息是对象之间进行通信的一种规格说明。一般它由三部分组成:接收消息的对象、消息名及实际变元。22 第二章土地开发整理定额预算软件的需求与分析1.1面向对象主要特征:封装性:封装是一种信息隐蔽技术,它体现于类的说明,使数据更安全.是对象的重要特性。封装使数据和加工该数据的方法(函数)封装为一个整体,以实现独立性很强的模块,使得用户只能见到对象的外特性(对象能接受哪些消息,具有那些处理能力),而对象的内特性(保存内部状态的私有数据和实现加工能力的算法)对用户是隐蔽的。封装的目的在于把对象的设计者和对象者的使用分开,使用者不必知晓行为实现的细节,只须用设计者提供的消息来访问该对象。继承性:继承性是子类自动共享父类之间数据和方法的机制。它由类的派生功能体现。一个类直接继承其它类的全部描述,同时可修改和扩充。继承具有传递性和单根性.如果B类继承了A类,而C类又继承了B类,则可以说,C类在继承了B类的同时,也继承了A类,C类中的对象,可以实现A类中的方法.一个类,只能够同时继承另外一个类,而不能同时继承多个类,通常所说的多继承是指一个类在继承其父类的同时,实现其他接口.类的对象是各自封闭的,如果没继承性机制,则类对象中数据、方法就会出现大量重复。继承支持系统的可重用性,从而达到减少代码量的作用,而且还促进系统的可扩充性。多态性:对象根据所接收的消息而做出动作。同一消息为不同的对象接受时可产生完全不同的行动,这种现象称为多态性。利用多态性用户可发送一个通用的信息,而将所有的实现细节都留给接受消息的对象自行决定,如是,同一消息即可调用不同的方法。例如:Print消息被发送给一图或表时调用的打印方法与将同样的Print消息发送给一正文文件而调用的打印方法会完全不同。多态性的实现受到继承性的支持,利用类继承的层次关系,把具有通用功能的协议存放在类层次中尽可能高的地方,而将实现这一功能的不同方法置于较低层次,这样,在这些低层次上生成的对象就能给通用消息以不同的响应。在OOPL中可通过在派生类中重定义基类函数(定义为重载函数或虚函数)来实现多态性。面向对象方法中,对象和传递消息分别表现事物及事物间相互联系的概念。类和继承是是适应人们一般思维方式的描述范式。方法是允许作用于该类对象上的各种操作。这种对象、类、消息和方法的程序设计范式的基本点在于对象的封装性和类的继承性。通过封装能将对象的定义和对象的实现分开,通过继承能体现类与类之间的关系,以及由此带来的动态联编和实体的多态性,从而构成了面向对象的基本特征。2.2.1面向对象语言C++Builder2009简介土地开发整理定额软件系统使用C++Builder2009编程语言,其特点如下:2.2.1.1真正可视化的C++开发环境C++Builder提供符合ANSI和ISO标准、功能强大的C++编译器,并集成功能完整、高效的可视化开发环境,C++Builder运用面向对象技术构造以组件为基础的开发结构,23 电子科技大学硕士学位论文软件组件让程序代码可重复使用的能力大幅提高,缩短了整个软件开发周期的时间。C++Builder采用获得市场验证的VisualComPonentLibrary(VCL)组件结构,提供几百个软件组件辅助开发人员轻松开发windows应用程序,C++Builder2009拥有完全的RTLlist和collection支持的Delphi泛型。C++Builder在商业软件中率先支持即将来临的C++0x标准,所括动态语义(movesemantics),领域枚举(scopedenumerations)、显式转换操作(explicitconversionoperators)、静态声明和类型特征(staticassertandtypetraits)、decltype、外部模板(externtemplates)及Unicode字符。C++Builder类库增加了TR1和Boost。改进了Delphi与C++Builder的兼容性,包括类方法和静态属性方面。1.1简化分布式应用系统的开发C++Builder是唯一完美集成CORBA与COM和COM+的C++集成开发环境,C++Builder2009版中内建全球CORBAORB分发数量最多的VISIBroker7,并内含EventService与NamingService等标准CORBA服务,C++Builder2009将CORBAIDL编译器集成于开发环境中,配合各种全新向导快速生成CORBAClient与Server源程序框架。VCL组件方面有TButtonedEdit、TBalloonHints、TCategoryPanelGroup。TImage和TImageList支持PNG图像格式。使用新的Ribbon控件组创建微软新的Office风格用户界面。TButtons、TEdit、TListView、TTreeView、TLabel控件增强,主题,VistaAero支持。新版VCLfortheWeb,支持创建AJAX和基于Silverlight的富客户端应用IDE功能增加与增强。可共享的构建选项配置。可将构建选项保存并应用于任何项目。Delphi类浏览器可选择从项目的不同层面查看类库,快速在声明和实现之间导航,更容易地增加类成员和方法。通过资源管理器可以十分简单地向项目中添加各类资源。LiveSource的双向UML建模现在也可以支持C++Builder。1.2高效存取数据库C++Builder2009版提供oracle9i、MicrosoftSQLServer2005、Informix9.4、IBMDB2和UniversalServer、InterBase7.5等企业级数据库原生高速驱动程序,并针对Oracles9i对象关联延伸功能,如AbstractDataTypes、NestedTables、VariableLengthArrays、ObjectPointers(REFs)及ExternalFileReferences等提供最完整的支持。C++Builders还提供MicrosoftAccess、FoxPro、VisualdBASE等单机个人数据库存取的能力。扩展的多层数据库访问技术,新一代的DataSnap。新的ServerMethods提供了完全的中间层功能控制。调用服务端过程就像调用客户端代码一样简单。在扩展应用服务器功能的同时,可以继续使用熟悉的IAppSerer接口。1.3快速开发高效,Web及Internet应用程序ActiveForm和ATL及WebDeploy技术运用web分发ActiveX组件,以构建零配置、Web24 第二章土地开发整理定额预算软件的需求与分析浏览器为基础的ThinClient应用程序。WebBridge透明性结构让您以单一源程序同时支持CGI、WIN-CGI、ISAPI及NSAPI标准,开发人员可以利用现有开发技术以可视化方式开发跨平台的Web客户机和服务器结构应用程序,不必考虑标准取舍问题。1.1支持Windows环境各类标准C++Builder2009支持Windowsvista、xp、2003及WindowsNT下的各项标准,包含完整的win32API、COM、COM+、ActiveX、OLEAutomation、Directx、OLE-DB、ODBC、ISAPI和NSAPI。能够轻松建立Windows2003和NTService、Windows控制面板组件的C++快速开发工具。C++Builder还提供封装MicrosoftofficeAutomation的VCL组件,增强与Microsoftoffice系列软件包的集成能力。新的DataSnap框架不再依赖于COM。现有服务和应用可简单平滑地迁移到新的架构。1.2强大的调试功能C++Builder2009增强了原本断点管理的功能,并在WindowsNT和2003环境中增强多线程调试能力,能够对COM+对象进行调试。内建CodeGuade向导自动监测内存泄漏的错误程序C++Builder2009版针对多层分布式开发环境提供远程调试的能力。拥抱Unicode,国际化和本地化支持,IDE全面支持Unicode。集成的翻译转化工具(ITE)可查看和编辑VCL窗体和字符串资源。增强的外部翻译转化管理器(ETM)可在IDE外查看和编辑语言资源文件。使用增强的DLL资源文件向导可创建Win32DLL资源文件,进行程序的本地化。通过翻译知识库可以在不同项目间共享翻译成果。2.2.1系统开发环境及工具本系统采用C++Builder2009进行开发,数据库使用的C++Builder2009内置桌面数据库系统,MSXML3.0以上的工具包等,在windowsxp系统上进行开发的。2.2.2本章小结本章讲述了关于土地开发整理定额预算方面项目的划分、费用的构成和编制方法及计算标准等。可以划分为四个等级的项目:土地平整工程、农田水利工程、田间道路工程、其他工程。费用由工程施工费、设备费、其他费用、不可预见费等组成,其中工程施工费又由直接费、间接费、利润、税金组成。编制方法及计算标准主要讲述了关于上面相关费用的计算。通过本章的学习我们了解了土地开发整理定额预算的实际需求。25 电子科技大学硕士学位论文第三章土地开发整理定额预算软件的设计与实现1.1总体设计原则通过前面的需求和分析,加上作者了解的实际情况,这里总结了土地开发整理定额预算软件总体设计原则:(1)系统性。对于土地开发整理定额预算软件的设计要从整体角度考虑,站在需求的角度系统性地解决土地开发整理定额预算方方面面的问题,将标准和编制经验相结合才能解决系统性的问题。(2)扩展性。土地开发整理定额预算国家有一套标准,每个省又会在此基础上有些变动,根据本省的具体情况定制出一套标准。所以在设计的时候要充分了解标准中固定不变的和变化的点,设计出通用的、易扩展的土地开发整理定额预算软件,使其能够制作各省的定额预算编制。(3)易用性。设计土地开发整理定额预算软件的过程中要充分考虑到用户操作软件的易用性,避免重复性的操作和录入。这就要求从细节入手,了解编制人员的实际操作过程与经验。(4)易部署和维护。因为土地开发整理定额预算软件采用桌面应用程序的技术来编写的,所以需要用户安装到自己的电脑上才能使用。传统的桌面应用程序有了新的版本,需要将旧版本先卸载,然后再安装新版本,这里加入了自动更新的机制,每次软件启动后会检测是否有了新版本,如果有的话,提醒用户确定,然后程序会自动下载并替换或添加新的组件。因为采用COM技术,加入了自动更新组件,对于相关人员部署和维护本系统会非常方便和容易的。1.2建立对象模型下面给出土地开发整理定额预算的框图,如图3-1所示:26 第三章土地开发整理定额预算软件的设计与实现用户界面系系统变量配置模块模板库定额库系统库材料库价格库费用库统自动升级模块组件开发定额套用与预算编制报表模模块换算模块规则模块块图3-1土地开发整理定额预算框图下面采用五个步骤对土地开发整理定额软件的技术设计进行面向对象分析方法的分析,建立土地开发整理定额软件系统的OOA模型。第一步,确定对象和类。类和对象的建立是面向对象分析的基础。从软件系统需求分析、用户调研报告以及数据输出等资料中标识和定义的概念可以提取类和对象的初始集合,从多个相同问题中的类似分析结果中寻找可以重复利用的类和对象,以及从传统的分析方法:数据流程图、实体关系图和状态转换图及它们的变化中发现类的对象。从而正确的标识类和对象,提高软件开发的质量和效率。表3-1是土地开发整理定额软件系统中的部分类,根据国内人员的使用习惯,所以在大多数情况下用中文拼音的第一个大写字目组合,若出现同名则考虑用英文名字。表3-1土地开发整理定额软件系统中的部分类1.1TDKFZLDEDB(土地开发整理定额库)10.SBGZFYSB(设备购置费预算表)1.2CLDB(材料数据库)11.QQGZFYSB(前期工作费预算表)1.3SBDB(设备数据库)12.FNDTZGSB(分年度投资预算表)1.4SGJXTBFDEDB(施工机械台班费定额库)13.YZGLFYSB(业主管理费预算表1.5ZYSB(总预算表)14.QTFYYSB(其他费用预算表)1.6ZJGCFYSB(直接工程费预算表)15.CLYSJGB(材料预算价格表)1.7ZJFYSB(直接费预算表)16.SGJXTBFHZB(施工机械台班费汇总表)1.8JJFYSB(间接费预算表)17.BCJXTBYSDJJSB(补充机械台班预算单价计算表)1.9GCSGFYSB(工程施工费预算表)28.HNTSJPHBDJJSB(混凝土砂浆配合比单价计算表)27 电子科技大学硕士学位论文第二步,确定结构(structure)。结构是问题域的复杂性和连接关系。类成员结构反映了泛化-特化关系,其中特化关系是泛化类的子类,泛化类是特化类的父类。该种关系具有继承性,泛化类和对象的属性和服务确定识别后,即可在特化类和对象中使用。特殊化类是一般化类的派生类,一般化类是特殊化类的基类;组装结构表示聚合,具有属于不同类的成员聚合而形成新类。图3-1给出土地开发整理定额软件系统中的组装关系。图3-2给出了该系统中的类和对象之间的结构上的继承关系。如图3-2所示:土地开发整理定额库人工机械材料补充定额甲类工乙类工机械编码机械用量材料编码材料用量材料价格图3-2整体—部分组装结构图如图3-3所示:28 第三章土地开发整理定额预算软件的设计与实现材料库主材一般材料配合比材料主材名称主材价格材料名称材料价格混凝土砂浆其它配合比材料一般砼泵用砼沥青砼水泥水泥水泥石子沙子沙子沙子石油沥青﹍﹍﹍﹍﹍﹍﹍﹍﹍﹍﹍﹍石子图3-3泛化—特化分类结构图第三步,确定主题(subject)。主题是指事物的总体概貌和总体分析模型。面向对象的概念模型相当大,包含大量类和对象的平面图。通过对主题的识别,可以让人们比较清晰的了解复杂的模型。对于面向对象分析模型,主题表示此模型的整体框架。据土地开发整理工程预算系统的需求,可将该系统划为基础数据库、数据汇兑计算和数据表格输出三大主题。见图3-3第四步,确定属性(attribute)。属性就是数据元素,可用来描述对象或分类结构的实例,可在图中给出,并在对象的存储中指定。标识属性是对已识别的类和对象作进一步的说明。下面给出了该系统的部分类和对象的属性,并给出了实例连接。标识属性层时应注意:系统存取的数据必须说明为属性,每一个类至少应该有一个属性,否则,该类就没有标识的必要。在标识类的属性时,一般应说明属性的数据类型。表3-2列出了土地整理定额软件系统中的部分类的属性,并用C++标明其数据类型。表3-2土地开发整理定额软件系统中部分类的属性HNTCLJGHZBFBFXGCGSB(混凝土)(材料价格汇总表)(分部分项工程预算表)29 电子科技大学硕士学位论文Char:CLDH(材料代号)Char:CLDH(材料代号)Char:XMMC(项目名称)Int:JP(级配)Double:CLYJ(材料原价)Char:HJ(单位)Double:SZYSL(砂子预算量)Double:CLYZF(材料运杂费)Double:GCL(工程量)Double:StoneYSL(石子预算量)Double:DW(单位)Double:DJ(单价)Double:SYSL(水预算量)Double:CLHJ(材料合价)Double:HJ(合价)第五步,确定方法(method)。方法是在收到消息后必须进行的一些处理方法:方法要在图中定义,并在对象的存储中指定。对于每个对象和结构来说,那些用来增加、修改、删除和选择一个方法本身都是隐含的(虽然它们是要在对象的存储中定义的,但并不在图上给出),而有些则是显示的。定义方法的主要意义即识别消息连接,当一个对象需要向另一对象发送消息时,它们之间就存在消息连接。对象收到消息后所能执行的操作称为它可提供的方法。我们建立的对象之间的动态关系,是为了说明所标识的各种对象是如何共同协作、沟通进行服务以及对象之间传递的消息。从而使整个系统动作起来。将前面五个步骤的分析结果综合在一起,即可以得到该系统完整的OOA分析图。同时,还应对分析结果进行反复审查,以保证在系统实现之前正确的理解系统的要求。图3-3给出了依据鲁财综[2007]128号文件颁发的《山东省土地开发整理项目预算定额标准(试行)》的简化OOA分析图如图3-4所示:30 第三章土地开发整理定额预算软件的设计与实现基础数据 库材料库土地开发整理工程定额库机械台班费定额库自定义工程定额库设备库材料统计其它材料半成品材料主要材料土地开发整理工程统计信息台班费统计信息信息自定义工程统计信息设备统计信息材料价格混凝土砂浆工程单价计算机械台班费计算计算自定义工程单价计算设备价格计算材料价格工程单价汇总台班费汇总表汇总自定义工程单价汇总设备价格汇总输入信息土地开发整理工程项目工程预算表工程量费率信息自定义工程类预算表安装工程项目临时工程预算永久工程综合预临时工程表算项目特殊处理项目特殊处理预算表单体建筑物预算表表格输出表格定义模块总预算表图3-4土地开发整理定额预算软件系统OOA分析1.1工作流设计2.2.1通过了解编制过程总结出土地开发整理定额预算的编制工作流程:(1)根据工程设计资料进行项目划分,选取工程相应的取费模板及相关参数确定工程的各项费率;(2)通过分部分项把工程按四部分划分四级项目所对应的定额编号,将工程中的需换算定额进行相关换算;(3)通过材料价格表输入相应材料价格,计算和输入各项数据表;(4)通过汇总编制出相应的工程预算表。如图3-5所示31 项目编制工作流士学位论文项目分类取费模版库访问确定取费模版和其它费用编制多级定额编号对工程进行定额换算材料价格库访问根据材料价格进行计算汇总生成工程预算表保存工程项目报表管理是管理、定制、打印、输出报表否结束图3-5土地开发整理项目定额预算编制流程图1.1土地开发整理项目定额预算编制的工作流程展开:(1)系统初始化32 第三章土地开发整理定额预算软件的设计与实现系统初始化包括连接定额数据库,清空系统数据表(DMZ)中跟工程预算表格有关的数据表,将有关选择项设置为系统默认值,例如,材料价格、人工单价、施工机械台班费、各类费用调整系数、工程单价计算的有关费率、费用项目的默认参数设置等等。(2)保存和打开选择的系统信息本系统选择了一个文本编辑器(TMemo)保存用户选择的信息,即先将选择信息写入TMemo中,再调用TMemo的方法SaveToFile写入文本文件,打开文件时直接调用方法LoadFromFile读入内存,再根据需要分别读出每一个系统信息。由于系统保存的是一系列的数据表,建议在编制工程预算之前新建文件夹来保存用该系统编制的工程预算文件。(3)系统参数输入该系统的参数输入设置是根据编制过程中的不同阶段,选择输入需要的参数。费率的选取更多的使用单选按钮(TRadioGrouP),同时对应一个文本输入框(TEdit),文本输入框的缺省值为单选按钮的选择值,设置文本输入框为可修改的。这样可以满足编制办法和编制原则的参数值改变,而不修改源程序仍可以直接使用该系统。该系统按编制过程中不同阶段选择不同的参数值体现以下几个方面:①在进行工程单价计算之前,选择工程取费模板,主要包括:其它直接费率、利润率、税率、定额水平调整系数(视估算、预算和预算不同);②在确定工程模板后选择工程规模、地区类别、施工地区及是否冬雨季施工等参数,并根据工程实际情况输入相关文本性工程描述;③在选择定额项目时,根据实际工程选择定额换算内容;④在工料机表中准确输入工程所用材料的市场价格;⑤在拆迁补偿费项目内输入实际工程中遇到的一些特殊项目资金数。(4)定额项目选择为方便用户操作,土地开发整理定额项目选择采取两种形式。一种是直接从定额列表中拖取或双击选择。一种是可以直接在定额行上输入定额编号完成定额选择。另外,在选择含有配合比材料的定额项目时必须选择具体的材料配合比,否则会按缺省值给出。(5)人材机分析土地开发整理预算定额软件的人材机分析是根据选定的定额项目从地开发整理定额定额库中统计出所编制工程用到的人工、机械和材料的名称、规格及用量,统一汇总到人材机分析表中,当用户将材料预算价格修改后,系统会自动重新统计,在统计完毕后以修改后的价格在人材机分析表中显示,并参与以后的计算。(6)施工机械台班费计算33 电子科技大学硕士学位论文施工机械台班费计算是根据施工机械台班定额库中机械及人工材料含量结合工程套用定额的台班用量和材料价格汇总得到施工机械台班费。(7)土地开发整理工程单价计算土地开发整理工程单价计算是根据定额人工、材料、施工机械消耗量及人工预算价格、材料预算价格和施工机械台班费计算基本直接费,在此基础上,根据各种费率计算其他直接费、间接费、利润、税金、材料价差和定额水平调整值系数,最后汇总得到土地开发整理工程单价。(8)项目序号选择该系统是以《山东省土地开发整理预算定额标准》为基础,从实际工程出发,考虑了两种项目划分形式。一种按编制办法上规定的四级项目编制,这种情况适合工程项目比较完整的工程。另一种是考虑到小型工程不可能按规定项目划分,因此,添加自由编辑格式的项目划分(即不按编制办法上的项目划分,而是编制人员自由编排),从而增加程序的适应性。按规定项目划分,预算表序号按四级编号,而自由编辑格式按多级编号。可以根据用户的习惯选择不同的序号形式组合。(9)工程项目名称选择系统中工程项目名称选择和项目序号选择几本一至,也按两种格式设计。一种按编制办法上规定的四级项目编制,通过分部分项把编制办法中列出的具体项目名称可选择的列入工程中,这种情况适合工程项目比较完整的工程。为了保存数据和程序设计方便,选定工程项目和删除工程项目均只是记录下工程项目对应的工程项目代号,再根据工程项目代号从工程项目汇总数据表中找出相应的工程项目名称。规定格式的工程项目名称选择只能从工程项目名称选择窗体上选择和删除选定工程项目。另一种是考虑到小型工程不可能按规定项目划分,设置自由编辑格式工程项目名称,除一级项目名称固定以外其它的多级项目名称可以手工输入,任意编排,从中体现其在编制工程中的灵活性。(10)预算表的编制预算表的设计思路是:在软件系统中对各种数据生成单一的数据表,存放在数据库中等待调用。在工程预算编制时要输出的具体数据表采用动态数据表的形式来输出。利用报表模块定义一下报表格式,具体单元格显示数据调用系统数据库中的数据即可以,这样方便实际工程中要做的多种表格的要求。便预算表编制更快捷和方便。报表动态显示单元格显示的实现如下:(11)表格预览和打印编制工程预算形成的各种表格众多,数据表的报表输出是一项十分繁琐的工作。为了能让软件适应性理强,软件采用单独的报表编辑模块,输出报表可以由用户利用软件的34 第三章土地开发整理定额预算软件的设计与实现开放平台自由设定。同时,编制工程预算的成果就是用于审批的各种表格,其中也有较规范的一些报表类型,因此,系统的报表输出把握了两个原则:(1)报表输出格式按照《山东省土地开发整理项目预算定额标准》(试行)要求输出固定的数据报表。(2)在尽量考虑用户方便和简单的输出相应报表设定自由编辑功能。具体体现在报表的自动添加及报表内容及格式调整,从而保证软件可满足用户的各种不同报表输出的要求。(12)数据报表保存成Excel文件报表功能虽然强大,但是格式为预先设定,可能仍然不能满足实际工作的需要,而MicrosoftExcel表格功能强大,可随心所欲地编辑修改;以Excel为保存载体,是一种高效而又实用的设计。本系统所有表格及软件中各个页面都可以保存为EXCEL格式,极大地方便了用户的修改。1.1模块的设计2.2.1费用模块土地开发整理定额预算软件中最主要的是费用模块,包括了所有相关的费用计算,下面又可以分为:人工费、材料费、主材设备费、机械费、其他费、管理费、利润、规费、税金、风险等。如图3-6所示:费用自定义费用人材主机其管利规税风工料材械他理润费金险费费设费费费备费图3-6费用模块框图通过认真分析,总结出费用计算的原理。35 电子科技大学硕士学位论文如图3-7所示:汇总分析类型费用模块的计算原理,如其他费用,汇总计算等模块从每一个节点开始递归访问每一个节点是汇总节点汇总计算下级判断节点类型节点数据合价是最低层节点解析计算“计算公式”,结果乘费率=合价图3-7费用计算原理1.1二次开发模块我们想在土地开发整理定额预算中添加内置的脚本执行引擎,使用户可以利用现有的脚本(如:VBScript、JavaScript等)实现二次开发的功能来实现软件的扩展性。在windows平台上已经有了这么一个COM接口协议,即活动脚本引擎。活动脚本架构是由应用程序定义的一个COM接口,由宿主定义了一个协议,用于连接一个脚本引擎。在宿主应用程序中,脚本只是一个COM对象的事件调用方法(代码动态响应、直接解析、装载脚本语句或者明确调用脚本引擎的IDispatch接口)。宿主应用程序可以暴露其自动化接口的脚本引擎的命名空间,允许应用程序的访问对象动态执行脚本语句。要想实现内置脚本执行引擎,必须实现IActiveScriptSite接口。如图3-8所示:36 IActiveScriptSite::GetItemInte脚 本 宿 主IActiveScript::SetScriptSite脚本引擎IActiveScript::GetScriptDispatchIDispatchVBScript或JavaScript图3-8活动脚本架构1.1自动升级模块37 电子科技大学硕士学位论文由于桌面程序的安装和部署比较麻烦,这里采用程序自动+提醒的模式来解决单纯依靠人工主动安装的方式。系统自动升级的思想是,当软件一开始启动运行后,就尝试着连接远程主机一个固定的地址,读取升级配置文件,然后与本地配置文件进行比较,如果本机版本低,就弹出询问窗口,由用户来决定是否进行更新。如果用户选择是,就解析出需要更新的相关组件,然后程序开始逐个下载到本地替换老版本的组件。如图3-9所示:土地开发整理定额预算程序升级程序新版本xml描述文件互联网服务器新版本xml最近版本的描述文件动态库图3-9土地开发整理定额预算升级程序示意图如图3-10所示:38 程序启动第三章土地开发整理定额预算软件的设计与实现运行升级模块否联网是检测服务器上的升级描述文件中的版本号否新版本是下载最新的组件并替换重启主程序结束图3-10土地开发整理定额预算升级程序流程图1.1用户界面的设计在设计用户界面时,首先对从事该项目工作的专业人员进行细致的调查,包括使用该系统的专业人员的工作习惯、所做任务的具体要求及特殊项目的处理等。此外由于所选用的C++Builder2009编程语言提供了许多界面开发控件,这些控件也是类一对象,我们无需再设计这些基本的用户界面类。如果需要更高级的用户界面可以从第三方购买或者自己编写。对于自带的控件,可以在程序直接使用。例如:TButton(按钮)类可以产生onClick事件,我们只需提供响应这个事件的服务程序即可。39 电子科技大学硕士学位论文土地开发整理定额预算软件的人机交换界面主要包括四个方面:(1)工程项目相应参数的选择及输入界面;(2)查看、选取、套用定额项目界面;(3)材料和设备查看及价格输入界面;(4)各种预算表、汇总表及输出界面。如图3-11所示:图3-11用户界面效果图1.1数据库的设计本系统采用数据库来管理数据,我们在C++Builder2009自带的数据库桌面系统上建立数据库。根据基础数据库、计算表及汇总表的各项任务中所涉及到的数据信息,建立了六十多张数据表。可以发现数据表中的字段与前面定义的各种类的属性基本对应,而每一条记录都对应着类的一个实例,整个表基本上与一个类相对应。其实,这也正是面向对象的设计方法的优点,即通过在面向对象的分析中根据系统分解的情况定义了类和对象及它们的属性,而在设计数据库时,刚好可以利用这一分析的成果来设计数据表。设计好数据库的存储后,还要为访问数据库设计一些类。通过这些类就把访问数据库的操作封装在一起。C++Builder2009开发软件在它的类库中自带了访问数据库很多控件,我们可以直接使用它们。这里主要用到TTable,TDababase以及TDataModule控件.TDatamodule40 第三章土地开发整理定额预算软件的设计与实现控件是一个模板,里面可以放置各种其它数据访问的控件。这个控件的作用就是把功能偶合度比较大的数据访问控件都放到一个模板中去,以便于管理和维护。在土地开发整理定额软件系统中我们设计了数据库结构:1.1定额数据库定额数据库中主要用来存放定额数据。定额数据库相对来说是比较稳定的,其主要作用是将原来以书本形式的《山东省土地开发整理项目预算定额》(试行稿)、《山东省土地开发整理项目施工机械台班费定额》(试行稿),通过我们设计出的结构保存到数据库中。在设计时既要考虑到数据存储的方便和可靠,同时也要考虑易于访问数据,以下将分别设计系统中用到的数据库。(1)材料数据库材料数据库是将土地开发整理项目预算定额和施工机械台班费定额中所用到的所有材料和机械汇总形成的。由于编制项目预算时,材料的预算价格一般使用当地材料的市场价格,所在系统中的材料价格是预算编制人员根据实际情况输入的。材料数据库字段名称、字段类型见表3-3,其中CLDH字段设置为关键字字段。字段类型按桌面数据库管理系统(DatabaseDesktop)中Paradox数据库类型定义,类型后面的数字表示字符长度(以下同)。表3-3材料量表(CLYL.DB)字段名称字段类型中文含义索引设置CLDHAlpha3材料代号关键字CLMCAlpha25材料名称及规格DWAlpha8单位JGNumber预算价格配合比材料的处理:由于土地开发整理工程单价计算中可能用到混凝土和砂浆两种配合比材料单价,必须对这两种材料进行处理。即将土地开发整理定额附表中配合比材料的配合比分别设计数据库:一般混凝土、碾压混凝土、泵用混凝土和用户自定义混凝土,以及砂浆和用户自定义砂浆等数据表。其中用户自定义是指根据工程实际试验材料配合比确定用量,而不使用土地开发整理定额附表的参考用量。由于该数据表不与其它数据表连接,当预算编制人员选择带有配合比材料的定额项目时,同时应选择半成品材料的类型,否则系统将无法完整计算该条定额的单价。(2)施工机械台班费定额库施工机械台班费定额库是土地开发整理定额所用到的所有施工机械汇总。施工机械台班费定额库字段名称、字段类型见表3-541 电子科技大学硕士学位论文表3-5施工机械台班费定额库(SGJXTBFDE.DB)字段名称字段类型中文含义索引设置IXDHAlpha4机械代号关键字JXMCAlpha30机械名称及规格YLFYNumber一类费用JXRGNumber机械人工QYNumber汽油用量CYNumberr柴油用量DIANNumber电用量FENGNumber风用量SHUINumber水用量MEINumber煤用量LXCLNumber零星材料费(3)土地开发整理定额库土地开发整理定额库由以下三张表组装而成,即人工用量表RGYL.DB、土地开发整理工程材料用量表TDKFZLGCCL.DB和土地开发整理工程机械用量表TDKFZLGCJX.DB。建筑工程定额库的作用就是将建筑工程定额上所有内容存放在数据库中,以便存储和读取定额数据。建筑工程人工用量表的字段设置见表3-6。表3-6建筑工程人工用量表(RGYL.DB)字段名称字段类型中文含义索引设置DEBHAlpha7定额编号关键字XMMCAlpha50项目名称SYTJAlpha50适用条件DEDWAlphalo定额单位JLGNumber甲类工用量YLGNumber乙类工用量QTFYAlpha其它费用JZFLNumber间接费率INDEXAlpha3适用范围、工作内容及备注索引二级索引考虑到在土地开发整理工程定额库中许多类似定额项目适用范围、工作内容和备注字段完全一致,因此,加入INDEX字段,其字段内为相同适用范围、工作内容和备注的编号,42 第三章土地开发整理定额预算软件的设计与实现再重新定义一张新表(SYFW.DB),SYFW.DB以前面的编号(INDEX)为主索引,后面字段的分别为适用范围、工作内容和备注等字段。这样就减少适用范围、工作内容和备注的重复输入,使土地开发整理定额库紧凑,便捷。土地开发整理工程材料用量表(TDKFZLGCCL.DB)和土地开发整理工程机械用量表(TDKFZLGCJX.DB)主要用于存放定额项目所用到的各种材料和机械种类及其用量。TDKFZLGCCL.DB和TDKFZLGCJX.DB都以定额编号分别与人工用量表RGYL.DB构成主一从结构(Master-Detail),从而确定出主表中每一定额项目(即记录)所对应的材料和机械的种类及其用量。土地开发整理工程材料用量表(TDKFZLGCCL.DB)和土地开发整理工程机械用量表(TDKFZLGCJX.DB)的字段名称、类型及中文含义见表3-7、表3-8。表3-7土地开发整理工程材料用量表(TDKFZLGCCL.DB)字段名称字段类型中文含义索引设置ZSYShort主索引关键字DEBHAlpha7定额编号二级索引CLDHAlpha3材料代号CLMCAlpha20材料名称DWAlpha8材料单位CLYLNumber材料用量表3-8土地开发整理工程机械用量表(TDKFZLGCJX.DB)字段名称字段类型中文含义索引设置ZSYShort主索引关键字DEBHAlpha7定额编号二级索引JXDHAlpha4机械代号JXMCAlpha5机械名称DWAlpha8机械单位JXYLNumber机械用量土地开发整理工程材料用量表(TDKFZLGCCL.DB)和土地开发整理工程机械用量表(TDKFZLGCJX.DB)设置主索引的目的是使其DEBH索引字段在修改后能够自动更新,而无需在DateBaseDesktop手工更新索引字段。为减少数据输入量,以及增加数据库之间的连接,土地开发整理工程材料用量表(TDKFZLGCCL.DB)中的材料名称、单位字段都设置为Lookup,并通过材料代号引用材料数据库中的材料名称和材料单位字段;土地开发整理工43 电子科技大学硕士学位论文程机械用量表(TDKFZLGCJX.DB)中的机械名称和机械单位都设置为Lookup字段,并通过机械代号引用施工机械台班费定额库中的机械名称及机械单位。(4)设备定额库设备定额库用于存放设备属性,以利于以后的查阅。设备定额库的字段设置见表3-9。表3-9设备数据库(SBDE.DB)字段名称字段类型中文含义索引设置SBBHAlpha4设备编号关键字SBMCAlpha50设备名称SBGGAlpha30设备规格SBYJNumber设备原价SCCJAlpha40生产厂家1.1系统数据库系统数据库是指项目预算编制过程中形成的各种数据表和汇总表及相关系统调用数据的集合体,把这些数据库称为数据表。系统数据库有两个特殊的数据表,其一为系统变量表,用于存放系统变量的设置,例如:材料价格(如表3-10)、各种选项默认值的设置(如表3-11)等等:其二为项目汇总信息表,用于存放规定项目划分的项目名称。项目汇总信息表的字段设置见表3-12。表3-10材料价格表(CLJG.DB)字段名称字段类型中文含义索引设置CLDHAlpha3材料代号关键字CLMCAlpha25材料名称及规格DWAlpha8单位JGNumber价格表3-11系统变量表(STBL.DB)字段名称字段类型中文含义索引设置IDAlpha5唯一标识关键字NAMEAlpha50变量名字VALUEAlpha500变量值表3-12项目汇总信息表(XHMZ.DB)44 第三章土地开发整理定额预算软件的设计与实现字段名称字段类型中文含义索引设置XMDHAlpha5项目代号关键字XMMCAlpha50项目名称XMLXAlpha50项目类型XMHZNumber项目汇总项目代号字段设置为五个字符,与山东省土地开发整理定额的编号一致。第一位字符表示章节,第二、三位字符表示一级项目名称,第四、五位字符表示二级项目名称(即单位工程项目名称)。系统数据表中其它表格均以输出数据表头名称来设置字段,字段类型根据相应表(OOA分析形成的类)的属性具体确定。由于该类和对象较多,就不一一列举。同时,为了明确计算规则,在相应表中都加有一些标志字段。这里主要为了方便设计标志性字段和一些特殊技巧的处理。土地开发整理工程单价汇总表与土地开发整理工程单价表以单价表号字段构成主从关系(Master-Detail),土地开发整理工程单价表中的工程名称、定额编号、定额单位和单价表号的字段内容都是显示土地开发整理工程单价汇总表中的字段。在土地开发整理工程单价表中设置控制字段,用于识别单价表号、所用材料的材料代号、所用机械的机械代号。在分部分项目数据表中添加标志性字段来存放添加的四级项目代号,并可以通过其代号来确定相互的隶属关系,以便于各个分项的项目合计和总合计。因此,添加项目名称代号到标志性字段中,系统再根据项目代号从项目汇总信息表中找出其相应的项目名称添加到对应的数据表中。在预算编制过程中,有的单位有特殊要求,例如,株、扩。在相关数据表中的该字段设置时,采用可自由设定方式保存,便于软件的灵活应用。当遇上单位字段为m3和m2时,就将其分解为m和3以及m和2两个字段,在表报输出时就可以把2或3自动处理成上标。1.1系统分解在系统分解的设计中,主要是以面向对象的分析模型为基础,调整类和对象之间的继承关系以适应具体的开发环境,增加类和对象的属性和方法以及添加中间类和对象以提高系统的完整性和准确性等等。在前面的系统分析中,土地开发整理定额数据库应为组装结构,因此,土地开发整理定额数据库应有三个数据表组成,即由一个主数据表(由定额名称、适用条件、定额单位、人工用量等字段组成)连接两个从数据表组成,从数据表一为土地开发整理工程材料用量表,表二为土地开发整理工程机械用量表。土地开发整理工程材料用量表是指对应于主表45 电子科技大学硕士学位论文中的定额项目所用的一种或多种材料名称、材料单位和材料用量。土地开发整理工程机械用量表是指对应于主表中的定额项目所用的一种或多种施工机械名称、施工机械单位和施工机械用量。因此,在面向对象设计时添加相应的类。在生成土地开发整理工程预算表、设备安装工程预算表、临时工程预算表和前期工作费预算表时,都需根据土地开发整理项目预算编制暂行规定,并结合所作实际工程选定四个级别项目名称。前面的OOA分析中预算表对应的项目都单独列为一个类,考虑到程序设计方便,将以上四个部分的四个级别项目名称的分类归为一个类,其中包含四个部分的项目名称的分类。同时考虑到中小型工程在很多时候使用的方便,对项目名称定义为可自由设置项目名称,因此,在面向对象设计时考虑到自由设置下的预算编制。1.1主要模块的实现2.2.1费用模块针对费用的复杂性,我们在实现的过程中采用了工厂模式+装饰模式来编写的。这里考虑到费用比较多,而且用户可以根据需求自由定义自己的费用计算公式。基础费用类如下:classFee{public:doubleCalculate();voidSetRate(doubledRate);voidSetName(constchar*pszName);voidSetUnit(intiUnit);voidSetType(intiType);doubleGetFee();protected:stringm_strName;intm_iUnit;intm_iType;doublem_dRate;doublem_dFee;};自定义费用类如下:46 第三章土地开发整理定额预算软件的设计与实现classCustomFee:publicFee{public:doubleCalculate();voidSetFormula(constchar*pszFormula);stringGetFormula();voidSetQuoteNum(constchar*pszQuoteNum);voidSetMemo(constchar*pszMemo);private:stringm_strFormula;stringm_strQuoteNum;stringm_strMemo;};1.1二次开发模块针对上次做出的设计,我们这里看看如何在程序中加入内置活动脚本的支持。(1)实例化一个脚本对象(IActiveScript),一般装了IE的电脑上应该都有VBScript和JScript;(2)告诉IActiveScript谁来解释脚本中的对象(IActiveScript::SetScriptSite);(3)告诉IActiveScript脚本里会用到哪些对象(用IActiveScript::AddNamedItem);(4)装载脚本(VBScript或JScript代码);(5)动态运行脚本(通过设置IActiveScript::SetScriptState实现);(6)如果在运行脚本过程中遇到第3步里告诉它的对象,便会向我们要此对象的接口以便继续执行(此时它会调用IActiveScriptSite::GetItemInfo,在第2步里告诉它的);这里列出的代码只是核心代码,先来看一下我们测试用的脚本代码:functionHostDisplay()47 电子科技大学硕士学位论文{Report.Caption="定额报表演示";Report.Color=(x<<16|y)&0xffffff;Report[0][0]=100;ScriptHost.Display("土地开发整理定额预算软件演示完毕。");}此脚本的目的是操作一个Report的报表对象,对标题、颜色及工作单元格进行设置,最后弹出一个对话框。接下来编写处理Report对象的方法和属性。structTReport:TDispatch{enum{CAPTION,COLOR};staticwchar_tName[];STDMETHOD(GetIDsOfNames)(REFIIDriid,LPOLESTR*prgszNames,UINTcNames,LCIDlcid,DISPID*prgDispId){if(lstrcmpW(prgszNames[0],L"Caption")==0){*prgDispId=CAPTION;}elseif(lstrcmpW(prgszNames[0],L"Color")==0){*prgDispId=COLOR;}elsereturnE_NOTIMPL;returnS_OK;}STDMETHOD(Invoke)(DISPIDdispIdMember,REFIIDriid,LCIDlcid,WORDwFlags,DISPPARAMS*pDispParams,VARIANT*pVarRes,EXCEPINFO*pExcepInfo,UINT*puArgErr){switch(dispIdMember){caseCAPTION:{if(wFlags==DISPATCH_PROPERTYGET)48 第三章土地开发整理定额预算软件的设计与实现{pVarRes->vt=VT_BSTR;pVarRes->bstrVal=GetCaption();}elseif(wFlags==DISPATCH_PROPERTYPUT){if(pDispParams->cArgs!=1)returnDISP_E_BADPARAMCOUNT;if(pDispParams->rgvarg[0].vt!=VT_BSTR){*puArgErr=0;returnDISP_E_TYPEMISMATCH;}SetCaption(pDispParams->rgvarg[0].bstrVal);}elsereturnDISP_E_MEMBERNOTFOUND;break;}caseCOLOR:{if(wFlags==DISPATCH_PROPERTYGET){pVarRes->vt=VT_I4;pVarRes->intVal=GetColor();}elseif(wFlags==DISPATCH_PROPERTYPUT){if(pDispParams->cArgs!=1)returnDISP_E_BADPARAMCOUNT;if(pDispParams->rgvarg[0].vt!=VT_I4){*puArgErr=0;returnDISP_E_TYPEMISMATCH;}SetColor(pDispParams->rgvarg[0].intVal);}elsereturnDISP_E_MEMBERNOTFOUND;break;49 电子科技大学硕士学位论文}default:returnDISP_E_MEMBERNOTFOUND;}returnS_OK;}BSTRGetCaption(){returnWideString(m_pForm->Caption).Detach();}voidSetCaption(BSTRbstrCaption){m_pForm->Caption=bstrCaption;}intGetColor(){return(int)m_pForm->Color;}voidSetColor(intnColor){m_pForm->Color=TColor(nColor);}private:TForm*m_pForm;};wchar_tTReport::Name[]=L"Report";接着我们要实现IActiveScriptSite,它用于上面所说的第2步和第6步。活动脚本引擎解析上面的脚本时遇到Report时会通过GetItemInfo向它要接口,它则负责把我们刚才写的IDispatch传给活动脚本引擎。这个IActiveScriptSite要包含头文件#includestructTActiveScriptSite:IActiveScriptSite{STDMETHOD(GetItemInfo)(LPCOLESTRpstrName,DWORDdwReturnMask,IUnknown**ppiunkItem,ITypeInfo**ppti){50 第三章土地开发整理定额预算软件的设计与实现if((dwReturnMask&SCRIPTINFO_ITYPEINFO)!=0){*ppti=NULL;returnE_FAIL;}if((dwReturnMask&SCRIPTINFO_IUNKNOWN)==0)returnE_FAIL;if(ppiunkItem==NULL)returnE_POINTER;*ppiunkItem=NULL;if(lstrcmpW(pstrName,TReport::Name)==0){m_pReport->AddRef();*ppiunkItem=m_pReport;returnS_OK;}elseif(lstrcmpW(pstrName,TGlobalFunc::Name)==0){m_pMyGlobalFunc->AddRef();*ppiunkItem=m_pMyGlobalFunc;returnS_OK;}returnE_FAIL;}private:TReport*m_pReport;};这个IActiveScriptSite要包含头文件#includevoid__fastcallTForm::btnRunClick(TObject*pSender){TComInterfacepActiveScript;pAS.CreateInstance(L"JScript");if(!pActiveScript)return;TComInterfacepActiveScriptParse(pActiveScript);if(!pActiveScriptParse)return;pActiveScriptParse->InitNew();TComInterfacepDispatch_Report=newTReport(this);TComInterfacepDispatch_GlobalFunc=newTGlobalFunc;TComInterfacepActiveScriptSite=51 电子科技大学硕士学位论文newTActiveScriptSite(pDispatch_Report,pDispatch_GlobalFunc);pActiveScript->SetScriptSite(pActiveScriptSite);pActiveScript->AddNamedItem(TReport::Name,SCRIPTITEM_ISVISIBLE);pActiveScript->AddNamedItem(TGlobalFunc::Name,SCRIPTITEM_GLOBALMEMBERS|SCRIPTITEM_ISVISIBLE);pActiveScriptParse->ParseScriptText(WideString(script->Lines->Text),NULL,NULL,NULL,0,0,0,NULL,NULL);pActiveScript->SetScriptState(SCRIPTSTATE_STARTED);pActiveScript->Close();}现在土地开发整理定额预算软件已经具有了内置执行活动脚本的功能了。1.1自动升级模块根据自动升级模块的分析分解为以下几个子模块:(1)定义升级描述文件的XML格式;(2)编写下载远程服务器上的文件;(3)编写自动升级的规则。定义升级描述文件的XML格式如下:土地开发整理定额预算软件1.3.0.0XXX%site%系统库动态库%site%/update/stk.dll费用动态库52 第三章土地开发整理定额预算软件的设计与实现%site%/update/fee.dll定额套用动态库%site%/update/dety.dll下载远程服务器上的文件的代码如下,在工程中需要加入连接库wininet.lib:voiddownloadInternetFile(char*pszUrl,char*pszLocalFile){DWORDbyteread=0;charbuffer[100];memset(buffer,0,100);HINTERNETinternetopen;internetopen=InternetOpen(NULL,INTERNET_OPEN_TYPE_DIRECT,NULL,NULL,0);HINTERNEThOpenUrl;hOpenUrl=InternetOpenUrl(internetopen,_T(pszUrl),NULL,0,INTERNET_FLAG_TRANSFER_BINARY|INTERNET_FLAG_PRAGMA_NOCACHE,0);BOOLbWrite;DWORDdwWritten;HANDLEhCreateFile;hCreateFile=CreateFile(_T(pszLocalFile),GENERIC_WRITE,0,0,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,0);BOOLbReadFile;while(TRUE){bReadFile=InternetReadFile(hOpenUrl,buffer,sizeof(buffer),&byteread);if(bReadFile==FALSE||byteread==0)break;bWwrite=WriteFile(hCreateFile,buffer,sizeof(buffer),&dwWritten,NULL);}53 电子科技大学硕士学位论文CloseHandle(hCreateFile);InternetCloseHandle(hOpenUrl);InternetCloseHandle(internetopen);}自动升级模块还可以进一步完善,如果你的程序很大的话,可以加入支持断点续传和利用空闲的网络来下载等。1.1本章小结本章以面向对象的方法来对土地开发整理定额预算软件系统进行设计。通过面向对象 的方法分析出了整体的数据结构,设计了框架图,数据库结构图等。然后按模块给出了核 心模块的代码实现,选择了C++Builder2009来编写此系统。54 第四章土地开发整理定额预算软件测试第四章土地开发整理定额预算软件测试1.1软件使用流程测试2.2.1新建向导2.2.1.1新建向导概述(1)程序安装完成后,双击桌面上的程序启动图标,或者通过【开始】菜单启动程序,用户则自动进入新建工程文件向导。(2)在“新建向导”的主窗体中。它有五个主要的功能:如图4-1所示①新建过程、审计审核、新建项目管理、导入电子表书、打开文件。②选择其中任何一种要完成的功能,双击窗体中与之对应的按钮,系统会提示你完成所需要的操作。③(注意:双击窗体中“更多文件...”这一行,可以选择文件打开。)2.2.1.2新建工程(1)在“欢迎使用”对话框中双击【新建工程】按钮,或者是点击【新建工程】按钮后点击【确定】按钮。(2)设置工程名称、模版:①新建的工程文件:必须在输入工程名称,并选用工程模板后才能点击【下一步】按钮。②用户在输入工程名称和工程模版后,若不需要设置工程口令,直接点击【完成】按钮,进入软件的操作界面。2.2.2操作界面在第一节新建工程操作中,输入工程的基本信息后点击【完成】按钮,即可进入软件的操作界面。2.2.3主菜单2.2.1.1.1文件点击主菜单栏中的【文件】按钮,弹出文件菜单列表框。(1)新建:新建工程、新建审核或者新建项目管理等。用户也可以用快捷键(Ctrl+N)或者点击工具栏上【新建】按钮。(2)打开:从磁盘中选择需要打开的工程文件、项目文件、招标文件等。用户也可以用快捷键(Ctrl+O)或者点击工具栏上【打开】按钮。(3)关闭:退出当前操作的工程窗口。(注意:此时软件的主程序并没有退出)(4)保存:保存当前的工程文件。用户也可以用快捷键(Ctrl+S)或者点击工具栏上【保存】按钮。(5)全部保存:保存所有打开的文件。(6)另存...:更换名称和路径对当前工程再保存一个副本。(7)另存为模板:将当前工程保存为工程模板,这样可以继承这个工程来创建新的工程。缺省的情况下保留分部分项及措施项的所有数据,如果需要保留,根据实际情况作出55 电子科技大学硕士学位论文选择。(8)导出:包括导出招标电子标书和导出当前工程材料价格。例如:选择导出当前工程材料价格,保存价格文件名称、价格来源等信息。(9)导入:包括导入工程、导入招标电子标书和工程合并。 (10)退出:关闭当前工程文件并且退出主程序。1.1编辑(1)复制/粘贴:按下快捷键(Ctrl+C)/(Ctrl+V);也可以点击工具栏上的复制、粘贴按钮。(2)EXCEL:用快捷键(Ctrl+P)或者点击工具栏上的【Excel】按钮,导出电子表格。 该功能能将用户选取的表格中的内容输出在EXCEL表格中,它的内容与软件界面显示的内 容完全一致,所以又称界面报表。(3)查找:完全针对整个界面的查找,在整个界面网格内搜索指定的内容,方便用户 快速定位。也可以用快捷键(Ctrl+F)或者点击工具栏上的【查找】按钮进行查找。1.2视图视图菜单包括工具栏、特殊符号、计算器、首页、布局、设置界面风格颜色。 (1)工具栏:在工具栏前选“ü”则在显示工具栏,否则隐藏工具栏。工具栏包括一 些常规操作的快捷图标按钮。(2)特殊符号:在特殊符号前选“ü”则在显示特殊符号,否则隐藏。(3)计算器:选择计算机或者点击工具栏中的【计算器】按钮,打开“我的表达式计算器”窗体。点击【增加】按钮,表达式序号默认在末尾增加一行;点击【插入】按钮,插入的行则在光标位置的前一行;选中需要删除的行,点击【删除】即可。用户可以根据实际情况选择保留小数位的位数。(4)首页:选择首页项,当前操作的工程界面会最小化并返回到程序的主界面。如果要返回此前的工程,点击主菜单栏上窗口菜单,在下拉列选择要返回的工程即可。(5)布局:点击主菜单上【视图】菜单栏,在下拉列选择布局后者点击工具栏中的【布 局】按钮。在列显示/隐藏窗口根据实际情况勾选所需显示或隐藏的列。(6)设置界面风格颜色:点击主菜单上视图,在下拉列选择设置界面风格颜色。用户根据个人爱好设置界面风格。1.3数据维护2.2.1编辑信息价格文件我们在套用定额时,材料价格是按照当地工程部门标准给定的。但在实际工程中,不 同区域的材料价格存有差异,我们需要对价格就行编辑修改,以便在下一次工程调用。(1)点击【数据维护】菜单下的编辑信息价文件,弹出“选择打开材料价格文件”窗口。选择需要打开的材料价格文件(材料价格文件的后缀名为:*.JG)。(2)选择编辑的价格文件后,弹出编辑价格窗口。新建:点击新建下拉按钮,新建的类型如下:8选择价格文件为模板新建:以当前打开的价格文件为模板,编辑价格。8选择材机库为模板新建:以当前打开的材机库为模板。8新建空白文件:新建空白价格文件,直接输入价格。56 第四章土地开发整理定额预算软件测试打开:选择打开的价格文件。保存:保存当前编辑完成的价格文件。另存为:按一定条件存储价格文件。加权计算:选择两个或两个以上的价格文件,通过加权计算生成新的价格文件。 用户在打开时可以按住Ctrl键或Shift键多选文件。查找:根据上查找功能一样。(略)。 关闭:退出编辑信息价窗口。1.1系统参数设置点击【数据维护】菜单下的系统设置,弹出系统参数设置窗口。(1)系统设置8备份界面:设置后台备份工程文件的时间,系统默认为每15分钟保存一次。 为0时取消后台的自动备份功能。8系统中对工料机价格的习惯称呼:在实际过程中,不同区域对工程材料价格 的称呼不同,所以需要设置。例如:国家标准定额中工料机的“参考价”称为“定额价”, “市场价”成为“预算价”。8工程文件保存目录:系统备份的默认路径,用户也自定义保存路径。 8清单名称处理:分隔标志。例如:项目特征为“[项目特征]”等。 (2)界面设置8指引窗口:分为“嵌入式(左右排列窗口)”和“浮动式(弹出窗口)” 8显示窗口:是否显示主页做背景、钢筋调整功能,以及定额法是否显示清单(项 目)指引。(3)工程量单位维护:单位是按照国家标准给定的,一般情况下不需要更改。2.2.1插页栏插页栏是软件的主要组件之一,工程的计算、套定额主要是在插页栏中进行的。插页栏中的数据计算方法是按照从左至右、依次汇总。插页栏是由很多子插页组成的,每个子插页又对应不同的费用模块窗口。而在插页栏 中最关键的子插页就是“基本信息”,“基本信息”插页中费率变量的设置将会影响到后面整个工程的数据结果,所以我们要保证基本信息栏中数据完全正确,以免后期数据错误 难以查找。2.2.1.1费用模块的功能与应用测试2.2.1.1.1费用模块的概述山东土地开发整理定额预算软件内的费用模块操作基本上是一致的。都是以一个树结构分层汇总计算费用项目。包括“基本信息”,“人工单价”,“电风水价”,“工料机汇总分 析”,“其他费”等各个专业造价软件中的模板。2.2.2.1.1编辑费率和计算基础在费用模块的操作界面内,可以对计算基础和费率这两方面进行修改,单击计算基础或费率,点击,弹出对话窗口,在窗口中进行修改。费率也可以直接对数字进行修改。2.2.2.1.2引用号的规则费用模板中如果某行的“引用号”列中输入了引用号,这样下面的模板可通过此引用57 电子科技大学硕士学位论文号调用到这行对应的合计值。因此,引用号必须是唯一的。1.1锁定记录处于锁定状态时,用粗体显示,同时其名称,计算基础、引用号不能修改。2.2.1基本信息打开软件,新建工程进入软件的操作界面,基本信息插页是软件的第一个插页,用户 在编制预算书请先熟悉编制说明,并按照要求填写工程概况和设置相应的费率变量。2.2.1.1工程概况(1)工程概况子插页中包含了“工程编号、工程名称、合同编号、合同名称、编制人、编制日期、投标人及审核人等内容。”在新建工程时“工程名称、工程编号”时直接引用新建向导中所填写的内容,编制日期缺省时计算机系统日期。根据工程的实际情况填写相关信息并保存,这些信息可以在后面的报表中直接调用。(2)设置工程密码:(保护工程文件的安全性)①如果用户在新建工程时没有设置口令,点击【设置工程密码】按钮,在弹出设置口令窗口中直接设置口令。②如果用户在新建工程时设置了口令,为了确保工程文件的安全性,可以点击【设置工程密码】按钮,在弹出设置口令窗口中修改口令(不要设置口令,直接设置为“空”)。2.2.1.2编制说明本子插页主要是介绍软件的基本操作流程,及一般性的文字说明,如工程说明、备忘录等。用户也可以修改并保存;如果是初次使用本软件,可以通过【说明】子插页,大致了解本系统的整个操作流程。2.2.1.3费率变量包括费率变量选择参数、费率变量、特项取费费率三个子窗口。2.2.1.1.1费率/变量选择参数(1)费率/变量选择参数的设置,是工程套价的起始关键步骤。用户对费率/变量参数 进行正确选择,根据工程具体情况,选择相应工程参数(即费率/变量选择参数)。在参数 选择选项改变后,可自动按内置缺省参数更新“人工单价费率窗口、独立费用费率窗口、特项取费费率窗口”中的费率或变量值。(2)如果【自动刷新费率变量】处于勾选状态,则不同的参数组合将自动刷新一组唯一的取费程序费率值,如果用户需要修改费率的取值,则应该把【自动刷新费率变量】勾选取消,以免重新选择导致原修改过的费率值被重复刷新;右端子窗口中的人工单价与其 他费用(独立费用)的费率取值除一部分是根据右侧的选项参数决定外,很多需要在本窗口中通过下拉选项选择不同的取值,如果没有下拉选项的则可根据实际情况直接输入。(3)在费率/变量选择参数窗口中的空白处点击右键,可以“上移或者下移”某一行;增加项目或者删除项目;还可以修改备选项的参数值等。2.2.1.1.2费率/变量(1)由“人工单价费率设置”和“其他费用费率设置”两部分组成。(2)窗口是由名称、代号、数值、单位、备注等列组成的。名称是项目的特有称号;代号是名称的简称,一般情况下我们采用每个字的开头一个大写字母来命名的(用户也可 以根据个人习惯自定义,但前后必须保持一致,以免数据不能调取);数值有缺省值和备 选值;备注是注明相关的文字信息。58 第四章土地开发整理定额预算软件测试(3)软件默认状态下名称、代号、单位列是锁定的,列的背景色为深色。在实际过程 中,有的时候需要增加、修改或者删除某项,首先必须按住Alt+F12解除锁定,修改完成 后再按Alt+F12锁定即可。4.2.2.3.3特项取费费率(1)点击费率变量窗口中的【编辑特项取费】按钮,或者在特项取费窗口中点击鼠标右键执行“编辑特项取费”命令项。(2)实际工程中需要增加或插入某费率列,点击鼠标右键选择增加或者插入费率列,在弹出的窗体中输入费率名称以及选择费率类别。若此费率列为独立的,就选择可直接输入数据;否则选择不直接输入。(3)保存模板:将当前的费率列保存为模板,这样可以继承这个费率列来完成新的费率列。(4)读入模板:就是将调用其他的费率列模板。(5)特项取费程序:根据(1)操作,在弹出的“统一设置取费程序”窗体中进行设置。左窗口是特项窗口,可以做新增、删除、复制特项模板等操作;右窗口是特项费用费率设置窗口,最重要的计算基础和费率列的设置,费用名称与对应关系要一一对应,没有的为 空。2.2.1设置本子插页在模板打包时已经进行了常规设置,一般情况不需要进行修改。(1)锁定参考价/定额价:设置为是否锁定参考/定额价,锁定状态则不能输入工料机的定额价;(2)子目取费直接采用特项取费:如果勾选的话则不能对单个子目进行取费设置,一律按特项取费程序进行单价计算,否则可以进行单子目取费设置;(3)指引上双击可录入分部:表示在套价窗口中可以双击右侧清单项目结点名称作为分部名称录入,但如果在一个已有名称的行中双击清单项目名称时会替换掉原有的分部名称,本功能主要对清单计价方式有效,对定额方式没有意义。(4)分部最深层数:指最多可以增加的分部层数。(5)报表中对非本专业定额的编号加上标志:工程套定额时,有的定额取自于其他专业的定额,所以我们在报表输出中对非专业定额的加上标志。(6)缺省模板文件目录:报表根目录、费用文件目录、网格/数布局设置,如果目录不对,则在【报表】插页中看不到报表文件,模板中我们已经设置好,用户不需要进行修改。(7)正算/反算:分部与清单的单价与合价的计算方式选择。(8)分部及清单计算及小数修约处理:单价和合价小数位的处理。(9)定额子目计算小数修约处理:单价、合价以及工程量/消耗量小数位的处理。(10)自动查找定额库列表:添加或者删除定额库,还可以改变定额的排列顺序。59 电子科技大学硕士学位论文(11)指标类别:是汇总主体工程中个项目的工程量。(12)模板定额的处理:模板汇总到分部分项/措施项目。(13)清单专项:缺省情况下为非选状态,若选中,程序会自动加载清单的工程内容、指引子目,生存工程内容文字、项目特征以及保护清单名称单位;清单编码格式有两种:“原始格式”-输入什么就是什么,“原始格式-流水号”-加上流水号。1.1人工单价及电风水价的应用测试2.2.1人工单价该插页是进行人工单价分析处理的,各项工资组成的计算基础与费率已经在前面的“费率/变量”中给定,这里不需要进行修改,即使修改也要回到前面去修改。人工单价插页中数据是采用树状结构,数据向上一级汇总,最后的结果汇总到根节点。2.2.2电风水价本插页是对电、风、水三种材料进行单价分析处理,进行单价处理时用户根据具体情况输入“计算基础”和“费率”;说明:“人工单价”与“电风水价”模块中除了可变的数据外,相对稳定的公式已经在模板中设置好,用户一般不用修改;如果不需要进行对人工、电、风、水单价分析处而直接报价的话,可以在单价引用号所在栏单击右键,选择快捷菜单中的“屏蔽此费用的引用”命令项,从而达到屏蔽此行单价的引用的功能,这样就可以直接在【工料机分析】插页中进行报价。1.2定额套用的测试此窗口是本软件的重要组成部分,您的大部分工作都将在这里完成,如定额的选用、人材机价格的定义,调整,换算以及其它的一些辅助工作。2.2.1.1窗口工具栏按钮简介(1)显示/关闭指引窗(2)快速定位:点击【快速定位】按钮,可以快速定位到某一项具体工程。(3)重算工程量及金额:重新计算整个工程,若计算式中有变量,按改变后的变量值进行计算。(4)增加分部:在当前记录下插入一个分部。(5)增加子分部:在当前的分部下插入一个子分部。(6)增加清单项目:在当前记录下插入一个清单项目。(7)增加子目:根据工程情况套定额或主材、设备。(8)删除:删除选中的当前记录。60 第四章土地开发整理定额预算软件测试(9)分部顺序:分部可以升级,也可以降级。(10)节点顺序:节点上移和节点下移。(11)语音对效:(略)。(12)设置开关选项:点击【开关】按钮旁边的三角形。在下拉列表中左边为开。关 用“ü”来显示,中间为开或关的窗口,右边为窗口的功能说明。(13)编辑状态:点击【编辑状态】按钮弹出下拉框。1.1指引窗口“土地开发整理预算定额”的指引窗。(1)指引窗主要是用于清单、项目、定额的选用,以及人材机的查找。而在主材子插页指引窗中,点击【选取主材库】按钮,弹出“选择主材打开文件”对话框,选择需要的主材文件(主材文件的后缀名为*.JCL)。(2)在指引窗口的坐下角,点击图标按钮,可以切换指引窗内的子窗口顺序;在工程套定额时,选择【节点过滤】复选按钮,软件会自动过滤到指定节点的内容,而不选择 会显示包括此节点内其他的内容。1.2套定额窗口工程大部分工作是在这里完成的,如定额的套用、工程量的输入、单价合价的汇总、 调整换算以及其他的一些辅助工作。(1)列:实际工程中,有的时候用户在做完工程后找不到要显示的列名,这时点击软件工具栏中的【布局】按钮,选择你所需要显示的列名;同时有些不需要显示的列名可以取消显示,根据实际情况来处理。(2)主窗体:是采用分部分项的数形层次结构。第一级根节点,代表整个工程部文件。(注:不能删除)第二级分部,类别代号为“部”。第三级分项,即清单项目,类别代号为“清”。第四级类别代号为“子”这一层为输入的定额子目。在工具栏中点击【插入】按钮或者在窗口网格单击右键,也可以插入这些节点。在实际工程中,有些清单项目或者子目需要重复使用的。软件提供了复制行、粘贴行的功能,大大提高了用户的工作效率,以免重复输入数据加大工作量。(3)增加设备:增加工程所需的设备器材。用户可以直接输入增加设备的名称,系统会根据库自动找到所对应的编号(前提是名称在库中存在);如果用户不知道增加设备的名称,可以点击【调用系统数据】按钮,在项目指引窗体找到所需的设备即可。(4)增加主材:操作跟增加设备一样,详细见增加设备。61 电子科技大学硕士学位论文(5)批量调整取费:根据工程需要,通过选择范围来快速批量设置子目取费计算程序。用户根据实际工程选择应用的范围:按当前节点层次、按选定的节点、按特项代号来选择。(6)导入电子表格:点击【打开】按钮,可以导入EXCEL数据。(7)块操作:通过定义块的方式进行批量套定额,选定要操作的定额,单击鼠标右键,在块操作中选择块首和块尾,或者按住shift和ctrl键进行多选。之后进行复制粘贴或者剪切,这种方法可以在不同工程间实现数据共享调用。也可以将块另存为一个块文件,供其他工程调用。(8)批量操作:批量操作按当前节点层次,或按shift或者ctrl键多选的子目进行的操作。①批量调整工料消耗量:按选用的范围,用指定的系数调整子目工料机的消耗量。子目换算中会保存这些调整过程。建议您在应用前保存快照,以备恢复。②批量设置特项号:按选定的定额项目进行特项设置。③批量工料换算:此窗口可以进行工料机的系数、增减及消耗量系数的批量调整。用户还可以点击【选择换算材机】按钮,在项目指引中找到所需要换算的材机即可。④批量工程量系数:此窗口可以更改工程量系数,直接输入系数即可。缺省系数为“1”。⑤批量定额单位->1单位:把定额单位换算成为1的系数的单位,同时在计算式中乘以原定额单位的系数。(9)用户定额用户自定义定额并保存到用户定额表中,同时对保存的定额进行调用或者编辑操作。(10)其他:修改节点属性、修改换算标志、增加工作内容;增加费用项、增加系统工作内容、删除为套价工程内容、保存模板、调用模板(略)。①修改节点属性:用户可以根据实际工程要求对节点属性进行设置。②修改换算标志:用户根据个人习惯自定义换算标志。(11)设置直接费用:设置成直接费用后将删除此定额的所有工料机子目及取费程序,通过右键菜单设置成普通条目进行恢复,并点击进行还原定额。所谓直接费用,即单价或其他费用均可手工直接输入,不需要通过子目工料机或取费程序计算生成。①锁定记录:记录处于锁定状态时,用粗体显示,同时其名称,计算基础、引用号不能修改。②标记:用红色字体显示。62 第四章土地开发整理定额预算软件测试③模糊查找定额:在定额窗口选择要查询的词(按住鼠标拖选),点击鼠标右键,选择模糊查找定额(快捷键Ctrl+T),出现如下界面,还可以在此窗口进一步查找定额。如果选中查询的内容在编码栏,则只对编码模糊查找。在选定的定额上双击可将该定额输入到当前工程。④删除空行:删除所有意义的空行。1.1工料机分析窗口的应用测试2.2.1基础应用2.2.1.1工料机调价子目下列出的工料机,是单位子目含量的人材机消耗量,缺省状态下与定额书所列数值一样,其它类别节点下的工料机则是该节点下所有子目工料机的汇总。套定额之后,可以在工料机的窗口直接填写工料机编制价,其他定额包括相同材机时,价格也自动调整了。同时也可以在工料机汇总里整体进行修改,这二种方式的效果是一样的。注意:(1)如果要修改参考价,需要取消“锁定参考价/定额价”的设置。(2)配合比或机械台班类别材机的编制价和参考价仅当不分解时才能直接修改。2.2.1.2子目取费子目取费列出了子目的各项费用的计算过程及相关的参数与费率,可以通过“批量设置取费程序”批量修改子目取费。如果要修改单个子目的取费程序,首先在基本信息窗口中设置取消对“子目取费直接采用特项取费”的锁定。(1)选取取费程序:点击子目取费右窗体中的【调用取费程序】,或者时单击鼠标右键选择“选择取费”,在弹出的“选择打开子目取费文件”窗体中选择相应的子目取费文件即可。(2)另存取费程序:点击子目取费右窗体中的【另存取费程序】,或者是单击鼠标右键选择“另存取费”,在弹出的“选择保存子目取费的文件名”窗体中,输入保存的子目取费文件名即可。(3)其他功能:增加、插入、删除、上移、下移等操作,这里就不详细介绍。2.2.1.3项目特征对清单进行项目特征描述是编制招标文件的重要工作,描述的原则是详细全面、准确简洁、通俗易懂。对清单项目特征的描述关系到投标人如何报价,因此对清单项目特征的63 电子科技大学硕士学位论文描述状况也反映了清单编制的水平。软件提供了自动生成项目特征的多种方法,可快捷地生成所需的项目特征。4.5.1.4工作内容在此编辑工作内容,对清单项目,系统提供通过勾选自动生成工程内容描述的方法。4.5.1.5附注说明当定位在子目节点时显示,列出了定额的附注说明,在清单节点下列出清单工程量计算规则。4.5.1.6计算规则:工程量计算的规则4.5.1.7工程量计算在工程量计算窗口中输入名称、部位、轴线,在输入变量和计算式,在类别的下拉列表中选择类别。右边的操作按钮可以将计算结果提取到工程量表达式栏。如图4-59所示:4.5.1.8工料机右键菜单功能简介(1)自动换算选项:编辑缺省单选材料项、编辑缺省附项定额对应关系①编辑缺省当选材料单选是定额材机中的同类产品中只能选用一种的换算方式。例如“自卸汽车”,定额中列出各种规格,工程中套用时,只选其中的一种规格及相应的消耗量。通常只在此删除,在换算窗口中选择的单选项目会自动作为缺省项增加到此处。②编辑缺省附项定额对应关系附项换算是指在定额材机中指向另外一个定额类型的处理。例如“混凝土运输”指向相关的定额。这里设置缺省的对应关系,通常只在此删除,在换算时选用附项自动增加到此处。(2)增加空行:默认增加到最后一行(3)替换材机:替换当前材机,例如当前的材料是“合金片”,我们单击【替换材机】,在项目指引材机中选择“合金钻头”来替换“合金片”。(4)补充输入:用户自定义补充工程中所需的材料。用户可以直接输入材料名称,编号等相关内容,还可以通过点击【打开材机指引】从系统材料库、主材库或当前工程材料中选择材料。(5)设置为甲供所谓“供”就是工程建筑的所需材料的提供商。一般情况下,默认提供工程材料方为64 第四章土地开发整理定额预算软件测试“乙供”。但是在实际工程中甲方为了节约成本来提供一些材料,这时我们得把甲方提供得材料设置为“甲供”,以免这些材料的费用重复计算。材料设置为甲供后,在工料机类别列中会出现“甲供”两个字。这时候我们可以在工料机汇总分析插页中看到设为甲供的材料。(6)换算配合比台班组成:详见定额换算说明。(7)显示换算窗:打开换算窗口。(8)还原定额:取消之前所有的换算,并把结果还原到定额的初始状态。(9)发送名称到子目名称:包括【替换】和【追加】。①替换:把当前选定子目的名称替换为对应子目中人材机的名称。例如:选定当前子目,在其对应的工料机中选中“合金片”材料,点击右键选择【发送名称到子目名称】-【替换】,此时子目名称变为“合金片”。②追加:把子目对应工料机中人材机的名称添加到子目名称后面。分为“缺省追加”和“替换追加”。缺省追加:把当前子目对应工料机中的人材机的名称,添加到原定的子目名称后面。例如:原子目定额名称为“【未注册】坝基砂砾石帷幕灌浆干料耗量4.0t/m”,点击右键选择【发送名称到子目名称】-【追加】,此时子目名称变为“【未注册】坝基砂砾石帷幕灌浆干料耗量4.0t/m合金片”。替换追加:在替换定额名称后面追加对应的子目对应工料机中人材机的名称。例如:在上一步替换后再追加“合金钻头”,此时子目的名称变为“合金头合金钻头”。(10)提取设备在实际工作中,有时要将所套定额的相应设备编制进去,而定额中又没有带相应的设备,为了加快其录入速度,运用此按钮就可以将当前定额作为补充设备增加至该条定额的子目中。运用此操作可自动增加设备。(11)提取主材同上面一样,有时要增加补充材料,而这种补充材料的名称、规格、数量等与定额子目相近,可用此方法将定额名称当作补充材料处理,其操作方法与作补充设备的方法一样。(12)主材设备消耗量锁定:锁定主材设备的消耗量,把消耗量值锁定再再某一个值上不能更改。(13)重新从系统材机库中提取:重新修改属性。(14)放回材料库:把所选材料添加到材料库中,添加的材料号不能和原主材号的材65 电子科技大学硕士学位论文料号相同,并且材料编号不能临时材料编号。1.1工料机汇总分析当前工程的定额套用完成后,需对当前的各种材料汇总分析。是预算管理使用计算机最优越、最实际的工作之一,在工料机分析中,计算机效率是手工的几十倍。工料机汇总中的数据由计算机自动产生,您可以选择左边目录中的人工、材料和机械等等进行分类查看。2.2.1预算价的输入套定额完成后,进入“工料机汇总分析”插页,对所有的“工料机”输入“预算价”,如果“定额价”初始值为空,则自动等于预算价,即定额价与预算价平衡,材料价差为零,如果定额价不同于预算价,则要修改定额价,即体现“材料价差”。如果其中人工、风、水和电价不用再给价,因为已经通过前面的引用,如果需要直接报价则须屏蔽前面的引用,否则即使修改了报价也总会引用到前面的单价。用户将输入焦点定位到需要给价材料的“预算价”栏中,直接输入材料价格。2.2.2机械台班与配合比的分解配合比与机械台班如果分解的话,只能对其组成成份(抽料成份)进行报价,而不能直接对配合比与机械台班进行报价。如果不分解的话可以直接报价,两种状态可以通过勾选【分解机械台班】【分解配合比材料】开关按钮实现;在分解状态下可以看到组成机械台班与配合比的所有分解后的“人材机”成份,在未分解状态则不能看到分解出来的台班与配合比成份。2.2.3材料单价分析对主要材料要进行单价分析处理的,可以在“工料机汇总分析”主窗口中选择指定材料,然后在单价分析窗口左侧表格中单击鼠标右键,执行“选择取费”命令项,从弹出的文件对话框中选择文件“主要材料单价分析.JQF”并打开,此时单价分析对话框中显示如下图所示的取费程序,并输入各费用项目,用户也可以在不修改“费用名称”的前提下编辑取费的程序。(1)单位运价计算:输入各运输方式的参数及权重,计算加权的运价,代号YJ。(2)供应价计算:输入各供应商的供应价及权重,计算加权的供应价,代号GYJ。(3)调入编制价计算程序,得到编制价。示例:预算价=供应价+运费+供应价的3%的采保费序号费用名称计算基础费率1原价GYJ10066 第四章土地开发整理定额预算软件测试2运杂费YJ100 3采购及保管费[1]34预算价[1:3]1001.1设定为主要材料在【工料机分析】选择要设定为主要材料的材料名称,单击鼠标右键,执行【设定为主要材料】命令项,则可以将选中的材料放入“主要材料”结点下,在报表中作为“主要材料”打印输出。如果需取消“设定为主要材料”,可以进入“主要材料”结点,选择指定的材料后单击鼠标右键,执行【取消设定主要材料】命令项。点击【确定】按钮后,这样该材料就进行了单价分析了,也就能正确输出“附表2主要材料预算价格计算表”。1.2设定为指定材料选定材料后,单击右键执行快捷菜单中的【设为指定材料】,则可将材料设置为评标提定材料。1.3设置为完全甲供如果有甲供材的,可以选择指定材料后,通过执行快捷菜单【设置为完全甲供】命令,如果取消的话则在“甲供材”结点下将指定材料设置为乙供即可1.4查找材机来源要查找材料来源于哪些定额,可以选定材料后单击鼠标右键,执行快捷菜单中的【查找材机来源】命令项,则会弹出所有使用过当前材料的定额子目。或者选择材料后点击左上角【查找】按钮。用户还可以点击【选择替换人材机】按钮,在项目指引库中选择需要替换的人材机或者修改“含量乘系数”。1.5保存和套用价格文件(1)保存价格文件:为了避免在以后的工程中每次对相同的材料进行重复报价,可以将当前工程的市场价保存下来,以后的工程可以直接套用即可。在“工料机汇总分析”插页中单击鼠标右键,执行菜单中的【保存价格文件】命令,然后在弹出的对话框中给定一个价格文件名,根据情况选择相关选项,【确定】即可。(2)套用价格文件:下次要调用时,同样通过右键,执行菜单命令【套用价格文件】,并在弹出的对话框中选择相应在价格文件即可。1.6配合比材料和机械台班的分解67 电子科技大学硕士学位论文(1)配合比与机械台班如果分解的话,只能对其组成成份(抽料成份)进行报价,而不能直接对配合比与机械台班进行报价;(2)如果不分解的话可以直接报价,两种状态可以通过勾选【分解机械台班】【分解配合比材料】开关按钮实现;在分解状态下可以看到组成机械台班与配合比的所有分解后的“人材机”成份,在未分解状态则不能看到分解出来的台班与配合比成份。1.1重新计算配合比、台班价格当“工料机汇总分析”插中页中修改了配合比或者是机械台班的消耗量及组成成份后,需要同样通过右键,执行菜单命令【重新计算配合比、台班价格】命令项;注意:如果在“工料机汇总分析”窗口中修改配合比的成份及消耗量,将对所有的定额子目现时进行换算处理,如果只想对单个定额子目修改其配合比或台班成份及含量,则在套定额窗口中的“子目工料机”中进行换算处理。1.2价格调整在“工料机汇总分析”窗口点击右键,执行菜单命令【价格调整】。(1)价格乘系数:即调整编制价,调整系数是按照百分比来计算的,默认在“100”情况下为不调整价格。①选中材机:把当前选中的材机,乘以价格系数。②界面显示材机:把当前“工料机汇总分析”窗口中所有显示的材机乘以价格系数。③全部人材机:把工程中所有的人材机乘以价格系数。(2)清除所有预算价:清楚已有的预算价(市场价)。(3)定额价-->预算价:把所有的预算价改为跟定额价一样。(4)预算价-->定额价:把所有的定额价改为跟预算价一样。1.3修改材机类别改变工料机的类别。一般情况下,用户不需要更改。1.4打开特材表编辑当前工程可用的特材或三材表。单位转换中按【需转换单位=转换系数】,每个单位占一行的格式编辑。【刷新单位系数】按钮用于按特材表的单位转换设置,自动设置当前工程材机系数。“汇总数量金额”功能用于汇总当前工程中特材的数量和金额。每个特材还可设置单价分析程序以及相关的费率,这样可以通过批量设置特材号进行单价计算程序的设置。68 第四章土地开发整理定额预算软件测试1.1右键菜单功能注意:以上的操作可以通过单击鼠标右键,执行相应的快捷菜单命令实现,这里就不重复介绍。下面对其他右键菜单命令进行介绍。(1)修改工料机含量:对可分解的配合比或机械台班的组成含量的消耗量进行修改。(2)批量设置特材号:成批给选定的工料机按相应的特材进行设置,便于您汇总统计分析。(3)放回材料库:把所选材料添加到材料库中,添加的材料号不能和原主材号的材料号相同,并且材料编号不能临时材料编号。(4)增加人材机:用户自定义补充工程中所需的材料。用户可以直接输入材料名称,编号等相关内容,还可以通过点击【打开材机指引】从系统材料库、主材库或当前工程材料中选择材料。(5)查看/编辑价格文件:用户可以导入、导出及查看、编辑价格文件。2.2.1报表管理及数据输出的测试2.2.1.1报表功能(1)使用EXCEL电子表格的操作风格。(2)报表目录及文件组织完全由自己控制。(3)真正的自由报表,可以自由地修改或增加新的报表,完全控制报表的结构、格式及数据源。(4)灵活的数据源设置,可以是数据表,系统常量,系统变量,表达式。(5)灵活的统计设计功能,可以分组分级设置多种统计项。不限位置、不限格式。(6)生成的报表数据与EXCEL完全兼容。(7)还可以直接修改生成的报表数据的内容及格式。(8)数据与预览同步显示,方便在预览状态校核数据。(9)真正的彩色报表,可以任意设置报表的字体颜色、背景,生成漂亮的彩色报表。(10)批量输出报表,统一编排页码,批量输出到电子表格。2.2.1.2报表输出2.2.1.1.1报表的基本操作本系统报表以EXCEL电子表格形式存在,支持电子表格的格式操作。报表插页大致可以将界面分为四大区:(1)报表数据区69 电子科技大学硕士学位论文①模板模式:设置报表格式与数据源,一般用户不需要进行修改,在二次开发过程中已经定义好了。②报表数据:根据模板设置格式与数据源直观显示报表数据结果。③预览模式:以打印预览的形式显示,直接反映打印页面效果。(2)报表文件列表区①外置报表:又称公共报表。根据预算编制规定所列的所有报表名称,独立于模板。②内置报表:将常用的报表拖拉至内置报表中,与模板绑定结合。③报表集合:将常用的,或者是需要一次性成批打印输出的报表集合成一个文件,当打印输出这个集合文件时,则打印输出集合中的所有报表,“报表集合”有利于报表的集中打印与页码处理,集合可以是放在外置报表中,也可以在内置报表中建立集合。④附属工具刷新报表文件列表,当修改文件名或者是建立了新的报表文件或者是集合文件后,如果在列表中不能看到,刷新一下即可。打开报表文件目录。建立报表集合文件,点击后进入报表集合的设置对话框。(3)自定义函数区针对一些特殊的报表,需要在自定义函数中书写函数脚本,控制报表数据的输出与各种格式。1.1报表集合操作(1)基本设置报表集合可以在内置报表建立也可以在外置报表中建立,在上图所示的对话框中,将左边窗格列表中的报表文件名选中后,点击“添加”指示按钮,即可添加到右侧的列表中,成为集合文件中的报表,用户也可以将不需要放置在集合中的报表“撤消”,如果需要调整报表打印的先后位置,直接选中右侧报表名后,点击【上】、【下】指示按钮,进行位置的调整。(2)页面处理报表集合有四种页码处理方式,适用于用户对报表打印输出里页码的显示方式。①不处理页码:直接打印输出,不打印页码;②自动连续编排页码及总页数:对集合中打印输出的报表自动编页码及总页数(要求70 第四章土地开发整理定额预算软件测试在各报表文件下方先插入页码系统变量);③连续编页码,不处理总页数:只连续编页码,不处理及打印报表的总页数;④指定起始页码和总页数:当选择此项时,用户在右边的起页码与总页数输入指定的数字即打印输出的报表从指定的数字开始进行编码,而总页数按给定的数字打印在报表总页码位置。(3)输出到EXCEL文件集合中的报表可以一次性以EXCEL电子表格文件形式输出到一个工作簿文件,则每一个报表以一个工作表形式存在。1.1表格的基本操作2.2.1选择单元格(1)单元格用字母及数字组合指定的座标来表示,如A1代表第一行第一列,B2代表第二行第二列单元格或以单选,即只有一个格;也可以多选,即一个区域。(2)单选:您可以用鼠标点到指定的单元格,也可用键盘的方向键来指定单元格(3)多选:按下鼠标拖动,反黑的区域即是选定的区域。也可以按住Shift键不放,再用键盘的方向键来多选,或按Ctrl键,用鼠标一个一个地点选。(4)您可以点左上角的标志选择所有的单元格,当您选定单元格时,上面的边线、字体等状态按钮会显示出单元格的有关属性。如果是多选,显示的是区域的第一个单元格,通常是左上的单元格的属性。(5)注意:多选时设置单元格的格式,对全部选定的单元格都有效。2.2.2合并单元格(1)合并单元格(2)取消合并单元格2.2.3单元格属性工具栏及菜单项中只列出了主要的单元格属性设置,如果要设置其他的属性,请点击。这里列出详细的格式,字体,边框等设置。2.2.4单元格内容可以直接在单元格中输入内容,也可以通过输入栏输入。可以通过【主菜单】à【格式】à【表单】à【输入栏】调出或隐藏输入栏。如果在“模板格式”视图,您还可以通过【单元格数据】或在单元格上双击鼠标调71 电子科技大学硕士学位论文出专门的单元格数据编辑窗口。1.1单元格的显示格式如果您没有指定单元格的显示格式,缺省是“常规”格式,系统将自动识别,但有时会出现不符合需求的情况。如定额号“2-1-1”,报表数据中会显示为“2002-1-1”,系统自动当作日期处理了。清单编码可能会显示成“3.010001E010”,遇到这种情况,您可以指定文本格式“@”来解决。可以在单元格属性的数字页指定单元格的格式符,下面列出几种常用的格式:显示使用此代码2.2.1为1234.6####.#2.2.1.1为8.900#.000.631为0.60.#12为12.01234.568为1234.57#.0#2.2.1.1.1、102.65、和2.8小数点???.???对齐2.2.2.1.1为51/4,5.3为53/10#???/???12000为12,000#,###12000为12#,12200000为12.20.0,,月份(01-12)Mm日(01-31)Dd年(00-99)Yy年(1900-9999)Yyyy注意:格式符为“@”,格式符定义与EXCEL基本一致。2.2.2.1.1.1编制报表确定您需要的报表式样,然后找一个格式相近的报表格式,通过复制该格式生成新报表。(1)页面设置,选择您需要的纸型、方向、页边距等。(2)根据报表数据的逻辑结构,建立报表数据树结构。(3)设定各个单元格的内容及数据源。(4)设置各个单元格框线及属性(5)设置行高列宽。(6)检查数据源合法性。(7)生成数据,预览,再细调。72 第四章土地开发整理定额预算软件测试1.1创建新报表格式概念说明:新报表:新建报表文件。报表的数据及页面设置可完全独立。新格式:不创建新的报表文件,而是在当前报表中增加新的表单页。新建的格式共享当前报表的数据源定义及页面设置。请击【新建】按钮,弹出新建报表及格式窗口。先选择是新建报表还是新建报表格式,输入相应的名称。再选择是否复制当前报表格式的数据及页面设置,按【确定】。1.2控制分页系统根据生成的报表数据的文字大小,长度单元格的合并情况自动分页,如果设置了按主数据分页,则生成报表时按数据层次的第一层自动增加分页。注意:只有设置了单元格的自动折行的属性,系统才会自动计算行高。1.3控制行高在模板中设定的行高,会直接体现在生成的数据中。如果设置了单元格的“自动折行”属性,即单元格的属性显示为按下状态时,生成报表数据时,系统根据生成的单元格内容自动计算合适的单元格高度。注意:自动折行计算需要时间,请只设置需要设置的单元格,以提高生成报表的速度。1.4页面设置(1)分别设置打印的四个方面页面:8页边距:设置上下左右的边距,以及打印的对齐方式8页面:选择打印机,纸张类型以及纸张方向8页眉/页脚:设置页眉/页脚内容8工作表:电子表格相关的打印属性。前三个与常规打印设置类似,这里不现赘述。(2)工作表设置8网格线:是否打印网格线,即打印缺省的网格,即使您没有设置边线。8行列标号:是否打印出左边和上边的列标和行标。8单色打印:是否按单色打印,即转换成黑白方式打印,如果您没有选择单色打印,系统按彩色方式打印,如果您的打印机不支持彩色,会输出不同深浅的灰度。如73 电子科技大学硕士学位论文果您的打印机支持彩色,但没有彩色墨水,则彩色的内容不会打印出来。1.1表格的逻辑结构表体的逻辑结构以报表栏为基础,是根据报表的数据表层次结构,以及模板中单元格中包含的数据表自动形成的,当您设好单元格对应的数据表字段时,报表的逻辑结构也就定好了。根据这个逻辑结构,系统生成报表数据。1.2封面型报表封面型报表是没有数据表,只有表头的报表,例如:工程量清单报价表,投标总价表。封面型报表没有数据层次关系,可以引用系统的常量。1.3数据表型报表数据表型报表至少有一个数据表,并且有表体。1.4报表数据源报表共分六种报表数据源:数据表字段,提取报表数据表的字段,标志符@系统常量,提取工程中常量,即汇总分析,费用表,基本信息中的内容,标志符&系统变量,生成报表时的动态变量,如页码,总页数等,标志符~统计函数,指数据的合计,平均值,最大值,最小值等处理,标志符%格式控制符,用于控制报表单元格的动态合并,分组合并,标志符^四则运算,对数据表字段及系统常量、变量进行四则运算,标志符#这六种数据按特定的标志符标志。注意:这些数据源只能在报表模板中引用。在报表模板的任意单元格上双击,或者选定单元格后,按【fx编辑单元格数据】,弹出该单元格的“报表单元格数据编辑”窗口。您可以在编辑区直接编辑,也可以在相应的位置双击选择指定的内容到编辑区。1.5数据表数据(1)标准格式:[@数据表名.数据字段名](2)公共字段:任何数据都有三个相同的字段,即“#”,“&”和“~”。8#表示数据表记录号,从1开始的一个序列值,并且根据上一层数据表重排。可以用作序号。8&表示数据表的总记录数。74 第四章土地开发整理定额预算软件测试8~表示没有内容的数据字段。可以用来控制报表栏的逻辑关系,而不显示报表的有关内容。(3)根数据:是一个特殊的系统表,只有一条记录,并且只有公共字段。它可作为所有其他数据表的父层。根数据可以用来设计整个报表尾的报表栏,例如:用来计算整个报表的某列的合计值。(4)一般数据表:一般都有字段,数据关系是系统内部设定的。您可以根据报表的格式要求,建立相应的数据表关系树层次。(5)树表:树表是一种特殊的数据表,其数据取自界面的数据树控件,树表可以自由添加子层,子层的数据字段与父层是一样的。选择数据字段,在对应的字段上双击,字段以[@数据表名.数据字段名]的形式插入到编辑区,如果您熟悉这种形式,也可以直接在编辑区编辑。(6)组合数据字段:数据字段可以自由组合其他数据字段,固定文字,系统变量、系统常量等其他内容。下面的格式都是合法的:序号内容说明1[@实体分部.#].[@实体组合不同表的字段生成分级的序 清单.#]号。如“1.1”2[@根数据.~]指定根数据报表栏[@实体清单.名称]【项目特征】3[@实体清单.项目特征]三个字段的内容在同一单元格中【工程内容】显示[@实体清单.工程内容]4[@子目工料机.名称]组合同一个表的二个字段[@子目工料机.规格]5计量单位:[@实体清单.组合固定文字与字段 单位]1.1系统常量标准格式:[&系统常量名]如果您想在报表中增加新的常量,通常可以在工程概况或费率变量中通过右键增加记录,填入名称和内容,在报表中就可以直接引用。1.2系统变量标准格式:[~系统变量名]共有八种系统变量:名称格式说明1页码[~页码]生成报表数据时的当前页,即报表页75 电子科技大学硕士学位论文码2总页码[~总页码]即总的页码数3报表名[~文件]当前报表的文件名4系统日期[~日期]当前系统日期:格式“YYYY-MM-DD”5系统时间[~时间]当前系统时间:格式“HH:MM:SS”6标签名[~标签名]表单名,即当前选择的格式的名称7总数据行序[~R]总数据行序号,可以看作时报表数据号的行序号8指定数据行[~Rx]模板中指定行的序号,将用具体的行序号号替换X。要计数某种数据的行数时间到。1.1统计汇总函数标准格式:[~统计函数名(单元格代号)]系统提供了五个统计函数:nSUM()合计nCount()计数nMax()最大值nMin()最小值nAVG()平均值这五个函数的参数都是指定单元格的代号,例如:Sum(G7),求G7格的合计。1.2格式标准格式:[~格式符]系统支持以下格式符:G:纵向合并同组的数据项U:向上合并一格RMB:转格式符前面数字成为大写人民币DX:转格式符前的数字成大写1.3四则运算表达式标准格式:[#四则运算表达式]表达式可以组合数据字段,数值,运算符,系统常量等内容。例如:[#子目工料机.市场价*子目工料机.消耗量]计算子目工料机的价值[#实体76 第四章土地开发整理定额预算软件测试分部.合价/建筑面积]计算某一分部的单方造价1.1建立数据表层次关系数据表的层次关系是分析报表结构、建立报表逻辑结构的关键。系统用一个树型结构来体现报表的数据层次关系。(1)分析报表需求:每个数据型报表都有一定的数据层次关系,从报表的需求中,根据数据之间的从属关系,可以整理出数据关系树。(2)添加第一层数据:所有数据都可以是第一层数据。如果您的报表需要一个全表的汇总栏,或者要组合二个不相关的表,你可以用“根数据”作为第一层。系统还可以根据第一层数据分页。(3)添加子层数据:定位到一个数据层,添加数据表时,则只有能作为该层的表才会列出,避免不相关的数据关系定义。如上图在根数据节点添加数据,会列出所有的表。而在实体分部,只列出对应的项目。对树型表,可直接按【添加子层】添加子层数。删除数据:按【删除数据】会删除选定的节点以及它的子层数据。1.2预览打印您可以用鼠标在页面点击放大或缩小显示比例。左键:放大,右键:缩小。1.3选择打印范围调出打印对话框时,您可以选择指定的打印范围打印,也可以一页一页地打印。2.2.1本章小结本章通过使用土地开发整理预算定额软件进行了大量的实际工程操作,验证了软件的方便快捷、高效、灵活性等特点。77 电子科技大学硕士学位论文参考文献[1]周之英.现代软件工程(中).北京:科学出版社,2001,168-170.[2]罗海滨,范玉顺,吴澄.工作流技术综述.软件学报,2000,11(7):899-907.[3]孟祥瑞.数据库原理与应用.上海:华东理工大学出版社,2005,86-88.[4]杨正洪,郑齐健.SQLServer7关系数据库系统管理与开发指南.北京:机械工业出版社,2000,111-113.[5]邹建.中文版SQLSERVER2000开发与管理应用实例.北京:人民邮电出版社,2005,80-83.[6]吴毅杰,张志明.C/S与B/S的比较及其数据库访问技术.船舶电子工程.2003,32-35.[7](美)ShariLawrencePfleeger,(加)JoanneM.Atlee主编:《软件工程》第3版人民邮电出版社2007,451-464.[8]杨文龙,姚淑珍,吴云,《软件工程》,电子工业出版社,1997,211-234.[9]郑人杰.实用软件工程.北京:清华大学出版社出版,2002,176-179.[10]徐晓霞,贝雨馨.B/S模式与C/S模式之比较.延边大学学报(自然科学版).2003,126-129.[11]MandyAndress著.计算机安全原理.北京:机械工业出版社,2002,29-43.[12]吴国芳,刘伟,邵建民.ADO技术分析及应用.信息技术,2000,34-35.[13]于国安徐景颜主编:《山东省土地开发整理项目预算定额标准》2006,53-65.[14]朱志刚李元主编:《土地开发整理项目预算定额标准》2005,76-91.[15]张正源主编:《国家投资土地开发整理项目施工招投标管理与预算定额编制实用手册》2005,32-37.[16]潘明才,高向军主编:《土地整理工程》中国人事出版社2003,122-135.[17]郧文聚严金明王磊主编:《可持续土地整理理论与方法》中国财政经济出版社2009,131-135.[18]黄陆明,《火电安装工程概预算管理系统》软件开发经验总结,浙江电力,1995,57-65.[19]曹艾林,水电工程概预算管理系统的设计与开发,湖南水利水电,2000,61-63.[20]林静、黄陆明,《火电安装工程概预算管理系统》软件开发,电力建设,2000,58-62.[21]张明新、李红旗,电力工程概预算系统的设计与开发,青海电力,2000,28-32.[22]沙凯逊、解本政等,一种面向对象的建筑工程预算定额管理系统,山东建筑工业学院学报,1995,144-145.[23]《全国统一施工机械台班费用定额》,2001,51-75.[24]《全国统一建筑安装劳动定额》(1988年)。《全国统一安装工程预算定额》GYD-201-2000。[25]土地开发整理规划编制手册[Z].国土源部规划司,2002[26]高政毅.珠江流域重点堤防数据库建设方案简介[A]..第五届ARCGIS暨ERDAS中国用户大会论文集[C].北京:地震出版社,2002,315-320.78 参考文献[27]金郑沛主编:《土地管理概论》,浙江科学技术出版社,1992,46-51.;[28]潘其泉主编:《土地规划》,天津科学技术出版社,1992,213-219.[29]刘荣华主编:《土地利用规划实习指导书》,丽水职业技术学院,2002,186-193.[30]阮振海等主编:《山东省水利水电建筑工程预算定额》2003,163-168.[31]吴保祥姜其炳主编:《山东省水利水电安装工程预算定额》2003,97-104.[32]《建设工程量清单计价规范》GB50500-2008,78-86.[33]林锐,戴玉宏,图形用户界面设计与技术,西安电子科技大学出版社,1997,140-151.[34]袁辉郝文宁主编《BorlandC++Builder高级编程》2000,261-284.[35]李幼仪甘志主编《C++Builder高级应用开发指南》清华大学出版社2002,311-325.[36]陆卫忠,刘文亮等编著《C++Builder6程序设计教程》(第二版)科学出版社2009,284-299.[37]罗斌等编著《C++Builder精彩编程实例集锦》中国水利水电出版社2005,172-184.[38]梁向峰《水利水电工程造价系统研制与开发》2003,93-106.[39]庞飞《水利水电工程造价系统研制与开发》2002,23-40.[40]李维著《Delphi5.x分布式多层应用》2001,403-437.[41]牛汉民编著《Delphi7开发基础教程》2005,318-331.[42]田民格,卢昌荆.DELPHI程序设计.北京:清华大学出版社,2007,20-25[43]MichaelAbrash,图形程序开发人员指南(前导工作室译),机械工业出版社,1998,329-341.[44]DavidJ.Kruglinski,ScotWingo,ProgrammingVisualC++,北京希望电子出版社,1999,530-552.[45]N.GregoryMankiw,经济学原理(梁小明译),北京大学出版社,1999,167-183.[46]CliffordA.Shaffer,数据结构与算法分析(张铭,刘晓丹译),电子工业出版社,1999,170-187.[47](美)BjarneStroustrup主编:《C++程序设计语言》(特别版)机械工业出版社2002,300-355.79 电子科技大学硕士学位论文80 致谢经过了半年的奋斗和努力,我的毕业论文终于进入了收尾阶段。回过头来再仔细回味一下这段日子,虽然很累,但是收获非常大,每天都有新的收获,这段时间在这一生当中是非常有意义的,每天过得很充实。研究课题的整个过程中不仅使我巩固了许多原来的专业知识,更重要的是学习了相当多的新知识,开阔了视野。积累了土地开发整理预算定额行业的知识,对软件工程有了更深刻的理解。在此,特别感谢帮助指导我的***,因为我专业基础知识相对较弱,在研究过程中遇到大量困难和问题,***给予了我热情的帮助和指导。在***的耐心指导下,和我的努力,不仅解决了许多课题的相关技术问题,同时激发了我更深入的研究。另外,感谢为我们授课的电子科技大学的老师们,正是你们不畏严寒酷暑给我们上课、指导,才使我有了进一步学习和提高的机会。使我在课题研究前掌握了必须的专业基础知识。感谢电子科技大学计算机软件学院的所有老师,他们渊博的知识和敬业精神给了我永往直前的动力。在此还要感谢在我完成课题研究过程中给了我工作上帮助和支持的同事们,还要感谢我的家人,他们在生活中给了我无私的付出,使我在这段时间可以更专心的投入到学习和研究中。最后,对在攻读硕士学位期间给予我们帮助和支持的所有老师和同学致以由衷的感谢!81'