📄 cf0rq.pas
字号:
unit Cf0rq;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Cmodel, Menus, StdCtrls, ExtCtrls, Buttons, ToolWin, ComCtrls,
ImgList, Grids, DBGrids, DB, ADODB,ComObj, Gauges;
type
Tf0rq = class(Tmodel)
ToolBar1: TToolBar;
ImageList1: TImageList;
find: TToolButton;
clear: TToolButton;
copy: TToolButton;
excel: TToolButton;
output: TToolButton;
exit: TToolButton;
ToolButton7: TToolButton;
ToolButton8: TToolButton;
ToolButton9: TToolButton;
Panel1: TPanel;
Label1: TLabel;
Label3: TLabel;
ProgressBar1: TProgressBar;
DBGrid1: TDBGrid;
RichEdit1: TRichEdit;
ADOQuery1: TADOQuery;
ADOQuery2: TADOQuery;
ADOQuery3: TADOQuery;
DataSource1: TDataSource;
ADOQuery4: TADOQuery;
ADOCommand1: TADOCommand;
Label4: TLabel;
Gauge_process: TGauge;
DateTimePicker1: TDateTimePicker;
DateTimePicker2: TDateTimePicker;
Label5: TLabel;
Label6: TLabel;
procedure exitClick(Sender: TObject);
procedure findClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormShow(Sender: TObject);
procedure DataSource1DataChange(Sender: TObject; Field: TField);
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
procedure clearClick(Sender: TObject);
procedure copyClick(Sender: TObject);
procedure excelClick(Sender: TObject);
procedure DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
private
{ Private declarations }
public
{ Public declarations }
end;
type
ttable=array[1..50,1..2] of string;
var
f0rq: Tf0rq;
mytable:ttable;
implementation
uses cdata, Cmain;
{$R *.dfm}
procedure Tf0rq.exitClick(Sender: TObject);
begin
inherited;
close;
end;
procedure Tf0rq.findClick(Sender: TObject);
var
date1,date2:string;
i,j,stepcount,stepcount1:integer;
begin
inherited;
date1:=datetostr(datetimepicker1.Date);
date2:=datetostr(datetimepicker2.Date);
begin
adoquery2.Close;
adoquery2.SQL.clear;
adoquery2.sql.add('select * from 串号管理 where 录入日期 between #'+date1+'# and #'+date2+'#');
adoquery2.open;
if adoquery2.RecordCount=0 then
begin
application.MessageBox(pchar('系统中没有录入日期从:【'+date1+'】到【'+date2+'】的手机!'),'注意',64);
datetimepicker1.SetFocus;
end
else
begin
progressBar1.Visible:=true;
progressBar1.Position:=0;
stepcount:=adoquery2.RecordCount;
with progressBar1 do
begin
Min:=0;
Max:=stepcount;
Step:=1;
for i:=1 to StepCount do
begin
while not adoquery2.Eof do
begin
adocommand1.CommandText:='insert into '+main.usermc+'([机型],[序号],[箱号],[电子串号],[录入者],[录入日期]) values('''+adoquery2.fieldbyname('机型').asstring+''','''+adoquery2.fieldbyname('序号').asstring+''','''+adoquery2.fieldbyname('箱号').asstring+''','''+adoquery2.fieldbyname('电子串号').asstring+''','''+adoquery2.fieldbyname('录入者').asstring+''','''+adoquery2.fieldbyname('录入日期').asstring+''')';
adocommand1.Execute;
Stepit;
adoquery2.Next;
end;
end;
end;
end;
progressBar1.Visible:=false;
end;
adoquery3.Close;
adoquery3.SQL.clear;
adoquery3.sql.add('select * from '+main.usermc+' order by 内部编号 desc');
adoquery3.open;
end;
procedure Tf0rq.FormClose(Sender: TObject; var Action: TCloseAction);
begin
inherited;
action:=cafree;
end;
procedure Tf0rq.FormShow(Sender: TObject);
begin
inherited;
clear.Click;
datetimepicker1.DateTime:=date();
datetimepicker2.DateTime:=date();
end;
procedure Tf0rq.DataSource1DataChange(Sender: TObject; Field: TField);
begin
inherited;
label4.Caption:='共计查询到:【'+inttostr(adoquery3.RecordCount)+'】个电子串号 ';
if adoquery3.RecordCount<>0 then
begin
excel.Enabled:=true;
clear.Enabled:=true;
end
else
begin
excel.Enabled:=false;
clear.Enabled:=false;
end;
if adoquery3.RecordCount=0 then
copy.Enabled:=false
else
copy.Enabled:=true;
end;
procedure Tf0rq.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
inherited;
if key=#13 then
find.Click;
end;
procedure Tf0rq.clearClick(Sender: TObject);
begin
inherited;
adocommand1.CommandText:='delete from '+main.usermc+'' ;
adocommand1.Execute;
adoquery3.Close;
adoquery3.SQL.clear;
adoquery3.sql.add('select * from '+main.usermc+' order by 内部编号 desc');
adoquery3.open;
end;
procedure Tf0rq.copyClick(Sender: TObject);
begin
inherited;
adoquery1.Close;
adoquery1.SQL.clear;
adoquery1.sql.add('select distinct 机型 from '+main.usermc+' ');
adoquery1.open;
if adoquery1.RecordCount>1 then
application.MessageBox('本功能只能复制同一【机型】的串号!','注意',64)
else
begin
richedit1.Clear;
adoquery3.First;
while not adoquery3.Eof do
begin
richedit1.Lines.Add(''+adoquery3.fieldbyname('电子串号').asstring+'');
adoquery3.Next;
end;
richedit1.SelectAll;
richedit1.CopyToClipboard;
application.MessageBox('复制成功,可以进行粘贴!','好消息',64);
end;
end;
procedure Tf0rq.excelClick(Sender: TObject);
var
ExcelApp: Variant;
x,j,k:integer;
FileName:string;
i,stepcount,stepcount1:integer;
DlgSave:TsaveDialog;
rec,count:integer;
jxmc:string;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -