📄 account.pas
字号:
unit account;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
DBActns, ActnList, Grids, DBGrids, ImgList, DBCtrls, ComCtrls, ToolWin,
ExtCtrls, StdCtrls, Buttons, Db, ADODB, Menus, ppVar, ppDB, ppDBPipe,
ppDBBDE, ppCtrls, ppBands, ppPrnabl, ppClass, ppCache, ppComm, ppRelatv,
ppProd, ppReport,shellapi;
type
TFormaccount = class(TForm)
DBGrid1: TDBGrid;
Dsaccount: TDataSource;
DBGrid2: TDBGrid;
PopupMenu1: TPopupMenu;
finditems: TMenuItem;
sortitems: TMenuItem;
ImageList1: TImageList;
ToolBar1: TToolBar;
tbnfind: TToolButton;
tbnprint: TToolButton;
ToolButton4: TToolButton;
DBNavigator1: TDBNavigator;
Adoaccount: TADODataSet;
ppReport2: TppReport;
ppHeaderBand2: TppHeaderBand;
ppLabel13: TppLabel;
ppLabel14: TppLabel;
ppLabel15: TppLabel;
ppLabel16: TppLabel;
ppLabel17: TppLabel;
ppLabel18: TppLabel;
ppLabel20: TppLabel;
ppLine3: TppLine;
ppLine6: TppLine;
ppDetailBand2: TppDetailBand;
ppDBText8: TppDBText;
ppDBText9: TppDBText;
ppDBText10: TppDBText;
ppDBText12: TppDBText;
ppDBText13: TppDBText;
ppDBText14: TppDBText;
ppLine4: TppLine;
ppSummaryBand1: TppSummaryBand;
ppLabel27: TppLabel;
ppDBCalc7: TppDBCalc;
ppBDEPipeline1: TppBDEPipeline;
ADODataSet1: TADODataSet;
DataSource1: TDataSource;
ppLabel1: TppLabel;
ppLabel25: TppLabel;
ppSystemVariable1: TppSystemVariable;
ppLabel26: TppLabel;
ppLabel35: TppLabel;
ppSystemVariable4: TppSystemVariable;
Adoaccountworkno: TStringField;
Adoaccountaccount: TStringField;
Adoaccountcardno: TStringField;
AdoaccountStringField: TStringField;
AdoaccountField: TStringField;
AdoaccountField2: TStringField;
Adodataset2: TADODataSet;
Adodataset2workno: TStringField;
Adodataset2cardno: TStringField;
Adodataset2name: TStringField;
Adodataset2dept: TStringField;
Adodataset2peopleID: TStringField;
Adodataset2account: TStringField;
ToolButton1: TToolButton;
Qry1: TADOQuery;
Qry1workno: TStringField;
Qry1cardno: TStringField;
Qry1name: TStringField;
Qry1dept: TStringField;
Qry1peopleID: TStringField;
Qry1account: TStringField;
ADODataSet1workno: TStringField;
ADODataSet1cardno: TStringField;
ADODataSet1name: TStringField;
ADODataSet1dept: TStringField;
ADODataSet1peopleID: TStringField;
ADODataSet1account: TStringField;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure DBGrid1DblClick(Sender: TObject);
procedure DBGrid1KeyPress(Sender: TObject; var Key: Char);
procedure DBGrid2DblClick(Sender: TObject);
procedure DBGrid2Exit(Sender: TObject);
procedure AdoaccountworknoChange(Sender: TField);
procedure ToolButton4Click(Sender: TObject);
procedure DBGrid1TitleClick(Column: TColumn);
procedure tbnfindClick(Sender: TObject);
procedure formkeyup(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure ppReport2BeforePrint(Sender: TObject);
procedure ppReport2PreviewFormCreate(Sender: TObject);
procedure tbnprintClick(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
private
{ Private declarations }
f:string;
public
{ Public declarations }
end;
var
Formaccount: TFormaccount;
implementation
uses datamol,main,publicfunction;
{$R *.DFM}
procedure TFormaccount.FormCreate(Sender: TObject);
begin
ADOaccount.open;
datamod.adopersonal.open;
end;
procedure TFormaccount.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
ADOaccount.Close;
datamod.adopersonal.close;
formaccount:=nil;
action:=cafree;
end;
procedure TFormaccount.DBGrid1DblClick(Sender: TObject);
begin
if (dbgrid1.SelectedIndex=0) then
begin
dbgrid2.visible:=true;
dbgrid2.SetFocus;
end;
end;
procedure TFormaccount.DBGrid1KeyPress(Sender: TObject; var Key: Char);
begin
dbgrid_keypress(sender,key);
end;
procedure TFormaccount.DBGrid2DblClick(Sender: TObject);
begin
with dbgrid1.DataSource do
begin
if not dataset.Modified then
dataset.edit;
dataset.fieldbyname('workno').asstring:=datamod.adopersonalworkno.AsString;
dbgrid2.visible:=false;
dbgrid1.SetFocus;
end;
end;
procedure TFormaccount.DBGrid2Exit(Sender: TObject);
begin
dbgrid2.visible:=false;
end;
procedure TFormaccount.AdoaccountworknoChange(Sender: TField);
begin
with datamod do
begin
Query1.Close;
Query1.SQL.Text:='Select * from per24010 where workno='''+ADOaccountworkno.asstring+''' and leave=0 ';
Query1.Open;
if Query1.Eof then
begin
Application.MessageBox('你输入的工号不存在,请重新输入','工号错误',mb_OK+mb_iconerror);
end;
end;
end;
procedure TFormaccount.ToolButton4Click(Sender: TObject);
begin
close;
end;
procedure TFormaccount.DBGrid1TitleClick(Column: TColumn);
begin
if f='DESC' then
f:='ASC'
else
f:='DESC';
ADOaccount.Sort:=column.FieldName+' '+f;
end;
procedure TFormaccount.tbnfindClick(Sender: TObject);
begin
findrecorder(Adodataset2,'Adodataset2','vaccount');
end;
procedure TFormaccount.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_contents0030');
end;
end;
procedure TFormaccount.ppReport2BeforePrint(Sender: TObject);
begin
pplabel1.caption:=companyname1;
pplabel26.caption:='制表人:'+pubworkname;
end;
procedure TFormaccount.ppReport2PreviewFormCreate(Sender: TObject);
begin
tppReport(Sender).PreviewForm.WindowState:=wsMaximized;
end;
procedure TFormaccount.tbnprintClick(Sender: TObject);
begin
ppreport2.print;
end;
procedure TFormaccount.ToolButton1Click(Sender: TObject);
var
filepath:string;
i:Textfile;
begin
Qry1.close;
filepath:=extractfilepath(application.exename)+'account.txt';
assignfile(i,filepath);
rewrite(i);
writeln(i,' 全体员工银行帐号设定 ');
writeln(i,'');
writeln(i,'工号 |姓名 |身份证号 |银行帐号 ');
writeln(i,'---------------------------------------------------------------------------------------');
qry1.SQL.Clear;
qry1.SQL.Add('select * from vaccount order by workno ');
qry1.Open;
qry1.First;
while not qry1.Eof do
begin
writeln(i,Qry1workno.asstring+' |'+qry1name.asstring+' |'+Qry1peopleID.asstring+' |'+Qry1account.asstring+' |');
qry1.next;
end;
writeln(i,'---------------------------------------------------------------------------------------');
closefile(i);
shellexecute(application.Handle,'open',pchar(filepath),nil,nil,SW_MAXIMIZE);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -