在不同的表中。
其中表中的数据结构如下所示:
表4-1用于保存各种通话类型以及其收费标准,如:"长途费0.7/分;市话费0.2/分"
表4-1费用对照表
字段名
类型
宽度
小数位
通话类型
字符型
8
收费标准
数值型
3
1
表4-2存放各地的名称信息,是通话类型的依据。
表4-2地名表
字段名
类型
宽度
小数位
省
字符型
10
市
字符型
10
表4-3用来存放用户通话的详细情况和对应的各种收费,是统计每月话费使用情况的依据。
表4-3手机资费表
字段名
类型
宽度
小数位
[网学网用户上传]
字符型
11
通话类型
字符型
8
对方号码
字符型
11
通话开始时间
日期时间型
8
通话时长
数值型
4
2
通话费
数值型
4
2
长途费
数值型
4
2
附加费
数值型
4
2
市郊费
数值型
4
2
合计费用
数值型
5
2
主叫地点
字符型
18
被叫地点
字符型
18
表4-3存放用户的各种信息,以便进行帐户管理。
表4-4帐户表
字段名
类型
宽度
小数位
姓名
字符型
10
身份证号
字符型
18
[网学网用户上传]
字符型
11
信誉度
字符型
10
网络类型
字符型
10
手机密码
字符型
6
开户时间
日期型
8
地点
字符型
50
表4-5保存了每月用户的话费信息(包括[网学网用户上传]、预存款余额、预存款、欠费、补收月租、机主单位、当前运行状态、时间),是存入话费的基础。
字段名
类型
宽度
小数位
[网学网用户上传]
字符型
11
预存款余额
数值型
6
2
预存款
数值型
6
2
欠费
数值型
5
2
补收月租
数值型
3
机主单位
字符型
20
当前运行状态
字符型
10
时间
时间型
8
表4-5话费状态表
4.4系统主要工作窗口
4.4.1系统登录表单的设计
系统登录表单的主要任务是输入用户名称和进入系统的密码,如果用户密码正确,可调用系统主菜单,使用户步入数据库应用系统环境。同时,对管理员与用户赋予了不同的权限,使他们进入本系统后操作范围不同。
图4-6系统登录表单
表4-6系统权限表
名称
权限设置
管理员
帐户管理、话费管理、用户管理、系统设定等
普通用户
归属地查询、当前话费状态查询、月话费帐单查询、月话费清单查询
4.4.2帐户管理表单的设计
1.帐户办理表单
由于不断有新的用户需要办理帐户,帐户办理表单就是为用户添加信息(包括:姓名,身份证号,[网学网用户上传]等)的。该表单有需要输入用户各种信息的文本框和编辑框,此外还有一个按钮组(其中包括定位按钮、添加和删除按钮等)组成。在录入用户信息时点击添加按钮,将内容输入到对应的文本框和编辑框中,完成后点击保存按扭,即可把数据保存到数据库中。
图4-7帐户办理表单
2.帐户查询表单
如果我们需要查询用户的信息,没有查询功能我们就必须一个一个的找,一是浪费时间,二是浪费精力。所以设计了查询,查询的条件是手机号吗,因为[网学网用户上传]是我们最常使用的,在该表单中需要一个文本框,用于输入[网学网用户上传],然后点击查询按钮即可,功能简单但是非常有用。此表单只有管理员才可以使用。
图4-8帐户查询表单
4.4.3话费管理表单的设计
1.话费存入
该表单是为用户需要存入一定的话费而设计的,用户可以进行状态查询,当用户的存款金额不足时,管理员可以输入用户的[网学网用户上传]为用户存入一定的话费。
图4-9话费存入表单
2.话费清单录入
话费清单录入的主要目的是要录入话费,其中有两种录入方式,一种是键盘录入,另一种是文件导入,同时还有备份的功能。
(1)键盘录入:管理员可以通过键盘录入来添加或删除用户的记录。
图4-10键盘输入表单
(2)文件导入:该表单是将备份好的数据导入数据库之中,将原来的记录覆盖掉。
(3)备份
此表单是将话费清单备份到后缀名为.dhzf的文件之中。其中表单有两个按钮组成,一个是取消按钮,一个是备份按钮。表单中表格的数据是要备份的数据,如果确认备份,点击备份按钮即可。
图4-11备份表单
4.4.4话费清单查询
1.话费状态
该表单由一个文本框text1,一个命令按钮command1和一个表格grid1组成。在查询过程中,先在文本框中输入[网学网用户上传],然后点击"查询"按钮,查询的结果就会显示在表格中,若要退出查询,可以直接点击关闭。其中,[网学网用户上传]保证查询条件的唯一性。
图4-12当前话费状态表单
2.月话费帐单查询
该表单由两个文本框text1,text2,一个命令按钮command1和一个表格grid1组成。在查询过程中,必须首先填入[网学网用户上传]和需要查询的月份,然后点击查询按钮。此时查询结果会显示在表格中,如果没有填入完整信息,则会出现提示对话框"请把信息输全!!!",查询显示的是用户在某个月份的总的话费帐单。
图4-13月话费帐单查询
3.月话费清单查询
该表单由一个文本框text1,一个命令按钮command1和一个表格grid1组成。用户在text1中输入[网学网用户上传]后,点击查询按钮,表格中会详细显示用户在该月份的所有话费记录。
图4-14月话费清单查询
5系统实现
编码阶段的主要任务是将详细设计确定的具体功能用程序设计语言描述出来,生成目标系统对应的源程序。在编码实现系统功能的过程中,应确保程序编写正确且理解容易,结构清晰明了。现在设计主要功能模块的关键代码。
5.1系统登录
若每一个进入计算机的人都能够对系统进行操作,就可能有意或无意的破坏数据,因此,在进入系统之前要设置密码输入功能。在进入系统时,首先进入登录表单,在登录密码输入窗口选择姓名和用户密码,只有姓名和密码都正确时,才能进入系统。为了防止恶意用户登陆系统,系统设置了一个循环变量,如密码连续错了3次,系统将强行退出。另外,为了加强管理,提高安全性,在系统中定义了一个全局变量qx,用户登录时的权限就在qx中,此时系统就可以对用户实行级别控制。
在Form表单的"确定"按钮中输入如下代码:
iflen(thisform.text2.value)<>0andlen(thisform.text1.value)<>0
pass1=alltrim(thisform.text2.value)
ifpass1="管理员"andalltrim(thisform.text1.value)="hjm"
qx=.f.
do"main.mpr"
thisform.release
return
endif
cs=cs+1
SELECT*;
FROM帐户管理!帐户;
WHERE帐户.[网学网用户上传]=pass1;
INTOCURSORmima查询
pass2=alltrim(mima查询.手机密码)
mypass2=alltrim(thisform.text1.value)
if(pass2==mypass2)andcs<=3
opendatabasemypath+"帐户管理"&&打开数据
qx=.t.
do"main.mpr"
thisform.release
else
ifcs<3
messagebox("输入密码错误,请重新输入","提示窗口")
thisform.text1.value=""
else
messagebox("输入次数超过三次","警告窗口")
thisform.release
clearevents
endif
endif
SETEXACTOFF
else
messagebox("请选择用户名和填入密码",0+48,"提示窗口")
endif
5.2帐户管理
在帐户查询表单中,为了防止操作人员的无意操作带来的不可预计的后果我们把表的只读属性改为真、文本框和编辑框的属性enabled=.f.,使用户不能修改。用户需要修改其中的内容需要点击编辑按钮,使文本框和编辑框的属性enabled=.t.就可以修改其中的内容了,此表单只有管理员才可以进入进行操作。
其中查询按钮的代码为:
use帐户
iflen(alltrim(thisform.txt[网学网用户上传].value))<>0
SELECT*;
FROM帐户管理!帐户;
WHERE帐户.[网学网用户上传]=alltrim(thisform.txt[网学网用户上传].value);
INTOCURSOR查询帐户
thisform.grd帐户.recordsource="查询帐户"
thisform.refresh
else
messagebox("请输入[网学网用户上传]","提示窗口")
endif
5.3话费管理
话费存入表单由两个文本框和两个按钮组成,其中在第一个文本框输入[网学网用户上传],点击查询按钮可以查询出当前用户的话费状态,此时第二个文本框才可以使用,然后可以输入要存入的话费。
该表单的初始化代码为:
withthisform.grd话费状态
.column1.width=70
.column2.width=70
.column3.width=70
.column4.width=70
.column5.width=70
.c
上一篇:
PB自动组卷系统(论文和程序)
下一篇:
一个人晕着也能去看病打针