下,步步求精。系统
程序由系统管理模块和售票模块组成。售票模块运行在售票微机上,系统管理模块运行在服务器上。
四、系统主要功能特性及实现方法
系统主要模块:登录及密码输入模块;系统主界面输入模块;统计、
查询、报表、打印模块;门票打印模块。下面分述各模块的功能以及关键部分的实现。
1.登录及密码输入模块
登录及密码输入模块用于限制操作员的权限,程序完成的功能:从界面上取出密码,
查询数据库密码表,有相同密码操作员有权进入下一界面,三次输入失败,
程序自动退出。另外在售票模块中,根据密码要取出对应的操作员的名字,以便将售票信息与操作员相关联。从数据库中根据输入密码取相应的操作员函数如下,其中handletbl为密码表名称,id、handlename、handlecode为表中字段,代表编号、操作员姓名、操作员密码。
function TFormPswd.gethandlename(code:String):String;
var name:String;
begin
name:='''';
Query2.Close;
Query2.SQL.Clear;
Query2.DisableControls;
Query2.SQL.Add(''Select id,handlename,handlecode from handletbl'');
Query2.Open;
if Query2.locate(''handlecode'',code,) then
begin
name:=query2.FieldByName(''handlename'').AsString;
end;
Query2.close;
Result:=name;
end;
2.系统主界面输入模块
系统的主界面输入模块用于输入和显示售票信息,根据其信息和票价自动计算出游客的总人数以及票价。在此模块中要求操作员只输入游客人数,按“确定”,即可自动计算和显示总价,按“打印”则打印门票。为了防止操作员误输入除整型数据以外的其他字符如A、B等而导致程序出错,
程序中在需要数据输入的Tedit位置,设置判断条件,只允许整型数据输入。
3.统计与
查询、报表打印模块
统计与查询、报表打印模块用于实现售票信息的统计与查询,可以设定起止日期等信息,并可生成报表打印。统计与查询用内嵌的SQL
查询语言实现,报表使用Delphi的快速报表组件Qreport部件组中的各种控件。
4.门票打印模块
门票打印模块实现门票的打印输出功能。在门票打印中需根据门票的样式确定输出的位置,为了实现快速打印,在打印时直接调用printers的过程和函数。
打印的过程如下:
procedure printmsg(thesyqo,Totalpeople,adultNum, childNum,Totalcar,bigcar,middlecar,minicar,totalmoney, prtdate:String);
begin
Printer.Canvas.Font.Charset := GB2312_CHARSET;
Printer.BeginDoc;
Printer.PageHeight;
Printer.PageWidth;
Printer.Canvas.Font.Size :=14;//字体设置
……//根据用户需要插入要打印的内容
Printer.Canvas.TextOut(x+2370,y,thesyqo);//打印内容
Printer.EndDoc;
end;
5.退票管理模块
实际的售票过程中涉及到由于各种原因游客退票的情况,而
计算机打印售出的门票及相关信息已经存入数据库中,当有退票情况发生时,必然存在操作员售票金额与数据库
查询结果不一致的现象,为了解决这一现象,增加了退票管理模块。