Princip rozpracovaných dokumentů

V ukládání dokumentů mezi rozpracované existují čtyři fáze:


1. Zavedení do místního seznamu

Nově založené nebo právě z databáze otevřené již existující dokumenty, ve kterých zatím uživatel neudělal žádnou úpravu se zařadí pouze do místního seznamu rozpracovaných dokumentů uživatele, který je evidován až do ukončení práce uživatele.

Dokud uživatel neprovede žádnou změnu, tak se neposílá skutečný požadavek na uložení rozpracovaného stavu na server.

Místní seznam je získán po přihlášení uživatele ze serveru a na začátku obsahuje pouze ty rozpracované dokumenty, ve kterých uživatel po jejich otevření (z databáze nebo jako nových) provedl změnu. Později v průběhu práce přihlášeného uživatele se přidávají i ty položky, které se na server neodesílají (nebyly provedeny faktické úpravy – jsou v první fázi). Po skončení práce jsou tyto položky bez upozornění uživatele zapomenuty, pokud se nepřesunuly do druhé fáze.


2. Uložení rozpracovaného dokumentu na server

K druhé fázi dochází pouze v případě, že v dokumentu byla provedena alespoň jedna změna od jeho otevření z tabulek dokumentu v databázi či jeho založení jako úplně nového dokumentu (tedy historie změn v dokumentu obsahuje alespoň jednu položku). Většinou však k této druhéfázi – tj. k uložení rozpracování na server – nedochází bezprostředně po provedení této první úpravy dokumentu, ale ve chvíli, kdy vznikne potřeba tuto změnu uložit.

Touto potřebou může být:

pravidelné ukládání změn rozpracovaných dokumentů po uživatelem nastaveném časovém intervalu (min. 1 minuta, standardně 3)

odchod z formuláře dokumentu – tj. zavření nebo změna obsahu okna

požadavek na uložení resp. rozložení dokumentu do tabulek databáze bez odchodu z formuláře dokumentu (pokud je zvoleno uložit a zavřít pak k potřebě nedochází)

Ale připomeňme, že k uložení a případnému přesunu z fáze jedna dojde pouze tehdy, že již uživatel v daném dokumentu prostřednictvím formuláře provedl změnu. Jinak uvedené potřeby nejsou opodstatněné a dokument se mezi rozpracované fakticky neuloží.


3. Opětovné uložení rozpracovaného dokumentu na server

K němu dochází na základě stejných potřeb, které zapřičiňují prvotní uložení dokumentu na server. Je zde jen jediný rozdíl. Na serveru při požadavku na uložení rozpracovaného dokumentu daného typu a ID, který byl již dříve jako rozpracovaný uložen, dojde k přepisu položky, nikoli k přidání další duplicitní. Jde jen o aktualizaci rozpracovaných změn a dochází k ní pouze v případě, že od posledního uložení rozpracovaného stavu uživatel provedl nějaké změny.


4. Odstranění rozpracovaného dokumentu ze serveru

Zde dohází k uzavření cyklu rozpracovaného dokumentu. Jsou dvě základní příčiny k tomuto odstranění:

uživatel ve formuláři s provedenými změnami zvolí uložit a zavřít. Tím se poslední změny v dokumentu rozloží do databáze a zavře se formulář, což je signálem k ukončení práce s dokumentem – již není rozpracovaný.

uživatel v seznamu rozpracovaných dokumentů zvolí odstranění položky bez uložení provedených změn rozložením do databáze.

Spolu s odstraněním ze seznamu na serveru dojde k odstranění odpovídající položky i v místním seznamu rozpracovaných dokumentů.


Další poznámky k fázím rozpracování

Je zřejmé, že k uložení dokumentu může dojít, aniž by mezi tím došlo k uložení rozpracovaného stavu jako XML entity. Pokud uživatel má nastavenou takovou prodlevu v ukládání rozpracovaných dokumentů, ve které stihne vyplnit nový dokument a po jeho vyplnění zvolí uložit a zavřít, pak k uložení do rozpracovaných nedojde (viz. rozpracované dokumenty v uživatelské podpoře.


Dokument a další segmentyPropojení mezi dokumentyRozklad dokumentů v databáziObecná oblast všech dokumentůPřehled řídících atributů dokumentůHistorie změnPrincip rozpracovaných dokumentůMetadataPohledy a pseudo typyPrincipy mapování na jiné aplikaceXSD schemata dokumentů dle XDS