erfajo / OrchidForDynamo

This repository contains the content of the Orchid package for Dynamo
http://www.dynamobim.com
Other
99 stars 56 forks source link

FamilyDocument.NewFamily - (COIeException 0x80030002) #233

Closed bnwnn closed 9 months ago

bnwnn commented 9 months ago

Operating system

Windows 10 Enterprise version 10.0.19045 Build 19045

Revit and Dynamo version

(Which version of Revit, Dynamo and Orchid are you using? Go to Help > About if you're not sure. for Orchid version, go to Packages > Manage Packages) Revit: 23.1.30.97 20230828_1515(x64) 2023.1.3 Dynamo: 2.16.2.9354 Orchid: 2.19.0.6119

What did you do?

Created and ran a script to create new families from an excel spreadsheet using a .rft file and save them to a designated folder as .rfa. The script looks for unique values in a column (types of equipment) and then combines that information with data from other columns to generate the family names. No information is created in the family, it just generates a blank family.

What did you expect to see?

All of the new families created and saved into the designated folder

What did you see instead?

In this case, the script found and generated 50 unique families but the node FamilyDocument.NewFamily is stopping after creating and saving the first 17 families in the list. The node gives the warning FamilyDocument.NewFamily operation failed. The model could not be saved: (COIeException 0x80030002).

erfajo commented 9 months ago

I am sure this is not a Orchid problem, try to see the below link https://www.autodesk.com/support/technical/article/caas/sfdcarticles/sfdcarticles/Exception-The-model-could-not-be-saved-COleException-0x80030002-when-saving-a-revit-file-to-Vault.html

It might not be exactly your issue, but it looks like you have a permission challenge you need to take care of. Otherwise, try to google your issue and see if any of the options could be your case. A thing I am aware of is the workload you can create, especially from Excel, you might have an issue with your RAM capacity. If your computational tasks take up too much RAM, you will not get an error saying that, but you will get an error saying something like ”missing input” since the input is simply nothing due to overload.

We work with DAGs and not scripting as you describe it. DAGs come with some very well-known issues, which is why we need to understand that we work with graph technology and not scripting. https://erfajo.blogspot.com/2019/03/graphs.html

bnwnn commented 9 months ago

Thank you for the quick response. I had come across that support article but didn't think it was a permissions issue since there were families being produced, just not all of them. I have split the graph previously but that doesn't mean it is small enough to prevent the RAM issue, so I will try splitting the graph again. I apologize for my egregious use of the word script in my description. I only have aspirations to be as skilled with this technology, but it is a journey and I can still see my starting point from where I am. At least I can speak the language a little better next time. lol Thanks for the help!

erfajo commented 9 months ago

Maybe you should try to take fewer lines from the Excel file... instead of the entire sheet, take from lines 1-20, and 21-40 or something like that.

Concerning permissions, you need to have permission to write files in the folder you want to save families in. When I google 0x80030002 it always mentions something with permissions, that could be network folders or windows system folders… (”C:\Program Files” is a system folder!)

bnwnn commented 9 months ago

You were correct about the amount of RAM that was being used at once. The graph is relatively small overall but I was able to process a smaller amount of information using a chop node between the list of families to create and the family create node. This allowed the node to only look at 5 lines at a time. Thank you again for your help!

erfajo commented 9 months ago

Thanks for returning.

This is a fine example of how we are working with graph technology and not scripting. I have had some students doing their master's thesis, running into this problem. It is very important to understand that DAG’s come with some issues, without knowing that, you can risk ending up with some problems that might be strange to understand. But if you remember it is graphs, you will have an idea of what the mathematical challenges are. So the next step is to monitor your RAM, see where things explode, and then try to optimize on that :-)