Execution problem in script

Hi,
I’m encountering an execution problem in my Dynamo script. I want my script to first create a project parameter, and then find mirrored objects in the project to fill that parameter with text. Specifically, if the objects are mirrored, I want the script to write a specific value (e.g., “Mirror”) in that parameter. However, it seems that the operations are running simultaneously and the script is not working.

Hey,

You will need to consider sequencing your graphs and making them daisy chain so that they fire in the correct sequence. You will see Passthrough and Relay nodes in various packages such as Archilab to assist with this.

When a Dynamo graph executes, it is generally in 1 transaction. However sometimes you need multiple transactions, it depends quite what you’re doing. For example, you might need 1 transaction to create an element, then a second transaction to move it, because you can’t move it until it has been created. If you search for Transaction End, you will see a node to give that functionality.

Hope that helps,

Mark

2 Likes

Thaks for replay Mark,
Where should I put transaction start and end in this situation? End probably should be connected to end od Parameter creation, but I am confused where and how can I connect parameter start?
Thanks in advance.

Before you consider the transaction, you need to put a wait for method between the parameter creation and the object collection. Search for “Wait for” for examples of this. If you’d prefer to use a non-package solution you can leverage this bit of design script:
[waitFor,PassThough][1]

2 Likes

This kind of thing… Dynamo seems to not need a Start mostly… And you won’t always need separate Transactions, often just the daisy-chaining is enough.

The Task2 node is connected upstream to Task1 and so won’t fire until Task1 has fired.

2 Likes