Поділитися через


Відомі обмеження та усунення несправностей з віртуальними таблицями

У цій статті описані відомі обмеження та поради щодо усунення несправностей під час роботи з віртуальними таблицями в Microsoft Dataverse.

Відомі обмеження

Нижче наведено список відомих обмежень для віртуальних таблиць, створених за допомогою постачальника віртуальних з’єднувачів.

Основні

  • Використовувана таблиця або список має містити принаймні одне рядкове поле, яке використовуватиметься як основне, і одне поле GUID. Без цих рядкових полів віртуальна таблиця не може бути створена, а на етапі отримання відомостей про таблицю буде згенерована помилка.
    • SharePoint використовує приховане числове поле ID, яке є у всіх списках
    • SQL може використовувати поле GUID або ціле число
    • В Excel має бути поле GUID
  • Dataverse може створювати лише стовпці, які містять сумісні з типами даних Dataverse. Сюди входять такі типи даних:
    • String
    • Багаторядковий текст (пам’ятка)
    • Ціле число/ціле число
    • Десяткове число
    • Float
    • Дата та час
    • Логічне значення «Так» або «Ні».
    • Варіанти (вибір кількох значень)
    • Гіперпосилання/URL-адреса
  • Типи даних, які не підтримуються для віртуальних таблиць:
    • Файли та вкладення
    • Image
    • Підстановка
  • Максимальна довжина символів для текстового стовпця у віртуальній таблиці становить 4000 символів. Якщо максимальна кількість символів у вихідній таблиці перевищує це значення, будь-яка операція створення/оновлення, що перевищує максимальний ліміт символів, призводить до помилки перевірки, і операція не вдається.
  • Запити віртуальної таблиці можуть повернути максимум 1,000 записів. Якщо у вас є користувальницький багатотабличний (поліморфний) зв’язок 1:N або N з віртуальною таблицею, будь-який запит, що перевищує це обмеження, зазнає невдачі та видає помилку. Використовуйте фільтрацію в запиті, щоб зменшити набір записів і таким чином обійти це обмеження.
  • Відстеження недоступне для віртуальних таблиць, оскільки Dataverse може виконувати відстеження та відповідне збереження тільки для локальних даних.
  • Зведені та обчислювані поля не можна обчислювати для віртуальних таблиць. Це пов’язано з тим, що зведення – це обчислення Dataverse на стороні сервера, яке вимагає, щоб дані зберігалися локально.
  • Віртуальна Microsoft Entra таблиця IDвіртуальна, надана Microsoft, дозволяє лише доступ для читання.
  • Dataverse Віртуальні таблиці можуть відображати в полях значення, що перевищують звичайні максимальні значення Dataverse. Така поведінка пов’язана з тим, що представлені значення не зберігаються локально. Наприклад, максимальне Dataverse ціле значення становить 100,000,000,000, але воно може отримувати та відображати 9,000,000,000,000 з SharePoint. Однак, якщо користувач намагається змінити число до розміру, більшого за максимально допустимий розмір Dataverse , з’являється повідомлення про помилку, яка вказує, що запис не може бути збережений, оскільки він перевищує максимальний розмір.
  • Функції імпорту та експорту даних таблиць не підтримуються для віртуальних таблиць.

Для кожного джерела даних

Нижче наведено обмеження для кожного джерела даних.

  • Віртуальні таблиці SQL можуть використовувати поле GUID або Integer для первинного ключа для функціональності.
  • Таблиці SQL Server без первинних ключів: будь-яке нерядкове поле може бути вибрано як первинний ключ. Віртуальна таблиця має бути успішно створена. RetrieveMultiple працює, інші операції завершуються помилкою з наступним повідомленням про помилку (що надходить від SQL connector): "Запит APIM не був успішним: BadRequest: У таблиці немає первинного ключа". Для функціональності в якості первинного ключа необхідно використовувати поле GUID або ціле число.
  • Таблиці SQL Server з використанням рядка первинний ключ: Рядок SQL первинний ключ є єдиним доступним варіантом для віртуальна таблиця первинний ключ. Первинні ключі-рядки SQL Server підтримуються, лише якщо значення можна аналізувати як GUID. Якщо їх не вдається проаналізувати як GUID, створення віртуальної таблиці відбувається успішно, але не вдається виконати програму під час виконання з такими помилками:
    • Maker Portal: «Ми не змогли відкрити ваш стіл. Спробуйте перезавантажити або знову відкрити».
    • Network trace: "Рядкові первинні ключі підтримуються лише в тому випадку, якщо їх можна аналізувати як GUID."
  • Таблиці SQL Server без рядкових полів непервинного ключа для використання в якості основного імені: Якщо в таблиці SQL немає рядкового поля, доступного для використання в якості основного імені, на кроці конфігурації відображається така помилка: "Таблиця не має основного поля"
  • Представлення SQL можна використовувати для створення віртуальної таблиці, але вони надаватимуть лише операції читання.
  • Щоб дізнатися про обмеження SQL Server Connector, перейдіть до довідника SQL Server.
  • Великі стовпці типу даних SQL у вихідній таблиці відображаються як десятковий тип даних у Dataverse віртуальних таблицях. Коли доступна підтримка платформи для зіставлення великих розмірів з цілим числом, раніше створені стовпці в віртуальна таблиця потрібно видалити, а також створити нові стовпці.
  • Наразі до віртуальної таблиці не можна включати такі типи стовпців:
    • Час
    • Дата2
    • Image
    • Геометрія
    • Місцезнаходження
    • RowVersion
  • Наведені нижче типи стовпців включені в віртуальну таблицю, але відображаються лише у вигляді текстових полів:
    • Ідентифікатор ієрархії
    • XML
    • Sqlvariant

Виправлення неполадок

  • У вашій віртуальна таблиця є лише один (1) запис, навіть якщо у вас у вихідній таблиці більше.
    Рішення: перевірте вихідну таблицю та переконайтеся, що для неї визначено первинний ключ.

  • Я отримую одну з наступних помилок, коли Power Apps (make.powerapps.com) отримую список таблиць або коли я вибираю Готово, щоб створити свою таблицю:

    • "Ресурс не знайдено для сегмента" msdyn_get_required_fields
    • "Помилка виклику... Будь ласка, перевірте це підключення... існує в навколишньому середовищі"
    • "Послідовність не відповідає жодному елементу для msdyn_get_required_fields"
      Рішення: У деяких випадках у вас може бути не найновіше рішення для постачальника віртуальних з’єднувачів. Щоб визначити, чи потребує оновлення ваше рішення постачальника віртуальних з’єднувачів:
    1. Виберіть Рішення на лівій панелі навігації. Якщо елемента немає на бічній панелі, виберіть ... Додатково та знайдіть потрібний елемент.
    2. Виберіть вкладку Історія .
    3. Знайдіть ConnectorProvider.
    4. Перегляньте інформацію, щоб дізнатися, чи потрібно оновлювати рішення.
    5. Якщо в журналі вказано, що потрібне оновлення, перейдіть на комерційний маркетплейс Microsoft за запитом Virtual Connector Provider і виберіть Отримати зараз, щоб імпортувати рішення у своє середовище.
    6. Дотримуйтесь інструкцій, щоб знову створити віртуальну таблицю.
  • З’явиться повідомлення "З’єднання ’xyz’ не знайдено в поточному середовищі."при отриманні списку підключень.
    Рішення: Це відбувається, коли в середовищі користувача Dataverse є велика кількість з’єднань. Це виправляється у версії 1,029 рішення Connector Provider. Оновлена версія має з’явитися у всіх регіонах до 20 лютого 2023 року. Щоб визначити, чи потребує оновлення ваше рішення постачальника віртуальних з’єднувачів:

    1. Виберіть Рішення на лівій панелі навігації. Якщо елемента немає на бічній панелі, виберіть ... Додатково та знайдіть потрібний елемент.
    2. Виберіть вкладку Історія .
    3. Знайдіть ConnectorProvider.
    4. Перегляньте інформацію, щоб дізнатися, чи потрібно оновлювати рішення.
    5. Якщо в журналі вказано, що потрібне оновлення, перейдіть на комерційний маркетплейс Microsoft за запитом Virtual Connector Provider і виберіть Отримати зараз, щоб імпортувати рішення у своє середовище.
    6. Дотримуйтесь інструкцій, щоб знову створити віртуальну таблицю.
  • Я отримую сповіщення про те, що під час створення віртуальної таблиці стався тайм-аут.
    Рішення: Це може статися, коли інші існуючі завдання спричиняють затримку створення віртуальної таблиці. Зачекайте кілька хвилин і повторіть спробу.

  • Я отримую сповіщення про те, що "Сталася неочікувана помилка"
    Розв’язання: це відбувається, коли віртуальна таблиця джерело даних було створено з неприпустимими значеннями. Щоб вирішити цю проблему, потрібно знайти віртуальна таблиця джерело даних, яка викликає помилку, видалити її, а потім знову створити віртуальна таблиця.

    1. Виберіть Налаштування (значок шестірні) > Додаткові налаштування від Power Apps.
    2. У верхньому меню виберіть Налаштування.
    3. Перейдіть до пункту Рішення. Якщо елемента немає на бічній панелі, виберіть ... Додатково та знайдіть потрібний елемент.
    4. Перейдіть до рішення, яке включає вашу віртуальну таблицю (якщо ви не використовували рішення, то перейдіть до Common Data Services Рішення за замовчуванням).
    5. На панелі ліворуч виберіть віртуальна таблиця джерел даних.
    6. Двічі клацніть на кожному джерело даних (всі вони починаються з VCP_DS_...»), коли ви знайдете той, що з помилкою, видаліть цей джерело даних.
    7. Відтворіть свою віртуальну таблицю.
  • З’явиться повідомлення "Ця таблиця вже існує, ви відтворюєте таблицю. Основне поле та ім’я схеми не можна змінити."
    Розв’язання: Ця таблиця вже була створена раніше. Продовження створення призведе до повторного створення таблиці, що призведе до оновлення будь-яких змін у джерелі даних у віртуальній таблиці (це включає додавання або видалення полів). Користувацьке ім’я та значення основних полів не можна буде редагувати.

  • Повідомлення про помилку: "primary_key_name не може бути порожнім"
    Вирішення: ви вибрали таблицю або список, які не містять значення GUID для первинного ключа. Вам потрібно буде додати додатковий стовпець GUID у вихідну таблицю, щоб створити віртуальну таблицю.

  • Я створив віртуальну таблицю в Excel, але не бачу її в "Таблицях".
    Рішення: Оскільки створення віртуальної таблиці відбувається асинхронно, ви можете перевірити статус процесу в System Jobs. Шукайте системні завдання з початковим значенням Microsoft.Wrm.DataProvider.Connector.Plugins.ConnectorGenerateVEPlugin «Ім’я» та значенням стовпця «Щодо», що дорівнює імені нової віртуальної таблиці. Якщо стан — "Виконується", просто зачекайте, поки завершиться завдання. Якщо сталася помилка, для отримання додаткових відомостей клацніть гіперпосилання з іменем системного завдання. У цьому прикладі створення таблиці ще не виконано:

    очікується створення таблиці

    У цьому прикладі створення таблиці не виконано через помилку 429 "Забагато запитів".

    не вдалося створити таблицю через помилку 429

  • Системне завдання створення таблиці виконано, але я отримую помилки виконання, пов’язані з неприпустимими або відсутніми стовпцями
    Рішення: якщо виникає помилка під час створення поля таблиці, процес створення таблиці не завершиться збоєм, а продовжиться з рештою полів. Це дозволяє уникнути блокування процесу створення віртуальної таблиці у випадках, коли певні типи стовпців не підтримуються. Щоб отримати відомості про помилку, можна ввімкнути журналювання, вибравши Адміністрування> Параметри системи > Настроювання > Активувати ведення журналу трасування компонента plug-in. Потім видаліть віртуальну таблицю та спробуйте створити її заново.

Наступні кроки

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

Налаштування зв’язку віртуальна таблиця