/ / Pasar el parámetro multivalor a un servidor vinculado de Oracle en SQL Server desde SSRS - sql-server, oracle, reporting-services

Pasar el parámetro multivalor al servidor vinculado de Oracle en el servidor SQL de SSRS - sql-server, oracle, reporting-services

Actualmente estoy creando un informe en SSRS usando unFuente de datos MSSQL. En esa fuente de datos tengo un servidor de Oracle vinculado del que estoy extrayendo mi base de datos base. Estoy tratando de pasar un parámetro de texto de valor múltiple de SSRS a MSSQL, que luego se usará en una OPENQUERY para la base de datos de Oracle. Simplemente, mi consulta en MSSQL es algo como esto:

DECLARE @SQL VARCHAR(MAX)
SET @SQL = "SELECT id, type, name FROM sample WHERE type IN (""""A"""",""""B"""")"
SET @SQL = "SELECT * FROM OPENQUERY(oracledb,""" + @SQL + """)"
EXEC (@SQL)

Típicamente con SSRS, usando MSSQL, puedo reemplazar el

type IN (""""A"""",""""B"""")

con

type IN (@Parameter)

¿Cómo puedo hacer esto al pasar el parámetro multivalor a la consulta mencionada anteriormente, ya que utiliza un servidor de enlaces a Oracle?

Respuestas

0 para la respuesta № 1

Esto funciona para openquery para DB2, pero señalaré que falta un + después de @SQL en su ejemplo. Una vez que agregué que funcionó.

SET @SQL = "SELECT * FROM OPENQUERY(oracledb,""" + @SQL +""")"