Настройка отношения виртуальных таблиц

Виртуальные таблицы включены для отношений. Можно настраивать отношения 1:N, N:1 и пользовательские отношения для нескольких таблиц (полиморфные). Отношения могут быть установлены между:

  • Локальными таблицами в Dataverse и виртуальными таблицами.
  • Виртуальными таблицами и другими виртуальными таблицами того же поставщика, например SQL->SQL.

Например, вы не можете установить отношение между виртуальной таблицей, созданной с помощью поставщика виртуальных таблиц OData, и виртуальной таблицей, созданной с помощью поставщика виртуального соединителя.

Определение отношений в виртуальных таблицах

Виртуальные таблицы, созданные с помощью поставщика виртуального соединителя, автоматически создают все столбцы, представленные во внешней исходной таблице. Это также будет включать столбцы, для которых определены отношения. Однако определение отношения не будет создано автоматически. Вам нужно будет определить это отношение в Dataverse вручную.

В следующем примере создается отношение N:1 между виртуальной таблицей (Запрос на обслуживание) и собственной таблицей (Account). Столбец, используемый для настройки отношений, это AccountId. Этот столбец является первичным ключом в таблице учетных записей и внешним ключом в таблице запросов на обслуживание.

Представление виртуальной таблицы Запрос на обслуживание показано ниже. Вы заметите, что столбец AccountId, который является столбцом, используемым для отношения во внешнем источнике, имеет тип Несколько строк текста. Вам нужно, чтобы этот столбец был представлен в виде типа Подстановка, чтобы создать отношение.

Создание столбцов в виртуальной таблице

  1. Перейдите к Дополнительные параметры >Параметры > Настройка и выберите Настроить систему.

  2. В левой панели навигации разверните представление Сущности и перейдите к определению виртуальной таблицы Запрос на обслуживание.

  3. Выберите представление Поля, выберите столбец AccountId, затем выберите Удалить.

  4. Выберите Удалить, чтобы подтвердить удаление этого столбца.

  5. Чтобы создать отношение, выберите Отношение N:1 внутри таблицы Запрос на обслуживание.

  6. Выберите Создать отношение "многие к одному".

  7. Введите следующие сведения, чтобы создать отношение между виртуальной таблицей Запрос на обслуживание и таблицей Account.

    1. В разделе Определение отношения – установите значение столбца Основная сущность на Account.
    2. При желании, если вы хотите отредактировать имя отношения, вы можете сделать это в столбце Имя.
    3. В разделе Поле подстановки установите для параметра Отображаемое имя значение Учетная запись.
    4. Столбец Имя автоматически заполняется именем столбца подстановки.
    5. Установите для Внешнее имя значение AccountId (соответствует имени столбца в исходной таблице).
  8. Сохраните, затем закройте отношение.

    Создание отношения

  9. Обратитесь к столбцам для виртуальной таблицы Запрос на обслуживание, и вы заметите, что столбец AccountId имеет тип Подстановка. Теперь этот столбец можно добавлять в формы и представления, чтобы просмотреть все связанные учетные записи для каждой записи запроса на обслуживание.

    Столбцы настраиваемой таблицы

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

    Создание настраиваемой таблицы

Примечание

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

Совет

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

Следующие шаги

Создание виртуальных таблиц с помощью поставщика виртуальных соединителей (предварительная версия)