you values services provided not manager have configured configuracion been reporting-services ssrs-2008

reporting-services - values - reporting services configuration manager web service url



SSRS: hipervínculo relativo de URL (5)

En SSRS 2008 me gustaría crear una URL de ruta relativa. Para resumir, tengo una suscripción que genera unos pocos miles de páginas HTML estáticas en una carpeta que se usa como contenido para un sitio web. En el pasado, he creado direcciones URL completas para otras páginas del sitio (subinformes, en realidad) usando Propiedades del cuadro de texto -> Acción -> Ir a URL. Me gustaría modificar mi código para que devuelva la ruta relativa del objetivo en lugar de la URL completa. Esto reducirá la posibilidad de que alguien finalmente rompa la navegación al cambiar el dominio del sitio web o las estructuras de carpetas. Cuando traté de hacer esto, los objetos que anteriormente eran clicables ya no se pueden hacer clic. ¿Cómo puedo hacer que un hipervínculo SSRS salte a una URL relativa en lugar de una URL totalmente calificada?

Esto es lo que funciona:

="https://some.domain.com/some_page/" + Fields!Custom_Page_Name.Value.ToString() + ".html"

Esto es lo que no funciona:

="../" + Fields!Custom_Page_Name.Value.ToString() + ".html" ="/" + Fields!Custom_Page_Name.Value.ToString() + ".html" =Fields!Custom_Page_Name.Value.ToString() + ".html" ="../" + Fields!Custom_Page_Name.Value.ToString() + ".html" ="/" + Fields!Custom_Page_Name.Value.ToString() + ".html"


Solo usa la variable global Globals!ReportServerUrl

Entonces, "http://myservername/rs?/myreportname" convierte en Globals!ReportServerUrl + "?/myreportname"


Si observa la advertencia generada cuando ejecuta el informe en Visual Studio, obtendrá su respuesta:

[rsInvalidURLProtocol] El valor ''test.html'' de la propiedad Hyperlink del cuadro de texto ''textbox6'' tiene un esquema no válido. Las URL en los informes solo pueden usar http: //, https: //, ftp: //, mailto: o noticias:

es decir, las URL deben tener uno de esos protocolos, y ya que no hay forma de escribir una URL relativa cuando comienza con el protocolo, lo que significa que SSRS no admite URL relativas.

Una alternativa sería establecer la URL base en un parámetro, que luego se cambiaría fácilmente y solo requeriría regenerar sus páginas html si cambia.


="javascript:void(window.open(document.URL.replace(''CurrentReportName'',''NavigateToReportName''),''Window1'',''menubar=no,width=430,height=350,toolbar=no''));"

Sé que es una publicación anterior. puede ayudar a alguien ... Nota: estoy usando SSRS 2008


Simplemente lea este Q y A y tenga una mejor solución para cualquiera que esté buscando. Si desea una URL relativa, simplemente use javascript, por ejemplo

="javascript:void(window.navigate( ''/mydirectory/reportcountry.aspx?CountryID=" + Fields!CountryID.Value.ToString() + "''))"


En Visual Studio 2013 con SQL Server Data Tools puede acceder a las páginas de propiedades de una etiqueta. Esto le da la opción de vincular a otro informe (en el mismo proyecto) y pasar los parámetros necesarios: