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


Деактивиране на автоматичното записване в базирано на модел приложение

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

Как работи автоматичното записване

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

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

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

Трябва ли да забраните автоматичното записване?

Ако имате добавки, работни потоци или скриптове на формуляри, които се изпълняват при записване на ред, те ще се изпълняват всеки път, когато се извършва автоматично записване. Това може да доведе до нежелани поведения, ако тези разширения не са проектирани да работят с AutoSave. Независимо дали автоматичното записване е разрешено или не, добавките, работните потоци и скриптовете на формуляри трябва да бъдат проектирани да търсят конкретни промени и не трябва да се изпълняват безразборно за всяко събитие за записване.

Ако за дадена таблица е конфигурирано проверяване, всяко записване се третира като отделна актуализация. Ако някой се задържи във формуляр с незаписани промени за повече от 30 секунди, ще видите друг запис само ако добави още данни след извършване на автоматичното записване. Ако имате отчети, които зависят от проверяване на данни и третират всяко записване като отделен „щрих“ на ред, може да видите увеличаване на честотата на щрихите. Ако използвате този подход, трябва да имате предвид, че поведението на отделните потребители го прави ненадежден показател със или без активиран автоматичен запис.

Забрани автоматичното записване за организацията

Ако установите, че автоматичното записване причинява проблеми с разширенията, които използвате, Power Platform администраторите могат да го забранят за околната среда. Няма настройка за забраняване на автоматичното записване за отделни таблици или формуляри.

  1. влезте в центъра Power Platform за администриране, отидете на Среди и след това отворете желаната среда.
  2. Изберете Настройки в командната лента.
  3. Разгънете Продукт и след това изберете Поведение.
  4. Под Основно поведение, за Автоматично записване изберете Изкл.

Забрани автоматичното записване за формуляр

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

Бележка

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

Използването на процедурата по-долу води до това, че бутонът Запиши и затвори във формуляра не работи, тъй като извиква preventDefault saveMode 2, който препраща към Запиши и Затвори. Можете да премахнете отметката getSaveMode() == 2 по-долу, за да избегнете това, но след това формулярът автоматично се записва, когато се опитате да навигирате извън формуляра или да затворите формуляра, където данните са променени. Бутонът "Запиши и продължи " също не работи поради тази причина.

  1. Влезте в Power Apps.

  2. Изберете Таблици в левия навигационен екран, изберете таблицата, която искате, и след това изберете областта Формуляри . Ако елементът не е в страничния панел, изберете …Още и след това изберете желания елемент.

    Можете също да правите корекции на таблиците от решение. За да направите това, изберете Решения в левия екран, изберете таблицата и след това изберете областта Формуляри . Ако елементът не е в страничния панел, изберете …Още и след това изберете желания елемент.

  3. Отворете формуляра, който искате да редактирате.

  4. Изберете Превключване към класически, за да редактирате формуляра в класическия разработчик за формуляри.

  5. Създайте уеб ресурс на JavaScript и го добавете към формуляра:

    1. В редактора на формуляра в групата Формуляр изберете Свойства на формуляр.

    2. В раздела Събития под Библиотеки с формуляри изберете Добави.

    3. В диалоговия прозорец Търсене на ред изберете Нов.

    4. Въведете следната информация във формуляра за уеб ресурс:

      Обръщение Препратка
      Име preventAutoSave
      Показвано име Предотвратяване на автоматичното записване
      Тип Скрипт (JScript)
    5. До колоната Тип изберете Текстов редактор.

    6. В колоната Източник поставете следния код:

      function preventAutoSave(econtext) {  
          var eventArgs = econtext.getEventArgs();  
          if (eventArgs.getSaveMode() == 70 || eventArgs.getSaveMode() == 2) {  
              eventArgs.preventDefault();  
          }  
      }  
      
      
    7. Изберете OK, за да затворите текстовия редактор.

    8. Изберете Запиши, за да запишете уеб ресурса, след което затворете прозореца на уеб ресурса.

    9. В диалога Търсене на ред новият уеб ресурс, който създадохте, ще бъде избран. Изберете Добави, за да затворите диалоговия прозорец.

  6. Конфигуриране на OnSave събитието:

    1. В прозореца Свойства на формуляр, в раздела Манипулатори на събития задайте Събитие с OnSave.

    2. Избери Добавяне.

    3. В прозореца Свойства на манипулатор задайте Библиотека с уеб ресурса, който добавихте в предишната стъпка.

    4. Въведете preventAutoSave в колоната Функция. Това поле прави разлика между малки и главни букви. Не включвайте кавички.

    5. Уверете се, че сте избрали Разрешено.

    6. Поставете отметка в Прехвърляне на контекст на изпълнение като първи параметър.

      Важно

      Ако не направите това, сценарият няма да работи.

      Диалогът Свойства на манипулатор трябва да изглежда, както е показано по-долу. Префиксът за персонализиране: "new_" може да варира в зависимост от префикса за персонализиране, зададен за издателя по подразбиране за вашата организация.

      Манипулатор на събитие OnSave за предотвратяване автоматично записване в Dynamics 365.

    7. Изберете OK, за да затворите диалоговия прозорец Свойства на манипулатор.

    8. Ако има други манипулатори на събития за събитието OnSave, използвайте зелените стрелки, за да преместите този в началото.

      Свойства на формуляра трябва да се покаже както следва. Забележете, че в примера, показан тук, актуализацията е извършена от решение и в резултат на това префиксът на издателя (dspin_) не е същият като този, предоставен от издателя по подразбиране (new_). Това е така, защото различен издател се използва за решението.

    Разширени настройки

  7. Изберете OK, за да затворите диалоговия прозорец Свойства на формуляр.

  8. Изберете Записване и затваряне, за да затворите формуляра.

  9. В прозореца на мениджъра на решения изберете Публикуване на всички персонализации.

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

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

Създаване и проектиране на формуляри

Бележка

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

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