var yy,mm,dd : word;
i,j,k: Integer;
begin
decodedate(date,yy,mm,dd);
yy:=yy-1;
k:=dd;
with query1 do
begin
Close;
SQL.Clear;
SQL.Add('Insert into table rq values(:rq);
end;
for i:=0 to 11 do
begin
j:=(mm+i) mod 12;
if j=0 then j:=12;
if (j=2) and (dd>28) then k:=28;
Query1.ParamByName('rq').asDateTime
:=EnCodeDate(yy,mm,dd);
Query1.ExecSQL;
if j=12 then yy:=yy+1;
k:=dd;
end;
end;
with query1 do
begin
Close;
SQL.Clear;
SQL.Add('Insert into table rq values(:rq);
end;
for i:=0 to 11 do
begin
mm:=(mm+i) mod 12;
if mm=0 then mm:=12;
Query1.ParamByName('rq').asDateTime
:=EnCodeDate(yy,mm,dd);
Query1.ExecSQL;
if mm=12 then yy:=yy+1;
end;
end;