Sugar CRM, получение значения автоматического приращения в пользовательском поле

#php #mysql #sugarcrm

#php #mysql #sugarcrm

Вопрос:

Я использую Sugar Professional 6, а также проверяю то же самое в версии сообщества. В модуле проекта у меня есть название проекта, которое должно автоматически генерироваться из другого поля, называемого MSO, с префиксом и номером автоматического приращения.

Например

Код MSO- Xyz Название проекта должно быть- Xyz1

Для следующей записи

Код MSO- Abcd Название проекта должно быть- Abcd1

Код MSO- Xyz Название проекта должно быть- Xyz2

Ответ №1:

Я бы определенно сделал это с помощью логических перехватов в модуле проекта save action.

  • Создайте logic_hooks.php в пользовательском/modules/MyModule/

     <?
    $hook_array = Array(); 
    $hook_array['after_save'] = Array(); 
    $hook_array['after_save'][] = Array(0, 'myName', 'custom/modules/myModule/logic_hooks/file.php','myClass', 'myMethod');   
    ?>
      
  • Создать file.php в /custom/modules/MyModule/logic_hooks/

     <?php
    class myClass{
        function myMethod(amp;$bean, $event, $arguments){
            // Do something with $bean (e.g. load the MSO code and calculate the project name, and afterwards set the project name to the found value.)
        }
    }
    ?>
      

Для получения дополнительной информации смотрите: http://developers.sugarcrm.com/docs/OS/6.1/-docs-Developer_Guides-Sugar_Developer_Guide_6.1.0-Chapter 4 Customizing Sugar.html#9000530

Комментарии:

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

2. Спасибо за ваш ответ, я использовал AJAX для достижения той же цели

Ответ №2:

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

Спасибо