Получить значения свойст, назначенных строительному материалу.

Вызов:

int ires = ac_request_special("get_build_material_value", int ibuildmatindex, string genesis, void &variable);

или

int ires = ac_request_special("get_build_material_value", string sbuildmatname, string genesis, void &variable);

Здесь:

ibuildmatindex - индекс строительного материала,

sbuildmatname - название строительного материала.

genesis - имя происхождения свойства, например "UP" - свойство является пользовательским свойством.

variable - переменная, в которую вернется значение запрашиваемого параметра строительного материала.

Для получения значения может быть представлен дескриптор объекта типа ts_table.

Пример:

Считать строительный материал текущего элемента, считать у этого материала значение параметра "Имя стройматериала на английском" и записать все это в пользовательские свойства текущего элемента.


int bmatindex;

string bmatname, bmatid, bmatnameenglish;

// считать у текущего элемента назначенный стройматериал

ac_request("get_element_value", "buildingMaterial");

bmatindex = ac_getnumvalue();

// получить имя этого стройматериала

err = ac_request("get_bmnamebyindex", bmatindex, bmatname, bmatid);

// получить имя этого стройматериала на английском из пользовательского свойства стройматериала

ac_request_special("get_build_material_value", bmatindex, "UP", "Имя стройматериала на английском");

bmatnameenglish = ac_getstrvalue();

// записать все эти свойства стройматериала в пользовательские свойства текущего элемента

ac_request("elem_user_property", "set", "Имя материала у элемента", bmatname);

ac_request("elem_user_property", "set", "Имя материала у элемента на английском", bmatnameenglish);