2009-04-24 22 views

回答

2

您可以使用ReportingService2005 Web服務的ListChildren Web方法。它將返回當前用戶可以訪問的CatalogItems列表。然後刪除不是報告的項目。

List<CatalogItem> result = new List<CatalogItem>(); 
result.AddRange(ListChildren(SOME_PATH_BLAH_BLAH_BLAH, true)); 
result.RemoveAll(delegate(CatalogItem item) 
           { 
            return item.Type != ItemTypeEnum.Report; 
           }); 

http://technet.microsoft.com/en-us/library/reportservice2005.reportingservice2005.listchildren.aspx -

的ListChildren方法只返回用戶有權查看子項。返回的項目可能不代表指定父項目的子項目的完整列表。

+0

您是否知道用戶訪問Web服務所需的基本權限/角色?在與具有基本報告權限的用戶進行通話時,出現錯誤,指出「授予的權限不足以執行此操作。」 – JoeBrockhaus 2014-02-10 17:53:05