Load a given list of ARCHICAD elements under given conditions

Handling:

First option:

ac_request("load_elements_list",int iListNum,string sElemTypeName,"MainFilter",int iMainFilterValue,string filterparametrname, string/double filterparametervalue,...);

Here:

iListNum - number of the internal list of elements (from 0...9).

sElemTypeName - element type name. If you need to select any elements - "ZombieElemType", if only columns, then "ColumnType", walls - "WallType", etc.

"MainFilter" - tells us that we are setting parameters for filtering elements by type of accessibility for editing, visibility, etc. iMainFilterValue - usually the value for visible and editable elements is 3.

Next are the names of the parameters and their values ​​for additional selection.

For example, "ID","ID Value" - means that you need to select elements with ID="ID Value", etc.

The "MainFilter" filter may or may not be specified. This is equivalent to writing "MainFilter",0.

Those. when forming the list, all suitable elements in the project will be included in it without taking into account the main criterion.

The filter value is collected by a formula.

MainFilterValue=j1+2*j2+4*j3+8*j4+16*J5+32*j6+64*j7+128*j8+256*j9+512*j10+1024*j11+2048*j12+4096* j13+268435456*j14,

where each j can be 0 or 1.

j1: editable only.

j2: on the visible layer.

j3: on the current floor

j4: has a representation in the 3d window

j5: in my workspace

j6: not subordinates but only independent elements

j7: in active drawing

j8: Displayed inside the clipped portion of the drawing database

j9: Indicates whether this element was passed a change ID in the variationID parameter

j10: element has permissions

j11: element visible in renovation

j12: additional flag; checks if the element's attributes are overridden by the current update filter

j13: additional flag; checks the visibility of an element based on the current structure display setting

j14: only from 2d window


Second option:


ac_request_special("load_elements_list", int iListNum, string ElemTypeName, int iMainFilterValue,
   string left_braces1, string genesis1, string parname1, string operation1, string value1, string right_braces1, string operation1and2,
   string left_braces2, string genesis2, string parname2, string operation2, string value2, string right_braces2, string operation2and3,
   ...
   string left_bracesN, string genesisN, string parnameN, string operationN, string parvalueN, string right_bracesN);


Here:

left_braces1 - opening parentheses expression, for example "((".

right_braces - closing brackets of the expression, for example ")))".

The number of brackets must be even and meaningful.

genesis1 - origin of the compared parameter,

Possible values:

"ANY" - any,

"GDL" - element GDL parameter,

"EP" - project element parameter,

"UP" - custom property,

"UPb" - built-in custom property,

"UPub" - built-in custom property, created by the user of the project,

"UPa" - built-in custom property,

"Cls" - classifier parameter,

"IFC" - UFC property,

"UTS" - own property assigned to the element,

"Q" - quantitative property


value1 - the value against which the parameter value is compared.


operation1and2 - operation with the following expressions.

Can be "AND" (AND) or "OR" (OR).