📄 ywgl_sbwxform.~pas
字号:
unit YWGL_SBWXFORM;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Buttons, Db, ADODB, Grids, DBGrids, StdCtrls, ExtCtrls, ComCtrls;
type
TYWGL_SBWX = class(TForm)
ADOQuery1: TADOQuery;
ADOQuery2: TADOQuery;
DataSource2: TDataSource;
DataSource3: TDataSource;
Edit1: TEdit;
PageControl1: TPageControl;
TabSheet1: TTabSheet;
DBGrid2: TDBGrid;
DBGrid3: TDBGrid;
Splitter1: TSplitter;
Bevel1: TBevel;
Edit2: TEdit;
Label1: TLabel;
Label2: TLabel;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
ADOTable1: TADOTable;
ADOTable1DSDesigner: TStringField;
ADOTable1DSDesigner2: TDateTimeField;
ADOTable1DSDesigner3: TStringField;
ADOTable1DSDesigner4: TStringField;
ADOTable1DSDesigner5: TStringField;
ADOTable1DSDesigner6: TStringField;
ADOTable1DSDesigner7: TStringField;
ADOTable1DSDesigner8: TStringField;
ADOTable1DSDesigner9: TStringField;
ADOTable1DSDesigner10: TStringField;
ADOTable1DSDesigner11: TStringField;
ADOTable1DSDesigner12: TStringField;
ADOTable1DSDesigner13: TBCDField;
ADOTable1DSDesigner15: TBCDField;
ADOTable1DSDesigner16: TBCDField;
ADOTable1DSDesigner17: TStringField;
ADOTable1DSDesigner18: TStringField;
ADOTable1DSDesigner19: TStringField;
ADOTable1DSDesigner20: TStringField;
ADOTable1DSDesigner21: TStringField;
ADOQuery2DSDesigner: TStringField;
ADOQuery2DSDesigner2: TDateTimeField;
ADOQuery2DSDesigner3: TStringField;
ADOQuery2DSDesigner4: TStringField;
ADOQuery2DSDesigner5: TStringField;
ADOQuery2DSDesigner6: TStringField;
ADOQuery2DSDesigner7: TStringField;
ADOQuery2DSDesigner8: TStringField;
ADOQuery2DSDesigner9: TStringField;
ADOQuery2DSDesigner10: TStringField;
ADOQuery2DSDesigner11: TStringField;
ADOQuery2DSDesigner12: TBCDField;
ADOQuery2DSDesigner13: TBCDField;
ADOQuery2DSDesigner14: TStringField;
ADOQuery2DSDesigner15: TStringField;
ADOQuery2DSDesigner16: TStringField;
ADOQuery2DSDesigner17: TStringField;
ADOQuery2DSDesigner18: TStringField;
ADOQuery2DSDesigner19: TStringField;
ADOTable2: TADOTable;
ADOTable2DSDesigner: TStringField;
ADOTable2DSDesigner2: TDateTimeField;
ADOTable2DSDesigner3: TStringField;
ADOTable2DSDesigner4: TStringField;
ADOTable2DSDesigner5: TStringField;
ADOTable2DSDesigner6: TStringField;
ADOTable2DSDesigner7: TStringField;
ADOTable2DSDesigner8: TStringField;
ADOTable2DSDesigner9: TStringField;
ADOTable2DSDesigner10: TStringField;
ADOTable2DSDesigner11: TStringField;
ADOTable2DSDesigner12: TStringField;
ADOTable2DSDesigner13: TBCDField;
ADOTable2DSDesigner15: TBCDField;
ADOTable2DSDesigner16: TBCDField;
ADOTable2DSDesigner17: TStringField;
ADOTable2DSDesigner18: TStringField;
ADOTable2DSDesigner19: TStringField;
ADOTable2DSDesigner20: TStringField;
ADOTable2DSDesigner21: TStringField;
ADOQuery1DSDesigner: TStringField;
ADOQuery1DSDesigner2: TStringField;
ADOQuery1DSDesigner3: TStringField;
ADOQuery1DSDesigner4: TStringField;
ADOQuery1DSDesigner5: TFloatField;
ADOQuery1DSDesigner6: TStringField;
ADOTable3: TADOTable;
ADOTable3DSDesigner: TStringField;
ADOTable3DSDesigner2: TStringField;
ADOTable3DSDesigner3: TStringField;
ADOTable3DSDesigner4: TStringField;
ADOTable3DSDesigner5: TBCDField;
ADOTable3DSDesigner6: TFloatField;
ADOTable3DSDesigner7: TFloatField;
ADOQuery2DSDesigner20: TStringField;
ADOTable1DSDesigner14: TStringField;
ADOTable2DSDesigner14: TStringField;
ADOTable1DSDesigner22: TStringField;
Label3: TLabel;
ComboBox1: TComboBox;
ADOQuery3: TADOQuery;
ADOQuery2DSDesigner21: TStringField;
procedure FormShow(Sender: TObject);
procedure DataSource2DataChange(Sender: TObject; Field: TField);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure ComboBox1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
YWGL_SBWX: TYWGL_SBWX;
implementation
uses YWGL_SBWX_fyFORM, MR_WXFORM;
{$R *.DFM}
Procedure TYWGL_SBWX.FormShow(Sender: TObject); //初始化
begin
dbgrid2.Refresh;
dbgrid3.refresh;
bevel1.Refresh;
label1.Refresh;
label2.refresh;
label3.refresh;
adoquery3.First;
combobox1.Items.Clear;
while not adoquery3.Eof do begin
combobox1.Items.add(adoquery3.fieldbyname('库房').asstring);
adoquery3.Next;
end;
combobox1.ItemIndex:=0;
adoquery2.Filter:=format('维修部门'+'='+'''%s''',[combobox1.text]);
adotable2.filter:=adoquery2.filter;
adotable1.filter:=adoquery2.filter;
end;
procedure TYWGL_SBWX.DataSource2DataChange(Sender: TObject; Field: TField);
begin
If adoquery2.RecordCount <> 0 Then begin
adoquery1.close;
adoquery1.SQL.clear;
adoquery1.sql.add('select * from 职员工作表 where 现有工作='''+adoquery2.fieldbyname('单号').asstring+'''');
adoquery1.open;
edit1.text:=adoquery1.fieldbyname('职员').asstring;
edit2.text:=adoquery2.fieldbyname('单号').asstring;
end;
end;
procedure TYWGL_SBWX.BitBtn1Click(Sender: TObject); //修复交工
begin
If adoquery2.RecordCount = 0 Then begin
showmessage('现在没有维修的设备。');
exit;
end;
if messagedlg('您确定'+adoquery2.fieldbyname('单号').asstring+'号维修单以修复吗??',
mtWarning,[mbyes,mbno],0)=mryes then begin
adoquery2.Edit;
if application.FindComponent('YWGL_SBWX_FY')=nil then application.CreateForm(TYWGL_SBWX_FY,YWGL_SBWX_FY);
YWGL_SBWX_FY.DBEdit1.DataSource:=YWGL_SBWX.DataSource2;
YWGL_SBWX_FY.showmodal; //调入付费窗口
if application.FindComponent('YWGL_SBWX_FY')<>nil then YWGL_SBWX_FY.Release;
adotable1.InsertRecord([adoquery2.fieldbyname('单号').asstring,date, //修复登记
adoquery2.fieldbyname('设备名称').asstring,
adoquery2.fieldbyname('品牌、机型').asstring,
adoquery2.fieldbyname('整机型号').asstring,
adoquery2.fieldbyname('版机号').asstring,
adoquery2.fieldbyname('序号').asstring,
adoquery2.fieldbyname('故障现象').asstring,
adoquery2.fieldbyname('故障原因').asstring,
adoquery2.fieldbyname('故障部位').asstring,'以修复',
adoquery2.fieldbyname('所需备件').asstring,
adoquery2.fieldbyname('备件费用').asstring,
adoquery2.fieldbyname('费用').asstring,
adoquery2.fieldbyname('费用').asfloat+
adoquery2.fieldbyname('备件费用').asfloat,
adoquery2.fieldbyname('客户').asstring,
adoquery2.fieldbyname('联系电话').asstring,
adoquery2.fieldbyname('联系人').asstring,
adoquery2.fieldbyname('维修人').asstring,
adoquery2.fieldbyname('详细说明').asstring,
adoquery2.fieldbyname('附件信息').asstring,
adoquery2.fieldbyname('维修部门').asstring]);
adotable2.InsertRecord([adoquery2.fieldbyname('单号').asstring,date,
adoquery2.fieldbyname('设备名称').asstring,
adoquery2.fieldbyname('品牌、机型').asstring,
adoquery2.fieldbyname('整机型号').asstring,
adoquery2.fieldbyname('版机号').asstring,
adoquery2.fieldbyname('序号').asstring,
adoquery2.fieldbyname('故障现象').asstring,
adoquery2.fieldbyname('故障原因').asstring,
adoquery2.fieldbyname('故障部位').asstring,'以修复',
adoquery2.fieldbyname('所需备件').asstring,
adoquery2.fieldbyname('备件费用').asstring,
adoquery2.fieldbyname('费用').asstring,
adoquery2.fieldbyname('费用').asfloat+
adoquery2.fieldbyname('备件费用').asfloat,
adoquery2.fieldbyname('客户').asstring,
adoquery2.fieldbyname('联系电话').asstring,
adoquery2.fieldbyname('联系人').asstring,
adoquery2.fieldbyname('维修人').asstring,
adoquery2.fieldbyname('详细说明').asstring,
adoquery2.fieldbyname('维修部门').asstring]);
//------------------------------------------------------------------------------
adotable3.close;
adotable3.tablename:='职员工作记录';
adotable3.Open;
adotable3.InsertRecord([adoquery1.fieldbyname('职员').asstring, //工作记录登记
adoquery1.fieldbyname('派修日期').asstring,datetimetostr(date),
adoquery1.fieldbyname('现有工作').asstring,
adoquery2.fieldbyname('费用').asstring,
adoquery1.fieldbyname('提成百分比').asstring,
(adoquery2.fieldbyname('费用').asfloat/100)*
adoquery1.fieldbyname('提成百分比').asfloat]);
//------------------------------------------------------------------------------
adotable3.close;
adotable3.tablename:='职员工资';
adotable3.Open;
adotable3.InsertRecord([adoquery1.fieldbyname('职员').asstring,
adoquery1.fieldbyname('派修日期').asstring,datetimetostr(date),
adoquery1.fieldbyname('现有工作').asstring,
adoquery2.fieldbyname('费用').asstring,
adoquery1.fieldbyname('提成百分比').asstring,
(adoquery2.fieldbyname('费用').asfloat/100)*
adoquery1.fieldbyname('提成百分比').asfloat]);
//------------------------------------------------------------------------------
adoquery1.Edit;
adoquery1.fieldbyname('现有工作').asstring:='';
adoquery1.fieldbyname('派修日期').asstring:='';
adoquery1.post;
//------------------------------------------------------------------------------
adoquery2.Delete;
showmessage('登记完毕。');
end;
end;
procedure TYWGL_SBWX.ComboBox1Click(Sender: TObject); //选择部门
begin
adoquery2.Filter:=format('维修部门'+'='+'''%s''',[combobox1.text]);
adotable2.filter:=adoquery2.filter;
adotable1.filter:=adoquery2.filter;
end;
procedure TYWGL_SBWX.BitBtn2Click(Sender: TObject); //退出
begin
close;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -