Ошибка арифметического переполнения при преобразовании выражения в тип данных datetime-in хранимой процедуры
Я готов как можно больше ответов на эту проблему, но не могу найти решение.
Недавно мы перевели наше приложение с SQL 2008 на 2012. Это работало без проблем в 2008 году.
Я собираюсь добавить только те части SP, в которых, по-моему, ошибка существует, я получаю вышеуказанное сообщение об ошибке при запуске этой хранимой процедуры с 2014-02-01 для @startdate и 2014-02-28 для @enddate.
ALTER PROCEDURE [dbo].[Action_UpdateRProfitabilityReportTable9-21-09]
@startdate datetime,
@enddate datetime,
@vehiclemaintence float,
@fleetops float,
@driverrate float,
@helperrate float,
@fuelrate float
AS
INSERT INTO [dbo].[rprofitabilityreport]
(Route, Material, Helper, monthofyear, monthyear, sitecount, totalstops , RecurringRevenue, WORevenue, DumpTons, DumpFees,
FuelPumped, Miles, TotalHours, FuelCosts, VehicleMaintence, FleetOPs, LaborCosts,
BenefitFactor, ActualDumpRate, RouteExpenses, RouteExpensesperStop, CardboardDump, MixPaperDump)
left join (select distinct sh.route, sh.routemonth, sh.monthyr, count(sh.siteid) AS SiteCount
from (select sh.siteid, sh.route, datepart(mm,sh.servicedate) AS RouteMonth, left(cast(datepart(yyyy, sh.servicedate) as varchar(4)),4) + '-' + right('00' + cast(datepart(mm, sh.servicedate) as varchar(2)),2) AS MonthYR, count(sh.servicehistoryuid) As RouteCount
from [dbo].[ServiceHistory_vw_With_ServiceUID] sh
where sh.servicedate between @startdate and @enddate
group by sh.siteid, sh.route, datepart(mm,sh.servicedate), datepart(yyyy, sh.servicedate)) as sh
group by sh.route, sh.routemonth, sh.monthyr) rc ON rc.route = a1.route and rc.monthyr = a1.monthyr) RS