Pasar el parámetro a través del servicio de informes del servidor url a sql

Estoy tratando de pasar un parámetro a través de la url a SSRS y parece que no funciona!

Estoy tratando de pasar un userId (cadena) a través de la url que se pasará a la base de datos y será utilizada por la consulta.

url base: http: //blah/Reports/Pages/Report.aspx? ItemPath = MyReport

intenté esto pero no funciona: http: //blah/Reports/Pages/Report.aspx? ItemPath = MyReport & UserId = fred

Algunas ideas

Además de lo que dijo Shiraz, intenta algo como esto:

http:///ReportServer/Pages/ReportViewer.aspx?%2f%2f&rs:Command=Render&UserID='fred' 

Tenga en cuenta que la ruta solo funcionaría si se encuentra en una sola carpeta. Cuando tengo que hacer esto, simplemente busco el informe usando la ruta del servidor de informes (“informes” es el administrador del informe) y copio el URL, luego agregué &= hasta el final.

Tenía la misma pregunta y más, y aunque este hilo es viejo, sigue siendo bueno, así que en resumen para SSRS 2008R2 encontré …

Situaciones

  1. Desea usar un valor de una URL para buscar datos
  2. Desea mostrar un parámetro de una URL en un informe
  3. Desea pasar un parámetro de un informe a otro informe

Comportamiento

Si corresponde, asegúrese de reemplazar Informes / Páginas / Informe.aspx? ItemPath = con ReportServer? . En otras palabras: en lugar de esto:

 http://server/Reports/Pages/Report.aspx?ItemPath=/ReportFolder/ReportSubfolder/ReportName 

Usa esta syntax:

 http://server/ReportServer?/ReportFolder/ReportSubfolder/ReportName 

Agregue los parámetros al informe y configúrelos como ocultos (o visibles si la acción del usuario lo permite, aunque tenga en cuenta que, si bien el parámetro del informe cambiará, la URL no cambiará en función de una entrada actualizada).

Adjunte parámetros a la URL con & ParameterName = Value

Los parámetros se pueden referenciar o mostrar en el informe usando @ParameterName, ya sea que estén establecidos en el informe o en la URL

Para ocultar la barra de herramientas donde se muestran los parámetros, agregue & rc: Toolbar = false a la URL ( referencia )

Poniendo todo eso junto, puede ejecutar una URL con valores incrustados, o llamar esto como una acción de un informe y leer por otro informe:

 http://server.domain.com/ReportServer?/ReportFolder1/ReportSubfolder1/ReportName&UserID=ABC123&rc:Toolbar=false 

En la consulta de propiedades del conjunto de datos del informe: SELECCIONE elementos FROM view WHERE User = @UserID

En el informe, establezca el valor de expresión en [ID de usuario] (o = ¡Campos! UserID.Value)

Tenga en cuenta que si un informe tiene múltiples parámetros, es posible que deba incluir todos los parámetros en la URL, incluso si está en blanco, dependiendo de cómo se escriba la consulta del conjunto de datos.

Para pasar un parámetro usando Acción = Ir a URL, establezca la expresión a:

 ="http://server.domain.com/ReportServer?/ReportFolder1/ReportSubfolder1/ReportName&UserID=" &Fields!UserID.Value &"&rc:Toolbar=false" &"&rs:ClearSession=True" 

Asegúrese de tener un espacio después de una expresión si está seguido por & (un salto de línea no es suficiente). No se requiere espacio antes de una expresión. Este método puede pasar un parámetro pero no lo oculta ya que es visible en la URL.

Si no incluye & rs: ClearSession = True, el informe no se actualizará hasta que se borre la memoria caché de la sesión del navegador.

Para pasar un parámetro usando Acción = Ir al informe:

  • Especifique el informe
  • Agregar parámetro (s) para ejecutar el informe
  • Agregue los parámetros que desea aprobar (los parámetros deben definirse en el informe de destino, por lo que, a mi conocimiento, no puede usar comandos específicos de URL como rc: barra de herramientas utilizando este método); sin embargo, supongo que sería posible leer o establecer la checkbox Preguntar usuario, como se ve en los informes de los parámetros del servidor, a través del código personalizado en el informe).

Para referencia, / =% 2f

Acabo de resolver este problema yo mismo. Encontré la solución en MSDN: http://msdn.microsoft.com/en-us/library/ms155391.aspx .

El formato básicamente es

 http:///reportserver?//&rs:Command=Render&= 

Intente cambiar “Informes” a “ReportServer” en su url

Intente pasar múltiples valores a través de la url:

 /ReportServer?%2fService+Specific+Reports%2fFilings%2fDrillDown%2f&StartDate=01/01/2010&EndDate=01/05/2010&statuses=1&statuses=2&rs%3AFormat=PDF 

Esto debería funcionar.

Resolví un problema similar al pasar el valor del parámetro disponible en la URL en lugar de la etiqueta del parámetro.

Por ejemplo, tengo un informe con un parámetro llamado viewName y los valores disponibles predefinidos para el parámetro son: (labels / values) orders / sub_orders, orderDetail / sub_orderDetail, product / sub_product.

Para llamar a este informe con una URL para representar automáticamente para parameter = product, debe especificar el valor, no la etiqueta.
Esto sería incorrecto: http: // server / reportserver? / Data + Dictionary / DetailedInfo & viewName = product & rs: Command = Render

Esto es correcto: http: // server / reportserver? / Data + Dictionary / DetailedInfo & viewName = sub_product & rs: Command = Render

Según este enlace , también puede tener que prefijar su parámetro con & rp si no utiliza la syntax del proxy

Intente cambiar “Informes” a “Servidor de informes” en su url. Para eso solo acceda a este http://host/ReportServer/ y desde allí puede ir a las páginas del informe. Anexa sus parámetros de este modo &=

Para obtener información más detallada:

http://dobrzanski.net/2008/08/11/reporting-services-problem-with-passing-parameters-directly-in-the-url/

https://www.mssqltips.com/sqlservertip/1336/pass-parameters-and-options-with-a-url-in-sql-reporting-services/

Intereting Posts