You need to sign in to do that
Don't have an account?
Pubali Banerjee 2
I have an wrapper class , whose list is returned in the method. how to sort this list based on a checkbox field?
I have an wrapper class , whose list is returned in the method. how to sort this list based on a checkbox field ( in my case it is My target field)? I want to sort it as all records with My target =false must show up first.
Wrapper class:
public class tsfwrapper {
@AuraEnabled
public string accountName{get;set;}
@AuraEnabled
public string TSFId{get;set;}
@AuraEnabled
public Id accountId{get;set;}
@AuraEnabled
public string territoryName{get;set;}
@AuraEnabled
public decimal YTDActivity{get;set;}
@AuraEnabled
public date lastActivityDate{get;set;}
@AuraEnabled
public boolean alignmentRequest{get;set;}
@AuraEnabled
public boolean myTarget{get;set;}
@AuraEnabled
public string preferredAddress{get;set;}
@AuraEnabled
public string preferredLocation{get;set;}
}
Method where wrapper list is returned:
for(Account acc: accList)
{
Id accIdVar = acc.Id;
system.debug('*****Account ID'+accIdVar);
tsfwrapper twrpc = new tsfwrapper();
if(tsfMap.Keyset().contains(accIdVar)){
if(tsfMap.get(accIdVar)!=null){
twrpc.TSFId = tsfMap.get(accIdVar).Id;
twrpc.accountName = tsfMap.get(accIdVar).Account_vod__r.Name;
twrpc.accountId = tsfMap.get(accIdVar).Account_vod__c;
twrpc.territoryName = tsfMap.get(accIdVar).Territory_vod__c;
twrpc.YTDActivity = tsfMap.get(accIdVar).YTD_Activity_vod__c;
twrpc.lastActivityDate = tsfMap.get(accIdVar).Last_Activity_Date_vod__c;
twrpc.alignmentRequest = tsfMap.get(accIdVar).MSD_Alignment_Request__c;
twrpc.myTarget = tsfMap.get(accIdVar).My_Target_vod__c;
twrpc.preferredAddress = tsfMap.get(accIdVar).MSD_CORE_My_Last_Used_Address__c;
twrpc.preferredLocation = tsfMap.get(accIdVar).MSD_CORE_My_Last_Used_Location__c;
}
}
else
{
system.debug('******Inside Null List');
twrpc.TSFId = '';
twrpc.accountName = acc.Name;
twrpc.accountId = acc.Id;
twrpc.territoryName = terrName;
twrpc.YTDActivity = 0.0;
twrpc.lastActivityDate = Null ;
twrpc.alignmentRequest = false;
twrpc.myTarget = false;
twrpc.preferredAddress = '';
twrpc.preferredLocation = '';
}
twrp.add(twrpc);
}
return twrp;
Wrapper class:
public class tsfwrapper {
@AuraEnabled
public string accountName{get;set;}
@AuraEnabled
public string TSFId{get;set;}
@AuraEnabled
public Id accountId{get;set;}
@AuraEnabled
public string territoryName{get;set;}
@AuraEnabled
public decimal YTDActivity{get;set;}
@AuraEnabled
public date lastActivityDate{get;set;}
@AuraEnabled
public boolean alignmentRequest{get;set;}
@AuraEnabled
public boolean myTarget{get;set;}
@AuraEnabled
public string preferredAddress{get;set;}
@AuraEnabled
public string preferredLocation{get;set;}
}
Method where wrapper list is returned:
for(Account acc: accList)
{
Id accIdVar = acc.Id;
system.debug('*****Account ID'+accIdVar);
tsfwrapper twrpc = new tsfwrapper();
if(tsfMap.Keyset().contains(accIdVar)){
if(tsfMap.get(accIdVar)!=null){
twrpc.TSFId = tsfMap.get(accIdVar).Id;
twrpc.accountName = tsfMap.get(accIdVar).Account_vod__r.Name;
twrpc.accountId = tsfMap.get(accIdVar).Account_vod__c;
twrpc.territoryName = tsfMap.get(accIdVar).Territory_vod__c;
twrpc.YTDActivity = tsfMap.get(accIdVar).YTD_Activity_vod__c;
twrpc.lastActivityDate = tsfMap.get(accIdVar).Last_Activity_Date_vod__c;
twrpc.alignmentRequest = tsfMap.get(accIdVar).MSD_Alignment_Request__c;
twrpc.myTarget = tsfMap.get(accIdVar).My_Target_vod__c;
twrpc.preferredAddress = tsfMap.get(accIdVar).MSD_CORE_My_Last_Used_Address__c;
twrpc.preferredLocation = tsfMap.get(accIdVar).MSD_CORE_My_Last_Used_Location__c;
}
}
else
{
system.debug('******Inside Null List');
twrpc.TSFId = '';
twrpc.accountName = acc.Name;
twrpc.accountId = acc.Id;
twrpc.territoryName = terrName;
twrpc.YTDActivity = 0.0;
twrpc.lastActivityDate = Null ;
twrpc.alignmentRequest = false;
twrpc.myTarget = false;
twrpc.preferredAddress = '';
twrpc.preferredLocation = '';
}
twrp.add(twrpc);
}
return twrp;
To aheive this there is small changes is required in wrapper class:
Method where wrapper list is returned:
Add the line twrp.sort(); after twrp.add(twrpc);
Thanks,
Maharajan.C
All Answers
To aheive this there is small changes is required in wrapper class:
Method where wrapper list is returned:
Add the line twrp.sort(); after twrp.add(twrpc);
Thanks,
Maharajan.C
One request, i have posted another question on draft values, please check if you time :)
Question URL: https://developer.salesforce.com/forums/ForumsMain?id=9062I000000gBozQAE