Code blocking

Hello

I have a script that someone created, it has a problem that would help me alot to understand code blocking

As you can see, there is the “parameter.storagetype” function that is giving the warning.
from my understanding, dynamo is trying to figure out which node that is (from the warning we can get its either the: “Revit.elements.parameter”, or “archilab.revit.elements.paramter”.)

why is not dynamo going with the first one?
im assuming this happened because when the scripter created the script he did that at an earlier version of dynamo, is that correct? if not what could be the cause of such a problem?

thanks in advance

Hi @NERDASORUS

you have archilab package installed in dynamo, so dynamo can’t figure out what to run. You can retrieve the storage type through accessing the attribute “StorageType”. It looks like this.

thank you for your reply, could you give me the equivalent of that code block in nodes?

would really appreciate it

@Meychik ,

grafik


… i was testing :wink:

1 Like

thank you, what about the other 4 lines

@NERDASORUS

just replace the first line with this:

str2 = nullvalues.StorageType;
1 Like

Hi @NERDASORUS ,

If i remember correctly you’ll have to add “Revit.” In front of the command or “Designscript.”, or both. Don’t have a pc on hand to check this right now but maybe you can find some similar stuff on the forum if that doesnt work

Assume that you were presented with two apples.
image
and a code below.

element = Apple.ColorType(basket);

however, User A has 1 apple only while you have 2 apples.
So you need to define it a bit more by stating below.

element = Red.Apple.ColorType(basket);
or
element = Green.Apple.ColorType(basket);
in order to direct the program to run with the correct actions.

Hope this helps?

2 Likes

your line worked perfectly, could you tell me how you figured it out? or is it just from experience?

i have one more node also:

Of course, a lot comes with expirience. Here we are wokring with object-oriented languages and that’s why we should consider every element as an object that has some attributes (like X, Y, Z coordinates in a point) which can be retrieved using “.”. For example, there is the term “encapsulation”. It blocks access to attributes due to increasing system security, but it is not this case.

Coming back to your block, you need to rewrite the first line something like this

finaltypeinmodel.Parameters;
1 Like