📄 localforretireaccount.pas
字号:
prepare;
open;
j:=Fields[0].AsInteger;
end;
Result:=j;
{Ayearno:='1'; //邮电,铁路,金融,民航,华东院杭机所,电力
if (industry='10') or (industry='12') or (industry='02') or (industry='01') or (industry='13') or (industry='06') then
begin
with DataShare_frm.Query2 do
begin
close;
sql.Clear ;
sql.Add('select sum(months)/12 from sbdu_pswgcase where psseno=:param and yearno<:yearno');
parambyname('param').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('yearno').AsString :='1997';
prepare;
open;
if recordcount>0 then
Ayearno:=formatfloat('0.00',Fields[0].AsFloat)
end;
end;
if (industry='05') then //石油
begin
with DataShare_frm.Query2 do
begin
close;
sql.Clear ;
sql.Add('select sum(months)/12 from sbdu_pswgcase where psseno=:param and yearno<:yearno');
parambyname('param').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('yearno').AsString :='1995';
prepare;
open;
if recordcount>0 then
Ayearno:=formatfloat('0.00',Fields[0].AsFloat)
end;
end;
if (industry='09') then //交通
begin
I:=0;
with DataShare_frm.Query3 do
begin
close;
sql.Clear ;
sql.Add('select isnull(months,0) from sbdu_pswgcase where psseno=:param and yearno=:yearno');
parambyname('param').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('yearno').AsString :='1996';
prepare;
open;
if recordcount>0 then
i:=Fields[0].AsInteger ;
if i>6 then i:=6;
end;
with DataShare_frm.Query2 do
begin
close;
sql.Clear ;
sql.Add('select sum(months)/12 from sbdu_pswgcase where psseno=:param and yearno<:yearno');
parambyname('param').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('yearno').AsString :='1995';
prepare;
open;
if recordcount>0 then
Ayearno:=formatfloat('0.00',Fields[0].AsFloat+i/12)
end;
end;
Result:=strtofloat(Ayearno);}
end;
function TLocalForRetireAccount_frm.GetByearno(industry:string):integer;
var
Ayearno:string;
i,j:integer;
begin
Ayearno:='1';
j:=0; //邮电,铁路,金融,民航,华东院杭机所,电力 (industry='10') or
if (industry='12') or (industry='02') or (industry='01') or (industry='13') then
begin
with DataShare_frm.Query2 do
begin
close;
sql.Clear ;
sql.Add('select sum(months) from sbdu_pswgcase where psseno=:param and yearno<:yearno');
parambyname('param').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('yearno').AsString :='1997';
prepare;
open;
if recordcount>0 then
j:=Fields[0].AsInteger ;
end;
end;
//---------------------------------------20041104---------------------------
if (industry='10') then
with DataShare_frm.Query2 do
begin
close;
sql.Clear ;
sql.Add('select sum(months) from sbdu_pswgcase where psseno=:param and yearno<=:yearno and yearno>1994');
parambyname('param').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('yearno').AsString :='1997';
prepare;
open;
if recordcount>0 then
j:=Fields[0].AsInteger ;
close;
sql.Clear ;
sql.Add('select case months when 0 then 12 else months end from sbdu_pswgcase where psseno=:param and yearno=:yearno');
parambyname('param').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('yearno').AsString :='1993';
prepare;
open;
j:=j+fields[0].AsInteger ;
close;
parambyname('param').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('yearno').AsString :='1994';
prepare;
open;
j:=j+fields[0].AsInteger ;
end;
//---------------------------------------20041104---------------------------
if (industry='05') then //石油
begin
with DataShare_frm.Query2 do
begin
close;
sql.Clear ;
sql.Add('select sum(months) from sbdu_pswgcase where psseno=:param and yearno<:yearno');
parambyname('param').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('yearno').AsString :='1995';
prepare;
open;
if recordcount>0 then j:=Fields[0].AsInteger ;
// Ayearno:=formatfloat('0.00',Fields[0].AsFloat)
end;
end;
if (industry='06') then //电力
begin
with DataShare_frm.Query2 do
begin
close;
sql.Clear ;
sql.Add('select sum(months) from sbdu_pswgcase where psseno=:param and yearno<:yearno');
parambyname('param').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('yearno').AsString :='1992';
prepare;
open;
if recordcount>0 then j:=Fields[0].AsInteger ;
//Ayearno:=formatfloat('0.00',Fields[0].AsFloat)
end;
end;
if (industry='09') then //交通
begin
I:=0;
with DataShare_frm.Query3 do
begin
close;
sql.Clear ;
sql.Add('select isnull(months,0) from sbdu_pswgcase where psseno=:param and yearno=:yearno');
parambyname('param').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('yearno').AsString :='1996';
prepare;
open;
if recordcount>0 then
i:=Fields[0].AsInteger ;
if i>6 then i:=6;
end;
with DataShare_frm.Query2 do
begin
close;
sql.Clear ;
sql.Add('select sum(months) from sbdu_pswgcase where psseno=:param and yearno<:yearno');
parambyname('param').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('yearno').AsString :='1995';
prepare;
open;
if recordcount>0 then j:=Fields[0].AsInteger +i;
//Ayearno:=formatfloat('0.00',Fields[0].AsFloat+i/12)
end;
end;
//Result:=strtofloat(Ayearno);
Result:=j;
end;
function TLocalForRetireAccount_frm.GetDWageIndex(industry:string):double;
var
i,j:double;
cmcpseno:integer;
begin
i:=0;
j:=0;
//2004.7.30日新增,铁劳服属于铁路行业,但计算方法,与铁路计算不一到,真烦呀!
(* if industry='12' then
begin
with DataShare_frm.Query2 do
begin
close;
sql.Clear ;
sql.Add('select cmcpseno from sbdb_cparch where cpseno=:p1');
parambyname('p1').AsString :=Flatcombobox5.Items[Flatcombobox6.ItemIndex];
prepare;
open;
cmcpseno:=Fields[0].AsInteger ;
end;
end; *)
if ((industry='12') or (industry='02') or (industry='13')) then cmcpseno:=strtoint(Flatcombobox7.Items[Flatcombobox6.itemindex]);
if (industry='12') and (cmcpseno=4080) then
begin
with DataShare_frm.Query4 do
begin
close;
sql.Clear ;
//sql.Add('select case when months=0 then 0 else isnull((12*ttwage/isnull(months,1)),0) end from sbdu_pswgcase where psseno=:param1 and yearno=:param2');
sql.Add('select case when months=0 then 0 else isnull(12*stwg,0) end from sbdu_pswgcase where psseno=:param1 and yearno=:param2');
parambyname('param1').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('param2').AsString :='1996';
prepare;
open;
i:=round(1000*Fields[0].AsFloat/6619)/1000;
if i>2 then j:=2 else j:=i;
close;
parambyname('param1').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('param2').AsString :='1997';
prepare;
open;
i:=round(1000*Fields[0].AsFloat/7413)/1000;
if i>3 then j:=j+2 else j:=j+i;
close;
parambyname('param1').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('param2').AsString :='1998';
prepare;
open;
i:=round(1000*Fields[0].AsFloat/8386)/1000;
if i>3 then j:=j+2 else j:=j+i;
end;
end;
if (industry='05') then
with DataShare_frm.Query4 do
begin
close;
sql.Clear ;
sql.Add('select case when months=0 then 0 else isnull((12*ttwage/isnull(months,1)),0) end from sbdu_pswgcase where psseno=:param1 and yearno=:param2');
parambyname('param1').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('param2').AsString :='1993';
prepare;
open;
i:=round(1000*Fields[0].AsFloat/3932)/1000;
if i>2 then j:=2 else j:=i;
close;
parambyname('param1').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('param2').AsString :='1994';
prepare;
open;
i:=round(1000*Fields[0].AsFloat/5597)/1000;
if i>2 then j:=j+2 else j:=j+i;
close;
parambyname('param1').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('param2').AsString :='1995';
prepare;
open;
i:=round(1000*Fields[0].AsFloat/6619)/1000;
if i>2 then j:=j+2 else j:=j+i;
end;
if ((industry='12') and (cmcpseno<>4080) and (cmcpseno<>1025) and (cmcpseno<>8002)) then
begin
with DataShare_frm.Query4 do
begin
close;
sql.Clear ;
//sql.Add('select case when months=0 then 0 else isnull((12*ttwage/isnull(months,1)),0) end from sbdu_pswgcase where psseno=:param1 and yearno=:param2');
sql.Add('select case when months=0 then 0 else isnull(12*stwg,0) end from sbdu_pswgcase where psseno=:param1 and yearno=:param2');
parambyname('param1').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('param2').AsString :='1994';
prepare;
open;
i:=round(1000*Fields[0].AsFloat/3932)/1000;
if i>2 then j:=2 else j:=i;
close;
parambyname('param1').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('param2').AsString :='1995';
prepare;
open;
i:=round(1000*Fields[0].AsFloat/5597)/1000;
if i>2 then j:=j+2 else j:=j+i;
close;
parambyname('param1').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('param2').AsString :='1996';
prepare;
open;
i:=round(1000*Fields[0].AsFloat/6619)/1000;
if i>2 then j:=j+2 else j:=j+i;
close;
parambyname('param1').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('param2').AsString :='1997';
prepare;
open;
i:=round(1000*Fields[0].AsFloat/7413)/1000;
if i>3 then j:=j+3 else j:=j+i;
close;
parambyname('param1').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('param2').AsString :='1998';
prepare;
open;
i:=round(1000*Fields[0].AsFloat/8386)/1000;
if i>3 then j:=j+3 else j:=j+i;
end;
end;
//-------------------------------20041112--------------------------------
if ((industry='12') and (cmcpseno=8002)) then
begin
with DataShare_frm.Query4 do
begin
close;
sql.Clear ;
sql.Add('select case when months=0 then 0 else isnull((12*ttwage/isnull(months,1)),0) end from sbdu_pswgcase where psseno=:param1 and yearno=:param2');
//sql.Add('select case when months=0 then 0 else isnull(12*stwg,0) end from sbdu_pswgcase where psseno=:param1 and yearno=:param2');
parambyname('param1').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('param2').AsString :='1993';
prepare;
open;
i:=round(1000*Fields[0].AsFloat/3932)/1000;
if i>2 then j:=2 else j:=i;
close;
parambyname('param1').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('param2').AsString :='1994';
prepare;
open;
i:=round(1000*Fields[0].AsFloat/5597)/1000;
if i>2 then j:=j+2 else j:=j+i;
close;
parambyname('param1').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('param2').AsString :='1995';
prepare;
open;
i:=round(1000*Fields[0].AsFloat/6619)/1000;
if i>2 then j:=j+2 else j:=j+i;
close;
parambyname('param1').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('param2').AsString :='1996';
prepare;
open;
i:=round(1000*Fields[0].AsFloat/7413)/1000;
if i>3 then j:=j+3 else j:=j+i;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -