📄 tcourserewardunit.pas
字号:
id:='1'
else
id:=inttostr(strtoint(id)+1);
end;
Result := id;
UnoQry.Free;
end;
procedure TTCourseRewardForm.GridMouseWheel(Sender: TObject;
Shift: TShiftState; WheelDelta: Integer; MousePos: TPoint;
var Handled: Boolean);
begin
TDBGrid(Sender).DataSource.DataSet.MoveBy(-WheelDelta div WHEEL_DELTA);
Handled := True;
end;
procedure TTCourseRewardForm.DBGrid1DrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
begin
if gdSelected in State then Exit; //隔行改变网格背景色:
if adoquery1.RecNo mod 2 = 0 then
(Sender as TDBGrid).Canvas.Brush.Color := clinfobk //定义背景颜色
else
(Sender as TDBGrid).Canvas.Brush.Color := RGB(191, 255, 223); //定义背景颜色
//定义网格线的颜色:
DBGrid1.DefaultDrawColumnCell(Rect,DataCol,Column,State);
with (Sender as TDBGrid).Canvas do //画 cell 的边框
begin
Pen.Color := $00ff0000; //定义画笔颜色(蓝色)
MoveTo(Rect.Left, Rect.Bottom); //画笔定位
LineTo(Rect.Right, Rect.Bottom); //画蓝色的横线
Pen.Color := clbtnface; //定义画笔颜色(兰色)
MoveTo(Rect.Right, Rect.Top); //画笔定位
LineTo(Rect.Right, Rect.Bottom); //画绿色
end;
end;
procedure TTCourseRewardForm.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
adoquery1.Close;
Action := caFree;
TCourseRewardForm := nil;
end;
procedure TTCourseRewardForm.FormShow(Sender: TObject);
begin
adoquery1.Open;
with adoquery1 do
begin
edttclessoncount.Text := fieldByName('tclessoncount').AsString;
edttrtime.Text:= fieldbyname('trtime').AsString;
edttrmemo.Text:=fieldbyname('trmemo').AsString;
edttcdepartment.Text:=fieldbyname('tcdepartment').AsString;
edttrstandard.Text:= fieldbyname('trstandard').AsString;
end;
ControlTheEnablePro(true);
end;
procedure TTCourseRewardForm.FormCreate(Sender: TObject);
var
adoqry:Tadoquery;
begin
adoqry:=Tadoquery.Create(self);
with adoqry do
begin
connection:=dm.ADOConnection1;
sql.Text:='select * from TDataParam where DTypeId=002';
Open;
while not eof do
begin
ComboBox3.Items.Add(fieldByname('DName').AsString);
next;
end;
end;
TControlAccess(DBGrid1).OnMouseWheel := GridMouseWheel;
end;
procedure TTCourseRewardForm.BitBtn5Click(Sender: TObject);
begin
ControlTheEnablePro(true);
end;
procedure TTCourseRewardForm.BitBtn4Click(Sender: TObject);
begin
if temptrno ='' then
begin
showmessage('此项是空记录,不能修改操作!');
end
else
begin
flag:=2;
ControlTheEnablePro(false);
end;
end;
procedure TTCourseRewardForm.BitBtn7Click(Sender: TObject);
begin
close;
end;
procedure TTCourseRewardForm.BitBtn6Click(Sender: TObject);
var
sqlstr,uno :string;
begin
uno := GetUno;
adoquery2.Open;
if flag= 1 then
begin
sqlStr := 'INSERT TCourseReward(trno,tcno,tremuneration,trtax,trwages,'
+'trmemo,trstandard,trtaxrate,trtime)'
+ 'Values('
+ QuotedStr(uno)+','
+ QuotedStr(temptcno)+','
+ QuotedStr(edttremuneration.Text)+','
+ QuotedStr(edttrtax.Text)+','
+ QuotedStr(edttrwages.Text)+','
+ QuotedStr(edttrmemo.Text)+','
+ QuotedStr(edttrstandard.Text)+','
+ QuotedStr(edttrtaxrate.Text)+','
+ QuotedStr(datetostr(DtrDTP.Date))
+')';
ToExecSQL(sqlStr, DM.ADOConnection1);
showmessage('添加成功!');
end
else
if flag = 2 then
begin
sqlStr := 'UPDATE TCourseReward SET tcno=' + QuotedStr(temptcno) +','
+ 'trno=' + QuotedStr(temptrno) +','
+ 'tremuneration=' + QuotedStr(edttremuneration.Text) +','
+ 'trtax=' + QuotedStr(edttrtax.Text) +','
+ 'trwages=' + QuotedStr(edttrwages.Text) +','
+ 'trmemo=' + QuotedStr(edttrmemo.Text) +','
+ 'trstandard=' + QuotedStr(edttrstandard.Text) +','
+ 'trtaxrate=' + QuotedStr(edttrtaxrate.Text) +','
+ 'trtime=' + QuotedStr(datetostr(DtrDTP.Date))
+ 'WHERE trno=' + QuotedStr(temptrno);
ToExecSQL(sqlStr, DM.ADOConnection1);
showmessage('修改成功!');
end;
adoquery1.close;
adoquery1.open;
ControlTheEnablePro(true);
end;
procedure TTCourseRewardForm.ADOQuery1AfterScroll(DataSet: TDataSet);
var
adoqry:Tadoquery;
begin
adoquery1.Open;
with adoquery1 do
begin
temptrno:= fieldByName('trno').AsString;
temptcno:= fieldByName('tcno').AsString;
edttcname.Text := fieldByName('tname').AsString;
edttclessoncount.Text := fieldByName('tclessoncount').AsString;
edttrmemo.Text:=fieldbyname('trmemo').AsString;
edttcpost.Text:=fieldbyname('tpost').AsString;
edttcdepartment.Text:=fieldbyname('tcdepartment').AsString;
edttrwages.Text:=fieldbyname('trwages').AsString;
edttrtaxrate.Text:=fieldbyname('trtaxrate').AsString;
edttremuneration.Text:=fieldbyname('tremuneration').AsString;
edttrtax.Text:=fieldbyname('trtax').AsString;
edttrtaxrate.Text:=fieldbyname('trtaxrate').AsString;
edttrstandard.Text:= fieldbyname('trstandard').AsString;
if fieldbyname('trtime').AsString<>'' then
DtrDTP.Date:=strtodate(fieldbyname('trtime').AsString)
else
begin
end;
if fieldByName('tbool').AsString = '是' then
cbtcout.Checked:=true
else
cbtcout.Checked:=false;
adoqry:=Tadoquery.Create(self);
with adoqry do
begin
connection:=dm.ADOConnection1;
sql.Text:='select tctime from TCourse where 1=1 and tcno='+ quotedstr(adoquery1.fieldbyname('tcno').AsString);
open;
edttrtime.Text:= fieldbyname('tctime').AsString;
end;
adoqry.Free;
end;
end;
procedure TTCourseRewardForm.btnFindClick(Sender: TObject);
var
sqlStr:string;
begin
adoquery1.Open;
sqlStr :='SELECT tc.tcscode,tc.tctime,tc.tcno,tt.tcdepartment,'
+'tr.trno,tt.tname,tr.trstandard,tr.tremuneration,'
+'tc.tclessoncount,tt.tpost,tr.trtaxrate,tr.trtax,tr.trwages,tr.trmemo,tr.trtime,tt.tbool '
+'from TTeacher tt '
+'inner join TCourse tc on tt.tno=tc.tcscode '
+'inner join TCourseReward tr on tc.tcno= tr.tcno WHERE 1=1';
if combobox1.ItemIndex <> 0 then
sqlStr := sqlstr+'AND tt.tbool=' + QuotedStr(combobox1.Text);
if edtyear.Text <> '' then
sqlStr := sqlstr+ ' AND tc.tctime like ''%'+ edtyear.Text + '%''';
if cbmonth.ItemIndex <> 0 then
sqlStr := sqlstr+ ' AND tc.tctime like ''%' + cbmonth.Text +'_' +'_' +'_''';
if combobox3.ItemIndex <> 0 then
sqlStr := sqlstr+ ' AND tt.tpost like ''%'+ combobox3.Text + '%''';
with adoquery1 do
begin
Sql.Text := sqlStr;
Open;
end;
edtyear.Text:='';
combobox1.ItemIndex:=0;
cbmonth.ItemIndex:=0;
combobox3.ItemIndex:=0;
end;
procedure TTCourseRewardForm.BitBtn2Click(Sender: TObject);
begin
if temptrno<>'' then
begin
showmessage('此项已经有记录,不能添加操作!');
end
else
begin
flag:=1;
ControlTheEnablePro(false);
edttremuneration.Text:='';
edttrtax.Text:='';
edttrwages.Text:='';
edttrmemo.Text:='';
edttrstandard.Text:='';
edttrtaxrate.Text:='';
DtrDTP.Date:=now;
edttremuneration.SetFocus;
end;
end;
procedure TTCourseRewardForm.BitBtn3Click(Sender: TObject);
var
sqlstr:string;
begin
if messagebox(handle,'您确定要删除吗?','提示',MB_YESNO + MB_ICONQUESTION)=ID_yes then
begin
adoquery2.Open;
sqlStr := 'delete from TCourseReward where trno='+quotedstr(temptrno);
ToExecSQL(sqlStr, DM.ADOConnection1);
showmessage('删除成功!');
adoquery1.Close;
adoquery1.Open;
end;
end;
procedure TTCourseRewardForm.Button2Click(Sender: TObject);
var
sqlstr:string;
begin
sqlStr :='SELECT tc.tcscode,tc.tctime,tc.tcno,tc.tcdepartment,'
+'tr.trno,tc.tcname,tr.trstandard,tr.tremuneration,'
+'tc.tclessoncount,tc.tcpost,tr.trtaxrate,tr.trtax,'
+'tr.trwages,tr.trmemo,tr.trtime,'
+'tc.tcout from TCourse tc left outer join TCourseReward tr on tc.tcno= tr.tcno ';
with adoquery1 do
begin
Sql.Text := sqlStr;
Open;
end;
end;
procedure TTCourseRewardForm.btnReportClick(Sender: TObject);
begin
TCourseRewardQRForm.QuickRep1.Preview;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -