+1, помимо просто возможности связать контакты должна быть возможность указать тип (или классификацию) связи.
Также сейчас в контакте есть поле Должность (типа строка), но если один и тот же контакт прикреплен к двум или более контактам то было бы логично иметь возможность указать его роль/должность по отношению к каждому из Компаний.
Именно. +100.
Это все уже неоднократно обсуждалось.
Если вкратце: у полей набор чего то кроме самой связи на объект должно быть еще и название связи, т.е. связь должна быть поименована. Еще в более развернутом варианте у связи должен быть еще и срок действия (с какого по какой момент эта связь действительна).
В некоторых случаях достаточно просто имени поля в котором хранится список (это и будет общее имя связи), в более сложном как например с должностями контактов в контрагентах требуется возможность для каждой связи задать имя (в данном случае это должности или например степень родства контактов).
В родительском так сказать объекте будет поле с набором, а в объекте на который ссылаются должен быть список ссылающихся на него. Ну т.е. действительно например как в справочниках сейчас отношения.
Как мы измудряемся сейчас:
со связями контактов пока что вообще забили так сказать — просто текстом написали в описании контакта все эти связи (это конечно никакая не автоматизация, никакой аналитической информации из этого не получить),
в задачах из-за того что нет меню Отношения приходится делать множественные поля как в одну сторону так и в обратную и 2 раза заполнять одну и ту же связь (пример: множество макетов входит в сборки, а сборка содержит макеты — пришлось в шаблоне макеты сделать поле типа набор задач — Входит в сборки, а в шаблоне сборка сделать поле Содержит макеты и вместо того чтобы один раз заполнить в одном месте эти данные приходится их дублировать вручную, возможно внося ошибки, тратя на это время и т.д.).
Итого:
1) для контактов необходимо поле Набор контактов-контрагентов
2) Для всех полей типа Набор чего-то (Набор задач, Набор записей справочника, Набор контактов-контрагентов) необходимо к собственно связи добавить еще один реквизит — имя связи (для начала может быть текстовой строкой).
3) Если хочется идеала — кроме имени связи добавить еще реквизиты Дата действия связи Начало и Дата действия связи Окончание.
4) Во всех объектах (задачах, контактах, в справочниках уже есть) добавить меню отношения (т.е. список ссылающихся).
5) В идеале вытащить этот список куда то из правого меню и отображать по типу как подзадачи, чтобы сразу были видны связи поскольку это очень важная информация (ну т.е. в редакторе шаблона задачи добавить список Отношения в возможно "вытаскиваемые" на форму задачи как сейчас можно вытаскивать кастомные поля), но здесь понятно что воплощение такового может привести к трате ресурсов хостера, поэтому пока второстепенная задача. В справочниках вроде как то приспособились сразу открывать эту менюшку Отношения, она является одной из самых важных в работе.