1

Как добавить поля в таблицу возможностей, чтобы они распространялись?

Из Studio > Opportunities > Fields я добавил поля. Простите, я не понимаю, следующий шаг, чтобы внести изменения в структуру базы данных и графический интерфейс для создания и просмотра возможностей.

Поля, доступные для модуля, перечислены здесь по Имени поля.

Чтобы настроить свойства для поля, щелкните Имя поля.

Чтобы создать новое поле, нажмите Добавить поле. Метка вместе с другими свойствами нового поля может быть отредактирована после создания, щелкнув Имя поля.

После развертывания модуля новые поля, созданные в Module Builder, рассматриваются как стандартные поля в развернутом модуле в Studio.

Тем не менее, нет изменений в основной базе данных:

mysql> 
mysql> describe sugarcrm.opportunities;
+------------------+--------------+------+-----+---------+-------+
| Field            | Type         | Null | Key | Default | Extra |
+------------------+--------------+------+-----+---------+-------+
| id               | char(36)     | NO   | PRI | NULL    |       |
| name             | varchar(50)  | YES  | MUL | NULL    |       |
| date_entered     | datetime     | YES  |     | NULL    |       |
| date_modified    | datetime     | YES  |     | NULL    |       |
| modified_user_id | char(36)     | YES  |     | NULL    |       |
| created_by       | char(36)     | YES  |     | NULL    |       |
| description      | text         | YES  |     | NULL    |       |
| deleted          | tinyint(1)   | YES  |     | 0       |       |
| assigned_user_id | char(36)     | YES  | MUL | NULL    |       |
| opportunity_type | varchar(255) | YES  |     | NULL    |       |
| campaign_id      | char(36)     | YES  |     | NULL    |       |
| lead_source      | varchar(50)  | YES  |     | NULL    |       |
| amount           | double       | YES  |     | NULL    |       |
| amount_usdollar  | double       | YES  |     | NULL    |       |
| currency_id      | char(36)     | YES  |     | NULL    |       |
| date_closed      | date         | YES  |     | NULL    |       |
| next_step        | varchar(100) | YES  |     | NULL    |       |
| sales_stage      | varchar(255) | YES  |     | NULL    |       |
| probability      | double       | YES  |     | NULL    |       |
+------------------+--------------+------+-----+---------+-------+
19 rows in set (0.00 sec)

mysql> 

Кроме того, дополнительные поля не появляются в графическом интерфейсе, когда в "создать возможность".

Что мне нужно сделать, чтобы поля, которые я создал в Studio действительно создавались не только в базе данных, но и в интерфейсе SugarCRM?

Конечно, я не должен вникать в PHP?

1 ответ1

2

Если я вас правильно понимаю, вы спрашиваете, как изменить интерфейс Sugar CRM, чтобы иметь настраиваемые поля.

Поскольку я сам изучаю интерфейс, я закончил добавлять новое поле на страницах Cases для номера билета JIRA, и оно также отображается в базе данных. Я попытаюсь добавить поле, о котором вы говорите, в раздел связи, а затем проведу вас по каждой части, как она используется.

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

Я использую утилиту vm для запуска SugarCRM CE 6.5.17 с клиентом базы данных php admin. Я предлагаю вам найти хорошего клиента SQL, который позволит вам увидеть базовую базу данных и выполнить поиск по ней.

Индекс

  1. Авторизоваться
  2. Добавьте поле к доступным компонентам sugarCRM
  3. Измените веб-форму, чтобы включить новое поле
  4. Создайте новую запись данных в SugarCRM
  5. Найдите наши данные!
  6. Как найти новые данные в любом месте, в любое время.

меры

  1. Войдите в систему как администратор системы SygarCRM CE.

  2. Добавьте поле к доступным компонентам sugarCRM

    • Админ -> Студия -> Возможности -> Поля -> Добавить поле
    • Имя поля: New_Field
    • Максимальный размер: 30
      • (оставьте остальные поля автоматически заполненными)
    • Нажмите Сохранить
  3. Измените веб-форму, чтобы включить новое поле

    • Админ -> Студия -> Возможности -> Макеты -> EditView
    • Перетащите поле "Новая строка" из "Инструменты" в раздел "Макет" в разделе "Описание".
    • Найдите поле, которое мы только что создали. Это следует назвать новым полем.
    • Перетащите поле из панели инструментов в раздел "Макет", где существует первое поле с именем (заполнитель).
    • Теперь вы должны наблюдать за изменением поля (заполнителя) с надписью, так как оно должно называться "новым полем" и иметь значок символа + или - слева. Это регулирует количество столбцов в правой части поля. (играть с иконкой, чтобы понять)
    • Нажмите Сохранить и развернуть
  4. Создайте свою новую возможность

    • Продажи -> Возможности -> Создать возможность
    • ВНИМАНИЕ. "Новое поле" должно находиться внизу первого раздела после "Описание". (или где вы его разместили)
    • Создать новую возможность купить, заполнив необходимые поля
    • Когда вам нужно заполнить "новое поле", мы будем использовать уникальное имя для поиска в базе данных.
      • Введите уникальное имя: AAA_XX_193rnafl93ra
        • (если это не достаточно уникально, создайте свое собственное уникальное имя)
    • Нажмите Сохранить
  5. Найдите наши данные!

    • Войдите в базу данных sugarcrm как администратор (я использую phpMyAdmin, потому что я работаю на vm разработчика)
    • Мы ищем таблицу с именем fields_meta_data
    • Запросите эту таблицу, и вы заметите, что новое поле, которое вы только что добавили, существует здесь с его описательными данными. Скорее всего, называется LBL_NEW_FIELD. У него есть отметка даты, поэтому вы также можете искать в таблице по date_modified и фильтровать на сегодня.
    • Скорее всего, в таблице также будет столбец идентификатора с именем Opportunitiesnew_field_c.
    • Это META DATA, которая создается на шаге 2

    • Теперь мы ищем наши данные, которые были сохранены в новом поле.

    • Таблицы с суффиксом "_cstm", как и в powers_ctsm, скорее всего будут содержать пользовательские поля.
    • Сделайте запрос к таблице powers_ctsm, и вы должны заметить, что наше имя поля существует здесь
    • Я вижу new_field_c в моей таблице powers_ctsm, и он содержит значение: AAA_XX_193rnafl93ra
    • Обратите внимание на столбец id_c, поскольку он становится точкой, в которой мы можем присоединиться к таблице возможностей в поле id.
  6. Как найти новые данные в любом месте, в любое время.

    • Так почему же мы использовали "AAA_XX_193rnafl93ra" в качестве нашей уникальной строки?
      • Мы можем выполнить поиск по всей базе данных sugarcrm, просматривая каждое поле, чтобы найти это значение, чтобы определить, в какой таблице оно было сохранено.
    • В phpMyAdmin это так же просто, как щелкнуть по имени базы данных в журнале в верхней части веб-страницы.
      • localhost -> Sugarcrm (дБ)
      • Нажмите на вкладку поиска над списком таблиц базы данных.
      • Введите следующую строку поиска: AAA_XX_193rnafl93ra
      • Выберите все таблицы
      • Нажмите Go
      • Используйте [ctrl] F для поиска на веб-странице слова "Обзор", поскольку оно будет отображаться рядом с таблицей, в которой был найден элемент.
      • Войдите в таблицу, и вы должны найти, где было размещено ваше новое поле.
    • Если у вас нет phpMyAdmin, узнайте, как выполнить общий поиск в базе данных контента, или попросите своего администратора баз данных включить ведение журнала для SQL, отправленного в базу данных, и выполнить поиск вашего уникального имени. Oracle имеет возможность регистрации, которая может сделать это.
    • Короче говоря, мы создали устройство отслеживания, которое позволяет быстро перемещаться по базе данных, чтобы найти то, что изменилось.
    • Создание среды разработчика значительно улучшит время поиска, поскольку база данных будет в основном пустой.

Теперь у вас должна быть новая точка данных в базе данных и новое поле в вашей форме sugarCRM.

Похоже, что ребята, которые построили сахарную систему, проделали хорошую работу, поскольку они держали базовые таблицы отдельно от новых полей. Это позволит меньше проблем при обновлении до более новой версии. Поскольку базовая таблица может быть полностью реструктурирована и при условии, что она все еще содержит столбец «id», она может соединяться с вашими пользовательскими полями.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .