Delen via


AutoSave in een modelgestuurde app uitschakelen

AutoSave stelt appgebruikers in staat zich op hun werk te richten zonder dat het opslaan van gegevens in het formulier nodig is. De meeste mensen zullen het waarderen dat ze niet handmatig hun gegevens hoeven op te slaan wanneer ze een rij bijwerken, maar sommige organisaties hebben misschien aanpassingen die met handmatig opslaan in het achterhoofd zijn ontworpen. Voor deze organisaties zijn er opties om te beheren van hoe AutoSave wordt toegepast.

Hoe AutoSave werkt

Standaard wordt bij alle hoofdformulieren voor Bijgewerkte tabellen en klassieke tabellen AutoSave ingeschakeld. Nadat een rij is gemaakt (eerst opgeslagen), worden wijzigingen aan een formulier 30 seconden nadat de wijziging is ingevoerd automatisch opgeslagen. Als er geen wijzigingen in het formulier worden gemaakt, wordt er niets automatisch opgeslagen zolang het formulier nog is geopend. Nadat een wijziging is aangebracht, begint de periode van 30 seconden voordat AutoSave inschakelt, opnieuw. Als iemand anders dezelfde rij heeft bijgewerkt terwijl u het aan bewerken bent, worden die wijzigingen teruggezet en weergegeven in het formulier als een AutoSave-bewerking plaatsvindt.

Als AutoSave is ingeschakeld, verschijnt de knop Opslaan alleen als u de rij voor het eerst opslaat. Nadat de rij is gemaakt, wordt de knop Opslaan in de opdrachtbalk niet weergegeven, maar verschijnt er een Knop Automatisch opslaan. knop in de rechterbenedenhoek die laat zien of er niet-opgeslagen wijzigingen zijn. Dit besturingselement wordt ook weergegeven als AutoSave is uitgeschakeld.

U kunt deze knop selecteren om de rij op te slaan en gegevens in het formulier direct te vernieuwen. Wanneer AutoSave is ingeschakeld, wordt de rij opgeslagen wanneer u ervan weg navigeert of wanneer u een apart venster sluit waarin een rij weergegeven. De knop Opslaan en sluiten die wordt weergegeven in formulieren voor tabellen die niet worden bijgewerkt, hoeft niet gebruikt te worden.

In welke gevallen moet ik AutoSave uitschakelen?

Als u invoegtoepassingen, workflows of formulierscripts hebt die uitgevoerd worden wanneer een rij wordt opgeslagen, kunnen deze worden uitgevoerd wanneer AutoSave in werking treedt. Dit kan echter leiden tot ongewenste gedragingen als deze extensies niet zijn ontworpen om te werken met AutoSave. De invoegtoepassingen, workflows, en de formulierscripts moeten zijn ontworpen om bepaalde wijzigingen te zoeken en niet elke keer dat er iets wordt opgeslagen worden uitgevoerd, of u AutoSave nu wel of niet hebt ingeschakeld.

Als u de controle voor een tabel hebt geconfigureerd, wordt elk opslaan afgehandeld als een afzonderlijke update. Als iemand een formulier met onopgeslagen wijzigingen meer dan 30 seconden bekijkt, ziet u een andere vermelding, mits die persoon meer gegevens heeft toegevoegd nadat AutoSave is uitgevoerd. Als u rapporten hebt die afhankelijk zijn van datacontrole en elke individuele opslagopdracht als een individuele aanpassing aan de rij behandelen, dan kan het aantal aanpassingen stijgen. Als u deze benadering gebruikt, moet u er rekening mee houden dat het gedrag van individuele gebruikers onbetrouwbare resultaten oplevert, of u AutoSave nu wel of niet hebt ingeschakeld.

AutoSave uitschakelen voor een organisatie

Als u vaststelt dat AutoSave problemen met extensies veroorzaakt, kunnen Power Platform-beheerders de functie voor de omgeving uitschakelen. Er is geen instelling om AutoSave uit te schakelen voor individuele tabellen of formulieren.

  1. Meld u aan bij het Power Platform-beheercentrum, ga naar Omgevingen en open vervolgens de gewenste omgeving.
  2. Selecteer Instellingen op de opdrachtbalk.
  3. Vouw Product uit en selecteer Gedrag.
  4. Onder Basisgedrag selecteert u voor Automatisch opslaan de optie Uit.

AutoSave voor een formulier uitschakelen

Als u AutoSave voor specifieke tabelformulieren wilt uitschakelen, kunt u code aan de gebeurtenis OnSave in een tabel toevoegen.

Notitie

Door deze methode te gebruiken, wordt automatisch opslaan uitgeschakeld voor het formulier, maar worden de gegevens nog steeds opgeslagen als u de Knop Automatisch opslaan selecteert in de rechterbenedenhoek wordt geklikt. Als u bij een formulier probeert weg te gaan of een formulier probeert te sluiten waarin gegevens zijn gewijzigd, wordt gevraagd of de wijzigingen moeten worden opgeslagen voordat de gebruiker bij het formulier weg kan gaan of het formulier kan sluiten.

Als u de onderstaande procedure gebruikt, werkt de knop Save and close op het formulier niet, omdat het preventDefault aanroept in saveMode 2, dat verwijst naar Opslaan en sluiten. U kunt het onderstaande vinkje getSaveMode() == 2 verwijderen om dit te voorkomen, maar dan wordt het formulier automatisch opgeslagen als u probeert weg te navigeren van het formulier of het formulier sluit waar gegevens zijn gewijzigd. De knop Opslaan en doorgaan werkt om deze reden ook niet.

  1. Meld u aan bij Power Apps.

  2. Selecteer Tabellen in het linker navigatiedeelvenster selecteer de gewenste tabel en selecteer het gebied Formulieren. Als het item zich niet in het deelvenster van het zijpaneel bevindt, selecteert u …Meer en selecteert u vervolgens het gewenste item.

    U kunt ook aanpassingen op de tabellen uitvoeren vanuit een oplossing. Selecteer hiervoor Oplossingen in het linker deelvenster, selecteer de tabel en selecteer vervolgens het gebied Formulieren. Als het item zich niet in het deelvenster van het zijpaneel bevindt, selecteert u …Meer en selecteert u vervolgens het gewenste item.

  3. Open het formulier dat u wilt bewerken.

  4. Selecteer Overschakelen naar Klassiek om het formulier te bewerken in de klassieke formulierontwerper.

  5. Maak een JavaScript-webresource en voeg deze toe aan het formulier:

    1. Kies in de formuliereneditor in de groep Formulier de optie Formuliereigenschappen.

    2. Kies op het tabblad Gebeurtenissen onder Formulierbibliotheken de optie Toevoegen.

    3. Selecteer in het dialoogvenster Rij opzoeken de optie Nieuw.

    4. Voer de volgende gegevens in het webresourceformulier in:

      Titel Naslaginformatie
      Meetcriterium preventAutoSave
      Weergavenaam AutoSave verhinderen
      Type Script (JScript)
    5. Kies naast de kolom Type de optie Teksteditor.

    6. Plak de volgende code in de kolom Bron:

      function preventAutoSave(econtext) {  
          var eventArgs = econtext.getEventArgs();  
          if (eventArgs.getSaveMode() == 70 || eventArgs.getSaveMode() == 2) {  
              eventArgs.preventDefault();  
          }  
      }  
      
      
    7. Kies OK om de teksteditor te sluiten.

    8. Kies Opslaan om de webresource op te slaan en vervolgens het webresourcevenster te sluiten.

    9. In het dialoogvenster Rij opzoeken kunt de nieuwe webresource die u hebt gemaakt selecteren. Kies Toevoegen om het dialoogvenster te sluiten.

  6. Configureer de gebeurtenis OnSave:

    1. Stel in het venster Formuliereigenschappen in de sectie Gebeurtenis-handlers Gebeurtenis in op OnSave.

    2. Selecteer Toevoegen.

    3. Stel in het venster Handlereigenschappen de Bibliotheek in op de webresource die u in de vorige stap hebt toegevoegd.

    4. Typ 'preventAutoSave' in de kolom Functie. De invoer is hoofdlettergevoelig. Voer geen aanhalingstekens in.

    5. Zorg ervoor dat Ingeschakeld is aangevinkt.

    6. Vink Geef uitvoercontext als eerste parameter door aan.

      Belangrijk

      Als u dit niet doet, werkt het script niet.

      Het dialoogvenster Handlereigenschappen moet er als volgt uitzien: Het aanpassingsvoorvoegsel: "new_" kan verschillen op basis van het aanpassingsvoorvoegsel dat voor de standaarduitgever is ingesteld voor uw organisatie.

      OnSave-gebeurtenishandler om autosave in Dynamics 365 te voorkomen.

    7. Selecteer OK om het dialoogvenster Handlereigenschappen te sluiten.

    8. Als er andere gebeurtenis-handlers voor de gebeurtenis OnSave bestaan, gebruikt u de groene pijlen om die naar boven te verplaatsen.

      De Formuliereigenschappen moeten als volgt worden weergegeven. Merk op dat in het voorbeeld de update heeft plaatsgevonden vanuit een oplossing en als gevolg daarvan is het voorvoegsel van de uitgever (dspin_) niet hetzelfde als het voorvoegsel van de standaarduitgever (new_). Dit komt omdat een andere uitgever wordt gebruikt voor de oplossing.

    Geavanceerde instellingen

  7. Selecteer OK om het dialoogvenster Formuliereigenschappen te sluiten.

  8. Selecteer Opslaan en sluiten om het formulier te sluiten.

  9. Selecteer in de oplossingenverkenner de optie Alle aanpassingen publiceren.

Nadat u dit script op de gebeurtenis OnSave hebt toegepast, wordt het bericht niet-opgeslagen wijzigingen in de rechterbenedenhoek in het formulier weergeven wanneer gebruikers de rij aanpassen, net zoals het zou zijn als AutoSave niet was uitgeschakeld. Maar dit bericht verdwijnt pas als mensen de knop Automatisch opslaan selecteren. wordt geselecteerd.

Volgende stappen

Formulieren maken en ontwerpen

Notitie

Laat ons uw taalvoorkeuren voor documentatie weten! Beantwoord een korte enquête. (houd er rekening mee dat deze in het Engels is)

De enquête duurt ongeveer zeven minuten. Er worden geen persoonlijke gegevens verzameld (privacyverklaring).