Reorg

Z enTeam
Skočit na navigaci Skočit na vyhledávání

Funkcionalita

Reorg je nezávislá aplikace sloužící pro hromadné operace s databází aplikace enTeam. S ohledem na časovou náročnost hromadných operací je obvykle spouštěna v nočních hodinách pomocí plánovače úloh MS Windows.

Používá se zejména pro:

  • Mazání nadbytečných procesů a jejich export do souborového systému
  • Archivace procesů do DMS
  • Migrace procesů
  • Oprava kriterií

Spuštění aplikace

Aplikace ke svému běhu potřebuje konfigurační INI soubor. Spuštění aplikace Reorg se obvykle provádí pomocí .bat souboru, který obsahuje odkaz na vytvořený konfigurační soubor. Je obvyklé vytvořit více konfiguračních INI souborů pro odlišné chování aplikace Reorg. V takovém případě je vhodné vytvořit více .bat souboru pro každou konfiguraci. Pro pravidelné vykonávání programu je nutné zajistit jeho opakované spouštění, např. v plánovači úloh MS Windows.

Parametry příkazové řádky:

/s
Parametr určuje, zda je Reorg spuštěn automaticky. Je-li nastaven, Reorg proběhne v příkazové řádce. V opačném případě se spustí grafické rozhraní, ve kterém je nutné spuštění uživatelsky potvrdit.

/g
Určuje, zda bude spuštěno grafické rozhraní. Parametr koresponduje s prvním parametrem. Pokud jsou tedy nastaveny oba parametry, bude spuštěno grafické rozhraní pro zobrazení průběhu, spuštění ale není nutné uživatelsky potvrdit.

/c:file
Určuje cestu a název konfiguračního INI souboru. Tento parametr je povinný. Například: /c:"c:\enTeam\Ini\Reorg.ini"

/np
Určuje, zda budou procesy z Workflow Manager fyzicky odstraněny. Pokud je parametr specifikován, proběhne Reorg standardně, včetně zápisu do logovacího souboru, ale neprovede žádné změny. To je využíváno zejména při konfiguraci programu a nastavování správné funkčnosti.

/nr
Určuje, zda budou na procesy aplikovány operace oprav. Stejně jako u předchozího parametru proběhne Reorg standardně, ale neprovede žádné změny.

Příklad .bat souboru spouštějící Reorg:

MtbReorg.exe /c:"c:\enTeam\Ini\Reorg.ini" /s /np

Určení množiny procesů, kterých se bude export/archivace týkat

Pochopení tohoto odstavce, je klíčové pro správné nastavení aplikace Reorg a udržování databáze v odpovídající velikosti.

Filtr

Před aplikací exportu je nejdříve nutné určit množinu procesů, které bude Reorg procházet. Určuje se pomocí klíče DocumentFilter=<Filtr>, kde se specifikuje filtr ve stejné syntaxi jako v programu Workflow Manager. S takto vyfiltrovanou množinou procesů bude Reorg nadále pracovat a na dané procesy aplikovat všechny mechanismy exportu/archivace, jako např. Export, DeleteActive, apod. Pokud není filtr specifikován, jsou procházeny všechny procesy, což je ve většině případu zbytečné a může způsobit značné zpomalení.


Příklady filtrů:

DocumentFilter=($$GenTimeQuery($DOC_CREATED;less;14;day))
DocumentFilter=($DOC_WORKFLOW='*Úkol*') AND ($DOC_PROCESS_STATUS=RUNNING)

Mechanismy exportu/archivace

DeleteWasteBasket=<Počet dní>

Specifikuje, kolik dní musí být procesy v koši, aby se exportovaly a vymazaly. Pokud klíč není uveden, nebo je jako počet dní uvedena hodnota -1, procesy se z koše nebudou exportovat a mazat. V případě uvedení nuly v počtu dní se vymažou všechny procesy v koši.

DeleteFinishedWkf=<Počet dní>

Specifikuje, kolik dní musí být procesy s workflow ukončeny nebo zrušeny, aby se exportovaly a vymazaly. Pokud klíč není uveden, nebo je jako počet dní uvedena hodnota -1, procesy s workflow se nebudou exportovat a mazat. V případě uvedení nuly v počtu dní se vymažou všechny procesy s workflow.

DeleteActive=<Počet dní>

Specifikuje kolik dní musí být procesy staré, aby byly exportovány a vymazány. Týká se to všech procesů, vyjma běžících workflow. Dokončená workflow budou také odstraněna. Pokud klíč není uveden, nebo je jako počet dní uvedena hodnota -1, procesy se nebudou exportovat a mazat. V případě uvedení nuly v počtu dní se vymažou všechny procesy.

Export=True

Všechny procesy odpovídající zadanému filtry budou exportovány dle parametrů uvedených níže.

Konfigurační INI soubor

INI soubor obsahující konfiguraci k Reorg. Cesta k souboru musí být popsána parametrem v .bat souboru. Nastavení se vkládá jako INI klíče do sekce:

[mtbReorg]

LogFileDir

Specifikuje složku, do které se budou ukládat logovací soubory.

LogFileDir=<Cesta>

ArchivingMethod

Specifikuje metodu exportu dat před smazáním procesů. Při hodnotě Export se procesy exportují do souborového systému. Pokud není klíč uveden, je jako výchozí hodnotou DMS v případě, že je enTeam DMS nainstalován. V opačném případě je nastavena hodnota Export.

ArchivingMethod={DMS|Export}

ExportDir

Specifikuje cestu, kam se budou ukládat exportované procesy. Pro každý proces se ukládají se dva typy souborů: .hdr a .001. Tento klíč je povinný.

ExportDir=<Cesta>

ExportNameFormat

Specifikuje název pro exportované soubory. Výchozí hodnota je DMS.

  • DMS - jako název vkládá osmimístné číslo, které se s každým uloženým procesem navýší
  • KEY - jako název vkládá unikátní identifikátor procesu
  • MASK - název souboru definuje maska, která musí být definována v klíči ExportNameMask
ExportNameFormat={DMS|KEY|MASK}

DocumentFilter

Určuje množinu procesů, kterou bude Reorg procházet. Filtr používá stejnou syntaxi jako program Workflow Manager. Je vhodné tento klíč využívat a specifikovat tak procesy, kterých se Reorg může týkat. Značně se tím zvýší rychlost, viz kategorie Filtr.

DocumentFilter=<Filtr>

DeleteWasteBasket

Specifikuje, kolik dní musí být procesy v koši, aby se exportovaly a vymazaly. Více v odstavci #Mechanismy exportu/archivace.

DeleteWasteBasket=<Počet dní>

DeleteActive

Specifikuje, kolik dní musí být staré procesy, aby byly exportovány a vymazány. Více v odstavci #Mechanismy exportu/archivace.

DeleteActive=<Počet dní>

DeleteFinishedWkf

Specifikuje, kolik dní musí být procesy s workflow ukončeny nebo zrušeny, aby se exportovaly a vymazaly. Více v odstavci #Mechanismy exportu/archivace.

DeleteFinishedWkf=<Počet dní>

DeleteTBLog

Klíč vymazává logovací záznamy (tabulka TB_LOGS) programu Workflow Manager starší než zadaný Počet dní. V případě uvedení nuly, se vymažou všechny záznamy.

DeleteTBLog=<Počet dní>

DeleteDanglingBlobs

Klíč zapíná mazání příloh, které nikam neodkazují (nemají data). Výchozí hodnota je False.

DeleteDanglingBlobs={True|False}

RepairCriterions

Klíč zapíná sychronizaci kriterií, které jsou uložené v procesech, se slovníkem dat. S výhodou lze využít např. pokud jsou kritéria definována až po založení procesů, lze je tímto klíčem přidat. Tato funkce je časově náročná, je tedy doporučeno aplikovat Filtr a přesně určit množinu, například jen na procesy s daným workflow:

DocumentFilter=($DOC_WORKFLOW='*Úkol*')
RepairCriterions=True
RepairCriterions={True|False}

RepairUserData

Klíč opravuje uživatelské údaje uložené v procesech, pokud nekorespondují s údaji v aplikaci User. Jako Opravy uživatelských dat lze využít následující parametry:

  • Address - Aktualizuje adresu uživatele.
  • PName - Aktualizuje zobrazovanou zkratku uživatele.
  • State - Aktualizuje stav uživatele, tedy je-li aktivní nebo neaktivní.

Lze aplikovat více než jeden parametr. V takovém případě jsou parametry oddělené čárkami.

RepairUserData=<Opravy uživatelských dat>

RepairVariableType

Klíč opravuje datové typy proměnných v procesech tak, aby odpovídaly proměnným ve slovníku dat. Lze opravovat jen datové typy z prostých na mnohonásobné typy. Tedy např. ze String na StringList nebo Date na DateList. Do parametrů název proměnné se zadává název proměnné, kterou chceme opravit. Název je závislý na velikosti písmen. Lze aplikovat více než jeden parametr, v takovém případě jsou parametry oddělené čárkami.

RepairVariableType=<Název proměnné>

RepairUserState

Klíč mění specifikovaným uživatelům jejich stav v procesech.

  • Active - Stav uživatele je změněn na aktivní.
  • Inactive - Stav uživatele je změněn na neaktivní, procesy s uživatelem jsou tedy vloženy do koše.
  • Delete - Stav uživatele je změněn na smazaný.

Adresa uživatele je definovaná v aplikaci enTeam User ve formátu loginId@oddělení@společnost. Pokud obsahuje mezery, je nutné adresu obalit dvojitými uvozovkami.

Lze aplikovat na více uživatelů. V takovém případě se uživatelé oddělují čárkami.

RepairUserState=<Stav>,<Adresa uživatele>

IgnoreLocks

Klíč definuje, zda budou aplikovány na změny i na zamčené procesy. Tato funkčnost by měla být použita pouze v případě, že se zamknuté procesy očekávají.

IgnoreLocks={True|False}

Export

Klíč definuje, zda budou procesy exportovány do složky definované klíčem ExportDir. Export je aplikován na všechny procesy odpovídající filtru dle klíče DocumentFilter bez ohledu na další podmínky, jako např. DeleteFinishedWkf, DeleteActive apod. Název exportovaných dokumentů je definován klíčem ExportNameFormat

Export={True|False}

DeleteExported

Pokud je klíč nastaven na True, všechny procesy exportované pomocí parametru Export, budou po exportu ve Workflow Manager vymazány.

DeleteExported={True|False}

PrintStatistics

Pokud je klíč nastavený na True, jsou do logovacího souboru vypsány podrobnosti o každém procesu.

PrintStatistics={True|False}

DateFormat

Klíč určuje formát data, který se zapíše do hlavičky exportovaného (.hdr) souboru.

Formát data lze specifikovat jako: {DD.MM.YYYY | DD/MM/YYYY | YYYY.MM.DD | YYYY/MM/DD | MM.DD.YYYY | MM/DD/YYYY}

DateFormat=<Formát data>

Import

Nastavením klíče na True je Reorg přepínán do režimu, ve kterém je prováděn pouze import. Importují se všechny soubory s příponou .mtb, které jsou uložené ve složce pro import. Složka pro import se specifikuje klíčem ImportDir.

Import={True|False}

ImportDir

Klíč v parametru Cesta specifikuje složku pro import procesů. Pro import procesů je taktéž nutné nastavit klíč Import.

ImportDir=<Cesta>

PurgeExistingDocs

Pokud je klíč nastaven na True, je proces při importu dokumentů, který již v databázi existuje nejdříve vymazán a až poté naimportován. Pokud je hodnota nastavena na False proces není naimportován, pokud již v databázi existuje.

PurgeExistingDocs={True|False}

PurgeOldAttVersions

Pokud je klíč nastaven na True, dokumenty s přílohou, jejíž číslo verze je větší než hodnota AttachVersMaintainedCnt v systémovém nastavení aplikace enTeam User (nebo není označená pro mazání), jsou zpracovány a starší verze vymazány z úložiště. Pokud je nastaven na False, není provedeno žádné explicitní mazání.

PurgeOldAttVersions={True|False}

ExportBlobExt

Specifikuje příponu, jakou budou mít exportované dokumenty. Výchozí přípona je 001.

Například:

ExportBlobExt=mtb
ExportBlobExt=<Přípona>

ExportNameMask

Klíč definuje masku, která se použije pro pojmenování exportovaných souborů. Pro využití masky musí být nastavený klíč ExportNameFormat.

Do výrazu lze zapsat buď prostý text nebo proměnnou, která musí být obalena znakem $.

Například:

ExportNameMask=DZP-$DX_ID$
ExportNameMask=DZO-$DX_ID$-$MTBTitle$
ExportNameMask=<Výraz>