2009-10-20 6 views
4

SSRS 2008에서 상대 경로 URL을 만들고 싶습니다. 길고 짧은 이야기 나는 수천 개의 정적 HTML 페이지를 웹 사이트의 컨텐트로 사용되는 폴더에 출력하는 구독이 있습니다. 과거에는 텍스트 상자 속성 -> 작업 -> URL로 이동을 사용하여 사이트의 다른 페이지에 대한 전체 URL (하위 보고서)을 만들었습니다. 전체 URL 대신 대상의 상대 경로를 반환하도록 코드를 수정하고 싶습니다. 이것은 누군가가 결국 웹 사이트 도메인 또는 폴더 구조를 변경하여 탐색을 위반할 가능성을 줄입니다. 이 작업을 시도 할 때 이전에 클릭 할 수 있었던 객체는 더 이상 잘 클릭 할 수 없습니다. SSRS 하이퍼 링크를 정규화 된 URL 대신 상대 URL로 점프하려면 어떻게합니까? 여기SSRS : 상대 URL 하이퍼 링크

작품 내용은 다음과 같습니다

여기
="https://some.domain.com/some_page/" + 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" 
="\" + Fields!Custom_Page_Name.Value.ToString() + ".html" 
+0

상대 : 이것은 필요에 따라 매개 변수를 (같은 프로젝트에서) 다른 보고서에 연결하고 통과 할 수있는 옵션을 제공합니다? – zzawaideh

+0

어딘가에 파일 공유에있는 현재 렌더링 된 보고서 파일에 상대적입니다. –

답변

4

당신은 Visual Studio에서 보고서를 실행할 때 경고에서 생성 보면 당신은 얻을 것이다 당신의 답변 :

[rsInvalidURLProtocol] 'test.html'텍스트 상자의 하이퍼 링크 속성 값 xtbox6 '에 잘못된 스키마가 있습니다. 보고서의 URL은 http : //, https : //, ftp : //, mailto : 또는 news :

만 사용할 수 있습니다. 즉, URL에는 해당 프로토콜 중 하나가 있어야하며, SSRS가 상대 URL을 지원하지 않는다는 것을 의미하는 프로토콜로 시작할 때의 URL입니다.

매개 변수에 기본 URL을 설정하면 쉽게 변경할 수 있으며 변경된 경우 HTML 페이지를 다시 생성하면됩니다.

+0

내가 듣기를 원하는 것은 아니지만 듣기 좋다. 나는 경고를 결코 알아 채지 못했고 이것은 나의 질문에 명확하게 답한다. –

5

이 Q와 A를 읽고 원하는 사람에게 더 나은 솔루션을 제공하십시오. 상대 URL을 원하면 javascript를 사용하십시오.

="javascript:void(window.navigate('/mydirectory/reportcountry.aspx?CountryID=" + Fields!CountryID.Value.ToString() + "'))" 
3
="javascript:void(window.open(document.URL.replace('CurrentReportName','NavigateToReportName'),'Window1','menubar=no,width=430,height=350,toolbar=no'));" 

나는 그것이 이전 게시물 알고있다. 그것은 someone..Note 도움이 될 수 있습니다 : 나는

0

그냥 당신이 속성 페이지에 액세스 할 수 있습니다 Globals!ReportServerUrl

그래서 "http://myservername/rs?/myreportname"는 SQL Server 데이터 도구와 비주얼 스튜디오 2013 년 Globals!ReportServerUrl + "?/myreportname"

0

이되는 글로벌 변수를 사용 SSRS 2008을 사용하고 있습니다 라벨. 현재 페이지

Screenshot of property pages.