B
Boatswain
Доброго времени суток.
Есть Delphi 7 +SDAC и MSSQL 2005 SQLExpress.
При передаче даты из Delphi в MSSQL, сдвигается дата, никак не пойму почему и как с этим бороться.((
Из Delphi передается:
var
StartDate:TDateTime;
EndDate:TDateTime;
..........
StartDate:=StartOfAMonth(seSYear.Value,cbSMonth.ItemIndex+1);
EndDate:=EndOfAMonth(seEYear.Value,cbEMonth.ItemIndex+1);
.......
spReport.Params[2].AsDateTime:=StartDate;
spReport.Params[3].AsDateTime:=EndDate;
.......
spReport.Open;
Если, например, здесь на выходе параметры 01.01.2014 и 31.12.2014, то в MSSQL они уже 03.01.2014 и 03.01.2015
Если написать
startdate:=StrToDate('01.01.2014'); enddate:=StrToDate('31.12.2014');
эффект тотже.
В общем любую дату сдвигает на 3 дня вперед.
Кусок процедуры:
....
@StartPayDate smalldatetime,
@EndPayDate smalldatetime
.....
select *
from mytable
where paydate>=@StartPayDate and paydate<=@EndPayDate
Заранее благодарен за ответ.
Есть Delphi 7 +SDAC и MSSQL 2005 SQLExpress.
При передаче даты из Delphi в MSSQL, сдвигается дата, никак не пойму почему и как с этим бороться.((
Из Delphi передается:
var
StartDate:TDateTime;
EndDate:TDateTime;
..........
StartDate:=StartOfAMonth(seSYear.Value,cbSMonth.ItemIndex+1);
EndDate:=EndOfAMonth(seEYear.Value,cbEMonth.ItemIndex+1);
.......
spReport.Params[2].AsDateTime:=StartDate;
spReport.Params[3].AsDateTime:=EndDate;
.......
spReport.Open;
Если, например, здесь на выходе параметры 01.01.2014 и 31.12.2014, то в MSSQL они уже 03.01.2014 и 03.01.2015
Если написать
startdate:=StrToDate('01.01.2014'); enddate:=StrToDate('31.12.2014');
эффект тотже.
В общем любую дату сдвигает на 3 дня вперед.
Кусок процедуры:
....
@StartPayDate smalldatetime,
@EndPayDate smalldatetime
.....
select *
from mytable
where paydate>=@StartPayDate and paydate<=@EndPayDate
Заранее благодарен за ответ.