费系统中承担着重要的角色为整个计费系统提供原始的通话记录是计费系统的主要数据来源。
在我们实现的这个完整的采集系统中需要做的工作有 系统需提供对程控机房提交的各种磁带机卸载数据进行码制转换输出ASCII标准格式的长话清单。
我们在此仅实现贝尔S1240程控交换机的卸载数据。
系统需提供对经码制转换输出的长话清单数据分别按照主叫号码和通话日期、时间排序的功能排序的业务背景在第一章标准C的实作练习中已经做过说明。
系统需提供对排序前后的清单数据进行浏览的功能。
该功能依靠MS FlexGrid ocx组件实现。
系统需提供数据库操作功能对在码制转换和排序过程中的关键要素在数据库中 进行纪录为审核校验提供依据。
在系统中还应提供数据库日志浏览功能方便使用者察看历史操作记录。
最后系统要有完整的帮助文档为使用者提供必要的操作指导。
其他必要的辅助功能。
4.2 应用系统的架构介绍 根据需求分析考虑我们应用系统实现的整体框架界面采用对话框实现在对话框上手工添加工具条和状态栏以使界面更加实用方便。
为提高系统的整体性能和处理的灵活性业务处理全部采用多线程来实现线程的框架采用在第三章中使用的线程框架模型。
在此我们首先声明一个抽象类CBaseThread该类封装了绝大部分与线程对象生存周期管理以及与线程交互相关的方法和变量。
从CBaseThread总共派生出4个线程类它们分别是 CS1240实现贝尔S1240程控交换机磁带卸载数据的格式转换。
CMemSort实现长话清单在内存中的排序功能。
CSysLogRec码制转换和排序的日志由该线程记录至关系型数据库。
CSysLogView实现对数据库中历史操作纪录的浏览功能。
以上主要业务实现类的继承关系如 图 4-1 所示。
图 4-1C/C/VC培训教程·深蓝培训 2003-2005 8 4.3 数据采集系统功能预览 功能完整的数据采集系统的执行代码可从 SERVERvc_teachingpart_3ref_exe 目录下获得该目录共包含两个文件DataAcq.exe 数据采集系统执行代码dblog.dat 数据库文件。
图 4-2图 4-3图 4-4 分别是三个Tab页面的执行情况。
图 4-2 第4章 应用系统的整体描述 9 图 4-3 图 4-4 《第四章 应用系统的整体描述》结尾。
C/C/VC培训教程·深蓝培训 2003-2005 10 第5章 应用程序框架的生成 在第五章中我们逐一实现主框架代码和全部的界面元素为后续业务处理的实现做好整体性的准备工作。
工程的命名请根据个人对项目的理解进行选择要求工程的名称能明确地表示出项目的核心功能。
注意工程名称每个单词首字母大写不允许使用汉字。
本章的内容主要包括 利用向导建立一个对话框工程 给对话框添加工具条和状态栏 工程主要功能类介绍 5.1 利用向导建立一个对话框工程 利用应用程序向导AppWizard建立DataAcq工程注意要选择MFC AppWizardexe并在第二步选择Dialog Based类型保留所有默认选项点击finish按钮过程分别如 图 5-1和图 5-2 所示 图 5-1 图 5-2 完成后的工程类视图如 图 5-3 所示 图 5-3 C/C/VC培训教程·深蓝培训 2003-2005 12 5.2 给对话框添加工具条和状态栏 要给基于对话框的应用添加工具条和状态栏可以参阅VC例子程序DLGCBR32该示例程 序专门用来说明给对话框添加工具条和状态栏的方法和技巧。
DLGCBR32示例程序可在VC安装盘DISK2的..SampleVC98MFCGENERAL目录下或者从服务器 SERVERvc_teachingpart_3 获取。
学习VC最好的教材其实就是安装盘自带的示例程序这些例子都是由Microsoft资深程序员设计几乎涵盖了VC开发的所有技术方向和知识点。
学会高效地借鉴这些例子程序的设计思想和代码可极大提升我们的开发效率和技术水平。
编译并运行DLGCBR32示例程序如 图 5-4 所示 图 5-4 DLGCBR32工程中主要功能类的继承关系如 图 5-5 所示 第5章 应用程序框架的生成 13 图 5-5 其中CDialog为MFC内置的对话框类类CModelessDialog从CDialog继承主要完成对话框对象的销毁等工作。
类CModelessMain从CModelessDialog继承实现对话框、工具条和状态栏的创建等工作。
类 CWndListDlg从CModelessMain继承承载了整个工程的业务实现。
请学员参照DLGCBR32建立起各自的框架工程。
在各自的数据采集系统工程中工程命名包括类、成员函数和