Skip to end of banner
Go to start of banner

Create Reports

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 23 Next »

Reports are used to extract important information about existing data of the Software and are generated using two files: an XML file used to define the report criteria and information displayed, and a JRXML file used to define the report layout. Reports can be generated in any of the following forms: PDF, EXCEL,CSVand HTML.


What does this section cover?

Create Report Pages

To create a new report page you need to:

  1. Create a layout file (a) or use one of the existing CRM.COM report layout templates (b) (.jrxml) 
  2. Create a report criteria and content file (.xml)
  3. Define the report in modules metadata file

For an introduction to reports, go to Report Pages.

1. Report Layouts

a. Use Report Layout Templates

CRM.COM Software includes the following report layout templates for landscape and portrait page orientation and for reports containing subreports. All report layout templates can be found under <custom_project>/web/WebContent/reports directory


1. A00_A0_Landscape_Data.jrxml

2. A00_A3_Landscape_Data.jrxml

3. A00_A4_Landscape_Data.jrxml

4. A00_A4_Landscape.jrxml

 Landscape Report Page Example

5. Portrait: B00_A4_Portrait.jrxml

6. Report (A00_A4_Landscape_With_SubReport.jrxml) with sub-report (A00_A4_Landscape_SubReport.jrxml)

In the following example, A00_A4_Landscape_With_SubReport.jrxml is used for the main report which is Rewards Participants Balance, and A00_A4_Landscape_SubReport.jrxml is used for the sub-report which includes each participant's participating schemes.

 Report with sub-report Page Example

b. Design Report Layout Pages

If none of the above templates meet your needs, you can create your own JRXML file using iReport Designer.

2. Create Report Criteria and Content Pages

To create a new report criteria and content page, you need to create an XML file under 

<custom_project>/src/main/webapp/WEB-INF/reports/<module_name> directory.

In the following example Reward_Participants_List.xml is created under ../reports/Rewards

Reward_Participants_List.xml
<?xml version="1.0" encoding="UTF-8"?><definition xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../xsd/reports.xsd">
	<name>key_reward_participants</name>
	<description>key_a_financial_report_that_displays_all_the_financial_transactions_that_were_posted_within_a_specific_period_of_time.</description>
	<dataset/>
	<entityTable>REWARDPARTICIPANTS</entityTable>
	<entityField>REWPARTID</entityField>
	<orderBy>REWPARTSIGNUPDATE ASC</orderBy>
	<joins>
		INNER JOIN ACCOUNTSRECEIVABLE ON ACCOUNTSRECEIVABLE.ACCRECID = REWARDPARTICIPANTS.ACCRECID
		INNER JOIN ACCCLASSIFICATIONS ON ACCCLASSIFICATIONS.ACCCLASSID = ACCOUNTSRECEIVABLE.ACCCLASSID
		INNER JOIN CONTACTINFORMATION ON CONTACTINFORMATION.CIID = ACCOUNTSRECEIVABLE.CIID
		INNER JOIN CONTACTINFODEFINITIONS ON CONTACTINFODEFINITIONS.CIDEFACTIVE = 1 AND CONTACTINFODEFINITIONS.CIDEFDELETED = 0
		LEFT  JOIN WALLETS ON WALLETS.ACCRECID = ACCOUNTSRECEIVABLE.ACCRECID AND WALLETS.WALLETDELETED = 0 AND WALLETS.LIFECYCLESTATE = 'EFFECTIVE'
		INNER JOIN OUUNITS ON OUUNITS.OUUID = REWARDPARTICIPANTS.REWPARTSIGNUPBYOUUID
		LEFT JOIN CURRENCIES ON CURRENCIES.CURRENCYID = REWARDPARTICIPANTS.CURRENCYID
		LEFT JOIN CURRENCYRATEPERIODS ON CURRENCYRATEPERIODS.CURRENCYID =  CURRENCIES.CURRENCYID AND CURRENCYRATEPERIODS.CURRATEPERIODTODATE IS NULL
		LEFT JOIN SYSTEMSETTINGS ON SYSTEMSETTINGS.SYSTEMSETTINGNAME= 'DEFAULT_CURRENCY' AND SYSTEMSETTINGS.SYSTEMSETTINGDELETED=0
		LEFT JOIN CURRENCIES DEFAULTCURRENCIES ON DEFAULTCURRENCIES.CURRENCYID = SQL_CLOBTOCHAR(SYSTEMSETTINGS.SYSTEMSETTINGSTRINGVALUE)SQL_CLOBTOCHAR
	</joins>
	<conditions>
		REWARDPARTICIPANTS.REWPARTDELETED = 0 
	</conditions>
	<template>Rewards/Reward_Participants_List</template>
	<subReports>
		<subReport>   
			<name>walletSubReport</name>
			<folder>Rewards</folder>
		</subReport>
		<subReport>   
			<name>participatingSchemesSubReport</name>
			<folder>Rewards</folder>
		</subReport>
		<subReport>   
			<name>signedOffSchemesSubReport</name>
			<folder>Rewards</folder>
		</subReport>
		<subReport>   
			<name>accessTokensSubReport</name>
			<folder>Rewards</folder>
		</subReport> 
	</subReports>
	<criteria>
		<criterion>
			<criteriatype>0</criteriatype>
			<label>key_rewards_participant_schemes</label>
			<extralabel>key_rewards_participant_schemes</extralabel>
			<entitytablename>REWARDSCHEMES</entitytablename>
			<entityfieldname>REWSCHID</entityfieldname>
			<existclause>
				SELECT 'x' 
				FROM REWARDPARTICIPATINGSCHEMES 
        			INNER JOIN REWARDSCHEMES ON REWARDSCHEMES.REWSCHID = REWARDPARTICIPATINGSCHEMES.REWSCHID
				WHERE REWARDPARTICIPATINGSCHEMES.REWPARTID =REWARDPARTICIPANTS.REWPARTID
				AND REWARDPARTICIPATINGSCHEMES.REWPARTSCHEMEDELETED = 0
			</existclause>
			<isMandatory>0</isMandatory>
			<managedbeanname>rewardParticipantsView</managedbeanname>
			<method>searchRewardSchemes</method>		
			<componentType>selectcheckboxmenu</componentType>
			<className>com.crm.dataobject.rewards.CRMDORewardScheme</className>			
		</criterion>
		<criterion>
			<criteriatype>0</criteriatype>
			<label>key_life_cycle_state</label>
			<extralabel>key_life_cycle_state</extralabel>
			<entitytablename>REWARDPARTICIPANTS</entitytablename>
			<entityfieldname>LIFECYCLESTATE</entityfieldname>
			<isMandatory>0</isMandatory>
			<managedbeanname>rewardParticipantsView</managedbeanname>
			<method>getParticipantLifeCycleStateOptions</method>	
			<componentType>selectcheckboxmenu</componentType>
			<className>com.crm.dataobject.rewards.RewardsParticipantLifeCycleState</className>				
		</criterion>
		<criterion>
			<criteriatype>0</criteriatype>
			<label>key_sign_up_date</label>
			<extralabel>key_sign_up_date</extralabel>
			<entitytablename>REWARDPARTICIPANTS</entitytablename>
			<entityfieldname>REWPARTSIGNUPDATE</entityfieldname>
			<componentType>calendar</componentType>
			<isMandatory>0</isMandatory>
		</criterion>
		<criterion>
			<criteriatype>0</criteriatype>
			<label>key_sign_up_unit</label>
			<extralabel>key_sign_up_unit</extralabel>
			<entitytablename>OUUNITS</entitytablename>
			<entityfieldname>OUUID</entityfieldname>
			<componentType>autocomplete</componentType>
			<managedbeanname>genericReportView</managedbeanname>
			<method>searchUnits</method>
			<isMandatory>0</isMandatory>
			<className>com.crm.dataobject.networkmanagement.CRMDOUnit</className>	
		</criterion>
		<criterion>
			<criteriatype>0</criteriatype>
			<label>key_scheme_sign_up_date</label>
			<extralabel>key_scheme_sign_up_date</extralabel>
			<entitytablename>REWARDPARTICIPATINGSCHEMES</entitytablename>
			<entityfieldname>REWPARTSCHEMESIGNUPDATE</entityfieldname>
			<componentType>calendar</componentType>
			<existclause>
				SELECT 'x' 
				FROM REWARDPARTICIPATINGSCHEMES 
				WHERE REWARDPARTICIPATINGSCHEMES.REWPARTID =REWARDPARTICIPANTS.REWPARTID
				AND REWARDPARTICIPATINGSCHEMES.REWPARTSCHEMEDELETED = 0
			</existclause>
			<isMandatory>0</isMandatory>
		</criterion>
		
		<criterion>
			<criteriatype>0</criteriatype>
			<label>key_scheme_sign_off_date</label>
			<extralabel>key_scheme_sign_off_date</extralabel>
			<entitytablename>REWARDPARTICIPATINGSCHEMES</entitytablename>
			<entityfieldname>REWPARTSCHEMESIGNOFFDATE</entityfieldname>
			<componentType>calendar</componentType>
			<existclause>
				SELECT 'x' 
				FROM REWARDPARTICIPATINGSCHEMES 
				WHERE REWARDPARTICIPATINGSCHEMES.REWPARTID =REWARDPARTICIPANTS.REWPARTID
				AND REWARDPARTICIPATINGSCHEMES.REWPARTSCHEMEDELETED = 0
			</existclause>
			<isMandatory>0</isMandatory>
		</criterion>
		<criterion>
			<criteriatype>0</criteriatype>
			<label>key_scheme_sign_up_unit</label>
			<extralabel>key_scheme_sign_up_unit</extralabel>
			<entitytablename>OUUNITS</entitytablename>
			<entityfieldname>OUUID</entityfieldname>
			<existclause>
				SELECT 'x' 
				FROM REWARDPARTICIPATINGSCHEMES 
        			INNER JOIN OUUNITS ON OUUNITS.OUUID = REWARDPARTICIPATINGSCHEMES.REWPARTSCHEMESIGNUPBYOUUID
				WHERE REWARDPARTICIPATINGSCHEMES.REWPARTID =REWARDPARTICIPANTS.REWPARTID
				AND REWARDPARTICIPATINGSCHEMES.REWPARTSCHEMEDELETED = 0
			</existclause>
			<componentType>autocomplete</componentType>
			<managedbeanname>genericReportView</managedbeanname>
			<method>searchUnits</method>
			<isMandatory>0</isMandatory>
			<className>com.crm.dataobject.networkmanagement.CRMDOUnit</className>	
		</criterion>
		<criterion>
			<criteriatype>0</criteriatype>
			<label>key_accounts_receivable_classification</label>
			<extralabel>key_accounts_receivable_classification</extralabel>
			<entitytablename>ACCCLASSIFICATIONS</entitytablename>
			<entityfieldname>ACCCLASSID</entityfieldname>
			<isMandatory>0</isMandatory>
			<managedbeanname>accountsReceivableSummaryView</managedbeanname>
			<method>searchClassifications</method>	
			<componentType>selectcheckboxmenu</componentType>
			<className>com.crm.dataobject.accounts.CRMDOAccountClassification</className>				
		</criterion>
		
		<criterion>
			<criteriatype>0</criteriatype>
			<label>key_termination_date</label>
			<extralabel>key_termination_date</extralabel>
			<entitytablename>REWARDPARTICIPANTS</entitytablename>
			<entityfieldname>REWPARTTERMINATIONDATE</entityfieldname>
			<componentType>calendar</componentType>
			<isMandatory>0</isMandatory>
		</criterion>
		<criterion>
			<criteriatype>0</criteriatype>
			<label>key_rewards_participant_gender</label>
			<extralabel>key_rewards_participant_gender</extralabel>
			<entitytablename>CONTACTINFORMATION</entitytablename>
			<entityfieldname>CIGENDER</entityfieldname>
			<isMandatory>0</isMandatory>
			<managedbeanname>subscriptionChangeAccountView</managedbeanname>
			<method>getGenderOptions</method>	
			<componentType>selectcheckboxmenu</componentType>
			<className>com.crm.dataobject.contactinfo.Gender</className>				
		</criterion>
		<criterion>
			<criteriatype>0</criteriatype>
			<label>key_rewards_participant_age_range</label>
			<extralabel>key_rewards_participant_age_range</extralabel>
			<entitytablename>EXTRACT(YEAR FROM CURRENT_DATE) - COALESCE(CONTACTINFORMATION</entitytablename>
			<entityfieldname>CIYEAROFBIRTH,EXTRACT(YEAR FROM CURRENT_DATE))</entityfieldname>
			<fieldtype>ftXInteger</fieldtype>
			<componentType>inputText</componentType>
			<multiselect>0</multiselect>
			<isMandatory>0</isMandatory>
		</criterion>
	</criteria>

  	<columns>

		<column>
        		<fieldname>REWARDPARTICIPANTS.REWPARTID</fieldname>
				<alias>PRIMARY_KEY</alias>
        		<hidden>1</hidden>
     	</column>
     	<column>
        		<fieldname>REWPARTNUM</fieldname>
        		<width>10</width>
        		<widthType>PERCENTAGE</widthType>
        		<header>key_number</header>
     	</column>
     	<column>
			<fieldname>ACCOUNTSRECEIVABLE.ACCRECNAME</fieldname>
        		<alias>ACCOUNTSRECEIVABLE</alias>
        		<width>20</width>
        		<widthType>PERCENTAGE</widthType>
        		<header>key_accounts_receivable</header>
     	</column>
     	<column>
			<fieldname>
			CASE WHEN REWARDPARTICIPANTS.LIFECYCLESTATE='TERMINATED' then 'Terminated'
			     WHEN REWARDPARTICIPANTS.LIFECYCLESTATE='EFFECTIVE' then 'Effective'
			END			
			</fieldname>
			<alias>LIFECYCLESTATE</alias>
			<width>6</width>
			<header>key_life_cycle_state</header>
        		<widthType>PERCENTAGE</widthType>
		</column>
		<column>
        		<fieldname>ACCCLASSNAME</fieldname>
        		<width>10</width>
        		<widthType>PERCENTAGE</widthType>
        		<header>key_accounts_receivable_classification</header>
     	</column>
     	<column>
        		<fieldname>REWPARTTERMINATIONDATE</fieldname>
        		<fieldtype>FTXDATE</fieldtype>
        		<width>10</width>
        		<widthType>PERCENTAGE</widthType>
        		<header>key_termination_date</header>
     	</column>
     	<column>
     		<fieldname>
			CASE WHEN REWARDPARTICIPANTS.rewpartterminationreason='CUSTOMER_REQUEST' then 'Customer Request'
			     WHEN REWARDPARTICIPANTS.rewpartterminationreason='FRAUD' then 'Fraud'
			     WHEN REWARDPARTICIPANTS.rewpartterminationreason='DUPLICATION' then 'Duplication'
			END			
			</fieldname>
 			<alias>REWPARTTERMINATIONREASON</alias>
        		<width>10</width>
        		<widthType>PERCENTAGE</widthType>
        		<header>key_termination_reason</header>
     	</column>
     	<column>
        		<fieldname>REWPARTSIGNUPDATE</fieldname>
        		<fieldtype>FTXDATE</fieldtype>
        		<width>10</width>
        		<widthType>PERCENTAGE</widthType>
        		<header>key_sign_up_date</header>
     	</column>
     	<column>
        		<fieldname>OUUNAME</fieldname>
        		<width>10</width>
        		<widthType>PERCENTAGE</widthType>
        		<header>key_sign_up_by_unit</header>
     	</column>
     	  <column>     	
			<fieldname>
			(
		    	select count(1) from rewardparticipatingschemes rps where 
				rps.rewpartid=REWARDPARTICIPANTS.rewpartid
				and 
				(rewpartschemesignupdate > SQL_FIRST_DAY[[SQL_CURRENT_DATE]]SQL_FIRST_DAY 
				or 
					rewpartschemesignupdate = SQL_FIRST_DAY[[SQL_CURRENT_DATE]]SQL_FIRST_DAY) 
				and 
				rewpartschemesignupdate < [SQL_CURRENT_DATE]
				and rps.rewpartschemedeleted=0 and  rewpartschemesignoffdate is null
			)
			</fieldname>
    		<alias>THIS_MONTH_SCHEME_SIGN_UPS</alias>
    		<width>1</width>
    		<hidden>1</hidden>
    		<widthType>PERCENTAGE</widthType>
    		<header>key_sign_ups</header>
    		<fieldtype>FTXINTEGER</fieldtype>
    		<displaydefaultcurrencysymbol>true</displaydefaultcurrencysymbol>
     	</column>  
     	<column>     	
			<fieldname>
			(
		    	select count(1) from rewardparticipatingschemes rps where 
				rps.rewpartid=REWARDPARTICIPANTS.rewpartid
				and rewpartschemesignoffdate is not null and 
				(rewpartschemesignoffdate > SQL_FIRST_DAY[[SQL_CURRENT_DATE]]SQL_FIRST_DAY 
				or 
					rewpartschemesignoffdate = SQL_FIRST_DAY[[SQL_CURRENT_DATE]]SQL_FIRST_DAY) 
				and  rewpartschemesignoffdate < [SQL_CURRENT_DATE]
					
				and rps.rewpartschemedeleted=0 
			)
			</fieldname>
    		<alias>THIS_MONTH_SCHEME_SIGN_OFFS</alias>
    		<width>1</width>
    		<hidden>1</hidden>
    		<widthType>PERCENTAGE</widthType>
    		<header>key_sign_offs</header>
    		<fieldtype>FTXINTEGER</fieldtype>
    		<displaydefaultcurrencysymbol>true</displaydefaultcurrencysymbol>
     	</column>
     	<column>     	
			<fieldname>
			(
		    	select 1 from rewardparticipants RP
		    	where LIFECYCLESTATE='EFFECTIVE' and RP.rewpartid =REWARDPARTICIPANTS.rewpartid
			)
			</fieldname>
    		<alias>EFFECTIVE_PARTICIPANTS</alias>
    		<width>1</width>
    		<hidden>1</hidden>
    		<widthType>PERCENTAGE</widthType>
    		<header>key_effective_participants</header>
    		<fieldtype>FTXINTEGER</fieldtype>
    		<displaydefaultcurrencysymbol>true</displaydefaultcurrencysymbol>
     	</column>
     	<column>     	
			<fieldname>
			(
		    	select 1 from rewardparticipants RP
		    	where LIFECYCLESTATE='TERMINATED'  and RP.rewpartid =REWARDPARTICIPANTS.rewpartid
			)
			</fieldname>
    		<alias>TERMINATED_PARTICIPANTS</alias>
    		<width>1</width>
    		<hidden>1</hidden>
    		<widthType>PERCENTAGE</widthType>
    		<header>key_terminated_participants</header>
    		<fieldtype>FTXINTEGER</fieldtype>
    		<displaydefaultcurrencysymbol>true</displaydefaultcurrencysymbol>
     	</column>
     	<column>     	
			<fieldname>
			(
		    	select  1 from rewardparticipants RP where 
		    	REWPARTTERMINATIONDATE is not null and 
				(RP.REWPARTTERMINATIONDATE > SQL_FIRST_DAY[[SQL_CURRENT_DATE]]SQL_FIRST_DAY 
				or 
					RP.REWPARTTERMINATIONDATE = SQL_FIRST_DAY[[SQL_CURRENT_DATE]]SQL_FIRST_DAY) 
				and  REWPARTTERMINATIONDATE < [SQL_CURRENT_DATE]
					and RP.rewpartid =REWARDPARTICIPANTS.rewpartid
			)
			</fieldname>
    		<alias>THIS_MONTH_TERMINATIONS</alias>
    		<width>1</width>
    		<hidden>1</hidden>
    		<widthType>PERCENTAGE</widthType>
    		<header>key_balance</header>
    		<fieldtype>FTXINTEGER</fieldtype>
    		<displaydefaultcurrencysymbol>true</displaydefaultcurrencysymbol>
     	</column>
     	<column>     	
			<fieldname>
			(
		    	select  COALESCE(sum(COALESCE(rewawardtrxnamt,0)),0) from rewardawardtransactions where 
				rewardawardtransactions.rewpartid=REWARDPARTICIPANTS.rewpartid
				and rewawardtrxndeleted=0 
			)
			</fieldname>
    		<alias>THIS_MONTH_AWARDED_AMOUNT</alias>
    		<width>1</width>
    		<hidden>1</hidden>
    		<widthType>PERCENTAGE</widthType>
    		<header>key_balance</header>
    		<fieldtype>FTXINTEGER</fieldtype>
    		<displaydefaultcurrencysymbol>true</displaydefaultcurrencysymbol>
     	</column>
     	<column>     	
			<fieldname>
			(
		    	select COALESCE(sum(COALESCE(rewspendtrxntotalamt,0)),0) from rewardspendtransactions where 
				rewardspendtransactions.rewpartid=REWARDPARTICIPANTS.rewpartid
				and rewspendtrxndeleted=0 
			)
			</fieldname>
    		<alias>THIS_MONTH_SPEND_AMOUNT</alias>
    		<width>1</width>
    		<hidden>1</hidden>
    		<widthType>PERCENTAGE</widthType>
    		<header>key_balance</header>
    		<fieldtype>FTXINTEGER</fieldtype>
    		<displaydefaultcurrencysymbol>true</displaydefaultcurrencysymbol>
     	</column>
		<column>
        		<fieldname>(SELECT COUNT(WALLETID) FROM WALLETS WHERE WALLETS.ACCRECID = ACCOUNTSRECEIVABLE.ACCRECID AND WALLETS.WALLETDELETED = 0)</fieldname>
				<alias>NUMOFWALLETS</alias>
        		<hidden>1</hidden>
    		<fieldtype>FTXINTEGER</fieldtype>
     	</column>		
		<column>
        		<fieldname>(SELECT COUNT(REWPARTSCHEMEID) FROM REWARDPARTICIPATINGSCHEMES WHERE REWARDPARTICIPATINGSCHEMES.REWPARTID = REWARDPARTICIPANTS.REWPARTID AND REWARDPARTICIPATINGSCHEMES.REWPARTSCHEMEDELETED = 0 AND REWPARTSCHEMESIGNOFFDATE IS NULL)</fieldname>
				<alias>NUMOFSIGNUPSCHEMES</alias>
        		<hidden>1</hidden>
    		<fieldtype>FTXINTEGER</fieldtype>
     	</column>
		<column>
        		<fieldname>(SELECT COUNT(REWPARTSCHEMEID) FROM REWARDPARTICIPATINGSCHEMES WHERE REWARDPARTICIPATINGSCHEMES.REWPARTID = REWARDPARTICIPANTS.REWPARTID AND REWARDPARTICIPATINGSCHEMES.REWPARTSCHEMEDELETED = 0 AND REWPARTSCHEMESIGNOFFDATE IS NOT NULL)</fieldname>
				<alias>NUMOFSIGNOFFSCHEMES</alias>
        		<hidden>1</hidden>
    		<fieldtype>FTXINTEGER</fieldtype>
     	</column>
		<column>
        		<fieldname>(SELECT COUNT(ACCESSTOKENID) FROM ACCESSTOKENS WHERE ACCESSTOKENS.REWPARTID = REWARDPARTICIPANTS.REWPARTID AND ACCESSTOKENS.ACCESSTOKENDELETED = 0 AND ACCESSTOKENS.LIFECYCLESTATE= 'EFFECTIVE')</fieldname>
				<alias>NUMOFACCESSTOKNES</alias>
        		<hidden>1</hidden>
    		<fieldtype>FTXINTEGER</fieldtype>
     	</column>
  	</columns>

	<groups>
  		<group>
 			<groupid>ACCOUNT_RECEIVABLE_CLASSIFICATION</groupid>
 			<sortorder>ACCOUNTSRECEIVABLE.ACCCLASSID</sortorder>
    		<groupbyheader>key_accounts_receivable_classification</groupbyheader>
 			<header>
    			<column>
       				<fieldname>ACCCLASSNAME</fieldname>
    				<width>25</width>
    				<widthType>PERCENTAGE</widthType>
       				<header>key_accounts_receivable_classification:</header>
					
    			</column>
 			</header>
 			<footer>
		 		<column>
		    		<fieldname>=COUNT({EFFECTIVE_PARTICIPANTS})</fieldname>
		    		<header>key_effective_reward_participants:</header>
		    		<width>25</width>
		    		<widthType>PERCENTAGE</widthType>
		 		</column>
		 		<column>
		    		<fieldname>=COUNT({TERMINATED_PARTICIPANTS})</fieldname>
		    		<header>key_terminated_reward_participants:</header>
		    		<width>25</width>
		    		<widthType>PERCENTAGE</widthType>
		 		</column>
 			</footer>
  		</group>
  		<group>
 			<groupid>SIGN_UP_UNIT</groupid>
 			<sortorder>OUUNITS.OUUID</sortorder>
    		<groupbyheader>key_sign_up_unit</groupbyheader>
 			<header>
    			<column>
       				<fieldname>OUUNAME</fieldname>
    				<width>25</width>
    				<widthType>PERCENTAGE</widthType>
       				<header>key_sign_up_unit:</header>
					
    			</column>
 			</header>
 			<footer>
		 		<column>
		    		<fieldname>=COUNT({EFFECTIVE_PARTICIPANTS})</fieldname>
		    		<header>key_effective_reward_participants:</header>
		    		<width>25</width>
		    		<widthType>PERCENTAGE</widthType>
		 		</column>
		 		<column>
		    		<fieldname>=COUNT({TERMINATED_PARTICIPANTS})</fieldname>
		    		<header>key_terminated_reward_participants:</header>
		    		<width>25</width>
		    		<widthType>PERCENTAGE</widthType>
		 		</column>
 			</footer>
  		</group>
	</groups>

	<footers>
     	<column>
    		<fieldname>=COUNT({REWPARTNUM})</fieldname>
    		<header>key_number_of_reward_participants:</header>
    		<width>15</width>
    		<widthType>PERCENTAGE</widthType>
	 	</column>
	 	<column>
    		<fieldname>=SUM({THIS_MONTH_SCHEME_SIGN_UPS})</fieldname>
    		<header>key_scheme_sign_ups_during_this_month:</header>
    		<width>15</width>
    		<widthType>PERCENTAGE</widthType>
        	<fieldtype>FTXINTEGER</fieldtype>
	 	</column>
	 	<column>
    		<fieldname>=SUM({THIS_MONTH_SCHEME_SIGN_OFFS})</fieldname>
    		<header>key_scheme_sign_offs_during_this_month:</header>
    		<width>15</width>
    		<widthType>PERCENTAGE</widthType>
    		<fieldtype>FTXINTEGER</fieldtype>
	 	</column>
	 	<column>
    		<fieldname>=COUNT({EFFECTIVE_PARTICIPANTS})</fieldname>
    		<header>key_effective_reward_participants:</header>
    		<width>15</width>
    		<widthType>PERCENTAGE</widthType>
	 	</column>
	 	<column>
    		<fieldname>=COUNT({TERMINATED_PARTICIPANTS})</fieldname>
    		<header>key_terminated_reward_participants:</header>
    		<width>15</width>
    		<widthType>PERCENTAGE</widthType>
	 	</column>
	 	<column>
    		<fieldname>=COUNT({THIS_MONTH_TERMINATIONS})</fieldname>
    		<header>key_terminations_during_this_month:</header>
    		<width>15</width>
    		<widthType>PERCENTAGE</widthType>
	 	</column>
	 	<column>
    		<fieldname>=SUM({THIS_MONTH_AWARDED_AMOUNT})</fieldname>
    		<header>key_awarded_amount_during_this_month:</header>
    		<width>15</width>
    		<displaydefaultcurrencysymbol>true</displaydefaultcurrencysymbol>
    		<widthType>PERCENTAGE</widthType>
	 	</column>
	 	<column>
    		<fieldname>=SUM({THIS_MONTH_SPEND_AMOUNT})</fieldname>
    		<header>key_spent_amount_during_this_month:</header>
    		<width>15</width>
    		<displaydefaultcurrencysymbol>true</displaydefaultcurrencysymbol>
    		<widthType>PERCENTAGE</widthType>
	 	</column>
	</footers>
</definition>

 Accounts Receivable Balance Report Criteria

 Accounts Receivable Balance Report Results

For a full list of report page attributes, go to Report Pages Documentation

3. Define Report in Metadata

In order for the report to be available to the user, it must be defined in metadata file modules.xml, which is located under<custom_project>/web/WebContent/metadata directory.

modules.xml
<modules>
	<module>
		<moduleid>ACCOUNTS_RECEIVABLE</moduleid>
		<applicationid>FINANCE</applicationid>
		...
		<features>
			<feature>
				...
				<reports>
			    	<report>
			      		<id>ACCOUNTS_RECEIVABLE_BALANCE_REPORT</id>
			      		<name>key_accounts_receivable_balance</name>
			      		<description>key_view_the_accounts_receivable_balance</description>
			      		<reportfilename>AccountsReceivable/Accounts_Receivable_Balance.xml</reportfilename>
			    	</report>
					...
			    </reports>
			</feature>
			...
		</features>
	</module>
</modules>
 Reports Menu


For a full list of metadata report attributes, go to Reports Metadata.

  • No labels