Вы можете попытаться включить ваши столбцы в оператор INSERT
в том же порядке, в каком они возвращаются из вашей хранимой процедуры.Когда вы вставляете результаты из хранимой процедуры, вы должны быть уверены, что число, тип данных и порядок столбцов, которые возвращает хранимая процедура, соответствуют определению таблицы @result
.
DECLARE @result table
(
row_id int,
quarry nvarchar(400),
interval nvarchar(100),
vskr_plan decimal(30,1),
vskr_fact decimal(30,1),
vskr_diff decimal(30,1),
ruda_plan decimal(30,1),
ruda_fact decimal(30,1),
ruda_diff decimal(30,1),
gpr_plan decimal(30,1),
gpr_fact decimal(30,1),
gpr_diff decimal(30,1),
gm_plan decimal(30,1),
gm_fact decimal(30,1),
gm_diff decimal(30,1)
)
INSERT INTO @result (row_id, quarry, interval, vskr_plan, vskr_fact, vskr_diff, ruda_plan, ruda_fact, ruda_diff, gpr_plan, gpr_fact, gpr_diff, gm_plan, gm_fact, gm_diff)
EXEC [report].[DISP_KPI_QUARRY] @datet = N'2018-10-11'
SELECT *
FROM @result