Udostępnij za pośrednictwem


Zarządzanie automatycznym zapisywaniem

 

Data opublikowania: luty 2017

Dotyczy: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online

Automatyczne zapisywanie pomaga osobom skupić się na pracy bez konieczności pamiętania o zapisywaniu danych w formularzu. Większość ludzi docenia fakt, że nie ma potrzeby jawnego zapisywania danych każdorazowo po aktualizacji rekordu, ale niektóre organizacje mogą mieć dostosowania, które wymagają jawnego zapisywania. Dla tych organizacji dostępne są opcje pozwalające wybrać sposób stosowania automatycznego zapisywania.

W tym temacie

Jak działa automatyczne zapisywanie

Czy należy wyłączyć automatyczne zapisywanie?

Wyłącz automatyczne zapisywanie dla organizacji

Wyłącz automatyczne zapisywanie formularza

Jak działa automatyczne zapisywanie

Domyślnie wszystkie główne formularze dla Zaktualizowane encje będą miały włączone automatyczne zapisywanie. Po utworzeniu rekordu (początkowym zapisaniu) wszelkie zmiany wprowadzone do formularza zostaną automatycznie zapisane trzydzieści sekund po dokonaniu zmiany. Jeśli nie wprowadzono żadnych zmian w formularzu, automatyczne zapisywanie nie wystąpi, gdy formularz jest otwarty. Po wprowadzeniu zmiany bieg 30-sekundowego okresu poprzedzającego automatyczne zapisywanie rozpoczyna się ponownie. Pole, które ktoś aktualnie edytuje, nie jest objęte automatycznym zapisywaniem. Jeśli ktoś inny zaktualizował ten sam rekord w czasie, gdy Ty przeprowadzałeś jego edycję, zmiany te zostaną pobrane i wyświetlone w formularzu w chwili zapisywania automatycznego.

Przy włączonym automatycznym zapisywaniu przycisk zapisywania pojawi się tylko dla początkowego zapisu rekordu. Po utworzeniu rekordu, na pasku poleceń nie jest wyświetlany przycisk zapisywania, ale można zobaczyć przycisk Przycisk Autozapisywanie w prawym dolnym rogu, który będzie pokazywał, czy są jakieś niezapisane zmiany. Ten formant jest również wyświetlany po wyłączeniu automatycznego zapisywania.

Można kliknąć ten przycisk, aby zapisać rekord i natychmiast odświeżyć dane w formularzu. Po włączeniu automatycznego zapisywania rekord będzie zapisywany przy każdym opuszczaniu rekordu lub zamykaniu okna wyświetlającego rekord. Nie jest potrzebny przycisk Zapisz i Zamknij, który pojawia się w formularzach dla encji, które nie są aktualizowane.

Czy należy wyłączyć automatyczne zapisywanie?

Jeśli masz dodatki typu plug-in, przepływy pracy lub skrypty formularzy, które są uruchamiane w momencie zapisywaniu rekordu, będą one uruchamiane przy każdym automatycznym zapisywaniu. Może to prowadzić do niepożądanych zachowań jeśli rozszerzenia te nie zostały zaprojektowane do pracy z automatycznym zapisywaniem. Niezależnie od tego, czy automatyczne zapisywanie jest włączone, czy nie, dodatki typu plug-in, przepływy pracy i skrypty formularzy powinny zostać zaprojektowane do szukania konkretnych zmian i nie powinny być uruchamiane wyłącznie przy każdym zdarzeniu zapisywania.

Jeśli masz inspekcje skonfigurowane dla encji, każde zapisywanie jest traktowane jak oddzielna aktualizacja. Jeśli ktoś przetrzymuje formularz zawierający niezapisane zmiany przez ponad trzydzieści sekund zobaczysz dodatkowy wpis tylko wtedy, gdy tamten uzytkownik doda więcej danych po przeprowadzeniu automatycznego zapisywania. Jeśli masz raporty, które zależą od inspekcji danych i traktują każde zapisywanie jak "dotknięcie" rekordu, możesz zauważyć zwiększenie częstotliwości dotknięć. Jeśli stosujesz to rozwiązanie, powinieneś zwrócić uwagę na to, czy zachowania poszczególnych użytkowników sprawiają, że metryka jest niewiarygodna z lub bez włączonego automatycznego zapisywania.

Wyłącz automatyczne zapisywanie dla organizacji

Jeśli okaże się, że automatyczne zapisywanie doprowadza do problemów ze stosowanymi rozszerzeniami, można je wyłączyć dla organizacji. Nie ma ustawienia pozwalającego wyłączyć automatyczne zapisywanie dla poszczególnych encji lub formularzy.

  1. Wybierz kolejno pozycje Ustawienia > Administracja.

  2. Wybierz Ustawienia systemu.

  3. Dla opcji Włącz automatyczne zapisywanie wszystkich formularzy wybierz Nie.

Wyłącz automatyczne zapisywanie formularza

Jeśli chcesz wyłączyć automatyczne zapisywanie dla określonych formularzy encji, możesz dodać kod do zdarzenia OnSave w encji.

Uwaga

Automatyczne zapisywanie zostanie wyłączone dla formularza, ale dane nadal będą zapisywane po kliknięciu przycisku Przycisk Autozapisywanie znajdującego się w prawym dolnym rogu. Przy próbie opuszczania lub zamykania formularza, w którym zostały zmienione dane, otrzymasz monit przypominający o konieczności zapisania zmian przed uzyskaniem możliwości opuszczenia lub zamknięcia formularza.

  1. Na pasku nawigacyjnym wybierz kolejno pozycje Microsoft Dynamics 365 > Ustawienia.

    Na pasku nawigacyjnym pojawi się opcja Ustawienia.

  2. Wybierz kolejno pozycje Ustawienia > Dostosowania.

  3. Wybierz opcję Dostosuj system.

  4. W Składniki, rozwiń Encje i zlokalizuj encję dla formularza.

  5. Rozwiń węzeł encji i wybierz Formularze.

  6. Otwórz formularz, który chcesz edytować.

  7. Utwórz zasób sieci Web JavaScript i dodaj go do formularza

    1. W edytorze formularzy, w grupie Formularz, wybierz Właściwości formularza.

    2. Na karcie Zdarzenia, w Biblioteki formularzy wybierz Dodaj.

    3. W oknie dialogowym Wyszukiwanie rekordu wybierz Nowy.

    4. W formularzu zasobu sieci Web wprowadź następujące informacje:

      Imię i nazwisko

      preventAutoSave

      Wyświetlana nazwa

      Zapobieganie automatycznemu zapisywaniu

      Typ

      Skrypt (JScript)

    5. Obok pola Typ, wybierz Edytor tekstu.

    6. W polu Źródło, wklej następujący kod:

      function preventAutoSave(econtext) {
          var eventArgs = econtext.getEventArgs();
          if (eventArgs.getSaveMode() == 70 || eventArgs.getSaveMode() == 2) {
              eventArgs.preventDefault();
          }
      }
      
    7. Wybierz OK, aby zamknąć edytor tekstów.

    8. Wybierz Zapisz, aby zapisać zasób sieci web, a następnie zamknij okno zasobu sieci web.

    9. W oknie dialogowym Wyszukaj rekord zostanie wybrany nowy utworzony zasób sieci Web. Kliknij przycisk Dodaj, aby zamknąć okno dialogowe.

  8. Skonfiguruj zdarzenie OnSave

    1. W oknie Właściwości formularza, w sekcji Obsługa zdarzeń, ustaw Zdarzenia na OnSave.

    2. Kliknij przycisk Dodaj.

    3. W oknie Właściwości obsługi, ustaw Biblioteka dla zasobu sieci Web dodanego w poprzednim kroku.

    4. Wpisz ‘preventAutoSave’ w polu Funkcja. Wielkość liter jest tu istotna. Nie należy stosować znaków cudzysłowu.

    5. Upewnij się, że zaznaczyłeś Włączone.

    6. Zaznacz Przekaż kontekst uruchomienia jako pierwszy parametr.

      Ważne

      Jeśli tego nie zrobisz skrypt nie będzie działać.

      Okno dialogowe Właściwości obsługi powinno wyglądać następująco. Prefiks dostosowywania: "new_" może się różnić w zależności od prefiksu dostosowywania ustawionego dla wydawcy domyślnego dla organizacji.

      OnSave event handler to prevent autosave in CRM

    7. Kliknij OK, aby zamknąć okno dialogowe Właściwości obsługi.

    8. Jeśli istnieją inne obsługi zdarzenia dla zdarzenia OnSave, użyj zielonych strzałek, aby przenieść to zdarzenie do góry.

  9. Kliknij OK, aby zamknąć okno dialogowe Właściwości formularza.

  10. Kliknij Zapisz i Zamknij, aby zamknąć formularz.

  11. W eksploratorze rozwiązania kliknij Publikuj wszystkie dostosowania.

Po zastosowaniu tego skryptu dla zdarzenia OnSave, w przypadku edycji rekordu za pomocą tego formularza pojawi się wiadomość niezapisane zmiany w prawym dolnym rogu formularza tak, jak pojawiałaby się, gdyby automatyczne zapisywanie nie zostało wyłączone. Komunikat ten nie zniknie aż do chwili kliknięcia znajdującego się obok przycisku Przycisk Autozapisywanie.

Zobacz też

Tworzenie i projektowanie formularzy
Używanie edytora formularzy
Uwagi dotyczące projektowania formularzy głównych
Prezentacje formularzy głównych
Optymalizowanie działania formularza
Aktualizowanie formularzy

© 2017 Microsoft. Wszelkie prawa zastrzeżone. Prawa autorskie