![毕业设计(论文)Delphi程控电话计费系统话单格式转换及数据维护_第1页](http://file2.renrendoc.com/fileroot_temp3/2021-6/16/612ac96b-83f5-4d66-8787-53415ebdbacd/612ac96b-83f5-4d66-8787-53415ebdbacd1.gif)
![毕业设计(论文)Delphi程控电话计费系统话单格式转换及数据维护_第2页](http://file2.renrendoc.com/fileroot_temp3/2021-6/16/612ac96b-83f5-4d66-8787-53415ebdbacd/612ac96b-83f5-4d66-8787-53415ebdbacd2.gif)
![毕业设计(论文)Delphi程控电话计费系统话单格式转换及数据维护_第3页](http://file2.renrendoc.com/fileroot_temp3/2021-6/16/612ac96b-83f5-4d66-8787-53415ebdbacd/612ac96b-83f5-4d66-8787-53415ebdbacd3.gif)
![毕业设计(论文)Delphi程控电话计费系统话单格式转换及数据维护_第4页](http://file2.renrendoc.com/fileroot_temp3/2021-6/16/612ac96b-83f5-4d66-8787-53415ebdbacd/612ac96b-83f5-4d66-8787-53415ebdbacd4.gif)
![毕业设计(论文)Delphi程控电话计费系统话单格式转换及数据维护_第5页](http://file2.renrendoc.com/fileroot_temp3/2021-6/16/612ac96b-83f5-4d66-8787-53415ebdbacd/612ac96b-83f5-4d66-8787-53415ebdbacd5.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、程控电话计费系统话单格式转换及数据维护目录摘要.1abstract.2引言.31 系统整体设计51.1 系统组织结构图51.2 用户需求描述61.2.1 用户需求分析61.2.2 可行性分析71.3 用户数据流图的设计方案71.4 设计工具选择81.5 数据库设计91.6 系统模块间协作与分工132 话单格式转换及数据维护的设计思想152.1 话单格式转换及数据维护的用户需求描述152.1.1 话单格式转换的需求描述152.1.2 数据维护的需求描述152.2 设计时需要考虑的关键问题及解决方案162.2.1 关键问题1话单格式的转换162.2.2 关键问题2数据维护172.2.3 关键问题3
2、用户登陆和管理173 话单格式转换的设计193.1 问题描述193.2 功能和输入、输出描述193.3 基本算法244 数据维护的设计344.1 问题描述344.2 功能和输入、输出描述344.3 基本算法345 用户登陆和管理的设计375.1 问题描述375.2 功能和输入、输出描述375.3 基本算法376 系统界面设计396.1 总体规划396.2 登陆界面396.3 分拣界面406.4 数据查看界面406.5 数据修改界面417 软件测试437.1 测试计划和测试方法437.1.1 自定义函数、过程测试437.1.2 自划分子功能测试437.1.3 功能测试437.1.4 综合测试44
3、7.1.5 整体测试447.1.6 大量数据连续测试447.2 测试的初步结果和发现的问题457.3 未能解决的问题45结论.46致谢.47参考文献.48摘要本文介绍了集团用户程控电话计费系统的功能及组成。根据用户的计费流程和需求,系统将程控电话计费工作由电脑托管自动执行。本系统可以对电话交换机所提交的二进制原始话单进行分析、存储、分拣、计费、维护和管理。它方便了集团用户管理和维护话单数据,缩短了维护周期提高了工作效率。本系统的开发环境是windows操作系统,开发工具采用的是delphi 5.0,数据库系统采用的是sql sever 7.0。本文详细描述了程控电话计费系统分拣模块中话单格式转
4、换子模块、数据查看子模块、数据修改子模块和系统管理子模块的设计方法和设计过程,着重对中兴zxj10交换机话单记录的格式转换和数据维护进行了阐述。关键词:话单转换 数据维护 用户管理abstractthis paper introduces the function and composition of the group program-control telephone accounting system. according to the accounting flow and users requirement, this system accounts and executes bil
5、ls automatically. this system can analyze, store, select, account and manage telephone account bills which telephone switchboard post. it makes it more convenient that group users manage and maintain bills, cut the circle of maintaining and improve working efficiency.it uses windows operating system
6、 as development environment of system. the developing tools for programming are delphi 5.0 and sql sever 7.0.this paper describes the methods and processes of design in the bill converting sub module, data viewing sub module, data modifying sub module and user administrating sub module of this syste
7、m and details in bill converting processes and data maintaining methods based on the ztc zxj10 telephone switchboard.key words: bill converting, data maintaining, user administrating引言随着计算机技术的不断提高、不断成熟,计算机的应用在我国企业管理现代化、办公事务处理自动化、信息交流的网络化等各个领域内日益得到全面的普及和深入的发展,计算机已经成为我们学习、生活和工作必不可分的重要组成部分。人们对数据的采集、查询、
8、共享等各种数据处理工作越来越重视。占计算机应用70%以上的管理信息系统的软件设计中,普遍采用数据库管理技术。经过手工管理阶段和文件管理阶段后发展到今天的数据库管理阶段。用数据库管理方式可以减少数据的冗余度,增加数据的共享性,避免数据的不一致性,并使数据结构化。数据库管理程序使用某种数据库操作语言编写,是面向用户完成某项应用的程序。现在的社会是一个快速、高效的社会,人们都在为自己的生活不停的忙碌着,人与人之间的沟通就成为了一个很大的问题。随着科技的发展许多先进的设备和工具也越来越多的被人们发明出来并利用。这些先进的科技产物的问世也加速了社会的发展,同时也缩短了人与人的距离,解决了沟通这个大问题。
9、电话就是最具有代表性的一个产物。电话可以方便的实现人与人的交流。当今的世界,拥有一部电话是很平常的事,但与此同时电话机的数量也随着社会的发展不断的增加。作为一种通信工具如何收费就成为了各部门需要面对和解决的一个重要问题。随着电脑的发展和普及许多的问题都能通过计算机来解决。使用计算机解决问题十分简便快捷,而且能提高工作效率,同时也是顺应社会发展的必然结果,所以我们也需要使用计算机来解决这个问题。要想让计算机实现某种功能就必须有与之对应的软件系统,那么开发一套程控电话计费系统从是势在必行的。目前市场上已经有许多的程控电话计费系统在应用,比如雅信、泰思达等公司的产品,但是这些产品的通用性都不是很强。
10、另外,对于集团程控电话用户往往有一些特殊的需求,所以此类系统大多是根据用户的实际情况定制的,本系统正是在此前提下,为用户定制的一套程控电话计费系统。本系统是面向集团用户和中小型电话局,它能直接对话单进行分拣计费;并能利用现代化的信息管理手段,克服信息管理的局限性,将原来零散的通话记录统一管理。通过本系统能提高管理效率,大大缩短管理周期,为集团用户节约运营成本等。因此开发本系统必有广阔市场。1 系统整体设计1.1 系统组织结构图本系统共分三个主要模块:分拣模块、数据维护模块和系统管理模块,每个模块分别有自己的子模块,相互协同工作,共同实现系统各部分功能。组织结构图如图1所示:计费系统分拣数据维护
11、系统管理转换分拣汇总数据查看数据修改规则库管理用户管理图 1 系统组织结构图1.2 用户需求描述1.2.1 用户需求分析本系统是应用于各大集团电话用户和中小型电话局的信息管理系统。运行环境主要有电话交换机和安装本系统的分拣计算机,并且在它们之间交换数据。为了信息的安全、保密还要求对进入系统的不同用户有不同的权限:操作员可以进行分拣、汇总等操作并且可以查看汇总结果、客户档案和计费话单;管理员又增加了修改客户档案和计费话单的权限;超级管理员除了具有以上权限以外还具有管理分拣规则库和系统用户的权限。用户要求系统具有可用性、安全保密性和可维护性。本系统应完成对本系统的用户的各项业务的管理,包括:话单的
12、分拣和汇总、数据查看、数据的修改和对系统的管理和切换用户。1. 话单的分拣和汇总开始转换、开始分拣、汇总2. 数据查看查看客户档案、查看话单数据库、查看汇总结果3. 数据修改修改客户档案、修改话单数据库4. 系统管理规则库管理、用户管理5. 切换用户1.2.2 可行性分析1. 技术可行性:此系统采用delphi 5.0开发,它是用来进行windows下完全可视化、图形用户界面、面向对象、事件驱动编程方式的开发环境。开发方,使用方都已经掌握了delphi和sql sever的使用,开发方有丰富的软件开发经验,使用方有丰富的实际业务经验,经双方合作,使得开发可行。2. 硬件设备可行性:交换机可以通
13、过串口直接传输话单,也可以通过网络将话单传输给专用文件服务器。本软件是在windows环境下开发,可以在任何windows系列操作系统下运行3. 用户可行性:本系统可以在脱离delphi的环境下运行,使用简单,界面友好,并且本系统的使用人员有一定的计算机操作基础,用户使用可行。1.3 用户数据流图的设计方案本系统由各级操作员控制从交换机获取原始数据,通过本系统进行处理转换成计算机可识别的、易管理的数据库数据形式。运行期间又调用的规则库和客户档案来完成系统的正常操作,从而达到系统设计时的目的,本系统数据流图如图2所示:图 2 系统数据流图1.4 设计工具选择 本程序由于要工作在windows环境
14、下,所以必须选择一款windows操作系统下的编程工具。目前有众多的windows下的开发工具,如visual c+、visual basic和delphi等,而delphi的开发环境是目前面向对象和控件开发性能最好的工具之一。它使用microsoft windows图形用户界面的许多先进特性和设计思想,采用了弹性可重复利用的、完整的、面向对象的程序语言,拥有当今世界上最快的编辑器,以及最为领先的数据库技术,功能强大。对于广大的程序开发人员来讲,使用delphi开发应用软件,无疑会大大提高编程效率。delphi 5.0是由inprise公司推出的delphi系列版本之一。delphi 5.0
15、继承了以前版本的优点,并且增添了许多新的功能,比如在ado、数据模块设计、ibx、midas、corba、程序调试、vcl、窗体框架和桌面定义等方面都增强了许多,可以大大提高软件系统的设计、管理和开发的速度。它集中了visual c+和visual basic两者的优点:学习过程中很容易上手,而且功能也非常强大,尤其在界面设计、数据库编程和网络编程的方面更具独到之处,是其他软件开发工具无法比拟的。出于以上原因和已有的产品兼容,并考虑稳定性,因此本系统使用delphi 5.0 开发。1.5 数据库设计本系统为了共享信息方便,因此用sql server管理数据库,通过功能模块调用数据库。本系统数据
16、库名为:jfxtdata,内有6个数据表,分别为:用户权限表、客户档案表、话单数据表、汇总结果表、规则库1数据表和规则库2数据表,具体详细设计如表1-表15所示:表 1 用户权限表表名说明用户权限表名称用户权限表代码yhqx备注定义系统用户身份和权限表 2 用户权限表字段说明名称代码类型是否是主键可否为空用户密码yhmmvarchar(50)yesno用户姓名yhxmvarchar(50)nono用户级别yhjbintnono表 3 用户权限表索引说明索引代码是否是主键字段代码排序方式yhqx_pkyesyhmmasc表 4 客户档案表表名说明客户档案表名称客户档案表代码khda备注描述系统客
17、户资料表 5 客户档案表字段说明名称代码类型是否是主键可否为空客户电话号码dhhmvarchar(30)yesno客户名称khmcvarchar(150)nono客户地址khdzvarchar(150)nono客户性质khxzvarchar(150)nono收费类型sflxintnono月租费yzfdecimal(10,2)nono装机时间zjsjchar(8)nono停机时间tjsjchar(8)noyes合同编号htbhvarchar(24)nono合同类型htlxvarchar(30)nono表 6 客户档案表索引说明索引代码是否是主键字段代码排序方式khda_pkyesdhhmasc表
18、 7 话单数据表表名说明话单数据表名称话单数据表代码hdsj备注保存计费话单数据表 8 话单数据表字段说明名称代码类型是否是主键可否为空主叫号码zjhmvarchar(30)yesno被叫号码bjhmvarchar(30)nono话始日期hsrqchar(8)nono话始时间hssjchar(8)nono话终日期hzrqchar(8)nono话终时间hzsjchar(8)nono通话标识1thbs1varchar(30)nono通话标识2thbs2varchar(30)nono通话时长thscintnono话费1hf1decimal(10,2)noyes话费2hf2decimal(10,2)n
19、oyes话费3hf3decimal(10,2)noyes话费4hf4decimal(10,2)noyes话费5hf5decimal(10,2)noyes话费6hf6decimal(10,2)noyes话费7hf7decimal(10,2)noyes话费8hf8decimal(10,2)noyes话费9hf9decimal(10,2)noyes话费10hf10decimal(10,2)noyes话费11hf11decimal(10,2)noyes话费12hf12decimal(10,2)noyes话费13hf13decimal(10,2)noyes话费14hf14decimal(10,2)noy
20、es话费15hf15decimal(10,2)noyes话费16hf16decimal(10,2)noyes话费17hf17decimal(10,2)noyes话费18hf18decimal(10,2)noyes话费19hf19decimal(10,2)noyes话费20hf20decimal(10,2)noyes异常标志ycbzchar(4)noyes表 9 话单数据表索引说明索引代码是否是主键字段代码排序方式hdsj_pkyeszjhmasc表 10 汇总结果数据表表名说明汇总结果数据表名称汇总结果数据表代码hzjg备注保存汇总操作后的结果表 11 汇总结果数据表字段说明名称代码类型是否是
21、主键可否为空客户电话号码dhhmvarchar(30)yesno客户名称khmcvarchar(150)nono月租费yzfdecimal(10,2)nono话费1hf1decimal(10,2)noyes话费2hf2decimal(10,2)noyes话费3hf3decimal(10,2)noyes话费4hf4decimal(10,2)noyes话费5hf5decimal(10,2)noyes话费6hf6decimal(10,2)noyes话费7hf7decimal(10,2)noyes话费8hf8decimal(10,2)noyes话费9hf9decimal(10,2)noyes话费10h
22、f10decimal(10,2)noyes话费11hf11decimal(10,2)noyes话费12hf12decimal(10,2)noyes话费13hf13decimal(10,2)noyes话费14hf14decimal(10,2)noyes话费15hf15decimal(10,2)noyes话费16hf16decimal(10,2)noyes话费17hf17decimal(10,2)noyes话费18hf18decimal(10,2)noyes话费19hf19decimal(10,2)noyes话费20hf20decimal(10,2)noyes合计hjdecimal(10,2)no
23、no表 12 汇总结果数据表索引说明索引代码是否是主键字段代码排序方式hzjg_pkyesdhhmasc表 13 规则库1(规则库2)数据表表名说明规则库1名称规则库1(规则库2)代码gzk1(gzk2)备注保存规则表 14 规则库1(规则库2)数据表字段说明名称代码类型是否是主键可否为空规则号gzhintyesno规则名gzmvarchar(30)nono规则说明gzsmvarchar(150)noyes父节点号fjdhintnoyes左孩子号zhzhintnoyes右孩子号yhzhintnoyes计费公式jfgsvarchar(150)noyes单位时间话费dwsjhfdecimal(10
24、,2)noyes规则条件gztjvarchar(150)nono特殊标志tsbzchar(1)noyes表 15规则库1(规则库2)数据表索引说明索引代码是否是主键字段代码排序方式gzk1_pk/gzk2_pkyesgzhasc1.6 系统模块间协作与分工本系统的工作流程是将原始二进制话单转换成文本话单,再利用规则将其分拣成计费话单,在经过汇总形成汇总结果。在转换、分拣和汇总时还需要一些基础数据库如:客户档案、话单数据库和汇总结果的支持,所以还要对这些基础数据进行维护,而且还需要对系统内部的一些资源如规则库和用户信息进行管理。根据以上操作流程,就决定了系统模块的划分。本系统大体包含三个模块分拣
25、模块、数据维护模块和系统管理模块。分拣模块主要负责对话单进行转换、分拣、汇总操作;数据维护模块负责对话单数据库、客户档案数据库和汇总结果数据库进行查看、修改、添加和删除等管理操作;系统管理模块进行的是对系统运行需要的数据进行管理即用户信息和规则库。各模块之间相互协同工作,分拣模块为整个系统提供数据来源,而数据维护模块负责维护从分拣过程中得到的数据和一些系统运行所必须的数据,系统设置模块负责使分拣和数据维护模块正常运行。2 话单格式转换及数据维护的设计思想2.1 话单格式转换及数据维护的用户需求描述2.1.1 话单格式转换的需求描述本程序目的是将中兴交换机产生的话单文件,转换成文本格式,以便为分
26、拣操作提供数据来源。该文件内部是以定长123字节来表示一个通话记录,而且每一个话单文件的第一个记录是用来描述话单文件的。因此用户要求:1. 将文件中的每一条记录处理成一条话单并保存成一行文本。2. 话单文件的第一个记录为文件头,不处理成话单。3. 文本话单文件名应为话单文件名+原话单扩展名。例如hd020917.t01转换后相应的文本话单文件名为hd020917t01.txt。并且保存在与原始话单相同的目录下2.1.2 数据维护的需求描述本部分是用来管理系统运行时产生或需要的数据如话单数据、汇总数据和客户档案数据的。本部分从局部上看就是一款数据库管理软件,所以用户的需求如下:1. 要求程序能对
27、数据进行管理,实现对数据记录的查看、添加、删除和修改等操作2. 保证数据库的安全和保密,要求实现分级制度3. 能实现数据的共享和实时更新4. 能够管理系统用户身份和级别,控制操作权限2.2 设计时需要考虑的关键问题及解决方案2.2.1 关键问题1话单格式的转换中兴交换机产生的话单文件是以txx(xx为十进制数用来表示话单产生的顺序,交换机可以调整话单产生的时间间隔,比如15分钟产生一个话单则第一个话单的后缀名为t01,15分钟后产生的第二个话单的后缀名就为t02依此类推)为后缀名的文件名为hdyymmdd(yy表示年、mm表示月、dd表示日)的有格式二进制文件。例如hd020917.t01就表
28、示2002年09月17日的第一个话单文件。本程序的目的就是能正确、完整的将其转换成文本格式的文件。如何做到正确、完整的转换是问题的关键也是程序设计的主要难点,但由于其自身的固定格式,就可以据此来做到格式转换。程序设计的主要思路是:以文件流形式将原始文件读出,由于其通话记录定长,可以用文件长度除以123字节即得文件内部记录数,从而可以使文件指针不必在文件内部盲目搜索而是直接指向记录首部。定义一个原始话单的记录类型来标示话单记录的内容,当文件读入后让程序将文件指针指向每一个有用记录,然后将这个记录与先前定义的记录类型进行比对,从而得到所需数据。但每一个原始记录内部有许多冗余数据,是交换机在处理通话
29、时产生的,但对我们在话单管理和计费的过程中没有任何用处,所以我们还必须定义一个文本文件话单的记录类型,将从原始话单记录中读出的有用数据存入文本话单记录的对应域,这样即保证了话单的完整又提高了转换速度、节约了存储空间。2.2.2 关键问题2数据维护为了便于管理和共享数据,本系统必须考虑数据维护的问题。其核心就是能通过系统对数据进行查看、添加、修改和删除的操作。要解决这个问题就需要使用delphi中的数据库相关的控件,如tdatabase、tdatasource、ttable等,通过它们才能使程序和数据库建立起联系,再增加控制数据库的程序代码完全可以解决上述问题。2.2.3 关键问题3用户登陆和管
30、理本系统是面向集团电话用户和中小型电话局的,由于其庞大的数据流量和相对较多的人员,出于安全和保密的考虑有必要对系统用户的身份进行认证并且控制操作权限。对于用户的管理相对简单一些,其核心就是数据库的管理,其设计思想也和数据维护模块一致。本部分的关键在于在正确识别操作员身份后对应给出他的操作权限,为了解决这个问题就要在用户信息数据库中添加描述用户操作权限的字段。系统的用户权限如表16所示:表 16 用户权限表用户身份操作权限操作员分拣、查看数据管理员分拣、查看数据、修改数据超级管理员分拣、查看数据、修改数据、系统设置据此用整数来标识用户级别:“1”代表超级管理员;“2”代表管理员;“3”代表操作员
31、。只要在认证过程中将描述用户权限的字段读出,赋值给指定变量,并将此变量传递给主界面,主界面通过此变量来判定用户级别并给出相应权限。3 话单格式转换的设计3.1 问题描述由于交换机产生的原始话单是二进制文件,虽能被计算机识别,但却不能被人轻易认识,而且二进制话单也不能为数据库管理软件自动识别,这就为话单的管理和计费增加了难度。为了使系统能高速、准确的管理话单,就必须把二进制话单转换成人和数据库管理软件都能识别的格式。文本文件存储空间需求低;可以在任何windows系统下阅读并且不需要额外的软件支持;经过简单操作可转存至数据库;更主要的是文本文件是delphi支持的文件格式之一,可以方便的由流式文
32、件转换到文本文件。由于文本文件具有以上的优势,所以本系选择文本文件保存原始话单。将二进制文件转换成文本文件,可以快速的了解原始话单的内容,为将来进行分拣、计费和管理等操作提供便利。3.2 功能和输入、输出描述本程序的主要功能是将中兴zxj10话单记录(v302系列版本)转换成可直接处理的文本话单。本程序输入的是原始话单,格式如表17所示:表 17 原始话单头记录格式说明字段名字段类型字段大小偏移量说明jfversion (版本号)word20200:v300系列300:v302系列createtime (创建时间)byte 222文件创建时间reserved(保留)byte9924123表 1
33、8 zxj10话单记录格式说明字段名字段类型字段大小偏移量说明record type(记录类型)byte101: pstn/idd/ddd2: dbo 3: in4: isdn/ctx5: taxpart record id(部分记录标志)byte 110: 单个记录;1: 记录的第一部分;2: 记录的中间部分;3: 记录的最后部分;nature address of caller number(主叫号码地址性质)byte120: 用户号码;1: 空闲;2: 国内有效;3: 国际有效;caller number(主叫号码)byte203bcd, 左对齐, 不足右边填0xff补充nature a
34、ddress of called number(被叫号码地址性质)byte1230: 用户号码;1: 空闲;2: 国内有效;3: 国际有效;called number(被叫号码)byte2024bcd, 左对齐, 不足右边填0xff补充start time(开始时间)int444单位:秒;start ticks(开始时刻)byte148单位:10毫秒service category(业务类别)byte1490: 空号1: 本局呼叫2: 本网市话呼叫3: 本网农话呼叫4: 国内长途(大区内)人工业务5: 国内长途(大区内)自动业务6: 国内长途(大区间)人工业务7: 国内长途(大区间)自动业务8
35、: 国际长途人工业务9: 国际长途自动业务10: 本局收费特服业务11: 本局免费特服业务12: 出局收费特服业务13: 出局免费特服业务14: 附加业务15: centrex本局呼叫业务16: centrex出局呼叫业务17: in servicesend time(结束时间)int450单位:秒end ticks(结束时刻)byte154单位:10msrelease reason(终止原因)byte155通话终止原因:0: 主叫挂机;1: 被叫挂机;2: 异常拆线;3: 未用;caller type(主叫用户类型)byte1560xa: 普通用户record valid id(记录用效性标
36、志)bit1/8(低)570: 有效;1: 无效;clock id(时钟变化标志)bit1/857.1250: 呼叫过程中时钟发生了变化;1: 呼叫过程中时钟未发生变化;charge flag(计费标志)bit1/857.2500: 免费;1: 计费;attempt call id (试呼标记)bit1/857.3750: 试呼免费;1: 试呼计费;caller analyze id(主叫分析标记) bit1/857.5000: 话单中的主叫号码即为计费主叫号码;1: 话单中的被叫号码作为计费主叫号码;called analyze id(被叫分析标记)bit1/8(高)57.6250: 话单中
37、的被叫号码即为计费被叫号码;1: 话单中的连接号码作为计费被叫号码;reserved(保留)bit1/457.750incoming trunk group(入中继群)word258outgoing trunk group(出中继群)word260supplement services(补充业务)byte7627*8个位域表示56种补充业务使用信息 charge party id(计费方标识)byte1691: 主叫号码;2: 被叫号码;3: 目标地址计费;127: 指定计费号码计费;nature address of link number(连接号码地址性质)byte1700: 用户号码;1
38、: 空闲;2: 国内有效;3: 国际有效;link number(连接号码)byte2071bcd,左对齐,不足右边填0xff补充fee(费用)int491bearer services(承载业务)byte1950: 不指定;1: 64k不受限数字信息 2: 语音; 3: 3.1khz音频;4: 分组承载业务;5: 用户信令承载业务;6: 未使用;7: 2x64kbps不受限;8: 384kbps不受限;9: 1536kbps不受限; 10: 1920kbps不受限terminal services(终端业务)byte1960: 不指定;1: 电话业务;2: 2/3类传真;3: 4类传真;4:
39、 智能用户电报;5: 可视图文;6: 可视电话;7: 用户电报;uus1byte197uus3byte 198caller special number(主叫专用号码)byte599bcd,左对齐,不足右边填0xff补充called special number(被叫专用号码)byte5104bcd,左对齐,不足右边填0xff补充centrex group id(ctx群标识)word2109nature address of billed number(计费号码地址性质)byte11110: 用户号码;1: 空闲;2: 国内有效;3: 国际有效;billed number(计费号码)byte
40、11112bcd,左对齐,不足右边填0xff补充123本程序的输出结果是文本话单,格式如表19所示:表 19 文本话单格式说明字段名字段类型说明zjhmstring主叫号码bjhmstring被叫号码hsrqstring话始日期hssjstring话始时间hzrqstring话终日期hzsjstring话终时间thbj1string通话标示1thbj2string通话标示2thscstring通话时长3.3 基本算法本程序先定义记录类型来描述原始话单文件中记录,一个记录变量表示一个话单记录,记录中的域用来表示原始话单中对应的数据。定义如下:tzxbilbillrecord = packed r
41、ecord hdlx: char; / 1:第1字节 话单类型 bfjlbz: char; / 2:第2字节 部分记录标志 zjhmdz: char; / 3:第3字节 主叫号码地址信息 zjhm: array1.20 of char; / 4:第423字节 主叫号码,bcd码左对齐, 不足右边填0xff补充。 bjhmdz: char; / 5:第24字节表示被叫号码地址信息 bjhm: array1.20 of char; / 6:第2544字节 被叫号码,用bcd码左对齐, 不足右边填0xff补充。 thkssj: array1.4 of char; / 7:第4548字节 通话开始时间
42、,单位:秒,是从1994/01/01到通话开始的秒数。 thkssk: char; / 8:第49字节 通话开始时刻,为通话开始时间的10毫秒精度部分,单位:10毫秒。 ywlb: char; / 9:第50字节 业务类别 thjssj: array1.4 of char; /10:第5154字节 通话结束时间,单位:秒,是从1994/01/01到通话开始的秒数。 thjssk: char; /11:第55字节 通话结束时刻,为通话结束时间的10毫秒精度部分,单位:10毫秒。 thzzyy: char; /12:第56字节 通话终止原因 zjyylx: char; /13:第57字节 主叫用户
43、类型 zhbz: char; /14:第58字节 综合标识,各bit位表示不同的含义 rzjqh: array1.2 of char; /15:第5960字节 入中继群号 czjqh: array1.2 of char; /16:第6162字节 出中继群号 bcyw: array1.7 of char; /17:第6369字节 补充业务(新业务),可不必分析。 jffbz: char; /18:第70字节 计费方标识,即付费号码; ljhmdzxz: char; /19:第71字节 连接号码地址性质 ljhm: array1.20 of char; /20:第7291字节 连接号码,bcd码左
44、对齐,不足右边填0xff补充; jcmcgs: array1.4 of char; /21:第9295字节 于计次脉冲功能时记录计次脉冲的个数。可不必分析该信息。 czyw: char; /22:第96字节 承载业务,对isdn话单 zdyw: char; /23:第97字节 终端业务 uus1: char; /24:第98字节uus1;目前与计费结果无关,可不必分析。 uus2: char; /25:第99字节uus3;目前与计费结果无关,可不必分析。 zjzyhm: array1.5 of char; /26:第100104字节 主叫专用号码,bcd码左对齐,不足右边填0xff补充;目前与
45、计费无关,可不必分析。 bjzyhm: array1.5 of char; /27:第105109字节 被叫专用号码,bcd码左对齐,不足右边填0xff补充;目前与计费无关,可不必分析。 ctxqbz: array1.2 of char; /28:第110111字节 ctx群标识;记录的是ctx群号。 jfhxdzxz: char; /29:第112字节 计费号码地址性质 jfhm: array1.11 of char; /30:第113123字节 计费号码,bcd码左对齐,不足右边填0xff补充 end;与其对于的是文本话单,相应的也定义记录类型来描述文本话单的一条记录。定义如下:ttxtb
46、illrecord = packed record zjhm: string; /主叫号码 bjhm: string; /被叫号码 hsrq: string; /话始日期 hssj: string; /话始时间 hzrq: string; /话终日期 hzsj: string; /话终时间 thbj1:string; /通话标识1 thbj2:string; /通话标识2 thsc: string; /通话时长 end;在此基础上就需要通过读入文件来进行数据处理,本程序用文件流(tfilestream类)来读取数据。创建过程是先生成tfilestream的派生类,在原有过程、属性和函数的基础上
47、,在新增一些过程、属性和函数。定义如下trecfilestream = class(tfilestream) /记录文件流处理 private function getnumrecs: longint;/获取记录数目 function getcurrec: longint;/获取当前记录号号 procedure setcurrec(recno: longint);/设置当前记录 protected function getrecsize: longint; virtual;/获取记录差点 public function isbof: boolean;/是否是文件头 function iseof
48、: boolean;/是否是文件尾 function seekrec(recno: longint; origin: word): longint;/查找记录 function readrec(var rec): longint;/读入记录 procedure first;/首记录 procedure nextrec;/下一条记录 procedure previousrec;/上一条记录 procedure last;/尾记录 property numrec: longint read getnumrecs; /文件流中记录个数 property currec: longint read getcurrec write setcurrec; /文件流中当前记录 end;将本程序整个单元定义成类,从而方便其他程序调用。如果定义成子程序则不能定义内部过程和函数,导致程序代码可读性下降,算法不
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 枣庄2025年山东枣庄市直事业单位首批急需紧缺人才需求(149人)笔试历年参考题库附带答案详解
- 揭阳2024年广东揭阳揭西县招聘事业单位工作人员60人笔试历年参考题库附带答案详解
- 2025年色环机项目可行性研究报告
- 2025年紫檀壁龛项目可行性研究报告
- 成都四川成都简阳市青龙镇便民服务和智慧蓉城运行中心招聘综治巡防队员笔试历年参考题库附带答案详解
- 2025至2031年中国温度传送器行业投资前景及策略咨询研究报告
- 2025至2031年中国机油壳扳手行业投资前景及策略咨询研究报告
- 2025至2031年中国岩棉板行业投资前景及策略咨询研究报告
- 2025年女式印花手袋项目可行性研究报告
- 2025年叉车水箱项目可行性研究报告
- CSC资助出国博士联合培养研修计划英文-research-plan
- 2025年蛇年年度营销日历营销建议【2025营销日历】
- 摄影入门课程-摄影基础与技巧全面解析
- 司法考试2024年知识点背诵版-民法
- 冀少版小学二年级下册音乐教案
- 【龙集镇稻虾综合种养面临的问题及优化建议探析(论文)13000字】
- 25 黄帝的传说 公开课一等奖创新教案
- 人教版音乐三年级下册第一单元 朝景 教案
- 《师范硬笔书法教程(第2版)》全套教学课件
- 中国联通H248技术规范
- 孙权劝学省公共课一等奖全国赛课获奖课件
评论
0/150
提交评论