|

楼主 |
发表于 2008-8-20 10:26:37
|
显示全部楼层
procedure Tform_GDHSLTJB.BuildStr();
var
lFilterSql : string;
lStartTime: TDatetime;
lEndTime: TDatetime;
Date : TDatetime;
I,j : integer;
lstr,lstr1 : string;
begin
lFilterSql := '';
FFilterDate := '';
FFilterDes := '';
if cmbCreateDate.ItemIndex <> 0 then
begin
case cmbCreateDate.ItemIndex of
1: // 本年
begin
lStartTime := DateUtils.StartOfTheYear(SysSrv.SysService.Time);
lEndTime := DateUtils.IncDay(DateUtils.DateOf(DateUtils.EndOfTheYear(SysSrv.SysService.Time)), 1);
end;
2: // 本季
begin
j := DateUtils.MonthOf(SysSrv.SysService.Time);
case j of
1,2,3: //第一季度
begin
lStartTime := sysutils.StrToDate(sysutils.IntToStr(DateUtils.YearOf(SysSrv.SysService.Time)) + '-1-1');
lEndTime := sysutils.StrToDate(sysutils.IntToStr(DateUtils.YearOf(SysSrv.SysService.Time)) + '-4-1');
end;
4,5,6: //第二季度
begin
lStartTime := sysutils.StrToDate(sysutils.IntToStr(DateUtils.YearOf(SysSrv.SysService.Time)) + '-4-1');
lEndTime := sysutils.StrToDate(sysutils.IntToStr(DateUtils.YearOf(SysSrv.SysService.Time)) + '-7-1');
end;
7,8,9: //第三季度
begin
lStartTime := sysutils.StrToDate(sysutils.IntToStr(DateUtils.YearOf(SysSrv.SysService.Time)) + '-7-1');
lEndTime := sysutils.StrToDate(sysutils.IntToStr(DateUtils.YearOf(SysSrv.SysService.Time)) + '-10-1');
end;
10,11,12: //第四季度
begin
lStartTime := sysutils.StrToDate(sysutils.IntToStr(DateUtils.YearOf(SysSrv.SysService.Time)) + '-10-1');
lEndTime := sysutils.StrToDate(sysutils.IntToStr(DateUtils.YearOf(SysSrv.SysService.Time)+1) + '-1-1');
end;
end;
end;
3: // 本月
begin
lStartTime := DateUtils.StartOfTheMonth(SysSrv.SysService.Time);
lEndTime := DateUtils.IncDay(DateUtils.DateOf(DateUtils.EndOfTheMonth(SysSrv.SysService.Time)), 1);
end;
4: // 上周
begin
I := SysUtils.DayOfWeek(SysSrv.SysService.Time) + 6;
Date := DateUtils.IncDay(DateUtils.DateOf(SysSrv.SysService.Time), -I);
lStartTime := Date;
lEndTime := DateUtils.IncDay(Date, 7);
end;
5: // 本周
begin
I := SysUtils.DayOfWeek(SysSrv.SysService.Time) - 1;
Date := DateUtils.IncDay(DateUtils.DateOf(SysSrv.SysService.Time), -I);
lStartTime := Date;
lEndTime := DateUtils.IncDay(Date, 7);
end;
6: // 昨天
begin
lStartTime := DateUtils.IncDay(DateUtils.DateOf(SysSrv.SysService.Time), -1);
lEndTime := DateUtils.DateOf(SysSrv.SysService.Time);
end;
7: // 今天
begin
lStartTime := DateUtils.DateOf(SysSrv.SysService.Time);
lEndTime := DateUtils.IncDay(DateUtils.DateOf(SysSrv.SysService.Time), 1);
end;
8: //自定义
begin
if TDateRangeForm.Show( lStartTime, lEndTime ) then
begin
lStartTime := DateUtils.DateOf(lStartTime);
lEndTime := DateUtils.IncDay(DateUtils.DateOf(lEndTime), 1);
FFilterDes := FFilterDes + '从 ' + sysutils.DateTimeToStr(lStartTime) +
' 到 ' + sysutils.DateTimeToStr(lEndTime);
end
else
cmbCreateDate.ItemIndex := FLastTimeIndex;
end; //8
else //CASE
raise Exception.Create('内部错误');
end; // CASE
lFilterSql := lFilterSql + ' GHSJ >= to_date('''+sysutils.DateTimeToStr(lStartTime)+''',''yyyy-mm-dd'') and ';
lFilterSql := lFilterSql + ' GHSJ < to_date('''+sysutils.DateTimeToStr(lEndTime)+''',''yyyy-mm-dd'')';
end;
FFilterDate := lFilterSql;
Label9.Caption := FFilterDes;
FLastTimeIndex := cmbCreateDate.ItemIndex;
end;
代码停在新增加的那段上 |
|