V každém vztahu - i obchodním - je důležité uchovávání historie. Zatímco zachování kompletní historie aktivit patří k základní funkčnosti Microsoft CRM (na kartě všech základních entit jako je Obchodní vztah, Kontakt, Příležitost apod. je k dispozici podsložka Historie), sledování historie změn kmenových záznamů již součástí standardního řešení není. Přesto právě tuto vlastnost mnozí manažeři potřebují, aby se snadněji dozvěděli, jaké změny v záznamech o probíhajících obchodních případech nastaly nebo kdo je provedl. Nejsnazším řešením bez programování je opět vyžití workflow. Ukažme si příklad sledování změn důležitých údajů v entitě Příležitost.
Nejprve musíme založit novou uživatelskou entitu, kam se budou vlastní změny vybraných údajů zaznamenávat, nazvěme ji např. Změny příležitostí.
Do entity přidáme nové atributy - budou to atributy odpovídající těm atributům příležitosti, které chceme sledovat, např.:
- Odhadované výnosy
- Odhadované datum uzavření
- Fáze prodeje
- V našem případě pracujeme ještě s dalšími uživatelskými atributy jako je Přidaná hodnota, Termín dodávky.
Vazbu na entitu Příležitost zajistí přidání vztahu N:1 (N změn pro 1 Příležitost) a umístění "look-up" pole do formuláře.
Máme-li přidané atributy a vazby, můžeme vhodným způsobem upravit i základní formulář. Nepotřebujeme pracovat s automaticky vygenerovaným atributem "Název", proto jej nastavíme tak, aby nebyl povinný a odstraníme jej z formuláře. Naopak na formulář přidáme nové atributy, které budou obsahovat měněné údaje, které chceme sledovat. Vzhledem k tomu, že historie změn slouží pouze pro prohlížení, na závěr změníme vlastnosti jednotlivých polí a nastavíme je pouze pro čtení. Výsledný formulář může vypadat asi takto:
A teď přijde to nejpodstatnější: jak nastavit workflow tak, aby důležité změny zachytilo. Vytvoříme si nové Pravidlo pracovního postupu nad entitou Příležitost. Pracovní postup nastavíme tak, aby se spouštěl při každé změně vybraných atributů:
Vybrané atributy, jejichž změna je hlídána, jsou zvoleny jednoduchým zatržením v seznamu:
Vlastní výkonnou akcí bude vytvoření nového záznamu entity "Změny příležitostí". Jednotlivá pole budou plněna hodnotami odpovídajících polí (atributů) entity Příležitost.
Na závěr navržený pracovní postup vypublikujeme a vhodně si upravíme pohled na změny příležitostí tak, abychom o nich měli dobrý přehled:
Zdroj informací: http://blogs.msdn.com/crm/archive/2008/04/10/using-workflow-to-maintain-an-audit-log.aspx