Sto tentando di creare un nuovo report SSRS che restituirà e visualizzerà i valori di una stored procedure di SQL Server. Passerò il parametro @clientID
alla stored procedure. Questo parametro è utilizzato in 3 diverse dichiarazioni BEGIN
/END
. Ogni istruzione BEGIN
`END` accetta il parametro e crea una query, restituendo dati specifici.SSRS: restituisce più query in una stored procedure
Quando creo il report SSRS, segnalo l'origine dati per questa stored procedure, ma solo il set di risultati dal primo BEGIN
/END
dichiarazione viene restituito. Se eseguo la stored procedure in SSMS, ottengo 3 set di risultati diversi, come previsto.
Come posso ottenere quei 3 BEGIN
/END
set di risultati in un unico report?
codice di esempio:
CREATE PROCEDURE pClientData (@clientID varchar(30))
AS
DECLARE @Orders table (
...
);
DECLARE @Results table (
...
);
DECLARE @Status table (
...
);
BEGIN
SET NOCOUNT ON;
-- Get all the orders by client
INSERT INTO @Orders
SELECT ...
-- Return the results --
SELECT *
FROM @Orders;
END
BEGIN
SET NOCOUNT ON;
-- Determine the Results
INSERT INTO @Results
SELECT ...
SELECT *
FROM @Results;
END
BEGIN
SET NOCOUNT ON;
SET @Status = (
SELECT ...
);
SELECT @Status as Status;
END
GO
chiamata Query da SSRS:
EXEC pClientData @clientID
Grazie per il link. Ti credo - ma non pensi che sia un modo inefficiente di interrogare? Piuttosto che calcolare qualcosa una volta e usarlo 3 posti, so che devo calcolarlo 3 volte separate? Lame ... – mikebmassey
@mikebmassey Sono d'accordo, è zoppo ... qualcosa che ho dovuto fare in passato quando un calcolo è molto costoso ...Ho la prima stored procedure fare il calcolo e salvare i risultati in una tabella (non temporanea) prima di restituire il risultato, e quindi fare in modo che le seguenti stored procedure facciano riferimento alla tabella che è stata popolata dalla prima chiamata ... Naturalmente, questa potrebbe essere più difficile a seconda di quante diverse versioni dei dati esistono/concorrenza/etc ... –
Non ho pensato di usare una tabella temporanea. Quindi, '# viverà, ma non' @ 'dalla query alla query? – mikebmassey