Hi,
I have been trying to build a new SSRS report in AX 2012. As I will need a lookup which has a range attached to it I need to use the ReportBuilderUI class as per this link:
http://dynamicsaxgyan.wordpress.com/2012/05/11/add-dialog-fields-and-runtime-lookups-in-ssrs-report-parameters-dynamics-ax-2012/
I have created the clases methods as per the tutorial and I have also been compairing to HcmPeopleDepartmentUIBuilder which is a class that I found recomended on another forum.
The issue here is when I get to the DP class and call my parm methods to get the values set in the dialog the values have been lost. I am assuming that they have not been packed or the instance has been lost but I am not sure why.
In my contract I have the following attributes:
[
DataContractAttribute,
SysOperationContractProcessingAttribute(classstr(RawmaterialReportUIBuilder))
]
along with parm methods for the values I want. They all have the following atribute:
[DataMemberAttribute('ItemId')]
in my ReportUIBuilder class I have the following
class RawmaterialReportUIBuilder extends SrsReportDataContractUIBuilder
and in the build method:
RawMaterialReportContract contract = this.dataContractObject();
contract = this.dataContractObject();
dialogItemId = this.addDialogField(methodStr(RawMaterialReportContract, parmItemId), contract);
and in the getfrom dialog:
RawMaterialReportContract contract = this.dataContractObject();
;
super();
contract.parmItemId(dialogItemId.value());
And (finally) my DP class:
[
SRSReportQueryAttribute(queryStr(SRInventTable)),
SRSReportParameterAttribute(classstr(RawMaterialReportContract))
]
class RawMaterialDP extends SRSReportDataProviderBase
and the processReport method:
[SysEntryPointAttribute]
public void processReport()
{
contract = this.parmDataContract() as RawMaterialReportContract;
info(strFmt("Here: %1 end value",contract.parmItemId()));
}
I get nothing from the parm methods at this point.
Any ideas?