Support Article

FW layer RD not fetching values from Implementation layer

SA-38568

Summary



Report Definition (RD) defined in the Framework (FW) layer is not fetching values from the implementation layer even after ticking the 'Run On Descendant Classes' check box.


Error Messages


Not Applicable


Steps to Reproduce




1. Create a RD in framework layer and select the check box, 'run on descendant class' check box in the DataAccess tab.
2. Create a RD in Implementation layer with same name and same configuration.
3. Run the RD of FW layer.
4. See that no results are fetched.
5. Run the RD of implementation layer to see that results are fetched.


Root Cause



The option "Report on descendant class Instances" is used when one does not have a report rule in framework class, but it is required to build the report query using the implementation class.

So on running the report from the FW class, it is expected to return the instances of implementation class. But it is running on the table associated to FW class.


1. The 'Run On Descendanta Classes' feature does not work, if the application is built on multiple applications
2. Also if any properties used in the RD, are optimized in FW layer but not in the implementation layer (or viceversa), then FW RD will not run on the table associated with the implementation class (because in the back ground the query formation will be with UNION).

User has the results to be retrieved from multiple implementation classes such as (Sae-HRServices-Work-A , Sae-HRServices-Work-B, Sae-HRServices-Work-C) and so on.
Also user has used some the exposed properties in the implementation layer (but not in the FW layer) in the RD.

Hence the option of 'Use Implementaion Class Only' does not work in this scenario, as they have multiple application classes.



Resolution


Include all descendant classes along with the below filter query:











Published May 26, 2017 - Updated July 4, 2017

Have a question? Get answers now.

Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.