【delphi开源代码栏目提醒】:网学会员,鉴于大家对delphi开源代码十分关注,论文会员在此为大家搜集整理了“yskmlb.pas”一文,供大家参考学习!
unit yskmlb;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DBTables, DB, StdCtrls, Grids, DBGrids, DBCtrls;
type
Tfrmyskmlb = class(TForm)
Labname: TLabel;
Labpass: TLabel;
Dacomdm: TDBComboBox;
Dacomyslbmc: TDBComboBox;
DBGrid1: TDBGrid;
cmdadd: TButton;
cmdmodi: TButton;
cmdsearch: TButton;
cmdpre: TButton;
cmdnext: TButton;
cmdstore: TButton;
cmddel: TButton;
cmdquit: TButton;
DataSource1: TDataSource;
Database1: TDatabase;
Tableyskmlb: TTable;
Tableyskmlb2: TTable;
cmddis: TButton;
procedure cmdaddClick(Sender: TObject);
procedure setbuttons(bval:boolean);
function storeyskmlb():boolean;
procedure cmddelClick(Sender: TObject);
procedure cmdstoreClick(Sender: TObject);
procedure cmdpreClick(Sender: TObject);
procedure cmdnextClick(Sender: TObject);
procedure cmdmodiClick(Sender: TObject);
procedure cmdquitClick(Sender: TObject);
procedure cmdsearchClick(Sender: TObject);
procedure cmddisClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
frmyskmlb: Tfrmyskmlb;
addrecord:integer;
m_yslbdm:string;
m_yslbmc:string;
implementation
{$R *.dfm}
procedure Tfrmyskmlb.cmdaddClick(Sender: TObject);
begin
addrecord:=1;
setbuttons(false);
dacomdm.SetFocus;
Tableyskmlb.Append;
end;
procedure Tfrmyskmlb.setbuttons(bval:boolean);
begin
cmdadd.Enabled:=bval;
cmdmodi.Enabled:=bval;
cmdsearch.Enabled:=bval;
cmddis.Enabled:=bval;
cmdpre.Enabled:=bval;
cmdnext.Enabled:=bval;
cmddel.Enabled:=bval;
cmdstore.Enabled:=not bval;
//cmddel.Enabled:=not bval;
if cmdquit.Caption='退出' then
cmdquit.Caption:='取消'
else
cmdquit.Caption:='退出';
dacomdm.Enabled:=not bval;
dacomyslbmc.Enabled:=not bval;
end;
function Tfrmyskmlb.storeyskmlb():boolean;
var
note:array[1..5] of string;
label checkyslbmc;
begin
result:=false;
note[1]:='预算科目类别代码不能为空!';
note[2]:='预算科目类别名称不能为空!';
note[3]:='该类别代码已经存在!';
note[4]:='该类别名称已经存在!';
if dacomdm.Text='' then
begin
showmessage(note[1]);
dacomdm.SetFocus;
exit;
end;
if dacomyslbmc.Text='' then
begin
showmessage(note[2]);
dacomyslbmc.SetFocus;
exit;
end;
if addrecord=1 then
tableyskmlb2.Filter:='dm='''+dacomdm.Text+''''
//tableuser2.Filter:='yhmc='''+'111'+''''
else
if m_yslbdm=dacomdm.Text then
goto checkyslbmc
else
tableyskmlb2.Filter:='dm='''+ dacomdm.Text+'''';
if not tableyskmlb2.Eof then
begin
showmessage(note[3]);
dacomdm.SetFocus;
exit;
end;
//query1.close;
//query1.SQL.clear;
//if addrecord=1 then
// begin
// query1.SQL.add('select * from companyuser where yhmc=:p1');
// query1.ParamByname('p1').AsString := dacomname.Text;
//end
//else
// begin
// query1.SQL.add('select * from companyuser where yhmc=:p1 and pass
word=:p2');
// query1.ParamByname('p1').AsString := dacomname.Text;
//query1.ParamByname('p2').AsString := dacompass.Text;
// end;
//Query1.Prepare;
//query1.open;
//if not query1.Eof then
// begin
// showmessage(note[4]);
// exit;
// end;
checkyslbmc:
if addrecord=1 then
tableyskmlb2.Filter:='yslbmc='''+dacomyslbmc.Text+''''
//tableuser2.Filter:='yhmc='''+'111'+''''
else
if m_yslbmc=dacomyslbmc.Text then
begin
result:=true;
exit;
end
else
tableyskmlb2.Filter:='yslbmc='''+ dacomyslbmc.Text+'''';
if not tableyskmlb2.Eof then
begin
showmessage(note[4]);
dacomyslbmc.SetFocus;
exit;
end;
result:=true;
end;
procedure Tfrmyskmlb.cmddelClick(Sender: TObject);
begin
Tableyskmlb.Delete
end;
procedure Tfrmyskmlb.cmdstoreClick(Sender: TObject);
begin
if storeyskmlb=true then
begin
tableyskmlb.Post;
setbuttons(true);
end;
end;
procedure Tfrmyskmlb.cmdpreClick(Sender: TObject);
begin
tableyskmlb.MoveBy(-1);
if tableyskmlb.Bof then
begin
showmessage('这是第一条记录!');
// tableuser.MoveBy(1);
end;
end;
procedure Tfrmyskmlb.cmdnextClick(Sender: TObject);
begin
tableyskmlb.MoveBy(1);
if tableyskmlb.Eof then
begin
showmessage('这是最后一条记录!');
//tableuser.MoveBy(-1);
end;
end;
procedure Tfrmyskmlb.cmdmodiClick(Sender: TObject);
begin
m_yslbmc:=dacomyslbmc.Text;
m_yslbdm:=dacomdm.Text;
setbuttons(false);
addrecord:=2;
tableyskmlb.Edit;
end;
procedure Tfrmyskmlb.cmdquitClick(Sender: TObject);
begin
if cmdquit.Caption='退出' then
frmyskmlb.Close
else
begin
setbutt