function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
Swamy P R NSwamy P R N 

How to compare a multiselect picklist with a selectlist value by Apex

Hi buddies,

i want to compare a multiselected picklist  value with a selected value by a Dynamic Query,but i was getting error like :

System.QueryException: expecting a left parentheses, found 'Sales User 3%'

private string salesuserquery ;

  private string  salesuser{get;set;}

My query is :

salesuserquery='select id,name,Forecast_User__c,(select id,name,Amount__c from Quotas__r) from QUX_Forecast__c where  (Select_Any_User__c includes \''+String.escapeSingleQuotes(salesuser)+'%\')';

List<QUX_Forecast__c> lstfrcstusrs = Database.query(salesuserquery);

Multi Picklist field : Select_Any_User__c

Is anyone could suggest me.
Best Answer chosen by Swamy P R N
Swamy P R NSwamy P R N
Its resolved by the below query,never compare "%" also for exact values.By adding open brackets for "Inclues"

salesuserquery='select id,name,Forecast_User__c,(select id,name,Amount__c from Quotas__r) from QUX_Forecast__c where  Select_Any_User__c includes (\''+String.escapeSingleQuotes(salesuser)+'\')';

All Answers

Ashish_SFDCAshish_SFDC
Hi , 


Use ISpickval instead of includes function. 


Regards,
Ashish
Swamy P R NSwamy P R N
Ashish,

The comparision is by Apex not formulae fields.So any idea on that part.
Swamy P R NSwamy P R N
Its resolved by the below query,never compare "%" also for exact values.By adding open brackets for "Inclues"

salesuserquery='select id,name,Forecast_User__c,(select id,name,Amount__c from Quotas__r) from QUX_Forecast__c where  Select_Any_User__c includes (\''+String.escapeSingleQuotes(salesuser)+'\')';
This was selected as the best answer