Revízie dokladov (archivácia verzií dokladov) - všeobecne
Pri niektorých dokladoch, ktoré sa vytvárajú postupne a v čase sa môžu meniť (typicky ponuky, objednávky) sa v praxi môže objaviť požiadavka na uchovávanie revízií dát. Tzn. archiváciu stavu dokladu k nejakému okamihu. Cieľom nie je len sledovať, aké kto kedy vykonal zmeny (túto požiadavku rieši Sledovanie zmien), ale mať tiež k dispozícii pôvodné znenie daných dokumentov, môcť si ich vytlačiť presne tak, ako v danom okamihu vyzerali a pod.
Objasníme na príklade:
Užívateľ si vytvoril ponuku vydanú, ale odberateľ požaduje nejaké zmeny. Užívateľ si však želá mať ponuku zaarchivovanú v stave, v akom ju klientovi pôvodne poslal. Pomocou dostupných funkcií teda vytvorí jej novú revíziu k danému dátumu. Ponuku potom príslušne upraví a odošle znovu klientovi, príp. si ju znovu zaarchivuje vytvorením ďalšej revízie. Takto postupuje až do finálneho schválenia ponuky - pritom má kedykoľvek k dispozícii informácie, v akých stavoch klientovi ponuku posielal, jednotlivé znenia si môže tlačiť alebo porovnávať.
Pomocou parametra Povoliť revízie dát vo Firemných nastaveniach je možné vo vybraných agendách zapnúť podporu revízií. Ak je podpora revízií zapnutá, v agendách vybraných dokladov je k dispozícii záložka Revízie, v ktorej sú revízie k dispozícii, je ich odtiaľ možné tlačiť, prehliadať rozdiely medzi nimi, je tiež k dispozícii funkcia na vytváranie revízií.
Typy dokladov, ktoré schvaľovanie podporujú, viď popis záložka Revízie.
- pomocou funkcie Nová revízia v záložkách Zoznam, Detail alebo v záložke Revízie v danej agende
- použitím tlačovej funkcie CreateRevision na vytváranie revízií v rámci tlače dokladu - potom sa pri použití tlačovej zostavy obsahujúcej takúto funkciu pri vytváraní náhľadu zobrazí otázka na vytvorenie revízie a v prípade kladnej odpovede sa nová revízia vytvorí
- príp. prostredníctvom inej funkcie, v závislosti od danej agendy
- z agendy požiadaviek na výrobu prostredníctvom funkcie Aktualizovať kusovníky
- z agendy požiadaviek na výrobu prostredníctvom funkcie Aktualizovať technologické postupy
Tlač vybranej revízie, prehliadanie a tlač rozdielov medzi revíziami:
- pomocou funkcie Tlač v záložke Revízie v danej agende
Zmena popisu vybranej revízie
- pomocou funkcie Zmeniť popis v záložke Revízie v danej agende
Zmazanie vybranej revízie
- pomocou funkcie Vymazať v záložke Revízie v danej agende
Dáta revízií sa ukladajú do rovnakých tabuliek, ako aktuálne dáta Business objektov. Každý revízny záznam má svoje vlastné ID, ide v podstate o dáta samostatného business objektu. Každý objekt so záznamom revízie má odkaz na ID záznamu s aktuálnymi dátami business objektu (aktuálne znenie dokladu).
V prípade business objektov, ktoré podporujú revízie dát, sú upravené SQL dopyty používané business objektmi tak, aby sa v týchto akciách zohľadnilo, že v databázovej tabuľke nie sú len aktuálne dáta business objektov, ale i revízne dáta. Typickým prípadom takejto úpravy sú triedne akcie vracajúce zoznam business objektov. To zabezpečuje automaticky generované obmedzenie (IncludeRevisions) pridávané počas chodu do dynamických zdrojov, ktoré sú postavené nad tabuľkami obsahujúcimi aj revízne dáta. Je použité vždy, ale pre užívateľa nie je viditeľné a zabezpečuje, že do výsledných dát nebudú zahrnuté dáta revízií či naopak budú (napr. pre prípad tlače revíznych dát).