Sugarcrm Формула зависимого поля

В SugarCRM я пытаюсь создать зависимое поле, которое будет видно, если выпадающее меню равно «Специалист».

Но я вижу зависимое поле при загрузке самой страницы в этой вкладке.

Зависимое поле находится в разных TAB, это проблема?

Мой код сейчас:

$dictionary['account']['fields']['reason_c']['dependency']='contains($business_c,"Specialist")';

куда специалист это текст в опции.

Кто-нибудь может мне помочь. Благодарю.

2

Решение

Ссылка Ссылка

Зависимое поле — отображение на основе значений списка
обзор

Зависимые поля используют Sugar Logic для управления видимостью полей, чтобы они отображались только при соблюдении определенных условий. Администраторы могут создавать эти формулы через Studio или Module Builder при редактировании поля, установив флажок Зависимый и используя построитель формул. В этой статье будет представлен пример формулы для зависимого поля, которая появляется только в том случае, если поле в записи соответствует списку допустимых значений.

Для обзора по логике сахара и вычисляемых полей, пожалуйста, обратитесь к статье Введение в вычисляемые поля.
Случай использования

В этом примере мы создадим настраиваемое поле «Статус» в модуле «Счета», только если поле «Тип счета» соответствует одному из трех указанных значений: Клиент, Партнер или Инвестор.
Предпосылки

Вам нужно будет создать новое поле типа TextField в модуле «Учетные записи» и пометить его как зависимое поле, прежде чем вводить следующую формулу.
формула

Приведенная ниже зависимая формула сделает поле «Состояние» видимым в окне редактирования и подробного просмотра модуля «Учетная запись», только если выбранное значение поля «Тип» в раскрывающемся списке равно Клиент, Партнер или Инвестор.

isInList($account_type,createList("Customer","Partner","Investor"

Формула Разбивка

Функция createList () создает временный список строковых значений, которые мы будем использовать для сравнения. Затем мы используем функцию isInList (), чтобы проверить, появляется ли значение поля account_type во временном списке. Поскольку account_type — это раскрывающееся поле, isInList () будет использовать имя элемента выбранной опции (в отличие от его отображаемой метки) в качестве значения сравнения. Вы можете видеть названия элементов и отображать метки для всех опций в выпадающем меню в Admin> Dropdown Editor.

Если выбранная опция account_type имеет имя элемента «Клиент», «Партнер» или «Инвестор», то формула вернет «true», что приведет к отображению зависимого поля «Состояние».

В нашем примере функция createList () генерирует временный список значений (Customer, Partner, Investor), а функция isInList () сравнивает список со значением поля Type. Поскольку имя элемента выбранного типа учетной записи — «Клиент», условие выполнено, и поле «Состояние» будет отображаться.
заявка

Как только пользовательское текстовое поле будет создано с формулой зависимости и добавлено к редактированию модуля и подробному представлению, появится зависимое поле, если поле типа содержит одно из значений в указанном вами списке. В нашем примере поле «Состояние» отображается, поскольку поле «Тип учетной записи» имеет отображаемое значение «Клиент».

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]