In Essential Cloud how can I override a built in report?
I want to take the 'enterprise/core_el_project_summary.xsl' report and add a few custom slots as well as expose the 'project_activitys' slot on the report. I know I can create a report in the users folder but how would I then go about making sure that anything that links to the original report would get repointed to my new version?
Override Built In Reports
There are a couple of ways to do this. Go to the Report class in the instance browser and open the report instance for Project Summary
Either:
1) Update the xsl path in the existing report to point to user/[YOUR REPORT].xsl and publish
This will just replace the current report with your version
Note, the downside is that if we update the path in a future update, it may reset the path to our new path.
2)
a) Create a copy of the existing report add your xsl path as above, turn off the old report by clicking the enabled boolean in the original report.
b) Go to the Report_Menu_Item class and find 'Project Summary Menu Item'. Change the target report slot to your version of the report.
c) make sure your report is in a portal - add it to the relevant Portal_Section
Then publish.
1 is quicker but 2 is the best way and what we recommend. Your report will now get picked up in the views.
Either:
1) Update the xsl path in the existing report to point to user/[YOUR REPORT].xsl and publish
This will just replace the current report with your version
Note, the downside is that if we update the path in a future update, it may reset the path to our new path.
2)
a) Create a copy of the existing report add your xsl path as above, turn off the old report by clicking the enabled boolean in the original report.
b) Go to the Report_Menu_Item class and find 'Project Summary Menu Item'. Change the target report slot to your version of the report.
c) make sure your report is in a portal - add it to the relevant Portal_Section
Then publish.
1 is quicker but 2 is the best way and what we recommend. Your report will now get picked up in the views.
-
- Posts: 15
- Joined: 14 Jun 2022, 17:47
Thanks. I ended up using the second option and it looks like it is working well.
I added a 'Project Activities' section to the project summary with the following code.
using the following xsl template
I added a 'Project Activities' section to the project summary with the following code.
Code: Select all
<div class="col-xs-12">
<div class="sectionIcon">
<i class="fa fa-cubes icon-section icon-color"/>
</div>
<h2 class="text-primary">
<xsl:value-of select="eas:i18n('Project Activities')"/>
</h2>
<div class="content-section">
<table class="table table-bordered table-striped">
<tr>
<th>Name</th>
<th>Start Date</th>
<th>End Date</th>
</tr>
<xsl:apply-templates select="$thisProjectActivities" mode="getActivities">
<xsl:sort select="own_slot_value[slot_reference='ca_proposed_start_date_iso_8601']/value" order="ascending"/>
</xsl:apply-templates>
</table>
</div>
<hr/>
</div>
Code: Select all
<xsl:template match="node()" mode="getActivities">
<xsl:variable name="this" select="current()"/>
<tr>
<td><xsl:value-of select="$this/own_slot_value[slot_reference='project_activity_label']/value"/></td>
<td><xsl:value-of select="$this/own_slot_value[slot_reference='ca_proposed_start_date_iso_8601']/value"/></td>
<td><xsl:value-of select="$this/own_slot_value[slot_reference='ca_target_end_date_iso_8601']/value"/></td>
</tr>
</xsl:template>