Cómo pasar múltiples valores a un solo parámetro en el procedimiento almacenado
Estoy usando SSRS para generar informes y ejecutar un procedimiento almacenado para generar los datos de mis informes
DECLARE @return_value int
EXEC @return_value = [dbo].[MYREPORT]
@ComparePeriod = 'Daily',
@OverrideCompareDate = NULL,
@PortfolioId = '5,6',
@OverrideStartDate = NULL,
@NewPositionsOnly = NULL,
@SourceID = 13
SELECT 'Return Value' = @return_value
GO
En lo anterior cuando pasé@PortfolioId = '5,6'
me está dando entradas incorrectas
Necesito todos los registros paraportfolio id 5 and 6 also
¿Es esta la forma correcta de enviar los múltiples valores?
Cuando ejecuto mis reportes solo doy@PortfolioId = '5'
Me está dando 120 registros y cuando lo ejecuto dando@PortfolioId = '6'
me esta dando 70 discos
Así que cuando voy a dar@PortfolioId = '5,6'
Debería tener que darme solo 190 registros en total, pero me está dando más no de registros que no entiendo exactamente en qué me equivoqué.
¿Podría alguien ayudarme? Gracias
todo el código es demasiado grande para pegarlo, estoy pegando el código relevante, por favor sugiera una pista.
CREATE PROCEDURE [dbo].[GENERATE_REPORT]
(
@ComparePeriod VARCHAR(10),
@OverrideCompareDate DATETIME,
@PortfolioId VARCHAR(50) = '2', --this must be multiple
@OverrideStartDate DATETIME = NULL,
@NewPositionsOnly BIT = 0,
@SourceID INT = NULL
) AS
BEGIN
SELECT
Position.Date,
Position.SecurityId,
Position.Level1Industry,
Position.MoodyFacilityRating,
Position.SPFacilityRating,
Position.CompositeFacilityRating,
Position.SecurityType,
Position.FacilityType,
Position.Position
FROM
Fireball_Reporting.dbo.Reporting_DailyNAV_Pricing POSITION WITH (NOLOCK, READUNCOMMITTED)
LEFT JOIN Fireball.dbo.AdditionalSecurityPrice ClosingPrice WITH (NOLOCK, READUNCOMMITTED) ON
ClosingPrice.SecurityID = Position.PricingSecurityID AND
ClosingPrice.Date = Position.Date AND
ClosingPrice.SecurityPriceSourceID = @SourceID AND
ClosingPrice.PortfolioID IN (
SELECT
PARAM
FROM
Fireball_Reporting.dbo.ParseMultiValuedParameter(@PortfolioId, ',') )