📄 borrow.pas
字号:
unit borrow;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Gauges, ImgList, Menus, Grids, DBGrids, StdCtrls, ExtCtrls, DBCtrls,
ComCtrls, ToolWin, Buttons, Mask, ppCtrls, ppPrnabl, ppClass, ppBands,
ppCache, ppDB, ppProd, ppReport, ppComm, ppRelatv, ppDBPipe, ppDBBDE,
ppVar;
type
TFormborrow = class(TForm)
Panel1: TPanel;
Label2: TLabel;
DBGrid1: TDBGrid;
Label1: TLabel;
Edit1: TEdit;
ImageList2: TImageList;
ToolBar2: TToolBar;
ToolButton2: TToolButton;
ToolButton3: TToolButton;
ToolButton6: TToolButton;
tbnsort: TToolButton;
tbnfind: TToolButton;
ToolButton7: TToolButton;
ToolButton8: TToolButton;
DBNav: TDBNavigator;
Panel2: TPanel;
Splitter1: TSplitter;
Label3: TLabel;
DBEdit1: TDBEdit;
Label4: TLabel;
DBEdit2: TDBEdit;
Label5: TLabel;
DBEdit3: TDBEdit;
Label6: TLabel;
DBEdit4: TDBEdit;
Label7: TLabel;
DBEdit5: TDBEdit;
Label8: TLabel;
DBEdit6: TDBEdit;
Label9: TLabel;
DBEdit7: TDBEdit;
Label10: TLabel;
DBEdit8: TDBEdit;
Label11: TLabel;
DBEdit9: TDBEdit;
DateTimePicker1: TDateTimePicker;
Label12: TLabel;
Edit2: TEdit;
Label13: TLabel;
DBEdit10: TDBEdit;
Label14: TLabel;
DBEdit11: TDBEdit;
DBCheckBox1: TDBCheckBox;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
N4: TMenuItem;
N3: TMenuItem;
MaskEdit1: TMaskEdit;
DateTimePicker2: TDateTimePicker;
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;
ppBDEPipeline1: TppBDEPipeline;
ppReport1: TppReport;
ppHeaderBand1: TppHeaderBand;
ppDetailBand1: TppDetailBand;
ppFooterBand1: TppFooterBand;
ppDBText1: TppDBText;
ppLabel2: TppLabel;
ppDBText2: TppDBText;
ppLabel3: TppLabel;
ppDBText3: TppDBText;
ppLabel4: TppLabel;
ppDBText4: TppDBText;
ppLabel5: TppLabel;
ppDBText5: TppDBText;
ppLabel6: TppLabel;
ppDBText6: TppDBText;
ppLabel7: TppLabel;
ppDBText7: TppDBText;
ppLabel8: TppLabel;
ppDBText8: TppDBText;
ppLabel9: TppLabel;
ppDBText9: TppDBText;
ppLabel10: TppLabel;
ppDBText10: TppDBText;
ppLabel11: TppLabel;
ppLine1: TppLine;
ppLabel1: TppLabel;
ppLabel12: TppLabel;
ppLabel13: TppLabel;
ppLabel14: TppLabel;
ppLabel15: TppLabel;
ppLabel16: TppLabel;
ppLabel17: TppLabel;
ppSystemVariable1: TppSystemVariable;
ppLabel18: TppLabel;
ppSystemVariable2: TppSystemVariable;
procedure DBGrid1KeyPress(Sender: TObject; var Key: Char);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure ToolButton8Click(Sender: TObject);
procedure FormKeyPress(Sender: TObject; var Key: Char);
procedure DateTimePicker1CloseUp(Sender: TObject);
procedure tbnfindClick(Sender: TObject);
procedure DBGrid1TitleClick(Column: TColumn);
procedure tbnsortClick(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure N4Click(Sender: TObject);
procedure N3Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure DateTimePicker2CloseUp(Sender: TObject);
procedure MaskEdit1Exit(Sender: TObject);
procedure Edit1Exit(Sender: TObject);
procedure Edit2Exit(Sender: TObject);
procedure RadioButton1Click(Sender: TObject);
procedure formkeyup(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure ToolButton7Click(Sender: TObject);
procedure ppReport1BeforePrint(Sender: TObject);
procedure ppReport1PreviewFormCreate(Sender: TObject);
procedure ppDBText10GetText(Sender: TObject; var Text: String);
procedure ToolButton3Click(Sender: TObject);
private
{ Private declarations }
manyfield:boolean;
findex:array[1..5] of integer;
fsort:array[1..5] of string;
fcount:0..5;
f:string;
public
{ Public declarations }
end;
var
Formborrow: TFormborrow;
implementation
uses datamol,main,publicfunction;
{$R *.DFM}
procedure TFormborrow.DBGrid1KeyPress(Sender: TObject; var Key: Char);
begin
dbgrid_keypress(sender,key);
end;
procedure TFormborrow.FormClose(Sender: TObject; var Action: TCloseAction);
begin
datamod.ADOborrow.Close;
action:=cafree;
formborrow:=nil;
end;
procedure TFormborrow.ToolButton8Click(Sender: TObject);
begin
close;
end;
procedure TFormborrow.FormKeyPress(Sender: TObject; var Key: Char);
begin
if activecontrol=dbgrid1 then
exit;
if key=#13 then //窗体内的回车键的控制
begin
key:=#0;
perform(cm_dialogkey,vk_tab,0);
end;
end;
procedure TFormborrow.DateTimePicker1CloseUp(Sender: TObject);
begin
dbedit5.text:=datetostr(datetimepicker1.date); //单击datetimepicker时, dbeidt9中显示,dbedit10年龄自动显示
end;
procedure TFormborrow.tbnfindClick(Sender: TObject);
begin
findrecorder(datamod.adoborrow,'Adoborrow','sal09010'); //调用publicfuction中的查询功能
end;
procedure TFormborrow.DBGrid1TitleClick(Column: TColumn);
begin
if f='DESC' then
f:='ASC'
else
f:='DESC';
datamod.ADOborrow.Sort :=column.FieldName+' '+f;
end;
procedure TFormborrow.tbnsortClick(Sender: TObject);
var i:1..5;
begin
if manyfield then
begin
manyfield:=false;
tbnsort.hint:='设定多字段排序';
popupmenu1.Items[0].Enabled :=false;
popupmenu1.Items[1].Enabled :=false;
popupmenu1.Items[2].Enabled :=false;
popupmenu1.Items[3].Enabled :=false;
end
else begin
manyfield:=true;
tbnsort.hint:='取消多字段排序'; //说明现在dbgrid1正处于多字段排序中
f:='';
popupmenu1.Items[0].Enabled :=true;
popupmenu1.Items[1].Enabled :=true;
popupmenu1.Items[2].Enabled :=true;
popupmenu1.Items[3].Enabled :=true;
fcount:=0;
for i:=1 to 5 do
begin
findex[i]:=0;
fsort[i]:='';
end;
end;
end;
procedure TFormborrow.N1Click(Sender: TObject);
var i:integer;
begin
for i:=1 to fcount do
if dbgrid1.SelectedIndex =findex[i] then
begin
fsort[i]:='ASC';
exit;
end;
if fcount<5 then
begin
fcount:=fcount+1;
findex[fcount]:=dbgrid1.selectedindex;
fsort[fcount]:='ASC';
dbgrid1.Columns[dbgrid1.selectedindex].Color :=clgray;
end;
end;
procedure TFormborrow.N2Click(Sender: TObject);
var i:integer;
begin
for i:=1 to fcount do
if dbgrid1.SelectedIndex =findex[i] then
begin
fsort[i]:='DESC';
exit;
end;
if fcount<5 then
begin
fcount:=fcount+1;
findex[fcount]:=dbgrid1.selectedindex;
fsort[fcount]:='DESC';
dbgrid1.Columns[dbgrid1.selectedindex].Color :=clgray;
end;
end;
procedure TFormborrow.N4Click(Sender: TObject);
var i:1..5;
begin
datamod.ADOborrow.Sort:='';
for i:=1 to fcount do
begin
if dbgrid1.Columns[findex[i]].Color=clgray then
begin
datamod.ADOborrow.Sort :=datamod.ADOborrow.Sort+dbgrid1.Columns[findex[i]].FieldName+' '+fsort[i];
if i<fcount then datamod.ADOborrow.Sort:=datamod.ADOborrow.Sort+',';
end;
end;
end;
procedure TFormborrow.N3Click(Sender: TObject);
var i:1..5;
begin
for i:=1 to fcount do
dbgrid1.Columns[findex[i]].Color :=clwindow;
fcount:=0;
end;
procedure TFormborrow.FormCreate(Sender: TObject);
begin
datamod.ADOborrow.open;
datetimepicker1.Date:=date;
datetimepicker2.Date:=date;
maskedit1.Text:=datetostr(date);
datamod.ADOborrow.Filtered :=false;
datamod.ADOborrow.Filter :='rq='''+maskedit1.Text+''' ';
datamod.ADOborrow.Filtered :=true;
end;
procedure TFormborrow.DateTimePicker2CloseUp(Sender: TObject);
begin
maskedit1.Text :=datetostr(datetimepicker2.date);
end;
procedure TFormborrow.MaskEdit1Exit(Sender: TObject);
begin
if maskedit1.Text <>' / / ' then
begin
datamod.ADOborrow.Filtered :=false;
datamod.ADOborrow.Filter :='rq='''+maskedit1.Text+''' ';
datamod.ADOborrow.Filtered :=true;
end;
end;
procedure TFormborrow.Edit1Exit(Sender: TObject);
begin
if trim(edit1.text)<>'' then
begin
datamod.ADOborrow.Filtered :=false;
datamod.ADOborrow.Filter :='workno='''+edit1.text+''' ';
datamod.ADOborrow.Filtered :=true;
end;
end;
procedure TFormborrow.Edit2Exit(Sender: TObject);
begin
if trim(edit2.text)<>'' then
begin
datamod.ADOborrow.Filtered :=false;
datamod.ADOborrow.Filter :='name='''+edit2.text+''' ';
datamod.ADOborrow.Filtered :=true;
end;
end;
procedure TFormborrow.RadioButton1Click(Sender: TObject);
begin
datamod.ADOborrow.Filtered :=false;
if radiobutton1.Checked then
datamod.ADOborrow.Filter :='alreadyreturn=1'
else
datamod.ADOborrow.Filter :='alreadyreturn=0';
datamod.ADOborrow.Filtered :=true;
end;
procedure TFormborrow.formkeyup(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key=vk_f1 then
begin
Application.helpfile :=extractfilepath(application.exename) +'help\pasahelp.hlp';
application.HelpJump('shm_contents0033');
end;
end;
procedure TFormborrow.ToolButton7Click(Sender: TObject);
begin
ppreport1.DeviceType:='Screen';
ppreport1.Print;
end;
procedure TFormborrow.ppReport1BeforePrint(Sender: TObject);
begin
pplabel1.Caption:=companyname1;
pplabel16.Caption:=pubworkname;
if maskedit1.text<>' / / ' then
pplabel13.Caption:=maskedit1.Text
else
pplabel3.Caption:='';
end;
procedure TFormborrow.ppReport1PreviewFormCreate(Sender: TObject);
begin
tppReport(Sender).PreviewForm.WindowState:=wsMaximized;
end;
procedure TFormborrow.ppDBText10GetText(Sender: TObject; var Text: String);
begin
if text='0' then
text:='未还'
else
text:='已还';
end;
procedure TFormborrow.ToolButton3Click(Sender: TObject);
begin
datamod.ADOborrow.Filtered :=false;
datamod.ADOborrow.Filter :='';
datamod.ADOborrow.Filtered :=true;
maskedit1.Text:=' / / ';
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -