Ich habe das folgende SP, das korrekt funktioniert, wenn es alleine ausgeführt wird:
USE [Orders]
GO
SET FMTONLY OFF;
CREATE PROCEDURE [dbo].[Get_Details_by_Type]
@isArchived varchar(10),
@Type varchar(50)
AS
BEGIN
-- SET NOCOUNT ON hinzugefügt, um zusätzliche Ergebnismengen bei
-- SELECT-Anweisungen nicht zu beeinträchtigen.
SET NOCOUNT ON;
declare @sqlQuery nvarchar(max)
IF(@isArchived = 'ALL')
BEGIN
set @sqlQuery = 'SELECT * FROM [dbo].[Orders]
WHERE ' + @Type + ' != €
ORDER BY [IDNumber]'
exec sp_executesql @sqlQuery
END
ELSE
BEGIN
set @sqlQuery = 'SELECT * FROM [dbo].[Orders]
WHERE ' + @Type + ' != € AND [isArchived] = ' + @isArchived + ' ORDER BY [IDNumber]'
exec sp_executesql @sqlQuery
END
END
SET FMTONLY ON;
Das Problem, das ich habe, ist, dass wenn ich ein DataSet für einen SSRS-Bericht hinzufüge, keine Felder/Spalten im Abschnitt "Felder" angezeigt werden. Ich vermute, dass dies auf den dynamischen SQL zurückzuführen ist?
Wie kann ich das lösen?