Hi,
I have built a custom SSRS report in D365 - 10.0.27.
The report runs fine and returns my data without issue.
I have a data contract in use and a data query.
[SrsReportQueryAttribute(queryStr(MyTestQuery)), SRSReportParameterAttribute(classStr(MyTestContract))] class MyTestRDP extends SRSReportDataProviderBase
I have the above code declared at the beginning of my RDP class - everything appears to be correct in the code but when I execute the run of the report and debug, it would appear my data query is being loaded correctly but my data contract is not present in the parmDataContract() method of the class - when I look at the rdpDataContract value, it is simply a blank version of the contract.
My report loads the parameters of the contract when the report is run via my controller class, when I debug the contract, I can see the value change when I select it - when I click on OK to run the report with the parameters in place, the contract refreshes a number of times until the code reaches the processData method of the RDP class.
public void processReport() { SalesTable salesTable; MyTestContract orderContract; CreatedDateTime orderCreated; QueryBuildDataSource qbds; QueryBuildRange qbr; // process range values orderContract = this.parmDataContract() as MyTestContract; orderCreated = orderContract.parmCreatedDateTime();
It is here where it is almost as if a blank or new version of the contract is initialised and my selected values are not being returned.
I am sure there is something really minor wrong, somewhere but if someone could advise me on where to look that would be great.
Thanks