Let’s say you have multiple manual activities in a service request. Each of these manual activities need the output of previous manual activities. For example the first manual activity creates a user account for a new hire. Then the second manual activity is adding this user account to a HR system. The first engineer can input a comment, the user account, when the activity is marked as completed in the self-service portal. But the second engineer need to click a lot to see the note from the first engineer.

  • Parent work item
  • See details
  • Related Items
  • Contains Activity
  • Expand Manual Activity
  • Find the correct activity and click it
  • Scroll down and find the correct property

As you can understand it is not easy to find the information, special for some non-technical colleges that don’t understand parent work item and activities.

An alternative to this is to use a runbook between your manual activities. The runbook copy the information between your manual activities, engineers can then see all information from previous manual activities on the first page in the self-service portal. It is the comment/note that previous engineers have input when they mark activities as completed that are copied between manual activities.

In this example I have 3 manual activities in my service request template

It is the same runbook (runbook activity) between each manual activity.

  • Initialize Data. Input Service Request work item ID and Runbook Activity work item ID
  • Read the Runbook Activity
  • Read the Service Request
  • Get Related Manual Activities for the Service Request
  • Read each related manual activity
  • Compare Value. Checks if the manual activity sequence number is the one before the runbook activity sequence ID. All activities in the service request has a sequence ID, we need to find the one before the current runbook activity. This Compare Value activity checks if the manual activity sequence ID equals “runbook Activity sequence ID minus 1″
  • Reads the manual activity before the runbook activity
  • Again, gets all related manual activities
  • Again, read each related manual activity
  • Again, compare values. Same as previous compare value but this time we look for the manual activity with sequence ID after the runbook activity
  • Update the manual activity after the runbook activity with information from the manual activity before the runbook activity
  • Return data without any configuration

You can download my example runbook, 20130708_CopyMA_wolf . Note that this is provided “AS-IS” with no warranties at all. This is not a production ready management pack or solution, just an idea and an example

  1. I have not done extensive testing, but I did submit several Service Request with a large number of activities in them (all at the same time). I cannot say for sure that the numbering will always be intact within each request.
    Alternately one could insert a check that both activities have the same topmost parent. I might add that in a later blogpost, and do some more testing.

  2. […] inclusion of an Orchestrator RunBook Automation Activity, Anders Bengtsson has an example here post for Service […]

  3. Looks good, thanks for sharing. Do you think there is a risk by using +1 in the way to find next manual activity. The number calculation is shared in Service MAnager, so if you have a very activity Service Manager environment the number between two manual activities in the same work item dont have to be X and X+1.

  4. I have a slightly different approach described at http://codebeaver.blogspot.dk/2013/11/copy-notes-between-manual-activities.html – what do you think of this way of doing it?