請問高手這是什么算法?

S海鸥 2003-08-19 05:34:03
GetCurFiscalYear(sFYstart, sFYend);
procedure GetCurFiscalYear(var sDateStart, sDateEnd: string);
var
qryTemp: TQuery; sNow: string;
nNowYr, nNowMon, nNowDay, nStartYr, nStartMon, nStartDay, nEndYr, nEndMon, nEndDay: Integer;
begin
sNow := GetFieldDataFromTable('to_char(sysdate, ''YYYYMMDD'')', 'syspar');
nNowYr := StrToInt(Copy(sNow, 1, 4)); // Copy(S; Index, Count: Integer): string
nNowMon := StrToInt(Copy(sNow, 5, 2));
nNowDay := StrToInt(Copy(sNow, 7, 2));
qryTemp := TQuery.Create(nil);
qryTemp.Databasename := OPS_DATABASE;
with qryTemp, qryTemp.SQL do
try
Close;
Clear;
Add('select FYSTARTMON, FYSTARTDAY, FYENDMON, FYENDDAY');
Add('from syspar');
Open;
nStartMon := FieldByName('FYSTARTMON').AsInteger;
nStartDay := FieldByName('FYSTARTDAY').AsInteger;
nEndMon := FieldByName('FYENDMON').AsInteger;
nEndDay := FieldByName('FYENDDAY').AsInteger;
Close;
finally
qryTemp.free; // Free qryTemp Instance
end;
if (nNowMon > nStartMon) or ((nNowMon = nStartMon) and (nNowDay >= nStartDay)) then
nStartYr := nNowYr
else
nStartYr := nNowYr - 1;
if (nStartMon = 1) and (nStartDay = 1) then
nEndYr := nStartYr
else
nEndYr := nStartYr + 1;
sDateStart := YMD2DateStr(nStartYr, nStartMon, nStartDay, OPS_DATEFORMAT);
sDateEnd := YMD2DateStr(nEndYr, nEndMon, nEndDay, OPS_DATEFORMAT);
end;

----------------------------------------------------------
if (nNowMon > nStartMon) or ((nNowMon = nStartMon) and (nNowDay >= nStartDay)) then
nStartYr := nNowYr
else
nStartYr := nNowYr - 1;
if (nStartMon = 1) and (nStartDay = 1) then
nEndYr := nStartYr
else
nEndYr := nStartYr + 1;
-------------------------------------------------------

請問﹕

上面這段代碼 起什么作用或是一個什么算法?
其中 FYSTARTMON, FYSTARTDAY, FYENDMON, FYENDDAY 字段的值分別為:
4, 1, 3, 31



...全文
82 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
cnhgj 2003-08-22
  • 打赏
  • 举报
回复
没算法,只是对数据库的一些操作而已!
azher 2003-08-22
  • 打赏
  • 举报
回复
好像是屬於計算時間和數值遞變的算法
catac 2003-08-20
  • 打赏
  • 举报
回复
这哪看得出来呀,就是把现在的时间和库里的比一下吗,这谁知道呀他要做什么
S海鸥 2003-08-20
  • 打赏
  • 举报
回复
怎么沒人? 高手呢? 哪兒去了? 分不夠再加。。。。。。急﹗﹗﹗﹗
kaiji 2003-08-20
  • 打赏
  • 举报
回复
就是一段业务实现的小程序,哪是什么算法呀!!!
koma2003 2003-08-20
  • 打赏
  • 举报
回复
太长了
simonzone 2003-08-19
  • 打赏
  • 举报
回复
看起来像财务软件里的计算会计区间的东东

1,183

社区成员

发帖
与我相关
我的任务
社区描述
Delphi Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧