Je travaille avec SQL Server 2012 et SSRS. En utilisant this réponse très utile, j'ai un travail de requête paramétré qui tire les données d'un système DB2 à travers openquery. J'aimerais en faire un rapport SSRS. Je ne vois pas comment le faire avec une requête, donc je construit une petite procédure stockée pour envelopper la requête dans, comme ceci:Utilisation de la chaîne d'exécution TSQL intégrée pour générer des paramètres de sortie pour le rapport SSRS
ALTER PROCEDURE dbo.QueryInfoByID
-- Add the parameters for the stored procedure here
@inputid varchar(10),
@outputfield varchar(50) output
AS
BEGIN
DECLARE @TSQL varchar(8000);
SELECT @TSQL = 'SELECT * FROM OPENQUERY(IMG2677,''SELECT outputfield FROM mytable WHERE outputfield = ''''' + @inputid + ''''''')'
EXEC (@TSQL)
END
Comment puis-je connecter le outputfield intégré dans le @TSQL avec le @outputfield dans la liste des paramètres de sortie du SP? J'ai essayé quelques googling et ne peux pas trouver n'importe quoi qui aborde ceci. Toutes mes excuses si c'est une question de débutant; Je n'ai pas beaucoup fait avec les paramètres de sortie dans les procédures stockées.
Merci, mais je pense que quelque chose de plus est nécessaire. Après quelques lectures, j'ai réalisé que je ne voulais pas de paramètres de sortie; Je veux un jeu de résultats du SP. Cependant, ce qui précède ne semble pas réellement produire un resultset - quand je l'exécute interactivement cela fonctionne, mais SSRS ne voit pas le resultset donc je ne peux pas assigner les champs. J'ai essayé de déclarer une table @t et de changer la TSQL pour "insérer dans @t select * from ..." suivi d'un "select * from @t" pour générer le resultset mais cela échoue au moment de l'exécution de SSRS avec "Doit déclarer le –