将参数传递给SSRS报告,同时初始化默认值

时间:2017-11-06 07:21:16

标签: reporting-services dynamics-ax-2012 x++

我正在尝试将新参数传递给SSRS报告,因此我在Contract类中创建了两个方法:

    [DataMemberAttribute('LanguageId')]
public LanguageId parmLanguageId(languageId _languageId = languageId)
{

    languageId = _languageId;

    return languageId;
}

另一个检索值:

    public LanguageId getLanguageId()
{
    return languageId;
}

在我的DP课程中,我也在检索值:

languageId = _contract.getLanguageId();

到目前为止,运行我的报告时的对话框在我的对话框中传递了带有所选语言ID的值。

我遇到的问题是,在对话框中初始化默认值时,它不会传递我选择的值,但是打开对话框时会初始化默认值。

我正在考虑编辑我的parmLanguageId,如:

[DataMemberAttribute('LanguageId')]
public LanguageId parmLanguageId(languageId _languageId = 'DefaultLanguageValue')
{

    languageId = _languageId;

    return languageId;
}

但是,接下来是我必须将变量更改为所选值的部分,我可能会错过一个简单的解决方案,但我该如何实现呢?

1 个答案:

答案 0 :(得分:1)

尝试在报表控制器类中重写方法prePromptModifyContract并在其中添加以下行:

YourContract contract = this.parmReportContract().parmRdpContract() as YourContract;  
contract.parmLanguageId('DefaultLanguageValue');