From fc8a5118a8e03e73f12d236211406cba26db74e6 Mon Sep 17 00:00:00 2001 From: MihaiEl Date: Sat, 19 Aug 2017 06:18:07 +0300 Subject: [PATCH] Update project description --- Config.xlsx | Bin 13008 -> 12998 bytes Framework/Main.xaml | 10 +++++----- README.md | 45 ++++++++++++++++++++++++++++++++++++++------ 3 files changed, 44 insertions(+), 11 deletions(-) diff --git a/Config.xlsx b/Config.xlsx index a1d13cd10110c423ac3fa82c2a815ad6544a7629..3c1c4d6c73f4a2b20eed5d5d5b602f0abdf58dd5 100644 GIT binary patch delta 2574 zcmZ9OXE59g7sf4Ob<4GSS-oVjWVIDNh!8~dx=NI&5tc;xTR}n)Y-|t_bw%eAJ)*1< zWuqn0d%w}5glKQ>{cz{bd%m5SGtZovbLM$|L-)GxRms!PP`lsr`~)H+3&N?#g@mUo%i~9?!}*LUp-`0tqUB~7Y%Mr zO+6p}&KYJx!e6&7$ik*om>yaEP-mK}^i`r0_ZF$GG5Ntq{&6P!qE=M}Kq&<~Q�J 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.Runtime.WindowsRuntime - + @@ -398,7 +398,7 @@ - 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 @@ -428,7 +428,7 @@ - True + False False @@ -518,7 +518,7 @@ - + True @@ -700,7 +700,7 @@ - + True diff --git a/README.md b/README.md index d23f461..69be0bc 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,46 @@ ### ReFrameWork Template ### -Robotic Enterprise Framework +**Robotic Enterprise Framework** -* built on top of Transactional Business Process Template -* using State Machine layout for the phases of automation project +* built on top of *Transactional Business Process* template +* using *State Machine* layout for the phases of automation project * offering high level exception handling and application recovery -* keeps external settings in Config.xlsx file and Orchestrator assets -* pulls credentials from Credential Manager and Orchestrator assets +* keeps external settings in *Config.xlsx* file and Orchestrator assets +* pulls credentials from *Credential Manager* and Orchestrator assets * gets transaction data from Orchestrator queue and updates back status * takes screenshots in case of application exceptions * provides extra utility workflows like sending a templated email -* runs sample Notepad application with dummy Excel data +* runs sample Notepad application with dummy Excel input data * + + +### How It Works ### + +1. **INITIALIZE PROCESS** + + *InitiAllSettings* - Load config data from file and from assets + + *InitiAllApplications* - Login to applications as per Config("OpenApps") field + + *GetAppCredentials* - From Orchestrator assets or local Credential Manager + + If failing, retry a few times as per Config("ProcessRetries") + +2. **GET TRANSACTION DATA** + ./Framework/*GetTransactionData* - Fetches from Orchestrator queue as per Config("TransactionQueue") + ./*GetTransactionData* - Sample for working with Excel input files + +3. **PROCESS TRANSACTION** + + Try *ProcessTransaction* + + If application exceptions happen + + *SaveErrorScreen* - In Config("ErrorsFolder") with the exception message + + Going to re/INITIALIZE + + *SetTransactionStatus* - As Success, Failed or Rejected with reason + ./Framework/*SetTransactionStatus* - Updates the Orchestrator queue item + ./*SetTransactionStatus* - Sample for updating Excel input file + +4. **END PROCESS** + + *CloseAllApplications* - As listed in Config("CloseApps") + + +### For New Project ### + +1. Check out the Config.xlsx file and add/customize any required fields and values +2. Implement OpenApp and CloseApp workflows, linking them in the Config.xlsx fields +3. Implement GetTransactionData and SetTransactionStatus or use ./Framework versions for Orchestrator queues +4. Implement ProcessTransaction workflow and any invoked others