Я хотел бы оценить 3 списка выбора, а затем вернуть ответ в зависимости от того, какие из них верны (все три могут быть истинными одновременно).

Так, например, если все параметры SAQ Required, LUA Required и Construction Required отмечены как «да», формула вернет значение «SAQ LUA CONSTRUCTION». Я придумал ниже, но это только дошло до меня.

Как вернуть несколько значений, если многие из них оцениваются как истинные?

IF(ISPICKVAL(  SAQ_Required__c , 'yes'), 'SAQ',
IF(ISPICKVAL( LUA_Required__c , 'yes'), 'LUA',
IF(ISPICKVAL(Construction_Required__c, 'yes'), 'Construction',
' '
)))
0
Kris Goncalves 28 Май 2020 в 01:57

1 ответ

Лучший ответ

В качестве примечания я бы проанализировал, почему вы это делаете и действительно ли вам это нужно. Вы должны иметь возможность выбирать другую комбинацию значений раскрывающегося списка в фильтрах отчетов/списков.

В любом случае, вы можете сделать любую из этих двух вещей, но я бы выбрал вариант №1.

Справка

  1. Объедините строку на основе операторов IF

enter image description here

IF(ISPICKVAL(SAQ_Required__c , 'yes'), 'SAQ ', '') &
IF(ISPICKVAL(LUA_Required__c , 'yes'), 'LUA ', '') & 
IF(ISPICKVAL(Construction_Required__c, 'yes'), 'Construction', '')

  1. Вы также можете использовать AND для оценки нескольких требований и выявления всех возможностей. Это гораздо более громоздко и быстро выйдет из-под контроля с большим количеством значений.

enter image description here

IF(
AND(
ISPICKVAL(SAQ_Required__c, 'yes'),
ISPICKVAL(LUA_Required__c, 'yes'),
ISPICKVAL(Construction_Required__c, 'yes')), 'SAQ LUA CONSTRUCTION',

IF(
AND(
ISPICKVAL(SAQ_Required__c, 'yes'),
ISPICKVAL(LUA_Required__c, 'yes')), 'SAQ LUA',

IF(
AND(
ISPICKVAL(SAQ_Required__c, 'yes'),
ISPICKVAL(Construction_Required__c, 'yes')), 'SAQ CONSTRUCTION',

IF(
AND(
ISPICKVAL(LUA_Required__c, 'yes'),
ISPICKVAL(Construction_Required__c, 'yes')), 'LUA CONSTRUCTION', '')
)))
1
Kris Goncalves 28 Май 2020 в 03:10
Спасибо, Крис - я ценю вопрос «почему». Я знаю, что это выглядит не очень логично, но формула на самом деле предназначена для целей отчетности только для точного заполнения панели мониторинга. Когда я пробую вашу логику, я получаю «Ошибка: неправильное количество параметров для функции« ЕСЛИ () ». Ожидается 3, получено 8», есть идеи, как лучше всего решить?
 – 
Kate Holden
28 Май 2020 в 03:02
Какой из них вы использовали? №1 должен работать нормально. Я пропустил операторы IF в № 2, но я его отредактировал.
 – 
Kris Goncalves
28 Май 2020 в 03:07
# 2 Я все еще получаю эту ошибку, но не могу понять, почему. Я обновил ваш # 2, так как PICKVAL был написан с ошибкой, но это не должно быть проблемой - все еще вижу «Ошибка: неправильное количество параметров для функции« IF() ». Ожидается 3, получено 8 "
 – 
Kate Holden
28 Май 2020 в 03:09
Ах, это сработало отлично! Спасибо
 – 
Kate Holden
28 Май 2020 в 03:10