Параметр отчета скрыть / отобразить запрос в MS SSRS Reporting Web Service 2010 - PullRequest
3 голосов
/ 19 августа 2011

Я хочу запросить скрыть / показать статус параметров отчета. Но, похоже, нет такого свойства, которое говорит об этом.

Я использовал службу отчетов 2010, а не элемент управления Reportviewer. http://msdn.microsoft.com/en-us/library/reportservice2010.itemparameter.aspx

Ниже мой код:

public class ReportingService
{
    private ReportingService2010 reportingService = null;

    public ReportingService()
    {
        reportingService = new ReportingService2010();
        reportingService.Credentials = CredentialCache.DefaultCredentials;
    }

    internal IList<ReportParameter> GetReportParameter(string reportUrl)
    {
        string historyId = null;
        bool forRendering = false;
        ParameterValue[] values = null;
        DataSourceCredentials[] credentialses = null;
        ItemParameter[] parameters = null;

        try
        {
            parameters = reportingService.GetItemParameters(reportUrl, historyId, forRendering, values, credentialses);

            foreach (var parameter in parameters)
            {
                //parameter.Name;
                //parameter.Prompt;
                //parameter.DefaultValues.FirstOrDefault();

                //Problem:
                //how to get the show/hide status of the parameter.
                //the PromptUser returns true only when both hide and prompt 
                //are false, but when hide is true, it return true.
                //The rdl is edited via IE. It can be also edited via BI, and others.
            }

            return reportParameters;
        }
        catch (SoapException e)
        {
            throw;
            //e.Detail.InnerXml.ToString();
        }
    }        
}

Любая идея будет очень признательна!

Ответы [ 3 ]

6 голосов
/ 22 августа 2011
  private bool IsShown(ItemParameter parameter)
        {
            return parameter.PromptUser && !string.IsNullOrEmpty(parameter.Prompt);
        }
1 голос
/ 02 сентября 2011

С здесь :

Нет скрытого свойства, которое вы можете проверить напрямую. Скорее, вам нужно посмотреть на свойства Prompt и PromptUser на Класс ReportParameter:

PromptUser == false -> параметр «Внутренний»

PromptUser == true && Приглашение пустое или пустое -> Параметр "Hidden"

PromptUser == true && Подсказка НЕ ​​пуста или пуста -> Параметр равен виден

0 голосов
/ 19 августа 2011

Вы проверяли свойство parameter.Visible?Будет ли это работать?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...