Споделяне чрез


Microsoft Dataverse и подобряване на изживяването на източник на данни

Преглед

През май 2021 г. много функции, които преди бяха по избор, сега са поведението по подразбиране за всички нови приложения. Тази статия предоставя насоки за потребителите, които са разработили приложение преди въвеждането на нови функции, за това как да надстроят приложението си, за да се възползват от най-новите функционалности.

Туземец Dataverse

Ако сте създали приложение за платно с Dataverse или с Dynamics 365 Connector преди ноември 2019 г., може да не сте се възползвали от текущата основна връзка за Dataverse.

Ако сте създали приложението си преди ноември 2019 г. и не използвате естествена Dataverse връзка, тогава в Настройки в раздела Предстоящи функции, в раздела "Пенсиониран" ще намерите опцията Подобряване на източник на данни опит и изгледи Microsoft Dataverse заедно с релационни данни, избори и други нови функции за Microsoft Dataverse.

Как да направя надстройка?

Надстройте приложението си, като проверите настройките на функциите и след това, като следвате указанията по-долу:

Релационни данни, набори от опции и други нови функции за Microsoft Dataverse е Off

Проверете секцията Оттеглени под Предстоящи функции. Ако е зададено на изкл., продължете със следните инструкции като първа стъпка в реализацията.

Ако не виждате Релационни данни, набори от опции и други нови функции за Microsoft Dataverse в Основни настройки, или ако вече е Вкл., пропуснете следните стъпки и продължете към следващия раздел.

  • Стъпка 1: Включете функцията Използвайте имена за показване:

    1. Включете функцията Използвайте имена за показване.
    2. Изчакайте мониторът на здравето да приключи с анализа на приложението ви.
    3. Запазете, затворете и отворете отново приложението си.
    4. Разрешете всички грешки във формулата.
    5. Запазете, затворете и отворете отново приложението си.

    Възможни грешки и предложения:

    Възможно е някои от новите показани имена на дисплей да са в конфликт с имената на дисплеи за други таблици, полета или контроли. Например, може да имате контрола и поле със същото име. Можете да промените името на контрола с уникална стойност, която да коригирате.

    За всеки конфликт на имена на полета и таблици може да видите формула, която очаква таблица, но се разрешава до име на поле с локален обхват.

    Използвайте квадратна скоба със символ, @ за да посочите глобален обхват, така че да се разреши на таблицата; например, [@tableName].

  • Стъпка 2: Включете функциите Релационни данни, набори от опции и други нови функции за Microsoft Dataverse и Използвайте типове данни GUID вместо низове:

    1. Включете функцията Релационни данни, набори от опции и други нови функции за Microsoft Dataverse.
    2. Включете функцията Използвайте типове данни GUID вместо низове.
    3. Изчакайте мониторът на здравето да приключи с анализа на приложението ви.
    4. Разрешете всички грешки във формулата.
    5. Запазете, затворете и отворете отново приложението си.

    Възможни грешки и предложения:

    Възможно е да има грешки на този етап, ако използвате поле за избор или твърдо кодирани GUID текстови стойности.

    • Стойности на избор: Ако използвате поле за избор с текстов идентификатор за стойността на избора, вместо това използвайте точковото обозначение, за да посочите стойността за избор. Променете например Patch(Accounts, OptionSet1 = “12345”) на Patch(Accounts, OptionSet.Item1), където Item1 отговаря на стойността 12345.
      Повече информация: Подробни примери.
    • GUID: Ако използвате статичен GUID низ, като например 015e45e1044e49f388115be07f2ee116, преобразувайте го във функция, която връща GUID обект; например GUID(“015e45e1044e49f388115be07f2ee116”).
    • Търсене: Ако използвате функции за търсене, за да получите стойности за търсене от първо ниво, като например Lookup(Contacts, ‘contactID’ = ThisItem.ContactID”), помислете за използване ThisItem.PrimaryContacts (където PrimaryContacts е името на таблицата) вместо това.

Подобряване на източник на данни опит и изгледи Microsoft Dataverse е изключено

Използвайте следната инструкция, за да включите функцията Подобрено изживяване на източник на данни и изгледи на Microsoft Dataverse:

  1. Премахнете съществуващите връзки на източник на данни на Dataverse.
  2. Включете функцията Подобрено изживяване на източник на данни и изгледи на Microsoft Dataverse.
  3. Добавете Dataverse връзка, използвайки новия опит за избор на източник на данни.
  4. Запазете приложението си.

Бележка

Ако приложението ви е изключително голямо, добавянето на връзките ви източник на данни обратно може да отнеме известно време. Не затваряйте приложението по време на този процес.

Конвертиране на приложения за платно с Dynamics 365 Connector

За да конвертирате приложението си, което използва конектора на Dynamics 365, трябва да премахнете и добавите връзките към вашите източници на данни. Използвайте стъпките по-долу, за да конвертирате вашите връзки към вашите източници на данни.

  1. Уверете се, че функцията Подобрено изживяване на източник на данни и изгледи на Microsoft Dataverse е включена.

  2. Премахнете съществуващите връзки на източник на данни на Dynamics 365.

  3. Добавете връзките към вашите източници на данни към Dataverse, използвайки новия опит за избор на източник на данни.

    Бележка

    • Ако имате връзки с друга среда (различна от текущата), изберете Таблица категория и след това Още (...) опция за промяна на средата. След това можете да изберете таблица от различна среда, която да добавите към приложението си. Кръстосаните връзки на наематели не работят с подобрения родния конектор. Ще трябва да използвате интеграцията на данни, за да получите достъп до данни на крос наемател.
    • Трябва да отговаряте на едно от следните изисквания, за да можете да видите среда, към която искате да добавите връзката:
  4. Запазете приложението си.

Възможни грешки и предложения:

Възможно е да имате грешки при конвертиране, ако: не използвате показвани имена, ако използвате GUID низове или ако използвате избор.

  • Ако името на контрола противоречи, променете името на контрола, за да бъде различно и уникално.
  • За конфликти на показвани имена на полета и таблици може да видите формула, която очаква таблица, но разрешава име на поле с по-локален обхват. Използвайте квадратна скоба със символ, @ за да посочите глобален обхват, така че да се разреши на таблицата; например, [@tableName].
  • Стойности на избор: Ако използвате поле за избор с текстов идентификатор за стойността на избора, вместо това използвайте точковото обозначение, за да посочите стойността за избор. Променете например Patch(Accounts, OptionSet1 = “12345”) на Patch(Accounts, OptionSet.Item1), където Item1 отговаря на стойността 12345.
    Повече информация: Подробни примери.
  • GUID: Ако използвате статичен GUID низ, като например 015e45e1044e49f388115be07f2ee116, преобразувайте го във функция, която връща GUID обект; например GUID(“015e45e1044e49f388115be07f2ee116”).
  • Търсене: Ако използвате функции за търсене, за да получите стойности за търсене от първо ниво, като например Lookup(Contacts, ‘contactID’ = ThisItem.ContactID”), помислете за използване ThisItem.PrimaryContacts (където PrimaryContacts е името на таблицата) вместо това.
  • За всякакви полиморфни справки вижте раздела с подробни примери по-долу.

Подробни примери

Преобразуване на приложението ви за използване на новото Набори от опции и Две опции типовете данни с поддържащи контроли могат да бъдат предизвикателни, докато надграждате приложение, за да използвате новото свойство Подобрете източник на данни опит и Microsoft Dataverse мнения.

Варианти

Отделно _myfield и _myfield_label полета бяха използвани за избор по-рано. Сега има един myfield, които могат да се използват както за сравнения, независими от локал, така и за получаване на специфичен за локала етикет.

Премахване и добавяне на карти с данни за избор

Препоръчваме ви да премахнете съществуващите карти за данни и да ги добавите отново към работа по ваш избор. Ако например работите с таблицата "Акаунт" и избора "Категория", ще видите, че свойството DataField на картата за данни е зададено на _accountcategorycode_label. В списъка с полета можете да видите, че картата с данни има тип низ:

OptionSet със старо име на стил.

С новата функция Подобрено изживяване на източник на данни и изгледи на Microsoft Dataverse вече не виждате _accountcategorycode_label. Заменен е от accountcategorycode. Вашата карта вече е маркирана като персонализирана и ще видите грешки. Премахнете старата карта за данни и добавете Избор обратно. Новата карта за данни е Избор осъзнат.

OptionSet с ново име на стил.

Редактиране на изразите на Choice Filter за използване на нов синтаксис

По-рано, ако искате да използвате стойност за избор в израз за филтър, ще трябва да използвате полето "Стойност ". Например:

Filter(Account,'Category Value' = "1")

Ще трябва да редактирате тази формула. Идентификаторът на текст за избор вече не се използва за стойността. Този израз трябва да бъде актуализиран до:

Filter(Account, Category= ‘Category (Accounts)’.’Preferred Customer’)

„Категория (акаунти)“ е името на изброяването, използвано в полето Категория на таблицата Акаунти. Това е местен избор. Можете да прочетете повече за местния и глобалния избор тук: Глобален избор.

Редактиране на извлечения за корекции на корекции, за да се използва нов синтаксис

По-долу е даден пример за по-ранно извлечение на Patch за избор:

Patch( Accounts, First(Accounts), { ‘Category Value’: 1 } ) )

Ще трябва да актуализирате вашите изявления, за да следвате този формуляр:

Patch( Accounts, First(Accounts), { Category: ‘Category (Accounts)’.’Preferred Customer’ } )

Разбираемост на избора

Ако показваното име на избор поле и името на избора са едни и същи, ще трябва да деактивирате формулата. За да продължите да използвате примера на кода на категорията на акаунтите, @ предполага да се използва изборът, а не полето.

Filter(Accounts, 'Category Code' = [@’Category Code’].'Preferred Customer')

Две опции

Премахване и добавяне на карти с данни Да/не

Премахнете съществуващите карти с данни и да ги добавите обратно, за да работите с Да/Не. Типовете данни по-рано бяха разпознати като прости булеви - като true/on и false/off без етикети:

Да/Не - стар стил.

С новата функция Подобрено изживяване на източник на данни и среди на Microsoft Dataverse вашата карта вече ще бъде маркирана като персонализирана и ще видите грешки. Премахнете старата карта за данни и добавете избор обратно. След като добавите, ще видите контрола за редактиране с две опции по подразбиране.

Да/Не - нов стил.

Ако предпочитате превключвателя за вашето булево поле, можете да отключите картата с данни и вместо това да замените контрола в картата с данни. Също така ще трябва да зададете тези свойства на превключване.

Toggle1.Default = ThisItem.’Do not allow Bulk Emails’
Toggle1.TrueText = ‘Do not allow Bulk Emails (Accounts)’.’Do Not Allow’
Toggle1.FalseText = ‘Do not allow Bulk Emails (Accounts)’.Allow
DataCard.Value = If( Toggle1.Value,
    ‘Do not allow Bulk Emails (Accounts)’.’Do Not Allow’,
    ‘Do not allow Bulk Emails (Accounts)’.Allow )

Превключвател с две опции.

Прецизиране на декларация за корекция с две опции

Използвайки функцията корекция с две опции трябва да работи "както е". Той поддържа директно използване на true и false, подобно на булев израз. Единствената разлика е, че ако бяхте поставили стойността в контрола за етикет по-рано, който показа истинни и неверни, сега вместо това ще се показват етикети с две опции.

Полиморфни търсения

Следващите указания помагат да надстроите приложението си, ако то посочва полиморфни полета. Полиморфните справки от едно и също поле поддържат препратки към ограничен набор от множество таблици. Подобно на препратките в други езици, препратката към запис е указател към конкретен запис в конкретна таблица. Препратката към запис носи информацията за таблицата, която й позволява да сочи към запис в няколко други таблици, което се различава от нормалното търсене, което може да сочи само към записи в една таблица.

Достъп, задаване и филтриране в полето на собственика на запис

Например полето Собственик в таблица може да се отнася до запис в таблицата Потребители или таблицата Екипи. Едно и също справочно поле в различни записи може да се отнася до записи в различни таблици.

Полиморфно поле за собственик.

Полиморфен с филтър и корекция

Референциите за записи могат да се използват точно като пълен запис:

Filter( Accounts, Owner = First( Teams ) )
Patch( Accounts, First( Accounts ), { Owner: First( Users ) })

Тъй като препратката може да сочи към различни таблици, трябва да сте конкретни. Не можете да използвате ThisItem.Owner.Name, като полето за име в таблицата Екипи е Име на екипа и полето за име в Потребител таблица е Пълно име. Power Apps не знае за кой тип справка говорите, докато не стартирате приложението.

За да поправите този проблем:

  1. Добавете източници на данни за типовете обекти, които Собственик може да бъде; в този случай Потребители и Екипи).
  2. Използвайте повече функции, за да изясните намерението си.

Има две нови функции, които можете да използвате:

  • IsType - Проверява дали препратката към запис е от определен тип таблица.
  • AsType - Изпраща дали препратката към запис е от определен тип таблица.

С тези функции можете да напишете формула, която показва името на собственика, взето от две различни имена полета, въз основа на типа таблица на собственика:

If( IsType( ThisItem.Owner,  [@Teams]), 
    AsType( ThisItem.Owner, [@Teams]).'Team Name', 
    AsType( ThisItem.Owner, [@Users]).'Full Name' )

Галерия с As Type.

Глобален двузначен оператор за [@Teams] и [@Users] се използва, за да се гарантира, че препращате към глобалния тип таблица. Въпреки че в този случай не е необходимо, препоръчително е винаги да бъде ясно. Взаимоотношенията между мнозина често влизат в конфликт в рекорда на галерията и тази практика избягва това объркване.

Влезте и задайте полето Име на компанията (тип данни на клиента) в таблицата Контакти

Справочното поле „Клиент” е друго полиморфно търсене, което е много подобно на „Собственик”. Можете да имате само едно поле Собственик на таблица. Но таблицата може да включва нула, едно или повече полета за търсене на клиенти. Системната таблица „Контакти” включва „Име на фирмата” поле, която е Клиент справочно поле. Прочетете показване на полетата на клиент за повече информация.

Достъп и настройка на таблицата с полета за активност като факсове, телефонни обаждания, имейл съобщения

Полиморфните търсения не се ограничават до акаунти и контакти. Списъкът с таблици е разширяем с персонализирани таблици. Например таблицата Факсове има полиморфна справочно поле Относно, която може да се отнася до Акаунти, Контакти и други таблици. Ако имате галерия с източник на данни настроена на Факсове, можете да използвате следната формула, за да покажете името, свързано с полето Относно търсенето.

If( IsBlank( ThisItem.Regarding ), "",
   IsType( ThisItem.Regarding, [@Accounts] ),
       "Account: " & AsType( ThisItem.Regarding, [@Accounts] ).'Account Name',
   IsType( ThisItem.Regarding, [@Contacts] ),
       "Contacts: " & AsType( ThisItem.Regarding, [@Contacts] ).'Full Name',
   "" )

Галерия с „Относно”.

Прочетете Справочни полета „Относно” и Относно релациите за повече информация.

Достъп до списъка на всички дейности за запис

В Dataverse, таблици като Факсове, Задачи, Имейли, Бележки, Телефонни обаждания, Писма и Чатове са обозначени като дейности. Можете също да създадете свои персонализирани таблици за дейност.

Можете да покажете дейности от определен тип (като факсове или данъци) или всички дейности, свързани с таблица като акаунт. Добавете таблицата за дейности и други отделни таблици, чиито данни планирате да покажете в приложението на платното.

Всеки път, когато добавяте запис към (например таблица Tasks), се създава запис в таблицата Activity с общите полета във всички таблици на дейности. Прочетете таблица на активността за повече информация.

Следващият пример показва, че когато изберете акаунт, ще се покажат всички дейности, свързани с този акаунт:

Полиморфни дейности.

Записите се показват от таблицата Activity. Но все пак можете да използвате IsType функция за идентифициране на какъв вид дейност са. Отново, преди да използвате IsType с тип таблица, трябва да добавите нужния източник на данни.

Използвайки тази формула, можете да покажете тип на записа в контрола за етикети в галерията:

If( IsType( ThisItem, [@Faxes] ), "Fax",
   IsType( ThisItem, [@'Phone Calls'] ), "Phone Call",
   IsType( ThisItem, [@'Email Messages'] ), "Email Message",
   IsType( ThisItem, [@Chats] ), "Chat",
   "Unknown")

Нов полиморфен IsType.

Достъп до списъка със Забележки за запис

Когато създавате таблица, можете да активирате прикачени файлове. Ако поставите отметка в квадратчето за разрешаване на прикачени файлове, създавате релация "Относно" с таблицата "Бележки", както показва тази графика за таблицата "Партньори":

Поле „Бележки“.

Филтриране

Не можете да четете или филтрирате въз основа на полето Относно. Въпреки това е налична обратната връзка Забележки с релация едно към много. За да изброите всички бележки, свързани с таблица Акаунт, можете да използвате следната формула:

First( Accounts ).Notes
Patch

Не можете да зададете полето Бележки на таблица с помощта на корекция. За да добавите запис към таблицата Бележки в таблицата, можете да използвате функцията Relate. Първо създайте бележката, както в този пример:

Relate( ThisItem.Notes, Patch( Notes, Defaults( Notes ), { Title: "A new note", isdocument:'Is Document (Notes)'.No } ) )

Следващи стъпки

Вижте също

Какво представлява Dataverse?

Бележка

Можете ли да ни споделите повече за езиковите си предпочитания за документацията? Попълнете кратко проучване. (имайте предвид, че това проучване е на английски език)

Проучването ще отнеме около седем минути. Не се събират лични данни (декларация за поверителност).