SugarTalk - ресурс для администраторов и разработчиков системы SugarCRM.

  1. Алина
  2. Общий форум
  3. Пятница, 21 июля 2017
  4.  Подписаться через email
По-умолчанию в базе заложена связь многие ко многим. Но при создании контакта нельзя указать несколько контрагентов. Единственный способ это заходить в каждую карточку контрагента и выбирать существующий контакт.
Проблема в том, что во-первых при открытии карточки контакта, имеется информация только о том, что контакт привязан к одной (последней) привязанной компании. А в реестре контактов отображается как дублирование.

Как грамотно решить эту проблему?
Комментарий
Никаких комментариев пока не создано.
SupportV Ответ принят Pending Moderation
0
Голосов
Undo
Эта связь действительно описана как многие ко многим

, 'relationships' => array ('accounts_contacts' => array('lhs_module'=> 'Accounts', 'lhs_table'=> 'accounts', 'lhs_key' => 'id',
'rhs_module'=> 'Contacts', 'rhs_table'=> 'contacts', 'rhs_key' => 'id',
'relationship_type'=>'many-to-many',
'join_table'=> 'accounts_contacts', 'join_key_lhs'=>'account_id', 'join_key_rhs'=>'contact_id'

По идее все что вам нужно это просто убрать с формы обычное relate поле(так как с помощью него можно выбрать и отобразить только одну запись). И добавить субпанель контрагентов в модуль контакты, примерно следующим образом:
Создать файл /custom/Extension/modules/Contacts/Ext/Layoutdefs/accounts_contacts.php

<?php
$layout_defs["Contacts"]["subpanel_setup"]["accounts_contacts"] = array (
'order' => 100,
'module' => 'Accounts',
'subpanel_name' => 'default',
'get_subpanel_data' => 'accounts',
'title_key' => 'LBL_ACCOUNTS',
);
?>

Ведь поле типа link для контактов уже создано. Его мы и указываем для субпанели - accounts.

Сам не пробовал, надобности не было, но должно по идее работать.
Единственное что не совсем нравится такой параметр вот 'link_type' => 'one' в modules/Contacts/vardefs.php:


'accounts' =>
array (
'name' => 'accounts',
'type' => 'link',
'relationship' => 'accounts_contacts',
'link_type' => 'one',
'source' => 'non-db',
'vname' => 'LBL_ACCOUNT',
'duplicate_merge'=> 'disabled',
),

Ну его наверно тоже лучше удалить. Можете это сделать в upgrade save через /custom/Extension
Комментарий
Никаких комментариев пока не создано.
  1. больше, чем месяц назад
  2. Общий форум
  3. # 1
Алина Ответ принят Pending Moderation
0
Голосов
Undo
Спасибо, как раз то, что нужно!
Единственное, не могу найти значение many для link_type, в документации не нашел этого. Прописываю

$dictionary["Contact"]["fields"]["accounts"] = array (
'link_type' => 'many',
);

И еще маленький вопрос: какой параметр прописать, чтобы теперь в карточке контакта, при создании контрагента, выводился QuickCreate, а не полная форма создания контрагента?
Комментарий
Никаких комментариев пока не создано.
  1. больше, чем месяц назад
  2. Общий форум
  3. # 2
SupportV Ответ принят Pending Moderation
0
Голосов
Undo
modules/Accounts/metadata/subpanels/default.php - заменить SubPanelTopCreateButton на SubPanelTopButtonQuickCreate
Комментарий
Никаких комментариев пока не создано.
  1. больше, чем месяц назад
  2. Общий форум
  3. # 3
Igor Ответ принят Pending Moderation
0
Голосов
Undo
Всем привет!

Интересует данный вопрос описанный в данной теме: Один контакт — несколько контрагентов.
Но к сожалению, не получается реализовать множественную связь по описанным выше пунктам. Может что не так делаю или упустил из виду что-то.
Напишите, пожалуйста, подробную инструкцию у кого получилось решить данный вопрос.
Комментарий
Никаких комментариев пока не создано.
  1. больше, чем месяц назад
  2. Общий форум
  3. # 4
ZIGELBAM Ответ принят Pending Moderation
0
Голосов
Undo

Всем привет!

Интересует данный вопрос описанный в данной теме: Один контакт — несколько контрагентов.
Но к сожалению, не получается реализовать множественную связь по описанным выше пунктам. Может что не так делаю или упустил из виду что-то.
Напишите, пожалуйста, подробную инструкцию у кого получилось решить данный вопрос.

Довольно подробно уже все написано.
Лучше, если вы напишите что вы сделали (приведите прямо код) и что получилось, а что не получилось.
Комментарий
Никаких комментариев пока не создано.
  1. больше, чем месяц назад
  2. Общий форум
  3. # 5
  • Страница :
  • 1


На это сообщение еще не было создано никаких ответов.
Будьте первым, кто ответит на него.
Гость
Ваш ответ
Загрузите файлы или изображения для данного обсуждения, нажав на кнопку Загрузить. Поддерживает до gif,jpg,png,jpeg,zip,rar,pdf
• Insert • Удалить Загрузка файлов (Максимальный размер файла: 2 MB)
Вы можете вставить опрос в свое обсуждение. Опрос будет добавлен в обсуждение.
Варианты голосования
Местонахождение

Указывая свое текущее местоположение при размещении нового вопроса, позволяет читателям определить Ваше местонахождение.

Широта:
Долгота:

Последние новости

  • 1
  • 2
  • 3
  • 4

Популярные новости

  • 1
  • 2
  • 3
  • 4