Добрый день!
Всё верно - при построении такой схемы, у каждого поставщика будет меняться ссылка на клиента. И в результате поставщик будет иметь ссылку на последнего клиента, которому он был добавлен.
Наиболее часто аналогичная ситуация возникает, когда в проекте есть список товаров и разработчик просто создаёт в заказе дочерний список со списком, в котором у записи есть лишь ссылка на товар. В результате товар имеет ссылку об использовании только в последнем заказе.
Использование обратной ссылки в объекте клиентов на объект поставщиков - задачу не решает. Она реализует
тип связи "один-к-одному" и в Вашем случае её использование недопустимо. Тем более, что в объекте поставщиков нет такой же обратной ссылки на клиента (что надо было бы сделать при правильном построении взаимной связи между клиентом и поставщиком.
Чтобы не возникало такой коллизии - надо добавлять промежуточный объект, вроде "Список поставщиков", который имеет ссылку на поставщика. В нём можно добавить поля ссылок на поля этого-же объекта (чтобы сразу видеть нужную информацию), а также добавить данные, которые могут касаться именно привязки поставщика к данному клиенту.
В форме клиентов удаляется дочерний список "Поставщик" и вместо него добавляется "Список поставщиков".
В объекте "Поставщик" удаляется лишняя системная ссылка на клиента ("~Клиент"), а у клиента - ссылка на поставщика и обратная связь.
Теперь в объекте "Список поставщиков" можно добавить фильтр по поставщику и увидеть, какие клиенты к нему привязаны.
---
Другой вариант, более удобный именно в Вашем случае - это создать связь "много-ко-многим", добавив в форме клиентов дочерний список с равнозначной связью (а не подчинённой).
При этом создаётся системный объект с двумя ссылками на объект клиентов и объект поставщиков ("~Клиент-Поставщик"). Можно также создать форму связи на базе поставщиков и добавить в ней дочерний равнозначный объект клиентов. При этом программа увидит, что можно использовать уже существующий системный объект обратной связи и будет использовать его для этой формы (не создавая дублирующего).
Теперь в обоих формах вы будете видеть взаимные списки. Можно добавить переходы по правой кнопки к соответствующим формам, чтобы быстро переходить между ними (например для формирования документов).
Обратите внимание, что если в системном объекте "~Клиент-Поставщик" нет других полей, кроме ссылок на клиента и поставщика, выбор в дочернем равнозначном списке производится лишь из списка записей - через одно диалоговое окно.
Если в системном объекте добавить дополнительные поля, то после выбора записи из объекта-источника, будет открываться дополнительное окно для заполнения остальных полей в этом объекте связи.