.. include:: /icons.rst

.. _ug_ap_revisions_editor:

================
Editor revizí
================

Změny v popisu archivních entit je možné provádět v závislosti na :ref:`stavu entity <ug_ap_state>`
buď přímo v :ref:`záznamu archivní entity <ug_ap_part>`, nebo pomocí její **revize**.

Výhodou režimu revizí je přehledné zobrazení provedených změn a jejich okamžité
porovnávání vůči uloženému záznamu archivní entity, včetně zobrazení
:ref:`stavu synchronizace <ug_ap_synchronization_state>` s externími systémy.
Prostředí editoru revizí může být v některých případech užitečné i pro popis entit ve :ref:`stavu <ug_ap_state>` *nová* a *k doplnění*,
které lze na rozdíl od entit ve stavu *schválená* upravovat i mimo režim revize.

Pro práci s entitami v režimu revizí jsou v :ref:`horním panelu <ug_ap_screen_menu>` k dispozici tyto ovládací prvky:

.. image:: resources/revize-horni_panel-vytvorit.png
      :align: center


|plus| :ref:`Vytvořit revizi <ug_ap_revisions_editor-create>`
 Vytvoří revizi záznamu archivní entity.

|fa-undo| Smazat revizi
 Smaže revizi záznamu archivní entity včetně provedených změn.

|edit| :ref:`Změnit vlastnosti revize <ug_ap_revisions_editor-state>`
 Umožňuje změnit :ref:`stav revize <ug_ap_revisions_editor-state>` a :ref:`podtřídu <ug_ap_access_point_class>` archivní entity.

|check| :ref:`Potvrzení revize <ug_ap_revisions_editor-merge>`
 Uloží provedené úpravy do záznamu entity a změní entitu do požadovaného :ref:`stavu <ug_ap_state>`.


.. image:: resources/revize-horni_panel.png
      :align: center

Mezi uloženým záznamem entity a režimem revize lze přepínat
pomocí tlačítka se zobrazeným :ref:`stavem revize <ug_ap_revisions_editor-state>`.

.. image:: resources/revize-stav.png
      :align: center
      :width: 155px

.. image:: resources/revize-stav-ON.png
      :align: center
      :width: 153px


.. _ug_ap_revisions_editor-create:

Vytvoření revize
=================

Revizi archivní entity je možné vytvořit pouze u záznamů ve :ref:`stavu entity <ug_ap_state>`:

 - *nová*
 - *k doplnění*
 - *schválená*

U záznamů entit s vytvořenou revizí jsou omezeny některé jiné funkcionality:

 - :ref:`Změnit vlastnosti entity <ug_ap_state_change>`
 - :ref:`Aktualizace údajů z externího systému <ug_ap_connected>`


.. _ug_ap_revisions_editor-edit:

Úpravy revize
=================

Záznam archivní entity s vytvořenou revizí lze :ref:`upravit <ug_ap_edit>` výhradně
v režimu revize.

.. image:: resources/revize-zaznam.png
      :align: center

.. image:: resources/revize-part.png
      :align: center

.. note::
    - Vzhledem k zastavené :ref:`aktualizaci záznamu entity <ug_ap_connected>` s vytvořenou revizí
      lze doporučit, aby byly změny provedené v rámci revize co nejdříve :ref:`potvrzeny <ug_ap_revisions_editor-merge>`
      a :ref:`zapsány do externího systému <ug_ap_connected>`.
      Při delším přerušení aktualizace se zvyšuje pravděpodobnost souběžné změny entity v externím systému,
      jejímž výsledkem je :ref:`stav synchronizace <ug_ap_synchronization_state>` *Nesynchronizuje se*.
      Jediným řešením tohoto stavu je opětovná :ref:`Aktualizace údajů z externího systému <ug_ap_connected>`,
      při níž dojde ke ztrátě lokálních změn záznamu entity.
    - Při odstraňování duplicit a :ref:`sloučení <ug_ap_duplications>` záznamu nahrazené entity, k níž je vytvořena revize,
      jsou do záznamu nahrazující entity zkopírovány uložené hodnoty prvků popisu,
      nikoli :ref:`nepotvrzené <ug_ap_revisions_editor-merge>` hodnoty změněné v rámci revize.
    - Při :ref:`zápisu entity s vytvořenou revizí do externího systému <ug_ap_synchronization>` je odeslán do externího systému
      uložený záznam entity, nikoli :ref:`nepotvrzené <ug_ap_revisions_editor-merge>` hodnoty změněné v rámci revize.


.. _ug_ap_revisions_editor-state:

Stav revize
============

V rámci usnadnění procesu editace a :ref:`schvalování <meths_schvalovani-entit>` záznamů je možné u revidovaných entit měnit jejich stav.
Entity upravované v režimu revizí mohou být ve stavu:

 - *revize v přípravě*
 - *revize ke schválení*
 - *revize k doplnění*
 
Ve stavu *revize ke schválení* není možné měnit :ref:`popis entity <ug_ap_edit>`,
včetně její :ref:`podtřídy <ug_ap_access_point_class>`.

Podle stavu revize je možné vyhledávat a filtrovat v :ref:`levém panelu <ug_ap_screen_left>`.

.. _ug_ap_revisions_editor-merge:

Potvrzení revize
=================

Potvrzením revize dojde k **uložení** provedených úprav do :ref:`záznamu archivní entity <ug_ap_part>`
a zároveň ke změně entity do požadovaného :ref:`stavu <ug_ap_state>`.

Záznam entity ve stavu *nová* nebo *k doplnění* je možné změnit potvrzením revize
do stavu entity:

 - *nová*
 - *ke schválení*
 - *k doplnění*
 - *schválená*

Záznam entity ve stavu *schválená* lze potvrdit pouze do původního stavu *schválená*.

.. note::
    - Provedené úpravy záznamu entity je možné :ref:`odeslat do externího systému <ug_ap_synchronization>` **současně s potvrzením revize**.
      Jejich :ref:`sloučení <ug_ap_duplications>` s hodnotami nahrazené / nahrazující entity při odstraňování duplicit
      je naopak možné až **po potvrzení revize**.
      


Schvalování entit
-------------------

Při potvrzení revize do výsledného :ref:`stavu entity <ug_ap_state>` *schválená* je vyžadováno **splnění standardních podmínek**
dle :ref:`Základních pravidel <ZP2015>` (validace entity, pravidlo "dvou párů očí") a :ref:`administrace <ug_admin_perms>` Elza (oprávnění):

 1. entita musí být ve :ref:`stavu <ug_ap_revisions_editor-state>` *revize ke schválení*
 2. entita nesmí obsahovat :ref:`nesrovnalosti <ug_ap_part>` (chyby výsledku validace)
 3. uživatel, který změnil :ref:`stav revize <ug_ap_revisions_editor-state>` na *revize ke schválení*, nemůže být zároveň schvalovatelem dané entity
 4. uživatel potvrzující revizi do :ref:`stavu <ug_ap_state>` *schválená* musí disponovat :ref:`oprávněními <ug_admin_perms_ents>` v závislosti na původním stavu entity:
 
     - *Schvalování archivních entit* + *Zakládání a změny nových* (entity ve :ref:`stavu <ug_ap_state>`: *nová* / *k doplnění*)
     - *Schvalování archivních entit* + *Změna schválených archivních entit* (entity ve :ref:`stavu <ug_ap_state>`: *schválená*)

Viz :ref:`Proces schvalování archivních entit <meths_schvalovani-entit>`.
