📄 localforretireaccount.~pas
字号:
Label7: TLabel;
Label143: TLabel;
Label144: TLabel;
FlatButton11: TFlatButton;
PopupMenu2: TPopupMenu;
A41: TMenuItem;
N1: TMenuItem;
a11: TMenuItem;
a121: TMenuItem;
Label147: TLabel;
procedure FormCreate(Sender: TObject);
procedure FlatComboBox6Change(Sender: TObject);
procedure FlatComboBox1Change(Sender: TObject);
procedure FlatSpeedButton1Click(Sender: TObject);
procedure FlatButton1Click(Sender: TObject);
procedure FlatButton5Click(Sender: TObject);
procedure FlatButton7Click(Sender: TObject);
procedure FlatEdit15Change(Sender: TObject);
procedure FlatButton9Click(Sender: TObject);
procedure FlatEdit1KeyPress(Sender: TObject; var Key: Char);
procedure FlatComboBox8Change(Sender: TObject);
procedure FlatButton11Click(Sender: TObject);
procedure A41Click(Sender: TObject);
procedure FlatButton2Click(Sender: TObject);
procedure FlatEdit15KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure FlatEdit16KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure FlatEdit5KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
private
industry:string;
editchange,computer:boolean;//视同缴费是否变了,
rtdate:Tdatetime;
function GetDyearno(industry:string):integer;
function GetByearno(industry:string):integer;
function GetDWageIndex(industry:string):double; //交费工资指数
function FuckDianLi(psseno:string):double;
function FuckDianLi_ext(psseno:string):double;
procedure init();
{ Private declarations }
//industry: array[1..9] of string; //行业号
//C:array[1..9] of integer; //C年底前缴费年限
public
{ Public declarations }
end;
var
LocalForRetireAccount_frm: TLocalForRetireAccount_frm;
a1,b1,a2,b2:integer;
implementation
uses datashare, QRforlocal, Main, onlinelogin, imp, PsarchToRtarch,
PsarchToRtarch0, QRforarchive;
{$R *.dfm}
function TLocalForRetireAccount_frm.FuckDianLi(psseno:string):double;
var
sum:double;
rtdate:tdatetime;
year,month,day:word;
begin
with DataShare_frm.Query1 do
begin
close;
sql.Clear ;
sql.Add('select lycpprin+lypsprin+lycpints+lypsints from sbda_psagacct where psseno=:p1 and yearno=1998');
parambyname('p1').AsString :=psseno;
prepare;
open;
sum:=fields[0].AsFloat ;
sum:=sum*1.1*1.05*1.035*1.035*1.035*1.035;
// 98 99 2000 01 02 03
close;
sql.Clear ;
sql.Add('select rtdate from sbdb_rtarch where psseno=:p1');
parambyname('p1').AsString :=psseno;
prepare;
open;
rtdate:=fields[0].AsDateTime ;
decodedate(rtdate,year,month,day);
close;
sql.Clear ;
sql.Add('select siinter from sbds_inancons where yearno>2003 and yearno<:p1 and industry=06');
parambyname('p1').AsInteger :=year-1;
prepare;
open;
first;
//if recordcount>0 then sum:=sum*Fields[0].AsFloat ;
while not eof do
begin
sum:=sum*(1+Fields[0].AsFloat);
next;
end;
close;
sql.Clear ;
sql.Add('select siinter from sbds_inancons where yearno=:p1 and industry='+quotedstr('06'));
parambyname('p1').AsInteger :=year;
prepare;
open;
if recordcount>0 then sum:=sum+sum*Fields[0].AsFloat*month/12;
result:=sum;
//result:=sum/120;
end;
end;
function TLocalForRetireAccount_frm.FuckDianLi_ext(psseno:string):double;
var
sum:double;
year,month,day:word;
rtdate:Tdatetime;
begin
with DataShare_frm.Query1 do
begin
close;
sql.Clear ;
sql.Add('select cypsarac+cypsints from sbda_psagacct where psseno=:p1 and yearno=:p2');
parambyname('p1').AsString :=psseno;
parambyname('p2').AsInteger :=1996;
prepare;
open;
sum:=Fields[0].AsFloat *1.12;
close;
parambyname('p1').AsString :=psseno;
parambyname('p2').AsInteger :=1997;
prepare;
open;
sum:=sum+Fields[0].AsFloat ;
sum:=sum*1.1*1.05*1.035*1.035*1.035*1.035;
// 98 99 2000 01 02 03
close;
sql.Clear ;
sql.Add('select rtdate from sbdb_rtarch where psseno=:p1');
parambyname('p1').AsString :=psseno;
prepare;
open;
rtdate:=fields[0].AsDateTime ;
decodedate(rtdate,year,month,day);
close;
sql.Clear ;
sql.Add('select siinter from sbds_inancons where yearno>2003 and yearno<:p1 and industry=06');
parambyname('p1').AsInteger :=year-1;
prepare;
open;
//if recordcount>0 then sum:=sum*Fields[0].AsFloat ;
while not eof do
begin
sum:=sum*(1+Fields[0].AsFloat);
next;
end;
close;
sql.Clear ;
sql.Add('select siinter from sbds_inancons where yearno=:p1 and industry='+quotedstr('06'));
parambyname('p1').AsInteger :=year;
prepare;
open;
if recordcount>0 then sum:=sum+sum*Fields[0].AsFloat*month/12;
result:=sum;
//result:=sum/120;
end;
end;
procedure TLocalForRetireAccount_frm.init();
begin
v01.Text :='';v02.Text :='';v03.Text :='';v04.Text :='';v05.Text :='';
v06.Text :='';v07.Text :='';v08.Text :='';v09.Text :='';v10.Text :='';
v11.Text :='';v12.Text :='';v13.Text :='';v14.Lines.Clear ;v15.Text :='';
v16.Text :='';v17.Text :='';v18.Text :='';v19.Text :='';v20.Text :='';
v21.Text :='';v22.Text :='';v23.Text :='';v24.Text :='';v25.Text :='';
v26.Text :='';v27.Text :='';v28.Text :='';v29.Text :='';v30.Text :='';
v31.Text :='';v32.Text :='';v33.Text :='';v34.Text :='';v35.Text :='';
v36.Text :='';v37.Text :='';v38.Text :='';v39.Text :='';v40.Text :='';
v41.Text :='';v42.Text :='';v43.Text :='';v44.Text :='';v45.Text :='';
v46.Text :='';v47.Text :='';v48.Text :='';v49.Text :='';v50.Text :='';
v51.Text :='';v52.Text :='';v53.Text :='';v54.Text :='';v55.Text :='';
v56.Text :='';v57.Text :='';v58.Text :='';v59.Text :='';v60.Text :='';
v61.Text :='';v62.Text :='';v63.Text :='';v64.Text :='';v65.Text :='';
v66.Text :='';v67.Text :='';v68.Text :='';v69.Text :='';v70.Text :='';
flatedit2.Text :='';flatedit3.Text :='';flatedit4.Text :='';flatedit6.Text :='';
flatedit7.Text :='';flatedit11.Text :='';flatedit12.Text :='';flatedit32.Text :='';
flatedit18.Text :='';flatedit20.Text :='';flatedit25.Text :='';flatedit26.Text :='';
flatedit27.Text :='';flatedit28.Text :='';flatedit30.Text :='';flatedit31.Text :='';
flatedit13.Text :='';flatedit13.Text :='';
flatedit5.Text :='';flatedit8.Text :='';flatedit9.Text :='';flatedit10.Text :='';
flatedit14.Text :='';
//flatedit1.Text :='';
rtdate:=0;
editchange:=false;
Label147.Visible :=false;
v34.ReadOnly :=true;
FlatButton2.Enabled :=false;
flatbutton6.Enabled :=false;
flatbutton8.Enabled :=false;
flatbutton10.Enabled :=false;
end;
function TLocalForRetireAccount_frm.GetDyearno(industry:string):integer; //D年问累计缴费年限,返回交的总月份
var
Ayearno:string;
i,j,cmcpseno:integer;
begin
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') and (cmcpseno=4080) then
with DataShare_frm.Query2 do
begin
close;
sql.Clear ;
sql.Add('select sum(months) from sbdu_pswgcase where psseno=:param and yearno<=:yearno1 and yearno>=:yearno2');
parambyname('param').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('yearno1').AsString :='1998';
parambyname('yearno2').AsString :='1996';
prepare;
open;
j:=Fields[0].AsInteger ;
end;
//2004.7.30日新增,铁劳服属于铁路行业,但计算方法,与铁路计算不一到,真烦呀!
if ((industry='12') and (cmcpseno<>4080) and (Flatcombobox5.Items[Flatcombobox6.ItemIndex]<>'4054')) then
with DataShare_frm.Query2 do
begin
close;
sql.Clear ;
sql.Add('select sum(months) from sbdu_pswgcase where psseno=:param and yearno<=:yearno1 and yearno>=:yearno2');
parambyname('param').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('yearno1').AsString :='1998';
parambyname('yearno2').AsString :='1994';
prepare;
open;
j:=Fields[0].AsInteger ;
end;
if ((industry='12') and (cmcpseno<>4080) and (Flatcombobox5.Items[Flatcombobox6.ItemIndex]='4054')) then
with DataShare_frm.Query2 do
begin
close;
sql.Clear ;
sql.Add('select sum(months) from sbdu_pswgcase where psseno=:param and yearno<=:yearno1 and yearno>=:yearno2');
parambyname('param').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('yearno1').AsString :='1998';
parambyname('yearno2').AsString :='1996';
prepare;
open;
j:=Fields[0].AsInteger ;
end;
// (industry='10')or
if (industry='13') or (industry='06') or //or ((industry='12') and (cmcpseno<>4080))
((industry='01') and (trim(Flatcombobox5.Items[Flatcombobox6.Itemindex])<>'1001')) then
with DataShare_frm.Query2 do
begin
close;
sql.Clear ;
sql.Add('select sum(months) from sbdu_pswgcase where psseno=:param and yearno<=:yearno1 and yearno>=:yearno2');
parambyname('param').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('yearno1').AsString :='1997';
parambyname('yearno2').AsString :='1993';
prepare;
open;
j:=Fields[0].AsInteger ;
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<=:yearno1 and yearno>=:yearno2');
parambyname('param').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('yearno1').AsString :='1997';
parambyname('yearno2').AsString :='1995';
prepare;
open;
j:=Fields[0].AsInteger ;
close;
sql.Clear ;
sql.Add('select case when rewage>0 then 12 else 0 end from sbdu_pswgcase where psseno=:param and yearno=:yearno1' );
parambyname('param').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('yearno1').AsString :='1993';
prepare;
open;
j:=fields[0].AsInteger+j;
close;
parambyname('param').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('yearno1').AsString :='1994';
prepare;
open;
j:=j+fields[0].AsInteger ;
end;
//--------------------------------20041104---------------------------------------------
if (industry='02') or ((industry='01') and (trim(Flatcombobox5.Items[Flatcombobox6.Itemindex])<>'1001')) then
with DataShare_frm.Query2 do
begin
close;
sql.Clear ;
sql.Add('select sum(months) from sbdu_pswgcase where psseno=:param and yearno<=:yearno1 and yearno>=:yearno2');
parambyname('param').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('yearno1').AsString :='1997';
parambyname('yearno2').AsString :='1994';
prepare;
open;
j:=Fields[0].AsInteger ;
end;
if (industry='09') then
with DataShare_frm.Query2 do
begin
close;
sql.Clear ;
sql.Add('select sum(months) from sbdu_pswgcase where psseno=:param and yearno<=:yearno1 and yearno>=:yearno2');
parambyname('param').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('yearno1').AsString :='1995';
parambyname('yearno2').AsString :='1994';
prepare;
open;
j:=Fields[0].AsInteger;
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 :='1996';
prepare;
open;
i:=Fields[0].AsInteger ;
if i>6 then i:=i-6 else i:=0;
j:=j+i;
end;
if (industry='05') then
with DataShare_frm.Query2 do
begin
close;
sql.Clear ;
sql.Add('select sum(months) from sbdu_pswgcase where psseno=:param and yearno<=:yearno1 and yearno>=:yearno2');
parambyname('param').AsString :=Flatcombobox2.Items[Flatcombobox1.itemindex];
parambyname('yearno1').AsString :='1995';
parambyname('yearno2').AsString :='1993';
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -