Hi All, do you know how to populate an Inventor Multivalue PARAMETER using a For cycle in iLogic according to a variable index corresponding to a different number of array items?
for example:
i grab some data from a Rule and populate an Arraylist variable. I trace the number of instances using a counter. after the data acquisition I want to populate the Multivalue Parameter with the acquired values.
No problem browsing the Arraylist parameter: MyArraylist.(Index)... but what about the Multivalue parameter?
the MultiValue.SetList("Multivalue Parameter", Value 1, Value 2, ... , Value N) provide a defined number of data and cannot be set dynamically according to an Index.
thank you in advance
Solved! Go to Solution.
Solved by WHassan. Go to Solution.
Out of my breif knowledge I would suggest you can use another Array, populate that and then send it to the paramer.
i.e.
' Your extracted value
Dim MyOriginalArray as New ArrayList
MyOriginalArray = .......
'Declare an arbitrary array
Dim lstSecond as New ArrayList
' filter out as however you would like
For i = 1 to 10
lstSecond.add(MyOriginalArray.item(i))
Next i
'Populate the paramter
Multivalue.List(YourParameter") = lstSecond
Hope this helps
Multivalue.List("MyParameter") = ArrayList was exactly what I was missing. It works perfectly without any cycle for filling in all he values and it depends on how many values are stored into ArraList.
Great, Thank you!
Can I add new values immediatelly to Multivalue without creating array ?
yes of course; the default string definition is explicit; you decide which are the values and the position in the list:
MultiValue.SetList("test", 0.5, 0.75, 1.0, 1.25)
test is your numeric or text parameter within Inventor
And how I can add fifth parameter 1.5 ?
For example, I want to add new values in cycle
and don't know about their quantity