I want to be able to check when a workflow rule executed and see the result, is there a way of doing this?
Workflow execution goes into the standard debug logs. If you navigate to Setup > Logs > Debug Logs and click "New" on the monitored users list, and start monitoring a user who will execute a workflow scenario (probably yourself, right?) you can then perform the intended action on the relevant record (which depends on your WF object type).
When you have done so, return to the log page and you will see a list of log files generated by these actions - hopefully you can find the right one. In my scenario, I created a new Account, so the action is for the "Account" tab ID basically (and is, of course, the most recent log)
In the log file (click View in the actions to open in the browser) you can find the workflow sections (normally near the end) by searching for "WF_" in your browser. I span up a really simple workflow rule to update a field on Account every time one is created, and this was the log section for it:
09:00:24.085 (85955000)|EXECUTION_STARTED 09:00:24.085 (85993000)|CODE_UNIT_STARTED|[EXTERNAL]|Workflow:Account 09:00:24.113 (113658000)|WF_RULE_EVAL_BEGIN|Workflow 09:00:24.113 (113706000)|WF_CRITERIA_BEGIN|[Account: Test Account 001b000000Rt26i]|Test Workflow|01Qb0000000Tl1k|ON_CREATE_OR_TRIGGERING_UPDATE 09:00:24.113 (113816000)|WF_FORMULA|Formula:true|Values: 09:00:24.113 (113831000)|WF_CRITERIA_END|true 09:00:24.155 (155161000)|WF_SPOOL_ACTION_BEGIN|Workflow 09:00:24.179 (179282000)|WF_FIELD_UPDATE|[Account: Test Account 001b000000Rt26i]|Field:Account: Active|Value:Yes|Id=04Yb0000000TeFO|CurrentRule:Test Workflow (Id=01Qb0000000Tl1k) 09:00:24.179 (179319000)|WF_ACTION| Field Update: 1; 09:00:24.179 (179326000)|WF_RULE_EVAL_END 09:00:24.202 (202563000)|WF_ACTIONS_END| Field Update: 1; 09:00:24.202 (202577000)|CODE_UNIT_FINISHED|Workflow:Account 09:00:24.202 (202584000)|EXECUTION_FINISHED
Understanding Log files is a developers right of passage ;) but basically, if you read the chunks in capitals, it talks you through the process it is taking;
- enter workflow
- evaluate criteria for [workflow name]
- do we execute this one?
- if so, what are the actions
- execute actions in order [in this case a field update on field "Active" set to "Yes"
- any more rules?
- no.. ok, summaries, one update performed
- end this workflow
- end all workflow
Even workflow that will not be executed will appear if they are on an object type, only on the lines regarding "CRITERIA" they will say false, and the execution will simply immediately exit. Hopefully this makes sense!