2016-04-15 2 views
1

Я хочу добавить параметр в отчет SSRS, в котором используется поставщик данных отчета.AX SSRS Report Параметр показан, но не используется в отчете

Я искал класс LedgerTrialBalanceContract в AOT и добавил в классDeclaration атрибут «CurrencyCode accountingCurrency;».

После этого шага, я добавил метод "parmAccountCurrency", который выглядит следующим образом:

[ 
DataMemberAttribute(identifierStr(accountingCurrency)) 
] 
public CurrencyCode parmAccountCurrency(CurrencyCode _accountingCurrency = accountingCurrency) 
{ 
    //accountingCurrency = _accountingCurrency; 
    accountingCurrency = CompanyInfo::standardCurrency(); 
    return accountingCurrency; 
} 

Я знаю, что accountingCurrency всегда будет значение от "CompanyInfo :: standardCurrency();" это и есть цель.

В методе инициализации от я добавил дополнительно вторую строку из этого фрагмента кода класса LedgerTrialBalanceDP:

contract = this.parmDataContract() as LedgerTrialBalanceContract; 
contract.parmAccountCurrency(CompanyInfo::standardCurrency()); 

После этого изменения я вижу мой параметр с правым значением в диалоге AX (см screenshot), но не в VisualStudio.

Цель состоит в том, чтобы показать этот параметр в отчете в текстовом поле.

Есть ли у кого-нибудь идеи, что я пропущу?

+0

Попробуйте обновить набор данных отчета в Visual Studio. –

+0

да! Спасибо вам за помощь! – JamesnxD

+0

после добавления текстового поля с параметром в качестве Contant приходит следующее исключение: «SysOperationDataContractInfo объект не инициализирован Стек трассировки (С) \ Классы \ SrsReportDataContractUIBuilder \ addDialogField - строка 10 (С) \ Классы \ SysOperationAutomaticUIBuilder \ buildGroup - строка 41. « – JamesnxD

ответ

0

Обязательно обновите набор данных отчета в Visual Studio и выполните инкрементную или полную компиляцию cil после изменения класса контракта.

Смежные вопросы