⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 yggl_zyxx.pas

📁 这是用Delphi编写的维修管理系统。主要功能包括业务管理
💻 PAS
字号:
unit YGGL_ZYXX;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  Grids, DBGrids, StdCtrls, Buttons, Db, ADODB, ComCtrls, ExtCtrls,
  Qrctrls, QuickRpt;

type
  TMR_WXZYXX = class(TForm)
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    BitBtn4: TBitBtn;
    BitBtn5: TBitBtn;
    BitBtn6: TBitBtn;
    ADOTable1: TADOTable;
    DataSource1: TDataSource;
    ADOTable1DSDesigner: TStringField;
    ADOTable1DSDesigner2: TStringField;
    ADOTable1DSDesigner3: TStringField;
    ADOTable1DSDesigner4: TStringField;
    ADOTable1DSDesigner5: TDateTimeField;
    ADOTable1DSDesigner6: TStringField;
    ADOTable1DSDesigner7: TStringField;
    ADOTable1DSDesigner8: TStringField;
    ADOTable1DSDesigner9: TStringField;
    ADOTable1DSDesigner10: TStringField;
    PageControl1: TPageControl;
    TabSheet1: TTabSheet;
    DBGrid1: TDBGrid;
    Bevel1: TBevel;
    ADOTable2: TADOTable;
    DataSource2: TDataSource;
    ADOTable2DSDesigner: TStringField;
    ADOTable2DSDesigner2: TStringField;
    ADOTable2DSDesigner3: TStringField;
    ADOTable2DSDesigner4: TStringField;
    ADOTable2DSDesigner5: TFloatField;
    QuickRep1: TQuickRep;
    DetailBand1: TQRBand;
    PageFooterBand1: TQRBand;
    TitleBand1: TQRBand;
    QRLabel1: TQRLabel;
    QRShape1: TQRShape;
    QRSysData1: TQRSysData;
    QRLabel2: TQRLabel;
    QRSysData2: TQRSysData;
    QRLabel3: TQRLabel;
    QRLabel4: TQRLabel;
    QRLabel5: TQRLabel;
    QRLabel6: TQRLabel;
    QRLabel7: TQRLabel;
    QRLabel8: TQRLabel;
    QRLabel9: TQRLabel;
    QRLabel10: TQRLabel;
    QRLabel11: TQRLabel;
    QRLabel12: TQRLabel;
    QRLabel13: TQRLabel;
    QRLabel14: TQRLabel;
    QRDBText1: TQRDBText;
    QRDBText2: TQRDBText;
    QRDBText3: TQRDBText;
    QRDBText4: TQRDBText;
    QRDBText5: TQRDBText;
    QRDBText6: TQRDBText;
    QRDBText7: TQRDBText;
    QRDBText8: TQRDBText;
    QRDBText9: TQRDBText;
    QRDBText10: TQRDBText;
    QRShape2: TQRShape;
    QRShape3: TQRShape;
    QRShape4: TQRShape;
    QRShape5: TQRShape;
    QRShape6: TQRShape;
    QRShape7: TQRShape;
    QRShape8: TQRShape;
    QRShape9: TQRShape;
    QRShape10: TQRShape;
    QRShape11: TQRShape;
    QRShape12: TQRShape;
    QRShape13: TQRShape;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormCreate(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure BitBtn6Click(Sender: TObject);
    procedure FormPaint(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure BitBtn4Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure QuickRep1Preview(Sender: TObject);
    procedure BitBtn5Click(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  MR_WXZYXX: TMR_WXZYXX;

implementation

uses MR_WXUnit, MRWX_ZYXX_TJ, MRWX_ZYXX_CX, MRWX_BB;

{$R *.DFM}

procedure TMR_WXZYXX.FormClose(Sender: TObject; var Action: TCloseAction);
begin
animatewindow(handle,300,AW_VER_NEGATIVE+AW_HOR_POSITIVE+AW_HIDE);
mr_wxzyxx.Release;
mr_wxzyxx:=nil;
mr_wxzyxx_tj.release;
mr_wxzyxx_tj:=nil;
mr_wxzyxx_cx.Release;
mr_wxzyxx_cx:=nil;
mrwxform:=0;
end;

procedure TMR_WXZYXX.FormCreate(Sender: TObject);
var metricsy:integer;

begin
metricsy:=getsystemmetrics(sm_cyscreen);
if metricsy>600 then begin
   height:=height+100;
   pagecontrol1.Height:=pagecontrol1.Height+100;
end else begin
   constraints.MaxHeight:=440;
end;

end;

procedure TMR_WXZYXX.FormShow(Sender: TObject);
var x,y,z:integer;
begin
animatewindow(handle,200,AW_VER_NEGATIVE-AW_HOR_POSITIVE);
dbgrid1.Refresh;
bevel1.Refresh;
//****************************************************************************
  x:=0; y:=0;
  mr_wxzyxx.canvas.pen.width:=1;
  for z:=0 to 2 do begin
    mr_wxzyxx.canvas.pen.color:=$00404040;
    mr_wxzyxx.Canvas.moveto(bitbtn1.left+bitbtn1.width+x,bitbtn1.top+2);
    mr_wxzyxx.canvas.lineto(bitbtn1.left+bitbtn1.width+x,bitbtn1.top+bitbtn1.height+2);
    mr_wxzyxx.canvas.moveto(bitbtn1.left+2,bitbtn1.top+bitbtn1.height+y);
    mr_wxzyxx.canvas.lineto(bitbtn1.left+bitbtn1.width+2,bitbtn1.top+bitbtn1.height+y);
    inc(x); inc(y);
  end;
//****************************************************************************
  x:=0; y:=0;
  mr_wxzyxx.canvas.pen.width:=1;
  for z:=0 to 2 do begin
    mr_wxzyxx.canvas.pen.color:=$00404040;
    mr_wxzyxx.Canvas.moveto(bitbtn2.left+bitbtn2.width+x,bitbtn2.top+2);
    mr_wxzyxx.canvas.lineto(bitbtn2.left+bitbtn2.width+x,bitbtn2.top+bitbtn2.height+2);
    mr_wxzyxx.canvas.moveto(bitbtn2.left+2,bitbtn2.top+bitbtn2.height+y);
    mr_wxzyxx.canvas.lineto(bitbtn2.left+bitbtn2.width+2,bitbtn2.top+bitbtn2.height+y);
    inc(x); inc(y);
  end;
//****************************************************************************
  x:=0; y:=0;
  mr_wxzyxx.canvas.pen.width:=1;
  for z:=0 to 2 do begin
    mr_wxzyxx.canvas.pen.color:=$00404040;
    mr_wxzyxx.Canvas.moveto(bitbtn3.left+bitbtn3.width+x,bitbtn3.top+2);
    mr_wxzyxx.canvas.lineto(bitbtn3.left+bitbtn3.width+x,bitbtn3.top+bitbtn3.height+2);
    mr_wxzyxx.canvas.moveto(bitbtn3.left+2,bitbtn3.top+bitbtn3.height+y);
    mr_wxzyxx.canvas.lineto(bitbtn3.left+bitbtn3.width+2,bitbtn3.top+bitbtn3.height+y);
    inc(x); inc(y);
  end;
//****************************************************************************
  x:=0; y:=0;
  mr_wxzyxx.canvas.pen.width:=1;
  for z:=0 to 2 do begin
    mr_wxzyxx.canvas.pen.color:=$00404040;
    mr_wxzyxx.Canvas.moveto(bitbtn4.left+bitbtn4.width+x,bitbtn4.top+2);
    mr_wxzyxx.canvas.lineto(bitbtn4.left+bitbtn4.width+x,bitbtn4.top+bitbtn4.height+2);
    mr_wxzyxx.canvas.moveto(bitbtn4.left+2,bitbtn4.top+bitbtn4.height+y);
    mr_wxzyxx.canvas.lineto(bitbtn4.left+bitbtn4.width+2,bitbtn4.top+bitbtn4.height+y);
    inc(x); inc(y);
  end;
//****************************************************************************
  x:=0; y:=0;
  mr_wxzyxx.canvas.pen.width:=1;
  for z:=0 to 2 do begin
    mr_wxzyxx.canvas.pen.color:=$00404040;
    mr_wxzyxx.Canvas.moveto(bitbtn5.left+bitbtn5.width+x,bitbtn5.top+2);
    mr_wxzyxx.canvas.lineto(bitbtn5.left+bitbtn5.width+x,bitbtn5.top+bitbtn5.height+2);
    mr_wxzyxx.canvas.moveto(bitbtn5.left+2,bitbtn5.top+bitbtn5.height+y);
    mr_wxzyxx.canvas.lineto(bitbtn5.left+bitbtn5.width+2,bitbtn5.top+bitbtn5.height+y);
    inc(x); inc(y);
  end;
//****************************************************************************
  x:=0; y:=0;
  mr_wxzyxx.canvas.pen.width:=1;
  for z:=0 to 2 do begin
    mr_wxzyxx.canvas.pen.color:=$00404040;
    mr_wxzyxx.Canvas.moveto(bitbtn6.left+bitbtn6.width+x,bitbtn6.top+2);
    mr_wxzyxx.canvas.lineto(bitbtn6.left+bitbtn6.width+x,bitbtn6.top+bitbtn6.height+2);
    mr_wxzyxx.canvas.moveto(bitbtn6.left+2,bitbtn6.top+bitbtn6.height+y);
    mr_wxzyxx.canvas.lineto(bitbtn6.left+bitbtn6.width+2,bitbtn6.top+bitbtn6.height+y);
    inc(x); inc(y);
  end;
//****************************************************************************
end;

procedure TMR_WXZYXX.BitBtn6Click(Sender: TObject);
begin
close;
end;

procedure TMR_WXZYXX.FormPaint(Sender: TObject);
var x,y,z:integer;
begin
//****************************************************************************
  x:=0; y:=0;
  mr_wxzyxx.canvas.pen.width:=1;
  for z:=0 to 2 do begin
    mr_wxzyxx.canvas.pen.color:=$00404040;
    mr_wxzyxx.Canvas.moveto(bitbtn1.left+bitbtn1.width+x,bitbtn1.top+2);
    mr_wxzyxx.canvas.lineto(bitbtn1.left+bitbtn1.width+x,bitbtn1.top+bitbtn1.height+2);
    mr_wxzyxx.canvas.moveto(bitbtn1.left+2,bitbtn1.top+bitbtn1.height+y);
    mr_wxzyxx.canvas.lineto(bitbtn1.left+bitbtn1.width+2,bitbtn1.top+bitbtn1.height+y);
    inc(x); inc(y);
  end;
//****************************************************************************
  x:=0; y:=0;
  mr_wxzyxx.canvas.pen.width:=1;
  for z:=0 to 2 do begin
    mr_wxzyxx.canvas.pen.color:=$00404040;
    mr_wxzyxx.Canvas.moveto(bitbtn2.left+bitbtn2.width+x,bitbtn2.top+2);
    mr_wxzyxx.canvas.lineto(bitbtn2.left+bitbtn2.width+x,bitbtn2.top+bitbtn2.height+2);
    mr_wxzyxx.canvas.moveto(bitbtn2.left+2,bitbtn2.top+bitbtn2.height+y);
    mr_wxzyxx.canvas.lineto(bitbtn2.left+bitbtn2.width+2,bitbtn2.top+bitbtn2.height+y);
    inc(x); inc(y);
  end;
//****************************************************************************
  x:=0; y:=0;
  mr_wxzyxx.canvas.pen.width:=1;
  for z:=0 to 2 do begin
    mr_wxzyxx.canvas.pen.color:=$00404040;
    mr_wxzyxx.Canvas.moveto(bitbtn3.left+bitbtn3.width+x,bitbtn3.top+2);
    mr_wxzyxx.canvas.lineto(bitbtn3.left+bitbtn3.width+x,bitbtn3.top+bitbtn3.height+2);
    mr_wxzyxx.canvas.moveto(bitbtn3.left+2,bitbtn3.top+bitbtn3.height+y);
    mr_wxzyxx.canvas.lineto(bitbtn3.left+bitbtn3.width+2,bitbtn3.top+bitbtn3.height+y);
    inc(x); inc(y);
  end;
//****************************************************************************
  x:=0; y:=0;
  mr_wxzyxx.canvas.pen.width:=1;
  for z:=0 to 2 do begin
    mr_wxzyxx.canvas.pen.color:=$00404040;
    mr_wxzyxx.Canvas.moveto(bitbtn4.left+bitbtn4.width+x,bitbtn4.top+2);
    mr_wxzyxx.canvas.lineto(bitbtn4.left+bitbtn4.width+x,bitbtn4.top+bitbtn4.height+2);
    mr_wxzyxx.canvas.moveto(bitbtn4.left+2,bitbtn4.top+bitbtn4.height+y);
    mr_wxzyxx.canvas.lineto(bitbtn4.left+bitbtn4.width+2,bitbtn4.top+bitbtn4.height+y);
    inc(x); inc(y);
  end;
//****************************************************************************
  x:=0; y:=0;
  mr_wxzyxx.canvas.pen.width:=1;
  for z:=0 to 2 do begin
    mr_wxzyxx.canvas.pen.color:=$00404040;
    mr_wxzyxx.Canvas.moveto(bitbtn5.left+bitbtn5.width+x,bitbtn5.top+2);
    mr_wxzyxx.canvas.lineto(bitbtn5.left+bitbtn5.width+x,bitbtn5.top+bitbtn5.height+2);
    mr_wxzyxx.canvas.moveto(bitbtn5.left+2,bitbtn5.top+bitbtn5.height+y);
    mr_wxzyxx.canvas.lineto(bitbtn5.left+bitbtn5.width+2,bitbtn5.top+bitbtn5.height+y);
    inc(x); inc(y);
  end;
//****************************************************************************
  x:=0; y:=0;
  mr_wxzyxx.canvas.pen.width:=1;
  for z:=0 to 2 do begin
    mr_wxzyxx.canvas.pen.color:=$00404040;
    mr_wxzyxx.Canvas.moveto(bitbtn6.left+bitbtn6.width+x,bitbtn6.top+2);
    mr_wxzyxx.canvas.lineto(bitbtn6.left+bitbtn6.width+x,bitbtn6.top+bitbtn6.height+2);
    mr_wxzyxx.canvas.moveto(bitbtn6.left+2,bitbtn6.top+bitbtn6.height+y);
    mr_wxzyxx.canvas.lineto(bitbtn6.left+bitbtn6.width+2,bitbtn6.top+bitbtn6.height+y);
    inc(x); inc(y);
  end;
//****************************************************************************

end;

procedure TMR_WXZYXX.BitBtn1Click(Sender: TObject);
begin
adotable1.insert;
adotable1.FieldByName('性别').asstring:='男';
zyapp:=true;
mr_wxzyxx_tj.showmodal;
end;

procedure TMR_WXZYXX.BitBtn4Click(Sender: TObject);
begin
if tbitbtn(sender).caption='刷   新[&S]' then begin
   tbitbtn(sender).caption:='人员信息查询[&S]';
   adotable1.filtered:=false;
end else begin
   mr_wxzyxx_cx.showmodal;
end;

end;

procedure TMR_WXZYXX.BitBtn2Click(Sender: TObject);
begin
if adotable1.RecordCount=0 then begin
   showmessage('系统无人员信息.');
end else begin
   adotable1.edit;
   if adotable1.fieldbyname('出生日期').asstring='' then begin
       mr_wxzyxx_tj.DateTimePicker1.date:=date;
   end else begin
       mr_wxzyxx_tj.DateTimePicker1.date:=adotable1.FieldByName('出生日期').asdatetime;
   end;
   zyapp:=false;
   mr_wxzyxx_tj.showmodal;
end;
end;

procedure TMR_WXZYXX.QuickRep1Preview(Sender: TObject);
begin
mr_wxbb.qrpreview1.qrprinter:=quickrep1.qrprinter;

end;

procedure TMR_WXZYXX.BitBtn5Click(Sender: TObject);
begin
    if not assigned(mr_wxbb) then begin
       mr_wxbb:=tmr_wxbb.create(self);
    end;
    mr_wxbb.show;
    QuickRep1.Preview;

end;

procedure TMR_WXZYXX.BitBtn3Click(Sender: TObject);
begin
if adotable1.RecordCount=0 then begin
    showmessage('系统无人员信息.');
end else begin
     if adotable2.Locate('职员',adotable1.fieldbyname('职员名称').asstring,[loCaseInsensitive]) then begin
          if adotable2.FieldByName('现有工作').asstring='' then begin
                if messagedlg(adotable1.fieldbyname('职员名称').asstring+'可以离职吗?',
                        mtWarning,[mbyes,mbno],0)=mryes then begin
                        adotable1.delete;
                        adotable2.delete;
                end;
          end else begin
                showmessage('该职员工作未完成,不能离职.');
          end;
     end else begin
                if messagedlg(adotable1.fieldbyname('职员名称').asstring+'可以离职吗?',
                        mtWarning,[mbyes,mbno],0)=mryes then begin
                        adotable1.delete;
                end;
     end;
end;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -