📄 gztj.pas
字号:
sql.Add(gzgnstr);
prepare;
open;
end;
if datamodule1.ggjss.Eof then//没有此工资项目
begin
datamodule1.gztj.fieldbyname('a_mon'+inttostr(i_month)).asfloat:=0.00;
end
else
begin
datamodule1.gztj.fieldbyname('a_mon'+inttostr(i_month)).asfloat:=datamodule1.gzgnss.fieldbyname(datamodule1.ggjss.fieldbyname('a_smdm').asstring).asfloat;
end;
i_month:=i_month+1;
end;
datamodule1.gztj.post;
datamodule1.gzgns.Next;
end;
//全部复制完
if (edit7.text='') or (edit8.text='') then
begin
showmessage('请输入编号和姓名');
end
else
begin
gztjstr:='select *from gztj where a_number='+''''+edit7.text+'''';
gztjstr:=gztjstr+' and a_name='+''''+edit8.text+'''';
with datamodule1.gztjs do
begin
close;
sql.clear;
sql.add(gztjstr);
prepare;
open;
end;
if datamodule1.gztjs.Eof then
showmessage('查无此人或此人在本年没有工资录入,请重新选择')
else
begin
i_month:=1;
dblistbox1.clear;
dblistbox2.Clear;
chart1.title.text.text:='年工资统计报表分析';
series1.Clear;
series2.Clear;
series3.Clear;
while i_month<=12 do
begin
dblistbox1.Items.add(inttostr(i_month));
dblistbox2.items.add(floattostr(datamodule1.gztjs.fieldbyname('a_mon'+inttostr(i_month)).asfloat));
series1.Add(datamodule1.gztjs.fieldbyname('a_mon'+inttostr(i_month)).asfloat,inttostr(i_month)+'月',clred);
series2.Add(datamodule1.gztjs.fieldbyname('a_mon'+inttostr(i_month)).asfloat,inttostr(i_month)+'月',cllime);
series3.Addpie(datamodule1.gztjs.fieldbyname('a_mon'+inttostr(i_month)).asfloat,inttostr(i_month)+'月',clred);
i_month:=i_month+1;
end;//while
end;//else
end;//else
end;//最上面的if 请选要统计的工资项目
end;
procedure Tgztjb.Button11Click(Sender: TObject);
begin
self.close;
end;
procedure Tgztjb.Edit7KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
var
yggbstr:string;
begin
if inttostr(key)='13' then
begin
yggbstr:='select *from yggb where a_number like ';
yggbstr:=yggbstr+''''+'%'+edit3.text+'%'+''''+' or a_name like ';
yggbstr:=yggbstr+''''+'%'+edit4.text+'%'+'''';
with datamodule1.yggb do
begin
close;
sql.clear;
sql.add(yggbstr);
prepare;
open;
end;
if datamodule1.yggb.Eof then
showmessage('查无此人')
else
dbgrid7.visible:=true;
end;
end;
procedure Tgztjb.RadioButton1Click(Sender: TObject);
begin
if radiobutton1.checked=true then
begin
chart1.serieslist[1].active:=true;
chart1.SeriesList[0].Active :=false;
chart1.serieslist[2].active:=false;
end;
end;
procedure Tgztjb.RadioButton2Click(Sender: TObject);
begin
if radiobutton2.checked=true then
begin
chart1.SeriesList[1].Active :=false;
chart1.serieslist[0].active:=true;
chart1.serieslist[2].active:=false;
end;
end;
procedure Tgztjb.RadioButton3Click(Sender: TObject);
begin
if radiobutton3.checked=true then
begin
chart1.serieslist[2].active:=true;
chart1.SeriesList[1].Active :=false;
chart1.serieslist[0].active:=false;
end;
end;
procedure Tgztjb.Edit6Click(Sender: TObject);
begin
dbgrid7.visible:=true;
end;
procedure Tgztjb.ComboBox3DropDown(Sender: TObject);
var
ggjsstr:string;
begin
combobox5.Clear;
ggjsstr:='select a_gzcm from ggjs where extract(year from a_date)='+edit1.text;
ggjsstr:=ggjsstr+' group by a_gzcm';
with datamodule1.ggjss do
begin
close;
sql.clear;
sql.add(ggjsstr);
prepare;
open
end;
while not datamodule1.ggjss.Eof do
begin
if datamodule1.ggjss.FieldByName('a_gzcm').asstring<>'' then
combobox3.Items.Add(datamodule1.ggjss.fieldbyname('a_gzcm').asstring);
datamodule1.ggjss.next;
end;
end;
procedure Tgztjb.ComboBox4DropDown(Sender: TObject);
begin
dbgrid7.visible:=true;
end;
procedure Tgztjb.DBGrid5DblClick(Sender: TObject);
begin
edit12.text:=datamodule1.rsbm.fieldbyname('a_bm').asstring;
edit10.text:=datamodule1.rsbm.fieldbyname('a_bz').asstring;
end;
procedure Tgztjb.dbgrid7DblClick(Sender: TObject);
begin
edit13.text:=datamodule1.yggb.fieldbyname('a_bm').asstring;
edit6.text:=datamodule1.yggb.fieldbyname('a_bz').asstring;
edit7.text:=datamodule1.yggb.fieldbyname('a_number').asstring;
edit8.text:=datamodule1.yggb.fieldbyname('a_name').asstring;
dbgrid7.visible:=false;
end;
procedure Tgztjb.treeview1KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key in [37..40] then
begin
if treeview1.Selected.haschildren=true then
begin
if treeview1.Selected.level<>0 then
begin
if pos('(',treeview1.Selected.parent.Text)=0 then
edit11.text:=treeview1.selected.parent.text
else
edit1.text:=copy(treeview1.selected.parent.text,1,pos('(',treeview1.selected.parent.text)-1);
if pos('(',treeview1.selected.text)=0 then
edit2.text:=treeview1.Selected.Text
else
edit2.text:=copy(treeview1.selected.text,1,pos('(',treeview1.selected.text)-1);
end;
end;//if treeview1
if treeview1.selected.level<>0 then
begin
if pos('(',treeview1.Selected.parent.Text)=0 then
edit11.text:=treeview1.selected.parent.text
else
edit11.text:=copy(treeview1.selected.parent.text,1,pos('(',treeview1.selected.parent.text)-1);
if pos('(',treeview1.selected.text)=0 then
edit2.text:=treeview1.Selected.Text
else
edit2.text:=copy(treeview1.selected.text,1,pos('(',treeview1.selected.text)-1);
end;
end;//if inttostr
if key=13 then
begin
if (treeview1.Selected.HasChildren=true) and (treeview1.Selected.Level=0) then
begin
showmessage('请先选择好班组,谢谢!');
i_key13:=true;
treeview1.Selected.getFirstChild.Selected:=true;
end//if (
else
begin
if i_key13=false then
treeview1.visible:=false;
//
if treeview1.Selected.haschildren=true then
begin
if treeview1.Selected.level<>0 then
begin
if pos('(',treeview1.Selected.parent.Text)=0 then
edit11.text:=treeview1.selected.parent.text
else
edit11.text:=copy(treeview1.selected.parent.text,1,pos('(',treeview1.selected.parent.text)-1);
if pos('(',treeview1.selected.text)=0 then
edit2.text:=treeview1.Selected.Text
else
edit2.text:=copy(treeview1.selected.text,1,pos('(',treeview1.selected.text)-1);
end;
end//if treeview1
else
begin
if pos('(',treeview1.Selected.Text)=0 then
edit11.text:=treeview1.selected.text
else
edit11.text:=copy(treeview1.selected.text,1,pos('(',treeview1.selected.text)-1);
edit2.text:='';
end;//else
if treeview1.selected.level<>0 then
begin
if pos('(',treeview1.Selected.parent.Text)=0 then
edit11.text:=treeview1.selected.parent.text
else
edit11.text:=copy(treeview1.selected.parent.text,1,pos('(',treeview1.selected.parent.text)-1);
if pos('(',treeview1.selected.text)=0 then
edit2.text:=treeview1.Selected.Text
else
edit2.text:=copy(treeview1.selected.text,1,pos('(',treeview1.selected.text)-1);
end;
//
i_key13:=false;
end;
end;//if key 13
if key=27 then
treeview1.visible:=false;
end; //begin
procedure Tgztjb.Edit11Enter(Sender: TObject);
begin
treeview1.visible:=true;
with (sender as tedit) do
color:=cllime;
treeview1.setfocus;
end;
procedure Tgztjb.Edit2Enter(Sender: TObject);
begin
with (sender as tedit) do
color:=cllime;
treeview2.visible:=true;
treeview2.setfocus;
end;
procedure Tgztjb.Edit11Exit(Sender: TObject);
begin
with (sender as tedit) do
color:=clwhite;
end;
procedure Tgztjb.Edit2Exit(Sender: TObject);
begin
with (sender as tedit) do
color:=clwhite;
end;
procedure Tgztjb.TreeView2KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key in [37..40] then
begin
if treeview2.Selected.haschildren=true then
begin
if treeview2.Selected.level<>0 then
begin
if pos('(',treeview2.Selected.parent.Text)=0 then
edit12.text:=treeview2.selected.parent.text
else
edit12.text:=copy(treeview2.selected.parent.text,1,pos('(',treeview2.selected.parent.text)-1);
if pos('(',treeview2.selected.text)=0 then
edit10.text:=treeview2.Selected.Text
else
edit10.text:=copy(treeview2.selected.text,1,pos('(',treeview2.selected.text)-1);
end;
end;//if treeview1
if treeview2.selected.level<>0 then
begin
if pos('(',treeview2.Selected.parent.Text)=0 then
edit12.text:=treeview2.selected.parent.text
else
edit12.text:=copy(treeview2.selected.parent.text,1,pos('(',treeview2.selected.parent.text)-1);
if pos('(',treeview2.selected.text)=0 then
edit10.text:=treeview2.Selected.Text
else
edit10.text:=copy(treeview2.selected.text,1,pos('(',treeview2.selected.text)-1);
end;
end;//if inttostr
if key=13 then
begin
if (treeview2.Selected.HasChildren=true) and (treeview2.Selected.Level=0) then
begin
showmessage('请先选择好班组,谢谢!');
i_key13:=true;
treeview2.Selected.getFirstChild.Selected:=true;
end//if (
else
begin
if i_key13=false then
treeview2.visible:=false;
//
if treeview2.Selected.haschildren=true then
begin
if treeview2.Selected.level<>0 then
begin
if pos('(',treeview2.Selected.parent.Text)=0 then
edit12.text:=treeview2.selected.parent.text
else
edit12.text:=copy(treeview2.selected.parent.text,1,pos('(',treeview2.selected.parent.text)-1);
if pos('(',treeview2.selected.text)=0 then
edit10.text:=treeview2.Selected.Text
else
edit10.text:=copy(treeview2.selected.text,1,pos('(',treeview2.selected.text)-1);
end;
end//if treeview1
else
begin
if pos('(',treeview2.Selected.Text)=0 then
edit12.text:=treeview2.selected.text
else
edit12.text:=copy(treeview2.selected.text,1,pos('(',treeview2.selected.text)-1);
edit10.text:='';
end;//else
if treeview2.selected.level<>0 then
begin
if pos('(',treeview2.Selected.parent.Text)=0 then
edit12.text:=treeview2.selected.parent.text
else
edit12.text:=copy(treeview2.selected.parent.text,1,pos('(',treeview2.selected.parent.text)-1);
if pos('(',treeview2.selected.text)=0 then
edit10.text:=treeview2.Selected.Text
else
edit10.text:=copy(treeview2.selected.text,1,pos('(',treeview2.selected.text)-1);
end;
//
i_key13:=false;
end;
end;//if key 13
if key=27 then
treeview2.visible:=false;
end;
procedure Tgztjb.Edit12Enter(Sender: TObject);
begin
with (sender as tedit) do
color:=cllime;
treeview2.visible:=true;
treeview2.setfocus;
end;
procedure Tgztjb.Edit12Exit(Sender: TObject);
begin
with (sender as tedit) do
color:=clwhite;
end;
procedure Tgztjb.DBGrid2DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
var
lastcolor: TColor;
begin
with (Sender as TDBGrid) do
begin
lastcolor := clred;
case DataSource.DataSet.RecNo mod 2 of
1: lastcolor := $00F5FEFD;
0: lastcolor := clwhite;
end;
if gdSelected in State then
lastcolor := clred; //选中行背景为绿色
Canvas.Brush.Color := lastcolor;
DefaultDrawDataCell(Rect, Column.Field, State);
end;
end;
procedure Tgztjb.dbgrid7KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key=13 then
begin
edit13.text:=datamodule1.yggb.fieldbyname('a_bm').asstring;
edit6.text:=datamodule1.yggb.fieldbyname('a_bz').asstring;
edit7.text:=datamodule1.yggb.fieldbyname('a_number').asstring;
edit8.text:=datamodule1.yggb.fieldbyname('a_name').asstring;
dbgrid7.visible:=false;
end;
if key=27 then
dbgrid7.visible:=false;
end;
procedure Tgztjb.DBGrid2KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key=13 then
begin
edit11.text:=datamodule1.yggb.fieldbyname('a_bm').asstring;
edit2.text:=datamodule1.yggb.fieldbyname('a_bz').asstring;
edit3.text:=datamodule1.yggb.fieldbyname('a_number').asstring;
edit4.text:=datamodule1.yggb.fieldbyname('a_name').asstring;
dbgrid2.visible:=false;
end;
if key=27 then
begin
dbgrid2.visible:=false;
end;
end;
procedure Tgztjb.Edit13Enter(Sender: TObject);
begin
with (sender as tedit) do
color:=cllime;
dbgrid7.visible:=true;
dbgrid7.setfocus;
end;
procedure Tgztjb.Edit13Exit(Sender: TObject);
begin
with (sender as tedit) do
color:=clwhite;
end;
procedure Tgztjb.FormClose(Sender: TObject; var Action: TCloseAction);
begin
self.release;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -