Closed andydandy74 closed 8 years ago
Correction: I found some *.dmp files (which indicate a crash), but only in the Revit 2015 folder. So no crashes in Revit 2016. Must have misremembered that part...
Update: Removing all other addins has proved to be complete irrelevant to this issue.
@andydandy74 One thing which I forgot to mention. I believe your workflow needs to be set to "Automatic" mode. Otherwise, it will not evaluate. I'll try with your test files.
Also, you need to be using a daily build.
Whatever you do - don't set that workflow to automatic. That will create an endless loop of reading and writing the CSV file. :-) I'll use a different method of aggregating the results tomorrow that will work with automatic mode and test again. And not to worry - I am on yesterday's second daily.
Ha! I just came over to tell you that the endless loop was breaking your workflow. I've made a version of your scenario to test on my machine. It's working, less the missing custom nodes (part of Clockwork perhaps), and the endlessly looping workflow.
I'm not sure what the issue is with German Revit. There could be some dark magic inside reading journal files that doesn't work well with German Revit.
The error that you are getting in German revit's journal file above is the same as in English Revit. It basically means that the journal file couldn't be played to completion. This could be because it can't start Dynamo.
If Dynamo works on German Revit, and the workflow runs in that Dynamo, then the problem is with trying to get the journal file to start Dynamo on Revit.
Remember that the Dynamo.addin file must be located in the same directory as your generated journal files. This way the journal process knows to register Dynamo.
I got it working. I've submitted a PR, https://github.com/DynamoDS/DynamoRevit/pull/648
The PR allows your workflow to be in Manual mode, so we can avoid infinite loops. The workflow will still only run once though, so it has to do the right thing the first time :)
Great! In that case I'll put my testing activities on hold until the PR has been reviewed and merged. I am very glad I don't have to code around Automatic mode now. Thanks a lot, Ian.
Tried again with a fresh daily and an updated version of scenario A1 (6775d85bbf9eeb0ebfb2a824c89f27b7d5d0e474). Revit and the Dynamo addin are executed and the Dynamo graph is actually run and completes (i.e. it writes the computed information into the CSV file) - yay! However, Revit encounters an unhandled exception:
Here's what I get in Visual Studio (unfortunately most of it is in German...)
Anything I can do in Visual Studio that will help you understand what's happening here?
New logs can be found here: 25733c1bdeda159b47d33c7f41f21687acb82c03
@andydandy74 RevitAPIUI.dll<Unbekannte Function>
. If my german serves me, this means "unknown function", which suggests that somehow Dynamo is trying to call a Revit API method that doesn't exist. This can happen, I believe, when there are two competing versions of the Revit API trying to load. Is there accidentally a copy of the Revit API in the Dynamo core directory (RevitAPIUI.dll)?
@ikeough - no, the only Revit related DLL in C:\Program Files\Dynamo 0.8
is RevitAddinUtility.dll
.
Everything's running smoothly now with the latest daily build. Great stuff, @ikeough !
I am sad to report that a basic functionality test of the automation functionality that I created and ran today did not succeed. The graph that was to be run by the Dynamo Revit addin is supposed to add a line of text to a CSV file which, unfortunately, it doesn't.
The test I created is based on scenario A1 ("process all models within a given folder"). The graph that is supposed to be run on top of Revit counts all walls in the models and adds a new line with the file path and the wall count to an existing CSV file. Here's what happened:
Tests run in German Revit There definitely seems to be some culture-specific problem involved, since my first two tests were run in German Revit (2015 & 2016, respectively) and did not succeed in executing the Dynamo addin:
Die Ausführung stimmt nicht mit der aufgezeichneten Protokollsequenz überein
means more or less "The execution did not match the recorded protocol sequence". After each launch of Revit, a dialogue with a button was displayed that would take me to "Interactive mode". After closing Revit manually, the sandbox script would launch Revit again for the next model in the list.Tests run in English Revit On a hunch, I ran two more test in Revit 2016, this time set to English language. The first test was performed on my usual setup, for the second test I switched my OS culture to English (USA). In both cases the journal shows that the Dynamo addin was launched:
However, the CSV file was not modified in either of the two test runs. Also, although it doesn't look like that in the journal files, Revit crashed after each run.
Relevant commits for this issue
Test setup
scenarios/Revit/2015/CountWalls.dyn
) in the Dynamo addin, make sure it points to your CSV file and saveA1 - Sandbox.dyn
inscenarios/A1
in Dynamo sandboxrevit-models/2015/dir1
) and Dynamo graph to be run by the Dynamo Revit addin (e.g.scenarios/Revit/2015/CountWalls.dyn
).