📄 mc_xtwhxd.pas
字号:
unit MC_XTWHXD;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ExtCtrls, StdCtrls, Buttons, jpeg, Db, DBTables;
type
TXTWHXD = class(TForm)
Panel1: TPanel;
Panel2: TPanel;
Image1: TImage;
Bevel1: TBevel;
GroupBox1: TGroupBox;
Memo1: TMemo;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
BitBtn3: TBitBtn;
Label1: TLabel;
Label2: TLabel;
Shape1: TShape;
GroupBox2: TGroupBox;
CheckBox1: TCheckBox;
CheckBox2: TCheckBox;
CheckBox3: TCheckBox;
CheckBox4: TCheckBox;
CheckBox5: TCheckBox;
CheckBox6: TCheckBox;
CheckBox7: TCheckBox;
Memo2: TMemo;
Shape2: TShape;
GroupBox3: TGroupBox;
Shape3: TShape;
Memo3: TMemo;
CheckBox8: TCheckBox;
CheckBox9: TCheckBox;
CheckBox10: TCheckBox;
CheckBox11: TCheckBox;
CheckBox12: TCheckBox;
CheckBox13: TCheckBox;
CheckBox14: TCheckBox;
GroupBox4: TGroupBox;
Query1: TQuery;
Memo4: TMemo;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure BitBtn3Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
private
Y:integer;
{ Private declarations }
public
{ Public declarations }
end;
var
XTWHXD: TXTWHXD;
implementation
{$R *.DFM}
procedure TXTWHXD.FormCreate(Sender: TObject);
begin
Y:=1;
end;
procedure TXTWHXD.BitBtn2Click(Sender: TObject); //维护向导下一步
begin
if BitBtn2.Caption='开始维护' then
begin
If CheckBox8.Enabled = True Then //“清除库存为零的库存信息“按钮可用
If CheckBox8.Checked = True Then
begin //清除库存为零的库存信息
Query1.CLose;
Query1.SQL.CLear;
Memo4.Lines.Add('正在处理数据准备开始维护[库存信息表].');
Query1.SQL.Add('Delete 库存信息表');
Query1.SQL.Add('where 库存信息表.编号 not in (Select DistinCt 酒水费用信息表.货存编号 From 酒水费用信息表)');
Query1.SQL.Add('and 库存信息表.数量=0');
Memo4.Lines.Add('开始处理[库存信息表]中无关联的信息[条件是库存数量为0的信息].');
Query1.ExecSQL;
Memo4.Lines.Add('[库存信息]处理完毕.');
end;
If CheckBox9.Enabled = True Then //“清除半年以前的进货信息“按钮可用
If CheckBox9.Checked = True Then
begin //清除半年以前的进货信息
Query1.CLose;
Query1.SQL.Clear;
Memo4.Lines.Add('正在处理数据准备开始维护[进货信息历史表]表.');
Query1.SQl.Add('Delete 进货信息历史表 Where 进货日期 < :A');
Query1.ParamByName('A').AsDateTime:=Date-180; //设置时间为半年前
Memo4.Lines.Add('开始处理[进货历史信息表]中半年前无用的数据.');
Query1.ExecSQL;
Memo4.Lines.Add('[进货历史信息表]处理完毕.');
end;
If CheckBox10.Enabled = True Then // “清除半年以前的出货信息“按钮可用
If CheckBox10.Checked = True Then
begin //清除半年以前的出货信息
Query1.CLose;
Query1.SQL.Clear;
Memo4.Lines.Add('正在处理数据准备开始维护[出货信息历史表]表.');
Query1.SQl.Add('Delete 出货信息历史表 Where 出货日期 < :A');
Query1.ParamByName('A').AsDateTime:=Date-180; //设置时间为半年前
Memo4.Lines.Add('开始处理[出货历史信息表]中半年前无用的数据.');
Query1.ExecSQL;
Memo4.Lines.Add('[出货历史信息表]处理完毕.');
end;
If CheckBox11.Enabled = True Then //“清除半年以前的进货单据信息 “按钮可用
If CheckBox11.Checked = True Then
begin //清除半年以前的进货单据信息
Query1.CLose;
Query1.SQL.Clear;
Memo4.Lines.Add('正在处理数据准备开始维护[进货单据历史表]表.');
Query1.SQl.Add('Delete 进货历史单据表 Where 记录日期 < :A');
Memo4.Lines.Add('开始处理[进货单据历史表]中半年前无用的数据.');
Query1.ParamByName('A').AsDateTime:=Date-180;
Query1.ExecSQL;
Memo4.Lines.Add('[进货单据历史表]处理完毕.');
end;
If CheckBox12.Enabled = True Then //“清除半年以前的出货单据信息 “按钮可用
If CheckBox12.Checked = True Then
begin //清除半年以前的出货单据信息
Query1.CLose;
Query1.SQL.Clear;
Memo4.Lines.Add('正在处理数据准备开始维护[出货单据历史表]表.');
Query1.SQl.Add('Delete 出货历史单据表 Where 记录日期 < :A');
Query1.ParamByName('A').AsDateTime:=Date-180;
Memo4.Lines.Add('开始处理[出货单据历史表]中半年前无用的数据.');
Query1.ExecSQL;
Memo4.Lines.Add('[出货单据历史表]处理完毕.');
end;
If CheckBox13.Enabled = True Then //“清除历史结账单据信息 “按钮可用
If CheckBox13.Checked = True Then
begin //清除历史结账单据信息
Query1.CLose;
Query1.SQL.Clear;
Memo4.Lines.Add('正在处理数据准备开始维护[点菜历史信息表]表.');
Query1.SQl.Add('Delete 点菜历史信息表 Where 结单日期 < :A');
Query1.ParamByName('A').AsDateTime:=Date-180; //设置清除日期
Memo4.Lines.Add('开始处理[点菜历史信息表]中半年前无用的数据.');
Query1.ExecSQL;
Memo4.Lines.Add('[点菜历史信息表]处理完毕.');
end;
If CheckBox14.Enabled = True Then //“清除历史点菜信息 “按钮可用
If CheckBox14.Checked = True Then
begin //清除历史点菜信息
Query1.CLose;
Query1.SQL.Clear; //清除历史点菜信息
Memo4.Lines.Add('正在处理数据准备开始维护[结款费用历史信息表]表.');
Query1.SQl.Add('Delete 结款费用历史信息表 Where 日期 < :A');
Query1.ParamByName('A').AsDateTime:=Date-180;
Memo4.Lines.Add('开始处理[结款费用历史信息表]中半年前无用的数据.');
Query1.ExecSQL;
Memo4.Lines.Add('[结款费用历史信息表]处理完毕.');
end;
ShowMessage('维护信息完毕.'); //结束维护
BitBtn1.Enabled:=False;
BitBtn2.Enabled:=False;
End
Else
if Y<>4 then y:=y+1; //不等于第四步
case Y of
2: begin //如果进入维护第二步,选择维护对象
GroupBox1.Visible:=False; //GroupBox1为维护规则
GroupBox2.Visible:=True; //GroupBox2为选择维护对象
GroupBox3.Visible:=False; //GroupBox3为选择维护项目
GroupBox4.Visible:=False; //GroupBox1为查看维护结果
BitBtn1.Enabled:=True;
end;
3: begin //如果进入维护第二步 ,选择维护项目
if (CheckBox1.Checked=False) and (CheckBox2.Checked=False) and
(CheckBox3.Checked=False) and (CheckBox4.Checked=False) and
(CheckBox5.Checked=False) and (CheckBox6.Checked=False) and
(CheckBox7.Checked=False) then
begin
ShowMessage('请选择维护对象.');
y:=2;
End
Else
begin
GroupBox1.Visible:=False;
GroupBox2.Visible:=False;
GroupBox3.Visible:=True;
GroupBox4.Visible:=False;
BitBtn1.Enabled:=True;
if CheckBox1.Checked=True then CheckBox8.Enabled:=True
else CheckBox8.Enabled:=False;
if CheckBox2.Checked=True then CheckBox9.Enabled:=True
else CheckBox9.Enabled:=False;
if CheckBox3.Checked=True then CheckBox10.Enabled:=True
else CheckBox10.Enabled:=False;
if CheckBox4.Checked=True then CheckBox11.Enabled:=True
else CheckBox11.Enabled:=False;
if CheckBox5.Checked=True then CheckBox12.Enabled:=True
else CheckBox12.Enabled:=False;
if CheckBox6.Checked=True then CheckBox13.Enabled:=True
else CheckBox13.Enabled:=False;
if CheckBox7.Checked=True then CheckBox14.Enabled:=True
else CheckBox14.Enabled:=False;
end;
end;
4: begin //如果进入维护第四步 ,进入维护结果
if (CheckBox8.Checked=False) and (CheckBox9.Checked=False) and
(CheckBox10.Checked=False) and (CheckBox11.Checked=False) and
(CheckBox12.Checked=False) and (CheckBox13.Checked=False) and
(CheckBox14.Checked=False) then
begin
ShowMessage('请选择维护对象.');
y:=3;
End
Else
begin
GroupBox1.Visible:=False;
GroupBox2.Visible:=False;
GroupBox3.Visible:=False;
GroupBox4.Visible:=True;
BitBtn1.Enabled:=True;
BitBtn2.Caption:='开始维护'
end;
end;
end;
end;
//维护向导上一步
procedure TXTWHXD.BitBtn1Click(Sender: TObject);
begin
if Y<>1 then y:=y-1; //判断维护步骤
case Y of
1: begin //维护向导第一步,设立维护规则
GroupBox1.Visible:=True;
GroupBox2.Visible:=False;
GroupBox3.Visible:=False;
GroupBox4.Visible:=False;
BitBtn1.Enabled:=False;
BitBtn2.Caption:='下一步[&N]';
end;
2: begin //维护向导第二步,选择维护对象
GroupBox1.Visible:=False;
GroupBox2.Visible:=True;
GroupBox3.Visible:=False;
GroupBox4.Visible:=False;
BitBtn2.Caption:='下一步[&N]';
end;
3: begin //维护向导第三步,选择维护项目
GroupBox1.Visible:=False;
GroupBox2.Visible:=False;
GroupBox3.Visible:=True;
GroupBox4.Visible:=False;
BitBtn2.Caption:='下一步[&N]';
end;
4: begin //维护向导第四步,选择维护项目
GroupBox1.Visible:=False;
GroupBox2.Visible:=False;
GroupBox3.Visible:=False;
GroupBox4.Visible:=True;
BitBtn2.Caption:='下一步[&N]';
end;
end;
end;
procedure TXTWHXD.FormClose(Sender: TObject; var Action: TCloseAction);
begin
XTWHXD.Release;
XTWHXD:=Nil;
end;
//取消维护向导
procedure TXTWHXD.BitBtn3Click(Sender: TObject);
begin
Close; //退出维护向导
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -