Jump to content
SpravkaCRM.ru - Ваш справочник по CRM

multiSelect - компактный вид справочников 1.0.0

   (0 reviews)

1 Screenshot

About This File

multiSelect - это дополнение к CRM-системе на базе SugarCRM/SuiteCRM, которое позволяет отображать выпадающие списки при поиске записей модулей в более компактном виде. Вот смотрите, на примере модуля Контрагенты:

 

2016-11-05_13-06-35.png

 

Здесь поля "Тип", "Отрасль" и "Ответственный" - это списки. В них можно выбрать одно или несколько значений, и CRM-система будет искать Контрагентов в соответствии с выбранными значениями. Когда списков на странице мало - их компактное отображение не является какой-либо важной задачей. Но вот если списков много, то внешний вид становится достаточно ужасным. Или, например, на одной строке поиска располагаются поля в виде строки и в виде мульти-списка. Разная высота полей просто убивает весь внешний вид поиска, делая его просто свалкой каких то полей. С этим очень не удобно работать.

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

Ставится расширение в стандартный Установщик модулей. Для этого идем в Администрирование -> Загрузчик модулей:

2016-11-05_13-22-49.png

Далее выбираем ранее скачанный вами файл с раширением и нажимаем кнопку "Загрузить":

2016-11-05_13-23-43.png

Модуль должен появиться в списке расширений, готовых к установке. Нажимаем кнопку "Установить":

2016-11-05_13-24-42.png

Далее система вам покажет мои условия распространения этого модуля: я ни за что не отвечаю, и если что то там пойдет не так - я не виноват. Если такие условия использования модуля вам подходят - выберите пункт "Принимаю" и жмите кнопку "Вперед". Если не подходят - жмите кнопку "Отказаться", или просто прекратите установку модуля, удалите его из списка модулей и не  используйте как-либо еще в вашей CRM-системе:

2016-11-05_13-25-45.png

Если условия использования расширения были вами приняты, то система произведет установку модуля multiSelect в вашу CRM-систему, о чем сообщит по окончании процесса установки 100% полоской и кучей информации технического характера типа вот такого:

2016-11-05_13-30-26.png

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

2016-11-05_13-32-16.png

Как вы можете увидеть модуль multiSelect был перемещен в блок установленных модулей:

2016-11-05_13-32-43.png

Теперь все выпадающие списки, которые используются при поиске записей в модулях, будут иметь однострочный вид:

2016-11-05_13-34-33.png

Если кликнуть на поле со списком, то откроется список всех возможных значений, в котором вы сможете выбрать одно или несколько значений. Чтобы убрать список всех значений приведя обратно однострочный вид - нужно кликнуть мышкой вне поля. Если было выбрано одно значение, то в поле отобразится это выбранное значение. Если было выбрано несколько значений, то отобразится указание кол-ва выбранных значений:

2016-11-05_13-35-32.png

И еще одна маленькая подсказка по настройке: когда вы кликаете по такому полю, то появляется список высотой из 6 строк. Это кол-во строк по умолчанию. Это не совсем удобно для длинных списков: их приходится прокручивать. Но вы можете переопределить кол-во строк для того или иного списка. Правда сделать это можно только немного подправив код проекта. Через админку или еще как-либо без доступа к исходникам - не получится. Откройте файл searchdefs.php для того модуля, где вы хотите подправить кол-во строк. Например для Контрагентов это modules/Accounts/metadata/searchdefs.php (или custom/modules/Accounts/metadata/searchdefs.php, если есть). Там ищете нужное название поля, и добавляете в его описание блок:

'displayParams' =>
    array(
        'size' => 11,
    ),

Таким образом, например, описание поля "Тип" в Контрагентах примет вид:

'account_type' => 
array (
  'name' => 'account_type',
  'default' => true,
  'width' => '10%',
    'displayParams' =>
        array(
            'size' => 11,
        ),
),

Тем самым я указал, что высота списка должна быть 11 строк. Это как раз размер списка с типами контрагентов. После этого в некоторых случаях требуется запустить "Быстрое восстановление" в Администрирование -> Восстановление.

В результате после перезагрузки страницы с списком Контрагентов при клике на поле "Тип" у вас должен появиться список со всеми возможными значениями без прокрутки:

2016-11-05_13-48-36.png

 

 

Дополнительная информация:

  • Посмотреть исходные коды расширения и поучавствовать в развитии вы можете в проекте на Bitbucket

 


What's New in Version 1.0.0   See changelog

Released

2016-11-05_13-06-35.png

2016-11-05_13-22-49.png

2016-11-05_13-23-43.png

2016-11-05_13-24-42.png

2016-11-05_13-25-45.png

2016-11-05_13-30-26.png

2016-11-05_13-32-16.png

2016-11-05_13-32-43.png

2016-11-05_13-34-33.png

2016-11-05_13-35-32.png

2016-11-05_13-48-36.png




User Feedback

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
×
×
  • Create New...