Hello everyone! Recently I was working on a project for a client that required a parent runbook to call a child runbook that had a TON of input parameters. I dutifully typed them in to the Initialize Data activity in the child runbook, checked it in, and configured the parent runbook to call the child via an Invoke Runbook activity, as so:
The input properties (there were a lot more than this, but for blog purposes...)
I configured the Invoke Runbook activity, filling in all the data as you normally would:
As I was going through testing, however, I was seeing something strange. The child runbook was receiving only SOME of the input parameters from the parent runbook, but not all. What's going on here?
Well, it turned out I had a duplicate parameter name defined in the Initialize Data activity of the child runbook. If you look at the Initialize Data screenshot above, you can see that Even More is defined twice! Even more confusing - it only appears ONCE in the Invoke Runbook activity! Orchestrator doesn't warn you about this and clearly doesn't handle it well. The way you can identify if you are suffering from this issue is to open the Invoke Runbook activity after you've configured it. You should see that some of the parameters no longer have any data defined - it disappeared!
It isn't clear which parameter Orchestrator picks to "clear out" but it doesn't really matter - this is not a state your runbooks should be in, and they won't operate properly until you fix it.
Hopefully that helps you out!