SugarCRM v6.5 Как получить поле из другого модуля и отобразить его в другом модуле?

Я знаю об отношениях, но они получают только основное поле, а не другие поля. Например, у меня есть два модуля: модуль 1 содержит личную информацию пользователя, а модуль 2, скажем, содержит действия человека. в модуле 2 я хотел бы отобразить гендерную базу на основе его информации из модуля 1.

Как я могу продолжить?


person hungrykoala    schedule 19.12.2016    source источник


Ответы (1)


Для этого выполните следующие шаги: Примечание. Убедитесь, что модули Module-1 и Module-2 связаны одним из соотношений 1-M или M-M.

  • Шаг 1. Создайте новое поле в Модуле 2 для хранения / отображения значений пола.

  • Шаг 2: Создайте новый файл в расположении модуля 2 (custom / modules / Module2 / views / view.detail.php)

 <?php
    require_once('include/MVC/View/views/view.detail.php');
    class Module2ViewDetail extends ViewDetail {

        function Module2ViewDetail() {
            parent::ViewDetail();
        }

      function display() {

            $recordId = $this->bean->id;
            global $db;
              if($recordId){
                  /* write a query to fetch gender($gender) from module */
              }
          $this->dv->process();

          $this->ss->assign('GENDER',$gender);
          echo $this->dv->display(); 
        }

    }

 ?>
  • Шаг 3: \ custom \ modules \ Module2 \ metadata \ detailviewdefs.php

Добавьте customCode в поле пола, которое вы создали в Module2, как показано ниже. (Обратите внимание: укажите имя поля, аналогичное имени настраиваемого поля):

 1 => 
     array (
     0 => 
       array (
          'name' => 'gender_c',
          'label' => 'LBL_GENDER',
          'customCode' => '{$GENDER}',
       ),
     1 => '',
),

Надеюсь, что это поможет вам. Спасибо!

person Sachin I    schedule 19.12.2016
comment
Предлагаю написать после сохранения логический хук на Module1. И обновите поле пол в модуле2. - person Sachin I; 19.12.2016
comment
как сделать эту реализацию в SugarCRM v7.9? - person IKKA; 30.08.2018