Drafty i zatwierdzanie zmian
Nigdy nie edytujesz działającego modelu bezpośrednio. Każda zmiana elementu modelu trafia najpierw do twojego draftu, czyli prywatnej kopii roboczej tego elementu. Inni modelarze i wszystkie działające aplikacje korzystają z ostatniej zatwierdzonej wersji, dopóki nie zatwierdzisz (commit) swojego draftu.
Czym jest draft
Dział zatytułowany „Czym jest draft”- Draft (wersja robocza) należy do jednego elementu i jednego użytkownika, w jednej wersji modułu.
- Prawie każdy rodzaj elementu edytujesz przez drafty: tabele, zapytania, procesy, ekrany, formularze, akcje, definicje typów, atrybuty użytkownika, raporty, zestawy stałych użytkownika (user const sets), zasoby (assets), dodatki (add-ons) i pojedyncze etykiety.
- Element, który ma twój draft, ma czerwony znacznik M w drzewie Module elements i na swojej zakładce edytora, z podpowiedzią Element has unapproved changes. Folder pokazuje M, gdy cokolwiek w nim ma twój draft.
Drafty zapisują się automatycznie
Dział zatytułowany „Drafty zapisują się automatycznie”Nie ma przycisku zapisu. Twój draft jest zapisywany na serwerze:
- co kilka sekund, gdy edytor jest otwarty;
- gdy przełączasz się na inną zakładkę edytora albo ją zamykasz;
- gdy opuszczasz albo przeładowujesz stronę;
- gdy otwierasz panel Confirm changes.
Możesz zamknąć przeglądarkę i wrócić później. Draft na ciebie poczeka.
Zmiany, które nie trafiają do draftu
Dział zatytułowany „Zmiany, które nie trafiają do draftu”Te operacje działają od razu dla wszystkich, bez kroku zatwierdzania:
- tworzenie, zmiana nazwy, przenoszenie i usuwanie elementów i folderów;
- przywracanie elementów z kosza i opróżnianie kosza.
Nowo utworzony element istnieje od razu. Jego zawartość edytujesz potem przez drafty, jak w przypadku każdego innego elementu. Usunięte elementy trafiają do kosza i można je przywrócić.
Panel Confirm changes
Dział zatytułowany „Panel Confirm changes”Otwierasz go ikoną ołówka w lewej nawigacji. Pokazuje tylko twoje własne drafty, w dwóch grupach:
- Modified elements: drafty, których nie przygotowałeś do commita. Użyj Stage w wierszu, Stage all, Discard w wierszu, Discard selected albo Discard all.
- Staged elements: drafty, które zostaną zatwierdzone. Użyj Unstage w wierszu, Unstage selected albo Unstage all.
Kliknięcie wiersza otwiera element.
Zatwierdzanie zmian (commit)
Dział zatytułowany „Zatwierdzanie zmian (commit)”- Przygotuj do commita (Stage) drafty, które do siebie pasują.
- Wpisz Commit message. Jeśli zostawisz to pole puste, platforma użyje opisu „Committing changes to files: …” z nazwami elementów.
- Kliknij Commit. Okno Validate changes before commit sprawdza zatwierdzony model razem z twoimi draftami przygotowanymi do commita (staged). Pozostałe drafty nie są brane pod uwagę.
- Okno pokazuje jeden z komunikatów:
- Validation passed. Ready to commit.
- Validation found errors. Committing may introduce bugs and inconsistencies. Błędy są pogrupowane według elementów.
- Validation could not be completed due to an error.
- Jeśli są błędy albo walidacja się nie zakończyła, przycisk Commit pozostaje nieaktywny, dopóki nie zaznaczysz I acknowledge the risks and want to commit without waiting for or ignoring the validation results.
- Kliknij Commit.
Podczas commita serwer ponownie sprawdza każdy draft. Tych kontroli nie da się pominąć. Jeśli którykolwiek draft ich nie przejdzie, nic nie zostanie zatwierdzone, a okno Commit error pokaże listę problemów.
Po udanym commicie drafty znikają z panelu, znaczniki M znikają, a zmiana jest widoczna dla wszystkich. Każdy commit staje się jednym wpisem w historii zmian modułu (zob. Praca w zespole).
Odrzucanie zmian
Dział zatytułowany „Odrzucanie zmian”Aby wyrzucić draft, kliknij Discard w jego wierszu w Modified elements albo użyj Discard selected lub Discard all i potwierdź. Odrzuconego draftu nie da się odzyskać. Element wraca do swojej zatwierdzonej wersji.
Odrzucić możesz tylko drafty, które nie są przygotowane do commita. Aby odrzucić draft z grupy staged, najpierw go wycofaj (Unstage).
Analiza modelu a drafty
Dział zatytułowany „Analiza modelu a drafty”- Panel problemów (Errors, Warnings, Suggestions) sprawdza zatwierdzony model razem ze wszystkimi twoimi draftami, przygotowanymi do commita lub nie. Drafty innych użytkowników nigdy nie są brane pod uwagę.
- Walidacja przed commitem sprawdza tylko twoje drafty przygotowane do commita (staged).
Co wymaga zatwierdzonych zmian
Dział zatytułowany „Co wymaga zatwierdzonych zmian”Niektóre funkcje działają tylko na zatwierdzonej wersji elementu:
- zastosowanie definicji tabeli w bazie danych (Apply table changes to database table) i ponowne przeliczenie uprawnień dostępu;
- uruchamianie testów procesów;
- uruchamianie trwałych instancji procesów (durable);
- podpowiedzi kodu w warunkach uprawnień do tabeli, które korzystają z zatwierdzonej tabeli.
Gdy taki przycisk jest nieaktywny, jego podpowiedź informuje, że najpierw trzeba zatwierdzić zmiany.
Podsumowanie
Dział zatytułowany „Podsumowanie”- Każda zmiana trafia do twojego prywatnego draftu, oznaczonego M. Inni widzą wersję zatwierdzoną.
- Drafty zapisują się automatycznie.
- Tworzenie, zmiana nazwy, przenoszenie i usuwanie działają od razu.
- Przygotuj zmiany do commita (stage), napisz opis, zwaliduj i zatwierdź. Serwer waliduje ponownie, a nieudany commit niczego nie zmienia.
- Odrzucenia draftu nie da się cofnąć.
- Stosowanie tabel, testy procesów i trwałe procesy wymagają zatwierdzonych zmian.