Hi @sanmar -
This is an interesting one, there’s no multi-select parameter/filter for ‘match all’.
Here’s a workaround that utilizes @darcoli 's multi select parameter action
Step 1 - Create a ‘SelectedItemIDs’ parameter with a default value of ‘,’
Step 2 - Create a ‘c_updated_selected_items_id’ calculated field and add to a table visual group by.
ifelse(
locate(${SelectedItemIDs}, {item_id}) > 0, replace(${SelectedItemIDs}, concat({item_id},','), ''),
concat(${SelectedItemIDs},{item_id},',')
)
Step 3 - Create ‘c_in_selected_item_ids_flg’ calculated field and use in conditional formatting.
ifelse(locate(${SelectedItemIDs}, {item_id} ) > 0 , 1, 0)
Step 4 - Add ‘c_all_items_flg’ calculate field to use as filter.
// hard coded 10 matches
ifelse(
maxOver(ifelse({item_id}=split(${SelectedItemIDs},',',2),1,0),[{client_id}],PRE_AGG)+
maxOver(ifelse({item_id}=split(${SelectedItemIDs},',',3),1,0),[{client_id}],PRE_AGG)+
maxOver(ifelse({item_id}=split(${SelectedItemIDs},',',4),1,0),[{client_id}],PRE_AGG)+
maxOver(ifelse({item_id}=split(${SelectedItemIDs},',',5),1,0),[{client_id}],PRE_AGG)+
maxOver(ifelse({item_id}=split(${SelectedItemIDs},',',6),1,0),[{client_id}],PRE_AGG)+
maxOver(ifelse({item_id}=split(${SelectedItemIDs},',',7),1,0),[{client_id}],PRE_AGG)+
maxOver(ifelse({item_id}=split(${SelectedItemIDs},',',8),1,0),[{client_id}],PRE_AGG)+
maxOver(ifelse({item_id}=split(${SelectedItemIDs},',',9),1,0),[{client_id}],PRE_AGG)+
maxOver(ifelse({item_id}=split(${SelectedItemIDs},',',10),1,0),[{client_id}],PRE_AGG)+
maxOver(ifelse({item_id}=split(${SelectedItemIDs},',',11),1,0),[{client_id}],PRE_AGG)
=strlen(replace(${SelectedItemIDs},',','')),'Y','N')
Result: