Стандартный баг. Надо вставить в начало процедуры SET NOCOUNT ON
alter PROCEDURE sp_BSL_Account20
@dataAreaId varchar(255), -- Компания для расчета
@fromDateVarchar varchar(255), -- Дата начала (строка) периода расчета
@toDateVarchar varchar(255) -- Дата конца (строка) периода расчета
AS
set nocount on
set ansi_warnings off
IF EXISTS (SELECT name FROM sysobjects WHERE name = 'BSL_Account20')
DROP TABLE BSL_Account20;
Зачем подзапрос SELECT MAX()? GROUP BY чем не устраивает?
Зачем даты передавать строкой? Да еще такой - '01/02/2003'? Объявите их как datetime, не мучайте оптимизатор, передавайте их как '20030201', '20030202', и будет всем щастье. По крайней мере, у меня после этих исправлений запрос работает
|